Esempio n. 1
0
 /**
  *
  * @return JSON encoded data for AJAX call
  */
 public function editlinkedzoneAction()
 {
     $id = $this->getEvent()->getRouteMatch()->getParam('param1');
     $height = $this->getRequest()->getQuery('height');
     $width = $this->getRequest()->getQuery('width');
     $is_preview = $this->getRequest()->getQuery('is_preview');
     if ($height == null || $width == null) {
         $data = array('success' => false, 'linked_ad_zones' => "", 'complete_zone_list' => array());
         return $this->getResponse()->setContent(json_encode($data));
     }
     $initialized = $this->initialize();
     if ($initialized !== true) {
         return $initialized;
     }
     if (!$this->is_admin) {
         $data = array('success' => false, 'linked_ad_zones' => "", 'complete_zone_list' => array());
         return $this->getResponse()->setContent(json_encode($data));
     }
     // verify
     if ($is_preview == "true") {
         $is_preview = \transformation\TransformPreview::doesPreviewBannerExist($id, $this->auth);
     }
     $banner_preview_id = "";
     $linked_ad_zones = array();
     if ($id != null) {
         if ($is_preview === true) {
             // ACL PREVIEW PERMISSIONS CHECK
             transformation\CheckPermissions::checkEditPermissionAdCampaignBannerPreview($id, $this->auth, $this->config_handle);
             $AdCampaignBannerPreviewFactory = \_factory\AdCampaignBannerPreview::get_instance();
             $params = array();
             $params["Active"] = 1;
             $params["AdCampaignBannerPreviewID"] = $id;
             $banner_preview_id = $id;
             $AdCampaignBanner = $AdCampaignBannerPreviewFactory->get_row($params);
             $LinkedBannerToAdZonePreviewFactory = \_factory\LinkedBannerToAdZonePreview::get_instance();
             $params = array();
             $params["AdCampaignBannerPreviewID"] = $id;
             $linked_ad_zones = $LinkedBannerToAdZonePreviewFactory->get($params);
         } else {
             // ACL PERMISSIONS CHECK
             transformation\CheckPermissions::checkEditPermissionAdCampaignBanner($id, $this->auth, $this->config_handle);
             $AdCampaignBannerFactory = \_factory\AdCampaignBanner::get_instance();
             $params = array();
             $params["Active"] = 1;
             $params["AdCampaignBannerID"] = $id;
             $AdCampaignBanner = $AdCampaignBannerFactory->get_row($params);
             $LinkedBannerToAdZoneFactory = \_factory\LinkedBannerToAdZone::get_instance();
             $params = array();
             $params["AdCampaignBannerID"] = $id;
             $linked_ad_zones = $LinkedBannerToAdZoneFactory->get($params);
         }
     }
     $params = array();
     $params["Height"] = $height;
     $params["Width"] = $width;
     // $params["AdOwnerID"] = \transformation\UserToPublisher::user_id_to_publisher_info_id($this->auth->getEffectiveUserID());
     $PublisherAdZoneFactory = \_factory\PublisherAdZone::get_instance();
     $PublisherAdZoneList = $PublisherAdZoneFactory->get($params);
     if ($PublisherAdZoneList === null) {
         $PublisherAdZoneList = array();
     }
     $complete_zone_list = array();
     foreach ($PublisherAdZoneList as $PublisherAdZone) {
         $complete_zone_list[] = array("zone_id" => $PublisherAdZone->PublisherAdZoneID, "ad_name" => $PublisherAdZone->AdName);
     }
     $linked_zone_list = array();
     foreach ($linked_ad_zones as $linked_ad_zone) {
         $linked_zone_list[] = $linked_ad_zone->PublisherAdZoneID;
     }
     $data = array('success' => count($PublisherAdZoneList) > 0, 'linked_ad_zones' => implode(',', $linked_zone_list), 'complete_zone_list' => $complete_zone_list);
     return $this->getResponse()->setContent(json_encode($data));
 }
Esempio n. 2
0
 /**
  * 
  * @return \Zend\View\Model\ViewModel
  */
 public function editlineitemAction()
 {
     $id = $this->getEvent()->getRouteMatch()->getParam('param1');
     if ($id == null) {
         die("Invalid Banner ID");
     }
     $initialized = $this->initialize();
     if ($initialized !== true) {
         return $initialized;
     }
     $is_preview = $this->getRequest()->getQuery('ispreview');
     // verify
     if ($is_preview == "true") {
         $is_preview = \transformation\TransformPreview::doesPreviewBannerExist($id, $this->auth);
     }
     $banner_preview_id = "";
     if ($is_preview == true) {
         // ACL PREVIEW PERMISSIONS CHECK
         transformation\CheckPermissions::checkEditPermissionInsertionOrderLineItemPreview($id, $this->auth, $this->config_handle);
         $InsertionOrderLineItemVideoRestrictionsPreviewFactory = \_factory\InsertionOrderLineItemVideoRestrictionsPreview::get_instance();
         $params = array();
         $params["InsertionOrderLineItemPreviewID"] = $id;
         $InsertionOrderLineItemVideoRestrictions = $InsertionOrderLineItemVideoRestrictionsPreviewFactory->get_row($params);
         $InsertionOrderLineItemPreviewFactory = \_factory\InsertionOrderLineItemPreview::get_instance();
         $params = array();
         $params["Active"] = 1;
         $params["InsertionOrderLineItemPreviewID"] = $id;
         $banner_preview_id = $id;
         $InsertionOrderLineItem = $InsertionOrderLineItemPreviewFactory->get_row($params);
         $PmpDealPublisherWebsiteToInsertionOrderLineItemPreviewFactory = \_factory\PmpDealPublisherWebsiteToInsertionOrderLineItemPreview::get_instance();
         $params = array();
         $params["InsertionOrderLineItemPreviewID"] = $banner_preview_id;
         $PmpDealPublisherWebsiteToInsertionOrderLineItemList = $PmpDealPublisherWebsiteToInsertionOrderLineItemPreviewFactory->get($params);
         $SspRtbChannelToInsertionOrderLineItemPreviewFactory = \_factory\SspRtbChannelToInsertionOrderLineItemPreview::get_instance();
         $params = array();
         $params["InsertionOrderLineItemPreviewID"] = $banner_preview_id;
         $SspRtbChannelToInsertionOrderLineItemList = $SspRtbChannelToInsertionOrderLineItemPreviewFactory->get($params);
     } else {
         // ACL PERMISSIONS CHECK
         transformation\CheckPermissions::checkEditPermissionInsertionOrderLineItem($id, $this->auth, $this->config_handle);
         $InsertionOrderLineItemVideoRestrictionsFactory = \_factory\InsertionOrderLineItemVideoRestrictions::get_instance();
         $params = array();
         $params["InsertionOrderLineItemID"] = $id;
         $InsertionOrderLineItemVideoRestrictions = $InsertionOrderLineItemVideoRestrictionsFactory->get_row($params);
         $InsertionOrderLineItemFactory = \_factory\InsertionOrderLineItem::get_instance();
         $params = array();
         $params["Active"] = 1;
         $params["InsertionOrderLineItemID"] = $id;
         $InsertionOrderLineItem = $InsertionOrderLineItemFactory->get_row($params);
         $PmpDealPublisherWebsiteToInsertionOrderLineItemFactory = \_factory\PmpDealPublisherWebsiteToInsertionOrderLineItem::get_instance();
         $params = array();
         $params["InsertionOrderLineItemID"] = $id;
         $PmpDealPublisherWebsiteToInsertionOrderLineItemList = $PmpDealPublisherWebsiteToInsertionOrderLineItemFactory->get($params);
         $SspRtbChannelToInsertionOrderLineItemFactory = \_factory\SspRtbChannelToInsertionOrderLineItem::get_instance();
         $params = array();
         $params["InsertionOrderLineItemID"] = $id;
         $SspRtbChannelToInsertionOrderLineItemList = $SspRtbChannelToInsertionOrderLineItemFactory->get($params);
     }
     if ($InsertionOrderLineItem == null) {
         die("Invalid {$InsertionOrderLineItem} ID");
     }
     $campaignid = isset($InsertionOrderLineItem->InsertionOrderID) ? $InsertionOrderLineItem->InsertionOrderID : "";
     $bannerid = isset($InsertionOrderLineItem->InsertionOrderLineItemID) ? $InsertionOrderLineItem->InsertionOrderLineItemID : "";
     $campaignpreviewid = isset($InsertionOrderLineItem->InsertionOrderPreviewID) ? $InsertionOrderLineItem->InsertionOrderPreviewID : "";
     $bannerpreviewid = isset($InsertionOrderLineItem->InsertionOrderLineItemPreviewID) ? $InsertionOrderLineItem->InsertionOrderLineItemPreviewID : "";
     $bannername = $InsertionOrderLineItem->Name;
     $startdate = date('m/d/Y', strtotime($InsertionOrderLineItem->StartDate));
     $enddate = date('m/d/Y', strtotime($InsertionOrderLineItem->EndDate));
     $current_mobile = $InsertionOrderLineItem->IsMobile;
     if ($InsertionOrderLineItem->IsMobile == 2) {
         $size_list = \util\BannerOptions::$iab_mobile_tablet_banner_options;
     } elseif ($InsertionOrderLineItem->IsMobile > 0) {
         $size_list = \util\BannerOptions::$iab_mobile_phone_banner_options;
     } else {
         $size_list = \util\BannerOptions::$iab_banner_options;
     }
     $height = $InsertionOrderLineItem->Height;
     $width = $InsertionOrderLineItem->Width;
     $weight = $InsertionOrderLineItem->Weight;
     $bidamount = $InsertionOrderLineItem->BidAmount;
     $adtag = $InsertionOrderLineItem->AdTag;
     $landingpagetld = $InsertionOrderLineItem->LandingPageTLD;
     $current_iabsize = $InsertionOrderLineItem->IABSize;
     $ImpressionType = $InsertionOrderLineItem->ImpressionType;
     if ($ImpressionType == 'image') {
         preg_match('/< *img[^>]*src *= *["\']?([^"\']*)/i', $adtag, $matches);
         if (!isset($matches[1])) {
             die("Required Field: <img src= attribute was missing");
         }
         preg_match('/href=[\'"]?([^\\s\\>\'"]*)[\'"\\>]/', $adtag, $matches);
         if (!isset($matches[1])) {
             die("Required Field: <a href= attribute was missing");
         }
     }
     $current_mimes = array();
     $current_apis_supported = array();
     $current_protocols = array();
     $current_delivery_methods = array();
     $current_playback_methods = array();
     $current_start_delay = "";
     $current_linearity = "";
     $impression_type = "banner";
     if ($InsertionOrderLineItemVideoRestrictions != null) {
         $current_mimes_raw = $InsertionOrderLineItemVideoRestrictions->MimesCommaSeparated;
         $current_apis_supported_raw = $InsertionOrderLineItemVideoRestrictions->ApisSupportedCommaSeparated;
         $current_protocols_raw = $InsertionOrderLineItemVideoRestrictions->ProtocolsCommaSeparated;
         $current_delivery_methods_raw = $InsertionOrderLineItemVideoRestrictions->DeliveryCommaSeparated;
         $current_playback_methods_raw = $InsertionOrderLineItemVideoRestrictions->PlaybackCommaSeparated;
         $current_start_delay = $InsertionOrderLineItemVideoRestrictions->StartDelay;
         $current_linearity = $InsertionOrderLineItemVideoRestrictions->Linearity;
         $current_mimes = array();
         if ($current_mimes_raw) {
             $current_mimes = explode(',', $current_mimes_raw);
         }
         $current_apis_supported = array();
         if ($current_apis_supported_raw) {
             $current_apis_supported = explode(',', $current_apis_supported_raw);
         }
         $current_protocols = array();
         if ($current_protocols_raw) {
             $current_protocols = explode(',', $current_protocols_raw);
         }
         $current_delivery_methods = array();
         if ($current_delivery_methods_raw) {
             $current_delivery_methods = explode(',', $current_delivery_methods_raw);
         }
         $current_playback_methods = array();
         if ($current_playback_methods_raw) {
             $current_playback_methods = explode(',', $current_playback_methods_raw);
         }
     }
     $is_vast_url = \util\ParseHelper::isVastURL($adtag);
     $vast_type = $is_vast_url == true ? "url" : "xml";
     $imageurl = "";
     $landingpageurl = "";
     if ($ImpressionType == "image") {
         preg_match('/< *img[^>]*src *= *["\']?([^"\']*)/i', $adtag, $matches);
         if (isset($matches[1])) {
             $imageurl = $matches[1];
         }
         preg_match('/href=[\'"]?([^\\s\\>\'"]*)[\'"\\>]/', $adtag, $matches);
         if (isset($matches[1])) {
             $landingpageurl = $matches[1];
         }
     }
     return new ViewModel(array('imageurl' => $imageurl, 'landingpageurl' => $landingpageurl, 'campaignid' => $campaignid, 'bannerid' => $bannerid, 'pmp_deal_list' => $PmpDealPublisherWebsiteToInsertionOrderLineItemList, 'ssp_channel_list' => $SspRtbChannelToInsertionOrderLineItemList, 'campaignpreviewid' => $campaignpreviewid, 'bannerpreviewid' => $bannerpreviewid, 'ispreview' => $is_preview == true ? '1' : '0', 'bannername' => $bannername, 'startdate' => $startdate, 'enddate' => $enddate, 'current_mobile' => $current_mobile, 'mobile_options' => \util\BannerOptions::$mobile_options, 'size_list' => $size_list, 'height' => $height, 'width' => $width, 'weight' => $weight, 'bidamount' => $bidamount, 'adtag' => $adtag, 'vast_type' => $vast_type, 'landingpagetld' => $landingpagetld, 'current_iabsize' => $current_iabsize, 'bread_crumb_info' => $this->getBreadCrumbInfoFromBanner($bannerid, $bannerpreviewid, $is_preview), 'user_id_list' => $this->user_id_list_demand_customer, 'center_class' => 'centerj', 'user_identity' => $this->identity(), 'true_user_name' => $this->auth->getUserName(), 'header_title' => 'Edit Insertion Order', 'is_super_admin' => $this->is_super_admin, 'effective_id' => $this->auth->getEffectiveIdentityID(), 'impersonate_id' => $this->ImpersonateID, 'ImpressionType' => $ImpressionType, 'linearity' => \util\BannerOptions::$linearity, 'start_delay' => \util\BannerOptions::$start_delay, 'playback_methods' => \util\BannerOptions::$playback_methods, 'delivery_methods' => \util\BannerOptions::$delivery_methods, 'apis_supported' => \util\BannerOptions::$apis_supported, 'protocols' => \util\BannerOptions::$protocols, 'mimes' => \util\BannerOptions::$mimes, 'current_mimes' => $current_mimes, 'current_apis_supported' => $current_apis_supported, 'current_protocols' => $current_protocols, 'current_delivery_methods' => $current_delivery_methods, 'current_playback_methods' => $current_playback_methods, 'current_start_delay' => $current_start_delay, 'current_linearity' => $current_linearity, 'impression_type' => $impression_type));
 }