Documentation TYPO3 par Ameos

class.t3lib_tsstyleconfig.php

00001 <?php
00002 /***************************************************************
00003 *  Copyright notice
00004 *
00005 *  (c) 1999-2006 Kasper Skaarhoj (kasperYYYY@typo3.com)
00006 *  All rights reserved
00007 *
00008 *  This script is part of the TYPO3 project. The TYPO3 project is
00009 *  free software; you can redistribute it and/or modify
00010 *  it under the terms of the GNU General Public License as published by
00011 *  the Free Software Foundation; either version 2 of the License, or
00012 *  (at your option) any later version.
00013 *
00014 *  The GNU General Public License can be found at
00015 *  http://www.gnu.org/copyleft/gpl.html.
00016 *  A copy is found in the textfile GPL.txt and important notices to the license
00017 *  from the author is found in LICENSE.txt distributed with these scripts.
00018 *
00019 *
00020 *  This script is distributed in the hope that it will be useful,
00021 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00022 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00023 *  GNU General Public License for more details.
00024 *
00025 *  This copyright notice MUST APPEAR in all copies of the script!
00026 ***************************************************************/
00060 require_once(PATH_t3lib.'class.t3lib_tsparser_ext.php');
00061 
00062 
00063 
00064 
00065 
00066 
00067 
00068 
00069 
00070 
00071 
00079 class t3lib_tsStyleConfig extends t3lib_tsparser_ext    {
00080                 // internal
00081         var $categories = array();
00082         var $ext_dontCheckIssetValues=1;
00083         var $ext_CEformName="tsStyleConfigForm";
00084         var $ext_noCEUploadAndCopying=1;
00085         var $ext_printAll=1;
00086         var $ext_defaultOnlineResourceFlag=1;
00087 
00088         var $ext_incomingValues = array();
00089 
00090 
00098         function ext_initTSstyleConfig($configTemplate,$pathRel,$pathAbs,$backPath)     {
00099                 $this->tt_track = 0;    // Do not log time-performance information
00100                 $this->constants=array($configTemplate,"");
00101 
00102                 $theConstants = $this->generateConfig_constants();      // The editable constants are returned in an array.
00103 
00104                 $this->ext_localGfxPrefix=$pathAbs;
00105                 $this->ext_localWebGfxPrefix=$backPath.$pathRel;
00106                 $this->ext_backPath = $backPath;
00107 
00108                 return $theConstants;
00109         }
00110 
00118         function ext_setValueArray($theConstants,$valueArray)   {
00119 
00120                 $temp = $this->flatSetup;
00121                 $this->flatSetup = Array();
00122                 $this->flattenSetup($valueArray,"","");
00123                 $this->objReg = $this->ext_realValues = $this->flatSetup;
00124                 $this->flatSetup = $temp;
00125 
00126 
00127                 reset($theConstants);
00128                 while(list($k,$p)=each($theConstants))  {
00129                         if (isset($this->objReg[$k]))   {
00130                                 $theConstants[$k]["value"] = $this->ext_realValues[$k];
00131                         }
00132                 }
00133 
00134                 $this->categories=array(); // Reset the default pool of categories.
00135                 $this->ext_categorizeEditableConstants($theConstants);  // The returned constants are sorted in categories, that goes into the $this->categories array
00136 
00137                 return $theConstants;
00138         }
00139 
00145         function ext_getCategoriesForModMenu()  {
00146                 return $this->ext_getCategoryLabelArray();
00147         }
00148 
00155         function ext_makeHelpInformationForCategory($cat)       {
00156                 return $this->ext_getTSCE_config($cat);
00157         }
00158 
00168         function ext_getForm($cat,$theConstants,$script="",$addFields="")       {
00169                 $this->ext_makeHelpInformationForCategory($cat);
00170                 $printFields = trim($this->ext_printFields($theConstants,$cat));
00171 
00172                 $content='';
00173                 $content.='
00174                 <script language="javascript" type="text/javascript">
00175                         function uFormUrl(aname)        {
00176                                 document.'.$this->ext_CEformName.'.action = "'.t3lib_div::linkThisScript().'#"+aname;
00177                         }
00178                 </script>
00179                 ';
00180                 $content.= '<form action="'.($script?$script:t3lib_div::linkThisScript()).'" name="'.$this->ext_CEformName.'" method="POST" enctype="'.$GLOBALS["TYPO3_CONF_VARS"]["SYS"]["form_enctype"].'">';
00181                 $content.= $addFields;
00182 #               $content.= '<input type="Submit" name="submit" value="Update"><BR>';
00183                 $content.= $printFields;
00184                 $content.= '<input type="Submit" name="submit" value="Update">';
00185 
00186                 $example = $this->ext_displayExample();
00187                 $content.= $example?'<HR>'.$example:"";
00188 
00189                 return $content;
00190         }
00191 
00197         function ext_displayExample()   {
00198                 global $SOBE,$tmpl;
00199                 if ($this->helpConfig["imagetag"] || $this->helpConfig["description"] || $this->helpConfig["header"])   {
00200                         $out = '<div align="center">'.$this->helpConfig["imagetag"].'</div><BR>'.
00201                                 ($this->helpConfig["description"] ? implode(explode("//",$this->helpConfig["description"]),"<BR>")."<BR>" : "").
00202                                 ($this->helpConfig["bulletlist"] ? "<ul><li>".implode(explode("//",$this->helpConfig["bulletlist"]),"<li>")."</ul>" : "<BR>");
00203                 }
00204                 return $out;
00205         }
00206 
00213         function ext_mergeIncomingWithExisting($arr)    {
00214                 $parseObj = t3lib_div::makeInstance("t3lib_TSparser");
00215                 $parseObj->parse(implode(chr(10),$this->ext_incomingValues));
00216                 $arr2 = $parseObj->setup;
00217                 return t3lib_div::array_merge_recursive_overrule($arr,$arr2);
00218         }
00219 
00220                 // extends:
00221         function ext_getKeyImage($key)  {
00222                 return '<img'.t3lib_iconWorks::skinImg($this->ext_backPath,'gfx/rednumbers/'.$key.'.gif','').' hspace="2" align="top" alt="" />';
00223         }
00224 
00231         function ext_getTSCE_config_image($imgConf)     {
00232                 $iFile=$this->ext_localGfxPrefix.$imgConf;
00233                 $tFile=$this->ext_localWebGfxPrefix.$imgConf;
00234                 $imageInfo=@getImagesize($iFile);
00235                 return '<img src="'.$tFile.'" '.$imageInfo[3].'>';
00236         }
00237 
00244         function ext_fNandV($params)    {
00245                 $fN='data['.$params["name"].']';
00246                 $fV=$params["value"]=isset($this->ext_realValues[$params["name"]]) ? $this->ext_realValues[$params["name"]] : $params["default_value"];
00247                 $reg = array();
00248                 if (preg_match('/^\{[\$][a-zA-Z0-9\.]*\}$/',trim($fV),$reg))    {               // Values entered from the constantsedit cannot be constants!
00249                         $fV="";
00250                 }
00251                 $fV=htmlspecialchars($fV);
00252 #debug(array($params,$fN,$fV,isset($this->ext_realValues[$params["name"]])));
00253                 return array($fN,$fV,$params);
00254         }
00255 
00262         function ext_loadResources($absPath)    {
00263                 $this->ext_readDirResources($GLOBALS["TYPO3_CONF_VARS"]["MODS"]["web_ts"]["onlineResourceDir"]);
00264                 if (is_dir($absPath))   {
00265                         $absPath = ereg_replace("\/$","",$absPath);
00266                         $this->readDirectory($absPath);
00267                 }
00268                 $this->ext_resourceDims();
00269         }
00270 
00278         function ext_putValueInConf($key, $var) {
00279                 $this->ext_incomingValues[$key]=$key."=".$var;
00280         }
00281 
00288         function ext_removeValueInConf($key)    {
00289                 // Nothing...
00290         }
00291 }
00292 
00293 
00294 if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['t3lib/class.t3lib_tsstyleconfig.php'])     {
00295         include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['t3lib/class.t3lib_tsstyleconfig.php']);
00296 }
00297 ?>


Généré par Le spécialiste TYPO3 avec  doxygen 1.4.6