本文整理汇总了PHP中OX_Component::factoryByComponentIdentifier方法的典型用法代码示例。如果您正苦于以下问题:PHP OX_Component::factoryByComponentIdentifier方法的具体用法?PHP OX_Component::factoryByComponentIdentifier怎么用?PHP OX_Component::factoryByComponentIdentifier使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OX_Component
的用法示例。
在下文中一共展示了OX_Component::factoryByComponentIdentifier方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: insert
/**
* Handle all necessary operations when new agency is created
*
* @see DB_DataObject::insert()
*/
function insert()
{
// Create account first
$result = $this->createAccount(OA_ACCOUNT_MANAGER, $this->name);
if (!$result) {
return $result;
}
// Store data to create a user
if (!empty($this->username) && !empty($this->password)) {
$aUser = array('contact_name' => $this->contact, 'email_address' => $this->email, 'username' => $this->username, 'password' => $this->password, 'default_account_id' => $this->account_id);
}
$agencyid = parent::insert();
if (!$agencyid) {
return $agencyid;
}
// Create user if needed
// Is this even required anymore?
if (!empty($aUser)) {
$this->createUser($aUser);
}
// Execute any components which have registered at the afterAgencyCreate hook
$aPlugins = OX_Component::getListOfRegisteredComponentsForHook('afterAgencyCreate');
foreach ($aPlugins as $i => $id) {
if ($obj = OX_Component::factoryByComponentIdentifier($id)) {
$obj->afterAgencyCreate($agencyid);
}
}
return $agencyid;
}
示例2: __construct
/**
* Constructor
*/
function __construct()
{
$this->oCacheStorePlugin =& OX_Component::factoryByComponentIdentifier($GLOBALS['_MAX']['CONF']['delivery']['cacheStorePlugin']);
// Do not use Plugin if it's not enabled
if ($this->oCacheStorePlugin->enabled === false) {
$this->oCacheStorePlugin = false;
}
}
示例3: staticGetAuthPlugin
/**
* Returns authentication plugin
*
* @static
* @param string $authType
* @return Plugins_Authentication
*/
static function staticGetAuthPlugin()
{
static $authPlugin;
static $authPluginType;
if (!isset($authPlugin) || $authPluginType != $authType) {
$aConf = $GLOBALS['_MAX']['CONF'];
if (!empty($aConf['authentication']['type'])) {
$authType = $aConf['authentication']['type'];
$authPlugin = OX_Component::factoryByComponentIdentifier($authType);
}
if (!$authPlugin) {
// Fall back to internal
$authType = 'none';
$authPlugin = new Plugins_Authentication();
}
if (!$authPlugin) {
OA::debug('Error while including authentication plugin and unable to fallback', PEAR_LOG_ERR);
}
$authPluginType = $authType;
}
return $authPlugin;
}
示例4: init
private static function init()
{
if (self::$initialized) {
return;
}
//register UI listeners from plugins
$aPlugins = OX_Component::getListOfRegisteredComponentsForHook('registerUiListeners');
foreach ($aPlugins as $i => $id) {
if ($obj = OX_Component::factoryByComponentIdentifier($id)) {
if (is_callable(array($obj, 'registerUiListeners'))) {
$obj->registerUiListeners();
}
}
}
self::$initialized = true;
}
示例5: foreach
}
}
}
}
}
}
}
}
}
}
if ($action == OA_UPGRADE_FINISH) {
OA_Upgrade_Login::autoLogin();
// Execute any components which have registered at the afterLogin hook
$aPlugins = OX_Component::getListOfRegisteredComponentsForHook('afterLogin');
foreach ($aPlugins as $i => $id) {
if ($obj = OX_Component::factoryByComponentIdentifier($id)) {
$obj->afterLogin();
}
}
// Delete the cookie
setcookie('oat', '');
$oUpgrader->setOpenadsInstalledOn();
if (!$oUpgrader->removeUpgradeTriggerFile()) {
$message .= '. ' . $strRemoveUpgradeFile;
$strInstallSuccess = '<div class="sysinfoerror">' . $strOaUpToDateCantRemove . '</div>' . $strInstallSuccess;
}
}
if ($installStatus == OA_STATUS_OAD_NOT_INSTALLED) {
setcookie('oat', OA_UPGRADE_INSTALL);
$_COOKIE['oat'] = OA_UPGRADE_INSTALL;
} elseif ($installStatus !== 'unknown') {
示例6: _newPluginByName
/**
* A private method to return the appropriate report plugin, based
* on the identifying string.
*
* @access private
* @param string $reportIdentifier The string identifying the report.
* @return Plugins_Reports The report plugin.
*/
function _newPluginByName($reportIdentifier)
{
$pluginKey = explode(':', $reportIdentifier);
$oPlugin = OX_Component::factoryByComponentIdentifier($reportIdentifier);
return $oPlugin;
}
示例7: _validateTargeting
function _validateTargeting($oTargeting)
{
if (!isset($oTargeting->data)) {
$this->raiseError('Field \'data\' in structure does not exists');
return false;
}
if (!$this->checkStructureRequiredStringField($oTargeting, 'logical', 255) || !$this->checkStructureRequiredStringField($oTargeting, 'type', 255) || !$this->checkStructureRequiredStringField($oTargeting, 'comparison', 255) || !$this->checkStructureNotRequiredStringField($oTargeting, 'data')) {
return false;
}
// Check that each of the specified targeting plugins are available
$oPlugin = OX_Component::factoryByComponentIdentifier($oTargeting->type);
if ($oPlugin === false) {
$this->raiseError('Unknown targeting plugin: ' . $oTargeting->type);
return false;
}
return true;
}
示例8: finishAction
public function finishAction()
{
$oWizard = new OX_Admin_UI_Install_Wizard($this->getInstallStatus());
$this->setCurrentStepIfReachable($oWizard, 'finish');
$oUpgrader = $this->getUpgrader();
$isUpgrade = $this->getInstallStatus()->isUpgrade();
//finalize - mark OpenX as installed, clear files etc.
$this->finalizeInstallation();
$oStorage = OX_Admin_UI_Install_InstallUtils::getSessionStorage();
//collect only job statuses with errors
$aJobStatuses = $oStorage->get('aJobStatuses');
$aStatuses = array();
if ($aJobStatuses) {
foreach ($aJobStatuses as $jobId => $aJobStatus) {
//check session for job statuses
if (!empty($aJobStatus['errors'])) {
$aStatuses[$jobId] = $aJobStatus;
}
}
}
$oRequest = $this->getRequest();
if ($oRequest->isPost()) {
$this->resetInstaller();
global $installerIsUpgrade;
$installerIsUpgrade = $isUpgrade;
// Execute any components which have registered at the afterLogin hook
$aPlugins = OX_Component::getListOfRegisteredComponentsForHook('afterLogin');
foreach ($aPlugins as $i => $id) {
if ($obj = OX_Component::factoryByComponentIdentifier($id)) {
$obj->afterLogin();
}
}
require_once LIB_PATH . '/Admin/Redirect.php';
OX_Admin_Redirect::redirect('advertiser-index.php');
}
$logPath = str_replace('/', DIRECTORY_SEPARATOR, $oUpgrader->getLogFileName());
$this->setModelProperty('logPath', $logPath);
$this->setModelProperty('oWizard', $oWizard);
$this->setModelProperty('aStatuses', $aStatuses);
$this->setModelProperty('isUpgrade', $isUpgrade);
}
示例9: _factoryComponentById
/**
* Factory component by its Id
*
* @param string $componentId Component Id, for example: ExtensionName:GroupName:ComponentName
* @return OX_Component Returns OX_Component or false on error
*/
function _factoryComponentById($componentId)
{
return OX_Component::factoryByComponentIdentifier($componentId);
}
示例10: array
$aBanner['keyword'] = '';
$aBanner["weight"] = $pref['default_banner_weight'];
$aBanner['hardcoded_links'] = array();
$aBanner['hardcoded_targets'] = array();
}
if ($ext_bannertype) {
list($extension, $group, $plugin) = explode(':', $ext_bannertype);
$oComponent =& OX_Component::factory($extension, $group, $plugin);
if (!$oComponent) {
$oComponent = OX_Component::getFallbackHandler($extension);
}
$formDisabled = !$oComponent || !$oComponent->enabled;
}
if (!$ext_bannertype && $type && !in_array($type, array('sql', 'web', 'url', 'html', 'txt'))) {
list($extension, $group, $plugin) = explode('.', $type);
$oComponent =& OX_Component::factoryByComponentIdentifier($extension, $group, $plugin);
$formDisabled = !$oComponent || !$oComponent->enabled;
if ($oComponent) {
$ext_bannertype = $type;
$type = $oComponent->getStorageType();
} else {
$ext_bannertype = '';
$type = '';
}
}
$show_txt = $conf['allowedBanners']['text'];
if (isset($type) && $type == "txt") {
$show_txt = true;
}
$bannerTypes = array();
if ($show_txt) {
示例11: OA_Start
/**
* Starts or continue existing session
*
* @param unknown_type $checkRedirectFunc
*/
function OA_Start($checkRedirectFunc = null)
{
$conf = $GLOBALS['_MAX']['CONF'];
global $session;
// XXX: Why not try loading session data when OpenX is not installed?
//if ($conf['openads']['installed'])
if (OA_INSTALLATION_STATUS == OA_INSTALLATION_STATUS_INSTALLED) {
phpAds_SessionDataFetch();
}
if (!OA_Auth::isLoggedIn() || OA_Auth::suppliedCredentials()) {
// Required files
include_once MAX_PATH . '/lib/max/language/Loader.php';
// Load the required language files
Language_Loader::load('default');
phpAds_SessionDataRegister(OA_Auth::login($checkRedirectFunc));
$aPlugins = OX_Component::getListOfRegisteredComponentsForHook('afterLogin');
foreach ($aPlugins as $i => $id) {
if ($obj = OX_Component::factoryByComponentIdentifier($id)) {
$obj->afterLogin();
}
}
}
// Overwrite certain preset preferences
if (!empty($session['language']) && $session['language'] != $GLOBALS['pref']['language']) {
$GLOBALS['_MAX']['CONF']['max']['language'] = $session['language'];
}
// Check if manual account switch has happened and migrate to new global variable
if (isset($session['accountSwitch'])) {
$GLOBALS['_OX']['accountSwtich'] = $session['accountSwitch'];
unset($session['accountSwitch']);
phpAds_SessionDataStore();
}
}
示例12: OA_Start
/**
* Starts or continue existing session
*
* @param unknown_type $checkRedirectFunc
*/
function OA_Start($checkRedirectFunc = null)
{
$conf = $GLOBALS['_MAX']['CONF'];
global $session;
// Send no cache headers
MAX_header('Pragma: no-cache');
MAX_header('Cache-Control: no-cache, no-store, must-revalidate');
MAX_header('Expires: 0');
if (RV_INSTALLATION_STATUS == RV_INSTALLATION_STATUS_INSTALLED) {
phpAds_SessionDataFetch();
}
if (!OA_Auth::isLoggedIn() || OA_Auth::suppliedCredentials()) {
// Required files
include_once MAX_PATH . '/lib/max/language/Loader.php';
// Load the required language files
Language_Loader::load('default');
phpAds_SessionDataRegister(OA_Auth::login($checkRedirectFunc));
$aPlugins = OX_Component::getListOfRegisteredComponentsForHook('afterLogin');
foreach ($aPlugins as $i => $id) {
if ($obj = OX_Component::factoryByComponentIdentifier($id)) {
$obj->afterLogin();
}
}
}
// Overwrite certain preset preferences
if (!empty($session['language']) && $session['language'] != $GLOBALS['pref']['language']) {
$GLOBALS['_MAX']['CONF']['max']['language'] = $session['language'];
}
// Check if manual account switch has happened and migrate to new global variable
if (isset($session['accountSwitch'])) {
$GLOBALS['_OX']['accountSwtich'] = $session['accountSwitch'];
unset($session['accountSwitch']);
phpAds_SessionDataStore();
}
}
示例13: placeInvocationForm
/**
* Place invocation form - generate form with group of options for every plugin,
* look into max/docs/developer/plugins.zuml for more details
*
* @param array $extra
* @param boolean $zone_invocation
* @param array $aParams Input parameters, if null globals will be fetched
*
* @return string Generated invocation form
*/
function placeInvocationForm($extra = '', $zone_invocation = false, $aParams = null)
{
$this->tabindex = 1;
global $phpAds_TextDirection;
$conf = $GLOBALS['_MAX']['CONF'];
$pref = $GLOBALS['_MAX']['PREF'];
$buffer = '';
$this->zone_invocation = $zone_invocation;
// register all the variables
$this->assignVariables($aParams);
if (is_array($extra)) {
$this->assignVariables($extra);
}
// Check if affiliate is on the same server as the delivery code
if (!empty($extra['website'])) {
$server_max = parse_url('http://' . $conf['webpath']['delivery'] . '/');
$server_affilate = parse_url($extra['website']);
// this code could be extremely slow if host is unresolved
$this->server_same = @gethostbyname($server_max['host']) == @gethostbyname($server_affilate['host']);
} else {
$this->server_same = true;
}
// Hide when integrated in zone-advanced.php
if (!is_array($extra) || !isset($extra['zoneadvanced']) || !$extra['zoneadvanced']) {
$buffer .= "<form id='generate' name='generate' method='POST' onSubmit='return max_formValidate(this) && disableTextarea();'>\n";
}
// Invocation type selection
if (!is_array($extra) || isset($extra['delivery']) && $extra['delivery'] != phpAds_ZoneInterstitial && $extra['delivery'] != phpAds_ZonePopup && $extra['delivery'] != MAX_ZoneEmail) {
$invocationTags =& OX_Component::getComponents('invocationTags');
$allowed = array();
foreach ($invocationTags as $pluginKey => $invocationTag) {
if ($invocationTag->isAllowed($extra, $this->server_same)) {
$aOrderedComponents[$invocationTag->getOrder()] = array('pluginKey' => $pluginKey, 'isAllowed' => $invocationTag->isAllowed($extra, $this->server_same), 'name' => $invocationTag->getName());
}
}
ksort($aOrderedComponents);
foreach ($aOrderedComponents as $order => $aComponent) {
$allowed[$aComponent['pluginKey']] = $aComponent['isAllowed'];
}
if (!isset($this->codetype) || $allowed[$this->codetype] == false) {
foreach ($allowed as $codetype => $isAllowed) {
$this->codetype = $codetype;
break;
}
}
if (!isset($bannerUrl)) {
$bannerUrl = 'http://www.example.com/INSERT_BANNER_URL.gif';
}
$buffer .= "<table border='0' width='100%' cellpadding='0' cellspacing='0'>";
$buffer .= "<tr><td height='25' width='350'><b>" . $GLOBALS['strChooseTypeOfBannerInvocation'] . "</b>";
if ($this->codetype == "invocationTags:oxInvocationTags:adview") {
$buffer .= "";
}
$buffer .= "</td></tr><tr><td height='35' valign='top'>";
$buffer .= "<select name='codetype' onChange=\"disableTextarea();this.form.submit()\" accesskey=" . $GLOBALS['keyList'] . " tabindex='" . $this->tabindex++ . "'>";
$invocationTagsNames = array();
foreach ($aOrderedComponents as $order => $aComponent) {
$invocationTagsNames[$aComponent['pluginKey']] = $aComponent['name'];
}
foreach ($invocationTagsNames as $pluginKey => $invocationTagName) {
$buffer .= "<option value='" . $pluginKey . "'" . ($this->codetype == $pluginKey ? ' selected' : '') . ">" . $invocationTagName . "</option>";
}
$buffer .= "</select>";
$buffer .= " <input type='image' src='" . OX::assetPath() . "/images/" . $phpAds_TextDirection . "/go_blue.gif' border='0'></td>";
} else {
$invocationTags =& OX_Component::getComponents('invocationTags');
foreach ($invocationTags as $invocationCode => $invocationTag) {
if (isset($invocationTag->defaultZone) && $extra['delivery'] == $invocationTag->defaultZone) {
$this->codetype = $invocationCode;
break;
}
}
if (!isset($this->codetype)) {
$this->codetype = '';
}
}
if ($this->codetype != '') {
// factory plugin for this $codetype
$invocationTag = OX_Component::factoryByComponentIdentifier($this->codetype);
if ($invocationTag === false) {
OA::debug('Error while factory invocationTag plugin');
exit;
}
$invocationTag->setInvocation($this);
$buffer .= "</td></tr></table>";
$buffer .= $invocationTag->getHeaderHtml($this, $extra);
$buffer .= $this->getTextAreaAndOptions($invocationTag, $extra);
}
// Put extra hidden fields
if (is_array($extra)) {
//.........这里部分代码省略.........
示例14: phpAds_getBannerCache
function phpAds_getBannerCache($banner)
{
$aConf = $GLOBALS['_MAX']['CONF'];
$aPref = $GLOBALS['_MAX']['PREF'];
$buffer = $banner['htmltemplate'];
// Strip slashes from urls
$banner['url'] = stripslashes($banner['url']);
$banner['imageurl'] = stripslashes($banner['imageurl']);
// The following properties depend on data from the invocation process
// and can't yet be determined: {zoneid}, {bannerid}
// These properties will be set during invocation
// Auto change HTML banner
if ($banner['storagetype'] == 'html') {
if ($buffer != '') {
// Remove target parameters
// The regexp should handle ", ', \", \' as delimiters
$buffer = preg_replace('# target\\s*=\\s*(\\\\?[\'"]).*?\\1#i', ' ', $buffer);
// Put our click URL and our target parameter in all anchors...
// The regexp should handle ", ', \", \' as delimiters
$buffer = preg_replace('#<a(.*?)href\\s*=\\s*(\\\\?[\'"])http(.*?)\\2(.*?) *>#is', "<a\$1href=\$2{clickurl}http\$3\$2\$4 target=\$2{target}\$2>", $buffer);
// Search: <\s*form (.*?)action\s*=\s*['"](.*?)['"](.*?)>
// Replace:<form\1 action="{url_prefix}/{$aConf['file']['click']}" \3><input type='hidden' name='{clickurlparams}\2'>
$target = !empty($banner['target']) ? $banner['target'] : "_self";
// strip out the method from any <forms> these will be changed to GET
$buffer = preg_replace('#<\\s*form (.*?)method\\s*=\\s*[\\\\]?[\'"](.*?)[\'"]#is', "<form \$1 method='GET'", $buffer);
$buffer = preg_replace('#<\\s*form (.*?)action\\s*=\\s*[\\\\]?[\'"](.*?)[\'\\\\"][\'\\\\"]?(.*?)>(.*?)</form>#is', "<form \$1 action='{url_prefix}/{$aConf['file']['click']}' \$3 target='{$target}'>\$4<input type='hidden' name='{$aConf['var']['params']}' value='{clickurlparams}\$2'></form>", $buffer);
//$buffer = preg_replace("#<form*action='*'*>#i","<form target='{target}' $1action='{url_prefix}/{}$aConf['file']['click']'$3><input type='hidden' name='{clickurlparams}$2'>", $buffer);
//$buffer = preg_replace("#<form*action=\"*\"*>#i","<form target=\"{target}\" $1action=\"{url_prefix}/{$aConf['file']['click']}\"$3><input type=\"hidden\" name=\"{clickurlparams}$2\">", $buffer);
// In addition, we need to add our clickURL to the clickTAG parameter if present, for 3rd party flash ads
$buffer = preg_replace('#clickTAG\\s?=\\s?(.*?)([\'"])#', "clickTAG={clickurl}\$1\$2", $buffer);
// Detect any JavaScript window.open() functions, and prepend the opened URL with our logurl
$buffer = preg_replace('#window.open\\s?\\((.*?)\\)#i', "window.open(\\\\'{logurl}&maxdest=\\\\'+\$1)", $buffer);
}
// Since we don't want to replace adserver noscript and iframe content with click tracking etc
$noScript = array();
//Capture noscript content into $noScript[0], for seperate translations
preg_match("#<noscript>(.*?)</noscript>#is", $buffer, $noScript);
$buffer = preg_replace("#<noscript>(.*?)</noscript>#is", '{noscript}', $buffer);
// run 3rd party component
if (!empty($banner['adserver'])) {
require_once LIB_PATH . '/Plugin/Component.php';
/**
* @todo This entire function should be relocated to the DLL and should be object-ified
*
*/
PEAR::pushErrorHandling(null);
$adServerComponent = OX_Component::factoryByComponentIdentifier($banner['adserver']);
PEAR::popErrorHandling();
if ($adServerComponent) {
$buffer = $adServerComponent->getBannerCache($buffer, $noScript);
} else {
$GLOBALS['_MAX']['bannerrebuild']['errors'] = true;
}
}
// Wrap the banner inside a link if it doesn't seem to handle clicks itself
if (!empty($banner['url']) && !preg_match('#<(a|area|form|script|object|iframe) #i', $buffer)) {
$buffer = '<a href="{clickurl}" target="{target}">' . $buffer . '</a>';
}
// Adserver processing complete, now replace the noscript values back:
//$buffer = preg_replace("#{noframe}#", $noFrame[2], $buffer);
if (isset($noScript[0])) {
$buffer = preg_replace("#{noscript}#", $noScript[0], $buffer);
}
}
return $buffer;
}
示例15: placeInvocationForm
/**
* Place invocation form - generate form with group of options for every plugin,
* look into max/docs/developer/plugins.zuml for more details
*
* @param array $extra
* @param boolean $zone_invocation
*
* @return string Generated invocation form
*/
function placeInvocationForm($extra = '', $zone_invocation = false)
{
$conf = $GLOBALS['_MAX']['CONF'];
$pref = $GLOBALS['_MAX']['PREF'];
$globalVariables = array('affiliateid', 'codetype', 'size', 'text', 'dest');
$buffer = '';
$this->zone_invocation = $zone_invocation;
foreach ($globalVariables as $makeMeGlobal) {
global ${$makeMeGlobal};
// also make this variable a class attribute
// so plugins could have an access to these values and modify them
$this->{$makeMeGlobal} =& ${$makeMeGlobal};
}
$invocationTypes =& OX_Component::getComponents('invocationTags');
foreach ($invocationTypes as $pluginKey => $invocationType) {
if (!empty($invocationType->publisherPlugin)) {
$available[$pluginKey] = $invocationType->publisherPlugin;
$names[$pluginKey] = $invocationType->getName();
if (!empty($invocationType->default)) {
$defaultPublisherPlugin = $pluginKey;
}
}
}
$affiliateid = $this->affiliateid;
if (count($available) == 1) {
// Only one publisher invocation plugin available
$codetype = $defaultPublisherPlugin;
} elseif (count($available) > 1) {
// Multiple publisher invocation plugins available
if (is_null($codetype)) {
$codetype = $defaultPublisherPlugin;
}
echo "<form name='generate' action='" . $_SERVER['PHP_SELF'] . "' method='POST' onSubmit='return max_formValidate(this);'>\n";
// Show the publisher invocation selection drop down
echo "<table border='0' width='100%' cellpadding='0' cellspacing='0'>";
echo "<input type='hidden' name='affiliateid' value='{$affiliateid}'>";
echo "<tr><td height='25' colspan='3'><b>" . $GLOBALS['strChooseTypeOfInvocation'] . "</b></td></tr>";
echo "<tr><td height='35'>";
echo "<select name='codetype' onChange=\"this.form.submit()\" accesskey=" . $GLOBALS['keyList'] . " tabindex='" . $tabindex++ . "'>";
foreach ($names as $pluginKey => $invocationTypeName) {
echo "<option value='" . $pluginKey . "'" . ($codetype == $pluginKey ? ' selected' : '') . ">" . $invocationTypeName . "</option>";
}
echo "</select>";
echo " <input type='image' src='" . OX::assetPath() . "/images/" . $GLOBALS['phpAds_TextDirection'] . "/go_blue.gif' border='0'>";
echo "</td></tr></table>";
echo "</form>";
echo phpAds_ShowBreak($print = false);
echo "<br />";
} else {
// No publisher invocation plugins available
$code = 'Error: No publisher invocation plugins available';
return;
}
if (!empty($codetype)) {
$invocationTag = OX_Component::factoryByComponentIdentifier($codetype);
if ($invocationTag === false) {
OA::debug('Error while factory invocationTag plugin');
exit;
}
$code = $this->generateInvocationCode($invocationTag);
}
$previewURL = MAX::constructURL(MAX_URL_ADMIN, "affiliate-preview.php?affiliateid={$affiliateid}&codetype={$codetype}");
foreach ($invocationTag->defaultOptionValues as $feature => $value) {
if ($invocationTag->maxInvocation->{$feature} != $value) {
$previewURL .= "&{$feature}=" . rawurlencode($invocationTag->maxInvocation->{$feature});
}
}
foreach ($this->defaultOptionValues as $feature => $value) {
if ($this->{$feature} != $value) {
$previewURL .= "&{$feature}=" . rawurlencode($this->{$feature});
}
}
echo "<form name='generate' action='" . $previewURL . "' method='get' target='_blank'>\n";
echo "<input type='hidden' name='codetype' value='" . $codetype . "' />";
// Show parameters for the publisher invocation list
echo "<table border='0' width='100%' cellpadding='0' cellspacing='0'>";
echo "<tr><td height='25' colspan='3'><img src='" . OX::assetPath() . "/images/icon-overview.gif' align='absmiddle'> <b>" . $GLOBALS['strParameters'] . "</b></td></tr>";
echo "<tr height='1'><td width='30'><img src='" . OX::assetPath() . "/images/break.gif' height='1' width='30'></td>";
echo "<td width='200'><img src='" . OX::assetPath() . "/images/break.gif' height='1' width='200'></td>";
echo "<td width='100%'><img src='" . OX::assetPath() . "/images/break.gif' height='1' width='100%'></td></tr>";
echo $invocationTag->generateOptions($this);
echo "<tr><td height='10' colspan='3'> </td></tr>";
//echo "<tr height='1'><td colspan='3' bgcolor='#888888'><img src='" . OX::assetPath() . "/images/break.gif' height='1' width='100%'></td></tr>";
echo "</table>";
// Pass in current values
echo "<input type='hidden' name='affiliateid' value='{$affiliateid}' />";
echo "<input type='submit' value='" . $GLOBALS['strGenerate'] . "' name='submitbutton' tabindex='" . $tabindex++ . "'>";
echo "</form>";
}