Rev 376 | Rev 378 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
236 | tom | 1 | <?php |
2 | |||
3 | require '../_taios.php'; |
||
4 | |||
238 | tom | 5 | function getImageSizes($sourceImageFilePath, $maxResizeWidth, $maxResizeHeight) { |
6 | |||
7 | $size = getimagesize($sourceImageFilePath); |
||
8 | $origWidth = $size[0]; |
||
9 | $origHeight = $size[1]; |
||
10 | |||
11 | $resizedWidth = $origWidth; |
||
12 | $resizedHeight = $origHeight; |
||
13 | |||
14 | if ($resizedWidth > $maxResizeWidth) |
||
15 | { |
||
16 | $aspectRatio = $maxResizeWidth / $resizedWidth; |
||
17 | $resizedWidth = round($aspectRatio * $resizedWidth); |
||
18 | $resizedHeight = round($aspectRatio * $resizedHeight); |
||
19 | } |
||
20 | if ($resizedHeight > $maxResizeHeight) |
||
21 | { |
||
22 | $aspectRatio = $maxResizeHeight / $resizedHeight; |
||
23 | $resizedWidth = round($aspectRatio * $resizedWidth); |
||
24 | $resizedHeight = round($aspectRatio * $resizedHeight); |
||
25 | } |
||
26 | |||
239 | tom | 27 | return array($resizedWidth, $resizedHeight); |
238 | tom | 28 | } |
29 | |||
236 | tom | 30 | $page = new Taios_Page('Photo Albums', '../'); |
31 | $page->drawHeader(); |
||
32 | $page->drawMiddle(); |
||
33 | |||
34 | $dirName = $_GET['dir']; |
||
35 | if (empty($dirName)) |
||
36 | { |
||
37 | $page->redirect('index.php'); |
||
38 | } |
||
39 | |||
242 | tom | 40 | write('<p class="bold"><a href="index.php">Back to Photos</a></p><br />'); |
241 | tom | 41 | |
329 | tom | 42 | if (file_exists("albums/" . $dirName . "/description.txt")) |
326 | tom | 43 | { |
330 | tom | 44 | write('<p>' . $page->replaceBBCode(file_get_contents("albums/" . $dirName . "/description.txt")) . '</p><br />'); |
326 | tom | 45 | } |
46 | |||
238 | tom | 47 | write('<table>'); |
48 | write('<tr>'); |
||
49 | |||
358 | tom | 50 | $directory = "albums/" . $dirName . "/"; |
357 | tom | 51 | $sortOrder = "newestFirst"; |
52 | |||
53 | $results = array(); |
||
54 | $handler = opendir($directory); |
||
55 | |||
56 | while ($file = readdir($handler)) |
||
57 | { |
||
58 | if ($file != '.' && $file != '..' && $file != "robots.txt" && $file != ".htaccess" && getimagesize($directory . $file)) |
||
59 | { |
||
60 | $currentModified = filectime($directory . $file); |
||
61 | $file_names[] = $file; |
||
62 | $file_dates[] = $currentModified; |
||
63 | } |
||
64 | } |
||
65 | |||
66 | closedir($handler); |
||
67 | |||
68 | if ($sortOrder == "newestFirst") |
||
69 | { |
||
70 | arsort($file_dates); |
||
71 | } |
||
72 | else |
||
73 | { |
||
74 | asort($file_dates); |
||
75 | } |
||
76 | |||
77 | $file_names_Array = array_keys($file_dates); |
||
78 | foreach ($file_names_Array as $idx => $name) $name=$file_names[$name]; |
||
79 | $file_dates = array_merge($file_dates); |
||
80 | |||
81 | $i = 0; |
||
82 | |||
83 | $indexInArray = 0; |
||
238 | tom | 84 | $i = 0; |
85 | |||
357 | tom | 86 | foreach ($file_dates as $$file_dates) |
236 | tom | 87 | { |
357 | tom | 88 | $j = $file_names_Array[$indexInArray]; |
89 | $file = $file_names[$j]; |
||
90 | |||
91 | if ($i >= 3) |
||
327 | tom | 92 | { |
357 | tom | 93 | write('</tr><tr>'); |
94 | $i = 0; |
||
95 | } |
||
238 | tom | 96 | |
359 | tom | 97 | $filename = $directory . $file; |
357 | tom | 98 | $size = getImageSizes($filename, 300, 300); |
99 | |||
377 | tom | 100 | write('<td><a href="' . urlencode($filename) . '"><img width="' . $size[0] . '" height="' . $size[1] . '" src="' . htmlentities($filename) . '" /></a></td>'); |
238 | tom | 101 | |
357 | tom | 102 | $i++; |
103 | $indexInArray++; |
||
236 | tom | 104 | } |
105 | |||
238 | tom | 106 | write('</tr>'); |
107 | write('<table>'); |
||
108 | |||
236 | tom | 109 | $page->drawFooter(); |
110 | |||
111 | ?> |
||
112 |