diff --git a/docs/appendixes.sgml b/docs/appendixes.sgml index 3efb1b64..5dbd25c7 100644 --- a/docs/appendixes.sgml +++ b/docs/appendixes.sgml @@ -385,11 +385,14 @@ href="mailto:%62%6f%62%40%6d%65%2e%6e%65%74">&#x62;&#x6f;&#x62;&a correctly in your browser, and the mailto: hyperlink will go to the correct address. + + Technical Note - TECHNICAL NOTE: This method isn't 100% foolproof. Although highly unlikely, + This method isn't 100% foolproof. Although highly unlikely, a spammer could conceivably write his e-mail collecter to decode these values. + diff --git a/docs/designers.sgml b/docs/designers.sgml index a5c19cd3..54591739 100644 --- a/docs/designers.sgml +++ b/docs/designers.sgml @@ -1697,14 +1697,17 @@ index.tpl can reference and modify information in the Smarty object from within the insert function. (added in 1.4.5) + + Technical Note - TECHNICAL NOTE: It is possible to have portions of the template not + It is possible to have portions of the template not cached. If you have caching turned on, insert tags will not be cached. They will run dynamically every time the page is created, even within cached pages. This works good for things like banners, polls, live weather, search results, user feedback areas, etc. + if,elseif,else @@ -2108,11 +2111,14 @@ e-mail: jane@mydomain.com<p> (or the start attribute if given), and incrementing by one (or by the step attribute if given.) - - TECHNICAL NOTE: If the step and start section properties are not - modified, then this works the same as the iteration section - property. - + + Technical Note + + If the step and start section properties are not + modified, then this works the same as the iteration section + property. + + section property index @@ -2706,6 +2712,13 @@ The value of $name is Bob. counter function will be assigned to this template variable instead of being output to the template. (new in Smarty 1.5.0) + + + evaluated variables follow the same rules as templates, so for + instance PHP tags are escaped by default, or if you have + security enabled then embedding PHP is not allowed. + + counter @@ -2764,6 +2777,21 @@ OUTPUT: eval function will be assigned to this template variable instead of being output to the template. + + Technical Note + + Evaluated variables are treated the same as templates. They follow + the same escapement and security features just as if they were + templates. + + + + Technical Note + Evaluated variables are compiled on every invocation, the compiled + versions are not saved! However if you have caching enabled, the + output will be cached with the rest of the template. + + eval @@ -2848,16 +2876,22 @@ You must supply a <b>state</b>. fetch function will be assigned to this template variable instead of being output to the template. (new in Smarty 1.5.0) - - TECHNICAL NOTE: This will not support http redirects, be sure to - include a trailing slash on your web page fetches where necessary. - - - TECHNICAL NOTE: If template security is turned on and you are - fetching a file from the local file system, this will only allow - files from within one of the defined secure directories. - ($secure_dir) - + + Technical Note + + This will not support http redirects, be sure to + include a trailing slash on your web page fetches where necessary. + + + + Technical Note + + If template security is turned on and you are + fetching a file from the local file system, this will only allow + files from within one of the defined secure directories. + ($secure_dir) + + fetch @@ -4142,14 +4176,17 @@ pass=foobar SMARTY_DEBUG in the URL if you enable this option with $debugging_ctrl. - - TECHNICAL NOTE: The debugging console does not work when you use the fetch() - API, only when using display(). It is a set of javascript statements added - to the very bottom of the generated template. If you do not like javascript, - you can edit the debug.tpl template to format the output however you like. - Debug data is not cached and debug.tpl info is not included in the output of - the debug console. - + + Technical Note + + The debugging console does not work when you use the fetch() + API, only when using display(). It is a set of javascript statements added + to the very bottom of the generated template. If you do not like javascript, + you can edit the debug.tpl template to format the output however you like. + Debug data is not cached and debug.tpl info is not included in the output of + the debug console. + + The load times of each template and config file are in seconds, or diff --git a/docs/getting-started.sgml b/docs/getting-started.sgml index 44393ddd..0190a7f0 100644 --- a/docs/getting-started.sgml +++ b/docs/getting-started.sgml @@ -69,8 +69,10 @@ generated by the insert tag is not cached, but run dynamically on every invocation, even within cached content. - - TECHNICAL NOTE: Any time you change a template, change values in + + Technical Note + + Any time you change a template, change values in config files or change the content that gets displayed in a template, you can turn on compile_check to regenerate the caches that are affected, or wait for the cache to expire to see the @@ -80,8 +82,11 @@ linkend="api.clear.all.cache">clear_all_cache, or turn on $compile_check (or $force_compile). - - TECHNICAL NOTE: As of Smarty 1.4.6, if you have caching enabled AND + + + Technical Note + + As of Smarty 1.4.6, if you have caching enabled AND you have compile_check enabled, the cached file will regenerate if an involved template or config file has been modified, regardless of the cache expire time. This results in a slight performance hit @@ -91,6 +96,7 @@ off. As of Smarty 1.4.7, enabling $force_compile will cause cache files to always be regenerated. + @@ -120,8 +126,10 @@ you will need to create a "cache" directory, also with permission to write files. - - TECHNICAL NOTE: You can get around the need to allow the web server + + Technical Note + + You can get around the need to allow the web server user write access to compile templates. Smarty needs to compile the templates only once. This can be done from the command line, using the CGI version of PHP. example: "php -q index.php". Once the templates are @@ -134,12 +142,16 @@ the cache directory must always have write access for the web server user. + + + Technical Note - TECHNICAL NOTE: If you do not have access to the php.ini file, you can + If you do not have access to the php.ini file, you can change non-server settings (such as your include_path) with the ini_set() command (available in PHP 4.0.4 or later.) example: ini_set("include_path",".:/usr/local/lib/php"); + Copy the Smarty.class.php, Smarty.addons.php and Config_File.class.php scripts to a directory that is in your PHP include_path. NOTE: PHP will @@ -149,11 +161,14 @@ directory yourself before hand, and change the file ownership accordingly. See below. + + Technical Note - TECHNICAL NOTE: If you don't want to use include_path to find the + If you don't want to use include_path to find the Smarty files, you can set the SMARTY_DIR constant to the full path to your Smarty library files. Be sure the path ends with a slash! + Example of installing Smarty diff --git a/docs/programmers.sgml b/docs/programmers.sgml index 66c74510..ee119a65 100644 --- a/docs/programmers.sgml +++ b/docs/programmers.sgml @@ -15,10 +15,13 @@ will look for the templates directory in the same directory as the executing php script. - - TECHNICAL NOTE: It is not mandatory to put this directory under - the web server document root. - + + Technical Note + + It is not mandatory to put this directory under + the web server document root. + + $compile_dir @@ -29,14 +32,20 @@ the executing php script. This was added to Smarty version 1.2.1. - - TECHNICAL NOTE: This setting must be either a relative or + + Technical Note + + This setting must be either a relative or absolute path. include_path is not used for writing files. - - TECHNICAL NOTE: It is not mandatory to put this directory under + + + Technical Note + + It is not mandatory to put this directory under the web server document root. + $config_dir @@ -46,10 +55,13 @@ for the configs directory in the same directory as the executing php script. - - TECHNICAL NOTE: It is not mandatory to put this directory under + + Technical Note + + It is not mandatory to put this directory under the web server document root. + $plugins_dir @@ -109,12 +121,15 @@ from that global array. $SCRIPT_NAME is globally assigned by default from $HTTP_SERVER_VARS. - - TECHNICAL NOTE: Server variables can be accessed through the + + Technical Note + + Server variables can be accessed through the $smarty variable, such as {$smarty.server.SCRIPT_NAME}. See the section on the $smarty variable. + $undefined @@ -184,14 +199,20 @@ function to control cache files, which will ignore this setting. (added to Smarty 1.3.0) - - TECHNICAL NOTE: This setting must be either a relative or + + Technical Note + + This setting must be either a relative or absolute path. include_path is not used for writing files. - - TECHNICAL NOTE: It is not mandatory to put this directory under - the web server document root. - + + + Technical Note + + It is not mandatory to put this directory under + the web server document root. + + $cache_lifetime