[ Index ]

PHP Cross Reference of Joomla 1.5.26 DE

title

Body

[close]

/libraries/pattemplate/patTemplate/Modifier/ -> Surround.php (source)

   1  <?PHP
   2  /**
   3   * patTemplate modfifier Surround
   4   *
   5   * $Id: Surround.php 10381 2008-06-01 03:35:53Z pasamio $
   6   *
   7   * @package        patTemplate
   8   * @subpackage    Modifiers
   9   * @author        Stephan Schmidt <schst@php.net>
  10   */
  11  
  12  // Check to ensure this file is within the rest of the framework
  13  defined('JPATH_BASE') or die();
  14  
  15  /**
  16   * patTemplate modfifier Surround
  17   *
  18   * splits a text and surrunds each part by custom start and end strings
  19   *
  20   * Possible attributes are:
  21   * - delimiter (string)
  22   * - start (string)
  23   * - end (string)
  24   * - keepdelimiter (yes|no) default: no
  25   * - withfirst (yes|no) default: yes
  26   * - withlast (yes|no) default: yes
  27   *
  28   *
  29   * @package        patTemplate
  30   * @subpackage    Modifiers
  31   * @author        gERD Schaufelberger <gerd@php-tools.net>
  32   * @version        0.2
  33   */
  34  class patTemplate_Modifier_Surround extends patTemplate_Modifier
  35  {
  36      /**
  37      * modify the value
  38      *
  39      * @access    public
  40      * @param    string        value
  41      * @return    string        modified value
  42      */
  43  	function modify( $value, $params = array() )
  44      {
  45          // set default values
  46          $delimiter    =    "\n";
  47          $start        =    '';
  48          $end        =    '';
  49  
  50          // where to split
  51          if( isset( $params['delimiter'] ) )
  52          {
  53              $delimiter    =    $params['delimiter'];
  54          }
  55  
  56          if( isset( $params['start'] ) )
  57          {
  58              $start    =    $params['start'];
  59          }
  60  
  61          if( isset( $params['end'] ) )
  62          {
  63              $end    =    $params['end'];
  64          }
  65  
  66          // append the delimiter?
  67          if( isset( $params['keepdelimiter'] ) && $params['keepdelimiter'] === 'yes' )
  68          {
  69              $end    .=    $delimiter;
  70          }
  71  
  72          $split    =    explode( $delimiter, $value );
  73          $value    =    implode( $end . $start, $split );
  74  
  75          // add first?
  76          if( !isset( $params['withfirst'] ) || $params['withfirst'] !== 'no' )
  77          {
  78              $value    =    $start . $value;
  79          }
  80  
  81          // add last?
  82          if( !isset( $params['withlast'] ) || $params['withlast'] !== 'no' )
  83          {
  84              $value    .=    $end;
  85          }
  86  
  87          return $value;
  88      }
  89  }
  90  ?>


Generated: Wed Mar 28 15:54:07 2012 Cross-referenced by PHPXref 0.7.1