git-svn-id: https://svn.pioder.pl/sg-svn@12 3ed2631f-fe0d-47e0-9194-a46bc0f18ee8master
| @ -1,17 +1,7 @@ | |||||
| <? | |||||
| /** | |||||
| * @package Galeria Suczawa 2009 | |||||
| * @file config.php | |||||
| * @version $Id$ | |||||
| * @author PioDer <pioder@wp.pl> | |||||
| * @link http://suczawa.ath.cx/ | |||||
| **/ | |||||
| define('DB_HOST','localhost'); | |||||
| define('DB_USER','root'); | |||||
| define('DB_PASS',''); | |||||
| define('DB_NAME','galeria'); | |||||
| //liczba zdjęć na stronę | |||||
| $per_page=3; | |||||
| ?> | |||||
| <?php | |||||
| define('PERPAGE', 12); | |||||
| define('DB_HOST', ''); | |||||
| define('DB_NAME', ''); | |||||
| define('DB_USER', ''); | |||||
| define('DB_PASS', ''); | |||||
| ?> | |||||
| @ -0,0 +1,105 @@ | |||||
| <?php | |||||
| require_once('init.php'); #init stuff | |||||
| $id=(isset($_GET['id']))?intval($_GET['id']):1; #check which photo should be loaded | |||||
| $xhtml = preg_match('/application\/xhtml\+xml(?![+a-z])(;q=(0\.\d{1,3}|[01]))?/i', | |||||
| $_SERVER['HTTP_ACCEPT'], $xhtml) && (isset($xhtml[2])?$xhtml[2]:1) > 0 || | |||||
| strpos($_SERVER["HTTP_USER_AGENT"], "W3C_Validator")!==false || | |||||
| strpos($_SERVER["HTTP_USER_AGENT"], "WebKit")!==false; | |||||
| header('Content-Type: '.($xhtml?'application/xhtml+x':'text/ht').'ml; charset="utf-8"'); #IE doesn't support application/xhtml+xml - workaround | |||||
| echo '<?xml version="1.0" encoding="utf-8"?>'; | |||||
| ?> | |||||
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> | |||||
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl"> | |||||
| <head> | |||||
| <title>Podgląd zdjęcia nr <?=$id?></title> | |||||
| <link type="text/css" href="style.css" rel="stylesheet" /> | |||||
| <script type="text/javascript"> | |||||
| <!-- <[CDATA[ --> | |||||
| path='http://<?=$_SERVER['HTTP_HOST'].dirname($_SERVER['REQUEST_URI'])?>'; | |||||
| <!-- ]]> --> | |||||
| </script> | |||||
| <script type="text/javascript" src="script.js"></script> | |||||
| </head> | |||||
| <body onload="init()"> | |||||
| <div id="display"> | |||||
| <? | |||||
| if (!$result = $DB->query('SELECT * FROM photos WHERE id=\'$i\'')) | |||||
| { | |||||
| showError('MySQL error'); | |||||
| } | |||||
| if ($result->num_rows == 0) | |||||
| { | |||||
| $row = array( | |||||
| 'author' => '--', | |||||
| 'description' => 'Zdjęcie usunięte', | |||||
| 'photo_name' => 'no_image.png', | |||||
| 'id' => $i | |||||
| ); | |||||
| } | |||||
| else | |||||
| { | |||||
| $row = $result->fetch_assoc(); | |||||
| $row['author'] = ($row['author']=='') ? 'Autor nieznany' : $row['author']; | |||||
| $row['description'] = ($row['description']=='') ? 'Brak opisu' : $row['description']; | |||||
| }?> | |||||
| <div id="current"> | |||||
| <a href="<?=htmlspecialchars($row['photo_name'])?>"><img id="curr_image" height="300px" alt="Zdjęcie" src="<?=htmlspecialchars($row['photo_name'])?>" /></a> | |||||
| <br/> | |||||
| <b>Autor: </b><a id="author"><?=htmlspecialchars($row['author'])?></a><br /> | |||||
| <b>Opis: </b><a id="description"><?=nl2br(htmlspecialchars($row['description']))?></a> | |||||
| </div> | |||||
| <? | |||||
| $prev = $DB->query('SELECT COUNT(id) FROM photos WHERE id<'.$id)->fetch_row(); #check if there are some previous photos | |||||
| $prev=$prev[0]; | |||||
| if($prev>0) { | |||||
| $prev=$DB->query('SELECT * FROM photos WHERE id<'.$id.' ORDER BY id DESC LIMIT 1;')->fetch_assoc(); #if yes, get the previous photo's data | |||||
| ?> | |||||
| <div id="prev"> | |||||
| <a onclick="javascript:prev()"> | |||||
| <img id="prev_image" height="100px" alt="<?=$prev['id']?>" src="<?=$prev['thumb_name']?>" /><br/> | |||||
| </a> | |||||
| <a onclick="javascript:prev()">Poprzednie zdjęcie</a> | |||||
| </div> | |||||
| <? | |||||
| } | |||||
| else { | |||||
| ?> | |||||
| <div id="prev" style="display: none"> | |||||
| <a onclick="javascript:prev()"> | |||||
| <img id="prev_image" height="100px" alt="" src="" /><br/> | |||||
| </a> | |||||
| <a onclick="javascript:prev()">Poprzednie zdjęcie</a> | |||||
| </div> | |||||
| <? | |||||
| } | |||||
| $next = $DB->query('SELECT COUNT(id) FROM photos WHERE id>'.$id)->fetch_row(); #check if there are some next photos | |||||
| $next=$next[0]; | |||||
| if($next>0) { | |||||
| $next=$DB->query('SELECT * FROM photos WHERE id>'.$id.' ORDER BY id ASC LIMIT 1;')->fetch_assoc(); #if yes, get the next photo's data | |||||
| ?> | |||||
| <div id="next"> | |||||
| <a onclick="javascript:next()"> | |||||
| <img id="next_image" height="100px" alt="<?=$next['id']?>" src="<?=$next['thumb_name']?>" /><br/> | |||||
| </a> | |||||
| <a onclick="javascript:next()">Następne zdjęcie</a> | |||||
| </div> | |||||
| <? | |||||
| } | |||||
| else { | |||||
| ?> | |||||
| <div id="next" style="display: none"> | |||||
| <a onclick="javascript:next()"> | |||||
| <img id="next_image" height="100px" alt="" src="" /><br/> | |||||
| </a> | |||||
| <a onclick="javascript:next()">Następne zdjęcie</a> | |||||
| </div> | |||||
| <? | |||||
| } | |||||
| ?> | |||||
| </div> | |||||
| </body> | |||||
| </html> | |||||
| @ -0,0 +1,48 @@ | |||||
| <?php | |||||
| $xhtml = preg_match('/application\/xhtml\+xml(?![+a-z])(;q=(0\.\d{1,3}|[01]))?/i', | |||||
| $_SERVER['HTTP_ACCEPT'], $xhtml) && (isset($xhtml[2])?$xhtml[2]:1) > 0 || | |||||
| strpos($_SERVER["HTTP_USER_AGENT"], "W3C_Validator")!==false || | |||||
| strpos($_SERVER["HTTP_USER_AGENT"], "WebKit")!==false; | |||||
| header('Content-Type: '.($xhtml?'application/xhtml+x':'text/ht').'ml; charset="utf-8"'); #IE doesn't support application/xhtml+xml - workaround | |||||
| echo '<?xml version="1.0" encoding="utf-8"?>'; | |||||
| ?> | |||||
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> | |||||
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl"> | |||||
| <head> | |||||
| <title>Download</title> | |||||
| <link type="text/css" href="style.css" rel="stylesheet" /> | |||||
| </head> | |||||
| <body> | |||||
| <div id="page"> | |||||
| <img src="images/logo.png" width="800px" alt="Logo strony" /> | |||||
| <div id="content"> | |||||
| <div id="dlinks"> | |||||
| <div id="dlinks_inner"> | |||||
| <img src="images/linki.png" alt="Linki:" /> | |||||
| <div class="dframe"> | |||||
| <a class="link" href="http://rapidshare.com/files/243528123/ZDJECIA.7z.001">http://rapidshare.com/files/243528123/ZDJECIA.7z.001</a><br/> | |||||
| <a class="link" href="http://rapidshare.com/files/243652052/ZDJECIA.7z.002">http://rapidshare.com/files/243652052/ZDJECIA.7z.002</a><br/> | |||||
| <a class="link" href="http://rapidshare.com/files/243685412/ZDJECIA.7z.003">http://rapidshare.com/files/243685412/ZDJECIA.7z.003</a><br/> | |||||
| <a class="link" href="http://rapidshare.com/files/243743885/ZDJECIA.7z.004">http://rapidshare.com/files/243743885/ZDJECIA.7z.004</a><br/> | |||||
| <a class="link" href="http://rapidshare.com/files/243781654/ZDJECIA.7z.005">http://rapidshare.com/files/243781654/ZDJECIA.7z.005</a> <br/> | |||||
| <a class="link" href="http://rapidshare.com/files/243890408/ZDJECIA.7z.006">http://rapidshare.com/files/243890408/ZDJECIA.7z.006</a> <br/> | |||||
| <a class="link" href="http://rapidshare.com/files/243914577/ZDJECIA.7z.007">http://rapidshare.com/files/243914577/ZDJECIA.7z.007</a> <br/> | |||||
| <a class="link" href="http://rapidshare.com/files/243926118/ZDJECIA.7z.008">http://rapidshare.com/files/243926118/ZDJECIA.7z.008</a> <br/> | |||||
| </div> | |||||
| <img src="images/hasło.png" alt="Hasło:" /> | |||||
| <div class="dframe"> | |||||
| <b>Hasło: </b> Sucava2009 | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| <div id="footer"> | |||||
| <a id="copyright">Copyright © 2009 ...</a><br /> | |||||
| <div id="links"> | |||||
| <a href="index.php">Strona główna</a> | <a href="gallery.php">Fotogaleria</a> | <a href="download.php">Download</a> | <a href="http://suczawa.ath.cx">Forum</a> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| </body> | |||||
| </html> | |||||
| @ -1,67 +1,5 @@ | |||||
| <? | |||||
| /** | |||||
| * @package Galeria Suczawa 2009 | |||||
| * @file functions.php | |||||
| * @version $Id$ | |||||
| * @author PioDer <pioder@wp.pl> | |||||
| * @link http://suczawa.ath.cx/ | |||||
| **/ | |||||
| #wyświetl błąd | |||||
| function blad($msg) | |||||
| { | |||||
| die(' | |||||
| <h1>Blad Galerii Zdjec Suczawa 2009!</h1> | |||||
| <span style="color: red; font-weight: bold; font-size: 12pt">'.$msg.'</span>'); | |||||
| } | |||||
| function GenerujListeStron() | |||||
| { | |||||
| global $cnt; | |||||
| global $page; | |||||
| $content = ''; | |||||
| if ($page>1) | |||||
| { | |||||
| $content .= '<a href="?page=1" title="Pierwsza strona"><<</a>'; | |||||
| $content .= '  <a href="?page='.($page-1).'" title="Poprzednia strona"><</a> '; | |||||
| } | |||||
| #wygeneruj strony | |||||
| for ($i=1;$i<=$cnt;$i++) | |||||
| { | |||||
| if ($i==$page) | |||||
| { | |||||
| if ($i == $cnt) | |||||
| { | |||||
| $content .= '<span style="text-decoration: underline">'.$i.'</span>'; | |||||
| } | |||||
| else | |||||
| { | |||||
| $content .= '<span style="text-decoration: underline">'.$i.'</span>'.' | '; | |||||
| } | |||||
| } | |||||
| else | |||||
| { | |||||
| if ($i == $cnt) | |||||
| { | |||||
| $content .= '<a href="?page='.$i.'">'.$i.'</a> '; | |||||
| } | |||||
| else | |||||
| { | |||||
| $content .= '<a href="?page='.$i.'">'.$i.'</a> | '; | |||||
| } | |||||
| } | |||||
| } | |||||
| #dodaj linka "+1 strona" oraz do ostatniej | |||||
| if ($page<$cnt) | |||||
| { | |||||
| $content .= '<a href="?page='.($page+1).'" title="Następna strona">></a>'; | |||||
| $content .= '  <a href="?page='.$cnt.'" title="Ostatnia strona">>></a>'; | |||||
| } | |||||
| #dodaj linka do ostatniej strony | |||||
| echo $content; | |||||
| } | |||||
| ?> | |||||
| <?php | |||||
| function showError($message) { | |||||
| die($message); | |||||
| } | |||||
| ?> | |||||
| @ -1,88 +1,75 @@ | |||||
| <?php | |||||
| require_once('init.php'); #init stuff | |||||
| $page=(isset($_GET['page']))?intval($_GET['page']):1; #check which page should be loaded | |||||
| $xhtml = preg_match('/application\/xhtml\+xml(?![+a-z])(;q=(0\.\d{1,3}|[01]))?/i', | |||||
| $_SERVER['HTTP_ACCEPT'], $xhtml) && (isset($xhtml[2])?$xhtml[2]:1) > 0 || | |||||
| strpos($_SERVER["HTTP_USER_AGENT"], "W3C_Validator")!==false || | |||||
| strpos($_SERVER["HTTP_USER_AGENT"], "WebKit")!==false; | |||||
| header('Content-Type: '.($xhtml?'application/xhtml+x':'text/ht').'ml; charset="utf-8"'); #IE doesn't support application/xhtml+xml - workaround | |||||
| echo '<?xml version="1.0" encoding="utf-8"?>'; | |||||
| ?> | |||||
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> | |||||
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl"> | |||||
| <head> | |||||
| <title>Galeria zdjęć</title> | |||||
| <link type="text/css" href="style.css" rel="stylesheet" /> | |||||
| <script type="text/javascript" src="script.js"></script> | |||||
| </head> | |||||
| <body> | |||||
| <div id="page"> | |||||
| <img src="images/logo.png" width="800px" alt="Logo strony" /> | |||||
| <div id="content"> | |||||
| <div id="images"> | |||||
| <?php | <?php | ||||
| /** | |||||
| * @package Galeria Suczawa 2009 | |||||
| * @file gallery.php | |||||
| * @version $Id$ | |||||
| * @author chp1994 <chp1994@gmail.com> | |||||
| * @link http://suczawa.ath.cx/ | |||||
| **/ | |||||
| $page= (isset($_GET['page'])) ? intval($_GET['page']) : 0; | |||||
| $xhtml = preg_match('/application\/xhtml\+xml(?![+a-z])(;q=(0\.\d{1,3}|[01]))?/i', | |||||
| $_SERVER['HTTP_ACCEPT'], $xhtml) && (isset($xhtml[2])?$xhtml[2]:1) > 0 || | |||||
| strpos($_SERVER["HTTP_USER_AGENT"], "W3C_Validator")!==false || | |||||
| strpos($_SERVER["HTTP_USER_AGENT"], "WebKit")!==false; | |||||
| header('Content-Type: '.($xhtml ? 'application/xhtml+x' : 'text/ht').'ml; charset="utf-8"'); | |||||
| require('./init.php'); | |||||
| echo '<?xml version="1.0" encoding="utf-8"?>'; | |||||
| ?> | |||||
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> | |||||
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl"> | |||||
| <head> | |||||
| <title>Galeria Suczawa 2009</title> | |||||
| <link type="text/css" href="style.css" rel="stylesheet" /> | |||||
| <script type="text/javascript"> | |||||
| sciezka = 'http://' + '<?= $_SERVER['HTTP_HOST']; ?>' + '/sg/robocze/'; | |||||
| </script> | |||||
| <script type="text/javascript" src="script.js"><!-- AJAX Library by chp1994(c) //--></script> | |||||
| </head> | |||||
| <body onload="javascipt:init()"> | |||||
| <div id="page"> | |||||
| <div id="images_outer"> | |||||
| <table id="images"><tr> | |||||
| <?php | |||||
| //$sql = "SELECT * FROM `photos` LIMIT ".($page*$per_page).", $per_page"; | |||||
| $sql = "SELECT * FROM `photos` $limit"; | |||||
| if (!$result = $DB->query($sql)) | |||||
| { | |||||
| blad('Nie mozna pobrac zdjec uzytkownikow!'); | |||||
| } | |||||
| for($i=$page*$per_page; $row = $result->fetch_assoc(); $i++) | |||||
| { | |||||
| echo '<td class="image_outer" onclick="javascript:previewImage('.($row['id']).')"><img alt="'.$row['photo_name'].'" src="images/upload/'.$row['thumb_name'].'" class="image" /></td>'; | |||||
| if($i%3==2 && $i!=$count-1) echo '</tr><tr>'; | |||||
| } | |||||
| while($i%3) { | |||||
| $i++; | |||||
| echo '<td class="image_outer_black"> </td>'; | |||||
| } | |||||
| ?> | |||||
| </tr> | |||||
| </table> | |||||
| </div> | |||||
| <div id="pages_outer"> | |||||
| <div id="pages">Strony: | |||||
| <?php | |||||
| GenerujListeStron(); | |||||
| ?> | |||||
| </div> | |||||
| </div> | |||||
| <div id="disp"> | |||||
| <div id="disp_middle"> | |||||
| <div id="disp_inner"> | |||||
| <div><h3 id="disp_name"> </h3></div> | |||||
| <div id="disp_top"> | |||||
| <img id="disp_prev" src="images/prev.png" onclick="javascript:prev()" alt="Poprzedni"></img> | |||||
| <a id="disp_a" href=""><img id="disp_img" src="" alt="Zdjecie" /></a> | |||||
| <img id="disp_next" src="images/next.png" onclick="javascript:next()" alt="Nastepny"></img> | |||||
| </div> | |||||
| <div id="disp_info"></div> | |||||
| <div><b>Autor:</b> <a id="disp_author"> </a></div> | |||||
| <a id="disp_close" onclick="javascript:closeDisp()">Zamknij</a> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| <div id="icons"> | |||||
| <a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml11" alt="Valid XHTML 1.1" height="31" width="88" /></a> | |||||
| <a href="http://jigsaw.w3.org/css-validator/check/referer"><img width="88px" height="31px" src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Poprawny CSS!" /></a> | |||||
| </div> | |||||
| </div> | |||||
| </body> | |||||
| </html> | |||||
| if (!$result = $DB->query('SELECT * FROM photos LIMIT '.(($page-1)*PERPAGE).' , '.PERPAGE)) { | |||||
| showError('MySQL error'); | |||||
| } | |||||
| while($row = $result->fetch_assoc() ){ | |||||
| ?> | |||||
| <div class="image_outer"> | |||||
| <a target="blank" href="display.php?id=<?=$row['id']?>"> | |||||
| <img class="image" height="100px" alt="Zdjęcie: <?=$row['photo_name']?>" src="<?=$row['thumb_name']?>" id="image_<?=$row['id']?>" /> | |||||
| </a> | |||||
| </div> | |||||
| <? | |||||
| } | |||||
| ?> | |||||
| </div> | |||||
| <? | |||||
| if (!$result = $DB->query('SELECT COUNT(id) AS count FROM photos')) { | |||||
| showError('MySQL error'); | |||||
| } | |||||
| $row = $result->fetch_assoc(); | |||||
| $count = $row['count']; | |||||
| $pcount=ceil($result[0]/PERPAGE); | |||||
| ?> | |||||
| <div id="pages">Strony: | |||||
| <?if($page==1) | |||||
| echo'<< < | '; | |||||
| else | |||||
| echo '<a href="gallery.php?page=1"><<</a> <a href="gallery.php?page='.($page-1).'"><</a> | '; | |||||
| for($i=1; $i<$page; $i++) { | |||||
| echo '<a href="gallery.php?page='.$i.'">'.$i.'</a> | '; | |||||
| } | |||||
| echo $page.' | '; | |||||
| for($i=$page+1; $i<=$pcount; $i++) { | |||||
| echo '<a href="gallery.php?page='.$i.'">'.$i.'</a> | '; | |||||
| } | |||||
| if($page==$pcount) | |||||
| echo '> >>'; | |||||
| else | |||||
| echo '<a href="gallery.php?page='.($page+1).'">></a> <a href="gallery.php?page='.$pcount.'">>></a>'; | |||||
| ?> | |||||
| </div> | |||||
| </div> | |||||
| <div id="footer"> | |||||
| <a id="copyright">Copyright © 2009 ...</a><br /> | |||||
| <div id="links"> | |||||
| <a href="index.php">Strona główna</a> | <a href="gallery.php">Fotogaleria</a> | <a href="download.php">Download</a> | <a href="http://suczawa.ath.cx">Forum</a> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| </body> | |||||
| </html> | |||||
| @ -0,0 +1,34 @@ | |||||
| <?php | |||||
| $xhtml = preg_match('/application\/xhtml\+xml(?![+a-z])(;q=(0\.\d{1,3}|[01]))?/i', | |||||
| $_SERVER['HTTP_ACCEPT'], $xhtml) && (isset($xhtml[2])?$xhtml[2]:1) > 0 || | |||||
| strpos($_SERVER["HTTP_USER_AGENT"], "W3C_Validator")!==false || | |||||
| strpos($_SERVER["HTTP_USER_AGENT"], "WebKit")!==false; | |||||
| header('Content-Type: '.($xhtml?'application/xhtml+x':'text/ht').'ml; charset="utf-8"'); #IE doesn't support application/xhtml+xml - workaround | |||||
| echo '<?xml version="1.0" encoding="utf-8"?>'; | |||||
| ?> | |||||
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> | |||||
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl"> | |||||
| <head> | |||||
| <title>Strona główna</title> | |||||
| <link type="text/css" href="style.css" rel="stylesheet" /> | |||||
| </head> | |||||
| <body> | |||||
| <div id="page"> | |||||
| <img src="images/logo.png" width="800px" alt="Logo strony" /> | |||||
| <div id="content"> | |||||
| <div id="dlinks"> | |||||
| <a href="gallery.php"><img src="images/galeria.png" alt="Galeria zdjęć" /></a> <br/> | |||||
| <a href="download.php"><img src="images/download.png" alt="Download" /></a> <br/> | |||||
| <a href="http://suczawa.ath.cx"><img src="images/forum.png" alt="Forum" /></a> | |||||
| </div> | |||||
| </div> | |||||
| <div id="footer"> | |||||
| <a id="copyright">Copyright © 2009 ...</a><br /> | |||||
| <div id="links"> | |||||
| <a href="index.php">Strona główna</a> | <a href="gallery.php">Fotogaleria</a> | <a href="download.php">Download</a> | <a href="http://suczawa.ath.cx">Forum</a> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| </body> | |||||
| </html> | |||||
| @ -1,105 +1,12 @@ | |||||
| <? | |||||
| /** | |||||
| * @package Galeria Suczawa 2009 | |||||
| * @file init.php | |||||
| * @version $Id$ | |||||
| * @author chp1994 <chp1994@gmail.com> | |||||
| * @link http://suczawa.ath.cx/ | |||||
| **/ | |||||
| #dołącz plik konfiguracyjny oraz funkcje | |||||
| require('./config.php'); | |||||
| require('./functions.php'); | |||||
| #sprawdź, czy jest wyłączone register globals oraz magic quotes? | |||||
| if (ini_get('register_globals') == 1) | |||||
| { | |||||
| ini_set('register_globals', '0'); | |||||
| if (ini_get('register_globals') == 1) | |||||
| { | |||||
| blad('Could not disable register_globals.'); | |||||
| } | |||||
| } | |||||
| if (get_magic_quotes_gpc()) | |||||
| { | |||||
| blad('Prosze wylaczyc magic_quotes_gpc w php.ini!'); | |||||
| } | |||||
| #połącz z bazą danych | |||||
| $DB = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME); | |||||
| #sprawdź pomyślność połączenia | |||||
| if ($DB->connect_error) | |||||
| { | |||||
| blad('Could not connect do database server ('.$DB->connect_errno.')'.$DB->connect_error); | |||||
| } | |||||
| if (!$DB->query("SET NAMES 'utf8'")) | |||||
| { | |||||
| blad('Could not set character to UTF-8'); | |||||
| } | |||||
| #pobierz id pierwszego zdjęcia | |||||
| $sql = "SELECT `id` FROM `photos` ORDER BY `id` LIMIT 1"; | |||||
| if (!$result = $DB->query($sql)) | |||||
| { | |||||
| blad('Nie mozna odczytac id pierwszego zdjecia!'); | |||||
| } | |||||
| $row = $result->fetch_assoc(); | |||||
| $firstid = $row['id']; | |||||
| $result->free; //zwolnij pamięć | |||||
| unset($row); | |||||
| #pobierz id ostatniego zdjęcia | |||||
| $sql = "SELECT `id` FROM `photos` ORDER BY `id` DESC LIMIT 1"; | |||||
| if (!$result = $DB->query($sql)) | |||||
| { | |||||
| blad('Nie mozna odczytac id ostatniego zdjecia!'); | |||||
| } | |||||
| $row = $result->fetch_assoc(); | |||||
| $lastid = $row['id']; | |||||
| $result->free; //zwolnij pamięć | |||||
| unset($row); | |||||
| #pobierz liczbę zdjęć w galerii | |||||
| $sql = "SELECT COUNT(`id`) AS `count` FROM `photos`"; | |||||
| if (!$result = $DB->query($sql)) | |||||
| { | |||||
| blad('Nie mozna odczytac liczby zdjec!'); | |||||
| } | |||||
| $row = $result->fetch_assoc(); | |||||
| $count = $row['count']; | |||||
| $result->free; //zwolnij pamięć | |||||
| // | |||||
| //wygeneruj strone | |||||
| // | |||||
| if (isset($_GET['page'])&&($_GET['page']!=1)) | |||||
| { | |||||
| if (!is_numeric($_GET['page'])) | |||||
| { | |||||
| die('Hacking attempt'); | |||||
| } | |||||
| $value = ($_GET['page']-1)*$per_page; | |||||
| $limit = 'LIMIT '.$value . ', '.$per_page; | |||||
| $page = $_GET['page']; | |||||
| } | |||||
| else | |||||
| { | |||||
| $limit = 'LIMIT 0, '.$per_page; | |||||
| $page=1; | |||||
| } | |||||
| $cnt = ceil($count / $per_page); | |||||
| if(isset($_GET['page']) && ($_GET['page']>$cnt)) | |||||
| { | |||||
| blad('Podana strona nie istnieje!'); | |||||
| } | |||||
| // | |||||
| //koniec generowania stron | |||||
| // | |||||
| ?> | |||||
| <? | |||||
| require_once('config.php'); | |||||
| require_once('functions.php'); | |||||
| $DB = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME); #connect with the database | |||||
| if ($DB->connect_error) { #check if there were any errors connecting | |||||
| showError('Could not connect do database server ('.$DB->connect_errno.'): '.$DB->connect_error); | |||||
| } | |||||
| if (!$DB->query("SET NAMES 'utf8'")) { #use utf-8 | |||||
| showError('Could not set character to UTF-8'); | |||||
| } | |||||
| ?> | |||||
| @ -1,118 +1,103 @@ | |||||
| var ajax; | |||||
| var disp; | |||||
| var disp_img; | |||||
| var disp_info; | |||||
| var disp_name; | |||||
| var disp_author, disp_a; | |||||
| var curr, last, first; | |||||
| function init() { | |||||
| initAjax(); | |||||
| disp=document.getElementById("disp"); | |||||
| disp_a=document.getElementById("disp_a"); | |||||
| disp_name=document.getElementById("disp_name"); | |||||
| disp_author=document.getElementById("disp_author"); | |||||
| disp_img=document.getElementById("disp_img"); | |||||
| disp_info=document.getElementById("disp_info"); | |||||
| if (!document.importNode) { | |||||
| document.importNode = function(node, allChildren) { | |||||
| switch (node.nodeType) { | |||||
| case 1: | |||||
| var newNode = document.createElement(node.nodeName); | |||||
| /*if (node.attributes && node.attributes.length > 0) | |||||
| for (var i = 0; il = node.attributes.length; i < il) | |||||
| newNode.setAttribute(node.attributes[i].nodeName, node.getAttribute(node.attributes[i++].nodeName));*/ | |||||
| //alert("Attr done"); | |||||
| if (allChildren && node.childNodes && node.childNodes.length > 0) { | |||||
| il=node.childNodes.length; | |||||
| for (var i = 0; i < il; i++) | |||||
| newNode.appendChild(document.importNode(node.childNodes[i], allChildren)); | |||||
| } | |||||
| return newNode; | |||||
| break; | |||||
| default: | |||||
| return document.createTextNode(node.nodeValue); | |||||
| break; | |||||
| } | |||||
| }; | |||||
| } | |||||
| if(!disp_name.firstChild) | |||||
| disp_name.appendChild(document.createTextNode(' ')); | |||||
| if(!disp_author.firstChild) | |||||
| disp_author.appendChild(document.createTextNode(' ')); | |||||
| } | |||||
| function initAjax() { | |||||
| try { | |||||
| if (window.XMLHttpRequest) { | |||||
| ajax = new XMLHttpRequest(); | |||||
| ajax.overrideMimeType('text/xml'); | |||||
| } | |||||
| else if (window.ActiveXObject) | |||||
| ajax = new ActiveXObject('Microsoft.XMLHTTP'); | |||||
| else throw 'AJAX Error'; | |||||
| } | |||||
| catch (e) { | |||||
| return false; | |||||
| } | |||||
| if (!ajax) { | |||||
| alert('AJAX Error'); | |||||
| return false; | |||||
| } | |||||
| return true; | |||||
| } | |||||
| function response() { | |||||
| if (ajax.readyState != 4 || ajax.status != 200) | |||||
| return; | |||||
| var xml = ajax.responseXML; | |||||
| while(disp_info.hasChildNodes()) disp_info.removeChild(disp_info.firstChild); | |||||
| elemXML=xml.getElementsByTagName("desc")[0]; | |||||
| if(document.importNode) children=document.importNode(elemXML, true).childNodes; | |||||
| else children=elemXML.childNodes; | |||||
| for(i=0; i<children.length; i++) { | |||||
| disp_info.appendChild(children[i]); | |||||
| } | |||||
| disp_img.src= 'images/upload/' + xml.getElementsByTagName("src")[0].firstChild.nodeValue; | |||||
| disp_a.href= 'images/upload/' + xml.getElementsByTagName("src")[0].firstChild.nodeValue; | |||||
| disp_name.firstChild.nodeValue=xml.getElementsByTagName("name")[0].firstChild.nodeValue; | |||||
| disp_author.firstChild.nodeValue=xml.getElementsByTagName("author")[0].firstChild.nodeValue; | |||||
| if(xml.getElementsByTagName("last").length) { | |||||
| document.getElementById("disp_next").src="images/next_i.png"; | |||||
| last=true; | |||||
| } | |||||
| if(xml.getElementsByTagName("first").length) { | |||||
| document.getElementById("disp_prev").src="images/prev_i.png"; | |||||
| first=true; | |||||
| } | |||||
| disp.style.display="block"; | |||||
| } | |||||
| function previewImage(el) { | |||||
| curr=el; | |||||
| last=false; | |||||
| first=false | |||||
| document.getElementById("disp_next").src="images/next.png"; | |||||
| document.getElementById("disp_prev").src="images/prev.png"; | |||||
| ajax.onreadystatechange = response; | |||||
| ajax.open('GET', sciezka + 'ask.php?name=' + el, true); | |||||
| ajax.send(null); | |||||
| } | |||||
| function prev() { | |||||
| if(!first) previewImage(curr-1); | |||||
| } | |||||
| function next() { | |||||
| if(!last) previewImage(curr+1); | |||||
| } | |||||
| function closeDisp() { | |||||
| disp.style.display="none"; | |||||
| } | |||||
| var ajax, previd, nextid; | |||||
| function init() { | |||||
| initAjax(); | |||||
| if (!document.importNode) { | |||||
| document.importNode = function(node, allChildren) { | |||||
| switch (node.nodeType) { | |||||
| case 1: | |||||
| var newNode = document.createElement(node.nodeName); | |||||
| if (allChildren && node.childNodes && node.childNodes.length > 0) { | |||||
| il=node.childNodes.length; | |||||
| for (var i = 0; i < il; i++) | |||||
| newNode.appendChild(document.importNode(node.childNodes[i], allChildren)); | |||||
| } | |||||
| return newNode; | |||||
| break; | |||||
| default: | |||||
| return document.createTextNode(node.nodeValue); | |||||
| break; | |||||
| } | |||||
| }; | |||||
| } | |||||
| nextid=(document.getElementById("next_image")!=null)?document.getElementById("next_image").alt:-1; | |||||
| previd=(document.getElementById("prev_image")!=null)?document.getElementById("prev_image").alt:-1; | |||||
| } | |||||
| function initAjax() { | |||||
| try { | |||||
| if (window.XMLHttpRequest) { | |||||
| ajax = new XMLHttpRequest(); | |||||
| ajax.overrideMimeType('text/xml'); | |||||
| } | |||||
| else if (window.ActiveXObject) | |||||
| ajax = new ActiveXObject('Microsoft.XMLHTTP'); | |||||
| else throw 'AJAX Error'; | |||||
| } | |||||
| catch (e) { | |||||
| return false; | |||||
| } | |||||
| if (!ajax) { | |||||
| alert('AJAX Error'); | |||||
| return false; | |||||
| } | |||||
| return true; | |||||
| } | |||||
| function response() { | |||||
| if (ajax.readyState != 4 || ajax.status != 200) | |||||
| return; | |||||
| var xml = ajax.responseXML; | |||||
| document.getElementById("curr_image").parentNode.href=document.getElementById("curr_image").src=xml.getElementsByTagName("current")[0].getAttribute("src"); | |||||
| document.getElementById("author").firstChild.nodeValue=xml.getElementsByTagName("author")[0].firstChild.nodeValue; | |||||
| desc=document.getElementById("description"); | |||||
| while(desc.hasChildNodes()) desc.removeChild(desc.firstChild); | |||||
| children=document.importNode(xml.getElementsByTagName("desc")[0], true).childNodes; | |||||
| for(i=0; i<children.length; i++) { | |||||
| desc.appendChild(children[i]); | |||||
| } | |||||
| document.getElementById("current").src=xml.getElementsByTagName("current")[0].getAttribute("src"); | |||||
| if(xml.getElementsByTagName("next").length>0) { | |||||
| document.getElementById("next_image").src=xml.getElementsByTagName("next")[0].getAttribute("thumb"); | |||||
| nextid=xml.getElementsByTagName("next")[0].getAttribute("id"); | |||||
| document.getElementById("next_image").alt=nextid; | |||||
| document.getElementById("next").style.display="block"; | |||||
| } | |||||
| else { | |||||
| document.getElementById("next").style.display="none"; | |||||
| nextid=-1; | |||||
| } | |||||
| if(xml.getElementsByTagName("prev").length>0) { | |||||
| document.getElementById("prev_image").src=xml.getElementsByTagName("prev")[0].getAttribute("thumb"); | |||||
| previd=xml.getElementsByTagName("prev")[0].getAttribute("id"); | |||||
| document.getElementById("prev_image").alt=previd; | |||||
| document.getElementById("prev").style.display="block"; | |||||
| } | |||||
| else { | |||||
| document.getElementById("prev").style.display="none"; | |||||
| previd=-1; | |||||
| } | |||||
| } | |||||
| function previewImage(el) { | |||||
| if(el==-1) return 0; | |||||
| ajax.onreadystatechange = response; | |||||
| ajax.open('GET', path+ '/ask.php?id=' + el, true); | |||||
| ajax.send(null); | |||||
| } | |||||
| function prev() { | |||||
| previewImage(previd); | |||||
| } | |||||
| function next() { | |||||
| previewImage(nextid); | |||||
| } | |||||
| @ -1,110 +1,138 @@ | |||||
| body { | |||||
| background-color: black; | |||||
| text-align: center; | |||||
| } | |||||
| a { | |||||
| text-decoration: none; | |||||
| } | |||||
| a:hover { | |||||
| text-decoration: underline; | |||||
| } | |||||
| #page { | |||||
| margin: auto; | |||||
| width: 700px; | |||||
| } | |||||
| .image_outer_black { | |||||
| width: 190px; | |||||
| height: 120px; | |||||
| padding: 7px; | |||||
| margin: 5px; | |||||
| display: inline-block; | |||||
| text-align: center; | |||||
| } | |||||
| .image_outer { | |||||
| width: 190px; | |||||
| height: 120px; | |||||
| padding: 7px; | |||||
| margin: 5px; | |||||
| background-color: gray; | |||||
| display: inline-block; | |||||
| text-align: center; | |||||
| cursor: pointer; | |||||
| } | |||||
| .image_outer:hover { | |||||
| background-color: #F0F0F0; | |||||
| } | |||||
| .image { | |||||
| max-width: 200px; | |||||
| max-height: 120px; | |||||
| } | |||||
| #images_outer { | |||||
| text-align: center; | |||||
| } | |||||
| #images { | |||||
| margin:auto; | |||||
| } | |||||
| #disp { | |||||
| width: 80%; | |||||
| background-color: gray; | |||||
| border: solid 1px black; | |||||
| margin-left: auto; | |||||
| margin-right: auto; | |||||
| position: fixed; | |||||
| top: 10%; | |||||
| left: 10%; | |||||
| display:none; | |||||
| text-align: center; | |||||
| padding: 2px; | |||||
| font-size: 8pt; | |||||
| } | |||||
| #disp_close { | |||||
| cursor: pointer; | |||||
| } | |||||
| #disp_close:hover { | |||||
| text-decoration: underline; | |||||
| } | |||||
| #disp_a, #disp_a img { | |||||
| border: none; | |||||
| } | |||||
| #disp_prev, #disp_next { | |||||
| margin-bottom: 15%; | |||||
| } | |||||
| #disp_img { | |||||
| text-align: center; | |||||
| margin:auto; | |||||
| max-height: 300px; | |||||
| max-width: 80%; | |||||
| height: 300px; | |||||
| } | |||||
| #disp_info { | |||||
| clear: both; | |||||
| } | |||||
| #icons { | |||||
| padding: 0px; | |||||
| margin: 0px; | |||||
| text-align: center; | |||||
| } | |||||
| #icons a, #icons img { | |||||
| padding: 0px; | |||||
| margin: 0px; | |||||
| text-decoration: none; | |||||
| border: none; | |||||
| } | |||||
| #pages { | |||||
| color: white; | |||||
| text-align: left; | |||||
| margin-left: 40px; | |||||
| } | |||||
| #pages a, #pages a:link, #pages a:hover, #pages a:visited { | |||||
| color: white; | |||||
| } | |||||
| html, body { | |||||
| min-height:100%; | |||||
| margin: 0px; | |||||
| padding: 0px; | |||||
| background-color: #515151; | |||||
| text-align: center; | |||||
| color: white; | |||||
| } | |||||
| #page, #display { | |||||
| font-family: sans-serif; | |||||
| font-size: 8.5pt; | |||||
| margin: 0 auto; | |||||
| width: 800px; | |||||
| height: auto !important; | |||||
| height: 100%; | |||||
| min-height: 100%; | |||||
| background-color: #353535; | |||||
| position: relative; | |||||
| } | |||||
| #page { | |||||
| text-align: left; | |||||
| height: 100%; | |||||
| min-height: 100%; | |||||
| } | |||||
| #display { | |||||
| padding-top: 26px; | |||||
| } | |||||
| .image_outer { | |||||
| display: inline-block; | |||||
| _display: inline; | |||||
| background-color: #515151; | |||||
| padding: 13px; | |||||
| margin: 10px; | |||||
| height: 100px; | |||||
| width: 150px; | |||||
| _width: 180px; | |||||
| text-align: center; | |||||
| } | |||||
| .image_outer:hover { | |||||
| background-color: #989898; | |||||
| } | |||||
| .image_outer img { | |||||
| border: none; | |||||
| } | |||||
| .image { | |||||
| max-height: 100px; | |||||
| max-width: 150px; | |||||
| } | |||||
| #curr_image { | |||||
| max-width: 500px; | |||||
| max-height: 300px; | |||||
| } | |||||
| #prev, #next { | |||||
| padding: 20px; | |||||
| cursor: pointer; | |||||
| } | |||||
| #prev { | |||||
| float: left; | |||||
| } | |||||
| #next { | |||||
| float: right; | |||||
| } | |||||
| a:link, a:visited { | |||||
| color: white; | |||||
| text-decoration: none; | |||||
| } | |||||
| a:hover { | |||||
| color: white; | |||||
| text-decoration: underline; | |||||
| } | |||||
| a img { | |||||
| border: none; | |||||
| } | |||||
| #prev_image, #next_image { | |||||
| border: none; | |||||
| } | |||||
| #pages { | |||||
| margin: 5px; | |||||
| color: #898989; | |||||
| } | |||||
| #pages a:link, #pages a:visited { | |||||
| color: #4c88cb; | |||||
| text-decoration: none; | |||||
| } | |||||
| #pages a:hover { | |||||
| color: #4c88cb; | |||||
| text-decoration: underline; | |||||
| } | |||||
| #content { | |||||
| padding-bottom: 60px; | |||||
| } | |||||
| #footer { | |||||
| font-size: 7pt; | |||||
| color: gray; | |||||
| text-align: center; | |||||
| width: 800px; | |||||
| position: absolute; | |||||
| bottom: 0; | |||||
| border-top: 2px solid #4c88cb; | |||||
| padding-top: 20px; | |||||
| } | |||||
| #copyright { | |||||
| color: #4c88cb; | |||||
| text-decoration: none; | |||||
| } | |||||
| #links { | |||||
| padding-top: 10px; | |||||
| } | |||||
| #links a:link, #links a:visited { | |||||
| text-decoration: none; | |||||
| font-size: 8pt; | |||||
| color: #898989; | |||||
| } | |||||
| #links a:hover { | |||||
| text-decoration: underline; | |||||
| font-size: 8pt; | |||||
| color: #898989; | |||||
| } | |||||
| #dlinks { | |||||
| text-align: center; | |||||
| } | |||||
| #dlinks_inner { | |||||
| width: 756px; | |||||
| text-align: left; | |||||
| margin: auto; | |||||
| } | |||||
| #dlinks_inner img { | |||||
| margin: 16px 0px 3px 0px; | |||||
| } | |||||
| .dframe { | |||||
| background-color: #2f2f2f; | |||||
| border: 1px solid #292828; | |||||
| margin: 17px 8px 3px 8px; | |||||
| font-size: small; | |||||
| } | |||||
| #dlinks a img { | |||||
| margin: 16px 0px 16px 0px; | |||||
| } | |||||