public static function dependsOn() { $bulkUploadXmlVersion = new KalturaVersion(self::BULK_UPLOAD_XML_VERSION_MAJOR, self::BULK_UPLOAD_XML_VERSION_MINOR, self::BULK_UPLOAD_XML_VERSION_BUILD); $bulkUploadXmlDependency = new KalturaDependency(BulkUploadXmlPlugin::getPluginName(), $bulkUploadXmlVersion); $metadataDependency = new KalturaDependency(MetadataPlugin::getPluginName()); return array($bulkUploadXmlDependency, $metadataDependency); }
public function getInstance($interface) { if ($this instanceof $interface) { return $this; } $plugin = KalturaPluginManager::getPluginInstance(MetadataPlugin::getPluginName()); if ($plugin) { return $plugin->getInstance($interface); } return null; }
public function initService($serviceId, $serviceName, $actionName) { parent::initService($serviceId, $serviceName, $actionName); $this->applyPartnerFilterForClass('MetadataProfile'); if ($actionName != 'list') { $this->applyPartnerFilterForClass('Metadata'); } if (!MetadataPlugin::isAllowedPartner($this->getPartnerId())) { throw new KalturaAPIException(KalturaErrors::FEATURE_FORBIDDEN, MetadataPlugin::PLUGIN_NAME); } }
public function initService($serviceId, $serviceName, $actionName) { parent::initService($serviceId, $serviceName, $actionName); myPartnerUtils::addPartnerToCriteria(new MetadataProfilePeer(), $this->getPartnerId(), $this->private_partner_data, $this->partnerGroup()); myPartnerUtils::addPartnerToCriteria(new MetadataPeer(), $this->getPartnerId(), $this->private_partner_data, $this->partnerGroup()); myPartnerUtils::addPartnerToCriteria(new entryPeer(), $this->getPartnerId(), $this->private_partner_data, $this->partnerGroup()); // myPartnerUtils::addPartnerToCriteria(new FileSyncPeer(), $this->getPartnerId(), $this->private_partner_data, $this->partnerGroup()); if (!MetadataPlugin::isAllowedPartner($this->getPartnerId())) { throw new KalturaAPIException(KalturaErrors::SERVICE_FORBIDDEN, $this->serviceName . '->' . $this->actionName); } }
/** * Parse the XML and update the list of search values * * @param Metadata $metadata * @param array $searchValues * * @return array */ public static function getDataSearchValues(Metadata $metadata, $searchValues = array()) { KalturaLog::debug("Parsing metadata [" . $metadata->getId() . "] search values"); $searchTexts = array(); if (isset($searchValues[MetadataPlugin::getSphinxFieldName(MetadataPlugin::SPHINX_EXPANDER_FIELD_DATA)])) { foreach ($searchValues[MetadataPlugin::getSphinxFieldName(MetadataPlugin::SPHINX_EXPANDER_FIELD_DATA)] as $DataSerachValue) { $searchTexts[] = $DataSerachValue; } } $key = $metadata->getSyncKey(Metadata::FILE_SYNC_METADATA_DATA); $xmlPath = kFileSyncUtils::getLocalFilePathForKey($key); try { $xml = new KDOMDocument(); $xml->load($xmlPath); $xPath = new DOMXPath($xml); } catch (Exception $ex) { KalturaLog::err('Could not load metadata xml [' . $xmlPath . '] - ' . $ex->getMessage()); return ''; } $profileFields = MetadataProfileFieldPeer::retrieveActiveByMetadataProfileId($metadata->getMetadataProfileId()); $searchItems = array(); $textItems = array(); foreach ($profileFields as $profileField) { /* @var $profileField MetadataProfileField */ $nodes = $xPath->query($profileField->getXpath()); if (!$nodes->length) { continue; } if ($profileField->getType() == MetadataSearchFilter::KMC_FIELD_TYPE_DATE || $profileField->getType() == MetadataSearchFilter::KMC_FIELD_TYPE_INT) { $node = $nodes->item(0); if (!isset($searchValues[MetadataPlugin::SPHINX_DYNAMIC_ATTRIBUTES])) { $searchValues[MetadataPlugin::SPHINX_DYNAMIC_ATTRIBUTES] = array(); } $fieldName = MetadataPlugin::getSphinxFieldName($profileField->getId()); $searchValues[MetadataPlugin::SPHINX_DYNAMIC_ATTRIBUTES][$fieldName] = intval($node->nodeValue); continue; } $searchItemValues = array(); foreach ($nodes as $node) { $searchItemValues[] = $node->nodeValue; } if (!count($searchItemValues)) { continue; } if ($profileField->getType() == MetadataSearchFilter::KMC_FIELD_TYPE_TEXT || $profileField->getType() == MetadataSearchFilter::KMC_FIELD_TYPE_METADATA_OBJECT) { $textItems[] = implode(' ', $searchItemValues); $searchItems[$profileField->getId()] = array(); foreach ($searchItemValues as $searchItemValue) { if (iconv_strlen($searchItemValue, 'UTF-8') >= 128) { continue; } $searchItems[$profileField->getId()][] = $searchItemValue; } if ($profileField->getType() == MetadataSearchFilter::KMC_FIELD_TYPE_METADATA_OBJECT && $profileField->getRelatedMetadataProfileId()) { $subMetadataProfileId = $profileField->getRelatedMetadataProfileId(); $subMetadataProfile = MetadataProfilePeer::retrieveByPK($subMetadataProfileId); if (!$subMetadataProfile) { KalturaLog::err('Sub metadata profile ' . $subMetadataProfileId . ' was not found'); continue; } $subMetadataObjects = MetadataPeer::retrieveByObjects($subMetadataProfileId, $subMetadataProfile->getObjectType(), $searchItemValues); foreach ($subMetadataObjects as $subMetadataObject) { /** @var Metadata $subMetadataObject */ KalturaLog::debug("Found metadata object for profile {$subMetadataProfileId} and id {$subMetadataObject->getObjectId()}, extracting search data"); $subSearchTextsResult = self::getDataSearchValues($subMetadataObject); $subSearchTexts = $subSearchTextsResult[MetadataPlugin::getSphinxFieldName(MetadataPlugin::SPHINX_EXPANDER_FIELD_DATA)]; foreach ($subSearchTexts as $subSearchText) { $searchTexts[] = $subSearchText; } } } } else { $searchItems[$profileField->getId()] = $searchItemValues; } } foreach ($searchItems as $key => $searchItem) { foreach ($searchItem as $searchPhrase) { $searchTexts[] = MetadataPlugin::PLUGIN_NAME . '_' . "{$key} {$searchPhrase} " . kMetadataManager::SEARCH_TEXT_SUFFIX . '_' . $key; } } if (count($textItems)) { $searchTexts['text'] = MetadataSearchFilter::createSphinxSearchCondition($metadata->getPartnerId(), implode(' ', $textItems), true); } $ret = array(); foreach ($searchTexts as $index => $value) { if (is_int($index)) { $ret[$index] = $value; } } if (isset($searchTexts['text'])) { $ret['text'] = $searchTexts['text']; } $searchValues[MetadataPlugin::getSphinxFieldName(MetadataPlugin::SPHINX_EXPANDER_FIELD_DATA)] = $ret; return $searchValues; }
/** * Constructor */ function __construct() { parent::__construct(); }
public static function dependsOn() { $dependency = new KalturaDependency(MetadataPlugin::getPluginName()); return array($dependency); }
/** * Constructor */ function PKPMods34MetadataPlugin() { parent::MetadataPlugin(); }
protected function createSphinxSearchPhrase($partnerScope = null, $text, $metadataProfileFieldId = null) { $prefix = '@' . MetadataPlugin::getSphinxFieldName(MetadataPlugin::SPHINX_EXPANDER_FIELD_DATA) . ' '; if (is_null($partnerScope) || count($partnerScope) != 1) { return $prefix . MetadataSearchFilter::createSphinxSearchCondition(null, $text, false); } if ($partnerScope == baseObjectFilter::MATCH_KALTURA_NETWORK_AND_PRIVATE) { $partnerScope = kCurrentContext::getCurrentPartnerId(); } return $prefix . MetadataSearchFilter::createSphinxSearchCondition($partnerScope, $text, false, $metadataProfileFieldId); }
public function getFreeTextConditions($freeTexts) { KalturaLog::debug("freeText [{$freeTexts}]"); $additionalConditions = array(); if (preg_match('/^"[^"]+"$/', $freeTexts)) { $freeText = str_replace('"', '', $freeTexts); $freeText = SphinxUtils::escapeString($freeText); $freeText = "^{$freeText}\$"; $additionalConditions[] = '@' . MetadataPlugin::getSphinxFieldName(MetadataPlugin::SPHINX_EXPANDER_FIELD_DATA) . ' ' . MetadataPlugin::PLUGIN_NAME . "_text << ( {$freeTexts} ) << " . kMetadataManager::SEARCH_TEXT_SUFFIX . '_text'; return $additionalConditions; } if (strpos($freeTexts, baseObjectFilter::IN_SEPARATOR) > 0) { str_replace(baseObjectFilter::AND_SEPARATOR, baseObjectFilter::IN_SEPARATOR, $freeTexts); $freeTextsArr = explode(baseObjectFilter::IN_SEPARATOR, $freeTexts); foreach ($freeTextsArr as $valIndex => $valValue) { if (!is_numeric($valValue) && strlen($valValue) <= 0) { unset($freeTextsArr[$valIndex]); } } foreach ($freeTextsArr as $freeText) { $freeText = SphinxUtils::escapeString($freeText); $additionalConditions[] = '@' . MetadataPlugin::getSphinxFieldName(MetadataPlugin::SPHINX_EXPANDER_FIELD_DATA) . ' ' . MetadataPlugin::PLUGIN_NAME . "_text << ( {$freeText} ) << " . kMetadataManager::SEARCH_TEXT_SUFFIX . '_text'; } return $additionalConditions; } $freeTextsArr = explode(baseObjectFilter::AND_SEPARATOR, $freeTexts); foreach ($freeTextsArr as $valIndex => $valValue) { if (!is_numeric($valValue) && strlen($valValue) <= 0) { unset($freeTextsArr[$valIndex]); } } $freeTextsArr = array_unique($freeTextsArr); $freeTextExpr = implode(baseObjectFilter::AND_SEPARATOR, $freeTextsArr); $freeTextExpr = SphinxUtils::escapeString($freeTextExpr); $additionalConditions[] = '@' . MetadataPlugin::getSphinxFieldName(MetadataPlugin::SPHINX_EXPANDER_FIELD_DATA) . ' ' . MetadataPlugin::PLUGIN_NAME . "_text << ( {$freeTextExpr} ) << " . kMetadataManager::SEARCH_TEXT_SUFFIX . '_text'; return $additionalConditions; }
public function getObjectFeatureType() { return MetadataPlugin::getObjectFeaturetTypeCoreValue(MetadataObjectFeatureType::CUSTOM_DATA); }
public static function getSearchData(BaseObject $object) { if ($object instanceof CuePoint) { $pluginInstances = KalturaPluginManager::getPluginInstances('IKalturaCuePoint'); $cuePointCalssName = lcfirst(get_class($object)); if (MetadataPlugin::isAllowedPartner($object->getPartnerId()) && isset($pluginInstances[$cuePointCalssName])) { return kMetadataManager::getSearchValuesByObject($object->getMetadataObjectType(), $object->getId()); } } return null; }
public function objectDataChanged(BaseObject $object, $previousVersion = null, BatchJob $raisedJob = null) { // updated in the indexing server (sphinx) $relatedObject = kMetadataManager::getObjectFromPeer($object); if ($relatedObject && $relatedObject instanceof IIndexable) { $relatedObject->setUpdatedAt(time()); $relatedObject->save(); $relatedObject->indexToSearchIndex(); } /** @var Metadata $object */ if ($object->getObjectType() == MetadataObjectType::DYNAMIC_OBJECT && !$object->isLikeNew()) { /** * when dynamic object is modified, we need to reindex the metadata and the objects (users, entries) * that are referencing it */ $profileFields = MetadataProfileFieldPeer::retrieveByPartnerAndRelatedMetadataProfileId($object->getPartnerId(), $object->getMetadataProfileId()); $relatedMetadataProfiles = array(); foreach ($profileFields as $profileField) { /** @var MetadataProfileField $profileField */ if (in_array($profileField->getMetadataProfileId(), $relatedMetadataProfiles)) { continue; } $filter = new MetadataFilter(); $filter->set('_eq_metadata_profile_id', $profileField->getMetadataProfileId()); $indexObjectType = kPluginableEnumsManager::apiToCore('IndexObjectType', MetadataPlugin::getApiValue(MetadataIndexObjectType::METADATA)); kJobsManager::addIndexJob($object->getPartnerId(), $indexObjectType, $filter, true); $relatedMetadataProfiles[] = $profileField->getMetadataProfileId(); } } if ($relatedObject instanceof entry) { kStorageExporter::reExportEntry($relatedObject); } return true; }
/** * @return array */ public static function getAdditionalDescriptions() { return array(MetadataPlugin::getApiValue(self::METADATA) => 'Metadata'); }
public static function validateMetadataProfileField($partnerId, $xsdData, $isPath, $obejctType, $metadataProfileId = null) { $additionalSearchableFieldsCounter = 0; $profileFields = MetadataProfileFieldPeer::retrieveIndexableByPartnerAndType($partnerId, $obejctType); foreach ($profileFields as $profileField) { if ($profileField->getMetadataProfileId() == $metadataProfileId) { continue; } $type = $profileField->getType(); if ($type == MetadataSearchFilter::KMC_FIELD_TYPE_DATE || $type == MetadataSearchFilter::KMC_FIELD_TYPE_INT) { $additionalSearchableFieldsCounter++; } } $xPaths = kXsd::findXpathsByAppInfo($xsdData, kMetadataManager::APP_INFO_SEARCH, 'true', $isPath); foreach ($xPaths as $xPath => $xPathData) { if (isset($xPathData['type']) && ($xPathData['type'] == MetadataSearchFilter::KMC_FIELD_TYPE_DATE || $xPathData['type'] == MetadataSearchFilter::KMC_FIELD_TYPE_INT)) { $additionalSearchableFieldsCounter++; } } $partnerLimit = MetadataPlugin::getAdditionalSearchableFieldsLimit($partnerId, $obejctType); if ($additionalSearchableFieldsCounter > $partnerLimit) { throw new APIException(MetadataErrors::EXCEEDED_ADDITIONAL_SEARCHABLE_FIELDS_LIMIT, $partnerLimit); } }
function getActions($request, $actionArgs) { $router = $request->getRouter(); import('lib.pkp.classes.linkAction.request.AjaxModal'); return array_merge($this->getEnabled() ? array(new LinkAction('settings', new AjaxModal($router->url($request, null, null, 'manage', null, $actionArgs), $this->getDisplayName()), __('manager.plugins.settings'), null)) : array(), parent::getActions($request, $actionArgs)); }
/** * Constructor */ function PKPDc11MetadataPlugin() { parent::MetadataPlugin(); }
public static function dependsOn() { $bulkUploadXmlDependency = new KalturaDependency(self::BULK_UPLOAD_XML_PLUGIN_NAME); $metadataDependency = new KalturaDependency(MetadataPlugin::getPluginName()); return array($bulkUploadXmlDependency, $metadataDependency); }
public function __construct($not = false) { $this->setType(MetadataPlugin::getConditionTypeCoreValue(MetadataConditionType::METADATA_FIELD_MATCH)); parent::__construct($not); }
/** * @return array */ public static function getAdditionalDescriptions() { return array(MetadataPlugin::getApiValue(self::METADATA_FIELD_COMPARE) => 'Validate that all metadata elements number compared correctly to all listed numeric values.', MetadataPlugin::getApiValue(self::METADATA_FIELD_MATCH) => 'Validate that any of the metadata elements text matches any of listed textual values.', MetadataPlugin::getApiValue(self::METADATA_FIELD_CHANGED) => 'Check if metadata element changed between metadata versions.'); }
/** * @see Plugin::getTemplatePath($inCore) */ function getTemplatePath($inCore = false) { return parent::getTemplatePath($inCore) . 'templates/'; }
public function toObject($object_to_fill = null, $props_to_skip = array()) { $object_to_fill = parent::toObject($object_to_fill, $props_to_skip); if (class_exists('MetadataPlugin') && !is_null($this->enableMetadata)) { $object_to_fill->setPluginEnabled(MetadataPlugin::getPluginName(), $this->enableMetadata); } if (class_exists('ContentDistributionPlugin') && !is_null($this->enableContentDistribution)) { $object_to_fill->setPluginEnabled(ContentDistributionPlugin::getPluginName(), $this->enableContentDistribution); } if (class_exists('AuditPlugin') && !is_null($this->enableAuditTrail)) { $object_to_fill->setPluginEnabled(AuditPlugin::getPluginName(), $this->enableAuditTrail); } if (class_exists('AnnotationPlugin') && !is_null($this->enableAnnotation)) { $object_to_fill->setPluginEnabled(AnnotationPlugin::getPluginName(), $this->enableAnnotation); } if (!is_null($this->enableMobileFlavors)) { $object_to_fill->setEnabledService($this->enableMobileFlavors, PermissionName::FEATURE_MOBILE_FLAVORS); } if (!is_null($this->enablePs2PermissionValidation)) { $object_to_fill->setEnabledService($this->enablePs2PermissionValidation, PermissionName::FEATURE_PS2_PERMISSIONS_VALIDATION); } return $object_to_fill; }
/** * Constructor */ function PKPOpenurl10MetadataPlugin() { parent::MetadataPlugin(); }
public static function loadObject($baseClass, $enumValue, array $constructorArgs = null) { if ($baseClass == 'ISyncableFile' && isset($constructorArgs['objectId'])) { $objectId = $constructorArgs['objectId']; switch ($enumValue) { case FileSyncObjectType::METADATA: MetadataPeer::setUseCriteriaFilter(false); $object = MetadataPeer::retrieveByPK($objectId); MetadataPeer::setUseCriteriaFilter(true); return $object; case FileSyncObjectType::METADATA_PROFILE: MetadataProfilePeer::setUseCriteriaFilter(false); $object = MetadataProfilePeer::retrieveByPK($objectId); MetadataProfilePeer::setUseCriteriaFilter(true); return $object; } } if ($baseClass == 'kJobData') { switch ($enumValue) { case KalturaBatchJobType::METADATA_IMPORT: return new kImportJobData(); case KalturaBatchJobType::METADATA_TRANSFORM: return new kTransformMetadataJobData(); } } if ($baseClass == 'KalturaJobData') { switch ($enumValue) { case KalturaBatchJobType::METADATA_IMPORT: return new KalturaImportJobData(); case KalturaBatchJobType::METADATA_TRANSFORM: return new KalturaTransformMetadataJobData(); } } if ($baseClass == 'KalturaCondition') { if ($enumValue == MetadataPlugin::getConditionTypeCoreValue(MetadataConditionType::METADATA_FIELD_COMPARE)) { return new KalturaCompareMetadataCondition(); } if ($enumValue == MetadataPlugin::getConditionTypeCoreValue(MetadataConditionType::METADATA_FIELD_MATCH)) { return new KalturaMatchMetadataCondition(); } if ($enumValue == MetadataPlugin::getConditionTypeCoreValue(MetadataConditionType::METADATA_FIELD_CHANGED)) { return new KalturaMetadataFieldChangedCondition(); } } if ($baseClass == 'KalturaFilter') { if ($enumValue == 'MetadataFilter') { return new KalturaMetadataFilter(); } } if ($baseClass == 'KIndexingEngine') { if ($enumValue == KalturaIndexObjectType::METADATA) { return new KIndexingMetadataEngine(); } } if ($baseClass == 'KalturaResponseProfileMapping') { if ($enumValue == 'kMetadataResponseProfileMapping') { return new KalturaMetadataResponseProfileMapping(); } } return null; }
* @subpackage dragonfly.roles_and_permissions * * Populate permission table with all base permissions * * No need to re-run after server code depoloy * In order to re-run delete from permission */ $dryRun = true; //TODO: change for real run if ($argc > 1 && $argv[1] == 'realrun') { $dryRun = false; } //------------------------------------------------------ require_once dirname(__FILE__) . '/../../../bootstrap.php'; //------------------------------------------------------ $permissionsData = array(array(-1, PermissionType::NORMAL, PermissionName::BATCH_BASE, 'Batch system permission', null), array(0, PermissionType::NORMAL, PermissionName::USER_SESSION_PERMISSION, 'User session permission', null), array(0, PermissionType::NORMAL, PermissionName::ALWAYS_ALLOWED_ACTIONS, 'No session permission', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_INGEST_UPLOAD, 'Upload', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_INGEST_BULK_UPLOAD, 'Bulk upload', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_INGEST_FEED, 'Feed subscription', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_MIX, 'Manage remix', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_BASE, 'Basic content management', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_METADATA, 'Modify metadata', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_ASSIGN_CATEGORIES, 'Assign categories', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_THUMBNAIL, 'Modify thumbnails', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_SCHEDULE, 'Modify scheduling', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_ACCESS_CONTROL, 'Modify content access control', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_CUSTOM_DATA, 'Modify custom data', PermissionPeer::getPermissionNameFromPluginName(MetadataPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_DELETE, 'Delete content', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_RECONVERT, 'Reconvert flavors', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_EDIT_CATEGORIES, 'Manage categories', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_EMBED_CODE, 'Grab embed code', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_DISTRIBUTION_BASE, 'Distribution base', PermissionPeer::getPermissionNameFromPluginName(ContentDistributionPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_DISTRIBUTION_WHERE, 'Where to distribute', PermissionPeer::getPermissionNameFromPluginName(ContentDistributionPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_DISTRIBUTION_SEND, 'Distribution submit', PermissionPeer::getPermissionNameFromPluginName(ContentDistributionPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_DISTRIBUTION_REMOVE, 'Distribution remove', PermissionPeer::getPermissionNameFromPluginName(ContentDistributionPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_DISTRIBUTION_PROFILE_MODIFY, 'Distribution profile manage', PermissionPeer::getPermissionNameFromPluginName(ContentDistributionPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_VIRUS_SCAN, 'Virus scan actions', PermissionPeer::getPermissionNameFromPluginName(VirusScanPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_DOWNLOAD, 'Content download', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_ANNOTATION, 'Annotate', PermissionPeer::getPermissionNameFromPluginName(AnnotationPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MANAGE_SHARE, 'Share content', null), array(0, PermissionType::NORMAL, PermissionName::LIVE_STREAM_ADD, 'Add live streams', PermissionName::FEATURE_LIVE_STREAM), array(0, PermissionType::NORMAL, PermissionName::LIVE_STREAM_UPDATE, 'Modify live streams', PermissionName::FEATURE_LIVE_STREAM), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MODERATE_BASE, 'Basic moderation', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MODERATE_METADATA, 'Moderate metadata', null), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MODERATE_CUSTOM_DATA, 'Moderate custom data', PermissionPeer::getPermissionNameFromPluginName(MetadataPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::CONTENT_MODERATE_APPROVE_REJECT, 'Approve/Reject content', null), array(0, PermissionType::NORMAL, PermissionName::PLAYLIST_BASE, 'Playlist access', null), array(0, PermissionType::NORMAL, PermissionName::PLAYLIST_ADD, 'Add playlists', null), array(0, PermissionType::NORMAL, PermissionName::PLAYLIST_UPDATE, 'Modify playlists', null), array(0, PermissionType::NORMAL, PermissionName::PLAYLIST_DELETE, 'Delete playlists', null), array(0, PermissionType::NORMAL, PermissionName::PLAYLIST_EMBED_CODE, 'Grab playlist embed code', null), array(0, PermissionType::NORMAL, PermissionName::SYNDICATION_BASE, 'Syndication feeds access', null), array(0, PermissionType::NORMAL, PermissionName::SYNDICATION_ADD, 'Create syndication feeds', null), array(0, PermissionType::NORMAL, PermissionName::SYNDICATION_UPDATE, 'Modify syndication feeds', null), array(0, PermissionType::NORMAL, PermissionName::SYNDICATION_DELETE, 'Delete syndication feeds', null), array(0, PermissionType::NORMAL, PermissionName::STUDIO_BASE, 'Appstudio access', null), array(0, PermissionType::NORMAL, PermissionName::STUDIO_ADD_UICONF, 'Create players', null), array(0, PermissionType::NORMAL, PermissionName::STUDIO_UPDATE_UICONF, 'Modify players', null), array(0, PermissionType::NORMAL, PermissionName::STUDIO_DELETE_UICONF, 'Delete players', null), array(0, PermissionType::NORMAL, PermissionName::STUDIO_BRAND_UICONF, 'Set player branding', null), array(0, PermissionType::NORMAL, PermissionName::STUDIO_SELECT_CONTENT, 'Select player content', null), array(0, PermissionType::NORMAL, PermissionName::ADVERTISING_BASE, 'Advertising access', null), array(0, PermissionType::NORMAL, PermissionName::ADVERTISING_UPDATE_SETTINGS, 'Modify advertising settings', null), array(0, PermissionType::NORMAL, PermissionName::ACCOUNT_BASE, 'Account settings access', null), array(0, PermissionType::NORMAL, PermissionName::ACCOUNT_UPDATE_SETTINGS, 'Modify account settings', null), array(0, PermissionType::NORMAL, PermissionName::INTEGRATION_BASE, 'Integration settings access', null), array(0, PermissionType::NORMAL, PermissionName::INTEGRATION_UPDATE_SETTINGS, 'Modify integration settings', null), array(0, PermissionType::NORMAL, PermissionName::ACCESS_CONTROL_BASE, 'Access control profiles access', null), array(0, PermissionType::NORMAL, PermissionName::ACCESS_CONTROL_ADD, 'Create access control profiles', null), array(0, PermissionType::NORMAL, PermissionName::ACCESS_CONTROL_UPDATE, 'Modify access control profiles', null), array(0, PermissionType::NORMAL, PermissionName::ACCESS_CONTROL_DELETE, 'Delete access control profiles', null), array(0, PermissionType::NORMAL, PermissionName::TRANSCODING_BASE, 'Transcoding profiles access', null), array(0, PermissionType::NORMAL, PermissionName::TRANSCODING_ADD, 'Create transcoding profiles', null), array(0, PermissionType::NORMAL, PermissionName::TRANSCODING_UPDATE, 'Modify transcoding profiles', null), array(0, PermissionType::NORMAL, PermissionName::TRANSCODING_DELETE, 'Delete transcoding profiles', null), array(0, PermissionType::NORMAL, PermissionName::CUSTOM_DATA_PROFILE_BASE, 'Custom data access', PermissionPeer::getPermissionNameFromPluginName(MetadataPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::CUSTOM_DATA_PROFILE_ADD, 'Create custom data', PermissionPeer::getPermissionNameFromPluginName(MetadataPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::CUSTOM_DATA_PROFILE_UPDATE, 'Modify custom data', PermissionPeer::getPermissionNameFromPluginName(MetadataPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::CUSTOM_DATA_PROFILE_DELETE, 'Delete custom data', PermissionPeer::getPermissionNameFromPluginName(MetadataPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::ADMIN_BASE, 'Administration settings access', null), array(0, PermissionType::NORMAL, PermissionName::ADMIN_USER_ADD, 'Add users', null), array(0, PermissionType::NORMAL, PermissionName::ADMIN_USER_UPDATE, 'Modify users', null), array(0, PermissionType::NORMAL, PermissionName::ADMIN_USER_DELETE, 'Delete users', null), array(0, PermissionType::NORMAL, PermissionName::ADMIN_ROLE_ADD, 'Add roles', null), array(0, PermissionType::NORMAL, PermissionName::ADMIN_ROLE_UPDATE, 'Modify roles', null), array(0, PermissionType::NORMAL, PermissionName::ADMIN_ROLE_DELETE, 'Delete roles', null), array(0, PermissionType::NORMAL, PermissionName::ADMIN_PUBLISHER_MANAGE, 'Manage publishers', null), array(0, PermissionType::NORMAL, PermissionName::ADMIN_WHITE_BRANDING, 'Manage whitebranding', null), array(0, PermissionType::NORMAL, PermissionName::ANALYTICS_BASE, 'Analytics access', PermissionName::FEATURE_ANALYTICS_TAB), array(0, PermissionType::NORMAL, PermissionName::WIDGET_ADMIN, 'Widget admin', null), array(0, PermissionType::NORMAL, PermissionName::ANALYTICS_SEND_DATA, 'Send analytics data', null), array(0, PermissionType::NORMAL, PermissionName::WIDGET_ADMIN, 'Widget admin', null), array(0, PermissionType::NORMAL, PermissionName::SEARCH_SERVICE, 'Search service', null), array(0, PermissionType::NORMAL, PermissionName::ANALYTICS_SEND_DATA, 'Send analytics data', null), array(0, PermissionType::NORMAL, PermissionName::AUDIT_TRAIL_BASE, 'Audit trail base', PermissionPeer::getPermissionNameFromPluginName(AuditPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::AUDIT_TRAIL_ADD, 'Audit trail add', PermissionPeer::getPermissionNameFromPluginName(AuditPlugin::getPluginName())), array(0, PermissionType::NORMAL, PermissionName::KMC_ACCESS, 'KMC access', null), array(0, PermissionType::NORMAL, PermissionName::KMC_READ_ONLY, 'KMC access', PermissionName::KMC_ACCESS), array(0, PermissionType::NORMAL, PermissionName::CUSTOM_DATA_FIELD_ADD, 'Add custom data field', null), array(0, PermissionType::NORMAL, PermissionName::CUSTOM_DATA_FIELD_UPDATE, 'Update custom data field', null), array(0, PermissionType::NORMAL, PermissionName::CUSTOM_DATA_FIELD_DELETE, 'Delete custom data field', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_BASE, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_PUBLISHER_BASE, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_PUBLISHER_KMC_ACCESS, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_PUBLISHER_CONFIG, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_PUBLISHER_BLOCK, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_PUBLISHER_REMOVE, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_PUBLISHER_ADD, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_PUBLISHER_USAGE, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_USER_MANAGE, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_SYSTEM_MONITOR, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_DEVELOPERS_TAB, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_BATCH_CONTROL, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_BATCH_CONTROL_INPROGRESS, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_BATCH_CONTROL_FAILED, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_BATCH_CONTROL_SETUP, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_STORAGE, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_VIRUS_SCAN, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_EMAIL_INGESTION, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_CONTENT_DISTRIBUTION_BASE, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_CONTENT_DISTRIBUTION_MODIFY, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_PERMISSIONS_MANAGE, 'Base system admin permission', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_INTERNAL, 'System internal actions', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_ADMIN_ENTRY_INVESTIGATION, 'Entry investigation', null), array(-2, PermissionType::NORMAL, PermissionName::SYSTEM_FILESYNC, 'Filesync actions', null), array(99, PermissionType::SPECIAL_FEATURE, PermissionName::FEATURE_PS2_PERMISSIONS_VALIDATION, 'PS2 permissions validation', null)); //------------------------------------------------------ $allPermissions = array(); foreach ($permissionsData as $data) { $permission = new Permission(); $permission->setPartnerId($data[0]); $permission->setType($data[1]); $permission->setName($data[2]); $permission->setFriendlyName($data[3]); $permission->setDependsOnPermissionNames($data[4]); $permission->setStatus(PermissionStatus::ACTIVE); $allPermissions[] = $permission; } //------------------------------------------------------ foreach ($allPermissions as $permission) { if ($dryRun) {
/** * Constructor */ function PKPNlm30MetadataPlugin() { parent::MetadataPlugin(); }
/** * Init object type */ public function __construct() { $this->type = MetadataPlugin::getApiValue(MetadataConditionType::METADATA_FIELD_MATCH); }
public static function getSphinxSchema() { $kalturaEntryFields = array(); $searchIndexes = kConf::get('search_indexes'); foreach ($searchIndexes as $indexName => $indexLimit) { for ($i = 0; $i < $indexLimit; $i++) { $kalturaEntryFields[MetadataPlugin::getSphinxFieldName(MetadataPlugin::SPHINX_EXPENDER_FIELD_INT) . $i] = SphinxFieldType::RT_ATTR_UINT; } $sphinxSchema[kSphinxSearchManager::getSphinxIndexName($indexName)]['fields'] = $kalturaEntryFields; } return $sphinxSchema; }