/**
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $xmlElement
  * @return SimpleXMLElement
  */
 public function contributeDistribution(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     $distributionsProvider = null;
     $distributionsProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     if ($distributionsProfile) {
         $distributionsProvider = $distributionsProfile->getProvider();
     }
     $distribution = $mrss->addChild('distribution');
     $distribution->addAttribute('entryDistributionId', $entryDistribution->getId());
     $distribution->addAttribute('distributionProfileId', $entryDistribution->getDistributionProfileId());
     $distribution->addAttribute('lastReport', $entryDistribution->getLastReport(null));
     if ($distributionsProvider) {
         $distribution->addAttribute('provider', $distributionsProvider->getName());
         if ($distributionsProvider->getType() == DistributionProviderType::GENERIC) {
             $distribution->addAttribute('distributionProviderId', $distributionsProvider->getId());
         } elseif ($distributionsProvider->getType() == DistributionProviderType::SYNDICATION) {
             if ($distributionsProfile instanceof SyndicationDistributionProfile) {
                 $distribution->addAttribute('feedId', $distributionsProfile->getFeedId());
             }
         } else {
             $pluginInstances = KalturaPluginManager::getPluginInstances('IKalturaContentDistributionProvider');
             foreach ($pluginInstances as $pluginInstance) {
                 if ($pluginInstance->getProvider() === $distributionsProvider) {
                     $pluginInstance->contributeMRSS($entryDistribution, $distribution);
                 }
             }
         }
     }
     if ($entryDistribution->getRemoteId()) {
         $distribution->addChild('remoteId', $entryDistribution->getRemoteId());
     }
     if ($entryDistribution->getSunrise(null)) {
         $distribution->addChild('sunrise', $entryDistribution->getSunrise(null));
     }
     if ($entryDistribution->getSunset(null)) {
         $distribution->addChild('sunset', $entryDistribution->getSunset(null));
     }
     $flavorAssetIds = explode(',', $entryDistribution->getFlavorAssetIds());
     $flavorAssetIdsNode = $distribution->addChild('flavorAssetIds');
     foreach ($flavorAssetIds as $flavorAssetId) {
         $flavorAssetIdsNode->addChild('flavorAssetId', $flavorAssetId);
     }
     $thumbAssetIds = explode(',', $entryDistribution->getThumbAssetIds());
     $thumbAssetIdsNode = $distribution->addChild('thumbAssetIds');
     foreach ($thumbAssetIds as $thumbAssetId) {
         $thumbAssetIdsNode->addChild('thumbAssetId', $thumbAssetId);
     }
 }
Esempio n. 2
0
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     $mrss->addChild('channel_title', $distributionProfile->getChannelTitle());
     $mrss->addChild('channel_link', $distributionProfile->getChannelLink());
     $mrss->addChild('channel_description', $distributionProfile->getChannelDescription());
     $mrss->addChild('channel_language', $distributionProfile->getChannelLanguage());
     $mrss->addChild('channel_copyright', $distributionProfile->getChannelCopyright());
     $mrss->addChild('channel_image_title', $distributionProfile->getChannelImageTitle());
     $mrss->addChild('channel_image_url', $distributionProfile->getChannelImageUrl());
     $mrss->addChild('channel_image_link', $distributionProfile->getChannelImageLink());
     $mrss->addChild('item_media_rating', $distributionProfile->getItemMediaRating());
 }
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     /* @var $distributionProfile VerizonVcastDistributionProfile */
     $mrss->addChild('ProviderName', $distributionProfile->getProviderName());
     $mrss->addChild('ProviderId', $distributionProfile->getProviderId());
     $mrss->addChild('Entitlement', $distributionProfile->getEntitlement());
     $mrss->addChild('Priority', $distributionProfile->getPriority());
     $mrss->addChild('AllowStreaming', $distributionProfile->getAllowStreaming());
     $mrss->addChild('StreamingPriceCode', $distributionProfile->getStreamingPriceCode());
     $mrss->addChild('AllowDownload', $distributionProfile->getAllowDownload());
     $mrss->addChild('DownloadPriceCode', $distributionProfile->getDownloadPriceCode());
 }
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     // append AttUverse specific report statistics
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     $mrss->addChild('channel_title', $distributionProfile->getChannelTitle());
 }
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     /* @var $distributionProfile MetroPcsDistributionProfile */
     //$mrss->addChild('provider_name', $distributionProfile->getProviderName());
     $mrss->addChild('provider_id', $distributionProfile->getProviderId());
     $mrss->addChild('copyright', $distributionProfile->getCopyright());
     $mrss->addChild('entitlements', $distributionProfile->getEntitlements());
     $mrss->addChild('rating', $distributionProfile->getRating());
     $mrss->addChild('item_type', $distributionProfile->getItemType());
 }
 /**
  * @param EntryDistribution $entryDistribution
  * @param DistributionProfile $distributionProfile
  * @return BatchJob
  */
 protected static function addSubmitDeleteJob(EntryDistribution $entryDistribution, DistributionProfile $distributionProfile)
 {
     $entryDistribution->setStatus(EntryDistributionStatus::DELETING);
     $entryDistribution->setDirtyStatus(null);
     if (!$entryDistribution->save()) {
         KalturaLog::err("Unable to save entry distribution [" . $entryDistribution->getId() . "] status");
         return null;
     }
     $jobData = new kDistributionDeleteJobData();
     $jobData->setDistributionProfileId($entryDistribution->getDistributionProfileId());
     $jobData->setEntryDistributionId($entryDistribution->getId());
     $jobData->setProviderType($distributionProfile->getProviderType());
     $jobData->setRemoteId($entryDistribution->getRemoteId());
     $jobData->setMediaFiles($entryDistribution->getMediaFiles());
     $batchJob = new BatchJob();
     $batchJob->setEntryId($entryDistribution->getEntryId());
     $batchJob->setPartnerId($entryDistribution->getPartnerId());
     $jobType = ContentDistributionPlugin::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_DELETE);
     $jobSubType = $distributionProfile->getProviderType();
     return kJobsManager::addJob($batchJob, $jobData, $jobType, $jobSubType);
 }
 /**
  * @param EntryDistribution $entryDistribution
  */
 public static function onEntryDistributionUpdateRequired(EntryDistribution $entryDistribution)
 {
     $distributionProfileId = $entryDistribution->getDistributionProfileId();
     $distributionProfile = DistributionProfilePeer::retrieveByPK($distributionProfileId);
     if (!$distributionProfile) {
         return true;
     }
     $distributionProvider = $distributionProfile->getProvider();
     if (!$distributionProvider) {
         KalturaLog::log("Entry distribution [" . $entryDistribution->getId() . "] provider not found");
         return true;
     }
     if (!$distributionProvider->isUpdateEnabled()) {
         KalturaLog::log("Entry distribution [" . $entryDistribution->getId() . "] provider [" . $distributionProvider->getName() . "] does not support update");
         return true;
     }
     $ignoreStatuses = array(EntryDistributionStatus::PENDING, EntryDistributionStatus::DELETED, EntryDistributionStatus::DELETING, EntryDistributionStatus::QUEUED, EntryDistributionStatus::REMOVED);
     if (in_array($entryDistribution->getStatus(), $ignoreStatuses)) {
         KalturaLog::log("Entry distribution [" . $entryDistribution->getId() . "] status [" . $entryDistribution->getStatus() . "] does not require update");
         return true;
     }
     if ($entryDistribution->getDirtyStatus() == EntryDistributionDirtyStatus::UPDATE_REQUIRED) {
         KalturaLog::log("Entry distribution [" . $entryDistribution->getId() . "] already requires update");
         return true;
     }
     $distributionProfileId = $entryDistribution->getDistributionProfileId();
     $distributionProfile = DistributionProfilePeer::retrieveByPK($distributionProfileId);
     if (!$distributionProfile) {
         KalturaLog::err("Entry distribution [" . $entryDistribution->getId() . "] profile [{$distributionProfileId}] not found");
         return true;
     }
     $distributionProvider = $distributionProfile->getProvider();
     if (!$distributionProvider->isUpdateEnabled()) {
         KalturaLog::log("Entry distribution [" . $entryDistribution->getId() . "] provider [" . $distributionProvider->getName() . "] does not support update");
         return true;
     }
     if ($distributionProfile->getUpdateEnabled() != DistributionProfileActionStatus::AUTOMATIC) {
         KalturaLog::log("Entry distribution [" . $entryDistribution->getId() . "] should not be updated automatically");
         $entryDistribution->setDirtyStatus(EntryDistributionDirtyStatus::UPDATE_REQUIRED);
         $entryDistribution->save();
         return true;
     }
     self::submitUpdateEntryDistribution($entryDistribution, $distributionProfile);
     return true;
 }
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     // append Yahoo specific report statistics
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     $mrss->addChild('contact_telephone', $distributionProfile->getContactTelephone());
     $mrss->addChild('contact_email', $distributionProfile->getContactEmail());
 }
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     // append YouTube specific report statistics
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     $mrss->addChild('feed_title', $distributionProfile->getFeedTitle());
     $mrss->addChild('feed_subtitle', $distributionProfile->getFeedSubtitle());
     $mrss->addChild('feed_link', $distributionProfile->getFeedLink());
     $mrss->addChild('feed_author_name', $distributionProfile->getFeedAuthorName());
 }
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     if ($distributionProfile && $distributionProfile instanceof KalturaFacebookDistributionProfile) {
         $mrss->addChild(FacebookDistributionField::CALL_TO_ACTION_TYPE, $distributionProfile->getCallToActionType());
         $mrss->addChild(FacebookDistributionField::CALL_TO_ACTION_LINK, $distributionProfile->getCallToActionLink());
         $mrss->addChild(FacebookDistributionField::CALL_TO_ACTION_LINK_CAPTION, $distributionProfile->getCallToActionLinkCaption());
         $mrss->addChild(FacebookDistributionField::PLACE, $distributionProfile->getPlace());
         $mrss->addChild(FacebookDistributionField::TAGS, $distributionProfile->getTags());
         $mrss->addChild(FacebookDistributionField::TARGETING, $distributionProfile->getTargeting());
         $mrss->addChild(FacebookDistributionField::FEED_TARGETING, $distributionProfile->getFeedTargeting());
     }
 }
 /**
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  * @return SimpleXMLElement
  */
 public function contributeDistribution(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     $distributionsProvider = null;
     $distributionsProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     if ($distributionsProfile) {
         $distributionsProvider = $distributionsProfile->getProvider();
     }
     $distribution = $mrss->addChild('distribution');
     $distribution->addAttribute('entryDistributionId', $entryDistribution->getId());
     $distribution->addAttribute('distributionProfileId', $entryDistribution->getDistributionProfileId());
     if ($distributionsProfile) {
         $distribution->addAttribute('distributionProfileName', $distributionsProfile->getName());
     }
     if ($distributionsProvider) {
         $distribution->addAttribute('provider', $distributionsProvider->getName());
         if ($distributionsProvider->getType() == DistributionProviderType::GENERIC) {
             $distribution->addAttribute('distributionProviderId', $distributionsProvider->getId());
         } elseif ($distributionsProvider->getType() == DistributionProviderType::SYNDICATION) {
             if ($distributionsProfile instanceof SyndicationDistributionProfile) {
                 $distribution->addAttribute('feedId', $distributionsProfile->getFeedId());
             }
         } else {
             $pluginInstances = KalturaPluginManager::getPluginInstances('IKalturaContentDistributionProvider');
             foreach ($pluginInstances as $pluginInstance) {
                 if ($pluginInstance->getProvider() === $distributionsProvider) {
                     $pluginInstance->contributeMRSS($entryDistribution, $distribution);
                 }
             }
         }
     }
     if ($entryDistribution->getRemoteId()) {
         $distribution->addChild('remoteId', $entryDistribution->getRemoteId());
     }
     if ($entryDistribution->getSunrise(null)) {
         $distribution->addChild('sunrise', $entryDistribution->getSunrise(null));
     }
     if ($entryDistribution->getSunset(null)) {
         $distribution->addChild('sunset', $entryDistribution->getSunset(null));
     }
     $flavorAssetIds = explode(',', $entryDistribution->getFlavorAssetIds());
     $flavorAssetIdsNode = $distribution->addChild('flavorAssetIds');
     foreach ($flavorAssetIds as $flavorAssetId) {
         $flavorAssetIdsNode->addChild('flavorAssetId', $flavorAssetId);
     }
     $thumbAssetIds = explode(',', $entryDistribution->getThumbAssetIds());
     $thumbAssetIdsNode = $distribution->addChild('thumbAssetIds');
     foreach ($thumbAssetIds as $thumbAssetId) {
         $thumbAssetIdsNode->addChild('thumbAssetId', $thumbAssetId);
     }
     $assetIds = explode(',', $entryDistribution->getAssetIds());
     $assetIdsNode = $distribution->addChild('assetIds');
     foreach ($assetIds as $assetId) {
         $assetIdsNode->addChild('assetId', $assetId);
     }
     if ($entryDistribution->getErrorDescription()) {
         $distribution->addChild('errorDescription', kMrssManager::stringToSafeXml($entryDistribution->getErrorDescription()));
     }
     $distribution->addChild('createdAt', $entryDistribution->getCreatedAt(kMrssManager::FORMAT_DATETIME));
     $distribution->addChild('updatedAt', $entryDistribution->getUpdatedAt(kMrssManager::FORMAT_DATETIME));
     if ($entryDistribution->getSubmittedAt(null)) {
         $distribution->addChild('submittedAt', $entryDistribution->getSubmittedAt(kMrssManager::FORMAT_DATETIME));
     }
     if ($entryDistribution->getLastReport(null)) {
         $distribution->addChild('lastReport', $entryDistribution->getLastReport(kMrssManager::FORMAT_DATETIME));
     }
     if ($entryDistribution->getDirtyStatus()) {
         $distribution->addChild('dirtyStatus', $entryDistribution->getDirtyStatus());
     }
     $distribution->addChild('status', $entryDistribution->getStatus());
     $distribution->addChild('sunStatus', $entryDistribution->getSunStatus());
     if ($entryDistribution->getPlays()) {
         $distribution->addChild('plays', $entryDistribution->getPlays());
     }
     if ($entryDistribution->getViews()) {
         $distribution->addChild('views', $entryDistribution->getViews());
     }
     if ($entryDistribution->getErrorNumber()) {
         $distribution->addChild('errorNumber', $entryDistribution->getErrorNumber());
     }
     if ($entryDistribution->getErrorType()) {
         $distribution->addChild('errorType', $entryDistribution->getErrorType());
     }
 }
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     // append UverseClickToOrder specific report statistics
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     $mrss->addChild('background_image_wide', $distributionProfile->getBackgroundImageWide());
     $mrss->addChild('background_image_standard', $distributionProfile->getBackgroundImageStandard());
 }
 /**
  * @param EntryDistribution $entryDistribution
  * @param DistributionProfile $distributionProfile
  * @return BatchJob
  */
 protected static function addSubmitDeleteJob(EntryDistribution $entryDistribution, DistributionProfile $distributionProfile)
 {
     $jobData = new kDistributionDeleteJobData();
     $jobData->setDistributionProfileId($entryDistribution->getDistributionProfileId());
     $jobData->setEntryDistributionId($entryDistribution->getId());
     $jobData->setProviderType($distributionProfile->getProviderType());
     $jobData->setRemoteId($entryDistribution->getRemoteId());
     $batchJob = new BatchJob();
     $batchJob->setEntryId($entryDistribution->getEntryId());
     $batchJob->setPartnerId($entryDistribution->getPartnerId());
     $jobType = ContentDistributionPlugin::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_DELETE);
     $jobSubType = $distributionProfile->getProviderType();
     return kJobsManager::addJob($batchJob, $jobData, $jobType, $jobSubType);
 }
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     // append YouTube specific report statistics
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     $mrss->addChild('account_username', $distributionProfile->getUsername());
     $mrss->addChild('default_category', $distributionProfile->getDefaultCategory());
     $mrss->addChild('allow_comments', $distributionProfile->getAllowComments());
     $mrss->addChild('allow_responses', $distributionProfile->getAllowResponses());
     $mrss->addChild('allow_ratings', $distributionProfile->getAllowRatings());
     $mrss->addChild('allow_embedding', $distributionProfile->getAllowEmbedding());
 }
Esempio n. 15
0
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     // append comcast mrss specific configuration
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     /* @var $distributionProfile TVComDistributionProfile */
     $mrss->addChild('feed_copyright', $distributionProfile->getFeedCopyright());
 }
Esempio n. 16
0
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     /* @var $distributionProfile HuluDistributionProfile */
     $mrss->addChild('SeriesChannel', $distributionProfile->getSeriesChannel());
     $mrss->addChild('SeriesPrimaryCategory', $distributionProfile->getSeriesPrimaryCategory());
     foreach ($distributionProfile->getSeriesAdditionalCategories() as $category) {
         $mrss->addChild('AdditionalCategories', $category);
     }
     $mrss->addChild('SeasonNumber', $distributionProfile->getSeasonNumber());
     $mrss->addChild('SeasonSynopsis', $distributionProfile->getSeasonSynopsis());
     $mrss->addChild('SeasonTuneInInformation', $distributionProfile->getSeasonTuneInInformation());
     $mrss->addChild('MediaType', $distributionProfile->getVideoMediaType());
 }
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     /* @var $distributionProfile DoubleClickDistributionProfile */
     $mrss->addChild('ChannelTitle', htmlentities($distributionProfile->getChannelTitle()));
     $mrss->addChild('ChannelDescription', htmlentities($distributionProfile->getChannelDescription()));
     $mrss->addChild('ChannelLink', htmlentities($distributionProfile->getChannelLink()));
 }
 /**
  * @param EntryDistribution $entryDistribution
  * @param DistributionProfile $distributionProfile
  * @return BatchJob
  */
 protected static function addSubmitDeleteJob(EntryDistribution $entryDistribution, DistributionProfile $distributionProfile)
 {
     $entryDistribution->setStatus(EntryDistributionStatus::DELETING);
     if (!$entryDistribution->save()) {
         KalturaLog::err("Unable to save entry distribution [" . $entryDistribution->getId() . "] status");
         $entryDistribution->reload();
         return null;
     }
     $entryDistribution->setDirtyStatus(null);
     //Moved down to ensure previous save is done Atomically
     $entryDistribution->save();
     $jobData = new kDistributionDeleteJobData();
     $jobData->setDistributionProfileId($entryDistribution->getDistributionProfileId());
     $jobData->setEntryDistributionId($entryDistribution->getId());
     $jobData->setProviderType($distributionProfile->getProviderType());
     $jobData->setRemoteId($entryDistribution->getRemoteId());
     $jobData->setMediaFiles($entryDistribution->getMediaFiles());
     $batchJob = new BatchJob();
     $batchJob->setEntryId($entryDistribution->getEntryId());
     $batchJob->setPartnerId($entryDistribution->getPartnerId());
     $batchJob->setObjectId($entryDistribution->getId());
     $batchJob->setObjectType(kPluginableEnumsManager::apiToCore('BatchJobObjectType', ContentDistributionBatchJobObjectType::ENTRY_DISTRIBUTION));
     $jobType = ContentDistributionPlugin::getBatchJobTypeCoreValue(ContentDistributionBatchJobType::DISTRIBUTION_DELETE);
     $jobSubType = $distributionProfile->getProviderType();
     return kJobsManager::addJob($batchJob, $jobData, $jobType, $jobSubType);
 }
 /**
  * Returns an associative array of variables to be passed to the XSLT.
  * This function can be extended by specific profiles to add additonal variables to their XSLT transformations.
  * @param EntryDistribution $entryDistribution
  * @return array associative array of variables to be passed to the XSLT
  */
 protected function getXslVariables(EntryDistribution $entryDistribution)
 {
     return array('entryDistributionId' => $entryDistribution->getId(), 'distributionProfileId' => $entryDistribution->getDistributionProfileId());
 }
 public function transformXslForEntry(EntryDistribution $entryDistribution, $xsl, $xslParams = array())
 {
     $xslParams['entryDistributionId'] = $entryDistribution->getId();
     $xslParams['distributionProfileId'] = $entryDistribution->getDistributionProfileId();
     $mrssDoc = $this->getEntryMrssDoc($entryDistribution);
     $xslDoc = new DOMDocument();
     $xslDoc->loadXML($xsl);
     $xslt = new XSLTProcessor();
     $xslt->registerPHPFunctions();
     // it is safe to register all php fuctions here
     $xslt->setParameter('', $xslParams);
     $xslt->importStyleSheet($xslDoc);
     return $xslt->transformToXml($mrssDoc);
 }
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     // append comcast mrss specific configuration
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     /* @var $distributionProfile ComcastMrssDistributionProfile */
     $mrss->addChild('feed_link', $distributionProfile->getFeedLink());
     $mrss->addChild('item_link', $distributionProfile->getItemLink());
 }
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     // append YouTube specific report statistics
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     $mrss->addChild('allow_comments', $distributionProfile->getAllowComments());
     $mrss->addChild('allow_responses', $distributionProfile->getAllowResponses());
     $mrss->addChild('allow_ratings', $distributionProfile->getAllowRatings());
     $mrss->addChild('allow_embedding', $distributionProfile->getAllowEmbedding());
     $mrss->addChild('commerical_policy', $distributionProfile->getCommercialPolicy());
     $mrss->addChild('ugc_policy', $distributionProfile->getUgcPolicy());
     $mrss->addChild('default_category', $distributionProfile->getDefaultCategory());
     $mrss->addChild('target', $distributionProfile->getTarget());
     $mrss->addChild('notification_email', $distributionProfile->getNotificationEmail());
     $mrss->addChild('account_username', $distributionProfile->getUsername());
     $mrss->addChild('ad_server_partner_id', $distributionProfile->getAdServerPartnerId());
     $mrss->addChild('allow_pre_roll_ads', $distributionProfile->getAllowPreRollAds());
     $mrss->addChild('allow_post_roll_ads', $distributionProfile->getAllowPostRollAds());
     $mrss->addChild('claim_type', $distributionProfile->getClaimType());
     $mrss->addChild('instream_standard', $distributionProfile->getInstreamStandard());
 }
Esempio n. 23
0
 /**
  * Append provider specific nodes and attributes to the MRSS
  * 
  * @param EntryDistribution $entryDistribution
  * @param SimpleXMLElement $mrss
  */
 public static function contributeMRSS(EntryDistribution $entryDistribution, SimpleXMLElement $mrss)
 {
     // append Msn specific report statistics
     $distributionProfile = DistributionProfilePeer::retrieveByPK($entryDistribution->getDistributionProfileId());
     if (!$distributionProfile) {
         return KalturaLog::err('Distribution profile #' . $entryDistribution->getDistributionProfileId() . ' not found');
     }
     if (!$distributionProfile instanceof MsnDistributionProfile) {
         return KalturaLog::crit('Distribution profile #' . $entryDistribution->getDistributionProfileId() . ' is not instanceof MsnDistributionProfile');
     }
     $mrss->addChild('csid', $distributionProfile->getCsId());
     $mrss->addChild('source', $distributionProfile->getSource());
     $mrss->addChild('source_friendly_name', $distributionProfile->getSourceFriendlyName());
     $mrss->addChild('page_group', $distributionProfile->getPageGroup());
     $mrss->addChild('msnvideo_cat', $distributionProfile->getMsnvideoCat());
     $mrss->addChild('msnvideo_top', $distributionProfile->getMsnvideoTop());
     $mrss->addChild('msnvideo_top_cat', $distributionProfile->getMsnvideoTopCat());
 }