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