diff --git a/www/data/css/styles.css b/www/data/css/styles.css
index 3267014..de83522 100644
--- a/www/data/css/styles.css
+++ b/www/data/css/styles.css
@@ -202,6 +202,8 @@ body {
margin: 0;
padding: 0;
height: 42px; }
+ #headerdiv .logowrapper a {
+ cursor: default; }
#headerdiv .logowrapper .logo {
min-width: 197.5px;
height: 30px;
@@ -709,6 +711,8 @@ html, body {
color: black; }
.prgl_elem:hover .prgl_elem_subinfo_data {
color: black; }
+ .prgl_elem:hover .prgl_elem_left img {
+ filter: grayscale(100%); }
.prgl_elem_left {
padding: 4px;
@@ -929,6 +933,80 @@ html, body {
#prgv_header h1 {
font-size: 28pt; } }
/* 400px */
+.booklst_entry {
+ display: flex;
+ flex-direction: row;
+ text-decoration: none;
+ background: #BBB;
+ border: solid 1px #444;
+ margin: 5px 0; }
+ .booklst_entry:hover {
+ background: white;
+ color: black;
+ border: solid 1px black; }
+ .booklst_entry:hover .booklst_date {
+ color: black; }
+ .booklst_entry:hover .booklst_title {
+ color: black; }
+ .booklst_entry:hover .booklst_left img {
+ filter: grayscale(100%); }
+ .booklst_entry:hover .booklst_date span {
+ background: white;
+ border-left: 1px solid black;
+ border-bottom: 1px solid black; }
+
+.booklst_left {
+ padding: 4px;
+ display: flex; }
+
+.booklst_left img {
+ width: 150px;
+ height: auto; }
+
+.booklst_right {
+ display: flex;
+ flex-direction: column;
+ flex-grow: 1; }
+
+.booklst_title {
+ color: #222;
+ font-size: 40pt;
+ font-weight: bolder;
+ flex-grow: 1;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ text-align: center; }
+
+.booklst_date {
+ display: flex;
+ flex-direction: row-reverse;
+ color: #222; }
+
+.booklst_date span {
+ background: #AAA;
+ padding: 0 3px;
+ border-left: 1px solid transparent;
+ border-bottom: 1px solid transparent; }
+
+.booklst_content p {
+ color: #333; }
+
+@media (max-width: 767px) {
+ .booklst_left {
+ flex-direction: column;
+ align-items: center; }
+
+ .booklst_entry {
+ flex-direction: column; }
+
+ .booklst_date {
+ display: none;
+ visibility: hidden; }
+
+ .booklst_title {
+ font-size: 32pt; } }
+/* 400px */
.aboutcontent {
display: block;
width: 100%; }
@@ -1187,6 +1265,8 @@ html, body {
.programs_pnl_entry:hover .programs_pnl_bottom {
background: white;
border-top: 1px solid black; }
+ .programs_pnl_entry:hover .programs_pnl_img img {
+ filter: grayscale(100%); }
.programs_pnl_img {
display: flex;
@@ -1283,6 +1363,51 @@ html, body {
.blogpnl_title {
text-align: center; } }
/* 400px */
+.books_pnl_content {
+ display: flex;
+ flex-direction: row;
+ flex-wrap: wrap;
+ justify-content: space-evenly; }
+
+.books_pnl_entry {
+ display: flex;
+ flex-direction: column;
+ margin: 4px;
+ border: 1px solid #333;
+ background: #AAA;
+ text-decoration: none; }
+
+.books_pnl_entry img {
+ margin: 4px;
+ width: 150px;
+ height: auto; }
+
+.books_pnl_entry div {
+ display: flex;
+ justify-content: center;
+ align-items: flex-end;
+ flex-grow: 1;
+ border-top: 1px solid transparent;
+ text-align: center;
+ font-weight: bold;
+ color: #222;
+ text-decoration: none; }
+
+@media (max-width: 850px) {
+ .books_pnl_extra {
+ display: none;
+ visibility: collapse; } }
+.books_pnl_entry:hover {
+ border: 1px solid black;
+ background: white; }
+
+.books_pnl_entry:hover div {
+ color: black; }
+
+.books_pnl_entry:hover img {
+ filter: grayscale(100%); }
+
+/* 400px */
.bfjoust_runner_owner {
border: 1px solid #888;
background: #F8F8F8;
diff --git a/www/data/css/styles.min.css b/www/data/css/styles.min.css
index 64b5a7c..615dd43 100644
--- a/www/data/css/styles.min.css
+++ b/www/data/css/styles.min.css
@@ -43,6 +43,7 @@ body{background-color:#EEE;color:#CCC;font-family:serif}
.stripedtable tbody tr:nth-child(odd){background-color:#ccc}
#headerdiv{z-index:999;background-color:#333;display:flex;border-bottom:1px solid #111;box-shadow:0 0 8px #000;position:fixed;width:100%}
#headerdiv .logowrapper{flex:initial;margin:0;padding:0;height:42px}
+#headerdiv .logowrapper a{cursor:default}
#headerdiv .logowrapper .logo{min-width:197.5px;height:30px;margin:4px 0 8px 6px;flex:initial}
#headerdiv .tabrow{display:flex;flex:auto}
#headerdiv .tabrow .tab{display:flex;justify-content:center;align-items:center;background-color:#222;color:#CCC;border-left:1px solid #000;border-right:1px solid #000;font-weight:bold;text-decoration:none;margin:0 0 0 20px;padding:2px 5px;min-width:64px;text-align:center;flex:initial}
@@ -185,6 +186,7 @@ html,body{margin:0;padding:0;height:100%}
.prgl_elem:hover .prgl_elem_sdesc{color:black}
.prgl_elem:hover .prgl_elem_subinfo_caption{color:black}
.prgl_elem:hover .prgl_elem_subinfo_data{color:black}
+.prgl_elem:hover .prgl_elem_left img{filter:grayscale(100%)}
.prgl_elem_left{padding:4px;display:flex}
.prgl_elem_left img{width:250px;height:100%;min-height:100px}
.prgl_elem_right{display:flex;flex-direction:column;flex-grow:1}
@@ -236,6 +238,25 @@ html,body{margin:0;padding:0;height:100%}
.prgv_right_lang{justify-content:space-evenly}
#prgv_header h1{font-size:28pt}
}
+.booklst_entry{display:flex;flex-direction:row;text-decoration:none;background:#BBB;border:solid 1px #444;margin:5px 0}
+.booklst_entry:hover{background:white;color:black;border:solid 1px black}
+.booklst_entry:hover .booklst_date{color:black}
+.booklst_entry:hover .booklst_title{color:black}
+.booklst_entry:hover .booklst_left img{filter:grayscale(100%)}
+.booklst_entry:hover .booklst_date span{background:white;border-left:1px solid black;border-bottom:1px solid black}
+.booklst_left{padding:4px;display:flex}
+.booklst_left img{width:150px;height:auto}
+.booklst_right{display:flex;flex-direction:column;flex-grow:1}
+.booklst_title{color:#222;font-size:40pt;font-weight:bolder;flex-grow:1;display:flex;justify-content:center;align-items:center;text-align:center}
+.booklst_date{display:flex;flex-direction:row-reverse;color:#222}
+.booklst_date span{background:#AAA;padding:0 3px;border-left:1px solid transparent;border-bottom:1px solid transparent}
+.booklst_content p{color:#333}
+@media(max-width:767px){
+ .booklst_left{flex-direction:column;align-items:center}
+ .booklst_entry{flex-direction:column}
+ .booklst_date{display:none;visibility:hidden}
+ .booklst_title{font-size:32pt}
+}
.aboutcontent{display:block;width:100%}
.aboutcontent .boxedcontent{margin-bottom:20px}
.about_egh_container{display:flex;flex-direction:column;align-items:center}
@@ -292,6 +313,7 @@ html,body{margin:0;padding:0;height:100%}
.programs_pnl_entry:hover{background:white;color:black;border:1px solid black}
.programs_pnl_entry:hover .programs_pnl_center{color:black}
.programs_pnl_entry:hover .programs_pnl_bottom{background:white;border-top:1px solid black}
+.programs_pnl_entry:hover .programs_pnl_img img{filter:grayscale(100%)}
.programs_pnl_img{display:flex;flex-direction:column;justify-content:flex-start;margin:4px}
.programs_pnl_img img{width:100%;height:auto}
.programs_pnl_center{display:flex;justify-content:center;align-items:flex-end;text-align:center;color:black;font-weight:bolder;font-size:15pt;flex-grow:1;margin:0 2px}
@@ -312,6 +334,14 @@ html,body{margin:0;padding:0;height:100%}
.blogpnl_date{background-color:#AAA;border-bottom:1px solid transparent;padding:2px;font-size:.8em;font-style:italic}
.blogpnl_title{font-weight:bold;font-size:1.2em;text-align:left;margin:2px 0 2px 10px}
@media(max-width:850px){.blogpnl_title{text-align:center}}
+.books_pnl_content{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-evenly}
+.books_pnl_entry{display:flex;flex-direction:column;margin:4px;border:1px solid #333;background:#AAA;text-decoration:none}
+.books_pnl_entry img{margin:4px;width:150px;height:auto}
+.books_pnl_entry div{display:flex;justify-content:center;align-items:flex-end;flex-grow:1;border-top:1px solid transparent;text-align:center;font-weight:bold;color:#222;text-decoration:none}
+@media(max-width:850px){.books_pnl_extra{display:none;visibility:collapse}}
+.books_pnl_entry:hover{border:1px solid black;background:white}
+.books_pnl_entry:hover div{color:black}
+.books_pnl_entry:hover img{filter:grayscale(100%)}
.bfjoust_runner_owner{border:1px solid #888;background:#f8f8f8;padding:6px}
.bfjoust_runner_owner .hsplit{display:flex;flex-direction:row;flex-wrap:nowrap}
.bfjoust_runner_owner .hsplit_1{flex:1;margin:4px}
diff --git a/www/data/css/styles.scss b/www/data/css/styles.scss
index 12a1138..e3894b1 100644
--- a/www/data/css/styles.scss
+++ b/www/data/css/styles.scss
@@ -9,6 +9,7 @@
@import 'styles_errorview';
@import 'styles_programslist';
@import 'styles_programsview';
+@import 'styles_bookslist';
@import 'styles_about';
@import 'styles_admin';
@import 'styles_login';
@@ -16,5 +17,6 @@
@import 'styles_eulerpanel';
@import 'styles_programspanel';
@import 'styles_blogpanel';
+@import 'styles_bookspanel';
@import 'styles_bfjoustrunner';
@import 'styles_befungerunner';
\ No newline at end of file
diff --git a/www/data/css/styles_bookslist.scss b/www/data/css/styles_bookslist.scss
new file mode 100644
index 0000000..66dde0d
--- /dev/null
+++ b/www/data/css/styles_bookslist.scss
@@ -0,0 +1,79 @@
+@import 'styles_config';
+
+.booklst_parent {
+
+}
+
+.booklst_entry {
+ display: flex;
+ flex-direction: row;
+ text-decoration: none;
+
+ background: #BBB;
+ border: solid 1px #444;
+ margin: 5px 0;
+
+ &:hover {
+ background: $COL_COMPLEXHOVER_BG;
+ color: $COL_COMPLEXHOVER_FG;
+ border: solid 1px $COL_COMPLEXHOVER_BRD;
+ .booklst_date { color: $COL_COMPLEXHOVER_FG; }
+ .booklst_title { color: $COL_COMPLEXHOVER_FG; }
+ .booklst_left img { filter: grayscale(100%); }
+ .booklst_date span { background: $COL_COMPLEXHOVER_BG; border-left: 1px solid $COL_COMPLEXHOVER_BRD; border-bottom: 1px solid $COL_COMPLEXHOVER_BRD; }
+ }
+}
+
+.booklst_left {
+ padding: 4px;
+ display: flex;
+}
+
+.booklst_left img {
+ width: 150px;
+ height: auto;
+}
+
+.booklst_right {
+ display: flex;
+ flex-direction: column;
+ flex-grow: 1;
+}
+
+.booklst_title {
+ color: $COL_TEXT_DARK_DARKER;
+ font-size: 40pt;
+ font-weight: bolder;
+ flex-grow: 1;
+
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ text-align: center;
+}
+
+.booklst_date {
+ display: flex;
+ flex-direction: row-reverse;
+
+ color: $COL_TEXT_DARK_DARKER;
+}
+
+.booklst_date span {
+ background: #AAA;
+ padding: 0 3px;
+ border-left: 1px solid transparent;
+ border-bottom: 1px solid transparent;
+}
+
+.booklst_content p {
+ color: $COL_TEXT_DARK;
+}
+
+
+@include rdmedia(0) {
+ .booklst_left { flex-direction: column; align-items: center;}
+ .booklst_entry { flex-direction: column;}
+ .booklst_date { display:none; visibility: hidden; }
+ .booklst_title { font-size: 32pt; }
+}
\ No newline at end of file
diff --git a/www/data/css/styles_bookspanel.scss b/www/data/css/styles_bookspanel.scss
new file mode 100644
index 0000000..4236154
--- /dev/null
+++ b/www/data/css/styles_bookspanel.scss
@@ -0,0 +1,60 @@
+@import 'styles_config';
+
+.books_pnl_content {
+ display:flex;
+ flex-direction: row;
+ flex-wrap: wrap;
+ justify-content: space-evenly;
+}
+
+.books_pnl_entry {
+ display:flex;
+ flex-direction: column;
+
+ margin: 4px;
+ border: 1px solid #333;
+ background: #AAA;
+
+ text-decoration: none;
+}
+
+.books_pnl_entry img {
+
+ margin: 4px;
+ width: 150px;
+ height: auto;
+}
+
+.books_pnl_entry div {
+ display: flex;
+ justify-content: center;
+ align-items: flex-end;
+ flex-grow: 1;
+
+ border-top: 1px solid transparent;
+ text-align: center;
+ font-weight: bold;
+ color: $COL_TEXT_DARK_DARKER;
+ text-decoration: none;
+
+}
+
+@include rdmedia_range(0,1) {
+ .books_pnl_extra {
+ display: none;
+ visibility: collapse;
+ }
+}
+
+.books_pnl_entry:hover {
+ border: 1px solid $COL_COMPLEXHOVER_BRD;
+ background: $COL_COMPLEXHOVER_BG;
+}
+
+.books_pnl_entry:hover div {
+ color: $COL_COMPLEXHOVER_FG;
+}
+
+.books_pnl_entry:hover img {
+ filter: grayscale(100%);
+}
\ No newline at end of file
diff --git a/www/data/css/styles_header.scss b/www/data/css/styles_header.scss
index 929b354..040d8e8 100644
--- a/www/data/css/styles_header.scss
+++ b/www/data/css/styles_header.scss
@@ -15,6 +15,8 @@
padding: 0;
height: 42px;
+ a { cursor: default; }
+
.logo {
min-width: 197.5px; // prevents flickering after DOM load
height: 30px;
diff --git a/www/data/css/styles_programslist.scss b/www/data/css/styles_programslist.scss
index 5fc3750..a00e75e 100644
--- a/www/data/css/styles_programslist.scss
+++ b/www/data/css/styles_programslist.scss
@@ -24,6 +24,7 @@
.prgl_elem_sdesc { color: $COL_COMPLEXHOVER_FG; }
.prgl_elem_subinfo_caption { color: $COL_COMPLEXHOVER_FG; }
.prgl_elem_subinfo_data { color: $COL_COMPLEXHOVER_FG; }
+ .prgl_elem_left img { filter: grayscale(100%); }
}
}
diff --git a/www/data/css/styles_programspanel.scss b/www/data/css/styles_programspanel.scss
index fd2faae..2c87010 100644
--- a/www/data/css/styles_programspanel.scss
+++ b/www/data/css/styles_programspanel.scss
@@ -27,6 +27,7 @@
.programs_pnl_center { color: $COL_COMPLEXHOVER_FG; }
.programs_pnl_bottom { background: $COL_COMPLEXHOVER_BG; border-top: 1px solid $COL_COMPLEXHOVER_BRD; }
+ .programs_pnl_img img { filter: grayscale(100%); }
}
}
diff --git a/www/data/images/book_img/apgte_1_front.png b/www/data/images/book_img/apgte_1_front.png
new file mode 100644
index 0000000..ee9be22
Binary files /dev/null and b/www/data/images/book_img/apgte_1_front.png differ
diff --git a/www/data/images/book_img/apgte_1_full.png b/www/data/images/book_img/apgte_1_full.png
new file mode 100644
index 0000000..b4df82e
Binary files /dev/null and b/www/data/images/book_img/apgte_1_full.png differ
diff --git a/www/data/images/book_img/hpmor_1_front.png b/www/data/images/book_img/hpmor_1_front.png
new file mode 100644
index 0000000..feb442c
Binary files /dev/null and b/www/data/images/book_img/hpmor_1_front.png differ
diff --git a/www/data/images/book_img/hpmor_1_full.png b/www/data/images/book_img/hpmor_1_full.png
new file mode 100644
index 0000000..979cc2a
Binary files /dev/null and b/www/data/images/book_img/hpmor_1_full.png differ
diff --git a/www/data/images/book_img/hpmor_2_front.png b/www/data/images/book_img/hpmor_2_front.png
new file mode 100644
index 0000000..f2ce79e
Binary files /dev/null and b/www/data/images/book_img/hpmor_2_front.png differ
diff --git a/www/data/images/book_img/hpmor_2_full.png b/www/data/images/book_img/hpmor_2_full.png
new file mode 100644
index 0000000..d89f44c
Binary files /dev/null and b/www/data/images/book_img/hpmor_2_full.png differ
diff --git a/www/data/images/book_img/hpmor_3_front.png b/www/data/images/book_img/hpmor_3_front.png
new file mode 100644
index 0000000..62cbd42
Binary files /dev/null and b/www/data/images/book_img/hpmor_3_front.png differ
diff --git a/www/data/images/book_img/hpmor_3_full.png b/www/data/images/book_img/hpmor_3_full.png
new file mode 100644
index 0000000..8477541
Binary files /dev/null and b/www/data/images/book_img/hpmor_3_full.png differ
diff --git a/www/data/images/book_img/mm_front.png b/www/data/images/book_img/mm_front.png
new file mode 100644
index 0000000..c8d844e
Binary files /dev/null and b/www/data/images/book_img/mm_front.png differ
diff --git a/www/data/images/book_img/mm_full.png b/www/data/images/book_img/mm_full.png
new file mode 100644
index 0000000..359df7c
Binary files /dev/null and b/www/data/images/book_img/mm_full.png differ
diff --git a/www/fragments/header.php b/www/fragments/header.php
index 14de5cf..735f8b4 100644
--- a/www/fragments/header.php
+++ b/www/fragments/header.php
@@ -1,6 +1,6 @@