function smarty_block_mtmbif($args, $content, &$ctx, &$repeat)
{
    if (isset($args['name'])) {
        $name = $args['name'];
    }
    $var = $ctx->__stash['vars'][$name];
    if (!$var) {
        $var = $ctx->__stash['vars'][strtolower($name)];
    }
    if (!$var) {
        return $ctx->_hdlr_if($args, $content, $ctx, $repeat, FALSE);
    }
    if (is_array($var)) {
        if (array_values($var) === $var) {
            return $ctx->_hdlr_if($args, $content, $ctx, $repeat, TRUE);
        }
    }
    foreach ($args as $key => $value) {
        if (strpos($value, '$') === 0) {
            $value = preg_replace('/^\\$/', '', $name);
            $_value = $ctx->__stash['vars'][$value];
            if (!$_value) {
                $_value = $ctx->__stash['vars'][strtolower($value)];
            }
            $args[$key] = $_value;
        }
    }
    $this_tag = $ctx->this_tag();
    if ($this_tag == 'mtmbif') {
        require_once 'block.mtif.php';
        return smarty_block_mtif($args, $content, $ctx, $repeat);
    } else {
        if ($this_tag == 'mtmbunless') {
            require_once 'block.mtunless.php';
            return smarty_block_mtunless($args, $content, $ctx, $repeat);
        } else {
            return $ctx->_hdlr_if($args, $content, $ctx, $repeat, FALSE);
        }
    }
}
Example #2
0
 function smarty_block_else($args, $content, &$ctx, &$repeat)
 {
     if (isset($ctx->_tpl_vars['elseif_content']) or $ctx->_tpl_vars['conditional']) {
         $repeat = false;
         return '';
     }
     if (count($args) > 0 && (!isset($args['name']) && !isset($args['var']) && !isset($args['tag']))) {
         $stash =& $ctx->__stash;
         if (array_key_exists('__cond_tag__', $stash)) {
             $tag = $stash['__cond_tag__'];
             if (isset($tag) && $tag) {
                 $args['tag'] = $tag;
             }
         } else {
             if (array_key_exists('__cond_name__', $stash)) {
                 $name = $stash['__cond_name__'];
                 if (isset($name) && $name) {
                     $args['name'] = $name;
                 }
             }
         }
         if (array_key_exists('__cond_value__', $stash)) {
             $value = $stash['__cond_value__'];
             if (isset($value) && $value) {
                 $args['value'] = $value;
             }
         }
     }
     if (count($args) >= 1) {
         # else-if case
         require_once "block.mtif.php";
         $args['elseif'] = 1;
         if (!isset($content)) {
             $out = smarty_block_mtif($args, $content, $ctx, $repeat);
             if ($ctx->_tpl_vars['conditional']) {
                 $ctx->_tpl_vars['elseif_conditional'] = 1;
                 unset($ctx->_tpl_vars['conditional']);
             }
         } else {
             // $out = smarty_block_mtif($args, $content, $ctx, $repeat);
             if ($ctx->_tpl_vars['elseif_conditional']) {
                 $ctx->_tpl_vars['elseif_content'] = $content;
                 $ctx->_tpl_vars['conditional'] = 1;
             }
         }
         return '';
     }
     if (!isset($content)) {
         if ($ctx->_tpl_vars['conditional']) {
             $repeat = false;
         }
     } else {
         $else_content = $ctx->_tpl_vars['else_content'];
         $else_content .= $content;
         $ctx->_tpl_vars['else_content'] = $else_content;
     }
     return '';
 }