} $appliedTo = 0; $doBanners = OA_Dal::factoryDO('banners'); $doBanners->campaignid = $campaignid; $doBanners->find(); while ($doBanners->fetch()) { if ($doBanners->bannerid != $bannerid && MAX_AclCopy(basename($_SERVER['PHP_SELF']), $bannerid, $doBanners->bannerid)) { $appliedTo++; } } $applyto = $bannerid; } else { if (OA_Permission::isAccount(OA_ACCOUNT_MANAGER)) { OA_Permission::enforceAccessToObject('banners', $applyto); } if (MAX_AclCopy(basename($_SERVER['PHP_SELF']), $bannerid, $applyto)) { $appliedTo++; } } $translation = new OX_Translation(); $translated_message = $translation->translate($GLOBALS['strBannerAclHasBeenAppliedTo'], array(MAX::constructURL(MAX_URL_ADMIN, "banner-edit.php?clientid={$clientid}&campaignid={$campaignid}&bannerid={$bannerid}"), htmlspecialchars($bannerName), $appliedTo)); OA_Admin_UI::queueMessage($translated_message, 'local', 'confirm', 0); Header("Location: {$returnurl}?clientid={$clientid}&campaignid={$campaignid}&bannerid=" . $applyto); } elseif (isset($duplicate) && $duplicate == 'true') { $doBanners = OA_Dal::factoryDO('banners'); $doBanners->get($bannerid); $oldName = $doBanners->description; $new_bannerid = $doBanners->duplicate(); // Run the Maintenance Priority Engine process OA_Maintenance_Priority::scheduleRun(); // Rebuild cache
/** * Duplicates the banner. * @param string $new_campaignId only when the banner is * duplicated as consequence of a campaign duplication * @return int the new bannerid * */ function duplicate($new_campaignId = null) { // unset the bannerId $old_adId = $this->bannerid; unset($this->bannerid); $this->description = $GLOBALS['strCopyOf'] . ' ' . $this->description; if ($new_campaignId != null) { $this->campaignid = $new_campaignId; } // Set the filename // We want to rename column 'storagetype' to 'type' so... if ($this->storagetype == 'web' || $this->storagetype == 'sql') { $this->filename = $this->_imageDuplicate($this->storagetype, $this->filename); } elseif ($this->type == 'web' || $this->type == 'sql') { $this->filename = $this->_imageDuplicate($this->type, $this->filename); } // Insert the new banner and get the ID $new_adId = $this->insert(false); // Copy ACLs and capping MAX_AclCopy(basename($_SERVER['PHP_SELF']), $old_adId, $new_adId); // Duplicate and ad-zone associations MAX_duplicateAdZones($old_adId, $new_adId); // Return the new bannerId return $new_adId; }
} $appliedTo = 0; $doBanners = OA_Dal::factoryDO('banners'); $doBanners->campaignid = $campaignid; $doBanners->find(); while ($doBanners->fetch()) { if ($doBanners->bannerid != $bannerid && MAX_AclCopy(basename($_SERVER['SCRIPT_NAME']), $bannerid, $doBanners->bannerid)) { $appliedTo++; } } $applyto = $bannerid; } else { if (OA_Permission::isAccount(OA_ACCOUNT_MANAGER)) { OA_Permission::enforceAccessToObject('banners', $applyto); } if (MAX_AclCopy(basename($_SERVER['SCRIPT_NAME']), $bannerid, $applyto)) { $appliedTo++; } } $translation = new OX_Translation(); $translated_message = $translation->translate($GLOBALS['strBannerAclHasBeenAppliedTo'], array(MAX::constructURL(MAX_URL_ADMIN, "banner-edit.php?clientid={$clientid}&campaignid={$campaignid}&bannerid={$bannerid}"), htmlspecialchars($bannerName), $appliedTo)); OA_Admin_UI::queueMessage($translated_message, 'local', 'confirm', 0); Header("Location: {$returnurl}?clientid={$clientid}&campaignid={$campaignid}&bannerid=" . $applyto); } elseif (isset($duplicate) && $duplicate == 'true') { $doBanners = OA_Dal::factoryDO('banners'); $doBanners->get($bannerid); $oldName = $doBanners->description; $new_bannerid = $doBanners->duplicate(); // Run the Maintenance Priority Engine process OA_Maintenance_Priority::scheduleRun(); // Rebuild cache