本文整理汇总了PHP中Zikula_View类的典型用法代码示例。如果您正苦于以下问题:PHP Zikula_View类的具体用法?PHP Zikula_View怎么用?PHP Zikula_View使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Zikula_View类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: smarty_function_modapifunc
/**
* Zikula_View function to to execute a module API function
*
* This function calls a calls a specific module API function. It returns whatever the return
* value of the resultant function is if it succeeds.
* Note that in contrast to the API function ModUtil::apiFunc you need not to load the
* module API with ModUtil::loadApi.
*
*
* Available parameters:
* - modname: The well-known name of a module to execute a function from (required)
* - type: The type of function to execute; currently one of 'user' or 'admin' (default is 'user')
* - func: The name of the module function to execute (default is 'main')
* - assign: The name of a variable to which the results are assigned
* - all remaining parameters are passed to the module API function
*
* Examples
* {modapifunc modname='News' type='user' func='get' sid='3'}
*
* {modapifunc modname='foobar' type='user' func='getfoo' id='1' assign='myfoo'}
* {$myfoo.title}
*
* @param array $params All attributes passed to this function from the template.
* @param Zikula_View $view Reference to the Zikula_View object.
*
* @see function.modfunc.php::smarty_function_modfunc()
*
* @return string The results of the module API function.
*/
function smarty_function_modapifunc($params, Zikula_View $view)
{
$assign = isset($params['assign']) ? $params['assign'] : null;
$func = isset($params['func']) && $params['func'] ? $params['func'] : 'main';
$modname = isset($params['modname']) ? $params['modname'] : null;
$type = isset($params['type']) && $params['type'] ? $params['type'] : 'user';
// avoid passing these to ModUtil::apiFunc
unset($params['modname']);
unset($params['type']);
unset($params['func']);
unset($params['assign']);
if (!$modname) {
$view->trigger_error(__f('Error! in %1$s: the %2$s parameter must be specified.', array('modapifunc', 'modname')));
return false;
}
if (isset($params['modnamefunc'])) {
$params['modname'] = $params['modnamefunc'];
unset($params['modnamefunc']);
}
$result = ModUtil::apiFunc($modname, $type, $func, $params);
if ($assign) {
$view->assign($assign, $result);
} else {
return $result;
}
}
示例2: smarty_function_modgetvar
/**
* Zikula_View function to get module variable
*
* This function obtains a module-specific variable from the Zikula system.
*
* Note that the results should be handled by the safetext or the safehtml
* modifier before being displayed.
*
*
* Available parameters:
* - module: The well-known name of a module from which to obtain the variable
* - name: The name of the module variable to obtain
* - assign: If set, the results are assigned to the corresponding variable instead of printed out
* - html: If true then result will be treated as html content
* - default: The default value to return if the config variable is not set
*
* Example
* {modgetvar module='Example' name='foobar' assign='foobarOfExample'}
*
* @param array $params All attributes passed to this function from the template.
* @param Zikula_View $view Reference to the Zikula_View object.
*
* @return string The module variable.
*/
function smarty_function_modgetvar($params, Zikula_View $view)
{
$assign = isset($params['assign']) ? $params['assign'] : null;
$default = isset($params['default']) ? $params['default'] : null;
$module = isset($params['module']) ? $params['module'] : null;
$html = isset($params['html']) ? (bool) $params['html'] : false;
$name = isset($params['name']) ? $params['name'] : null;
if (!$module) {
$view->trigger_error(__f('Error! in %1$s: the %2$s parameter must be specified.', array('modgetvar', 'module')));
return false;
}
if (!$name && !$assign) {
$view->trigger_error(__f('Error! in %1$s: the %2$s parameter must be specified.', array('modgetvar', 'name')));
return false;
}
if (!$name) {
$result = ModUtil::getVar($module);
} else {
$result = ModUtil::getVar($module, $name, $default);
}
if ($assign) {
$view->assign($assign, $result);
} else {
if ($html) {
return DataUtil::formatForDisplayHTML($result);
} else {
return DataUtil::formatForDisplay($result);
}
}
}
示例3: smarty_function_html_select_modulestylesheets
/**
* Zikula_View function to display a drop down list of module stylesheets.
*
* Available parameters:
* - modname The module name to show the styles for
* - assign: If set, the results are assigned to the corresponding variable instead of printed out
* - id: ID for the control
* - name: Name for the control
* - exclude Comma seperated list of files to exclude (optional)
* - selected: Selected value
*
* @param array $params All attributes passed to this function from the template.
* @param Zikula_View $view Reference to the Zikula_View object.
*
* @return string The value of the last status message posted, or void if no status message exists.
*/
function smarty_function_html_select_modulestylesheets($params, Zikula_View $view)
{
if (!isset($params['modname'])) {
$view->trigger_error(__f('Error! in %1$s: the %2$s parameter must be specified.', array('html_select_modulestylesheets', 'modname')));
return false;
}
if (isset($params['exclude'])) {
$exclude = explode(',', trim($params['exclude']));
unset($params['exclude']);
} else {
$exclude = array();
}
$params['values'] = ModUtil::apiFunc('ZikulaAdminModule', 'admin', 'getmodstyles', array('modname' => $params['modname'], 'exclude' => $exclude));
unset($params['modname']);
$params['output'] = $params['values'];
$assign = isset($params['assign']) ? $params['assign'] : null;
unset($params['assign']);
require_once $view->_get_plugin_filepath('function', 'html_options');
$output = smarty_function_html_options($params, $view);
if (!empty($assign)) {
$view->assign($assign, $output);
} else {
return $output;
}
}
示例4: smarty_function_manuallink
/**
* Zikula_View function to create manual link.
*
* This function creates a manual link from some parameters.
*
* Available parameters:
* - manual: name of manual file, manual.html if not set
* - chapter: an anchor in the manual file to jump to
* - newwindow: opens the manual in a new window using javascript
* - width: width of the window if newwindow is set, default 600
* - height: height of the window if newwindow is set, default 400
* - title: name of the new window if newwindow is set, default is modulename
* - class: class for use in the <a> tag
* - assign: if set, the results ( array('url', 'link') are assigned to the corresponding variable instead of printed out
*
* Example
* {manuallink newwindow=1 width=400 height=300 title=rtfm }
*
* @param array $params All attributes passed to this function from the template.
* @param Zikula_View $view Reference to the Zikula_View object.
*
* @return string|void
*/
function smarty_function_manuallink($params, Zikula_View $view)
{
LogUtil::log(__f('Warning! Template plugin {%1$s} is deprecated.', array('manuallink')), E_USER_DEPRECATED);
$userlang = ZLanguage::transformFS(ZLanguage::getLanguageCode());
$stdlang = System::getVar('language_i18n');
$title = isset($params['title']) ? $params['title'] : 'Manual';
$manual = isset($params['manual']) ? $params['manual'] : 'manual.html';
$chapter = isset($params['chapter']) ? '#' . $params['chapter'] : '';
$class = isset($params['class']) ? 'class="' . $params['class'] . '"' : '';
$width = isset($params['width']) ? $params['width'] : 600;
$height = isset($params['height']) ? $params['height'] : 400;
$modname = ModUtil::getName();
$possibleplaces = array("modules/{$modname}/docs/{$userlang}/manual/{$manual}", "modules/{$modname}/docs/{$stdlang}/manual/{$manual}", "modules/{$modname}/docs/en/manual/{$manual}", "modules/{$modname}/docs/{$userlang}/{$manual}", "modules/{$modname}/docs/{$stdlang}/{$manual}", "modules/{$modname}/docs/lang/en/{$manual}");
foreach ($possibleplaces as $possibleplace) {
if (file_exists($possibleplace)) {
$url = $possibleplace . $chapter;
break;
}
}
if (isset($params['newwindow'])) {
$link = "<a {$class} href='#' onclick=\"window.open( '" . DataUtil::formatForDisplay($url) . "' , '" . DataUtil::formatForDisplay($modname) . "', 'status=yes,scrollbars=yes,resizable=yes,width={$width},height={$height}'); picwin.focus();\">" . DataUtil::formatForDisplayHTML($title) . "</a>";
} else {
$link = "<a {$class} href=\"" . DataUtil::formatForDisplay($url) . "\">" . DataUtil::formatForDisplayHTML($title) . "</a>";
}
if (isset($params['assign'])) {
$ret = array('url' => $url, 'link' => $link);
$view->assign($params['assign'], $ret);
return;
} else {
return $link;
}
}
示例5: smarty_block_switch
/**
* Zikula_View switch block.
*
* Available attributes:
* - expr (string|numeric) The variable to be tested against each of the
* {@link smarty_block_case() case} expressions.
*
* Example:
* <pre>
* {switch expr=$var}
* {case expr='1'}
* do some stuff for case $var == '1'
* {/case}
* {case expr='2'}
* do some stuff for case $var == '2'
* {/case}
* {case}
* default stuff
* {/case}
* {/switch}
* </pre>.
*
* @param array $params All attributes passed to this function from the template.
* @param string $content The content between the block tags.
* @param Zikula_View $view Reference to the {@link Zikula_View} object.
* @param mixed &$pages Pages?.
*
* @see smarty_block_case.
*
* @todo Document the &$pages parameter, or correct it (possibly &$repeat?).
*
* @return string The content of the matching case.
*/
function smarty_block_switch($params, $content, Zikula_View $view, &$pages)
{
if (is_null($content) && !array_key_exists('expr', $params)) {
$view->trigger_error(__f('Error! in %1$s: the %2$s parameter must be specified.', array('smarty_block_switch', 'expr')));
}
return $content;
}
示例6: smarty_function_callfunc
/**
* Zikula_View function to to execute a PHP callable.
*
* This plugin can call any PHP callable using x_class + x_method OR x_function
* with a list of argument/value pairs.
*
*
* Available parameters:
* - x_class: The well-known name of a module to execute a function from (required)
* - x_method: The type of function to execute; currently one of 'user' or 'admin' (default is 'user')
* - x_function: The name of the module function to execute (default is 'main')
* - x_assign: If set, the results are assigned to the corresponding variable instead of printed out
* - all remaining parameters are passed to the callable.
*
* Based on call_user_func_array()
*
* Example
* {callfunc x_class='Foo' x_method='Bar' name='Jane'}
* {callfunc x_method='Something' age=21 name='Jane'}
*
* @param array $params All attributes passed to this function from the template.
* @param Zikula_View $view Reference to the Zikula_View object.
*
* @return mixed The results of the callable.
*/
function smarty_function_callfunc($params, Zikula_View $view)
{
$assign = (isset($params['x_assign']) && !empty($params['x_assign'])) ? $params['x_assign'] : '';
if (array_key_exists('x_class', $params)) {
$class = $params['x_class'];
$method = $params['x_method'];
} else if (array_key_exists('x_function', $params)) {
$function = $params['x_function'];
} else {
$view->trigger_error(__f('Error! in %1$s: the "class" and "method" parameter must be specified together or just "function" by itself.', array('calluserfunc', 'modname')));
}
$callable = (isset($class)) ? array($class, $method) : $function;
unset($params['x_class']);
unset($params['x_method']);
unset($params['x_function']);
unset($params['x_assign']);
$result = call_user_func_array($callable, $params);
if ($assign) {
$view->assign($assign, $result);
} else {
return $result;
}
}
示例7: smarty_function_getImage
/**
* Smarty function to return first image src from given HTML content.
*
* Examples
* {getImage htmlcontent=$item.body}
* {getImage htmlcontent=$item.body putbaseurl=true}
* {getImage htmlcontent=$item.body putbaseurl=true assign='imagesrc'}
*
* @return string
*/
function smarty_function_getImage($params, Zikula_View $view)
{
$result = $params['htmlcontent'];
if (isset($params['htmlcontent']) && $params['htmlcontent']) {
if (strpos($params['htmlcontent'], '<img ') === false) {
// image is not found in content
} else {
// get image src
$posstart = strpos($params['htmlcontent'], ' src="', $posstart) + 6;
$posend = strpos($params['htmlcontent'], '"', $posstart);
$result = substr($params['htmlcontent'], $posstart, $posend - $posstart);
if (isset($params['putbaseurl']) && $params['putbaseurl']) {
// put base url, if not
if (substr($result, 0, 7) != 'http://' || substr($result, 0, 8) != 'https://') {
$result = System::getBaseUrl() . ltrim($result, DIRECTORY_SEPARATOR);
}
}
}
}
if (isset($params['assign'])) {
$view->assign($params['assign'], $result);
} else {
return $result;
}
}
示例8: smarty_function_html_select_languages
/**
* Zikula_View function to display a drop down list of languages
*
* Available parameters:
* - assign: If set, the results are assigned to the corresponding variable instead of printed out
* - name: Name for the control
* - id: ID for the control
* - selected: Selected value
* - installed: if set only show languages existing in languages folder
* - all: show dummy entry '_ALL' on top of the list with empty value
*
* Example
* {html_select_languages name=language selected=en}
*
* @param array $params All attributes passed to this function from the template.
* @param Zikula_View $view Reference to the Zikula_View object.
*
* @deprecated smarty_function_html_select_locales()
* @return string The value of the last status message posted, or void if no status message exists.
*/
function smarty_function_html_select_languages($params, Zikula_View $view)
{
if (!isset($params['name']) || empty($params['name'])) {
$view->trigger_error(__f('Error! in %1$s: the %2$s parameter must be specified.', array('html_select_languages', 'name')));
return false;
}
require_once $view->_get_plugin_filepath('function', 'html_options');
$params['output'] = array();
$params['values'] = array();
if (isset($params['all']) && $params['all']) {
$params['values'][] = '';
$params['output'][] = DataUtil::formatForDisplay(__('All'));
unset($params['all']);
}
if (isset($params['installed']) && $params['installed']) {
$languagelist = ZLanguage::getInstalledLanguageNames();
unset($params['installed']);
} else {
$languagelist = ZLanguage::languageMap();
}
$params['output'] = array_merge($params['output'], DataUtil::formatForDisplay(array_values($languagelist)));
$params['values'] = array_merge($params['values'], DataUtil::formatForDisplay(array_keys($languagelist)));
$assign = isset($params['assign']) ? $params['assign'] : null;
unset($params['assign']);
$html_result = smarty_function_html_options($params, $view);
if (!empty($assign)) {
$view->assign($assign, $html_result);
} else {
return $html_result;
}
}
示例9: smarty_function_array_field_isset
/**
* Check if an array element (subscript) is set.
*
* Available attributes:
* - array (array) an array template variable
* - field (string) the value of a key in the array specified above
* - returnValue (bool|int) if set, then the contents of the array element
* $array[$field] is returned if it is set, otherwise false is returned
* - assign (string) (optional) if provided, a template variable with
* the specified name is set with the return value,
* instead of returning the value to the template
*
* Examples:
*
* Return true to the template if the template variable $myarray['arraykey']
* is set, otherwise return false to the template:
*
* <samp>{array_field_isset array=$myarray field='arraykey'}</samp>
*
* Return the value of the template variable $myarray['arraykey'] to the
* template if it is set, otherwise return false to the template:
*
* <samp>{array_field_isset array=$myarray field='arraykey' returnValue=1}</samp>
*
* Assign true to the template variable $myValue if the template variable
* $myarray['arraykey'] is set, otherwise set $myValue to false:
*
* <samp>{array_field_isset array=$myarray field='arraykey' assign='myValue'}</samp>
*
* Assign the value of the template variable $myarray['arraykey'] to the
* template variable $myValue if it is set, otherwise assign false to $myValue:
*
* <samp>{array_field_isset array=$myarray field='arraykey' returnValue=1 assign='myValue'}</samp>
*
* @param array $params All attributes passed to this function from the template.
* @param Zikula_View $view Reference to the {@link Zikula_View} object.
*
* @return boolean|mixed if returnValue is not set, then returns true if the array
* element is set, otherwise false; if returnValue is set,
* then returns the value of the array element if it is set,
* otherwise false.
*/
function smarty_function_array_field_isset($params, Zikula_View $view)
{
LogUtil::log(__f('Warning! Template plugin {%1$s} is deprecated, please use {%2$s} instead.', array('array_field_isset returnValue=1 ...', 'array_field ...')), E_USER_DEPRECATED);
$array = isset($params['array']) ? $params['array'] : null;
$field = isset($params['field']) ? $params['field'] : null;
$returnValue = isset($params['returnValue']) ? $params['returnValue'] : null;
$assign = isset($params['assign']) ? $params['assign'] : null;
if ($array === null) {
$view->trigger_error(__f('Error! in %1$s: the %2$s parameter must be specified.', array('array_field_isset', 'array')));
return false;
}
if ($field === null) {
$view->trigger_error(__f('Error! in %1$s: the %2$s parameter must be specified.', array('array_field_isset', 'field')));
return false;
}
$result = isset($array[$field]);
if ($result && $returnValue) {
$result = $array[$field];
}
if ($assign) {
$view->assign($assign, $result);
} else {
return $result;
}
}
示例10: smarty_function_configgetvar
/**
* Obtain and display a configuration variable from the Zikula system.
*
* Available attributes:
* - name (string) The name of the configuration variable to obtain
* - html (bool) If set, the output is prepared for display by
* DataUtil::formatForDisplayHTML instead of
* DataUtil::formatForDisplay
* - assign (string) the name of a template variable to assign the
* output to, instead of returning it to the template. (optional)
*
* <i>Note that if the the result is assigned to a template variable, it is not
* prepared for display by either DataUtil::formatForDisplayHTML or
* DataUtil::formatForDisplay. If it is to be displayed, the safetext
* modifier should be used.</i>
*
* Examples:
*
* <samp><p>Welcome to {configgetvar name='sitename'}!</p></samp>
*
* <samp>{configgetvar name='sitename' assign='thename'}</samp><br>
* <samp><p>Welcome to {$thename|safetext}!</p></samp>
*
* @param array $params All attributes passed to this function from the template.
* @param Zikula_View $view Reference to the {@link Zikula_View} object.
*
* @return mixed The value of the configuration variable.
*/
function smarty_function_configgetvar($params, $view)
{
LogUtil::log(__f('Warning! Template plugin {%1$s} is deprecated.', array('configgetvar')), E_USER_DEPRECATED);
$name = isset($params['name']) ? $params['name'] : null;
$default = isset($params['default']) ? $params['default'] : null;
$html = isset($params['html']) ? $params['html'] : null;
$assign = isset($params['assign']) ? $params['assign'] : null;
if (!$name) {
$view->trigger_error(__f('Error! in %1$s: the %2$s parameter must be specified.', array('configgetvar', 'name')));
return false;
}
$result = System::getVar($name, $default);
if ($assign) {
$view->assign($assign, $result);
} else {
if (is_bool($html) && $html) {
return DataUtil::formatForDisplayHTML($result);
} else {
return DataUtil::formatForDisplay($result);
}
}
}
示例11: smarty_function_previewimage
/**
* Zikula_View function to display a preview image from a theme
*
* Available parameters:
* - name name of the theme to display the preview image for
* - name if set, the id assigned to the image
* - size if set, the size of the image to use from small, medium, large (optional: default 'medium')
* - assign if set, the title will be assigned to this variable
*
* Example
* {previewimage name=andreas08 size=large}
*
* @param array $params All attributes passed to this function from the template.
* @param Zikula_View $view Reference to the Zikula_View object.
*
* @see function.title.php::smarty_function_previewimage()
*
* @return string The markup to display the theme image.
*/
function smarty_function_previewimage($params, Zikula_View $view)
{
if (!isset($params['name'])) {
$view->trigger_error(__f('Error! in %1$s: the %2$s parameter must be specified.', array('previewimage', 'name')));
return false;
}
if (!isset($params['size']) || !in_array($params['size'], array('large', 'medium', 'small'))) {
$params['size'] = 'medium';
}
$idstring = '';
if (isset($params['id'])) {
$idstring = " id=\"{$params['id']}\"";
}
$themeinfo = ThemeUtil::getInfo(ThemeUtil::getIDFromName($params['name']));
$theme = ThemeUtil::getTheme($themeinfo['name']);
$themePath = null === $theme ? "themes/{$themeinfo['directory']}/images" : $theme->getRelativePath() . '/Resources/public/images';
if (file_exists("{$themePath}/preview_{$params['size']}.png")) {
$filesrc = "{$themePath}/preview_{$params['size']}.png";
} else {
$filesrc = "system/ThemeModule/Resources/public/images/preview_{$params['size']}.png";
}
$markup = "<img{$idstring} src=\"{$filesrc}\" alt=\"\" />";
if (isset($params['assign'])) {
$view->assign($params['assign'], $markup);
} else {
return $markup;
}
}
示例12: smarty_function_thumb
/**
* Available params:
* - image (string) Path to source image (required)
* - width (int) Thumbnail width in pixels (optional, default value based on 'default' preset)
* - height (int) Thumbnail width in pixels (optional, default value based on 'default' preset)
* - mode (string) Thumbnail mode; 'inset' or 'outset' (optional, default 'inset')
* - extension (string) File extension for thumbnails: jpg, png, gif; null for original file type
* (optional, default value based on 'default' preset)
* - objectid (string) Unique signature for object, which owns this thumbnail (optional)
* - preset (string|object) Name of preset defined in Imagine or custom preset passed as instance of
* SystemPlugin_Imagine_Preset; if given inline options ('width', 'heigth', 'mode'
* and 'extension') are ignored (optional)
* - manager (object) Instance of SystemPlugin_Imagine_Manager; if given inline options ('width',
* 'heigth', 'mode' and 'extension') are ignored (optional)
* - fqurl (boolean) If set the thumb path is absolute, if not relative
* - tag (boolean) If set to true - full <img> tag will be generated. Tag attributes should be
* passed with "img_" prefix (for example: "img_class"). Getttext prefix may be
* used for translations (for example: "__img_alt")
*
* Examples
*
* Basic usage with inline options:
* {thumb image='path/to/image.png' width=100 height=100 mode='inset' extension='jpg'}
*
* Using preset define in Imagine plugin
* {thumb image='path/to/image.png' objectid='123' preset='my_preset'}
*
* Using custom preset, defined in module and passed to template
* {thumb image='path/to/image.png' objectid='123' preset=$preset}
*
* Using custom SystemPlugin_Imagine_Manager instance, defined in module and passed to template
* {thumb image='path/to/image.png' objectid='123' manager=$manager}
*
* Generating full img tag
* {thumb image='path/to/image.png' objectid='123' preset=$preset tag=true __img_alt='Alt text, gettext prefix may be used' img_class='image-class'}
* This will generate:
* <img src="thumb/path" widht="100" height="100" alt="Alt text, gettext prefix may be used" class="image-class" />
*
* @param array $params All attributes passed to this function from the template.
* @param Zikula_View $view Reference to the {@link Zikula_View} object.
*
* @return string thumb path
*/
function smarty_function_thumb($params, Zikula_View $view)
{
if (!isset($params['image']) || empty($params['image'])) {
$view->trigger_error(__f('Error! in %1$s: the %2$s parameter must be specified.', array('smarty_function_thumb', 'image')));
return false;
}
$image = $params['image'];
$objectId = isset($params['objectid']) ? $params['objectid'] : null;
if (isset($params['manager']) && $params['manager'] instanceof SystemPlugin_Imagine_Manager) {
$manager = $params['manager'];
} else {
$manager = $view->getServiceManager()->getService('systemplugin.imagine.manager');
}
if (isset($params['preset']) && $params['preset'] instanceof SystemPlugin_Imagine_Preset) {
$preset = $params['preset'];
} elseif (isset($params['preset']) && $manager->getPlugin()->hasPreset($params['preset'])) {
$preset = $manager->getPlugin()->getPreset($params['preset']);
} else {
$preset = array();
$preset['width'] = isset($params['width']) ? $params['width'] : null;
$preset['height'] = isset($params['height']) ? $params['height'] : null;
$preset['mode'] = isset($params['mode']) ? $params['mode'] : null;
$preset['extension'] = isset($params['extension']) ? $params['extension'] : null;
$preset = array_filter($preset);
}
$manager->setPreset($preset);
$thumb = $manager->getThumb($image, $objectId);
$basePath = (isset($params['fqurl']) && $params['fqurl']) ? System::getBaseUrl() : System::getBaseUri();
$result = "{$basePath}/{$thumb}";
if (isset($params['tag']) && $params['tag']) {
$thumbSize = @getimagesize($thumb);
$attributes = array();
$attributes[] = "src=\"{$basePath}/{$thumb}\"";
$attributes[] = $thumbSize[3]; // width and height
// get tag params
foreach ($params as $key => $value) {
if (strpos($key, 'img_') === 0) {
$key = str_replace('img_', '', $key);
$attributes[$key] = "{$key}=\"{$value}\"";
}
}
if (!isset($attributes['alt'])) {
$attributes[] = 'alt=""';
}
$attributes = implode(' ', $attributes);
$result = "<img {$attributes} />";
}
if (isset($params['assign'])) {
$view->assign($params['assign'], $result);
} else {
//.........这里部分代码省略.........
示例13: smarty_function_notifydisplayhooks
/**
* Zikula_View function notify display hooks.
*
* This function notify display hooks.
*
* Available parameters:
* - 'eventname' The name of the hook event [required].
* - 'id' The ID if the subject.
* - 'urlobject' Zikula_ModUrl instance or null.
* - 'assign' If set, the results array is assigned to the named variable instead display [optional].
* - all remaining parameters are passed to the hook via the args param in the event.
*
* Example:
* {notifydisplayhooks eventname='news.ui_hooks.item.display_view' id=$id urlobject=$urlObject}
* {notifydisplayhooks eventname='news.ui_hooks.item.display_view' id=$id urlobject=$urlObject assign='displayhooks'}
*
* @param array $params All attributes passed to this function from the template.
* @param Zikula_View $view Reference to the Zikula_View object.
*
* @see smarty_function_notifydisplayhooks()
*
* @return string|void if the results are assigned to variable in assigned.
*/
function smarty_function_notifydisplayhooks($params, Zikula_View $view)
{
if (!isset($params['eventname'])) {
return trigger_error(__f('Error! "%1$s" must be set in %2$s', array('eventname', 'notifydisplayhooks')));
}
$eventname = $params['eventname'];
$id = isset($params['id']) ? $params['id'] : null;
$urlObject = isset($params['urlobject']) ? $params['urlobject'] : null;
if ($urlObject && !$urlObject instanceof \Zikula\Core\UrlInterface) {
return trigger_error(__f('Error! "%1$s" must be an instance of %2$s', array('urlobject', '\\Zikula\\Core\\UrlInterface')));
}
$assign = isset($params['assign']) ? $params['assign'] : false;
// create event and notify
$hook = new Zikula_DisplayHook($eventname, $id, $urlObject);
// @todo Zikula_DisplayHook maintains BC. IN 1.5.0 change to \Zikula\Core\Hook\DisplayHook($id, $urlObject);
$view->getContainer()->get('hook_dispatcher')->dispatch($eventname, $hook);
$responses = $hook->getResponses();
// assign results, this plugin does not return any display
if ($assign) {
$view->assign($assign, $responses);
return null;
}
$output = '';
foreach ($responses as $result) {
$output .= "<div class=\"z-displayhook\">{$result}</div>\n";
}
return $output;
}
示例14: smarty_modifier_gt
/**
* Zikula_View modifier to parse gettext string.
*
* Example
*
* {$var|gt:$zikula_view}
*
* @param string $string The contents to transform.
* @param Zikula_View $view This Zikula_View object (available as $renderObject in templates).
*
* @return string The modified output.
*/
function smarty_modifier_gt($string, $view)
{
if (!$view instanceof Zikula_View) {
return __('Error! With modifier_gt, you must use the following form for the gettext modifier (\'gt\'): $var|gt:$zikula_view');
}
return __($string, $view->getDomain());
}
示例15: smarty_function_tree
/**
* Zikula_View function to load Zikula_tree.
*
* Example:
* {tree $menuArray=$your_content imagesDir='yout/path/to/images/'}
*
* @param array $params All attributes passed to this function from the template.
* @param Zikula_View $view Reference to the Zikula_View object.
*
* @return string The results of the module function
*/
function smarty_function_tree($params, Zikula_View $view)
{
$menuString = isset($params['menustring']) ? $params['menustring'] : null;
$menuArray = isset($params['menuarray']) ? $params['menuarray'] : null;
$treeArray = isset($params['treearray']) ? $params['treearray'] : null;
$config = isset($params['config']) ? $params['config'] : array();
if (!isset($menuString) && !isset($menuArray) && !isset($treeArray)) {
$view->trigger_error(__f('Error! in %1$s: %2$s, %3$s or %4$s parameter must be specified.', array('smarty_function_tree', 'menustring', 'menuarray', 'treearray')));
return false;
}
unset($params['menustring']);
unset($params['menuarray']);
unset($params['treearray']);
unset($params['config']);
$config = array_merge($config, (array) $params);
$tree = new Zikula_Tree($config);
if (isset($treeArray)) {
$tree->setTreeData($treeArray);
} elseif (isset($menuArray)) {
$tree->loadArrayData($menuArray);
} else {
$tree->loadStringData($menuString);
}
if (isset($params['assign'])) {
$view->assign($params['assign'], $tree->getHTML());
} else {
return $tree->getHTML();
}
}