private function runModify( $operatorName, $method ) { $operator = new eZURLOperator(); $tpl = eZTemplate::instance(); $operatorValue = null; $argument = 'zeargument'; $expectedResult = 'zevalue'; switch( $method ) { case 'get' : $_GET[$argument] = $expectedResult; break; case 'post' : $_POST[$argument] = $expectedResult; break; case 'cookie' : $_COOKIE[$argument] = $expectedResult; break; case 'session': $_SESSION[$argument] = $expectedResult; break; } $operatorParameters = array( array( array( 1, $argument, false, ), ), array( array( 1, $method, false, ), ), ); $namedParameters = array( 'quote_val' => $argument, 'server_url' => $method ); $operator->modify( $tpl, $operatorName, $operatorParameters, '', '', $operatorValue, $namedParameters, false ); $this->assertEquals( $expectedResult, $operatorValue ); }
/** * Returns part of the data for the attribute * * @param string $dataMember * * @return string */ public function getDataMember($dataMember) { if ($dataMember === 'related_images') { $images = array(); $relations = $this->ContentObjectAttribute->attribute('content'); foreach ($relations['relation_list'] as $relation) { $object = eZContentObject::fetch($relation['contentobject_id']); if ($object instanceof eZContentObject) { $dataMap = $object->attribute('data_map'); foreach ($dataMap as $attribute) { /** @var eZContentObjectAttribute $attribute */ if ($attribute->attribute('data_type_string') !== eZImageType::DATA_TYPE_STRING) { continue; } if ($attribute->hasContent()) { $imageAliasHandler = $attribute->attribute('content'); $imageAlias = $imageAliasHandler->imageAlias('opengraph'); if ($imageAlias['is_valid'] == 1) { $images[] = eZSys::serverURL() . '/' . $imageAlias['full_path']; } } } } } if (empty($images)) { $images[] = eZSys::serverURL() . eZURLOperator::eZImage(null, 'opengraph_default_image.png', ''); } return $images; } return $this->getData(); }
/** * Returns data for the attribute * * @return string */ public function getData() { if ($this->ContentObjectAttribute->hasContent()) { $imageAliasHandler = $this->ContentObjectAttribute->attribute('content'); $imageAlias = $imageAliasHandler->imageAlias('opengraph'); if ($imageAlias['is_valid'] == 1) { return eZSys::serverURL() . '/' . $imageAlias['full_path']; } } return eZSys::serverURL() . eZURLOperator::eZImage(null, 'opengraph_default_image.png', ''); }
/** * Returns YUI3 configuration extension for custom option modules * @param array $args Not used * @return string JS code declaring YUI3 modules */ public static function modules($args) { $importINI = eZINI::instance('sqliimport.ini'); $modules = $importINI->variable('OptionsGUISettings', 'YUI3Modules'); if (count($modules)) { $js = 'YUI3_config = YUI3_config || { modules: {}}' . chr(10); $tpl = SQLIImportUtils::templateInit(); foreach ($modules as $name => $path) { $path = eZURLOperator::eZDesign($tpl, $path, 'ezdesign'); $js .= 'YUI3_config.modules.' . $name . ' = { fullpath: "' . $path . '" };' . chr(10); } return $js; } return ''; }
function lookupIcon($ini, $tag) { $iconMap = $ini->variable('Icons', 'IconMap'); $returnValue = $ini->variable('Icons', 'Default'); if (array_key_exists($tag->attribute('id'), $iconMap) && !empty($iconMap[$tag->attribute('id')])) { $returnValue = $iconMap[$tag->attribute('id')]; } else { $tempTag = $tag; while ($tempTag->attribute('parent_id') > 0) { $tempTag = $tempTag->getParent(); if (array_key_exists($tempTag->attribute('id'), $iconMap) && !empty($iconMap[$tempTag->attribute('id')])) { $returnValue = $iconMap[$tempTag->attribute('id')]; break; } } } return eZURLOperator::eZImage(eZTemplate::factory(), 'tag_icons/small/' . $returnValue, ''); }
function urlTransformation($operatorName, &$node, $tpl, &$resourceData, $element, $lastElement, $elementList, $elementTree, &$parameters) { $ini = eZINI::instance(); $shareTemplates = $ini->hasVariable('TemplateSettings', 'ShareCompiledTemplates') ? $ini->variable('TemplateSettings', 'ShareCompiledTemplates') == 'enabled' : false; $useTmp = false; $newElements = array(); $values = array(); $paramCount = 0; $tmpCount = 0; switch ($operatorName) { case $this->URLName: if (!$shareTemplates && eZTemplateNodeTool::isStaticElement($parameters[0])) { $url = eZTemplateNodeTool::elementStaticValue($parameters[0]); $serverURL = isset($parameters[2]) ? eZTemplateNodeTool::elementStaticValue($parameters[2]) : 'relative'; eZURI::transformURI($url, false, $serverURL); $url = $this->applyQuotes($url, $parameters[1]); return array(eZTemplateNodeTool::createStringElement($url)); } else { if ($shareTemplates && eZTemplateNodeTool::isStaticElement($parameters[0])) { $url = eZTemplateNodeTool::elementStaticValue($parameters[0]); $values[] = array(eZTemplateNodeTool::createStringElement($url)); $values[] = isset($parameters[2]) ? $parameters[2] : array(eZTemplateNodeTool::createStringElement('relative')); $code = <<<CODEPIECE %tmp1% = %1%; eZURI::transformURI( %tmp1%, false, %2% ); CODEPIECE; $useTmp = true; ++$tmpCount; } else { $values[] = $parameters[0]; $values[] = isset($parameters[2]) ? $parameters[2] : array(eZTemplateNodeTool::createStringElement('relative')); $code = <<<CODEPIECE //include_once( 'lib/ezutils/classes/ezuri.php' ); eZURI::transformURI( %1%, false, %2% ); CODEPIECE; } } ++$paramCount; break; case $this->URLRootName: if (!$shareTemplates && eZTemplateNodeTool::isStaticElement($parameters[0])) { $url = eZTemplateNodeTool::elementStaticValue($parameters[0]); if (preg_match("#^[a-zA-Z0-9]+:#", $url) or substr($url, 0, 2) == '//') { $url = '/'; } else { if (strlen($url) > 0 and $url[0] != '/') { $url = '/' . $url; } } $serverURL = isset($parameters[2]) ? eZTemplateNodeTool::elementStaticValue($parameters[2]) : 'relative'; // Same as "ezurl" without "index.php" and the siteaccess name in the returned address. eZURI::transformURI($url, true, $serverURL); $url = $this->applyQuotes($url, $parameters[1]); return array(eZTemplateNodeTool::createStringElement($url)); } else { if ($shareTemplates && eZTemplateNodeTool::isStaticElement($parameters[0])) { $url = eZTemplateNodeTool::elementStaticValue($parameters[0]); $values[] = array(eZTemplateNodeTool::createStringElement($url)); $values[] = isset($parameters[2]) ? $parameters[2] : array(eZTemplateNodeTool::createStringElement('relative')); $code = '%tmp1% = %1%;'; $code .= 'if ( preg_match( "#^[a-zA-Z0-9]+:#", %tmp1% ) or' . "\n" . 'substr( %tmp1%, 0, 2 ) == \'//\' )' . "\n" . ' %tmp1% = \'/\';' . "\n" . 'else if ( strlen( %tmp1% ) > 0 and' . "\n" . ' %tmp1%[0] != \'/\' )' . "\n" . '%tmp1% = \'/\' . %tmp1%;' . "\n"; $code .= '//include_once( \'lib/ezutils/classes/ezuri.php\' );' . "\n" . 'eZURI::transformURI( %tmp1%, true, %2% );' . "\n"; $useTmp = true; ++$tmpCount; } else { $values[] = $parameters[0]; $values[] = isset($parameters[2]) ? $parameters[2] : array(eZTemplateNodeTool::createStringElement('relative')); $code = 'if ( preg_match( "#^[a-zA-Z0-9]+:#", %1% ) or' . "\n" . 'substr( %1%, 0, 2 ) == \'//\' )' . "\n" . ' %1% = \'/\';' . "\n" . 'else if ( strlen( %1% ) > 0 and' . "\n" . ' %1%[0] != \'/\' )' . "\n" . '%1% = \'/\' . %1%;' . "\n"; $code .= '//include_once( \'lib/ezutils/classes/ezuri.php\' );' . "\n" . 'eZURI::transformURI( %1%, true, %2% );' . "\n"; } } ++$paramCount; break; case $this->SysName: if (!$shareTemplates && eZTemplateNodeTool::isStaticElement($parameters[1])) { $sysAttribute = eZTemplateNodeTool::elementStaticValue($parameters[1]); return array(eZTemplateNodeTool::createStringElement($this->Sys->attribute($sysAttribute))); } return false; break; case $this->DesignName: if (!$shareTemplates && eZTemplateNodeTool::isStaticElement($parameters[0])) { $path = eZTemplateNodeTool::elementStaticValue($parameters[0]); $path = $this->eZDesign($tpl, $path, $operatorName); $path = $this->applyQuotes($path, $parameters[1]); return array(eZTemplateNodeTool::createStringElement($path)); } else { if ($shareTemplates && eZTemplateNodeTool::isStaticElement($parameters[0])) { $path = eZTemplateNodeTool::elementStaticValue($parameters[0]); $values[] = array(eZTemplateNodeTool::createStringElement($path)); $code = '%tmp1% = %1%;' . "\n" . '%tmp1% = eZURLOperator::eZDesign( $tpl, %tmp1%, "' . $operatorName . '" );' . "\n"; $useTmp = true; ++$tmpCount; } else { $values[] = $parameters[0]; $code = '%1% = eZURLOperator::eZDesign( $tpl, %1%, "' . $operatorName . '" );' . "\n"; } } ++$paramCount; break; case $this->ImageName: $skipSlash = count($parameters) > 2 ? eZTemplateNodeTool::elementStaticValue($parameters[2]) == true : false; if (!$shareTemplates && eZTemplateNodeTool::isStaticElement($parameters[0])) { $path = eZTemplateNodeTool::elementStaticValue($parameters[0]); $path = eZURLOperator::eZImage($tpl, $path, $operatorName, $skipSlash); $path = $this->applyQuotes($path, $parameters[1]); return array(eZTemplateNodeTool::createStringElement($path)); } else { if ($shareTemplates && eZTemplateNodeTool::isStaticElement($parameters[0])) { $path = eZTemplateNodeTool::elementStaticValue($parameters[0]); $values[] = array(eZTemplateNodeTool::createStringElement($path)); $values[] = array(eZTemplateNodeTool::createBooleanElement($skipSlash)); $code = '%tmp1% = %1%;' . "\n" . '%tmp1% = eZURLOperator::eZImage( $tpl, %tmp1%, "' . $operatorName . '", %2% );' . "\n"; $useTmp = true; ++$tmpCount; } else { $values[] = $parameters[0]; $values[] = array(eZTemplateNodeTool::createBooleanElement($skipSlash)); $code = '%1% = eZURLOperator::eZImage( $tpl, %1%, "' . $operatorName . '", %2% );' . "\n"; } } ++$paramCount; break; case $this->ExtName: if (!$shareTemplates && eZTemplateNodeTool::isStaticElement($parameters[0])) { $origUrl = eZTemplateNodeTool::elementStaticValue($parameters[0]); $url = eZURL::urlByMD5(md5($origUrl)); if ($url == false) { eZURL::registerURL($origUrl); } else { $origUrl = $url; } $origUrl = $this->applyQuotes($origUrl, $parameters[1]); return array(eZTemplateNodeTool::createStringElement($origUrl)); } else { if ($shareTemplates && eZTemplateNodeTool::isStaticElement($parameters[0])) { $origUrl = eZTemplateNodeTool::elementStaticValue($parameters[0]); $values[] = array(eZTemplateNodeTool::createStringElement($origUrl)); $code .= '//include_once( \'kernel/classes/datatypes/ezurl/ezurl.php\' );' . "\n" . '%tmp1% = %1%; ' . "\n" . '%tmp2% = eZURL::urlByMD5( md5( %tmp1% ) );' . "\n" . 'if ( %tmp2% == false )' . "\n" . ' eZURL::registerURL( %tmp1% );' . "\n" . 'else' . "\n" . ' %tmp1% = %tmp2%;' . "\n"; ++$tmpCount; $useTmp = true; } else { $values[] = $parameters[0]; $code .= '//include_once( \'kernel/classes/datatypes/ezurl/ezurl.php\' );' . "\n" . '%tmp1% = eZURL::urlByMD5( md5( %1% ) );' . "\n" . 'if ( %tmp1% == false )' . "\n" . ' eZURL::registerURL( %1% );' . "\n" . 'else' . "\n" . ' %1% = %tmp1%;' . "\n"; } } ++$tmpCount; ++$paramCount; break; } $http = eZHTTPTool::instance(); if (isset($http->UseFullUrl) and $http->UseFullUrl) { ++$tmpCount; $code .= '//include_once( \'lib/ezutils/classes/ezhttptool.php\' );' . "\n" . '%tmp' . $tmpCount . '% = eZHTTPTool::instance();' . "\n" . 'if ( isset( %tmp' . $tmpCount . '%->UseFullUrl ) and %tmp' . $tmpCount . '%->UseFullUrl ' . "\n" . ' and strncasecmp( %1%, \'/\' , 1 ) === 0 ) // do not prepend the site path if it\'s not a http url%' . "\n" . '{' . "\n" . ' %1% = %tmp' . $tmpCount . '%->createRedirectUrl( %1%, array( \'pre_url\' => false ) );' . "\n" . '}' . "\n"; } if (count($parameters) > $paramCount) { if (eZTemplateNodeTool::isStaticElement($parameters[$paramCount])) { $quote = '"'; $val = eZTemplateNodeTool::elementStaticValue($parameters[$paramCount]); ++$paramCount; if ($val == 'single') { $quote = "'"; } else { if ($val == 'no') { $quote = false; } } if ($quote !== false) { $values[] = array(eZTemplateNodeTool::createStringElement($quote)); if ($useTmp) { $code .= '%tmp1% = %' . count($values) . '% . %tmp1% . %' . count($values) . '%;' . "\n"; } else { $code .= '%1% = %' . count($values) . '% . %1% . %' . count($values) . '%;' . "\n"; } } } else { $values[] = $parameters[$paramCount]; if ($useTmp) { $code .= 'switch (%' . count($values) . '%)' . "\n" . '{' . "\n" . ' case \'single\':' . "\n" . ' %tmp1% = \'\\\'\' . %tmp1% . \'\\\'\' ;' . "\n" . ' break;' . "\n" . ' case \'no\':' . "\n" . ' break;' . "\n" . ' default:' . "\n" . ' %tmp1 = \'"\' . %tmp1% . \'"\' ;' . "\n" . '}' . "\n"; } else { $code .= 'switch (%' . count($values) . '%)' . "\n" . '{' . "\n" . ' case \'single\':' . "\n" . ' %1% = \'\\\'\' . %1% . \'\\\'\' ;' . "\n" . ' break;' . "\n" . ' case \'no\':' . "\n" . ' break;' . "\n" . ' default:' . "\n" . ' %1% = \'"\' . %1% . \'"\' ;' . "\n" . '}' . "\n"; } } } else { $quote = '"'; $values[] = array(eZTemplateNodeTool::createStringElement($quote)); if ($useTmp) { $code .= '%tmp1% = %' . count($values) . '% . %tmp1% . %' . count($values) . '%;' . "\n"; } else { $code .= '%1% = %' . count($values) . '% . %1% . %' . count($values) . '%;' . "\n"; } } if ($useTmp) { $code .= '%output% = %tmp1%;' . "\n"; } else { $code .= '%output% = %1%;' . "\n"; } $newElements[] = eZTemplateNodeTool::createCodePieceElement($code, $values, false, $tmpCount); return $newElements; }
} while (is_object($var3) and method_exists($var3, 'templateValue')) { $var3 = $var3->templateValue(); } while (is_object($var3) and method_exists($var3, 'templateValue')) { $var3 = $var3->templateValue(); } $var1 = 'stylesheets/skins/' . $var3 . '/dialog.css'; unset($var3); if (!isset($var1)) { $var1 = NULL; } while (is_object($var1) and method_exists($var1, 'templateValue')) { $var1 = $var1->templateValue(); } $var1 = eZURLOperator::eZDesign($tpl, $var1, "ezdesign"); $var1 = '"' . $var1 . '"'; $var = $var1; unset($var1); if (!isset($var)) { $var = NULL; } while (is_object($var) and method_exists($var, 'templateValue')) { $var = $var->templateValue(); } $text .= $var; unset($var); $text .= ', //popup_css_add : "/design/admin2/stylesheets/core.css", gecko_spellcheck : true, table_inline_editing : true, // table edit controlls in gecko
/** * Returns the full URL of the tag icon image * * @static * * @param string $icon * @param string $size * * @return string */ public static function getTagIcon($icon, $size = 'small') { return eZURLOperator::eZImage(null, 'tag_icons/' . $size . '/' . $icon, 'ezimage'); }