Mercurial > SimpleWebPresenter
annotate filters.inc @ 51:2cfea6e84694
Documentation update.
| author | Tom Fredrik Blenning Klaussen <bfg@blenning.no> |
|---|---|
| date | Thu, 11 Oct 2012 00:06:26 +0200 |
| parents | 66382989353f |
| children | 74f7b64bdb78 |
| rev | line source |
|---|---|
|
4
74196528fc64
Refac to use xml as input, and remove filters and helper-functions from
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
1 <?php |
|
51
2cfea6e84694
Documentation update.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
47
diff
changeset
|
2 /** |
|
2cfea6e84694
Documentation update.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
47
diff
changeset
|
3 * @file |
|
2cfea6e84694
Documentation update.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
47
diff
changeset
|
4 * Filters which may be used from xml |
|
2cfea6e84694
Documentation update.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
47
diff
changeset
|
5 */ |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
6 function activeNav($input, $options) |
|
4
74196528fc64
Refac to use xml as input, and remove filters and helper-functions from
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
7 { |
|
35
aec57ed6f5f6
Remove globals from activeNav function.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
34
diff
changeset
|
8 $name = $options->getName(); |
|
42
9bdf3f8b487a
Correct navbar if no name has been set.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
37
diff
changeset
|
9 if (!$name) |
|
9bdf3f8b487a
Correct navbar if no name has been set.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
37
diff
changeset
|
10 $name = $options->getInputDefault('name'); |
|
35
aec57ed6f5f6
Remove globals from activeNav function.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
34
diff
changeset
|
11 $lang = $options->getLang(); |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
12 $pattern = "/<li id=\"${name}\"\s?([^>]*)>/is"; |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
13 $replacement = "<li id=\"${name}\" class=\"active\" $1>"; |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
14 $output = preg_replace($pattern, $replacement, $input); |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
15 |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
16 $pattern = '/<li id="([^"]+)"\s?([^>]*)>(.*?)<\/li>/is'; |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
17 $replacement = "<li id=\"\$1\" \$2><a href=\"%URL-$1%\">\$3</a></li>"; |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
18 |
|
46
15879e2aab65
Function for converting a stringmap to EVALable function.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
45
diff
changeset
|
19 $opt = repMapString($options->getUrlParams()); |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
20 |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
21 $output = preg_replace_callback($pattern, |
|
6
6c0162497d56
Improved error reporting, and support for multilevel params.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
5
diff
changeset
|
22 create_function( |
|
13
9dab5b96b789
Clean spurious whitespace.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
6
diff
changeset
|
23 '$matches', |
|
45
6c2c6acba30c
Support for hardcoding parameters.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
42
diff
changeset
|
24 'return "<li id=\"$matches[1]\" $matches[2]><a href=\"" . genUrl(' . $opt . ', array("name" => $matches[1]), array("lang") ) . "\">$matches[3]</a></li>";' |
|
13
9dab5b96b789
Clean spurious whitespace.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
6
diff
changeset
|
25 ), |
|
6
6c0162497d56
Improved error reporting, and support for multilevel params.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
5
diff
changeset
|
26 $output); |
|
4
74196528fc64
Refac to use xml as input, and remove filters and helper-functions from
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
27 |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
28 return $output; |
|
4
74196528fc64
Refac to use xml as input, and remove filters and helper-functions from
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
29 } |
|
74196528fc64
Refac to use xml as input, and remove filters and helper-functions from
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
30 |
|
37
da1726860524
Remove last global.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
31 function addLangBar($input, $options, $languages) |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
32 { |
|
37
da1726860524
Remove last global.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
33 $name = $options->getName(); |
|
da1726860524
Remove last global.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
34 $lang = $options->getLang(); |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
35 $langbar='<ul id="language-select">'; |
|
4
74196528fc64
Refac to use xml as input, and remove filters and helper-functions from
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
36 |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
37 foreach($languages as $l) { |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
38 $active = ($l == $lang) ? 0 : 1; |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
39 $langbar.= " |
|
5
18aafb1a8986
Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
4
diff
changeset
|
40 <li class=\"${l}\">"; |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
41 if ($active) |
|
45
6c2c6acba30c
Support for hardcoding parameters.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
42
diff
changeset
|
42 $langbar .= '<a href="'.genUrl($options->getUrlParams(), array( 'lang' => $l), array('lang', 'name') ) . '">'; |
|
5
18aafb1a8986
Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
4
diff
changeset
|
43 |
|
47
66382989353f
Extract baseDir only once.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
46
diff
changeset
|
44 //$flagUrl = "http://dev.bfginvest.no/php/flag.php"; |
|
66382989353f
Extract baseDir only once.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
46
diff
changeset
|
45 $flagUrl = $options->getFlagUrl(); |
|
66382989353f
Extract baseDir only once.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
46
diff
changeset
|
46 |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
47 $langbar .= " |
|
47
66382989353f
Extract baseDir only once.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
46
diff
changeset
|
48 <img src=\"${flagUrl}?lang=${l}&active=${active}\" width=\"20\" height=\"16\" alt=\"Norsk versjon - inaktiv\" title=\"Norsk\"/>"; |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
49 if ($active) |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
50 $langbar .= "</a>"; |
|
5
18aafb1a8986
Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
4
diff
changeset
|
51 |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
52 $langbar .= " |
|
4
74196528fc64
Refac to use xml as input, and remove filters and helper-functions from
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
53 </li> |
|
74196528fc64
Refac to use xml as input, and remove filters and helper-functions from
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
54 "; |
|
34
ca76d31b7d48
Whitespace clean.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
33
diff
changeset
|
55 |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
56 } |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
57 $langbar.='</ul>'; |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
58 $pattern = '/<ul id="language-select"\/>/'; |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
59 $replacement = $langbar; |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
60 $output = preg_replace($pattern, $replacement, $input); |
|
4
74196528fc64
Refac to use xml as input, and remove filters and helper-functions from
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
61 |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
13
diff
changeset
|
62 return $output; |
|
4
74196528fc64
Refac to use xml as input, and remove filters and helper-functions from
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
63 } |
|
74196528fc64
Refac to use xml as input, and remove filters and helper-functions from
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
64 ?> |
