Merge the html5 branch. fix #45
							
								
								
									
										13
									
								
								about.html
									
										
									
									
									
										Normal file
									
								
							
							
						
						|  | @ -0,0 +1,13 @@ | ||||||
|  | <h1>Authors</h1> | ||||||
|  | <h2>COPS is developped and maintained by Sébastien Lucas.</h2> | ||||||
|  | 
 | ||||||
|  | <p>See full history on <a href="https://github.com/seblucas">Github</a> to check all authors.<br /> | ||||||
|  | COPS use some external librairies, check README for the details.</p> | ||||||
|  | 
 | ||||||
|  | <h2>Copyright</h2> | ||||||
|  | <p>This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.<br /> | ||||||
|  | The complete content of license is provided in file COPYING within distribution and also available <a href="http://www.gnu.org/licenses/gpl-2.0.html">online</a>.</p> | ||||||
|  | 
 | ||||||
|  | <h2>Contact</h2> | ||||||
|  | <p>For more info please visit <a href="http://blog.slucas.fr/en/oss/calibre-opds-php-server">COPS Home Page</a></p> | ||||||
|  | <p>You can also check <a href="http://www.mobileread.com/forums/showthread.php?t=170903">COPS's topic on MobileRead forum</a>.</p> | ||||||
							
								
								
									
										20
									
								
								about.xml
									
										
									
									
									
								
							
							
						
						|  | @ -1,29 +1,21 @@ | ||||||
| <div class="bookdetail"> | <div class="bookpopup" style="max-width:700px;"> | ||||||
| <div class="entryTitle">Authors</div> | <h1>About COPS</h1> | ||||||
| <div class="content" style="max-width:700px;"> | <h2>Authors</h2> | ||||||
| <p>COPS is developped and maintained by Sébastien Lucas.</p> | <p>COPS is developped and maintained by Sébastien Lucas.</p> | ||||||
| 
 | 
 | ||||||
| <p>See full history on <a href="https://github.com/seblucas">Github</a> to check all authors.</p> | <p>See full history on <a href="https://github.com/seblucas">Github</a> to check all authors.</p> | ||||||
| 
 | 
 | ||||||
| <p>COPS use some external librairies, check README for the details.</p> | <p>COPS use some external librairies, check README for the details.</p> | ||||||
| </div> | <h2>Copyright</h2> | ||||||
| <div class="entryTitle">Copyright</div> |  | ||||||
| <div class="content" style="max-width:700px;"> |  | ||||||
| <p>This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.</p> | <p>This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.</p> | ||||||
| 
 | 
 | ||||||
| <p>The complete content of license is provided in file COPYING within distribution and also available <a href="http://www.gnu.org/licenses/gpl-2.0.html">online</a>.</p> | <p>The complete content of license is provided in file COPYING within distribution and also available <a href="http://www.gnu.org/licenses/gpl-2.0.html">online</a>.</p> | ||||||
| </div> | <h2>Contact</h2> | ||||||
| <div class="entryTitle">Contact</div> |  | ||||||
| <div class="content" style="max-width:700px;"> |  | ||||||
| <p>For more info please visit <a href="http://blog.slucas.fr/en/oss/calibre-opds-php-server">COPS Home Page</a></p> | <p>For more info please visit <a href="http://blog.slucas.fr/en/oss/calibre-opds-php-server">COPS Home Page</a></p> | ||||||
| 
 | 
 | ||||||
| <p>You can also check <a href="http://www.mobileread.com/forums/showthread.php?t=170903">COPS's topic on MobileRead forum</a>.</p> | <p>You can also check <a href="http://www.mobileread.com/forums/showthread.php?t=170903">COPS's topic on MobileRead forum</a>.</p> | ||||||
| </div> | <h2>Thanks</h2> | ||||||
| <div class="entryTitle">Thanks</div> |  | ||||||
| <div class="content" style="max-width:700px;"> |  | ||||||
| <p>Thanks a lot to Kovid Goyal for <a href="http://calibre-ebook.com">Calibre</a>.</p> | <p>Thanks a lot to Kovid Goyal for <a href="http://calibre-ebook.com">Calibre</a>.</p> | ||||||
| 
 | 
 | ||||||
| <p>And many thanks to all those who helped test COPS.</p> | <p>And many thanks to all those who helped test COPS.</p> | ||||||
| </div> | </div> | ||||||
| 
 |  | ||||||
| </div> |  | ||||||
							
								
								
									
										6
									
								
								base.php
									
										
									
									
									
								
							
							
						
						|  | @ -377,8 +377,10 @@ class Page | ||||||
|             } |             } | ||||||
|         } else { |         } else { | ||||||
|             array_push ($this->entryArray, Author::getCount()); |             array_push ($this->entryArray, Author::getCount()); | ||||||
|             array_push ($this->entryArray, Serie::getCount()); |             $series = Serie::getCount(); | ||||||
|             array_push ($this->entryArray, Tag::getCount()); |             if (!is_null ($series)) array_push ($this->entryArray, $series); | ||||||
|  |             $tags = Tag::getCount(); | ||||||
|  |             if (!is_null ($tags)) array_push ($this->entryArray, $tags); | ||||||
|             foreach ($config['cops_calibre_custom_column'] as $lookup) { |             foreach ($config['cops_calibre_custom_column'] as $lookup) { | ||||||
|                 $customId = CustomColumn::getCustomId ($lookup); |                 $customId = CustomColumn::getCustomId ($lookup); | ||||||
|                 if (!is_null ($customId)) { |                 if (!is_null ($customId)) { | ||||||
|  |  | ||||||
|  | @ -17,19 +17,8 @@ $serie = $book->getSerie (); | ||||||
| $book->getLinkArray (); | $book->getLinkArray (); | ||||||
|   |   | ||||||
| ?>
 | ?>
 | ||||||
| <?php | <article class="bookpopup"> | ||||||
|     if (isset ($page) &&  $page == Base::PAGE_BOOK_DETAIL) { |             <span class="cover"> | ||||||
| ?>
 |  | ||||||
| <div class="bookdetail"> |  | ||||||
| <?php |  | ||||||
|     } else { |  | ||||||
| ?>
 |  | ||||||
| <div class="bookpopup"> |  | ||||||
| <?php |  | ||||||
|     } |  | ||||||
| ?>
 |  | ||||||
|     <div class="booke"> |  | ||||||
|         <div class="cover"> |  | ||||||
|             <?php |             <?php | ||||||
|                 if ($book->hasCover) { |                 if ($book->hasCover) { | ||||||
|             ?>
 |             ?>
 | ||||||
|  | @ -39,21 +28,19 @@ $book->getLinkArray (); | ||||||
|             <?php |             <?php | ||||||
|                 } |                 } | ||||||
|             ?>
 |             ?>
 | ||||||
|         </div> |             </span> | ||||||
|         <div class="download"> |  | ||||||
| <?php | <?php | ||||||
|             foreach ($book->getDatas() as $data) |             foreach ($book->getDatas() as $data) | ||||||
|             { |             { | ||||||
| ?>    
 | ?>    
 | ||||||
|                 <div class="button buttonEffect"><a href="<?php echo $data->getHtmlLink () ?>"><?php echo $data->format ?></a></div>
 |                 <h2 class="download"><a href="<?php echo $data->getHtmlLink () ?>"><?php echo $data->format ?></a></h2>
 | ||||||
| <?php | <?php | ||||||
|             } |             } | ||||||
| ?>
 | ?>
 | ||||||
|         </div> |         <h1><a rel="bookmark" href="<?php echo $book->getDetailUrl (true) ?>"><img src="<?php echo getUrlWithVersion("images/Link.png") ?>" alt="<?php echo localize ("permalink.alternate") ?>" /></a><?php echo htmlspecialchars ($book->title) ?></h1>
 | ||||||
|         <div class="entryTitle"><a rel="bookmark" href="<?php echo $book->getDetailUrl (true) ?>"><img src="<?php echo getUrlWithVersion("images/Link.png") ?>" alt="<?php echo localize ("permalink.alternate") ?>" /></a><?php echo htmlspecialchars ($book->title) ?></div>
 |             <p class="popupless"> | ||||||
|         <div class="entrySection"> |             <h3><?php echo localize("authors.title") ?>: </h3>
 | ||||||
|             <span><?php echo localize("authors.title") ?></span>
 |              | ||||||
|             <div class="buttonEffect pad6"> |  | ||||||
| <?php | <?php | ||||||
|             $i = 0; |             $i = 0; | ||||||
|             foreach ($authors as $author) { |             foreach ($authors as $author) { | ||||||
|  | @ -63,14 +50,13 @@ $book->getLinkArray (); | ||||||
| <?php | <?php | ||||||
|             } |             } | ||||||
| ?>
 | ?>
 | ||||||
|             </div> | </p> | ||||||
|         </div> |  | ||||||
| <?php | <?php | ||||||
|         if (count ($tags) > 0) { |         if (count ($tags) > 0) { | ||||||
| ?>
 | ?>
 | ||||||
|         <div class="entrySection"> |             <p class="popupless"> | ||||||
|             <span><?php echo localize("tags.title") ?></span>
 |             <h3><?php echo localize("tags.title") ?>: </h3>
 | ||||||
|             <div class="buttonEffect pad6"> | 
 | ||||||
| <?php | <?php | ||||||
|             $i = 0; |             $i = 0; | ||||||
|             foreach ($tags as $tag) { |             foreach ($tags as $tag) { | ||||||
|  | @ -80,44 +66,38 @@ $book->getLinkArray (); | ||||||
| <?php | <?php | ||||||
|             } |             } | ||||||
| ?>
 | ?>
 | ||||||
|             </div> | </p> | ||||||
|         </div> |  | ||||||
| <?php | <?php | ||||||
|         } |         } | ||||||
|         if (!is_null ($serie)) |         if (!is_null ($serie)) | ||||||
|         { |         { | ||||||
| ?>
 | ?>
 | ||||||
|         <div class="entrySection"> |             <p class="popupless"> | ||||||
|             <div class="buttonEffect pad6"> |                 <h3><a href="index.php<?php $link = new LinkNavigation ($serie->getUri ()); echo $link->hrefXhtml () ?>"><?php echo localize("series.title") ?></a>: </h3>
 | ||||||
|                 <a href="<?php $link = new LinkNavigation ($serie->getUri ()); echo $link->hrefXhtml () ?>"><?php echo localize("series.title") ?></a>
 |  | ||||||
|             </div> |  | ||||||
|             <?php echo str_format (localize ("content.series.data"), $book->seriesIndex, htmlspecialchars ($serie->name)) ?>
 |             <?php echo str_format (localize ("content.series.data"), $book->seriesIndex, htmlspecialchars ($serie->name)) ?>
 | ||||||
|         </div> | </p> | ||||||
| <?php | <?php | ||||||
|         } |         } | ||||||
|         if ($book->getPubDate() != "") |         if ($book->getPubDate() != "") | ||||||
|         { |         { | ||||||
| ?>
 | ?>
 | ||||||
|         <div class="entrySection"> |             <p class="popupless"> | ||||||
|             <span><?php echo localize("pubdate.title") ?></span>
 | <h3><?php echo localize("pubdate.title") ?>: </h3>
 | ||||||
|             <?php echo $book->getPubDate() ?>
 |             <?php echo $book->getPubDate() ?>
 | ||||||
|         </div> | </p> | ||||||
| <?php | <?php | ||||||
|         } |         } | ||||||
|         if ($book->getLanguages () != "") |         if ($book->getLanguages () != "") | ||||||
|         { |         { | ||||||
| ?>
 | ?>
 | ||||||
|         <div class="entrySection"> |             <p class="popupless"> | ||||||
|             <span><?php echo localize("config.Language.label") ?></span>
 | <h3><?php echo localize("config.Language.label") ?>: </h3>
 | ||||||
|             <?php echo $book->getLanguages () ?>
 |             <?php echo $book->getLanguages () ?>
 | ||||||
|         </div> | </p> | ||||||
|  <?php |  <?php | ||||||
|         } |         } | ||||||
| ?>
 | ?>
 | ||||||
|     </div> | <br /> | ||||||
|     <div class="clearer" ></div> | <h4><?php echo localize("content.summary") ?></h4>
 | ||||||
|     <hr /> | <div <?php if (!isset ($page)) echo 'style="max-width:700px;"' ?> ><?php echo $book->getComment (false) ?></div>
 | ||||||
|     <div><?php echo localize("content.summary") ?></div>
 | </article> | ||||||
|     <div class="content" <?php if (!isset ($page)) echo 'style="max-width:700px;"' ?>><?php echo $book->getComment (false) ?></div>
 |  | ||||||
|     <hr /> |  | ||||||
| </div> |  | ||||||
|  | @ -10,7 +10,7 @@ | ||||||
|     require_once ("config.php"); |     require_once ("config.php"); | ||||||
|     require_once ("base.php"); |     require_once ("base.php"); | ||||||
|      |      | ||||||
|     header ("Content-Type:application/xhtml+xml"); |     header ("Content-Type:text/html; charset=UTF-8"); | ||||||
|      |      | ||||||
|     $err = getURLParam ("err", -1); |     $err = getURLParam ("err", -1); | ||||||
|     $error = NULL; |     $error = NULL; | ||||||
|  | @ -21,38 +21,35 @@ | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
| ?>
 | ?>
 | ||||||
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | <!DOCTYPE html> | ||||||
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> | <html xmlns="http://www.w3.org/1999/xhtml"> | ||||||
| <head> | <head> | ||||||
|     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> |     <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | ||||||
|     <meta http-equiv="imagetoolbar" content="no" /> |  | ||||||
|     <meta name="viewport" content="width=device-width, height=device-height, user-scalable=no" /> |  | ||||||
|     <title>COPS Configuration Check</title> |     <title>COPS Configuration Check</title> | ||||||
|     <link rel="stylesheet" type="text/css" href="<?php echo getUrlWithVersion("style.css") ?>" media="screen" /> |     <link rel="stylesheet" type="text/css" href="<?php echo getUrlWithVersion("style.css") ?>" media="screen" /> | ||||||
| </head> | </head> | ||||||
| <body> | <body> | ||||||
| <div class="container"> | <div class="container"> | ||||||
|     <div class="head"> |     <header> | ||||||
|         <div class="headcenter"> |         <div class="headcenter"> | ||||||
|             <p>COPS Configuration Check</p> |             <h1>COPS Configuration Check</h1> | ||||||
|         </div> |         </div> | ||||||
|     </div> |     </header> | ||||||
|     <div class="clearer" /> |  | ||||||
|     <div id="content" style="display: none;"></div> |     <div id="content" style="display: none;"></div> | ||||||
|     <div class="entries"> |     <section> | ||||||
|         <?php |         <?php | ||||||
|         if (!is_null ($error)) { |         if (!is_null ($error)) { | ||||||
|         ?>
 |         ?>
 | ||||||
|         <div class="entry"> |         <article class="frontpage"> | ||||||
|             <div class="entryTitle">You've been redirected because COPS is not configured properly</div> |             <h2>You've been redirected because COPS is not configured properly</h2> | ||||||
|             <div class="entryContent"><?php echo $error ?></div>
 |             <h4><?php echo $error ?></h4>
 | ||||||
|         </div> |         </article> | ||||||
|         <?php |         <?php | ||||||
|         } |         } | ||||||
|         ?>
 |         ?>
 | ||||||
|         <div class="entry"> |         <article class="frontpage"> | ||||||
|             <div class="entryTitle">Check if GD is properly installed and loaded</div> |             <h2>Check if GD is properly installed and loaded</h2> | ||||||
|             <div class="entryContent"> |             <h4> | ||||||
|             <?php  |             <?php  | ||||||
|             if (extension_loaded('gd') && function_exists('gd_info')) { |             if (extension_loaded('gd') && function_exists('gd_info')) { | ||||||
|                 echo "OK"; |                 echo "OK"; | ||||||
|  | @ -60,11 +57,11 @@ | ||||||
|                 echo "Please install the php5-gd extension and make sure it's enabled"; |                 echo "Please install the php5-gd extension and make sure it's enabled"; | ||||||
|             } |             } | ||||||
|             ?>
 |             ?>
 | ||||||
|             </div> |             </h4> | ||||||
|         </div> |         </article> | ||||||
|         <div class="entry"> |         <article class="frontpage"> | ||||||
|             <div class="entryTitle">Check if Sqlite is properly installed and loaded</div> |             <h2>Check if Sqlite is properly installed and loaded</h2> | ||||||
|             <div class="entryContent"> |             <h4> | ||||||
|             <?php  |             <?php  | ||||||
|             if (extension_loaded('pdo_sqlite')) { |             if (extension_loaded('pdo_sqlite')) { | ||||||
|                 echo "OK"; |                 echo "OK"; | ||||||
|  | @ -72,11 +69,11 @@ | ||||||
|                 echo "Please install the php5-sqlite extension and make sure it's enabled"; |                 echo "Please install the php5-sqlite extension and make sure it's enabled"; | ||||||
|             } |             } | ||||||
|             ?>
 |             ?>
 | ||||||
|             </div> |             </h4> | ||||||
|         </div> |         </article> | ||||||
|         <div class="entry"> |         <article class="frontpage"> | ||||||
|             <div class="entryTitle">Check if libxml is properly installed and loaded</div> |             <h2>Check if libxml is properly installed and loaded</h2> | ||||||
|             <div class="entryContent"> |             <h4> | ||||||
|             <?php  |             <?php  | ||||||
|             if (extension_loaded('libxml')) { |             if (extension_loaded('libxml')) { | ||||||
|                 echo "OK"; |                 echo "OK"; | ||||||
|  | @ -84,15 +81,14 @@ | ||||||
|                 echo "Please make sure libxml is enabled"; |                 echo "Please make sure libxml is enabled"; | ||||||
|             } |             } | ||||||
|             ?>
 |             ?>
 | ||||||
|             </div> |             </h4> | ||||||
|         </div> |         </article> | ||||||
| <?php  | <?php  | ||||||
| $i = 0; | $i = 0; | ||||||
| foreach (Base::getDbList () as $name => $database) {  | foreach (Base::getDbList () as $name => $database) {  | ||||||
| ?>
 | ?>
 | ||||||
|         <div class="entry"> |         <article class="frontpage"> | ||||||
|             <div class="entryTitle">Check if Calibre database file exists and is readable</div> |             <h2>Check if Calibre database file exists and is readable</h2> | ||||||
|             <div class="entryContent"> |  | ||||||
|             <?php  |             <?php  | ||||||
|             if (is_readable (Base::getDbFileName ($i))) { |             if (is_readable (Base::getDbFileName ($i))) { | ||||||
|                 echo "{$name} OK"; |                 echo "{$name} OK"; | ||||||
|  | @ -107,11 +103,10 @@ Please check | ||||||
| </ul>";
 | </ul>";
 | ||||||
|             } |             } | ||||||
|             ?>
 |             ?>
 | ||||||
|             </div> |         </article> | ||||||
|         </div> |         <article class="frontpage"> | ||||||
|         <div class="entry"> |             <h2>Check if Calibre database file can be opened with PHP</h2> | ||||||
|             <div class="entryTitle">Check if Calibre database file can be opened with PHP</div> |             <h4> | ||||||
|             <div class="entryContent"> |  | ||||||
|             <?php  |             <?php  | ||||||
|             try { |             try { | ||||||
|                 $db = new PDO('sqlite:'. Base::getDbFileName ($i)); |                 $db = new PDO('sqlite:'. Base::getDbFileName ($i)); | ||||||
|  | @ -120,11 +115,11 @@ Please check | ||||||
|                 echo "{$name} If the file is readable, check your php configuration. Exception detail : " . $e; |                 echo "{$name} If the file is readable, check your php configuration. Exception detail : " . $e; | ||||||
|             } |             } | ||||||
|             ?>
 |             ?>
 | ||||||
|             </div> |             </h4> | ||||||
|         </div> |         </article> | ||||||
|         <div class="entry"> |         <article class="frontpage"> | ||||||
|             <div class="entryTitle">Check if Calibre database file contains at least some of the needed tables</div> |             <h2>Check if Calibre database file contains at least some of the needed tables</h2> | ||||||
|             <div class="entryContent"> |             <h4> | ||||||
|             <?php  |             <?php  | ||||||
|             try { |             try { | ||||||
|                 $db = new PDO('sqlite:'. Base::getDbFileName ($i)); |                 $db = new PDO('sqlite:'. Base::getDbFileName ($i)); | ||||||
|  | @ -138,10 +133,11 @@ Please check | ||||||
|                 echo "{$name} If the file is readable, check your php configuration. Exception detail : " . $e; |                 echo "{$name} If the file is readable, check your php configuration. Exception detail : " . $e; | ||||||
|             } |             } | ||||||
|             ?>
 |             ?>
 | ||||||
|             </div> |             </h4> | ||||||
|         </div> |         </article> | ||||||
| <?php $i++; } ?>
 | <?php $i++; } ?>
 | ||||||
|     </div> |     </section> | ||||||
|  |     <footer></footer> | ||||||
| </div> | </div> | ||||||
| </body> | </body> | ||||||
| </html> | </html> | ||||||
|  |  | ||||||
							
								
								
									
										
											BIN
										
									
								
								images/home.png
									
										
									
									
									
								
							
							
						
						| Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.3 KiB | 
							
								
								
									
										
											BIN
										
									
								
								images/info.png
									
										
									
									
									
								
							
							
						
						| Before Width: | Height: | Size: 734 B After Width: | Height: | Size: 730 B | 
							
								
								
									
										
											BIN
										
									
								
								images/next.png
									
										
									
									
									
								
							
							
						
						| Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 2.4 KiB | 
| Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 2.4 KiB | 
| Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.6 KiB | 
| Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.7 KiB | 
| Before Width: | Height: | Size: 764 B After Width: | Height: | Size: 1.3 KiB | 
							
								
								
									
										139
									
								
								index.php
									
										
									
									
									
								
							
							
						
						|  | @ -47,12 +47,10 @@ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| ?>
 | ?>
 | ||||||
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | <!DOCTYPE html> | ||||||
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> | <html xmlns="http://www.w3.org/1999/xhtml"> | ||||||
| <head> | <head> | ||||||
|     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> |     <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | ||||||
|     <meta http-equiv="imagetoolbar" content="no" /> |  | ||||||
|     <meta name="viewport" content="width=device-width, height=device-height, user-scalable=no" /> |  | ||||||
|     <title><?php echo htmlspecialchars ($currentPage->title) ?></title>
 |     <title><?php echo htmlspecialchars ($currentPage->title) ?></title>
 | ||||||
|     <script type="text/javascript" src="<?php echo getUrlWithVersion("js/jquery-1.9.1.min.js") ?>"></script> |     <script type="text/javascript" src="<?php echo getUrlWithVersion("js/jquery-1.9.1.min.js") ?>"></script> | ||||||
|     <script type="text/javascript" src="<?php echo getUrlWithVersion("js/jquery.cookies.js") ?>"></script> |     <script type="text/javascript" src="<?php echo getUrlWithVersion("js/jquery.cookies.js") ?>"></script> | ||||||
|  | @ -63,17 +61,15 @@ | ||||||
|     <script type="text/javascript" src="<?php echo getUrlWithVersion("js/jquery.sortElements.js") ?>"></script> |     <script type="text/javascript" src="<?php echo getUrlWithVersion("js/jquery.sortElements.js") ?>"></script> | ||||||
|     <link rel="related" href="<?php echo $config['cops_full_url'] ?>feed.php" type="application/atom+xml;profile=opds-catalog" title="<?php echo $config['cops_title_default']; ?>" />  |     <link rel="related" href="<?php echo $config['cops_full_url'] ?>feed.php" type="application/atom+xml;profile=opds-catalog" title="<?php echo $config['cops_title_default']; ?>" />  | ||||||
|     <link rel="icon" type="image/vnd.microsoft.icon" href="<?php echo $currentPage->favicon ?>" /> |     <link rel="icon" type="image/vnd.microsoft.icon" href="<?php echo $currentPage->favicon ?>" /> | ||||||
|  |     <link rel='stylesheet' type='text/css' href='http://fonts.googleapis.com/css?family=Open+Sans:400,300italic,800,300,400italic,600,600italic,700,700italic,800italic' /> | ||||||
|     <link rel="stylesheet" type="text/css" href="<?php echo getUrlWithVersion("style.css") ?>" media="screen" /> |     <link rel="stylesheet" type="text/css" href="<?php echo getUrlWithVersion("style.css") ?>" media="screen" /> | ||||||
|  |     <link rel="stylesheet" type="text/css" href="<?php echo getUrlWithVersion("resources/normalize/normalize.css") ?>" /> | ||||||
|     <script type="text/javascript"> |     <script type="text/javascript"> | ||||||
|         $(document).ready(function() { |         $(document).ready(function() { | ||||||
|             // Handler for .ready() called.
 |             // Handler for .ready() called.
 | ||||||
|             $(".entry").click(function(){ |  | ||||||
|                 window.location=$(this).find("a").attr("href"); |  | ||||||
|                 return false; |  | ||||||
|             }); |  | ||||||
|              |              | ||||||
|             $("#sort").click(function(){ |             $("#sort").click(function(){ | ||||||
|                 $('.book').sortElements(function(a, b){ |                 $('.books').sortElements(function(a, b){ | ||||||
|                     var test = 1; |                     var test = 1; | ||||||
|                     if ($("#sortorder").val() == "desc") |                     if ($("#sortorder").val() == "desc") | ||||||
|                     { |                     { | ||||||
|  | @ -81,7 +77,6 @@ | ||||||
|                     } |                     } | ||||||
|                     return $(a).find ("." + $("#sortchoice").val()).text() > $(b).find ("." + $("#sortchoice").val()).text() ? test : -test; |                     return $(a).find ("." + $("#sortchoice").val()).text() > $(b).find ("." + $("#sortchoice").val()).text() ? test : -test; | ||||||
|                 }); |                 }); | ||||||
|                 $("#search").slideUp(); |  | ||||||
|             }); |             }); | ||||||
|              |              | ||||||
| <?php if ($config['cops_use_fancyapps'] == 1) { ?>
 | <?php if ($config['cops_use_fancyapps'] == 1) { ?>
 | ||||||
|  | @ -99,9 +94,16 @@ | ||||||
|                 nextEffect      : 'none' |                 nextEffect      : 'none' | ||||||
|                 <?php if ($isEink) echo ", openEffect : 'none', closeEffect : 'none', helpers : {overlay : null}"; ?>
 |                 <?php if ($isEink) echo ", openEffect : 'none', closeEffect : 'none', helpers : {overlay : null}"; ?>
 | ||||||
|             }); |             }); | ||||||
|  |              | ||||||
|  |             $(".fancydetail").fancybox({ | ||||||
|  |                 'type' : 'ajax', | ||||||
|  |                 prevEffect      : 'none', | ||||||
|  |                 nextEffect      : 'none' | ||||||
|  |                 <?php if ($isEink) echo ", openEffect : 'none', closeEffect : 'none', helpers : {overlay : null}"; ?>
 | ||||||
|  |             }); | ||||||
| <?php } ?>
 | <?php } ?>
 | ||||||
|              |              | ||||||
|             $("#settingsImage").click(function(){ |             $(".headright").click(function(){ | ||||||
|                 if ($("#tool").is(":hidden")) { |                 if ($("#tool").is(":hidden")) { | ||||||
|                     $("#tool").slideDown("slow"); |                     $("#tool").slideDown("slow"); | ||||||
|                     $.cookie('toolbar', '1'); |                     $.cookie('toolbar', '1'); | ||||||
|  | @ -111,23 +113,6 @@ | ||||||
|                 } |                 } | ||||||
|             }); |             }); | ||||||
|              |              | ||||||
| <?php if  ($page != Base::PAGE_BOOK_DETAIL) { ?>
 |  | ||||||
|             $(".bookdetail").click(function(){ |  | ||||||
|                 var url = $(this).find("a").attr("href"); |  | ||||||
| <?php if ($config['cops_use_fancyapps'] == 0) { ?>
 |  | ||||||
|                 window.location = url; |  | ||||||
| <?php } else { ?>
 |  | ||||||
|                 $('#content').load(url, function(data, stat, req){ |  | ||||||
|                     $.fancybox( { |  | ||||||
|                         content: data, |  | ||||||
|                         autoSize: true |  | ||||||
|                         <?php if ($isEink) echo ", margin : [15, 35, 10, 10], openEffect : 'none', closeEffect : 'none', helpers : {overlay : null}"; ?>
 |  | ||||||
|                     } ); |  | ||||||
|                 }); |  | ||||||
| <?php } ?>
 |  | ||||||
|                 return false; |  | ||||||
|             }); |  | ||||||
| <?php } ?>
 |  | ||||||
|         }); |         }); | ||||||
| 
 | 
 | ||||||
| <?php | <?php | ||||||
|  | @ -153,20 +138,14 @@ | ||||||
| </head> | </head> | ||||||
| <body> | <body> | ||||||
| <div class="container"> | <div class="container"> | ||||||
|     <div class="head"> |     <header> | ||||||
|         <div class="headleft"> |         <a class="headleft" href="<?php echo $_SERVER["SCRIPT_NAME"]; if ($page != Base::PAGE_INDEX && !is_null ($database)) echo "?" . addURLParameter ("", DB, $database); ?>"> | ||||||
|             <a href="<?php echo $_SERVER["SCRIPT_NAME"]; if ($page != Base::PAGE_INDEX && !is_null ($database)) echo "?" . addURLParameter ("", DB, $database);  ?>"> |  | ||||||
|                 <img src="<?php echo getUrlWithVersion("images/home.png") ?>" alt="<?php echo localize ("home.alternate") ?>" /> |                 <img src="<?php echo getUrlWithVersion("images/home.png") ?>" alt="<?php echo localize ("home.alternate") ?>" /> | ||||||
|         </a> |         </a> | ||||||
|         </div> |         <img class="headright" id="searchImage" src="<?php echo getUrlWithVersion("images/setting64.png") ?>" alt="Settings and menu" /> | ||||||
|         <div class="headright"> |  | ||||||
|             <img id="settingsImage" src="<?php echo getUrlWithVersion("images/setting64.png") ?>" alt="Settings and menu" /> |  | ||||||
|         </div> |  | ||||||
|         <div class="headcenter"> |         <div class="headcenter"> | ||||||
|             <p><?php echo htmlspecialchars ($currentPage->title) ?></p>
 |             <h1><?php echo htmlspecialchars ($currentPage->title) ?></h1>
 | ||||||
|         </div> |         </div> | ||||||
|     </div> |  | ||||||
|     <div class="clearer" ></div> |  | ||||||
|         <div id="tool" <?php if ($withToolbar) echo 'style="display: none"' ?>>
 |         <div id="tool" <?php if ($withToolbar) echo 'style="display: none"' ?>>
 | ||||||
|             <div style="float: left; width: 60%"> |             <div style="float: left; width: 60%"> | ||||||
|                 <form action="index.php" method="get"> |                 <form action="index.php" method="get"> | ||||||
|  | @ -203,9 +182,9 @@ | ||||||
|             </div> |             </div> | ||||||
|     <?php } ?>
 |     <?php } ?>
 | ||||||
|         </div> |         </div> | ||||||
|     <div class="clearer" ></div> |     </header> | ||||||
|     <div id="content" style="display: none;"></div> |     <div id="content" style="display: none;"></div> | ||||||
|     <div class="entries"> |     <section> | ||||||
| <?php | <?php | ||||||
|             if ($page == Base::PAGE_BOOK_DETAIL) { |             if ($page == Base::PAGE_BOOK_DETAIL) { | ||||||
|                 include ("bookdetail.php"); |                 include ("bookdetail.php"); | ||||||
|  | @ -215,34 +194,31 @@ | ||||||
|             foreach ($currentPage->entryArray as $entry) { |             foreach ($currentPage->entryArray as $entry) { | ||||||
|                 if (get_class ($entry) != "EntryBook") { |                 if (get_class ($entry) != "EntryBook") { | ||||||
| ?>
 | ?>
 | ||||||
|         <div class="entry"> |         <article> | ||||||
|             <div class="entryTitle"><?php echo htmlspecialchars ($entry->title) ?></div>
 |             <div class="frontpage"> | ||||||
|             <div class="entryContent"><?php echo htmlspecialchars ($entry->content) ?></div>
 |             <?php foreach ($entry->linkArray as $link) { if ($link->type != Link::OPDS_NAVIGATION_TYPE) { continue; } ?> <a href="<?php echo $link->hrefXhtml () ?>">
 | ||||||
|         <?php |                     <h2><?php echo htmlspecialchars ($entry->title) ?></h2>
 | ||||||
|             foreach ($entry->linkArray as $link) { |                     <?php } ?>
 | ||||||
|                 if ($link->type != Link::OPDS_NAVIGATION_TYPE) { continue; } |                     <h4><?php echo htmlspecialchars ($entry->content) ?></h4> 
 | ||||||
|         ?>
 |                 </a> | ||||||
|             <a href="<?php echo $link->hrefXhtml () ?>" class="navigation">nav</a> |  | ||||||
|         <?php |  | ||||||
|             } |  | ||||||
|         ?>
 |  | ||||||
|             </div> |             </div> | ||||||
|  |         </article> | ||||||
|         <?php |         <?php | ||||||
|                 } |                 } | ||||||
|                 else |                 else | ||||||
|                 { |                 { | ||||||
|         ?>
 |         ?>
 | ||||||
|         <div class="book"> |         <article class="books"> | ||||||
|             <div class="cover"> |             <span class="cover"> | ||||||
|             <?php |             <?php | ||||||
|                 if ($entry->book->hasCover) { |                 if ($entry->book->hasCover) { | ||||||
|             ?>
 |             ?>
 | ||||||
|                 <a rel="group" class="fancycover" href="<?php echo $entry->getCover () ?>"><img src="<?php echo $entry->getCoverThumbnail () ?>" alt="<?php echo localize("i18n.coversection") ?>" /></a> |                 <a data-fancybox-group="group" class="fancycover" href="<?php echo $entry->getCover () ?>"><img src="<?php echo $entry->getCoverThumbnail () ?>" alt="<?php echo localize("i18n.coversection") ?>" /></a> | ||||||
|             <?php |             <?php | ||||||
|                 } |                 } | ||||||
|             ?>
 |             ?>
 | ||||||
|             </div> |             </span> | ||||||
|             <div class="download"> |             <h2 class="download"> | ||||||
|             <?php |             <?php | ||||||
|                 $i = 0; |                 $i = 0; | ||||||
|                 foreach ($config['cops_prefered_format'] as $format) |                 foreach ($config['cops_prefered_format'] as $format) | ||||||
|  | @ -251,15 +227,16 @@ | ||||||
|                     if ($data = $entry->book->getDataFormat ($format)) { |                     if ($data = $entry->book->getDataFormat ($format)) { | ||||||
|                         $i++; |                         $i++; | ||||||
|             ?>    
 |             ?>    
 | ||||||
|                 <div class="button buttonEffect"><a href="<?php echo $data->getHtmlLink () ?>"><?php echo $format ?></a></div>
 |                 <a href="<?php echo $data->getHtmlLink () ?>"><?php echo $format ?></a><br />
 | ||||||
|                 <?php |                 <?php | ||||||
|                     } |                     } | ||||||
|  |                      | ||||||
|                 } |                 } | ||||||
|             ?>
 |             ?>
 | ||||||
|             </div> |             </h2> | ||||||
|             <div class="bookdetail"> |             <a class="fancydetail" href="<?php echo $entry->book->getDetailUrl () ?>"> | ||||||
|                 <a class="navigation" href="<?php echo $entry->book->getDetailUrl () ?>" ></a> |             <div class="fullclickpopup"> | ||||||
|                 <div class="entryTitle st"><?php echo htmlspecialchars ($entry->title) ?>
 |                 <h2><span class="st"><?php echo htmlspecialchars ($entry->title) ?></span>
 | ||||||
|             <?php |             <?php | ||||||
|                 if ($entry->book->getPubDate() != "") |                 if ($entry->book->getPubDate() != "") | ||||||
|                 { |                 { | ||||||
|  | @ -268,33 +245,35 @@ | ||||||
|             <?php |             <?php | ||||||
|                 } |                 } | ||||||
|             ?>
 |             ?>
 | ||||||
|                     <span class="sr"><?php echo $entry->book->getRating () ?></span>
 |                     <span class="sr"><?php echo $entry->book->getRating () ?></span></h2>
 | ||||||
|                 </div> |                 <h4><?php echo localize("authors.title") . " : " ?></h4><span class="sa"><?php echo htmlspecialchars ($entry->book->getAuthorsName ()) ?></span><br />
 | ||||||
|                 <div class="entryContent sa"><?php echo localize("authors.title") . " : " . htmlspecialchars ($entry->book->getAuthorsName ()) ?></div>
 |             <?php | ||||||
|                 <div class="entryContent"><?php echo localize("tags.title") . " : " . htmlspecialchars ($entry->book->getTagsName ()) ?></div>
 |                 $tags = $entry->book->getTagsName (); | ||||||
|  |                 if (!empty ($tags)) { | ||||||
|  |             ?>
 | ||||||
|  |                 <h4><?php echo localize("tags.title") . " : </h4>" . htmlspecialchars ($tags) ?><br />
 | ||||||
|  |             <?php | ||||||
|  |                 } | ||||||
|  |             ?>
 | ||||||
|             <?php |             <?php | ||||||
|                 $serie = $entry->book->getSerie (); |                 $serie = $entry->book->getSerie (); | ||||||
|                 if (!is_null ($serie)) { |                 if (!is_null ($serie)) { | ||||||
|             ?>
 |             ?>
 | ||||||
|                 <div class="entryContent ss"><?php echo localize("series.title") . " : " . htmlspecialchars ($serie->name) . " (" . $entry->book->seriesIndex . ")" ?></div>
 |                 <h4><?php echo localize("series.title") . " : "  ?></h4><span class="ss"><?php echo htmlspecialchars ($serie->name) . " (" . $entry->book->seriesIndex . ")" ?></span><br />
 | ||||||
|  |             <?php | ||||||
|  |                 } | ||||||
|  |             ?></div></a>
 | ||||||
|  |         </article> | ||||||
|         <?php |         <?php | ||||||
|                 } |                 } | ||||||
|         ?>
 |         ?>
 | ||||||
|             </div> |  | ||||||
|         </div> |  | ||||||
|         <?php |         <?php | ||||||
|             } |             } | ||||||
|         ?>
 |         ?>
 | ||||||
|         <div class="clearer" ></div> |     </section> | ||||||
|         <?php |     <footer> | ||||||
|             } |  | ||||||
|         ?>
 |  | ||||||
|     </div> |  | ||||||
|     <div class="foot"> |  | ||||||
|         <div class="footright"> |         <div class="footright"> | ||||||
|             <a class="fancyabout" href="<?php if ($config['cops_use_fancyapps'] == 1) { echo "about.xml"; } else { echo $_SERVER["SCRIPT_NAME"] . str_replace ("&", "&", addURLParameter ("?page=16", DB, $database)); } ?>"> |             <a class="fancyabout" href="<?php if ($config['cops_use_fancyapps'] == 1) { echo "about.xml"; } else { echo $_SERVER["SCRIPT_NAME"] . str_replace ("&", "&", addURLParameter ("?page=16", DB, $database)); } ?>"><img src="<?php echo getUrlWithVersion("images/info.png") ?>" alt="<?php echo localize ("about.title") ?>" /></a> | ||||||
|                 <img src="<?php echo getUrlWithVersion("images/info.png") ?>" alt="<?php echo localize ("about.title") ?>" /> |  | ||||||
|             </a> |  | ||||||
|         </div> |         </div> | ||||||
| <?php | <?php | ||||||
|     if ($currentPage->isPaginated ()) { |     if ($currentPage->isPaginated ()) { | ||||||
|  | @ -308,7 +287,7 @@ | ||||||
|         <?php |         <?php | ||||||
|             } |             } | ||||||
|         ?>
 |         ?>
 | ||||||
|         <p><?php echo " " . $currentPage->n . " / " . $currentPage->getMaxPage () . " " ?></p>
 |         <p><?php echo " " . $currentPage->n . " / " . $currentPage->getMaxPage () . " " ?></p>
 | ||||||
|         <?php |         <?php | ||||||
|             if (!is_null ($nextLink)) { |             if (!is_null ($nextLink)) { | ||||||
|         ?>
 |         ?>
 | ||||||
|  | @ -320,7 +299,7 @@ | ||||||
| <?php | <?php | ||||||
|     } |     } | ||||||
| ?>
 | ?>
 | ||||||
|     </div> |     </footer> | ||||||
| </div> | </div> | ||||||
| </body> | </body> | ||||||
| </html> | </html> | ||||||
|  |  | ||||||
							
								
								
									
										396
									
								
								resources/normalize/normalize.css
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						|  | @ -0,0 +1,396 @@ | ||||||
|  | /*! normalize.css v2.1.2 | MIT License | git.io/normalize */ | ||||||
|  | 
 | ||||||
|  | /* ========================================================================== | ||||||
|  |    HTML5 display definitions | ||||||
|  |    ========================================================================== */ | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Correct `block` display not defined in IE 8/9. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | article, | ||||||
|  | aside, | ||||||
|  | details, | ||||||
|  | figcaption, | ||||||
|  | figure, | ||||||
|  | footer, | ||||||
|  | header, | ||||||
|  | hgroup, | ||||||
|  | main, | ||||||
|  | nav, | ||||||
|  | section, | ||||||
|  | summary { | ||||||
|  |     display: block; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Correct `inline-block` display not defined in IE 8/9. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | audio, | ||||||
|  | canvas, | ||||||
|  | video { | ||||||
|  |     display: inline-block; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Prevent modern browsers from displaying `audio` without controls. | ||||||
|  |  * Remove excess height in iOS 5 devices. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | audio:not([controls]) { | ||||||
|  |     display: none; | ||||||
|  |     height: 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Address styling not present in IE 8/9. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | [hidden] { | ||||||
|  |     display: none; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ========================================================================== | ||||||
|  |    Base | ||||||
|  |    ========================================================================== */ | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * 1. Set default font family to sans-serif. | ||||||
|  |  * 2. Prevent iOS text size adjust after orientation change, without disabling | ||||||
|  |  *    user zoom. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | html { | ||||||
|  |     font-family: sans-serif; /* 1 */ | ||||||
|  |     -ms-text-size-adjust: 100%; /* 2 */ | ||||||
|  |     -webkit-text-size-adjust: 100%; /* 2 */ | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Remove default margin. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | body { | ||||||
|  |     margin: 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ========================================================================== | ||||||
|  |    Links | ||||||
|  |    ========================================================================== */ | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Address `outline` inconsistency between Chrome and other browsers. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | a:focus { | ||||||
|  |     outline: thin dotted; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Improve readability when focused and also mouse hovered in all browsers. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | a:active, | ||||||
|  | a:hover { | ||||||
|  |     outline: 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ========================================================================== | ||||||
|  |    Typography | ||||||
|  |    ========================================================================== */ | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Address variable `h1` font-size and margin within `section` and `article` | ||||||
|  |  * contexts in Firefox 4+, Safari 5, and Chrome. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | h1 { | ||||||
|  |     font-size: 2em; | ||||||
|  |     margin: 0.67em 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Address styling not present in IE 8/9, Safari 5, and Chrome. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | abbr[title] { | ||||||
|  |     border-bottom: 1px dotted; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | b, | ||||||
|  | strong { | ||||||
|  |     font-weight: bold; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Address styling not present in Safari 5 and Chrome. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | dfn { | ||||||
|  |     font-style: italic; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Address differences between Firefox and other browsers. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | hr { | ||||||
|  |     -moz-box-sizing: content-box; | ||||||
|  |     box-sizing: content-box; | ||||||
|  |     height: 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Address styling not present in IE 8/9. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | mark { | ||||||
|  |     background: #ff0; | ||||||
|  |     color: #000; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Correct font family set oddly in Safari 5 and Chrome. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | code, | ||||||
|  | kbd, | ||||||
|  | pre, | ||||||
|  | samp { | ||||||
|  |     font-family: monospace, serif; | ||||||
|  |     font-size: 1em; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Improve readability of pre-formatted text in all browsers. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | pre { | ||||||
|  |     white-space: pre-wrap; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Set consistent quote types. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | q { | ||||||
|  |     quotes: "\201C" "\201D" "\2018" "\2019"; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Address inconsistent and variable font size in all browsers. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | small { | ||||||
|  |     font-size: 80%; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Prevent `sub` and `sup` affecting `line-height` in all browsers. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | sub, | ||||||
|  | sup { | ||||||
|  |     font-size: 75%; | ||||||
|  |     line-height: 0; | ||||||
|  |     position: relative; | ||||||
|  |     vertical-align: baseline; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | sup { | ||||||
|  |     top: -0.5em; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | sub { | ||||||
|  |     bottom: -0.25em; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ========================================================================== | ||||||
|  |    Embedded content | ||||||
|  |    ========================================================================== */ | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Remove border when inside `a` element in IE 8/9. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | img { | ||||||
|  |     border: 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Correct overflow displayed oddly in IE 9. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | svg:not(:root) { | ||||||
|  |     overflow: hidden; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ========================================================================== | ||||||
|  |    Figures | ||||||
|  |    ========================================================================== */ | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Address margin not present in IE 8/9 and Safari 5. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | figure { | ||||||
|  |     margin: 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ========================================================================== | ||||||
|  |    Forms | ||||||
|  |    ========================================================================== */ | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Define consistent border, margin, and padding. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | fieldset { | ||||||
|  |     border: 1px solid #c0c0c0; | ||||||
|  |     margin: 0 2px; | ||||||
|  |     padding: 0.35em 0.625em 0.75em; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * 1. Correct `color` not being inherited in IE 8/9. | ||||||
|  |  * 2. Remove padding so people aren't caught out if they zero out fieldsets. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | legend { | ||||||
|  |     border: 0; /* 1 */ | ||||||
|  |     padding: 0; /* 2 */ | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * 1. Correct font family not being inherited in all browsers. | ||||||
|  |  * 2. Correct font size not being inherited in all browsers. | ||||||
|  |  * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | button, | ||||||
|  | input, | ||||||
|  | select, | ||||||
|  | textarea { | ||||||
|  |     font-family: inherit; /* 1 */ | ||||||
|  |     font-size: 100%; /* 2 */ | ||||||
|  |     margin: 0; /* 3 */ | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Address Firefox 4+ setting `line-height` on `input` using `!important` in | ||||||
|  |  * the UA stylesheet. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | button, | ||||||
|  | input { | ||||||
|  |     line-height: normal; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Address inconsistent `text-transform` inheritance for `button` and `select`. | ||||||
|  |  * All other form control elements do not inherit `text-transform` values. | ||||||
|  |  * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+. | ||||||
|  |  * Correct `select` style inheritance in Firefox 4+ and Opera. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | button, | ||||||
|  | select { | ||||||
|  |     text-transform: none; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` | ||||||
|  |  *    and `video` controls. | ||||||
|  |  * 2. Correct inability to style clickable `input` types in iOS. | ||||||
|  |  * 3. Improve usability and consistency of cursor style between image-type | ||||||
|  |  *    `input` and others. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | button, | ||||||
|  | html input[type="button"], /* 1 */ | ||||||
|  | input[type="reset"], | ||||||
|  | input[type="submit"] { | ||||||
|  |     -webkit-appearance: button; /* 2 */ | ||||||
|  |     cursor: pointer; /* 3 */ | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Re-set default cursor for disabled elements. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | button[disabled], | ||||||
|  | html input[disabled] { | ||||||
|  |     cursor: default; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * 1. Address box sizing set to `content-box` in IE 8/9. | ||||||
|  |  * 2. Remove excess padding in IE 8/9. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | input[type="checkbox"], | ||||||
|  | input[type="radio"] { | ||||||
|  |     box-sizing: border-box; /* 1 */ | ||||||
|  |     padding: 0; /* 2 */ | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. | ||||||
|  |  * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome | ||||||
|  |  *    (include `-moz` to future-proof). | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | input[type="search"] { | ||||||
|  |     -webkit-appearance: textfield; /* 1 */ | ||||||
|  |     -moz-box-sizing: content-box; | ||||||
|  |     -webkit-box-sizing: content-box; /* 2 */ | ||||||
|  |     box-sizing: content-box; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Remove inner padding and search cancel button in Safari 5 and Chrome | ||||||
|  |  * on OS X. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | input[type="search"]::-webkit-search-cancel-button, | ||||||
|  | input[type="search"]::-webkit-search-decoration { | ||||||
|  |     -webkit-appearance: none; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Remove inner padding and border in Firefox 4+. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | button::-moz-focus-inner, | ||||||
|  | input::-moz-focus-inner { | ||||||
|  |     border: 0; | ||||||
|  |     padding: 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * 1. Remove default vertical scrollbar in IE 8/9. | ||||||
|  |  * 2. Improve readability and alignment in all browsers. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | textarea { | ||||||
|  |     overflow: auto; /* 1 */ | ||||||
|  |     vertical-align: top; /* 2 */ | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ========================================================================== | ||||||
|  |    Tables | ||||||
|  |    ========================================================================== */ | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Remove most spacing between table cells. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | table { | ||||||
|  |     border-collapse: collapse; | ||||||
|  |     border-spacing: 0; | ||||||
|  | } | ||||||
|  | @ -29,6 +29,7 @@ class Serie extends Base { | ||||||
| 
 | 
 | ||||||
|     public static function getCount() { |     public static function getCount() { | ||||||
|         $nSeries = parent::getDb ()->query('select count(*) from series')->fetchColumn(); |         $nSeries = parent::getDb ()->query('select count(*) from series')->fetchColumn(); | ||||||
|  |         if ($nSeries == 0) return NULL; | ||||||
|         $entry = new Entry (localize("series.title"), self::ALL_SERIES_ID,  |         $entry = new Entry (localize("series.title"), self::ALL_SERIES_ID,  | ||||||
|             str_format (localize("series.alphabetical", $nSeries), $nSeries), "text",  |             str_format (localize("series.alphabetical", $nSeries), $nSeries), "text",  | ||||||
|             array ( new LinkNavigation ("?page=".parent::PAGE_ALL_SERIES))); |             array ( new LinkNavigation ("?page=".parent::PAGE_ALL_SERIES))); | ||||||
|  |  | ||||||
							
								
								
									
										304
									
								
								style-eink.css
									
										
									
									
									
										Normal file
									
								
							
							
						
						|  | @ -0,0 +1,304 @@ | ||||||
|  | /* Global Box Sizing and Font-Smoothing */ | ||||||
|  | *, *:after, *:before { | ||||||
|  |     box-sizing:border-box; | ||||||
|  |     -webkit-box-sizing:border-box; | ||||||
|  |     -moz-box-sizing:border-box; | ||||||
|  |     -webkit-font-smoothing:antialiased; | ||||||
|  |     -moz-font-smoothing:antialiased; | ||||||
|  |     -o-font-smoothing:antialiased; | ||||||
|  |     font-smoothing:antialiased; | ||||||
|  |     text-rendering:optimizeLegibility; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | html { font-size: 100%; -webkit-text-size-adjust: 100%;  | ||||||
|  |                           -ms-text-size-adjust: 100%; } | ||||||
|  | 
 | ||||||
|  | body { | ||||||
|  |     font-family: 'Open Sans', sans-serif; | ||||||
|  |     line-height:18px; | ||||||
|  |     color: #1c1c1c; /* Lighter on the eyes than #000 Black */ | ||||||
|  |     margin: 0px; background: #cccccc; background-size: cover; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | img { | ||||||
|  |     border: 0px; | ||||||
|  |     max-width: 100%; | ||||||
|  |     height: auto; | ||||||
|  |     width: auto\9; /* ie8 */ | ||||||
|  | 	opacity: 1; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ========================================================================== | ||||||
|  |    Typography stuff goes here | ||||||
|  |    ========================================================================== */ | ||||||
|  | h1,h2,h3,h4,h5,h6 { font-weight: bold; margin:0; padding:0;} | ||||||
|  | /*h1 see mediaqueries*/  | ||||||
|  | h2 {font-size: 1.2em;} | ||||||
|  | h3 {font-size: 1.1em;} | ||||||
|  | h4 {font-size: 1.0em; } | ||||||
|  | h5 {font-size: 0.83em;} | ||||||
|  | h6 {font-size: 0.75em;} | ||||||
|  | 
 | ||||||
|  | a:hover, a:active { outline: none; } | ||||||
|  | a { | ||||||
|  | 	color: black; | ||||||
|  | 	text-decoration: none; | ||||||
|  | 	font-weight: bold; | ||||||
|  | } | ||||||
|  | a:hover { color:#000; text-decoration: none; } | ||||||
|  | .frontpage a {display:block; } | ||||||
|  | .frontpage a:hover { width: 100%; background-color: white;} | ||||||
|  | .books:hover { width: 100%; background-color: silver; } | ||||||
|  | .link a:hover { display:inline-block; width: 100%; background-color: #778899;  /*Dirty IE Hack*/  zoom: 1;  *display: inline;} | ||||||
|  | 
 | ||||||
|  | img | ||||||
|  | { | ||||||
|  | margin:0; | ||||||
|  | padding:0; | ||||||
|  | border:0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ============================================================================= | ||||||
|  |    Main container stuff goes here and other globals | ||||||
|  |    ========================================================================== */ | ||||||
|  | .container{ | ||||||
|  | 	border:1px solid #000; border-radius:10px; | ||||||
|  |     max-width:800px;width:95%;margin:0 auto;position:relative; | ||||||
|  | 	background-color: white; | ||||||
|  | } | ||||||
|  |      | ||||||
|  | .fancyabout { font-weight:400; text-decoration: none; } | ||||||
|  | 
 | ||||||
|  | /* ============================================================================= | ||||||
|  |    Header stuff goes here | ||||||
|  |    ========================================================================== */ | ||||||
|  | header { | ||||||
|  |     clear:both;  | ||||||
|  |     color: black;  | ||||||
|  |     text-align:center; | ||||||
|  | 	display:block; | ||||||
|  |     min-height:70px; | ||||||
|  |     border-radius: 10px 10px 0px 0px; | ||||||
|  | 	border-bottom: 2px dashed gray; | ||||||
|  | 	font-variant: small-caps; | ||||||
|  | 	letter-spacing: 2px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .headleft { | ||||||
|  |     float: left; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .headcenter | ||||||
|  | { | ||||||
|  | float:none; | ||||||
|  | margin:auto; | ||||||
|  | text-align:center; | ||||||
|  | height:70px; | ||||||
|  | display:table; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | header h1{ | ||||||
|  |     display: table-cell; | ||||||
|  |     vertical-align: middle; | ||||||
|  |     text-align: center; | ||||||
|  |     line-height: 100%; | ||||||
|  |     text-shadow: 0px 4px 3px rgba(0,0,0,0.4), | ||||||
|  |                  0px 8px 13px rgba(0,0,0,0.1), | ||||||
|  |                  0px 18px 23px rgba(0,0,0,0.1); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .headright { | ||||||
|  |     float: right; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ============================================================================= | ||||||
|  |    Section and Article stuff goes here | ||||||
|  |    ========================================================================== */ | ||||||
|  | section { | ||||||
|  | clear:both; | ||||||
|  | background-color: #fff; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | article { | ||||||
|  | border-bottom: 1px solid black; | ||||||
|  | max-width:800px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /*-------------frontpage article-------------*/ | ||||||
|  | 
 | ||||||
|  | .frontpage h2 { | ||||||
|  | 	text-align: center; | ||||||
|  | 	letter-spacing: 2px; | ||||||
|  | 	color: black; | ||||||
|  | 	font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif; | ||||||
|  | 	padding: 5px 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .frontpage h4 { | ||||||
|  |     padding: 5px 0; | ||||||
|  | 	text-align: center; | ||||||
|  | 	color: gray; | ||||||
|  | 	 font-style: italic; | ||||||
|  | 	 font-size: 13px; | ||||||
|  | 	 text-decoration: overline; | ||||||
|  |  } | ||||||
|  | 
 | ||||||
|  | /*-------------books article-------------*/ | ||||||
|  | .books { | ||||||
|  |     clear: both; | ||||||
|  |     padding: 10px; | ||||||
|  |     min-height: 90px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .cover { | ||||||
|  |     float:left; | ||||||
|  |     margin: 0 10px 0 0; | ||||||
|  |     min-width: 56px; | ||||||
|  |     min-height: 70px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .download { | ||||||
|  |     float: right; | ||||||
|  |     line-height:40px; | ||||||
|  |     text-align: right; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .download a { | ||||||
|  |     border-radius: 6px; | ||||||
|  |     box-shadow:0 0 10px #000; | ||||||
|  |     background: darkgray;   | ||||||
|  |     background: radial-gradient(#666, black); | ||||||
|  |     color: #EEE; | ||||||
|  |     text-decoration : none; | ||||||
|  |     font-weight: bold; | ||||||
|  |     padding: 5px 10px 5px 10px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | .books h4{ | ||||||
|  |     display: inline; | ||||||
|  |     font-style: italic; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /*-------------books popup article-------------*/ | ||||||
|  | .bookpopup h2{ | ||||||
|  |     margin: 15px 15px;  | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .bookpopup h3{ | ||||||
|  |     display:inline;  /*Dirty IE Hack*/  zoom: 1;  *display: inline; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .bookpopup h4{ | ||||||
|  |     border-top: 1px solid black; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .fullclickpopup{ | ||||||
|  |     display: block; | ||||||
|  | 	color: black; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | section .bookpopup{ | ||||||
|  |     padding: 8px 8px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ============================================================================= | ||||||
|  |    Footer stuff goes here | ||||||
|  |    ========================================================================== */ | ||||||
|  | footer | ||||||
|  | { | ||||||
|  | clear:both; | ||||||
|  | color:white; | ||||||
|  | border-radius: 0px 0px 10px 10px;  | ||||||
|  | height:32px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .footright | ||||||
|  | { | ||||||
|  | float:right; | ||||||
|  | height:32px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .footcenter | ||||||
|  | { | ||||||
|  | margin:auto; | ||||||
|  | text-align:center; | ||||||
|  | height:32px; | ||||||
|  | display:table; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .footcenter p, .footcenter a | ||||||
|  | { | ||||||
|  | display: table-cell; | ||||||
|  | vertical-align: middle; | ||||||
|  | text-align: center; | ||||||
|  | line-height: 100%; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ============================================================================= | ||||||
|  |    Aside stuff goes here | ||||||
|  |    ========================================================================== */    | ||||||
|  | #tool | ||||||
|  | { | ||||||
|  | width:100%; | ||||||
|  | height:32px; | ||||||
|  | overflow: hidden; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | /*-------------Search Aside-------------*/ | ||||||
|  | #tool input[type=text] | ||||||
|  | { | ||||||
|  | vertical-align: middle; | ||||||
|  | width: 100%; | ||||||
|  | margin: 5px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .stop select | ||||||
|  | { | ||||||
|  | vertical-align: middle; | ||||||
|  | margin: 5px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | #sort | ||||||
|  | { | ||||||
|  | cursor:pointer; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .stop | ||||||
|  | { | ||||||
|  | display: block; | ||||||
|  | overflow: hidden; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ============================================================================= | ||||||
|  |    Mediaquerie stuff goes here | ||||||
|  |    ========================================================================== */ | ||||||
|  | /* 100px and greater */ | ||||||
|  | @media only screen and (min-width: 100px) { | ||||||
|  | h1 {font-size: 1em;} | ||||||
|  | .container { width:100%; } | ||||||
|  | } | ||||||
|  |     | ||||||
|  | /* 320px and greater */ | ||||||
|  | @media only screen and (min-width: 320px) { | ||||||
|  | h1 {font-size: 1.2em;} | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* 480px and greater */ | ||||||
|  | @media only screen and (min-width: 480px) { | ||||||
|  | h1 {font-size: 1.5em;} | ||||||
|  | body {  font-size: 1em;/*12px/16px */ | ||||||
|  |             font-weight:450; /* Better supported than 'lighter' attribute */ | ||||||
|  |     } | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* 810px and greater */ | ||||||
|  | @media only screen and (min-width: 768px) { | ||||||
|  | h1 {font-size: 2em;} | ||||||
|  | .container { box-shadow:0 0 20px #000; } | ||||||
|  | body {  margin: 5px;  | ||||||
|  |             font-size: 0.85em;/*12px/16px */ | ||||||
|  |             font-weight:400; /* Better supported than 'lighter' attribute */ | ||||||
|  |     } | ||||||
|  | } | ||||||
							
								
								
									
										440
									
								
								style.css
									
										
									
									
									
								
							
							
						
						|  | @ -1,50 +1,236 @@ | ||||||
| html | /* Global Box Sizing and Font-Smoothing */ | ||||||
| { | *, *:after, *:before { | ||||||
| font-family: sans-serif; |     box-sizing:border-box; | ||||||
| font-size: 1em; |     -webkit-box-sizing:border-box; | ||||||
| padding:0px; |     -moz-box-sizing:border-box; | ||||||
| margin:0px; |     -webkit-font-smoothing:antialiased; | ||||||
| background-color:lightgray; |     -moz-font-smoothing:antialiased; | ||||||
|  |     -o-font-smoothing:antialiased; | ||||||
|  |     font-smoothing:antialiased; | ||||||
|  |     text-rendering:optimizeLegibility; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| body | html { font-size: 100%; -webkit-text-size-adjust: 100%;  | ||||||
| { |                           -ms-text-size-adjust: 100%; } | ||||||
| margin-top:0px; | 
 | ||||||
|  | body { | ||||||
|  |     font-family: 'Open Sans', sans-serif; | ||||||
|  |     line-height:18px; | ||||||
|  |     color: #1c1c1c; /* Lighter on the eyes than #000 Black */ | ||||||
|  |     margin: 0px; background: #cccccc; background-size: cover; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| .container | img { | ||||||
|  |     border: 0px; | ||||||
|  |     max-width: 100%; | ||||||
|  |     height: auto; | ||||||
|  |     width: auto\9; /* ie8 */ | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ========================================================================== | ||||||
|  |    Typography stuff goes here | ||||||
|  |    ========================================================================== */ | ||||||
|  | h1,h2,h3,h4,h5,h6 { font-weight: bold; margin:0; padding:0;} | ||||||
|  | /*h1 see mediaqueries*/  | ||||||
|  | h2 {font-size: 1.2em;} | ||||||
|  | h3 {font-size: 1.1em;} | ||||||
|  | h4 {font-size: 1.0em; } | ||||||
|  | h5 {font-size: 0.83em;} | ||||||
|  | h6 {font-size: 0.75em;} | ||||||
|  | 
 | ||||||
|  | a:hover, a:active { outline: none; } | ||||||
|  | a { color: #000066; font-weight: 800; text-decoration: none;} | ||||||
|  | a:hover { color:#000; text-decoration: none; } | ||||||
|  | .frontpage a {display:block; } | ||||||
|  | .frontpage a:hover { width: 100%; background-color: #778899;} | ||||||
|  | .books:hover { width: 100%; background-color: #778899; } | ||||||
|  | .link a:hover { display:inline-block; width: 100%; background-color: #778899;  /*Dirty IE Hack*/  zoom: 1;  *display: inline;} | ||||||
|  | 
 | ||||||
|  | img | ||||||
| { | { | ||||||
|  | margin:0; | ||||||
|  | padding:0; | ||||||
|  | border:0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ============================================================================= | ||||||
|  |    Main container stuff goes here and other globals | ||||||
|  |    ========================================================================== */ | ||||||
|  | .container{ | ||||||
|  |  background: #414141; border:1px solid #000; border-radius:10px; | ||||||
|  |     max-width:800px;width:95%;margin:0 auto;position:relative; } | ||||||
|  |      | ||||||
|  | .fancyabout { font-weight:400; text-decoration: none; } | ||||||
|  | 
 | ||||||
|  | /* ============================================================================= | ||||||
|  |    Header stuff goes here | ||||||
|  |    ========================================================================== */ | ||||||
|  | header { | ||||||
|  |     clear:both;  | ||||||
|  |     color:white;  | ||||||
|  |     text-align:center;  | ||||||
|  |     text-transform:uppercase;  | ||||||
|  |     display:block; | ||||||
|  |     box-shadow:inset 0px -5px 8px #000000; | ||||||
|  |     min-height:70px; | ||||||
|  |     border-radius: 10px 10px 0px 0px;  | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .headleft { | ||||||
|  |     float: left; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .headcenter | ||||||
|  | { | ||||||
|  | float:none; | ||||||
| margin:auto; | margin:auto; | ||||||
| width:100%; | text-align:center; | ||||||
|  | height:70px; | ||||||
|  | display:table; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | header h1{ | ||||||
|  |     display: table-cell; | ||||||
|  |     vertical-align: middle; | ||||||
|  |     text-align: center; | ||||||
|  |     line-height: 100%; | ||||||
|  |     text-shadow: 0px 4px 3px rgba(0,0,0,0.4), | ||||||
|  |                  0px 8px 13px rgba(0,0,0,0.1), | ||||||
|  |                  0px 18px 23px rgba(0,0,0,0.1); | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .headright { | ||||||
|  |     float: right; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ============================================================================= | ||||||
|  |    Section and Article stuff goes here | ||||||
|  |    ========================================================================== */ | ||||||
|  | section { | ||||||
|  | clear:both; | ||||||
|  | background-color: #fff; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | article { | ||||||
|  | border-bottom: 1px solid black; | ||||||
| max-width:800px; | max-width:800px; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| .head | /*-------------frontpage article-------------*/ | ||||||
| { | 
 | ||||||
| color:white; | .frontpage h2 { | ||||||
| background-color:black; |     padding: 5px 0 0 5px; | ||||||
| width:100%; |  | ||||||
| height:64px; |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| .foot | .frontpage h4 { | ||||||
|  |     padding: 5px 0 5px 20px; | ||||||
|  |      font-style: italic; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /*-------------books article-------------*/ | ||||||
|  | .books { | ||||||
|  |     clear: both; | ||||||
|  |     padding: 10px; | ||||||
|  |     min-height: 90px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .cover { | ||||||
|  |     float:left; | ||||||
|  |     margin: 0 10px 0 0; | ||||||
|  |     min-width: 56px; | ||||||
|  |     min-height: 70px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .download { | ||||||
|  |     float: right; | ||||||
|  |     line-height:40px; | ||||||
|  |     text-align: right; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .download a { | ||||||
|  |     border-radius: 6px; | ||||||
|  |     box-shadow:0 0 10px #000; | ||||||
|  |     background: darkgray;   | ||||||
|  |     background: radial-gradient(#666, black); | ||||||
|  |     color: #EEE; | ||||||
|  |     text-decoration : none; | ||||||
|  |     font-weight: bold; | ||||||
|  |     padding: 5px 10px 5px 10px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | .books h4{ | ||||||
|  |     display: inline; | ||||||
|  |     font-style: italic; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /*-------------books popup article-------------*/ | ||||||
|  | .bookpopup h2{ | ||||||
|  |     margin: 15px 15px;  | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .bookpopup h3{ | ||||||
|  |     display:inline;  /*Dirty IE Hack*/  zoom: 1;  *display: inline; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .bookpopup h4{ | ||||||
|  |     border-top: 1px solid black; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .fullclickpopup{ | ||||||
|  |     display: block; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | section .bookpopup{ | ||||||
|  |     padding: 8px 8px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ============================================================================= | ||||||
|  |    Footer stuff goes here | ||||||
|  |    ========================================================================== */ | ||||||
|  | footer | ||||||
| { | { | ||||||
|  | clear:both; | ||||||
| color:white; | color:white; | ||||||
| background-color:black; | box-shadow:inset 0px 5px 8px #000000; | ||||||
| width:100%; | border-radius: 0px 0px 10px 10px;  | ||||||
| height:32px; | height:32px; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | .footright | ||||||
|  | { | ||||||
|  | float:right; | ||||||
|  | height:32px; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .footcenter | ||||||
|  | { | ||||||
|  | margin:auto; | ||||||
|  | text-align:center; | ||||||
|  | height:32px; | ||||||
|  | display:table; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | .footcenter p, .footcenter a | ||||||
|  | { | ||||||
|  | display: table-cell; | ||||||
|  | vertical-align: middle; | ||||||
|  | text-align: center; | ||||||
|  | line-height: 100%; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | /* ============================================================================= | ||||||
|  |    Aside stuff goes here | ||||||
|  |    ========================================================================== */    | ||||||
| #tool | #tool | ||||||
| { | { | ||||||
| margin-top: 5px; |  | ||||||
| color:white; |  | ||||||
| background-color:black; |  | ||||||
| width:100%; | width:100%; | ||||||
| height:32px; | height:32px; | ||||||
| overflow: hidden; | overflow: hidden; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | 
 | ||||||
|  | /*-------------Search Aside-------------*/ | ||||||
| #tool input[type=text] | #tool input[type=text] | ||||||
| { | { | ||||||
| vertical-align: middle; | vertical-align: middle; | ||||||
|  | @ -69,194 +255,34 @@ display: block; | ||||||
| overflow: hidden; | overflow: hidden; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| img | /* ============================================================================= | ||||||
| { |    Mediaquerie stuff goes here | ||||||
| margin:0; |    ========================================================================== */ | ||||||
| padding:0; | /* 100px and greater */ | ||||||
| border:0; | @media only screen and (min-width: 100px) { | ||||||
|  | h1 {font-size: 1em;} | ||||||
|  | .container { width:100%; } | ||||||
| } | } | ||||||
|     |     | ||||||
| .headleft | /* 320px and greater */ | ||||||
| { | @media only screen and (min-width: 320px) { | ||||||
| float:left; | h1 {font-size: 1.2em;} | ||||||
| height:64px; |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| .headright | /* 480px and greater */ | ||||||
| { | @media only screen and (min-width: 480px) { | ||||||
| float:right; | h1 {font-size: 1.5em;} | ||||||
| height:64px; | body {  font-size: 1em;/*12px/16px */ | ||||||
| cursor:pointer; |             font-weight:450; /* Better supported than 'lighter' attribute */ | ||||||
|  |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| .footright | /* 810px and greater */ | ||||||
| { | @media only screen and (min-width: 768px) { | ||||||
| float:right; | h1 {font-size: 2em;} | ||||||
| height:32px; | .container { box-shadow:0 0 20px #000; } | ||||||
|  | body {  margin: 5px;  | ||||||
|  |             font-size: 0.85em;/*12px/16px */ | ||||||
|  |             font-weight:400; /* Better supported than 'lighter' attribute */ | ||||||
|     } |     } | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| .headcenter |  | ||||||
| { |  | ||||||
| margin:auto; |  | ||||||
| text-align:center; |  | ||||||
| font-size: 1.5em; |  | ||||||
| font-weight:bold; |  | ||||||
| height:64px; |  | ||||||
| display:table; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .footcenter |  | ||||||
| { |  | ||||||
| margin:auto; |  | ||||||
| text-align:center; |  | ||||||
| font-size: 1.3em; |  | ||||||
| font-weight:bold; |  | ||||||
| height:32px; |  | ||||||
| display:table; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| .headcenter p, .footcenter p, .footcenter a |  | ||||||
| { |  | ||||||
| display: table-cell; |  | ||||||
| vertical-align: middle; |  | ||||||
| text-align: center; |  | ||||||
| line-height: 100%; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .clearer  |  | ||||||
| { |  | ||||||
| clear:both; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .entries |  | ||||||
| { |  | ||||||
| background-color:lightgray; |  | ||||||
| margin-top: 5px; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .entry |  | ||||||
| { |  | ||||||
| background-color:white; |  | ||||||
| border-bottom:1px double black; |  | ||||||
| display:block; |  | ||||||
| padding:2px; |  | ||||||
| cursor: pointer; |  | ||||||
| margin-bottom:5px; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .book |  | ||||||
| { |  | ||||||
| background-color:white; |  | ||||||
| border-bottom:1px double black; |  | ||||||
| min-height:80px; |  | ||||||
| margin-bottom:5px; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .navigation |  | ||||||
| { |  | ||||||
| display:none; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .entryTitle |  | ||||||
| { |  | ||||||
| font-weight:bold; |  | ||||||
| font-size: 1.1em; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .entryContent |  | ||||||
| { |  | ||||||
| font-style:italic; |  | ||||||
| font-size: 0.9em; |  | ||||||
| margin-left: 10px; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .cover |  | ||||||
| { |  | ||||||
| float:left; |  | ||||||
| padding:5px 10px; |  | ||||||
| min-width: 56px; |  | ||||||
| min-height: 70px; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .download |  | ||||||
| { |  | ||||||
| float:right; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .button |  | ||||||
| { |  | ||||||
| height:36px; |  | ||||||
| display: table; |  | ||||||
| width:80px; |  | ||||||
| margin:2px; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| .button p, .button a |  | ||||||
| { |  | ||||||
| display: table-cell; |  | ||||||
| vertical-align: middle; |  | ||||||
| text-align: center; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .entrySection |  | ||||||
| { |  | ||||||
| margin-top: 8px; |  | ||||||
| margin-bottom: 18px; |  | ||||||
| line-height: 1.5em; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .entrySection span |  | ||||||
| { |  | ||||||
| font-style:italic; |  | ||||||
| font-size: 1em; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| .buttonEffect a |  | ||||||
| { |  | ||||||
| border-radius: 6px; |  | ||||||
| background: darkgray;   |  | ||||||
| background: -moz-radial-gradient(#666, black); |  | ||||||
| background: -webkit-radial-gradient(#666, black); |  | ||||||
| background: -ms-radial-gradient(#666, black); |  | ||||||
| background: radial-gradient(#666, black); |  | ||||||
| color: #EEE; |  | ||||||
| text-decoration : none; |  | ||||||
| font-weight: bold; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .pad6 a |  | ||||||
| { |  | ||||||
| padding: 6px; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .pad6 |  | ||||||
| { |  | ||||||
| display: inline; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .bookdetail |  | ||||||
| { |  | ||||||
| color:black; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .bookpopup |  | ||||||
| { |  | ||||||
| min-width: 400px; |  | ||||||
| color:black; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .entries > .bookpopup, .entries > .bookdetail |  | ||||||
| { |  | ||||||
| background-color: white; |  | ||||||
| margin-bottom: 5px; |  | ||||||
| padding: 6px; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .content |  | ||||||
| { |  | ||||||
| line-height: 110%; |  | ||||||
| } | } | ||||||
							
								
								
									
										1
									
								
								tag.php
									
										
									
									
									
								
							
							
						
						|  | @ -29,6 +29,7 @@ class tag extends Base { | ||||||
| 
 | 
 | ||||||
|     public static function getCount() { |     public static function getCount() { | ||||||
|         $nTags = parent::getDb ()->query('select count(*) from tags')->fetchColumn(); |         $nTags = parent::getDb ()->query('select count(*) from tags')->fetchColumn(); | ||||||
|  |         if ($nTags == 0) return NULL; | ||||||
|         $entry = new Entry (localize("tags.title"), self::ALL_TAGS_ID,  |         $entry = new Entry (localize("tags.title"), self::ALL_TAGS_ID,  | ||||||
|             str_format (localize("tags.alphabetical", $nTags), $nTags), "text",  |             str_format (localize("tags.alphabetical", $nTags), $nTags), "text",  | ||||||
|             array ( new LinkNavigation ("?page=".parent::PAGE_ALL_TAGS))); |             array ( new LinkNavigation ("?page=".parent::PAGE_ALL_TAGS))); | ||||||
|  |  | ||||||