Location: PHPKode > scripts > PTAG > ptag/nameTag.php
<?
/*========================================================================================
*  Autor: Reiner Entzminger            Telefon  (0 63 41) 8 43 69
*         Südring 10                   Telefax  (0 63 41) 8 43 69
*         D-76829 Landau               Mobil +49(0)170 7 34 62 72
*
*  http://www.team-entzminger.de       Mail hide@address.com
*=======================================================================================*/

/**
* @const TAG_{NAME} The TagLib {name}
*/
define( "TAG_{NAME}", "{name}Tag" );


   /**
   * Deutsch:
   * Dies ist eine Vorlage für eine TagLib-Klasse. Alle Bezeichnungen in geschweiften Klammern
   * müssen durch den tatsächlichen Namen des Taglibs ersetzt werden. Weitere Erklärungen folgen
   * bei den Methoden.[break]
   * Jedes TagLib ist eine eigene Klasse und bearbeitet nur einen PHP-Tag. Um eine TagLib-Klasse
   * von einer normalen PHP-Klasse abzuheben, erhält jeder Klassenname die Erweiterung "Tag". Der
   * Dateiname der Klasse muss in jedem Fall den gleichen Namen erhalten wie der Klassenname.
   * Alle TagLib-Klassen haben den gleichen Aufbau, unter Umständen mit kleinen Abweichungen. Die
   * Erklärungen dazu folgen.
   * [break][break]
   * English:
   * This is a presentation for a TagLib class. All names in curly clips must be replaced by
   * the actual name of the Taglibs. Broader explanations follow at the methods.[break]
   * Every TagLib is an own class and works on only a PHP tag. To lift a TagLib class of a normal
   * PHP class, every league name receives the expansion "Tag". The file name of the class must get
   * the same name in every case like the league name. All TagLib classes have the same erection
   * under circumstances with small deviations. The statements about this follow.
   *
   * @access  public
   * @author  Reiner Entzminger <hide@address.com>
   * @version 1.00.0001 03/25/2002 22:00
   *
   * @package TagLibs
   */
   class {name}Tag {
      /**
      * {name}Tag
      * Deutsch: Der Konstruktor dient dazu, alle Parameter die für dieses TagLib vorgesehen sind
      * beim erstellen einer Instanz der Klasse zu initialisieren. Siehe auch die Beispiele.
      * Der Konstruktor kann auch entfallen.
      * [break][break]
      * English: The constructor serves, for all parameters these are intended for this TagLib at
      * this make initialize ones authority of the class. Also see the examples.
      * The constructor also can escape.
      *
      * @access  public
      */
      function {name}Tag() {
         Global $args;

         $args['parameter']   = 'voreinstellung';
      }  // function {name}Tag


      /**
      * setParameter
      * Deutsch: Setzt die Parameter, die im TagLib angegeben wurden (Vorsicht bei falschgeschriebenen
      * Parameternamen). Parameterwerte die eine Zeichenkette sind und Leerzeichen enthalten müssen
      * im Template mit "%20" angegeben werden und in dieser Methode mit der Funktion "rawurldecode"
      * wieder zu Leerzeichen umgesetzt werden. Erwartet ein Tag keine Parameter, dann kann diese
      * Methode enfallen.
      * [break][break]
      * English: Put the parameters which were indicated in the TagLib (caution at wrong written parameter
      * name). Values are the a character string parameter and blanks containedly must be indicated to "%20"
      * in the Template and are turned over to blanks in this method with the function "rawurldecode" again.
      * If a tag doesn't expect any parameters, then this method can be dropped.
      *
      * @param  string $name
      * Name des zu setzenden Parameters (Name of the parameter to be set)
      *
      * @param  mixed $value
      * Wert des zu setzenden Parameters (Value of the parameter to be set)
      *
      * @access  public
      */
      function setParameter( $name, $value ) {
         Global $args;

         $args[$name]         = $value;
      }  // function setParameter()


      /**
      * getParameter
      * Deutsch: Gibt den Wert des abzufragenden Parameters zurück. Diese Methode kann entfallen,
      * da die Parameter direkt abgefragt werden können. Ich finde es so auf jeden Fall besser und
      * schöner
      * [break][break]
      * English: Gives the value of the parameter to be questioned back. This method can be dropped
      * since the parameters can be questioned on directly. I find it better and beautiful so in any
      * case
      *
      * @param  string $name
      * Name des abzufragenden Parameters (Name of the parameter to be questioned)
      *
      * @return mixed
      * Wert des abgefragten Parameters (Value of the questioned parameter)
      *
      * @access  public
      */
      function getParameter( $name ) {
         Global $args;

         return $args[$name];
      }  // function getParameter()


      /**
      * doStartTag
      * Deutsch: Bearbeitet den Start-Tag eines TagLibs und gibt den für die Ausgabe
      * neu erstellten String zurück. Siehe Beispiele.[break]
      * Diese Methode wird auf jeden Fall ausgeführt. Auch wenn es keinen separaten
      * Ende-Tag gibt und muss immer Vorhanden sein.
      * [break][break]
      * English: Works on the start tag of a TagLibs and gives the string made newly
      * for the expense back. See examples.[break]
      * In any case this method is exported. Even if there is not any separate end tag
      * and always must be available.
      *
      * @param  string $arg
      * Text zwischen dem Start- und Ende-Tag, sofern vorhanden
      * (Text between the start and end tag, provided that available)
      *
      * @return string
      * Neu erstellt Inhalt für die Ausgabe (Contents newly make for the expense)
      *
      * @access  public
      */
      function doStartTag( $arg = "" ) {
         $result              = $arg;

      // hier den notwendigen Programmcode einfügen
      // inserting the necessary program code here

         return $result;
      }  // function doStartTag()


      /**
      * doEndeTag
      * Deutsch: Bearbeitet den Ende-Tag eines TagLibs und gibt den für die Ausgabe
      * neu erstellten String zurück. Siehe Beispiele.[break]
      * Diese Methode wird nur dann ausgeführt, wenn das TagLib auch ein Ende-Tag
      * besitzt. Ist der Start-Tag gleich Ende-Tag, dann kann diese Methode entfallen.
      * [break][break]
      * English: Works on the end tag of a TagLibs and gives the string made newly
      * for the expense back. See examples.[break]
      * This method is exported only then, if an end tag also has the TagLib. If at
      * once end tag is the start tag, then this method can be dropped.
      *
      * @param  string $arg
      * Text des neu erstellten Inhalts für die Ausgabe des Start-Tags
      * (Text of the new made contents for the expense of the start tag)
      *
      * @return string
      * Neu erstellt Inhalt für die Ausgabe (Contents newly make for the expense)
      *
      * @access  public
      */
      function doEndeTag( $arg = "" ) {
         $result              = $arg;

         $result .= "</a>";

         return $result;
      } // function doEndeTag()


      /**
      * Release
      * Deutsch: Initialisiert alle nicht mehr benötigten temporär angelegte Variablen.[break]
      * Diese Methode wird immer ausgeführt und darf nicht entfernt werden.
      * [break][break]
      * English: Initialized calculated variables didn't need all of them temporarily any more.[break]
      * This method is always exported and may not be removed.
      *
      * @access  public
      */
      function Release() {
         Global $args;

         $args['parameter']   = 'voreinstellung';
      }  // function Release()

}  // class {name}Tag
?>
Return current item: PTAG