This repository has been archived on 2024-06-26. You can view files and clone it, but cannot push or open issues or pull requests.
sakura/_sakura/vendor/paypal/rest-api-sdk-php/sample/payment-experience/PartiallyUpdateWebProfile.php
2015-06-21 05:30:38 +02:00

45 lines
1.9 KiB
PHP

<?php
// #### Partially Update Web Profile
// Use this call to partially update a web experience profile.
// Documentation available at https://developer.paypal.com/webapps/developer/docs/api/#partially-update-a-web-experience-profile
// We will be re-using the sample code to get a web profile. GetWebProfile.php will
// create a new web profileId for sample, and return the web profile object.
/** @var \PayPal\Api\WebProfile $webProfile */
$webProfile = require 'GetWebProfile.php';
// ### Create Patch Operation
// APIs allows us to pass an array of patches
// to make patch operations.
// Each Patch operation can be created by using Patch Class
// as shown below
$patchOperation1 = new \PayPal\Api\Patch();
// The operation to perform. Required. Allowed values: add, remove, replace, move, copy, test
$patchOperation1->setOp("add")
// string containing a JSON-Pointer value that references a location within the target document (the target location) where the operation is performed. Required.
->setPath("/presentation/brand_name")
// New value to apply based on the operation.
->setValue("New Brand Name");
// Similar patch operation to remove the landing page type
$patchOperation2 = new \PayPal\Api\Patch();
$patchOperation2->setOp("remove")
->setPath("/flow_config/landing_page_type");
//Generate an array of patch operations
$patches = array($patchOperation1, $patchOperation2);
try {
// Execute the partial update, to carry out these two operations on a given web profile object
if ($webProfile->partial_update($patches, $apiContext)) {
$webProfile = \PayPal\Api\WebProfile::get($webProfile->getId(), $apiContext);
}
} catch (\Exception $ex) {
ResultPrinter::printError("Partially Updated Web Profile", "Web Profile", $webProfile->getId(), $patches, $ex);
exit(1);
}
ResultPrinter::printResult("Partially Updated Web Profile", "Web Profile", $webProfile->getId(), $patches, $webProfile);