Mercurial > hg > mgallery
annotate mgallery.php @ 138:c69e9b3f3046
Rename CSS "contents" element ID to "pageContents".
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Mon, 04 Sep 2017 14:45:12 +0300 |
parents | 8425fcd3fc25 |
children | d0ec01e13de5 |
rev | line source |
---|---|
0 | 1 <?php |
2 // | |
3 // Yet Another Image Gallery | |
69
7777887bc515
Update header/copyright blurbs.
Matti Hamalainen <ccr@tnsp.org>
parents:
68
diff
changeset
|
4 // -- Main PHP file |
7777887bc515
Update header/copyright blurbs.
Matti Hamalainen <ccr@tnsp.org>
parents:
68
diff
changeset
|
5 // Programmed and designed by Matti 'ccr' Hamalainen <ccr@tnsp.org> |
111 | 6 // (C) Copyright 2015-2017 Tecnic Software productions (TNSP) |
0 | 7 // |
8 require "mgallery.inc.php"; | |
9 | |
48
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
10 $pageLang = "fi"; |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
11 $pageLanguages = |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
12 [ |
92
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
13 "fi" => "FIN", |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
14 "en" => "ENG", |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
15 ]; |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
16 |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
17 |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
18 $pageTranslations = |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
19 [ |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
20 "gallery_error" => [ |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
21 "fi" => "Tapahtui virhe", |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
22 "en" => "An error occured", |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
23 ], |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
24 |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
25 "invalid_gallery_path" => [ |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
26 "fi" => "Gallerian tiedostopolkua <b>%1</b> ei ole olemassa.", |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
27 "en" => "Gallery path <b>%1</b> does not exist or is invalid.", |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
28 ], |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
29 |
93 | 30 "view_best_quality" => [ |
31 "fi" => "Näytä parhaalla laadulla", | |
32 "en" => "View best quality version", | |
92
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
33 ], |
126
e14605c7aea0
Add translations for image/sub-album counts.
Matti Hamalainen <ccr@tnsp.org>
parents:
125
diff
changeset
|
34 |
e14605c7aea0
Add translations for image/sub-album counts.
Matti Hamalainen <ccr@tnsp.org>
parents:
125
diff
changeset
|
35 "gallery_nimages" => [ |
e14605c7aea0
Add translations for image/sub-album counts.
Matti Hamalainen <ccr@tnsp.org>
parents:
125
diff
changeset
|
36 "fi" => "kuvaa", |
e14605c7aea0
Add translations for image/sub-album counts.
Matti Hamalainen <ccr@tnsp.org>
parents:
125
diff
changeset
|
37 "en" => "images", |
e14605c7aea0
Add translations for image/sub-album counts.
Matti Hamalainen <ccr@tnsp.org>
parents:
125
diff
changeset
|
38 ], |
e14605c7aea0
Add translations for image/sub-album counts.
Matti Hamalainen <ccr@tnsp.org>
parents:
125
diff
changeset
|
39 |
e14605c7aea0
Add translations for image/sub-album counts.
Matti Hamalainen <ccr@tnsp.org>
parents:
125
diff
changeset
|
40 "gallery_nsubalbums" => [ |
e14605c7aea0
Add translations for image/sub-album counts.
Matti Hamalainen <ccr@tnsp.org>
parents:
125
diff
changeset
|
41 "fi" => "albumia", |
e14605c7aea0
Add translations for image/sub-album counts.
Matti Hamalainen <ccr@tnsp.org>
parents:
125
diff
changeset
|
42 "en" => "albums", |
e14605c7aea0
Add translations for image/sub-album counts.
Matti Hamalainen <ccr@tnsp.org>
parents:
125
diff
changeset
|
43 ], |
48
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
44 ]; |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
45 |
0 | 46 |
47 // | |
48 // Various utility functions | |
49 // | |
89
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
50 function mgSetCookie($name, $value) |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
51 { |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
52 global $galBaseURL; |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
53 setcookie($name, $value, time() + 365*24*60*60, $galBaseURL); // expire in a year |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
54 } |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
55 |
92
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
56 |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
57 function mgQM($msg) |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
58 { |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
59 global $pageTranslations, $pageLang; |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
60 |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
61 if (isset($pageTranslations[$msg]) && isset($pageTranslations[$msg][$pageLang])) |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
62 $str = $pageTranslations[$msg][$pageLang]; |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
63 else |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
64 $str = $msg; |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
65 |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
66 foreach (func_get_args() as $argn => $argv) |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
67 $str = preg_replace("/\%".$argn."/", $argv, $str); |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
68 return $str; |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
69 } |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
70 |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
71 |
68
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
72 function mgTrimIfString($val) |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
73 { |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
74 if (is_string($val)) |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
75 return trim($val); |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
76 else |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
77 return $val; |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
78 } |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
79 |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
80 |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
81 function mgGetRequestItem($name, $default = "", $allowGet = FALSE) |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
82 { |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
83 if ($allowGet) |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
84 return isset($_REQUEST[$name]) ? mgTrimIfString($_REQUEST[$name]) : $default; |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
85 else |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
86 return isset($_POST[$name]) ? mgTrimIfString($_POST[$name]) : $default; |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
87 } |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
88 |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
89 |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
90 function chentities($str) |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
91 { |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
92 return htmlentities($str, ENT_NOQUOTES, "UTF-8"); |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
93 } |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
94 |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
95 |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
96 function mgPrintCSSLine($filename, $media = FALSE) |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
97 { |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
98 echo |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
99 " <link rel=\"stylesheet\" href=\"".$filename. |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
100 "\" type=\"text/css\" ".($media !== FALSE ? "media=\"".$media."\"": "")." />\n"; |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
101 } |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
102 |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
103 |
101
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
104 function mgPrintPageHeader($pageTitle, $pageExtra = "") |
68
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
105 { |
134
e2e70c38e7c6
Get rid of useless CSS logic and unused global refs.
Matti Hamalainen <ccr@tnsp.org>
parents:
133
diff
changeset
|
106 global $pageCSS, $pageCharset, $pageUrchin; |
68
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
107 |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
108 echo |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
109 "<!DOCTYPE html>\n". |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
110 "<html>\n". |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
111 "<head>\n". |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
112 " <meta charset=\"".$pageCharset."\">\n". |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
113 " <meta http-equiv=\"Content-type\" content=\"text/html;charset=".$pageCharset."\">\n". |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
114 " <title>".strip_tags($pageTitle)."</title>\n". |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
115 $pageExtra; |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
116 |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
117 if (is_array($pageCSS)) |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
118 { |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
119 foreach ($pageCSS as $uri => $media) |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
120 mgPrintCSSLine($uri, $media); |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
121 } |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
122 else |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
123 { |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
124 mgPrintCSSLine($pageCSS, FALSE); |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
125 } |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
126 |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
127 echo |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
128 "</head>\n". |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
129 "<body>\n"; |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
130 |
107
71de97240799
Add support for urchin file.
Matti Hamalainen <ccr@tnsp.org>
parents:
106
diff
changeset
|
131 if ($pageUrchin !== FALSE && file_exists($pageUrchin)) |
68
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
132 require_once $pageUrchin; |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
133 |
107
71de97240799
Add support for urchin file.
Matti Hamalainen <ccr@tnsp.org>
parents:
106
diff
changeset
|
134 echo |
138
c69e9b3f3046
Rename CSS "contents" element ID to "pageContents".
Matti Hamalainen <ccr@tnsp.org>
parents:
135
diff
changeset
|
135 "<div id=\"pageContents\">\n"; |
68
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
136 } |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
137 |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
138 |
101
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
139 function mgPrintPageFooter() |
68
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
140 { |
101
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
141 echo |
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
142 mgGetPageInfoFooter(). |
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
143 "</div>\n". |
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
144 "</body>\n</html>\n"; |
68
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
145 } |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
146 |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
147 |
38
3f16beb79f9e
Add image title string to certain images.
Matti Hamalainen <ccr@tnsp.org>
parents:
35
diff
changeset
|
148 function mgGetImageTitleStr($filename, &$data) |
3f16beb79f9e
Add image title string to certain images.
Matti Hamalainen <ccr@tnsp.org>
parents:
35
diff
changeset
|
149 { |
3f16beb79f9e
Add image title string to certain images.
Matti Hamalainen <ccr@tnsp.org>
parents:
35
diff
changeset
|
150 return |
3f16beb79f9e
Add image title string to certain images.
Matti Hamalainen <ccr@tnsp.org>
parents:
35
diff
changeset
|
151 chentities($filename). |
3f16beb79f9e
Add image title string to certain images.
Matti Hamalainen <ccr@tnsp.org>
parents:
35
diff
changeset
|
152 mgGetArr($data, "datetime", " - %1", "", "mgTimeStr"); |
3f16beb79f9e
Add image title string to certain images.
Matti Hamalainen <ccr@tnsp.org>
parents:
35
diff
changeset
|
153 } |
3f16beb79f9e
Add image title string to certain images.
Matti Hamalainen <ccr@tnsp.org>
parents:
35
diff
changeset
|
154 |
3f16beb79f9e
Add image title string to certain images.
Matti Hamalainen <ccr@tnsp.org>
parents:
35
diff
changeset
|
155 |
0 | 156 function mgGetImageURL() |
157 { | |
158 global $galImageURL, $galPath; | |
5
1bf73b49fc91
Beautify the generated URLs by removing occurences of duplicate forward
Matti Hamalainen <ccr@tnsp.org>
parents:
4
diff
changeset
|
159 return str_replace("//", "/", $galImageURL.$galPath."/".implode("", func_get_args())); |
0 | 160 } |
161 | |
162 | |
163 function mgGetURL($path, $image, $entities = TRUE) | |
164 { | |
165 global $galBaseURL, $galCleanURLS; | |
166 $amp = $entities ? "&" : "&"; | |
167 | |
168 if ($galCleanURLS) | |
169 { | |
5
1bf73b49fc91
Beautify the generated URLs by removing occurences of duplicate forward
Matti Hamalainen <ccr@tnsp.org>
parents:
4
diff
changeset
|
170 $url = $galBaseURL.$path."/".($image !== FALSE ? $image : ""); |
0 | 171 } |
172 else | |
173 { | |
5
1bf73b49fc91
Beautify the generated URLs by removing occurences of duplicate forward
Matti Hamalainen <ccr@tnsp.org>
parents:
4
diff
changeset
|
174 $url = |
0 | 175 $galBaseURL.mgGetSetting("mgallery_php")."?path=". |
176 $path.($image !== FALSE ? $amp."image=".$image : ""); | |
177 } | |
5
1bf73b49fc91
Beautify the generated URLs by removing occurences of duplicate forward
Matti Hamalainen <ccr@tnsp.org>
parents:
4
diff
changeset
|
178 |
1bf73b49fc91
Beautify the generated URLs by removing occurences of duplicate forward
Matti Hamalainen <ccr@tnsp.org>
parents:
4
diff
changeset
|
179 return str_replace("//", "/", $url); |
0 | 180 } |
181 | |
182 | |
48
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
183 function mgGetLanguageSelector() |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
184 { |
89
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
185 global $pageLang, $pageLanguages; |
48
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
186 if (isset($pageLanguages) && count($pageLanguages) > 0) |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
187 { |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
188 $str = "<div id=\"languages\">"; |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
189 foreach ($pageLanguages as $id => $lang) |
117
c1b02239a368
Add language id as css selector to language link elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
116
diff
changeset
|
190 $str .= "<a class=\"lang_".$id."\" href=\"?lang=".$id."\">".$lang."</a>"; |
48
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
191 return $str."</div>\n"; |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
192 } |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
193 else |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
194 return ""; |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
195 } |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
196 |
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
197 |
0 | 198 function mgGetNaviActive(&$galIndex, $index, $delta, &$res, &$url, $entities) |
199 { | |
200 global $galPath; | |
201 $res = $index + $delta; | |
202 if ($res >= 0 && $res <= sizeof($galIndex) - 1) | |
203 { | |
204 $url = mgGetURL($galPath, $galIndex[$res], $entities); | |
205 return TRUE; | |
206 } | |
207 else | |
208 return FALSE; | |
209 } | |
210 | |
211 | |
212 function mgGetNaviControlImage(&$galIndex, $index, $class, $url) | |
213 { | |
214 global $galTNPath; | |
215 | |
216 if ($url !== FALSE) | |
217 { | |
75
441d5338960e
Image control not needed when prev/next image does not exist.
Matti Hamalainen <ccr@tnsp.org>
parents:
74
diff
changeset
|
218 return |
441d5338960e
Image control not needed when prev/next image does not exist.
Matti Hamalainen <ccr@tnsp.org>
parents:
74
diff
changeset
|
219 "<div class=\"imageCtrl ".$class."\">". |
441d5338960e
Image control not needed when prev/next image does not exist.
Matti Hamalainen <ccr@tnsp.org>
parents:
74
diff
changeset
|
220 "<a href=\"".$url."\"><img src=\"". |
441d5338960e
Image control not needed when prev/next image does not exist.
Matti Hamalainen <ccr@tnsp.org>
parents:
74
diff
changeset
|
221 mgGetImageURL($galTNPath, $galIndex[$index]). |
84 | 222 "\" alt=\"".$galIndex[$index]."\" /></a></div>"; |
0 | 223 } |
75
441d5338960e
Image control not needed when prev/next image does not exist.
Matti Hamalainen <ccr@tnsp.org>
parents:
74
diff
changeset
|
224 else |
441d5338960e
Image control not needed when prev/next image does not exist.
Matti Hamalainen <ccr@tnsp.org>
parents:
74
diff
changeset
|
225 return ""; |
0 | 226 } |
227 | |
228 | |
229 function mgGetNaviControlImageBox(&$galIndex, $index, $class, $delta) | |
230 { | |
231 if (!mgGetNaviActive($galIndex, $index, $delta, $res, $url, TRUE)) | |
232 $url = FALSE; | |
233 | |
234 return mgGetNaviControlImage($galIndex, $res, $class, $url); | |
235 } | |
236 | |
237 | |
86
fd08e061413b
Use JavaScript to generate the "shadow"/bottom navigation elements in the
Matti Hamalainen <ccr@tnsp.org>
parents:
85
diff
changeset
|
238 function mgGetNaviControlImageBoxJS(&$galIndex, $index, $class, $delta) |
fd08e061413b
Use JavaScript to generate the "shadow"/bottom navigation elements in the
Matti Hamalainen <ccr@tnsp.org>
parents:
85
diff
changeset
|
239 { |
115 | 240 $str = mgGetNaviControlImageBox($galIndex, $index, $class, $delta); |
241 | |
242 if ($str != "") | |
86
fd08e061413b
Use JavaScript to generate the "shadow"/bottom navigation elements in the
Matti Hamalainen <ccr@tnsp.org>
parents:
85
diff
changeset
|
243 return |
fd08e061413b
Use JavaScript to generate the "shadow"/bottom navigation elements in the
Matti Hamalainen <ccr@tnsp.org>
parents:
85
diff
changeset
|
244 "<script type=\"text/javascript\">". |
115 | 245 "document.write(\"".str_replace("\"", "\\\"", $str)."\");". |
86
fd08e061413b
Use JavaScript to generate the "shadow"/bottom navigation elements in the
Matti Hamalainen <ccr@tnsp.org>
parents:
85
diff
changeset
|
246 "</script>"; |
115 | 247 else |
248 return ""; | |
86
fd08e061413b
Use JavaScript to generate the "shadow"/bottom navigation elements in the
Matti Hamalainen <ccr@tnsp.org>
parents:
85
diff
changeset
|
249 } |
fd08e061413b
Use JavaScript to generate the "shadow"/bottom navigation elements in the
Matti Hamalainen <ccr@tnsp.org>
parents:
85
diff
changeset
|
250 |
fd08e061413b
Use JavaScript to generate the "shadow"/bottom navigation elements in the
Matti Hamalainen <ccr@tnsp.org>
parents:
85
diff
changeset
|
251 |
0 | 252 function mgPrintTable($class, &$galEntries, &$galIndex, $start, $limit) |
253 { | |
19
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
254 global $galAlbumIcon, $galPath, $galTNPath, $galImageURL, $galUseCoverImages, $galUseTables; |
0 | 255 |
256 $galCount = count($galIndex); | |
257 if ($start >= $galCount) | |
258 return $start; | |
259 | |
260 $end = ($limit === FALSE) ? $galCount : $start + $limit; | |
261 if ($end > $galCount) $end = $galCount; | |
262 | |
263 $rowLimit = mgGetSetting("album_row_limit"); | |
264 $n = 0; | |
265 | |
112 | 266 echo "<".($galUseTables ? "table" : "div")." class=\"galleryTable ".$class."\">\n"; |
19
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
267 |
0 | 268 for ($index = $start; $index < $end; $index++) |
269 { | |
270 $filename = &$galIndex[$index]; | |
271 $data = &$galEntries[$filename]; | |
272 | |
19
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
273 if ($galUseTables && $n == 0) echo " <tr>\n"; |
0 | 274 |
19
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
275 if ($galUseTables) |
20
12916fcdb8b8
Improve the non-tabled mode.
Matti Hamalainen <ccr@tnsp.org>
parents:
19
diff
changeset
|
276 echo " <td class=\"galleryEntry\" id=\"cd".$data["base"]."\">\n"; |
19
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
277 else |
20
12916fcdb8b8
Improve the non-tabled mode.
Matti Hamalainen <ccr@tnsp.org>
parents:
19
diff
changeset
|
278 echo " <div class=\"galleryEntry\">\n"; |
0 | 279 |
280 if ($data["type"] == 0) | |
281 { | |
282 echo | |
103 | 283 " <div class=\"imageBox\" title=\"".mgGetImageTitleStr($filename, $data). |
284 "\"><a href=\"".mgGetURL($galPath, $filename)."\">". | |
285 "<img src=\"".mgGetImageURL($galTNPath, $filename)."\" alt=\"". | |
286 chentities($filename)."\"></a></div>\n". | |
287 mgGetArr($data, "caption", " <div class=\"imageCaption\">%1</div>\n", "", "chentities"); | |
0 | 288 /* |
289 if ($mode == "") | |
290 { | |
291 echo | |
292 " <select class=\"dropdown\" id=\"dd".$data["base"]."\" name=\"dd".$data["base"]. | |
293 "\" onchange=\"galPhotoDataChanged('".$data["base"]."');\">\n"; | |
294 | |
295 foreach ($picChoices as $name => $value) | |
296 { | |
297 echo " <option value=\"$value\"".($value == $data["id"] ? " selected=\"selected\"" : "").">".chentities($name)."</option>\n"; | |
298 } | |
299 echo | |
300 " </select>\n"; | |
301 } | |
302 */ | |
303 } | |
304 else | |
305 { | |
35
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
306 if ($galUseCoverImages && isset($data["image"])) |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
307 { |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
308 // Recursively determine the album cover image |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
309 $ptmp = [$galPath, $filename]; |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
310 $curr = &$data; |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
311 while (is_array($curr["image"])) |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
312 { |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
313 $curr = &$curr["image"]; |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
314 $ptmp[] = $curr["base"]; |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
315 } |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
316 |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
317 $ptmp[] = $galTNPath; |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
318 $ptmp[] = $curr["image"]; |
39 | 319 |
35
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
320 $atmp = $galImageURL.implode("/", mgCleanPathArray(TRUE, 0, count($ptmp), $ptmp)); |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
321 } |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
322 else |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
323 // No album cover, use default |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
324 $atmp = $galAlbumIcon; |
985596db0f01
Implement recursive depth album covers.
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
325 |
0 | 326 echo |
24 | 327 " <a href=\"".mgGetURL(mgCleanPath(TRUE, $galPath, $filename), FALSE)."\">". |
47
1e2b55775a84
Begin implementation of translated caption/title support.
Matti Hamalainen <ccr@tnsp.org>
parents:
44
diff
changeset
|
328 "<img class=\"albumIcon\" src=\"".$atmp."\" alt=\"". |
1e2b55775a84
Begin implementation of translated caption/title support.
Matti Hamalainen <ccr@tnsp.org>
parents:
44
diff
changeset
|
329 mgGetTrans($data["caption"], TRUE). |
1e2b55775a84
Begin implementation of translated caption/title support.
Matti Hamalainen <ccr@tnsp.org>
parents:
44
diff
changeset
|
330 "\" />\n". |
1e2b55775a84
Begin implementation of translated caption/title support.
Matti Hamalainen <ccr@tnsp.org>
parents:
44
diff
changeset
|
331 " <div class=\"albumTitle\">".mgGetTrans($data["caption"], TRUE)."</div></a>\n"; |
0 | 332 } |
333 | |
19
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
334 if ($galUseTables) |
0 | 335 { |
19
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
336 echo " </td>\n"; |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
337 if (++$n >= $rowLimit) |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
338 { |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
339 echo " </tr>\n"; |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
340 $n = 0; |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
341 } |
0 | 342 } |
19
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
343 else |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
344 echo " </div>\n"; |
0 | 345 } |
19
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
346 |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
347 if ($galUseTables) |
0 | 348 { |
19
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
349 if ($n > 0) |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
350 { |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
351 while ($n++ < $rowLimit) |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
352 echo " <td></td>\n"; |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
353 echo " </tr>\n"; |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
354 } |
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
355 echo "</table>\n"; |
0 | 356 } |
20
12916fcdb8b8
Improve the non-tabled mode.
Matti Hamalainen <ccr@tnsp.org>
parents:
19
diff
changeset
|
357 else |
112 | 358 { |
20
12916fcdb8b8
Improve the non-tabled mode.
Matti Hamalainen <ccr@tnsp.org>
parents:
19
diff
changeset
|
359 echo "</div>\n"; |
112 | 360 } |
20
12916fcdb8b8
Improve the non-tabled mode.
Matti Hamalainen <ccr@tnsp.org>
parents:
19
diff
changeset
|
361 |
0 | 362 return $index; |
363 } | |
364 | |
365 | |
124
eac2cf04261a
Change how date timestamps are stored and handled. This breaks cache file
Matti Hamalainen <ccr@tnsp.org>
parents:
120
diff
changeset
|
366 function mgTimeStr($stamp) |
0 | 367 { |
124
eac2cf04261a
Change how date timestamps are stored and handled. This breaks cache file
Matti Hamalainen <ccr@tnsp.org>
parents:
120
diff
changeset
|
368 // return date_format($stamp, "d M Y (H:i:s)"); |
eac2cf04261a
Change how date timestamps are stored and handled. This breaks cache file
Matti Hamalainen <ccr@tnsp.org>
parents:
120
diff
changeset
|
369 return date("d M Y (H:i:s)", $stamp); |
0 | 370 } |
371 | |
372 | |
78
b7f2e643279f
Add file size to information shown.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
373 function mgFileSize($size) |
b7f2e643279f
Add file size to information shown.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
374 { |
b7f2e643279f
Add file size to information shown.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
375 foreach ([1024*1024 => "MiB", 1024 => "kiB"] as $mdiv => $mpost) |
b7f2e643279f
Add file size to information shown.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
376 { |
b7f2e643279f
Add file size to information shown.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
377 if ($size > $mdiv) |
b7f2e643279f
Add file size to information shown.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
378 return sprintf("%1.2f %s", $size / $mdiv, $mpost); |
b7f2e643279f
Add file size to information shown.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
379 } |
b7f2e643279f
Add file size to information shown.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
380 return sprintf("%d bytes", $size); |
b7f2e643279f
Add file size to information shown.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
381 } |
b7f2e643279f
Add file size to information shown.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
382 |
b7f2e643279f
Add file size to information shown.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
383 |
132
5ffc84b7da1a
Add class parameter to mgGetPageInfoHeaderStart().
Matti Hamalainen <ccr@tnsp.org>
parents:
130
diff
changeset
|
384 function mgGetPageInfoHeaderStart($class = NULL) |
101
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
385 { |
132
5ffc84b7da1a
Add class parameter to mgGetPageInfoHeaderStart().
Matti Hamalainen <ccr@tnsp.org>
parents:
130
diff
changeset
|
386 return "<div id=\"pageInfoHeader\"".($class != NULL ? " class=\"".$class."\"" : "").">\n"; |
101
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
387 } |
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
388 |
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
389 |
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
390 function mgGetPageInfoHeaderEnd() |
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
391 { |
135 | 392 return mgGetLanguageSelector()."</div>"; |
101
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
393 } |
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
394 |
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
395 |
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
396 function mgGetPageInfoFooter() |
0 | 397 { |
398 if (($str = mgGetSetting("page_info")) !== FALSE) | |
101
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
399 return "<div id=\"pageInfoFooter\"><div>".$str."</div></div>"; |
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
400 else |
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
401 return ""; |
0 | 402 } |
403 | |
404 | |
31
300396947f04
Remove slight code duplication by factoring to a helper function.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
405 function mgGetBreadCrump($class, &$pdata) |
300396947f04
Remove slight code duplication by factoring to a helper function.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
406 { |
300396947f04
Remove slight code duplication by factoring to a helper function.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
407 return |
300396947f04
Remove slight code duplication by factoring to a helper function.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
408 "<a class=\"".$class."\" href=\"".mgGetURL($pdata["path"], FALSE)."\">". |
47
1e2b55775a84
Begin implementation of translated caption/title support.
Matti Hamalainen <ccr@tnsp.org>
parents:
44
diff
changeset
|
409 mgGetTrans($pdata["caption"], TRUE). |
1e2b55775a84
Begin implementation of translated caption/title support.
Matti Hamalainen <ccr@tnsp.org>
parents:
44
diff
changeset
|
410 "</a>"; |
31
300396947f04
Remove slight code duplication by factoring to a helper function.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
411 } |
300396947f04
Remove slight code duplication by factoring to a helper function.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
412 |
300396947f04
Remove slight code duplication by factoring to a helper function.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
413 |
0 | 414 function mgPrintBreadCrumbs($galData) |
415 { | |
63
1c32ece9acde
Some residual array() => [] conversions.
Matti Hamalainen <ccr@tnsp.org>
parents:
49
diff
changeset
|
416 $res = []; |
0 | 417 if ($galData["caption"]) |
31
300396947f04
Remove slight code duplication by factoring to a helper function.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
418 $res[] = mgGetBreadCrump("naviBreadCrumbCurr", $galData); |
0 | 419 |
420 $tmp = $galData; | |
421 while (isset($tmp["parent"])) | |
422 { | |
423 $pdata = $tmp["parent"]; | |
31
300396947f04
Remove slight code duplication by factoring to a helper function.
Matti Hamalainen <ccr@tnsp.org>
parents:
29
diff
changeset
|
424 $res[] = mgGetBreadCrump("naviBreadCrumbItem", $pdata); |
0 | 425 $tmp = $tmp["parent"]; |
426 } | |
427 | |
428 if (count($res) > 1) | |
429 { | |
430 echo | |
118
6739c52e110c
Change naviBreadCrumbs to CSS id instead of class.
Matti Hamalainen <ccr@tnsp.org>
parents:
117
diff
changeset
|
431 "<div id=\"naviBreadCrumbs\">". |
0 | 432 implode("<span class=\"naviBreadCrumbSep\"></span>", array_reverse($res)). |
433 "</div>\n"; | |
434 } | |
435 } | |
436 | |
437 | |
438 // | |
76 | 439 // Global locale initialization |
440 // | |
441 if (!isset($localeInited) || !$localeInited) | |
442 { | |
443 $localeInited = TRUE; | |
444 $pageCharset = "UTF-8"; | |
445 | |
446 mb_internal_encoding($pageCharset); | |
447 | |
448 $tmp = "en_US.".strtolower(str_replace("-", "", $pageCharset)); | |
449 setlocale(LC_ALL, $tmp); | |
450 } | |
451 | |
452 | |
453 // | |
89
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
454 // Read and process gallery settings |
0 | 455 // |
456 mgReadSettings(); | |
457 | |
458 $pageCSS = mgGetSetting("css"); | |
107
71de97240799
Add support for urchin file.
Matti Hamalainen <ccr@tnsp.org>
parents:
106
diff
changeset
|
459 $pageUrchin = mgGetSetting("urchin_file"); |
0 | 460 $galBasePath = mgGetSetting("base_path"); |
461 $galBaseURL = mgGetSetting("base_url"); | |
462 $galImageURL = mgGetSetting("image_url", mgGetSetting("base_url")); | |
463 | |
17
3f7bc4202df3
Add new configuration setting 'cover_images' to disable/enable sub-album
Matti Hamalainen <ccr@tnsp.org>
parents:
13
diff
changeset
|
464 $galUseCoverImages = mgGetSetting("cover_images"); |
19
59075f5e7a62
Add configuration setting to enable and disable use of HTML table elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
17
diff
changeset
|
465 $galUseTables = mgGetSetting("use_tables"); |
17
3f7bc4202df3
Add new configuration setting 'cover_images' to disable/enable sub-album
Matti Hamalainen <ccr@tnsp.org>
parents:
13
diff
changeset
|
466 |
0 | 467 $galAlbumIcon = mgGetSetting("album_icon"); |
468 $galCleanURLS = mgGetSetting("clean_urls"); | |
469 $galTNPath = mgGetSetting("tn_path"); | |
470 $galMedSuffix = mgGetSetting("med_suffix"); | |
471 $galTitlePrefix = mgGetSetting("title_prefix"); | |
472 $galTitleSep = mgGetSetting("title_sep"); | |
473 | |
68
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
474 $galMode = mgGetRequestItem("mode", "view", TRUE); |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
475 $galPath = mgGetRequestItem("path", ".", TRUE); |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
476 $galPageIndex = intval(mgGetRequestItem("index", 0, TRUE)); |
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
477 $galImage = mgGetRequestItem("image", FALSE, TRUE); |
0 | 478 |
479 if (is_string($galImage)) | |
480 $galImage = basename($galImage); | |
481 | |
130
f825d644cf7a
Implement new config setting "timezone" for specifying the timezone used for date/timestamp interpretation.
Matti Hamalainen <ccr@tnsp.org>
parents:
128
diff
changeset
|
482 if (($pageTimeZone = mgGetSetting("timezone")) !== NULL) |
f825d644cf7a
Implement new config setting "timezone" for specifying the timezone used for date/timestamp interpretation.
Matti Hamalainen <ccr@tnsp.org>
parents:
128
diff
changeset
|
483 date_default_timezone_set($pageTimeZone); |
f825d644cf7a
Implement new config setting "timezone" for specifying the timezone used for date/timestamp interpretation.
Matti Hamalainen <ccr@tnsp.org>
parents:
128
diff
changeset
|
484 |
0 | 485 |
89
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
486 // Check language setting |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
487 if (($tmp = mgGetRequestItem("lang", FALSE, TRUE)) !== FALSE) |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
488 { |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
489 $tmp = strtolower($tmp); |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
490 if (array_key_exists($tmp, $pageLanguages)) |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
491 { |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
492 $pageLang = $tmp; |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
493 mgSetCookie("mglang", $tmp); |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
494 } |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
495 } |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
496 else |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
497 if (isset($_COOKIE["mglang"])) |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
498 { |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
499 $tmp = strtolower($_COOKIE["mglang"]); |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
500 if (array_key_exists($tmp, $pageLanguages)) |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
501 $pageLang = $tmp; |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
502 } |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
503 |
d9524db8f6a5
Improve how language etc. cookie settings are handled.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
504 |
90
3953f534c874
Add "hidden" request item setting "tables" to force use or disuse of table elements for layout.
Matti Hamalainen <ccr@tnsp.org>
parents:
89
diff
changeset
|
505 // Check "tables" setting |
3953f534c874
Add "hidden" request item setting "tables" to force use or disuse of table elements for layout.
Matti Hamalainen <ccr@tnsp.org>
parents:
89
diff
changeset
|
506 if (isset($_REQUEST["tables"])) |
3953f534c874
Add "hidden" request item setting "tables" to force use or disuse of table elements for layout.
Matti Hamalainen <ccr@tnsp.org>
parents:
89
diff
changeset
|
507 { |
3953f534c874
Add "hidden" request item setting "tables" to force use or disuse of table elements for layout.
Matti Hamalainen <ccr@tnsp.org>
parents:
89
diff
changeset
|
508 $galUseTables = mgGetRequestItem("tables", FALSE, TRUE); |
3953f534c874
Add "hidden" request item setting "tables" to force use or disuse of table elements for layout.
Matti Hamalainen <ccr@tnsp.org>
parents:
89
diff
changeset
|
509 mgSetCookie("mgtables", $galUseTables ? 1 : 0); |
3953f534c874
Add "hidden" request item setting "tables" to force use or disuse of table elements for layout.
Matti Hamalainen <ccr@tnsp.org>
parents:
89
diff
changeset
|
510 } |
3953f534c874
Add "hidden" request item setting "tables" to force use or disuse of table elements for layout.
Matti Hamalainen <ccr@tnsp.org>
parents:
89
diff
changeset
|
511 else |
3953f534c874
Add "hidden" request item setting "tables" to force use or disuse of table elements for layout.
Matti Hamalainen <ccr@tnsp.org>
parents:
89
diff
changeset
|
512 if (isset($_COOKIE["mgtables"])) |
3953f534c874
Add "hidden" request item setting "tables" to force use or disuse of table elements for layout.
Matti Hamalainen <ccr@tnsp.org>
parents:
89
diff
changeset
|
513 $galUseTables = intval($_COOKIE["mgtables"]); |
3953f534c874
Add "hidden" request item setting "tables" to force use or disuse of table elements for layout.
Matti Hamalainen <ccr@tnsp.org>
parents:
89
diff
changeset
|
514 |
3953f534c874
Add "hidden" request item setting "tables" to force use or disuse of table elements for layout.
Matti Hamalainen <ccr@tnsp.org>
parents:
89
diff
changeset
|
515 |
0 | 516 // |
517 // Attempt to read the data cache file | |
518 // | |
519 $filename = mgGetPath(mgCleanPath(TRUE, $galBasePath, $galPath), "cache_file"); | |
520 $filename2 = mgGetPath(mgCleanPath(FALSE, $galBasePath, $galPath), "cache_file"); | |
521 if ($filename == $filename2 && file_exists($filename) && ($fp = @fopen($filename, "rb")) !== FALSE) | |
522 { | |
523 if (flock($fp, LOCK_SH)) | |
524 { | |
525 require($filename); | |
526 flock($fp, LOCK_UN); | |
527 } | |
528 fclose($fp); | |
529 } | |
530 | |
531 | |
532 // If no data available, show an error page | |
533 if (!isset($galData) || !isset($galEntries) || | |
534 !isset($galAlbumsIndex) || !isset($galImagesIndex)) | |
535 { | |
113 | 536 mgPrintPageHeader($galTitlePrefix.$galTitleSep."ERROR!"); |
0 | 537 |
538 echo | |
92
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
539 "<h1>".mgQM("gallery_error")."</h1>\n". |
17d1da44b140
Implement simple translation system for the "hardcoded" messages.
Matti Hamalainen <ccr@tnsp.org>
parents:
90
diff
changeset
|
540 "<p>".mgQM("invalid_gallery_path", chentities($galPath))."</p>"; |
0 | 541 |
12
79987aa7ee9a
Change some debugging (commented out).
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
542 //echo "<p>filename=: '".$filename."', X: galData=".intval(isset($galData)).", galEntries=".intval(isset($galEntries))."\n"; |
0 | 543 |
101
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
544 mgPrintPageFooter(); |
0 | 545 exit; |
546 } | |
547 | |
548 | |
549 // | |
550 // Print page header, etc. | |
551 // | |
552 if (($index = array_search($galImage, $galImagesIndex)) !== FALSE) | |
553 { | |
554 // | |
555 // Single image mode | |
556 // | |
106
a3b8cd4183e6
Change {album,image}_navigation setting to *_flags.
Matti Hamalainen <ccr@tnsp.org>
parents:
105
diff
changeset
|
557 $ctrlFlags = mgGetSetting("image_flags"); |
0 | 558 $data = $galEntries[$galImage]; |
559 | |
66 | 560 $list = [ |
561 mgGetArr($data, ["width", "height"], "<span class=\"infoDimensions\"><b>%1</b> x <b>%2</b> px</span>", NULL), | |
562 mgGetArr($data, "model", "<span class=\"infoModel\"><b>%1</b></span>", NULL), | |
563 mgGetArr($data, "fnumber", "<span class=\"infoFNumber\"><b>f/%1</b></span>", NULL), | |
564 mgGetArr($data, "exposure", "<span class=\"infoExposure\"><b>%1</b> sec</span>", NULL, NULL), | |
565 mgGetArr($data, "iso", "<span class=\"infoISO\">ISO <b>%1</b></span>", NULL), | |
566 mgGetArr($data, "focallength", "<span class=\"infoFocalLength\">F-L <b>%1</b>mm</span>", NULL), | |
567 mgGetArr($data, "lensmodel", "<span class=\"infoLensModel\"><i>%1</i></span>", NULL), | |
78
b7f2e643279f
Add file size to information shown.
Matti Hamalainen <ccr@tnsp.org>
parents:
76
diff
changeset
|
568 mgGetArr($data, "filesize", "<span class=\"infoFileSize\">%1</span>", "", "mgFileSize"), |
66 | 569 ]; |
570 | |
47
1e2b55775a84
Begin implementation of translated caption/title support.
Matti Hamalainen <ccr@tnsp.org>
parents:
44
diff
changeset
|
571 $pageTitle = $galTitlePrefix.$galTitleSep.mgGetTrans($galData["caption"])." - ".$galImage; |
68
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
572 mgPrintPageHeader($pageTitle); |
44
bc9da3b71888
Implement imgur-style image zoom/de-zoom via image click/enter.
Matti Hamalainen <ccr@tnsp.org>
parents:
43
diff
changeset
|
573 echo |
132
5ffc84b7da1a
Add class parameter to mgGetPageInfoHeaderStart().
Matti Hamalainen <ccr@tnsp.org>
parents:
130
diff
changeset
|
574 mgGetPageInfoHeaderStart("imagePageHeader"). |
44
bc9da3b71888
Implement imgur-style image zoom/de-zoom via image click/enter.
Matti Hamalainen <ccr@tnsp.org>
parents:
43
diff
changeset
|
575 "<h1>".chentities($pageTitle)."</h1>\n"; |
0 | 576 |
106
a3b8cd4183e6
Change {album,image}_navigation setting to *_flags.
Matti Hamalainen <ccr@tnsp.org>
parents:
105
diff
changeset
|
577 if ($ctrlFlags & MGF_BREADCRUMBS) |
0 | 578 mgPrintBreadCrumbs($galData); |
579 | |
580 echo | |
115 | 581 mgGetPageInfoHeaderEnd()."\n". |
82
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
582 "<div id=\"imageCBox\">\n". |
86
fd08e061413b
Use JavaScript to generate the "shadow"/bottom navigation elements in the
Matti Hamalainen <ccr@tnsp.org>
parents:
85
diff
changeset
|
583 mgGetNaviControlImageBoxJS($galImagesIndex, $index, "prevBtm", -1)."\n". |
fd08e061413b
Use JavaScript to generate the "shadow"/bottom navigation elements in the
Matti Hamalainen <ccr@tnsp.org>
parents:
85
diff
changeset
|
584 mgGetNaviControlImageBox($galImagesIndex, $index, "prev", -1)."\n". |
115 | 585 "<div class=\"imageBox\">". |
82
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
586 "<img id=\"imageImage\" src=\"".mgGetImageURL($galTNPath, $data["base"].$galMedSuffix.$data["ext"])."\" alt=\"".chentities($data["base"].$galMedSuffix.$data["ext"])."\">". |
66 | 587 "</div>\n". |
86
fd08e061413b
Use JavaScript to generate the "shadow"/bottom navigation elements in the
Matti Hamalainen <ccr@tnsp.org>
parents:
85
diff
changeset
|
588 mgGetNaviControlImageBoxJS($galImagesIndex, $index, "nextBtm", 1)."\n". |
fd08e061413b
Use JavaScript to generate the "shadow"/bottom navigation elements in the
Matti Hamalainen <ccr@tnsp.org>
parents:
85
diff
changeset
|
589 mgGetNaviControlImageBox($galImagesIndex, $index, "next", 1)."\n". |
66 | 590 "<div class=\"imageCaption\">".mgGetArr($data, "caption", "%1", "")."</div>\n". |
0 | 591 "<div class=\"infoBox\">\n". |
115 | 592 mgGetArr($data, "datetime", "<span class=\"infoDateTime\">%1</span>\n", "", "mgTimeStr"). |
593 implode(",\n", array_filter($list, function($a) { return $a !== NULL; }))."\n". | |
119
cf295af9754d
Remove target="_blank" from the full resolution image links.
Matti Hamalainen <ccr@tnsp.org>
parents:
118
diff
changeset
|
594 "<a id=\"imageLink\" href=\"".$galImageURL.$galPath."/".$galImage."\">". |
93 | 595 mgQM("view_best_quality")."</a>\n". |
115 | 596 "</div>\n". |
0 | 597 "</div>\n"; |
598 | |
599 // Javascript navigation | |
106
a3b8cd4183e6
Change {album,image}_navigation setting to *_flags.
Matti Hamalainen <ccr@tnsp.org>
parents:
105
diff
changeset
|
600 if ($ctrlFlags & MGF_JAVASCRIPT) |
0 | 601 { |
602 $prevActive = mgGetNaviActive($galImagesIndex, $index, -1, $res, $prevURL, FALSE); | |
603 $nextActive = mgGetNaviActive($galImagesIndex, $index, 1, $res, $nextURL, FALSE); | |
604 echo | |
605 "<script type=\"text/javascript\">\n". | |
606 "var mgalPrevURL = \"".($prevActive ? $prevURL : "")."\";\n". | |
607 "var mgalNextURL = \"".($nextActive ? $nextURL : "")."\";\n". | |
85
e017b5314d1c
Make "up" arrow key to go "up" to the album gallery in the image view.
Matti Hamalainen <ccr@tnsp.org>
parents:
84
diff
changeset
|
608 "var mgalUpURL = \"".mgGetURL($galData["path"], FALSE)."\";\n". |
0 | 609 "\n"; |
82
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
610 |
0 | 611 ?> |
81
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
612 function mgalAddEvent(evobj, evtype, evcallback) |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
613 { |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
614 if (evobj == null || typeof(evobj) == 'undefined') |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
615 return; |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
616 |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
617 if (evobj.addEventListener) |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
618 evobj.addEventListener(evtype, evcallback, false); |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
619 else |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
620 if (evobj.attachEvent) |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
621 evobj.attachEvent("on" + evtype, evcallback); |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
622 else |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
623 evobj["on"+evtype] = evcallback; |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
624 }; |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
625 |
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
626 |
0 | 627 function mgalNavigateTo(url) |
628 { | |
43 | 629 if (url != "") |
630 window.location = url; | |
0 | 631 } |
632 | |
633 | |
634 function mgalProcessKeyPress(ev) | |
635 { | |
43 | 636 ev = ev || window.event; |
637 var key = ev.keyCode ? ev.keyCode : ev.which; | |
638 switch (key) | |
639 { | |
640 case 37: | |
641 case 65: | |
44
bc9da3b71888
Implement imgur-style image zoom/de-zoom via image click/enter.
Matti Hamalainen <ccr@tnsp.org>
parents:
43
diff
changeset
|
642 case 52: |
43 | 643 // left |
644 mgalNavigateTo(mgalPrevURL); | |
645 break; | |
0 | 646 |
43 | 647 case 39: |
648 case 68: | |
44
bc9da3b71888
Implement imgur-style image zoom/de-zoom via image click/enter.
Matti Hamalainen <ccr@tnsp.org>
parents:
43
diff
changeset
|
649 case 54: |
43 | 650 // right |
651 mgalNavigateTo(mgalNextURL); | |
652 break; | |
44
bc9da3b71888
Implement imgur-style image zoom/de-zoom via image click/enter.
Matti Hamalainen <ccr@tnsp.org>
parents:
43
diff
changeset
|
653 |
85
e017b5314d1c
Make "up" arrow key to go "up" to the album gallery in the image view.
Matti Hamalainen <ccr@tnsp.org>
parents:
84
diff
changeset
|
654 case 38: |
e017b5314d1c
Make "up" arrow key to go "up" to the album gallery in the image view.
Matti Hamalainen <ccr@tnsp.org>
parents:
84
diff
changeset
|
655 case 56: |
e017b5314d1c
Make "up" arrow key to go "up" to the album gallery in the image view.
Matti Hamalainen <ccr@tnsp.org>
parents:
84
diff
changeset
|
656 // up |
e017b5314d1c
Make "up" arrow key to go "up" to the album gallery in the image view.
Matti Hamalainen <ccr@tnsp.org>
parents:
84
diff
changeset
|
657 mgalNavigateTo(mgalUpURL); |
e017b5314d1c
Make "up" arrow key to go "up" to the album gallery in the image view.
Matti Hamalainen <ccr@tnsp.org>
parents:
84
diff
changeset
|
658 break; |
e017b5314d1c
Make "up" arrow key to go "up" to the album gallery in the image view.
Matti Hamalainen <ccr@tnsp.org>
parents:
84
diff
changeset
|
659 |
44
bc9da3b71888
Implement imgur-style image zoom/de-zoom via image click/enter.
Matti Hamalainen <ccr@tnsp.org>
parents:
43
diff
changeset
|
660 default: |
bc9da3b71888
Implement imgur-style image zoom/de-zoom via image click/enter.
Matti Hamalainen <ccr@tnsp.org>
parents:
43
diff
changeset
|
661 return true; |
43 | 662 } |
44
bc9da3b71888
Implement imgur-style image zoom/de-zoom via image click/enter.
Matti Hamalainen <ccr@tnsp.org>
parents:
43
diff
changeset
|
663 |
bc9da3b71888
Implement imgur-style image zoom/de-zoom via image click/enter.
Matti Hamalainen <ccr@tnsp.org>
parents:
43
diff
changeset
|
664 ev.preventDefault(); |
bc9da3b71888
Implement imgur-style image zoom/de-zoom via image click/enter.
Matti Hamalainen <ccr@tnsp.org>
parents:
43
diff
changeset
|
665 return false; |
0 | 666 } |
667 | |
82
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
668 |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
669 function mgalGetWindowSize() |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
670 { |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
671 var winW = 0, winH = 0; |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
672 if (typeof(window.innerWidth) == 'number') |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
673 { |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
674 // Non-MSIE |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
675 winW = window.innerWidth; |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
676 winH = window.innerHeight; |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
677 } |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
678 else |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
679 if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
680 { |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
681 // MSIE 6+ in 'standards compliant mode' |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
682 winW = document.documentElement.clientWidth; |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
683 winH = document.documentElement.clientHeight; |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
684 } |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
685 else |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
686 if (document.body && (document.body.clientWidth || document.body.clientHeight)) |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
687 { |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
688 // MSIE 4 compatible |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
689 winW = document.body.clientWidth; |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
690 winH = document.body.clientHeight; |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
691 } |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
692 |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
693 return [winW, winH]; |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
694 } |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
695 |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
696 |
109
c8cfc6cc161a
Adjust image scaling to be delayed and not being done on each resize event
Matti Hamalainen <ccr@tnsp.org>
parents:
107
diff
changeset
|
697 function mgalAdjustImageDo() |
82
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
698 { |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
699 var eimg = document.getElementById("imageImage"); |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
700 var win = mgalGetWindowSize(); |
120
d1ed6213f6d2
Various improvements/changes to CSS and usability on mobile devices.
Matti Hamalainen <ccr@tnsp.org>
parents:
119
diff
changeset
|
701 var madj = 0.85; |
82
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
702 if (eimg) |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
703 { |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
704 if (eimg.width > eimg.height) |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
705 { |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
706 eimg.style.width = "100%"; |
83
f13b05e4c896
Possibly fix image scaling adjustments.
Matti Hamalainen <ccr@tnsp.org>
parents:
82
diff
changeset
|
707 eimg.style.height = "auto"; |
82
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
708 if (eimg.height > win[1] * madj) |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
709 { |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
710 eimg.style.width = "auto"; |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
711 eimg.style.height = (win[1] * madj)+"px"; |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
712 } |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
713 } |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
714 else |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
715 { |
83
f13b05e4c896
Possibly fix image scaling adjustments.
Matti Hamalainen <ccr@tnsp.org>
parents:
82
diff
changeset
|
716 eimg.style.width = "auto"; |
82
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
717 if (eimg.height > win[1] * madj) |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
718 eimg.style.height = (win[1] * madj)+"px"; |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
719 else |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
720 eimg.style.height = "100%"; |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
721 } |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
722 } |
109
c8cfc6cc161a
Adjust image scaling to be delayed and not being done on each resize event
Matti Hamalainen <ccr@tnsp.org>
parents:
107
diff
changeset
|
723 adjustPID = -1; |
82
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
724 } |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
725 |
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
726 |
109
c8cfc6cc161a
Adjust image scaling to be delayed and not being done on each resize event
Matti Hamalainen <ccr@tnsp.org>
parents:
107
diff
changeset
|
727 function mgalAdjustImage() |
c8cfc6cc161a
Adjust image scaling to be delayed and not being done on each resize event
Matti Hamalainen <ccr@tnsp.org>
parents:
107
diff
changeset
|
728 { |
c8cfc6cc161a
Adjust image scaling to be delayed and not being done on each resize event
Matti Hamalainen <ccr@tnsp.org>
parents:
107
diff
changeset
|
729 if (adjustPID == -1) |
133
1d06f301ec6c
Make image adjustment to be performed faster.
Matti Hamalainen <ccr@tnsp.org>
parents:
132
diff
changeset
|
730 adjustPID = setTimeout(mgalAdjustImageDo, 50); |
109
c8cfc6cc161a
Adjust image scaling to be delayed and not being done on each resize event
Matti Hamalainen <ccr@tnsp.org>
parents:
107
diff
changeset
|
731 } |
c8cfc6cc161a
Adjust image scaling to be delayed and not being done on each resize event
Matti Hamalainen <ccr@tnsp.org>
parents:
107
diff
changeset
|
732 |
c8cfc6cc161a
Adjust image scaling to be delayed and not being done on each resize event
Matti Hamalainen <ccr@tnsp.org>
parents:
107
diff
changeset
|
733 |
c8cfc6cc161a
Adjust image scaling to be delayed and not being done on each resize event
Matti Hamalainen <ccr@tnsp.org>
parents:
107
diff
changeset
|
734 mgalAddEvent(document.getElementById("imageImage"), "load", mgalAdjustImageDo); |
82
e0e5e5197bb8
Refactor for somewhat more mobile-bullshit-friendly style and usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
81
diff
changeset
|
735 mgalAddEvent(window, "resize", mgalAdjustImage); |
81
697846b47d17
Add javascript helper function mgalAddEvent() and use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
78
diff
changeset
|
736 mgalAddEvent(document, "keypress", mgalProcessKeyPress); |
109
c8cfc6cc161a
Adjust image scaling to be delayed and not being done on each resize event
Matti Hamalainen <ccr@tnsp.org>
parents:
107
diff
changeset
|
737 adjustPID = -1; |
44
bc9da3b71888
Implement imgur-style image zoom/de-zoom via image click/enter.
Matti Hamalainen <ccr@tnsp.org>
parents:
43
diff
changeset
|
738 |
0 | 739 <? |
740 echo | |
741 "</script>\n"; | |
742 } | |
743 } | |
744 else | |
745 { | |
746 // | |
747 // Gallery mode | |
748 // | |
749 // - needs sub-modes / handling of order shit | |
750 // - Javascript stuff for picture data updates | |
751 // | |
752 $pageTitle = $galTitlePrefix.mgGetArr($galData, "caption", " - %1", "", "chentities"); | |
68
941d3be57d7b
Get rid of mgeneric.inc.php dependency, as we don't need much from there .. for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
67
diff
changeset
|
753 mgPrintPageHeader($pageTitle); |
125
379a8cd3bb2c
Show number of images and sub-galleries on the page title. (I can't figure
Matti Hamalainen <ccr@tnsp.org>
parents:
124
diff
changeset
|
754 |
379a8cd3bb2c
Show number of images and sub-galleries on the page title. (I can't figure
Matti Hamalainen <ccr@tnsp.org>
parents:
124
diff
changeset
|
755 $ptmp = []; |
379a8cd3bb2c
Show number of images and sub-galleries on the page title. (I can't figure
Matti Hamalainen <ccr@tnsp.org>
parents:
124
diff
changeset
|
756 if (count($galImagesIndex) > 0) |
126
e14605c7aea0
Add translations for image/sub-album counts.
Matti Hamalainen <ccr@tnsp.org>
parents:
125
diff
changeset
|
757 $ptmp[] = count($galImagesIndex)." ".mgQM("gallery_nimages"); |
125
379a8cd3bb2c
Show number of images and sub-galleries on the page title. (I can't figure
Matti Hamalainen <ccr@tnsp.org>
parents:
124
diff
changeset
|
758 if (count($galAlbumsIndex) > 0) |
126
e14605c7aea0
Add translations for image/sub-album counts.
Matti Hamalainen <ccr@tnsp.org>
parents:
125
diff
changeset
|
759 $ptmp[] = count($galAlbumsIndex)." ".mgQM("gallery_nsubalbums"); |
125
379a8cd3bb2c
Show number of images and sub-galleries on the page title. (I can't figure
Matti Hamalainen <ccr@tnsp.org>
parents:
124
diff
changeset
|
760 |
379a8cd3bb2c
Show number of images and sub-galleries on the page title. (I can't figure
Matti Hamalainen <ccr@tnsp.org>
parents:
124
diff
changeset
|
761 if (count($ptmp)) |
379a8cd3bb2c
Show number of images and sub-galleries on the page title. (I can't figure
Matti Hamalainen <ccr@tnsp.org>
parents:
124
diff
changeset
|
762 $pageTitle .= " (".implode($ptmp, ", ").")"; |
379a8cd3bb2c
Show number of images and sub-galleries on the page title. (I can't figure
Matti Hamalainen <ccr@tnsp.org>
parents:
124
diff
changeset
|
763 |
48
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
764 echo |
101
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
765 mgGetPageInfoHeaderStart(). |
48
5a2dd41ff7ad
Initial implementation of language selector.
Matti Hamalainen <ccr@tnsp.org>
parents:
47
diff
changeset
|
766 "<h1>".$pageTitle."</h1>\n"; |
0 | 767 |
106
a3b8cd4183e6
Change {album,image}_navigation setting to *_flags.
Matti Hamalainen <ccr@tnsp.org>
parents:
105
diff
changeset
|
768 $ctrlFlags = mgGetSetting("album_flags"); |
a3b8cd4183e6
Change {album,image}_navigation setting to *_flags.
Matti Hamalainen <ccr@tnsp.org>
parents:
105
diff
changeset
|
769 if ($ctrlFlags & MGF_BREADCRUMBS) |
0 | 770 mgPrintBreadCrumbs($galData); |
771 | |
47
1e2b55775a84
Begin implementation of translated caption/title support.
Matti Hamalainen <ccr@tnsp.org>
parents:
44
diff
changeset
|
772 if (isset($galData["header"]) && strlen($gheader = mgGetTrans($galData["header"])) > 0) |
13
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
773 { |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
774 // Translate relative URLs in header, if needed |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
775 $baseURL = mgGetSetting("image_url"); |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
776 |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
777 $headerText = preg_replace_callback( |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
778 "@href\s*=\s*\"([^\"]+)\"@i", |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
779 function ($matches) use($galPath, $baseURL) |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
780 { |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
781 $mstmp = $matches[1]; |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
782 if (preg_match("@^[a-z]+://@i", $mstmp) === 0) |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
783 { |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
784 if ($mstmp[0] != "/") |
28
2d8112d6c3bc
Fix relative links re-parsing.
Matti Hamalainen <ccr@tnsp.org>
parents:
27
diff
changeset
|
785 $mstmp = $baseURL."/".$galPath."/".str_replace("//", "/", $mstmp); |
13
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
786 } |
28
2d8112d6c3bc
Fix relative links re-parsing.
Matti Hamalainen <ccr@tnsp.org>
parents:
27
diff
changeset
|
787 return "href=\"".$mstmp."\""; |
13
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
788 }, |
47
1e2b55775a84
Begin implementation of translated caption/title support.
Matti Hamalainen <ccr@tnsp.org>
parents:
44
diff
changeset
|
789 $gheader); |
13
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
790 |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
791 echo "<div class=\"albumHeaderText\">".$headerText."</div>\n"; |
951752fb1c21
Add translation of relative URLs in header text blocks.
Matti Hamalainen <ccr@tnsp.org>
parents:
12
diff
changeset
|
792 } |
0 | 793 |
101
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
794 echo mgGetPageInfoHeaderEnd(); |
100
f74307f05696
Add pageInfoHeader element to contain the topmost info/navigation blurb elements.
Matti Hamalainen <ccr@tnsp.org>
parents:
93
diff
changeset
|
795 |
0 | 796 mgPrintTable("albumTable", $galEntries, $galAlbumsIndex, 0, FALSE); |
797 mgPrintTable("imageTable", $galEntries, $galImagesIndex, 0, FALSE); | |
798 } | |
799 | |
101
00bcbe2473ff
Work on the page structure / element layout and clean up the header/footer code.
Matti Hamalainen <ccr@tnsp.org>
parents:
100
diff
changeset
|
800 mgPrintPageFooter(); |
0 | 801 ?> |