/**
  * @return KalturaSystemPartnerClientPlugin
  */
 public static function get(KalturaClient $client)
 {
     if (!self::$instance) {
         self::$instance = new KalturaSystemPartnerClientPlugin($client);
     }
     return self::$instance;
 }
 /**
  * 
  * Adds the permissions for the test partner
  * @param $client - KalturaClient
  */
 public static function addPermissions(KalturaClient $client)
 {
     $partnerId = $client->getConfig()->partnerId;
     //Get the admin partner id and secret from the application.ini
     $adminConsoleIniPath = KALTURA_ROOT_PATH . "/configurations/admin.ini";
     $adminIni = new Zend_Config_Ini($adminConsoleIniPath);
     $adminProductionSettings = $adminIni->get('production');
     $adminConsolePartnerId = $adminProductionSettings->settings->partnerId;
     $adminConsolePartnerSecret = $adminProductionSettings->settings->secret;
     $adminConfig = new KalturaConfiguration($adminConsolePartnerId);
     $adminConfig->serviceUrl = $client->getConfig()->serviceUrl;
     //The same service url of the test partner client
     $adminClient = new KalturaClient($adminConfig);
     //TODO: get this from the installation or outside input
     $ks = $adminClient->user->loginByLoginId('*****@*****.**', 'admin');
     $adminClient->setKs($ks);
     $addedPermissions = array();
     try {
         $addedPermissions[] = KalturaTestDeploymentHelper::createPermission("CUEPOINT_PLUGIN_PERMISSION", KalturaPermissionType::PLUGIN);
         $addedPermissions[] = KalturaTestDeploymentHelper::createPermission("CODECUEPOINT_PLUGIN_PERMISSION", KalturaPermissionType::PLUGIN);
         $addedPermissions[] = KalturaTestDeploymentHelper::createPermission("ADCUEPOINT_PLUGIN_PERMISSION", KalturaPermissionType::PLUGIN);
         $addedPermissions[] = KalturaTestDeploymentHelper::createPermission("ANNOTATION_PLUGIN_PERMISSION", KalturaPermissionType::PLUGIN);
         $addedPermissions[] = KalturaTestDeploymentHelper::createPermission("DROPFOLDER_PLUGIN_PERMISSION", KalturaPermissionType::PLUGIN);
         $addedPermissions[] = KalturaTestDeploymentHelper::createPermission("CONTENTDISTRIBUTION_PLUGIN_PERMISSION", KalturaPermissionType::PLUGIN);
         $addedPermissions[] = KalturaTestDeploymentHelper::createPermission("METADATA_PLUGIN_PERMISSION", KalturaPermissionType::PLUGIN);
     } catch (Exception $e) {
         print "Exception was raised during permission adding: " . $e->getMessage() . "\n";
     }
     $systemPartnerPlugin = KalturaSystemPartnerClientPlugin::get($adminClient);
     $partner = $systemPartnerPlugin->systemPartner->get($partnerId);
     $partnerConfig = $systemPartnerPlugin->systemPartner->getConfiguration($partnerId);
     $partnerConfig->storageServePriority = KalturaStorageServePriority::KALTURA_ONLY;
     $newConfig = new KalturaSystemPartnerConfiguration();
     foreach ($addedPermissions as $permission) {
         $newConfig->permissions[] = $permission;
     }
     if ($newConfig->permissions && count($newConfig->permissions)) {
         //Clean the id from the permissions
         foreach ($newConfig->permissions as &$permission) {
             $permission->id = null;
             $permission->partnerId = null;
             $permission->createdAt = null;
             $permission->updatedAt = null;
             $permission->status = KalturaPermissionStatus::ACTIVE;
         }
     }
     $result = $systemPartnerPlugin->systemPartner->updateConfiguration($partnerId, $newConfig);
     $config = new KalturaConfiguration();
     $config->serviceUrl = $client->getConfig()->serviceUrl;
     $config->partnerId = self::$partner->id;
     $client = new KalturaClient($config);
     // create a client for the partner
     $ks = $client->session->start(self::$partner->adminSecret, null, KalturaSessionType::ADMIN, self::$partner->id, 86400, null);
     $client->setKs($ks);
 }
Example #3
0
<?php

$config = null;
$clientConfig = null;
/* @var $clientConfig KalturaConfiguration */
$client = null;
/* @var $client KalturaClient */
require_once __DIR__ . '/lib/init.php';
echo "Test started [" . __FILE__ . "]\n";
/**
 * Start a new session
 */
$adminSecretForSigning = $config['adminConsoleSession']['adminSecret'];
$client->setKs($client->generateSessionV2($adminSecretForSigning, null, KalturaSessionType::ADMIN, -2, 86400, ''));
echo "Admin console session started\n";
$partnerId = $config['session']['partnerId'];
/**
 * Delete the partner
 */
$systemPartnerClient = KalturaSystemPartnerClientPlugin::get($client);
$systemPartnerClient->systemPartner->updateStatus($partnerId, KalturaPartnerStatus::FULL_BLOCK, "Test Delete Partner");
echo "Partner [{$partnerId}] deleted\n";
/**
 * All is SABABA
 */
echo "OK\n";
exit(0);