function _validateImage($aImage, &$oImage) { if (empty($aImage['filename'])) { $this->raiseError("Image filename empty"); return false; } if (empty($aImage['content'])) { $this->raiseError("Image content empty"); return false; } $oImage = OA_Creative_File::factoryString($aImage['filename'], $aImage['content']); if (PEAR::isError($oImage)) { $this->raiseError($oImage->getMessage()); return false; } return true; }
function save_ajax_request($banner_id, $campaign_id, $client_id, $image_id, $template_id, $banner_description, $banner_storagetype) { $file = fopen('http://zetaprints.com/preview/' . $image_id, 'rb'); $data = fread($file, 1024); while (!feof($file)) { $data .= fread($file, 1024); } fclose($file); $banner = OA_Dal::factoryDO('banners'); // Get the existing banner details (if it is not a new banner) if (!empty($banner_id)) { $result = $banner->get($banner_id); } if (!$result) { OA::debug('here'); $banner->bannerid = ''; $banner->campaignid = $campaign_id; $banner->clientid = $client_id; $banner->url = ''; $banner->imageurl = ''; $banner->weight = $pref['default_banner_weight']; $banner->description = $banner_description; $banner->storagetype = $banner_storagetype; } require_once MAX_PATH . '/lib/OA/Creative/File.php'; $file = OA_Creative_File::factoryString($image_id, $data); $file->store($banner->storagetype); if (!empty($banner->filename) && ($banner->storagetype == 'web' || $banner->storagetype == 'sql')) { DataObjects_Banners::deleteBannerFile($banner->storagetype, $banner->filename); } $file_detailes = $file->getFileDetails(); $new_banner = empty($banner_id) ? true : false; if ($new_banner) { $size_changed = $file_detailes['width'] != $banner->width || $file_detailes['height'] != $banner->height; } $banner->filename = $file_detailes['filename']; $banner->contenttype = $file_detailes['contenttype']; $banner->width = $file_detailes['width']; $banner->height = $file_detailes['height']; $banner->pluginversion = $file_detailes['pluginversion']; if ($new_banner) { $banner->insert(); require_once MAX_PATH . '/lib/OA/Maintenance/Priority.php'; OA_Maintenance_Priority::scheduleRun(); $banner_id = $banner->bannerid; } else { $banner->update(); // if size has changed if (size_changes) { MAX_adjustAdZones($banner_id); MAX_addDefaultPlacementZones($banner_id, $campaign_id); } } $zp_banners = OA_Dal::factoryDO('Zpbanners'); $zp_banners->set_zp_banner_id($banner_id, $template_id); return "banner-edit.php?clientid={$client_id}&campaignid={$campaign_id}&bannerid={$banner_id}"; }