2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< ? php  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  Smarty  Internal  Plugin  Compile  If 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Compiles  the  { if }  { else }  { elseif }  { / if }  tags 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ package     Smarty 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ subpackage  Compiler 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ author      Uwe  Tews 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-08-17 15:39:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  Smarty  Internal  Plugin  Compile  If  Class 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ package     Smarty 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ subpackage  Compiler 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  Smarty_Internal_Compile_If  extends  Smarty_Internal_CompileBase  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    /** 
							 
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								     *  Compiles  code  for  the  { if }  tag 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ param  array   $args       array  with  attributes  from  parser 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ param  object  $compiler   compiler  object 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ param  array   $parameter  array  with  compilation  parameter 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ return  string  compiled  code 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-11-11 21:34:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    public  function  compile ( $args ,  $compiler ,  $parameter ) 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // check and get attributes
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        $_attr  =  $this -> getAttributes ( $compiler ,  $args ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        $this -> openTag ( $compiler ,  'if' ,  array ( 1 ,  $compiler -> nocache )); 
							 
						 
					
						
							
								
									
										
										
										
											2010-11-11 21:34:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // must whole block be nocache ?
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        $compiler -> nocache  =  $compiler -> nocache  |  $compiler -> tag_nocache ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-01 20:27:53 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        if  ( ! array_key_exists ( " if condition " ,  $parameter ))  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-01 20:27:53 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            $compiler -> trigger_template_error ( " missing if condition " ,  $compiler -> lex -> taglineno ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-11-11 21:34:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        if  ( is_array ( $parameter [ 'if condition' ]))  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            if  ( $compiler -> nocache )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                $_nocache  =  ',true' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                // create nocache var to make it know for further compiling
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                if  ( is_array ( $parameter [ 'if condition' ][ 'var' ]))  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-19 22:47:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    $var  =  trim ( $parameter [ 'if condition' ][ 'var' ][ 'var' ],  " ' " ); 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                }  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-19 22:47:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    $var  =  trim ( $parameter [ 'if condition' ][ 'var' ],  " ' " ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                 } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                if  ( isset ( $compiler -> template -> tpl_vars [ $var ]))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    $compiler -> template -> tpl_vars [ $var ] -> nocache  =  true ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                }  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    $compiler -> template -> tpl_vars [ $var ]  =  new  Smarty_Variable ( null ,  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            }  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                $_nocache  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
									
										
										
										
											2010-11-24 19:38:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            if  ( is_array ( $parameter [ 'if condition' ][ 'var' ]))  { 
							 
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                $_output  =  " <?php if (!isset( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ][ 'var' ]  .  " ]) || !is_array( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ][ 'var' ]  .  " ]->value))  \$ _smarty_tpl->createLocalArrayVariable( "  .  $parameter [ 'if condition' ][ 'var' ][ 'var' ]  .  " $_nocache ); \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                $_output  .=  " if ( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ][ 'var' ]  .  " ]->value "  .  $parameter [ 'if condition' ][ 'var' ][ 'smarty_internal_index' ]  .  "  =  "  .  $parameter [ 'if condition' ][ 'value' ]  .  " )  { ?> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-11-24 19:38:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            }  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                $_output  =  " <?php if (!isset( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ]  .  " ]))  \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ]  .  " ] = new Smarty_Variable(null { $_nocache } ); " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                $_output  .=  " if ( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ]  .  " ]->value =  "  .  $parameter [ 'if condition' ][ 'value' ]  .  " )  { ?> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            return  $_output ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            return  " <?php if ( { $parameter [ 'if condition' ] } )  { ?> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  Smarty  Internal  Plugin  Compile  Else  Class 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ package     Smarty 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ subpackage  Compiler 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  Smarty_Internal_Compile_Else  extends  Smarty_Internal_CompileBase  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    /** 
							 
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								     *  Compiles  code  for  the  { else }  tag 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ param  array   $args       array  with  attributes  from  parser 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ param  object  $compiler   compiler  object 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ param  array   $parameter  array  with  compilation  parameter 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ return  string  compiled  code 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-11-11 21:34:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    public  function  compile ( $args ,  $compiler ,  $parameter ) 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        list ( $nesting ,  $compiler -> tag_nocache )  =  $this -> closeTag ( $compiler ,  array ( 'if' ,  'elseif' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        $this -> openTag ( $compiler ,  'else' ,  array ( $nesting ,  $compiler -> tag_nocache )); 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        return  " <?php } else  {  ?> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  Smarty  Internal  Plugin  Compile  ElseIf  Class 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ package     Smarty 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ subpackage  Compiler 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  Smarty_Internal_Compile_Elseif  extends  Smarty_Internal_CompileBase  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    /** 
							 
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								     *  Compiles  code  for  the  { elseif }  tag 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ param  array   $args       array  with  attributes  from  parser 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ param  object  $compiler   compiler  object 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ param  array   $parameter  array  with  compilation  parameter 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ return  string  compiled  code 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-11-11 21:34:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    public  function  compile ( $args ,  $compiler ,  $parameter ) 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // check and get attributes
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        $_attr  =  $this -> getAttributes ( $compiler ,  $args ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list ( $nesting ,  $compiler -> tag_nocache )  =  $this -> closeTag ( $compiler ,  array ( 'if' ,  'elseif' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        if  ( ! array_key_exists ( " if condition " ,  $parameter ))  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-01 20:27:53 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            $compiler -> trigger_template_error ( " missing elseif condition " ,  $compiler -> lex -> taglineno ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        if  ( is_array ( $parameter [ 'if condition' ]))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            $condition_by_assign  =  true ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            if  ( $compiler -> nocache )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                $_nocache  =  ',true' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                // create nocache var to make it know for further compiling
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                if  ( is_array ( $parameter [ 'if condition' ][ 'var' ]))  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-19 22:47:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    $var  =  trim ( $parameter [ 'if condition' ][ 'var' ][ 'var' ],  " ' " ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                }  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    $var  =  trim ( $parameter [ 'if condition' ][ 'var' ],  " ' " ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                if  ( isset ( $compiler -> template -> tpl_vars [ $var ]))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    $compiler -> template -> tpl_vars [ $var ] -> nocache  =  true ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                }  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-19 22:47:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    $compiler -> template -> tpl_vars [ $var ]  =  new  Smarty_Variable ( null ,  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            }  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                $_nocache  =  '' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            $condition_by_assign  =  false ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  ( empty ( $compiler -> prefix_code ))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            if  ( $condition_by_assign )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                $this -> openTag ( $compiler ,  'elseif' ,  array ( $nesting  +  1 ,  $compiler -> tag_nocache )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                if  ( is_array ( $parameter [ 'if condition' ][ 'var' ]))  { 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    $_output  =  " <?php } else  {  if (!isset( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ][ 'var' ]  .  " ]) || !is_array( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ][ 'var' ]  .  " ]->value))  \$ _smarty_tpl->createLocalArrayVariable( "  .  $parameter [ 'if condition' ][ 'var' ][ 'var' ]  .  " $_nocache ); \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    $_output  .=  " if ( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ][ 'var' ]  .  " ]->value "  .  $parameter [ 'if condition' ][ 'var' ][ 'smarty_internal_index' ]  .  "  =  "  .  $parameter [ 'if condition' ][ 'value' ]  .  " )  { ?> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                }  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    $_output  =  " <?php  } else  {  if (!isset( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ]  .  " ]))  \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ]  .  " ] = new Smarty_Variable(null { $_nocache } ); " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    $_output  .=  " if ( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ]  .  " ]->value =  "  .  $parameter [ 'if condition' ][ 'value' ]  .  " )  { ?> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                } 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                return  $_output ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            }  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                $this -> openTag ( $compiler ,  'elseif' ,  array ( $nesting ,  $compiler -> tag_nocache )); 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                return  " <?php } elseif ( { $parameter [ 'if condition' ] } )  { ?> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        }  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            $tmp  =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            foreach  ( $compiler -> prefix_code  as  $code )  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-13 02:06:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                $tmp  =  $compiler -> appendCode ( $tmp ,  $code ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           } 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            $compiler -> prefix_code  =  array (); 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-13 02:06:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            $tmp  =  $compiler -> appendCode ( " <?php } else  { ?> " ,  $tmp ); 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            $this -> openTag ( $compiler ,  'elseif' ,  array ( $nesting  +  1 ,  $compiler -> tag_nocache )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            if  ( $condition_by_assign )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                if  ( is_array ( $parameter [ 'if condition' ][ 'var' ]))  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-13 02:06:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    $_output  =  $compiler -> appendCode ( $tmp ,  " <?php  if (!isset( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ][ 'var' ]  .  " ]) || !is_array( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ][ 'var' ]  .  " ]->value))  \$ _smarty_tpl->createLocalArrayVariable( "  .  $parameter [ 'if condition' ][ 'var' ][ 'var' ]  .  " $_nocache ); \n " ); 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    $_output  .=  " if ( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ][ 'var' ]  .  " ]->value "  .  $parameter [ 'if condition' ][ 'var' ][ 'smarty_internal_index' ]  .  "  =  "  .  $parameter [ 'if condition' ][ 'value' ]  .  " )  { ?> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                }  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-13 02:06:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    $_output  =  $compiler -> appendCode ( $tmp ,  " <?php if (!isset( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ]  .  " ]))  \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ]  .  " ] = new Smarty_Variable(null { $_nocache } ); " ); 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                    $_output  .=  " if ( \$ _smarty_tpl->tpl_vars[ "  .  $parameter [ 'if condition' ][ 'var' ]  .  " ]->value =  "  .  $parameter [ 'if condition' ][ 'value' ]  .  " )  { ?> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                } 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                return  $_output ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            }  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-13 02:06:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                return  $compiler -> appendCode ( $tmp ,  " <?php if ( { $parameter [ 'if condition' ] } )  { ?> " ); 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  Smarty  Internal  Plugin  Compile  Ifclose  Class 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ package     Smarty 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ subpackage  Compiler 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  Smarty_Internal_Compile_Ifclose  extends  Smarty_Internal_CompileBase  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    /** 
							 
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								     *  Compiles  code  for  the  { / if }  tag 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ param  array   $args       array  with  attributes  from  parser 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ param  object  $compiler   compiler  object 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ param  array   $parameter  array  with  compilation  parameter 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     *  @ return  string  compiled  code 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								     */ 
							 
						 
					
						
							
								
									
										
										
										
											2010-11-11 21:34:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    public  function  compile ( $args ,  $compiler ,  $parameter ) 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // must endblock be nocache?
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  ( $compiler -> nocache )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            $compiler -> tag_nocache  =  true ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list ( $nesting ,  $compiler -> nocache )  =  $this -> closeTag ( $compiler ,  array ( 'if' ,  'else' ,  'elseif' )); 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-06 14:35:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        $tmp  =  '' ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-06-06 02:40:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        for  ( $i  =  0 ;  $i  <  $nesting ;  $i  ++ )  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            $tmp  .=  '}' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-14 22:15:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-01-14 20:57:27 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        return  " <?php  { $tmp } ?> " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-16 14:19:56 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}