function &buildForm() { global $oTrans; $form = new OA_Admin_UI_Component_Form("oxToolBoxForm", "POST", $_SERVER['SCRIPT_NAME'], null, array("enctype" => "multipart/form-data")); $form->forceClientValidation(true); $form->addElement('header', 'header', $oTrans->translate("New Plugin")); $form->addElement('text', 'name', $oTrans->translate("Plugin Name"), array('class' => 'medium')); $form->addElement('text', 'email', $oTrans->translate("Author Email")); $form->addElement('text', 'author', $oTrans->translate("Author Name")); $form->addElement('text', 'url', $oTrans->translate("Author URL")); $form->addElement('text', 'licence', $oTrans->translate("Licence Info")); $form->addElement('text', 'description', $oTrans->translate("Description")); $version['major'] = $form->createElement('text', 'version[major]', $oTrans->translate("Major")); $version['minor'] = $form->createElement('text', 'version[minor]', $oTrans->translate("Minor")); $version['build'] = $form->createElement('text', 'version[build]', $oTrans->translate("Build")); // for new plugins status is -dev only //$aStatus = array('-dev','-beta','-beta-rc'); $aStatus = array('-dev' => '-dev'); $version['status'] = $form->createElement('select', 'version[status]', $oTrans->translate("Status"), $aStatus); //$version['rc'] = $form->createElement('text', 'version[rc]', 'rc#'); $form->addGroup($version, 'version', $oTrans->translate("Version"), "", false); //$form->addElement('text', 'versionMajor', 'Version', array('class'=>'small')); $aGroups = getExtensionList(); foreach ($aGroups as $extension) { $group['name'] = $form->createElement('text', 'group[' . $extension . '][groupname]', $oTrans->translate("Group Name"), array('class' => 'medium')); $group['schema'] = $form->createElement('checkbox', 'group[' . $extension . '][schema]', $oTrans->translate("Has Schema")); $form->addGroup($group, 'group_' . $extension, $oTrans->translate("Extends %s", array($extension)), "", false); } $form->addElement('controls', 'form-controls'); $form->addElement('submit', 'submit', $oTrans->translate("Submit")); return $form; }
function buildAdvertiserForm($aAdvertiser) { $form = new OA_Admin_UI_Component_Form("clientform", "POST", $_SERVER['SCRIPT_NAME']); $form->forceClientValidation(true); $form->addElement('hidden', 'clientid', $aAdvertiser['clientid']); $form->addElement('header', 'header_basic', $GLOBALS['strBasicInformation']); $nameElem = $form->createElement('text', 'clientname', $GLOBALS['strName']); if (!OA_Permission::isAccount(OA_ACCOUNT_MANAGER)) { $nameElem->freeze(); } $form->addElement($nameElem); $form->addElement('text', 'contact', $GLOBALS['strContact']); $form->addElement('text', 'email', $GLOBALS['strEMail']); $form->addElement('header', 'header_adv_report', $GLOBALS['strMailSubject']); $form->addElement('hidden', 'reportlastdate', $aAdvertiser['reportlastdate']); $form->addElement('hidden', 'reportprevious', $aAdvertiser['report']); $form->addElement('advcheckbox', 'reportdeactivate', null, $GLOBALS['strSendDeactivationWarning'], null, array("f", "t")); $form->addElement('advcheckbox', 'report', null, $GLOBALS['strSendAdvertisingReport'], null, array("f", "t")); $form->addElement('text', 'reportinterval', $GLOBALS['strNoDaysBetweenReports'], array('class' => 'x-small')); $form->addElement('header', 'header_misc', $GLOBALS['strMiscellaneous']); $form->addElement('advcheckbox', 'advertiser_limitation', null, $GLOBALS['strAdvertiserLimitation'], null, array("0", "1")); $form->addElement('textarea', 'comments', $GLOBALS['strComments']); //we want submit to be the last element in its own separate section $form->addElement('controls', 'form-controls'); $form->addElement('submit', 'submit', $GLOBALS['strSaveChanges']); //Form validation rules $translation = new OX_Translation(); if (OA_Permission::isAccount(OA_ACCOUNT_MANAGER)) { $nameRequiredMsg = $translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strName'])); $form->addRule('clientname', $nameRequiredMsg, 'required'); } $contactRequiredMsg = $translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strContact'])); $form->addRule('contact', $contactRequiredMsg, 'required'); $emailRequiredMsg = $translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strEMail'])); $form->addRule('email', $emailRequiredMsg, 'required'); $form->addRule('email', $GLOBALS['strEmailField'], 'email'); $form->addRule('reportinterval', $GLOBALS['strNumericField'], 'numeric'); $form->addRule('reportinterval', $GLOBALS['strGreaterThanZeroField'], 'min', 1); //set form values $form->setDefaults($aAdvertiser); return $form; }
function buildZoneForm($zone) { global $conf; // Initialise Ad Networks $oAdNetworks = new OA_Central_AdNetworks(); $form = new OA_Admin_UI_Component_Form("zoneform", "POST", $_SERVER['PHP_SELF']); $form->forceClientValidation(true); $form->addElement('hidden', 'zoneid', $zone['zoneid']); $form->addElement('hidden', 'affiliateid', $zone['affiliateid']); $form->addElement('header', 'zone_basic_info', $GLOBALS['strBasicInformation']); $form->addElement('text', 'zonename', $GLOBALS['strName']); $form->addElement('text', 'description', $GLOBALS['strDescription']); $form->addElement('select', 'oac_category_id', $GLOBALS['strCategory'], $oAdNetworks->getCategoriesSelect()); //zone type group $zoneTypes[] = $form->createElement('radio', 'delivery', '', "<img src='" . OX::assetPath() . "/images/icon-zone.gif' align='absmiddle'> " . $GLOBALS['strBannerButtonRectangle'], phpAds_ZoneBanner, array('id' => 'delivery-b', 'onClick' => 'phpAds_formEnableSize();', 'onChange' => 'oa_hide("warning_change_zone_type");')); if ($conf['oxInvocationTags']['isAllowedAdlayer'] || $zone['delivery'] == phpAds_ZoneInterstitial) { $zoneTypes[] = $form->createElement('radio', 'delivery', '', "<img src='" . OX::assetPath() . "/images/icon-interstitial.gif' align='absmiddle'> " . $GLOBALS['strInterstitial'], phpAds_ZoneInterstitial, array('id' => 'delivery-i', 'onClick' => 'phpAds_formEnableSize();', 'onChange' => 'oa_hide("warning_change_zone_type");')); } if ($conf['oxInvocationTags']['isAllowedPopup'] || $zone['delivery'] == phpAds_ZonePopup) { $zoneTypes[] = $form->createElement('radio', 'delivery', '', "<img src='" . OX::assetPath() . "/images/icon-popup.gif' align='absmiddle'> " . $GLOBALS['strPopup'], phpAds_ZonePopup, array('id' => 'delivery-p', 'onClick' => 'phpAds_formEnableSize();', 'onChange' => 'oa_hide("warning_change_zone_type");')); } $zoneTypes[] = $form->createElement('radio', 'delivery', '', "<img src='" . OX::assetPath() . "/images/icon-textzone.gif' align='absmiddle'> " . $GLOBALS['strTextAdZone'], phpAds_ZoneText, array('id' => 'delivery-t', 'onClick' => 'phpAds_formDisableSize();', 'onChange' => 'oa_hide("warning_change_zone_type");')); $zoneTypes[] = $form->createElement('radio', 'delivery', '', "<img src='" . OX::assetPath() . "/images/icon-zone-email.gif' align='absmiddle'> " . $GLOBALS['strEmailAdZone'], MAX_ZoneEmail, array('id' => 'delivery-e', 'onClick' => 'phpAds_formEnableSize();', 'onChange' => 'oa_hide("warning_change_zone_type");')); if (!empty($conf['allowedBanners']['video'])) { $zoneTypes[] = $form->createElement('radio', 'delivery', '', "<img src='" . OX::assetPath() . "/images/icon-zone-video-instream.png' align='absmiddle'> " . $GLOBALS['strZoneVideoInstream'], OX_ZoneVideoInstream, array('id' => 'delivery-vi', 'onClick' => 'phpAds_formDisableSize();', 'onChange' => 'oa_hide("warning_change_zone_type");')); $zoneTypes[] = $form->createElement('radio', 'delivery', '', "<img src='" . OX::assetPath() . "/images/icon-zone-video-overlay.png' align='absmiddle'> " . $GLOBALS['strZoneVideoOverlay'], OX_ZoneVideoOverlay, array('id' => 'delivery-vo', 'onClick' => 'phpAds_formDisableSize();', 'onChange' => 'oa_hide("warning_change_zone_type");')); } $form->addGroup($zoneTypes, 'zone_types', $GLOBALS['strZoneType'], "<br/>"); //size global $phpAds_IAB; switch ($zone['delivery']) { case phpAds_ZoneText: case OX_ZoneVideoInstream: case OX_ZoneVideoOverlay: $sizeDisabled = true; $zone['width'] = '*'; $zone['height'] = '*'; break; default: $sizeDisabled = false; break; } $aDefaultSize['radio'] = $form->createElement('radio', 'sizetype', '', '', 'default', array('id' => 'size-d')); foreach (array_keys($phpAds_IAB) as $key) { $iabSizes[$phpAds_IAB[$key]['width'] . "x" . $phpAds_IAB[$key]['height']] = $GLOBALS['strIab'][$key]; } $iabSizes['-'] = $GLOBALS['strCustom']; $aDefaultSize['select'] = $form->createElement('select', 'size', null, $iabSizes, array('onchange' => 'phpAds_formSelectSize(this); oa_sizeChangeUpdateMessage("warning_change_zone_size");', 'class' => 'medium')); $aCustomSize['radio'] = $form->createElement('radio', 'sizetype', '', '', 'custom', array('id' => 'size-c')); $aCustomSize['width'] = $form->createElement('text', 'width', $GLOBALS['strWidth'] . ':', array('onkeydown' => 'phpAds_formEditSize();', 'onChange' => 'oa_sizeChangeUpdateMessage("warning_change_zone_size");')); $aCustomSize['width']->setSize(5); $aCustomSize['height'] = $form->createElement('text', 'height', $GLOBALS['strHeight'] . ':', array('onkeydown' => 'phpAds_formEditSize();', 'onChange' => 'oa_sizeChangeUpdateMessage("warning_change_zone_size");')); $aCustomSize['height']->setSize(5); $sizeTypes['default'] = $form->createElement('group', 'defaultSizeG', null, $aDefaultSize, null, false); $sizeTypes['custom'] = $form->createElement('group', 'customSizeG', null, $aCustomSize, null, false); //disable fields if necessary if ($sizeDisabled) { $aDefaultSize['radio']->setAttribute('disabled', $sizeDisabled); $aDefaultSize['select']->setAttribute('disabled', $sizeDisabled); $aCustomSize['radio']->setAttribute('disabled', $sizeDisabled); $aCustomSize['width']->setAttribute('disabled', $sizeDisabled); $aCustomSize['height']->setAttribute('disabled', $sizeDisabled); } $form->addGroup($sizeTypes, 'size_types', $GLOBALS['strSize'], "<br/>"); $form->addElement('textarea', 'comments', $GLOBALS['strComments']); $form->addElement('controls', 'form-controls'); $form->addElement('submit', 'submit', $GLOBALS['strSaveChanges']); //validation rules $translation = new OX_Translation(); $urlRequiredMsg = $translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strName'])); $form->addRule('zonename', $urlRequiredMsg, 'required'); /* TODO max_formSetRequirements('width', '<?php echo addslashes($strWidth); ?>', true, 'number*'); max_formSetRequirements('height', '<?php echo addslashes($strHeight); ?>', true, 'number*'); */ //set form values $form->setDefaults($zone); //sizes radio if (phpAds_sizeExists($zone['width'], $zone['height'])) { $size = $zone['width'] . "x" . $zone['height']; $sizeType = 'default'; } else { $size = "-"; $sizeType = 'custom'; } $form->setDefaults(array('size' => $size, 'sizetype' => $sizeType)); return $form; }
function buildWebsiteForm($affiliate) { // Initialise Ad Networks $oAdNetworks = new OA_Central_AdNetworks(); $form = new OA_Admin_UI_Component_Form("affiliateform", "POST", $_SERVER['PHP_SELF']); $form->forceClientValidation(true); $form->addElement('hidden', 'affiliateid', $affiliate['affiliateid']); $form->addElement('header', 'basic_info', $GLOBALS['strBasicInformation']); $form->addElement('text', 'website', $GLOBALS['strWebsiteURL']); $form->addElement('text', 'name', $GLOBALS['strName']); if (defined('OA_AD_DIRECT_ENABLED') && OA_AD_DIRECT_ENABLED === true) { $form->addElement('checkbox', 'advsignup', $GLOBALS['strAdvertiserSignup'], $GLOBALS['strAdvertiserSignupDesc'], array('disabled' => !$GLOBALS['_MAX']['CONF']['sync']['checkForUpdates'])); $form->addElement('custom', 'advertiser-signup-dialog', null, array('formId' => $form->getId()), false); } $form->addElement('text', 'contact', $GLOBALS['strContact']); $form->addElement('text', 'email', $GLOBALS['strEMail']); $form->addElement('select', 'category', $GLOBALS['strCategory'], $oAdNetworks->getCategoriesSelect(), array('style' => 'width: 16em;')); $catLangGroup['country'] = $form->createElement('select', 'country', null, $oAdNetworks->getCountriesSelect()); $catLangGroup['country']->setAttribute('style', 'width: 16em;'); $catLangGroup['lang'] = $form->createElement('select', 'language', null, $oAdNetworks->getLanguagesSelect()); $catLangGroup['lang']->setAttribute('style', 'width: 16em;'); $form->addGroup($catLangGroup, 'catlang_group', $GLOBALS['strCountry'] . ' / ' . $GLOBALS['strLanguage'], array(" "), false); $form->addElement('controls', 'form-controls'); $form->addElement('submit', 'save', 'Save changes'); //Form validation rules $translation = new OX_Translation(); $urlRequiredMsg = $translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strWebsiteURL'])); $form->addRule('website', $urlRequiredMsg, 'required'); $form->addRule('website', $GLOBALS['strInvalidWebsiteURL'], 'regex', '#^http(s?)\\://.+$#'); $contactRequiredMsg = $translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strContact'])); $form->addRule('contact', $contactRequiredMsg, 'required'); $nameRequiredMsg = $translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strName'])); $form->addRule('name', $nameRequiredMsg, 'required'); $emailRequiredMsg = $translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strEMail'])); $form->addRule('email', $emailRequiredMsg, 'required'); $form->addRule('email', $GLOBALS['strEmailField'], 'email'); //set form values $form->setDefaults($affiliate); $form->setDefaults(array("category" => $affiliate['oac_category_id'], "country" => $affiliate['oac_country_code'], "language" => $affiliate['oac_language_id'], 'advsignup' => !empty($affiliate['as_website_id']))); return $form; }
function buildBannerForm($type, $aBanner, &$oComponent = null, $formDisabled = false) { $form = new OA_Admin_UI_Component_Form("bannerForm", "POST", $_SERVER['SCRIPT_NAME'], null, array("enctype" => "multipart/form-data")); $form->forceClientValidation(true); $form->addElement('hidden', 'clientid', $aBanner['clientid']); $form->addElement('hidden', 'campaignid', $aBanner['campaignid']); $form->addElement('hidden', 'bannerid', $aBanner['bannerid']); $form->addElement('hidden', 'type', 'txt'); $form->addElement('hidden', 'status', $aBanner['status']); $translation = new OX_Translation(); $pluginConf = $GLOBALS['conf']['oxMarkedText']; $bannerTextMaxLength = $pluginConf['textMaxLength']; $regularLinkMaxLength = $pluginConf['anchor1MaxLength']; $highlightedLinkMaxLength = $pluginConf['anchor2MaxLength']; $form->addElement('header', 'header_b_links', "Banner content"); $form->addElement('text', 'description', "Name"); $fieldwithdescr[] = $form->createElement('textarea', 'bannertext', '<label for="bannertext" style="display: block; float: left; width: 170px;">Banner text</label>'); $fieldwithdescr[] = $form->createElement('static', 'descr', str_replace(array('XX', 'YY', 'ZZ'), array($bannerTextMaxLength, $regularLinkMaxLength, $highlightedLinkMaxLength), '<p>Type your ad text, mark any blocks with brackets to add link. Example: <i>My [super ads] for only [[123$]]</i>.</p> Single brackets will show regular link and double brackets means highlighted link. You can use <ul><li>- up to XX chars for whole ad text</li><li>- 1 regular link, up to YY chars </li><li>- 1 highlighted link, up to ZZ chars</li></ul>')); $form->addGroup($fieldwithdescr, 'bannertext', null, '<br />'); $form->addElement('text', 'url', $GLOBALS['strURL']); $form->addElement('hidden', 'ext_bannertype', 'bannerTypeText:oxMarkedText:oxMarkedTextComponent'); $weightfield[] = $form->createElement('text', 'weight', '<label for="weight" style="display: block; float: left; width: 170px;">' . $GLOBALS['strWeight'] . '</label>'); $weightfield[] = $form->createElement('static', 'weightdescr', '<p>If you want to show this ad more frequently, adjust its weight.</p>'); $form->addGroup($weightfield, 'weight', null, '<br />'); $weightPositiveRule = $translation->translate($GLOBALS['strXPositiveWholeNumberField'], array($GLOBALS['strWeight'])); $form->addRule('weight', $weightPositiveRule, 'numeric'); $form->addRule('bannertext', "Maximum {$bannerTextMaxLength} characters", 'maxlength', $bannerTextMaxLength); $form->addElement('controls', 'form-controls'); $form->addElement('submit', 'submit', 'Save changes'); $form->setDefaults($aBanner); if ($formDisabled) { $form->freeze(); } return $form; }
function buildBannerForm($type, $aBanner, &$oComponent = null, $formDisabled = false) { //-- Build forms $form = new OA_Admin_UI_Component_Form("bannerForm", "POST", $_SERVER['SCRIPT_NAME'], null, array("enctype" => "multipart/form-data")); $form->forceClientValidation(true); $form->addElement('hidden', 'clientid', $aBanner['clientid']); $form->addElement('hidden', 'campaignid', $aBanner['campaignid']); $form->addElement('hidden', 'bannerid', $aBanner['bannerid']); $form->addElement('hidden', 'type', $type); $form->addElement('hidden', 'status', $aBanner['status']); if ($type == 'sql' || $type == 'web') { $form->addElement('custom', 'banner-iab-note', null, null); } if ($aBanner['contenttype'] == 'swf' && empty($aBanner['alt_contenttype']) && empty($aBanner['alt_imageurl'])) { $form->addElement('custom', 'banner-backup-note', null, null); } $form->addElement('header', 'header_basic', $GLOBALS['strBasicInformation']); if (OA_Permission::isAccount(OA_ACCOUNT_ADMIN) || OA_Permission::isAccount(OA_ACCOUNT_MANAGER)) { $form->addElement('text', 'description', $GLOBALS['strName']); } else { $form->addElement('static', 'description', $GLOBALS['strName'], $aBanner['description']); } //local banners if ($type == 'sql' || $type == 'web') { if ($type == 'sql') { $header = $form->createElement('header', 'header_sql', $GLOBALS['strMySQLBanner'] . " - banner creative"); } else { $header = $form->createElement('header', 'header_sql', $GLOBALS['strWebBanner'] . " - banner creative"); } $header->setAttribute('icon', 'icon-banner-stored.gif'); $form->addElement($header); $imageName = _getContentTypeIconImageName($aBanner['contenttype']); $size = _getBannerSizeText($type, $aBanner['filename']); addUploadGroup($form, $aBanner, array('uploadName' => 'upload', 'radioName' => 'replaceimage', 'imageName' => $imageName, 'fileName' => $aBanner['filename'], 'fileSize' => $size, 'newLabel' => $GLOBALS['strNewBannerFile'], 'updateLabel' => $GLOBALS['strUploadOrKeep'], 'handleSWF' => true)); $altImageName = null; $altSize = null; if ($aBanner['contenttype'] == 'swf') { $altImageName = _getContentTypeIconImageName($aBanner['alt_contenttype']); $altSize = _getBannerSizeText($type, $aBanner['alt_filename']); } $aUploadParams = array('uploadName' => 'uploadalt', 'radioName' => 'replacealtimage', 'imageName' => $altImageName, 'fileSize' => $altSize, 'fileName' => $aBanner['alt_filename'], 'newLabel' => $GLOBALS['strNewBannerFileAlt'], 'updateLabel' => $GLOBALS['strUploadOrKeep'], 'handleSWF' => false); if ($aBanner['contenttype'] != 'swf') { $aUploadParams = array_merge($aUploadParams, array('decorateId' => 'swfAlternative')); } addUploadGroup($form, $aBanner, $aUploadParams); $form->addElement('header', 'header_b_links', "Banner link"); if (count($aBanner['hardcoded_links']) == 0) { $form->addElement('text', 'url', $GLOBALS['strURL']); $targetElem = $form->createElement('text', 'target', $GLOBALS['strTarget']); $targetElem->setAttribute('maxlength', '16'); $form->addElement($targetElem); } else { foreach ($aBanner['hardcoded_links'] as $key => $val) { $link['text'] = $form->createElement('text', "alink[" . $key . "]", null); $link['text']->setAttribute("style", "width:330px"); $link['radio'] = $form->createElement('radio', "alink_chosen", null, null, $key); $form->addGroup($link, 'url_group', $GLOBALS['strURL'], "", false); if (isset($aBanner['hardcoded_targets'][$key])) { $targetElem = $form->createElement('text', "atar[" . $key . "]", $GLOBALS['strTarget']); $targetElem->setAttribute('maxlength', '16'); $form->addElement($targetElem); } if (count($aBanner['hardcoded_links']) > 1) { $form->addElement('text', "asource[" . $key . "]", $GLOBALS['strOverwriteSource']); } } $form->addElement('hidden', 'url', $aBanner['url']); } $form->addElement('header', 'header_b_display', 'Banner display'); $form->addElement('text', 'alt', $GLOBALS['strAlt']); $form->addElement('text', 'statustext', $GLOBALS['strStatusText']); $form->addElement('text', 'bannertext', $GLOBALS['strTextBelow']); if (!empty($aBanner['bannerid'])) { $sizeG['width'] = $form->createElement('text', 'width', $GLOBALS['strWidth'] . ":"); $sizeG['width']->setAttribute('onChange', 'oa_sizeChangeUpdateMessage("warning_change_banner_size");'); $sizeG['width']->setSize(5); $sizeG['height'] = $form->createElement('text', 'height', $GLOBALS['strHeight'] . ":"); $sizeG['height']->setAttribute('onChange', 'oa_sizeChangeUpdateMessage("warning_change_banner_size");'); $sizeG['height']->setSize(5); $form->addGroup($sizeG, 'size', $GLOBALS['strSize'], " ", false); //validation rules $translation = new OX_Translation(); $widthRequiredRule = array($translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strWidth'])), 'required'); $widthPositiveRule = array($translation->translate($GLOBALS['strXGreaterThanZeroField'], array($GLOBALS['strWidth'])), 'min', 1); $heightRequiredRule = array($translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strHeight'])), 'required'); $heightPositiveRule = array($translation->translate($GLOBALS['strXGreaterThanZeroField'], array($GLOBALS['strHeight'])), 'min', 1); $numericRule = array($GLOBALS['strNumericField'], 'numeric'); $form->addGroupRule('size', array('width' => array($widthRequiredRule, $numericRule, $widthPositiveRule), 'height' => array($heightRequiredRule, $numericRule, $heightPositiveRule))); } if (!isset($aBanner['contenttype']) || $aBanner['contenttype'] == 'swf') { $form->addElement('checkbox', 'transparent', $GLOBALS['strSwfTransparency'], $GLOBALS['strSwfTransparency']); } //TODO $form->addRule("size", 'Please enter a number', 'numeric'); //this should make all fields in group size are numeric } //external banners if ($type == "url") { $header = $form->createElement('header', 'header_txt', $GLOBALS['strURLBanner']); $header->setAttribute('icon', 'icon-banner-url.gif'); $form->addElement($header); $form->addElement('text', 'imageurl', $GLOBALS['strNewBannerURL']); if ($aBanner['contenttype'] == 'swf') { $altImageName = _getContentTypeIconImageName($aBanner['alt_contenttype']); $altSize = _getBannerSizeText($type, $aBanner['alt_filename']); $form->addElement('text', 'alt_imageurl', $GLOBALS['strNewBannerFileAlt']); } $form->addElement('header', 'header_b_links', "Banner link"); $form->addElement('text', 'url', $GLOBALS['strURL']); $targetElem = $form->createElement('text', 'target', $GLOBALS['strTarget']); $targetElem->setAttribute('maxlength', '16'); $form->addElement($targetElem); $form->addElement('header', 'header_b_display', 'Banner display'); $form->addElement('text', 'alt', $GLOBALS['strAlt']); $form->addElement('text', 'statustext', $GLOBALS['strStatusText']); $form->addElement('text', 'bannertext', $GLOBALS['strTextBelow']); $sizeG['width'] = $form->createElement('text', 'width', $GLOBALS['strWidth'] . ":"); $sizeG['width']->setAttribute('onChange', 'oa_sizeChangeUpdateMessage("warning_change_banner_size");'); $sizeG['width']->setSize(5); $sizeG['height'] = $form->createElement('text', 'height', $GLOBALS['strHeight'] . ":"); $sizeG['height']->setAttribute('onChange', 'oa_sizeChangeUpdateMessage("warning_change_banner_size");'); $sizeG['height']->setSize(5); $form->addGroup($sizeG, 'size', $GLOBALS['strSize'], " ", false); if (!isset($aBanner['contenttype']) || $aBanner['contenttype'] == 'swf') { $form->addElement('checkbox', 'transparent', $GLOBALS['strSwfTransparency'], $GLOBALS['strSwfTransparency']); } //validation rules $translation = new OX_Translation(); $widthRequiredRule = array($translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strWidth'])), 'required'); $widthPositiveRule = array($translation->translate($GLOBALS['strXGreaterThanZeroField'], array($GLOBALS['strWidth'])), 'min', 1); $heightRequiredRule = array($translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strHeight'])), 'required'); $heightPositiveRule = array($translation->translate($GLOBALS['strXGreaterThanZeroField'], array($GLOBALS['strHeight'])), 'min', 1); $numericRule = array($GLOBALS['strNumericField'], 'numeric'); $form->addGroupRule('size', array('width' => array($widthRequiredRule, $numericRule, $widthPositiveRule), 'height' => array($heightRequiredRule, $numericRule, $heightPositiveRule))); } //html & text banners if ($oComponent) { $oComponent->buildForm($form, $aBanner); } $translation = new OX_Translation(); //common for all banners if (OA_Permission::isAccount(OA_ACCOUNT_ADMIN) || OA_Permission::isAccount(OA_ACCOUNT_MANAGER)) { $form->addElement('header', 'header_additional', "Additional data"); $form->addElement('text', 'keyword', $GLOBALS['strKeyword']); $weightElem = $form->createElement('text', 'weight', $GLOBALS['strWeight']); $weightElem->setSize(6); $form->addElement($weightElem); $form->addElement('textarea', 'comments', $GLOBALS['strComments']); $weightPositiveRule = $translation->translate($GLOBALS['strXPositiveWholeNumberField'], array($GLOBALS['strWeight'])); $form->addRule('weight', $weightPositiveRule, 'numeric'); } //we want submit to be the last element in its own separate section $form->addElement('controls', 'form-controls'); $form->addElement('submit', 'submit', 'Save changes'); //validation rules if (OA_Permission::isAccount(OA_ACCOUNT_ADMIN) || OA_Permission::isAccount(OA_ACCOUNT_MANAGER)) { $urlRequiredMsg = $translation->translate($GLOBALS['strXRequiredField'], array($GLOBALS['strName'])); $form->addRule('description', $urlRequiredMsg, 'required'); } //set banner values $form->setDefaults($aBanner); foreach ($aBanner['hardcoded_links'] as $key => $val) { $swfLinks["alink[" . $key . "]"] = phpAds_htmlQuotes($val); if ($val == $aBanner['url']) { $swfLinks['alink_chosen'] = $key; } if (isset($aBanner['hardcoded_targets'][$key])) { $swfLinks["atar[" . $key . "]"] = phpAds_htmlQuotes($aBanner['hardcoded_targets'][$key]); } if (count($aBanner['hardcoded_links']) > 1) { $swfLinks["asource[" . $key . "]"] = phpAds_htmlQuotes($aBanner['hardcoded_sources'][$key]); } } $form->setDefaults($swfLinks); if ($formDisabled) { $form->freeze(); } return $form; }