summaryrefslogtreecommitdiffstats
path: root/user_guide_src/source/helpers
diff options
context:
space:
mode:
authorAndrey Andreev <narf@bofh.bg>2012-10-05 21:45:41 +0200
committerAndrey Andreev <narf@bofh.bg>2012-10-05 21:45:41 +0200
commit5b5021812ea6dc859312e00b6b0f078eea54c88d (patch)
tree0a8840ee0429cc405cb597438a73d03bca970c1a /user_guide_src/source/helpers
parent49d08053257b55db511eaca08b8ab5d12149f3b6 (diff)
parentdbad54e09a39a77c7404dee9ca1a6b34299469d0 (diff)
Merge upstream branch
Diffstat (limited to 'user_guide_src/source/helpers')
-rw-r--r--user_guide_src/source/helpers/array_helper.rst34
-rw-r--r--user_guide_src/source/helpers/captcha_helper.rst2
-rw-r--r--user_guide_src/source/helpers/date_helper.rst231
-rw-r--r--user_guide_src/source/helpers/file_helper.rst3
-rw-r--r--user_guide_src/source/helpers/form_helper.rst4
-rw-r--r--user_guide_src/source/helpers/security_helper.rst6
-rw-r--r--user_guide_src/source/helpers/string_helper.rst3
-rw-r--r--user_guide_src/source/helpers/url_helper.rst45
8 files changed, 162 insertions, 166 deletions
diff --git a/user_guide_src/source/helpers/array_helper.rst b/user_guide_src/source/helpers/array_helper.rst
index 4308753bb..15b5e17c4 100644
--- a/user_guide_src/source/helpers/array_helper.rst
+++ b/user_guide_src/source/helpers/array_helper.rst
@@ -21,17 +21,17 @@ The following functions are available:
element()
=========
-.. php:method:: element($item, $array, $default = FALSE)
+.. php:method:: element($item, $array, $default = NULL)
:param string $item: Item to fetch from the array
:param array $array: Input array
:param boolean $default: What to return if the array isn't valid
- :returns: FALSE on failure or the array item.
+ :returns: NULL on failure or the array item.
Lets you fetch an item from an array. The function tests whether the
array index is set and whether it has a value. If a value exists it is
-returned. If a value does not exist it returns FALSE, or whatever you've
+returned. If a value does not exist it returns NULL, or whatever you've
specified as the default value via the third parameter. Example
::
@@ -43,31 +43,31 @@ specified as the default value via the third parameter. Example
);
echo element('color', $array); // returns "red"
- echo element('size', $array, NULL); // returns NULL
+ echo element('size', $array, 'foobar'); // returns "foobar"
elements()
==========
Lets you fetch a number of items from an array. The function tests
whether each of the array indices is set. If an index does not exist it
-is set to FALSE, or whatever you've specified as the default value via
+is set to NULL, or whatever you've specified as the default value via
the third parameter.
-.. php:method:: elements($items, $array, $default = FALSE)
+.. php:method:: elements($items, $array, $default = NULL)
:param string $item: Item to fetch from the array
:param array $array: Input array
:param boolean $default: What to return if the array isn't valid
- :returns: FALSE on failure or the array item.
+ :returns: NULL on failure or the array item.
Example
::
$array = array(
- 'color' => 'red',  
- 'shape' => 'round',     
- 'radius' => '10',     
+ 'color' => 'red',
+ 'shape' => 'round',
+ 'radius' => '10',
'diameter' => '20'
);
@@ -78,25 +78,25 @@ The above will return the following array
::
array(
- 'color' => 'red',     
- 'shape' => 'round',     
- 'height' => FALSE
+ 'color' => 'red',
+ 'shape' => 'round',
+ 'height' => NULL
);
You can set the third parameter to any default value you like
::
- $my_shape = elements(array('color', 'shape', 'height'), $array, NULL);
+ $my_shape = elements(array('color', 'shape', 'height'), $array, 'foobar');
The above will return the following array
::
array(     
- 'color' => 'red',     
- 'shape' => 'round',     
- 'height' => NULL
+ 'color' => 'red',
+ 'shape' => 'round',
+ 'height' => 'foobar'
);
This is useful when sending the $_POST array to one of your Models.
diff --git a/user_guide_src/source/helpers/captcha_helper.rst b/user_guide_src/source/helpers/captcha_helper.rst
index 48095a11d..90244739b 100644
--- a/user_guide_src/source/helpers/captcha_helper.rst
+++ b/user_guide_src/source/helpers/captcha_helper.rst
@@ -102,7 +102,7 @@ Here is a table prototype
CREATE TABLE captcha (  
captcha_id bigint(13) unsigned NOT NULL auto_increment,  
captcha_time int(10) unsigned NOT NULL,  
- ip_address varchar(16) default '0' NOT NULL,  
+ ip_address varchar(45) NOT NULL,  
word varchar(20) NOT NULL,  
PRIMARY KEY `captcha_id` (`captcha_id`),  
KEY `word` (`word`)
diff --git a/user_guide_src/source/helpers/date_helper.rst b/user_guide_src/source/helpers/date_helper.rst
index 8f4b2a8b8..d0c72c3c4 100644
--- a/user_guide_src/source/helpers/date_helper.rst
+++ b/user_guide_src/source/helpers/date_helper.rst
@@ -21,18 +21,26 @@ now()
=====
Returns the current time as a Unix timestamp, referenced either to your
-server's local time or GMT, based on the "time reference" setting in
-your config file. If you do not intend to set your master time reference
-to GMT (which you'll typically do if you run a site that lets each user
-set their own timezone settings) there is no benefit to using this
+server's local time or any PHP suported timezone, based on the "time reference"
+setting in your config file. If you do not intend to set your master time reference
+to any other PHP suported timezone (which you'll typically do if you run a site that
+lets each user set their own timezone settings) there is no benefit to using this
function over PHP's time() function.
-.. php:method:: now()
+.. php:method:: now($timezone = NULL)
+
+ :param string $timezone: The timezone you want to be returned
+ :returns: integer
+
+::
+ echo now("Australia/Victoria");
+
+If a timezone is not provided, it will return time() based on "time_reference" setting.
mdate()
=======
-This function is identical to PHPs `date() <http://www.php.net/date>`_
+This function is identical to PHP's `date() <http://www.php.net/date>`_
function, except that it lets you use MySQL style date codes, where each
code letter is preceded with a percent sign: %Y %m %d etc.
@@ -77,37 +85,34 @@ Example
The first parameter must contain the format, the second parameter must
contain the date as a Unix timestamp.
-Supported formats:
+.. note:: This function is DEPRECATED. Use the native ``date()`` combined
+ with `DateTime's format constants <http://www.php.net/manual/en/class.datetime.php#datetime.constants.types>`_
+ instead:
-+----------------+------------------------+-----------------------------------+
-| Constant | Description | Example |
-+================+========================+===================================+
-| DATE_ATOM | Atom | 2005-08-15T16:13:03+0000 |
-+----------------+------------------------+-----------------------------------+
-| DATE_COOKIE | HTTP Cookies | Sun, 14 Aug 2005 16:13:03 UTC |
-+----------------+------------------------+-----------------------------------+
-| DATE_ISO8601 | ISO-8601 | 2005-08-14T16:13:03+00:00 |
-+----------------+------------------------+-----------------------------------+
-| DATE_RFC822 | RFC 822 | Sun, 14 Aug 05 16:13:03 UTC |
-+----------------+------------------------+-----------------------------------+
-| DATE_RFC850 | RFC 850 | Sunday, 14-Aug-05 16:13:03 UTC |
-+----------------+------------------------+-----------------------------------+
-| DATE_RFC1036 | RFC 1036 | Sunday, 14-Aug-05 16:13:03 UTC |
-+----------------+------------------------+-----------------------------------+
-| DATE_RFC1123 | RFC 1123 | Sun, 14 Aug 2005 16:13:03 UTC |
-+----------------+------------------------+-----------------------------------+
-| DATE_RFC2822 | RFC 2822 | Sun, 14 Aug 2005 16:13:03 +0000 |
-+----------------+------------------------+-----------------------------------+
-| DATE_RSS | RSS | Sun, 14 Aug 2005 16:13:03 UTC |
-+----------------+------------------------+-----------------------------------+
-| DATE_W3C | W3C | 2005-08-14T16:13:03+0000 |
-+----------------+------------------------+-----------------------------------+
+ |
+ | echo date(DATE_RFC822, time());
+Supported formats:
+
+=============== ======================= ======================================
+Constant Description Example
+=============== ======================= ======================================
+DATE_ATOM Atom 2005-08-15T16:13:03+0000
+DATE_COOKIE HTTP Cookies Sun, 14 Aug 2005 16:13:03 UTC
+DATE_ISO8601 ISO-8601 2005-08-14T16:13:03+00:00
+DATE_RFC822 RFC 822 Sun, 14 Aug 05 16:13:03 UTC
+DATE_RFC850 RFC 850 Sunday, 14-Aug-05 16:13:03 UTC
+DATE_RFC1036 RFC 1036 Sunday, 14-Aug-05 16:13:03 UTC
+DATE_RFC1123 RFC 1123 Sun, 14 Aug 2005 16:13:03 UTC
+DATE_RFC2822 RFC 2822 Sun, 14 Aug 2005 16:13:03 +0000
+DATE_RSS RSS Sun, 14 Aug 2005 16:13:03 UTC
+DATE_W3C W3C 2005-08-14T16:13:03+0000
+=============== ======================= ======================================
local_to_gmt()
==============
-Takes a Unix timestamp as input and returns it as GMT.
+Takes a Unix timestamp as input and returns it as GMT.
.. php:method:: local_to_gmt($time = '')
@@ -151,7 +156,7 @@ Example
mysql_to_unix()
===============
-Takes a MySQL Timestamp as input and returns it as Unix.
+Takes a MySQL Timestamp as input and returns it as Unix.
.. php:method:: mysql_to_unix($time = '')
@@ -204,7 +209,7 @@ human_to_unix()
The opposite of the above function. Takes a "human" time as input and
returns it as Unix. This function is useful if you accept "human"
formatted dates submitted via a form. Returns FALSE (boolean) if the
-date string passed to it is not formatted as indicated above.
+date string passed to it is not formatted as indicated above.
.. php:method:: human_to_unix($datestr = '')
@@ -227,9 +232,9 @@ them into something useful. It also accepts well-formed dates.
The function will return a Unix timestamp by default. You can,
optionally, pass a format string (the same type as the PHP date function
-accepts) as the second parameter.
+accepts) as the second parameter.
-.. php:method:: nice_date($bad_date = '', $format = FALSE)
+.. php:method:: nice_date($bad_date = '', $format = FALSE)
:param integer $bad_date: The terribly formatted date-like string
:param string $format: Date format to return (same as php date function)
@@ -239,26 +244,28 @@ Example
::
- $bad_time = 199605 // Should Produce: 1996-05-01
- $better_time = nice_date($bad_time,'Y-m-d');
- $bad_time = 9-11-2001 // Should Produce: 2001-09-11
- $better_time = nice_date($human,'Y-m-d');
+ $bad_date = '199605';
+ // Should Produce: 1996-05-01
+ $better_date = nice_date($bad_date, 'Y-m-d');
+
+ $bad_date = '9-11-2001';
+ // Should Produce: 2001-09-11
+ $better_date = nice_date($bad_date, 'Y-m-d');
timespan()
==========
Formats a unix timestamp so that is appears similar to this
-
::
1 Year, 10 Months, 2 Weeks, 5 Days, 10 Hours, 16 Minutes
The first parameter must contain a Unix timestamp. The second parameter
must contain a timestamp that is greater that the first timestamp. If
-the second parameter empty, the current time will be used. The third
-parameter is optional and limits the number of time units to display.
-The most common purpose for this function is to show how much time has
-elapsed from some point in time in the past to now.
+the second parameter empty, the current time will be used. The third
+parameter is optional and limits the number of time units to display.
+The most common purpose for this function is to show how much time has
+elapsed from some point in time in the past to now.
.. php:method:: timespan($seconds = 1, $time = '', $units = '')
@@ -283,7 +290,7 @@ days_in_month()
===============
Returns the number of days in a given month/year. Takes leap years into
-account.
+account.
.. php:method:: days_in_month($month = 0, $year = '')
@@ -404,14 +411,15 @@ allowed to set their local timezone value.
The first parameter lets you set the "selected" state of the menu. For
example, to set Pacific time as the default you will do this
-.. php:method:: timezone_menu($default = 'UTC', $class = "", $name = 'timezones')
+.. php:method:: timezone_menu($default = 'UTC', $class = '', $name = 'timezones', $attributes = '')
:param string $default: timezone
:param string $class: classname
:param string $name: menu name
+ :param mixed $attributes: attributes
:returns: string
-Example:
+Example:
::
@@ -421,6 +429,8 @@ Please see the timezone reference below to see the values of this menu.
The second parameter lets you set a CSS class name for the menu.
+The fourth parameter lets you set one or more attributes on the generated select tag.
+
.. note:: The text contained in the menu is found in the following
language file: `language/<your_lang>/date_lang.php`
@@ -432,86 +442,47 @@ The following table indicates each timezone and its location.
Note some of the location lists have been abridged for clarity and formatting.
-+------------+----------------------------------------------------------------+
-| Time Zone | Location |
-+============+================================================================+
-| UM12 | (UTC - 12:00) Baker/Howland Island |
-+------------+----------------------------------------------------------------+
-| UM11 | (UTC - 11:00) Samoa Time Zone, Niue |
-+------------+----------------------------------------------------------------+
-| UM10 | (UTC - 10:00) Hawaii-Aleutian Standard Time, Cook Islands |
-+------------+----------------------------------------------------------------+
-| UM95 | (UTC - 09:30) Marquesas Islands |
-+------------+----------------------------------------------------------------+
-| UM9 | (UTC - 09:00) Alaska Standard Time, Gambier Islands |
-+------------+----------------------------------------------------------------+
-| UM8 | (UTC - 08:00) Pacific Standard Time, Clipperton Island |
-+------------+----------------------------------------------------------------+
-| UM7 | (UTC - 11:00) Mountain Standard Time |
-+------------+----------------------------------------------------------------+
-| UM6 | (UTC - 06:00) Central Standard Time |
-+------------+----------------------------------------------------------------+
-| UM5 | (UTC - 05:00) Eastern Standard Time, Western Caribbean |
-+------------+----------------------------------------------------------------+
-| UM45 | (UTC - 04:30) Venezuelan Standard Time |
-+------------+----------------------------------------------------------------+
-| UM4 | (UTC - 04:00) Atlantic Standard Time, Eastern Caribbean |
-+------------+----------------------------------------------------------------+
-| UM35 | (UTC - 03:30) Newfoundland Standard Time |
-+------------+----------------------------------------------------------------+
-| UM3 | (UTC - 03:00) Argentina, Brazil, French Guiana, Uruguay |
-+------------+----------------------------------------------------------------+
-| UM2 | (UTC - 02:00) South Georgia/South Sandwich Islands |
-+------------+----------------------------------------------------------------+
-| UM1 | (UTC -1:00) Azores, Cape Verde Islands |
-+------------+----------------------------------------------------------------+
-| UTC | (UTC) Greenwich Mean Time, Western European Time |
-+------------+----------------------------------------------------------------+
-| UP1 | (UTC +1:00) Central European Time, West Africa Time |
-+------------+----------------------------------------------------------------+
-| UP2 | (UTC +2:00) Central Africa Time, Eastern European Time |
-+------------+----------------------------------------------------------------+
-| UP3 | (UTC +3:00) Moscow Time, East Africa Time |
-+------------+----------------------------------------------------------------+
-| UP35 | (UTC +3:30) Iran Standard Time |
-+------------+----------------------------------------------------------------+
-| UP4 | (UTC +4:00) Azerbaijan Standard Time, Samara Time |
-+------------+----------------------------------------------------------------+
-| UP45 | (UTC +4:30) Afghanistan |
-+------------+----------------------------------------------------------------+
-| UP5 | (UTC +5:00) Pakistan Standard Time, Yekaterinburg Time |
-+------------+----------------------------------------------------------------+
-| UP55 | (UTC +5:30) Indian Standard Time, Sri Lanka Time |
-+------------+----------------------------------------------------------------+
-| UP575 | (UTC +5:45) Nepal Time |
-+------------+----------------------------------------------------------------+
-| UP6 | (UTC +6:00) Bangladesh Standard Time, Bhutan Time, Omsk Time |
-+------------+----------------------------------------------------------------+
-| UP65 | (UTC +6:30) Cocos Islands, Myanmar |
-+------------+----------------------------------------------------------------+
-| UP7 | (UTC +7:00) Krasnoyarsk Time, Cambodia, Laos, Thailand, Vietnam|
-+------------+----------------------------------------------------------------+
-| UP8 | (UTC +8:00) Australian Western Standard Time, Beijing Time |
-+------------+----------------------------------------------------------------+
-| UP875 | (UTC +8:45) Australian Central Western Standard Time |
-+------------+----------------------------------------------------------------+
-| UP9 | (UTC +9:00) Japan Standard Time, Korea Standard Time, Yakutsk |
-+------------+----------------------------------------------------------------+
-| UP95 | (UTC +9:30) Australian Central Standard Time |
-+------------+----------------------------------------------------------------+
-| UP10 | (UTC +10:00) Australian Eastern Standard Time, Vladivostok Time|
-+------------+----------------------------------------------------------------+
-| UP105 | (UTC +10:30) Lord Howe Island |
-+------------+----------------------------------------------------------------+
-| UP11 | (UTC +11:00) Magadan Time, Solomon Islands, Vanuatu |
-+------------+----------------------------------------------------------------+
-| UP115 | (UTC +11:30) Norfolk Island |
-+------------+----------------------------------------------------------------+
-| UP12 | (UTC +12:00) Fiji, Gilbert Islands, Kamchatka, New Zealand |
-+------------+----------------------------------------------------------------+
-| UP1275 | (UTC +12:45) Chatham Islands Standard Time |
-+------------+----------------------------------------------------------------+
-| UP13 | (UTC +13:00) Phoenix Islands Time, Tonga |
-+------------+----------------------------------------------------------------+
-| UP14 | (UTC +14:00) Line Islands |
-+------------+----------------------------------------------------------------+
+=========== =====================================================================
+Time Zone Location
+=========== =====================================================================
+UM2 (UTC - 12:00) Baker/Howland Island
+UM1 (UTC - 11:00) Samoa Time Zone, Niue
+UM0 (UTC - 10:00) Hawaii-Aleutian Standard Time, Cook Islands
+UM95 (UTC - 09:30) Marquesas Islands
+UM9 (UTC - 09:00) Alaska Standard Time, Gambier Islands
+UM8 (UTC - 08:00) Pacific Standard Time, Clipperton Island
+UM7 (UTC - 11:00) Mountain Standard Time
+UM6 (UTC - 06:00) Central Standard Time
+UM5 (UTC - 05:00) Eastern Standard Time, Western Caribbean
+UM45 (UTC - 04:30) Venezuelan Standard Time
+UM4 (UTC - 04:00) Atlantic Standard Time, Eastern Caribbean
+UM35 (UTC - 03:30) Newfoundland Standard Time
+UM3 (UTC - 03:00) Argentina, Brazil, French Guiana, Uruguay
+UM2 (UTC - 02:00) South Georgia/South Sandwich Islands
+UM (UTC -1:00) Azores, Cape Verde Islands
+UTC (UTC) Greenwich Mean Time, Western European Time
+UP1 (UTC +1:00) Central European Time, West Africa Time
+UP2 (UTC +2:00) Central Africa Time, Eastern European Time
+UP3 (UTC +3:00) Moscow Time, East Africa Time
+UP35 (UTC +3:30) Iran Standard Time
+UP4 (UTC +4:00) Azerbaijan Standard Time, Samara Time
+UP45 (UTC +4:30) Afghanistan
+UP5 (UTC +5:00) Pakistan Standard Time, Yekaterinburg Time
+UP55 (UTC +5:30) Indian Standard Time, Sri Lanka Time
+UP575 (UTC +5:45) Nepal Time
+UP6 (UTC +6:00) Bangladesh Standard Time, Bhutan Time, Omsk Time
+UP65 (UTC +6:30) Cocos Islands, Myanmar
+UP7 (UTC +7:00) Krasnoyarsk Time, Cambodia, Laos, Thailand, Vietnam
+UP8 (UTC +8:00) Australian Western Standard Time, Beijing Time
+UP875 (UTC +8:45) Australian Central Western Standard Time
+UP9 (UTC +9:00) Japan Standard Time, Korea Standard Time, Yakutsk
+UP95 (UTC +9:30) Australian Central Standard Time
+UP10 (UTC +10:00) Australian Eastern Standard Time, Vladivostok Time
+UP105 (UTC +10:30) Lord Howe Island
+UP11 (UTC +11:00) Magadan Time, Solomon Islands, Vanuatu
+UP115 (UTC +11:30) Norfolk Island
+UP12 (UTC +12:00) Fiji, Gilbert Islands, Kamchatka, New Zealand
+UP1275 (UTC +12:45) Chatham Islands Standard Time
+UP1 (UTC +13:00) Phoenix Islands Time, Tonga
+UP14 (UTC +14:00) Line Islands
+=========== =====================================================================
diff --git a/user_guide_src/source/helpers/file_helper.rst b/user_guide_src/source/helpers/file_helper.rst
index bfc271eb3..60c5aa98c 100644
--- a/user_guide_src/source/helpers/file_helper.rst
+++ b/user_guide_src/source/helpers/file_helper.rst
@@ -32,6 +32,9 @@ The path can be a relative or full server path. Returns FALSE (boolean) on failu
controller or view files. CodeIgniter uses a front controller so paths
are always relative to the main site index.
+.. note:: This function is DEPRECATED. Use the native ``file_get_contents()``
+ instead.
+
If your server is running an `open_basedir` restriction this function might not work if you are trying to access a file above the calling script.
write_file('path', $data)
diff --git a/user_guide_src/source/helpers/form_helper.rst b/user_guide_src/source/helpers/form_helper.rst
index a110f3c14..fa7b3dbf9 100644
--- a/user_guide_src/source/helpers/form_helper.rst
+++ b/user_guide_src/source/helpers/form_helper.rst
@@ -543,3 +543,7 @@ This function is identical to the **set_checkbox()** function above.
<input type="radio" name="myradio" value="1" <?php echo set_radio('myradio', '1', TRUE); ?> />
<input type="radio" name="myradio" value="2" <?php echo set_radio('myradio', '2'); ?> />
+.. note:: If you are using the Form Validation class, you must always specify a rule for your field,
+ even if empty, in order for the set_*() functions to work. This is because if a Form Validation object
+ is defined, the control for set_*() is handed over to a method of the class instead of the generic helper
+ function. \ No newline at end of file
diff --git a/user_guide_src/source/helpers/security_helper.rst b/user_guide_src/source/helpers/security_helper.rst
index b1bcf2b4a..ec0be28b3 100644
--- a/user_guide_src/source/helpers/security_helper.rst
+++ b/user_guide_src/source/helpers/security_helper.rst
@@ -43,8 +43,10 @@ for a full list of supported algorithms.
$str = do_hash($str); // SHA1
$str = do_hash($str, 'md5'); // MD5
-.. note:: This function was formerly named dohash(), which has been
- removed in favor of `do_hash()`.
+.. note:: This function was formerly named ``dohash()``, which has been
+ removed in favor of ``do_hash()``.
+
+.. note:: This function is DEPRECATED. Use the native ``hash()`` instead.
strip_image_tags()
==================
diff --git a/user_guide_src/source/helpers/string_helper.rst b/user_guide_src/source/helpers/string_helper.rst
index 2d23fb00c..19500aa0d 100644
--- a/user_guide_src/source/helpers/string_helper.rst
+++ b/user_guide_src/source/helpers/string_helper.rst
@@ -36,8 +36,7 @@ alpha, alunum, numeric, nozero, unique, md5, encrypt and sha1
- **unique**: Encrypted with MD5 and uniqid(). Note: The length
parameter is not available for this type. Returns a fixed length 32
character string.
-- **sha1**: An encrypted random number based on do_hash() from the
- :doc:`security helper <security_helper>`.
+- **sha1**: An encrypted random number based on ``sha1()``.
Usage example
diff --git a/user_guide_src/source/helpers/url_helper.rst b/user_guide_src/source/helpers/url_helper.rst
index e6d51b22b..1987dfb72 100644
--- a/user_guide_src/source/helpers/url_helper.rst
+++ b/user_guide_src/source/helpers/url_helper.rst
@@ -168,27 +168,35 @@ browser settings. Here is an example with attributes
::
- $atts = array(               
- 'width'      => '800',               
- 'height'     => '600',               
- 'scrollbars' => 'yes',               
- 'status'     => 'yes',               
- 'resizable'  => 'yes',               
- 'screenx'    => '0',               
- 'screeny'    => '0'             
+ $atts = array(
+ 'width' => '800',
+ 'height' => '600',
+ 'scrollbars' => 'yes',
+ 'status'      => 'yes',
+ 'resizable'   => 'yes',
+ 'screenx'     => '0',
+ 'screeny'     => '0',
+ 'window_name' => '_blank'
);
echo anchor_popup('news/local/123', 'Click Me!', $atts);
-Note: The above attributes are the function defaults so you only need to
-set the ones that are different from what you need. If you want the
-function to use all of its defaults simply pass an empty array in the
-third parameter
+.. note:: The above attributes are the function defaults so you only need to
+ set the ones that are different from what you need. If you want the
+ function to use all of its defaults simply pass an empty array in the
+ third parameter
::
echo anchor_popup('news/local/123', 'Click Me!', array());
+.. note:: The 'window_name' is not really an attribute, but an argument to
+ the JavaScript `window.open() <http://www.w3schools.com/jsref/met_win_open.asp>`
+ method, which accepts either a window name or a window target.
+
+.. note:: Any other attribute than the listed above will be parsed as an
+ HTML attribute to the anchor tag.
+
mailto()
========
@@ -199,7 +207,12 @@ Creates a standard HTML email link. Usage example
echo mailto('me@my-site.com', 'Click Here to Contact Me');
As with the anchor() tab above, you can set attributes using the third
-parameter.
+parameter:
+
+::
+
+ $attributes = array('title' => 'Mail me');
+ echo mailto('me@my-site.com', 'Contact Me', $attributes);
safe_mailto()
=============
@@ -290,7 +303,7 @@ link. The function will build the URL based on your config file values.
The optional second parameter allows you to force a particular redirection
method. The available methods are "location" or "refresh", with location
-being faster but less reliable on Windows servers. The default is "auto",
+being faster but less reliable on IIS servers. The default is "auto",
which will attempt to intelligently choose the method based on the server
environment.
@@ -312,3 +325,7 @@ engine purposes. The default Response Code is 302. The third parameter is
.. note:: For very fine grained control over headers, you should use the
`Output Library </libraries/output>` set_header() function.
+
+.. note:: To IIS users: if you hide the `Server` HTTP header, the "auto"
+ method won't detect IIS, in that case it is advised you explicitly
+ use the "refresh" method.