gehe zur Dokumentation dieser Datei
53 static $_allowed_encoding = array(
'javascript' =>
true,
'javascript_charcode' =>
true,
'hex' =>
true,
'none' =>
true);
56 if (empty($params[
'address'])) {
57 trigger_error(
"mailto: missing 'address' parameter", E_USER_WARNING);
61 $address = $params[
'address'];
67 $search = array(
'%40',
'%2C');
68 $replace = array(
'@',
',');
69 $mail_parms = array();
70 foreach ($params as $var => $value) {
76 $mail_parms[] = $var .
'=' . str_replace($search, $replace, rawurlencode($value));
82 $mail_parms[] = $var .
'=' . rawurlencode($value);
94 $address .=
'?' . join(
'&', $mail_parms);
97 $encode = (empty($params[
'encode'])) ?
'none' : $params[
'encode'];
98 if (!isset($_allowed_encoding[$encode])) {
99 trigger_error(
"mailto: 'encode' parameter must be none, javascript, javascript_charcode or hex", E_USER_WARNING);
104 if ($encode ==
'javascript') {
105 $string =
'document.write(\'<a href="mailto:' . $address .
'" ' . $extra .
'>' . $text .
'</a>\');';
108 for ($x = 0, $_length = strlen($string); $x < $_length; $x ++) {
109 $js_encode .=
'%' . bin2hex($string[$x]);
112 return '<script type="text/javascript">eval(unescape(\'' . $js_encode .
'\'))</script>
';
113 } elseif ($encode == 'javascript_charcode
') {
114 $string = '<a href=
"mailto:' . $address . '" ' . $extra . '>
' . $text . '</a>
';
116 for ($x = 0, $y = strlen($string); $x < $y; $x ++) {
117 $ord[] = ord($string[$x]);
120 $_ret = "<script type=\"text/javascript\" language=\"javascript\">\n"
121 . "{document.write(String.fromCharCode("
128 } elseif ($encode == 'hex
') {
129 preg_match('!^(.*)(\?.*)$!
', $address, $match);
130 if (!empty($match[2])) {
131 trigger_error("mailto: hex encoding does not work with extra attributes. Try javascript.", E_USER_WARNING);
135 $address_encode = '';
136 for ($x = 0, $_length = strlen($address); $x < $_length; $x ++) {
137 if (preg_match('!\w!
' . Smarty::$_UTF8_MODIFIER, $address[$x])) {
138 $address_encode .= '%
' . bin2hex($address[$x]);
140 $address_encode .= $address[$x];
144 for ($x = 0, $_length = strlen($text); $x < $_length; $x ++) {
145 $text_encode .= '&#x
' . bin2hex($text[$x]) . ';
';
148 $mailto = "mailto:";
150 return '<a href=
"' . $mailto . $address_encode . '" ' . $extra . '>
' . $text_encode . '</a>
';
153 return '<a href=
"mailto:' . $address . '" ' . $extra . '>
' . $text . '</a>
';
Sie sind hier: Home » MyOOS Benutzerhandbuch » Smarty
Korrekturen, Hinweise und Ergänzungen
Bitte scheuen Sie sich nicht und melden Sie, was auf dieser Seite sachlich falsch oder irreführend ist, was ergänzt werden sollte, was fehlt usw. Dazu bitte oben aus dem Menü Seite den Eintrag
Support Forum wählen. Es ist eine kostenlose Anmeldung erforderlich, um Anmerkungen zu posten. Unpassende Postings, Spam usw. werden kommentarlos entfernt.