PHP Classes

File: Smarty/libs/sysplugins/smarty_internal_compile_append.php

Recommend this page to a friend!
  Classes of Isaac Trenado Mx   FDSSmarty   Smarty/libs/sysplugins/smarty_internal_compile_append.php   Download  
File: Smarty/libs/sysplugins/smarty_internal_compile_append.php
Role: Auxiliary script
Content type: text/plain
Description: Auxiliary script
Class: FDSSmarty
Load and display views using Smarty
Author: By
Last change:
Date: 9 years ago
Size: 1,566 bytes
 

Contents

Class file image Download
<?php
/**
 * Smarty Internal Plugin Compile Append
 *
 * Compiles the {append} tag
 *
 * @package Smarty
 * @subpackage Compiler
 * @author Uwe Tews
 */

/**
 * Smarty Internal Plugin Compile Append Class
 *
 * @package Smarty
 * @subpackage Compiler
 */
class Smarty_Internal_Compile_Append extends Smarty_Internal_Compile_Assign
{
   
/**
     * Compiles code for the {append} 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
     */
   
public function compile($args, $compiler, $parameter)
    {
       
// the following must be assigned at runtime because it will be overwritten in parent class
       
$this->required_attributes = array('var', 'value');
       
$this->shorttag_order = array('var', 'value');
       
$this->optional_attributes = array('scope', 'index');
       
// check and get attributes
       
$_attr = $this->getAttributes($compiler, $args);
       
// map to compile assign attributes
       
if (isset($_attr['index'])) {
           
$_params['smarty_internal_index'] = '[' . $_attr['index'] . ']';
            unset(
$_attr['index']);
        } else {
           
$_params['smarty_internal_index'] = '[]';
        }
       
$_new_attr = array();
        foreach (
$_attr as $key => $value) {
           
$_new_attr[] = array($key => $value);
        }
       
// call compile assign
       
return parent::compile($_new_attr, $compiler, $_params);
    }

}