- Add videodb PHP/MySQL media collection manager (Blu-ray, DVD, CD) - Dockerfile: PHP 8.1 + Apache with GD/mysqli/exif extensions - docker-compose.yml: app on port 6761 + MySQL 8.0 with health checks - docker-entrypoint.sh: auto-generates config.inc.php from env vars, waits for MySQL, initializes DB schema idempotently - init-db.php: CLI schema installer using app's own prefix_query() logic - Persistent volumes for DB, cache, and cover images Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
603 lines
8.4 KiB
CSS
603 lines
8.4 KiB
CSS
/**
|
|
* Grey style sheet
|
|
*
|
|
* $Id: grey.css,v 1.24 2013/03/14 17:16:36 andig2 Exp $
|
|
*/
|
|
|
|
|
|
/*
|
|
* Defaults
|
|
*/
|
|
|
|
body {
|
|
font-family: Tahoma, Verdana, sans serif;
|
|
font-size: 12px;
|
|
margin: 0px;
|
|
padding: 0px;
|
|
background-color: #f8f8f8;
|
|
color: #000;
|
|
}
|
|
|
|
form, ul {
|
|
margin: 0px;
|
|
}
|
|
|
|
a:link, a:visited, a:active {
|
|
text-decoration: none;
|
|
color: #000;
|
|
}
|
|
a:hover {
|
|
text-decoration: underline;
|
|
color: rgb(255,102,0);
|
|
}
|
|
|
|
table.collapse {
|
|
border-collapse : collapse;
|
|
}
|
|
|
|
tr {
|
|
vertical-align: top;
|
|
}
|
|
|
|
td { /* this fixes a problem with opera */
|
|
vertical-align: top;
|
|
text-align: left;
|
|
}
|
|
|
|
img {
|
|
border: 0px;
|
|
}
|
|
|
|
input, textarea, select {
|
|
font-size: 12px;
|
|
}
|
|
|
|
h3, h4 { /* bold font, usually in action section */
|
|
font-size: 12px;
|
|
font-weight: bold;
|
|
margin: 0px;
|
|
}
|
|
|
|
h4 { /* used on edit page */
|
|
font-weight: normal;
|
|
display: inline;
|
|
}
|
|
|
|
/*
|
|
* divs
|
|
*/
|
|
|
|
#container {
|
|
padding: 2px 8px 10px 8px;
|
|
}
|
|
|
|
#logo {
|
|
text-align: right;
|
|
float: right;
|
|
}
|
|
|
|
#logotitle, #logotitle a {
|
|
font: bold 20px trebuchet ms, arial, helvetica, sans-serif;
|
|
text-decoration: none;
|
|
}
|
|
|
|
#logohelp, #logologin, #logoprofile, #logoversion {
|
|
display: inline;
|
|
}
|
|
|
|
.logodivider {
|
|
margin: 0px 0px 0px 3px;
|
|
}
|
|
|
|
#header {
|
|
}
|
|
|
|
#headernav {
|
|
margin: 26px 0px 4px 0px;
|
|
padding: 0px;
|
|
}
|
|
|
|
#headernav li {
|
|
display: inline;
|
|
list-style-type: none;
|
|
}
|
|
|
|
#headernav2 li {
|
|
display: inline;
|
|
list-style-type: none;
|
|
font-size: 11px;
|
|
font-weight: normal;
|
|
}
|
|
|
|
#headernav2 li:before { content: "| "; }
|
|
|
|
#headernav2 li:first-child:before { content: ""; }
|
|
|
|
/*IE workaround*/
|
|
/*All IE browsers*/
|
|
* html #headernav2 li
|
|
{
|
|
border-left: 1px solid black;
|
|
padding: 0 0.4em 0 0.4em;
|
|
margin: 0 0.4em 0 -0.4em;
|
|
}
|
|
/*prevent first |*/
|
|
* html #headernav2 li
|
|
{
|
|
display: block;
|
|
float: left;
|
|
}
|
|
/*end workaround*/
|
|
|
|
#headerhelp, #headerlogin, #headerprofile {
|
|
display: none;
|
|
}
|
|
|
|
#filters {
|
|
padding: 2px 0px 4px 0px;
|
|
background-color: #ddd;
|
|
font-size: 11px;
|
|
text-transform: capitalize;
|
|
}
|
|
|
|
#filtersmoreless {
|
|
float: right;
|
|
padding: 3px 4px 0px 0px;
|
|
}
|
|
|
|
#filtersmoreless img.button {
|
|
padding: 1px;
|
|
background-color: white;
|
|
border: none;
|
|
}
|
|
|
|
#quicksearch:hover {
|
|
color: #000000;
|
|
}
|
|
|
|
#quicksearch {
|
|
background: url(images/search_grey.gif) no-repeat scroll 0px;
|
|
color: #BBB;
|
|
padding-left: 17px;
|
|
}
|
|
|
|
#footer {
|
|
background-color: #ddd;
|
|
font-size: 10px;
|
|
height: 19px;
|
|
padding: 2px;
|
|
}
|
|
|
|
#footerpages {
|
|
padding: 3px;
|
|
}
|
|
|
|
#footerversion {
|
|
float: right;
|
|
padding: 3px;
|
|
display: none;
|
|
}
|
|
|
|
#footerimage {
|
|
float: right;
|
|
padding: 2px;
|
|
}
|
|
|
|
#topspacer, #topspacer2 {
|
|
background-color: #ddd;
|
|
height: 10px;
|
|
}
|
|
|
|
#topspacer2 {
|
|
height: 25px;
|
|
}
|
|
|
|
#actions {
|
|
background-color: #ddd;
|
|
padding: 4px;
|
|
}
|
|
|
|
#actionsspacer {
|
|
display: none;
|
|
}
|
|
|
|
#actionsbuttons {
|
|
}
|
|
|
|
#actions form, #actions h3 {
|
|
display: inline;
|
|
}
|
|
|
|
#actions div {
|
|
display: inline;
|
|
}
|
|
|
|
#content {
|
|
background-color: #eee;
|
|
}
|
|
|
|
#showheader {
|
|
border-bottom: 1px solid #aaa;
|
|
}
|
|
|
|
#showheader h1 {
|
|
font-size: 22px;
|
|
font-weight: bold;
|
|
margin: 0px;
|
|
}
|
|
|
|
#showheader h2 {
|
|
font-size: 18px;
|
|
font-weight: bolder;
|
|
margin: 0px;
|
|
}
|
|
|
|
#showimage {
|
|
float: left;
|
|
padding: 5px;
|
|
}
|
|
|
|
#showplot, #showfile, #showcomment, #showcast {
|
|
padding: 4px;
|
|
text-align: justify;
|
|
}
|
|
|
|
#showfile, #showcomment, #showcast {
|
|
border-bottom: 1px dotted #aaa;
|
|
}
|
|
|
|
#lookup {
|
|
padding: 4px;
|
|
}
|
|
|
|
#editbuttons {
|
|
position: absolute;
|
|
top: 46px;
|
|
right: 8px;
|
|
float: right;
|
|
font-size: 12px;
|
|
padding: 3px 90px 0px 0px;
|
|
margin: 0px;
|
|
}
|
|
|
|
#permissionbuttons {
|
|
position: absolute;
|
|
top: 48px;
|
|
right: 8px;
|
|
float: right;
|
|
font-size: 12px;
|
|
padding: 3px 4px 0px 0px;
|
|
margin: 0px;
|
|
}
|
|
|
|
#savebutton {
|
|
position: absolute;
|
|
top: 5px;
|
|
right: 4px;
|
|
}
|
|
|
|
#searchimage {
|
|
float: right;
|
|
}
|
|
|
|
#edit, #borrow, #statistics, #tools, #lookup, #users, #permissions, #contentlogin {
|
|
|
|
}
|
|
|
|
#borrow {
|
|
padding: 4px;
|
|
}
|
|
|
|
/*
|
|
* classes
|
|
*/
|
|
|
|
.tabActive a:visited,
|
|
.tabActive a:link,
|
|
.tabActive a:hover,
|
|
.tabInactive a:visited,
|
|
.tabInactive a:link,
|
|
.tabInactive a:hover {
|
|
font-size: 11px;
|
|
font-weight: bold;
|
|
margin: 4px 0px 0px 0px;
|
|
padding: 3px 6px 4px 6px;
|
|
text-decoration: none;
|
|
text-transform: capitalize;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.tabActive a:visited,
|
|
.tabActive a:link,
|
|
.tabActive a:hover {
|
|
background-color: #ddd;
|
|
color: #000;
|
|
}
|
|
.tabActive a:hover {
|
|
color: #fff;
|
|
}
|
|
|
|
.tabInactive a:visited,
|
|
.tabInactive a:link,
|
|
.tabInactive a:hover {
|
|
background-color: #aaa;
|
|
color: #fff;
|
|
}
|
|
.tabInactive a:hover {
|
|
background-color: #ddd;
|
|
}
|
|
|
|
.right {
|
|
text-align: right;
|
|
}
|
|
|
|
.center {
|
|
text-align: center;
|
|
}
|
|
|
|
.clear {
|
|
clear: both;
|
|
}
|
|
|
|
.button {
|
|
padding-top: 1px;
|
|
padding-bottom: 1px;
|
|
padding-right: 3px;
|
|
padding-left: 3px;
|
|
border: 1px solid #aaa;
|
|
background: #eee;
|
|
cursor: hand;
|
|
}
|
|
|
|
.dropcap:first-letter {
|
|
}
|
|
|
|
.listeven {
|
|
background-color: #fff;
|
|
clear: both;
|
|
}
|
|
|
|
.listodd {
|
|
background-color: #eee;
|
|
clear: both;
|
|
}
|
|
|
|
.listdivider {
|
|
clear: both;
|
|
}
|
|
|
|
.listcell {
|
|
float: left;
|
|
}
|
|
|
|
.optionseven, .optionsodd {
|
|
border-bottom: 1px dotted #aaa;
|
|
padding: 4px;
|
|
}
|
|
|
|
.optionsleft {
|
|
float: left;
|
|
width: 25%;
|
|
text-align: center;
|
|
}
|
|
|
|
.optionsright {
|
|
float: right;
|
|
width: 75%;
|
|
text-align: left;
|
|
}
|
|
|
|
.lent {
|
|
background-color: #fcc;
|
|
}
|
|
|
|
.wanted {
|
|
background-color: #ff9;
|
|
}
|
|
|
|
.notavail {
|
|
font-weight: bold;
|
|
color: #f00;
|
|
}
|
|
|
|
.listeven, .listodd {
|
|
border-bottom: 1px dotted #aaa;
|
|
}
|
|
|
|
.list_title, .list_diskid {
|
|
font-size: 12px;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.list_info, .list_seen, .list_plot {
|
|
font-size: 11px;
|
|
}
|
|
|
|
.list_info {
|
|
font-style: italic;
|
|
}
|
|
|
|
.list_plot a {
|
|
font-weight: bold;
|
|
}
|
|
|
|
.list_item_buttons form {
|
|
display: inline;
|
|
}
|
|
|
|
.list_item_more {
|
|
float: right;
|
|
}
|
|
|
|
.list_diskid, .list_language, .list_seen, .list_item_buttons {
|
|
text-align: right;
|
|
}
|
|
|
|
.list_language {
|
|
margin-top: 2px;
|
|
margin-left: 2px;
|
|
}
|
|
|
|
.list_episode {
|
|
padding: 2px;
|
|
}
|
|
|
|
|
|
/*
|
|
* Images
|
|
*/
|
|
|
|
.cover {
|
|
margin: 0px 4px 0px 0px;
|
|
}
|
|
|
|
.thumb {
|
|
float: left;
|
|
margin: 0px 2px 1px 0px;
|
|
}
|
|
|
|
/* setup screenshot thumbnails */
|
|
.setup-thumb {
|
|
float: left;
|
|
width: 105px;
|
|
text-align: center;
|
|
border: 1px solid #999;
|
|
margin: 0 15px 15px 0;
|
|
padding: 5px;
|
|
}
|
|
|
|
.setup-thumb a:hover {
|
|
text-decoration: none;
|
|
}
|
|
|
|
/* lookup thumbnail formatting */
|
|
.thumbnail {
|
|
float: left;
|
|
margin: 5px;
|
|
}
|
|
|
|
#purchasecontent .thumbnail {
|
|
width: 300px;
|
|
background-color: #fff;
|
|
color: #000;
|
|
}
|
|
|
|
.img-shadow {
|
|
float: left;
|
|
background: url(images/shadowalpha.png) no-repeat bottom right !important;
|
|
background: url(images/shadow.gif) no-repeat bottom right;
|
|
margin: 10px 0 0 10px !important;
|
|
margin: 10px 0 0 5px;
|
|
}
|
|
|
|
.img-shadow img {
|
|
display: block;
|
|
position: relative;
|
|
background-color: #fff;
|
|
border: 1px solid #a9a9a9;
|
|
margin: -8px 6px 6px -8px !important;
|
|
margin: -8px 6px 6px -4px;
|
|
padding: 1px;
|
|
}
|
|
|
|
/*
|
|
* Ajax Stuff
|
|
*/
|
|
|
|
.hidden {
|
|
display: none;
|
|
}
|
|
|
|
div.autocomplete {
|
|
position:absolute;
|
|
width:250px;
|
|
background-color:white;
|
|
border:1px solid #ccc;
|
|
border-width: 1px 0 0 0;
|
|
margin:0px;
|
|
padding:0px;
|
|
opacity:0.90;
|
|
}
|
|
div.autocomplete ul {
|
|
list-style-type:none;
|
|
margin:0px;
|
|
padding:0px;
|
|
}
|
|
div.autocomplete ul li {
|
|
list-style-type:none;
|
|
display:block;
|
|
margin:0;
|
|
padding:2px;
|
|
border: 1px solid #ccc;
|
|
border-width: 0 1px 1px 1px;
|
|
cursor:pointer;
|
|
}
|
|
div.autocomplete ul li.selected {
|
|
background: #4173CC;
|
|
color: #fff;
|
|
}
|
|
div.autocomplete ul li em {
|
|
font-weight: bold;
|
|
font-style: normal;
|
|
background: #ccc;
|
|
}
|
|
div.autocomplete ul li.selected em {
|
|
background: none;
|
|
}
|
|
|
|
|
|
/* Rating */
|
|
.rating_container {
|
|
white-space: nowrap;
|
|
clear: both;
|
|
display: inline;
|
|
}
|
|
|
|
.rating_container a {
|
|
float:left;
|
|
display:block;
|
|
width:20px;
|
|
height:20px;
|
|
border:0;
|
|
}
|
|
|
|
.rating_container a.rating_off {
|
|
background-image:url("images/starempty.gif");
|
|
}
|
|
|
|
.rating_container a.rating_half {
|
|
background-image:url("images/starhalf.gif");
|
|
}
|
|
|
|
.rating_container a.rating_on {
|
|
background-image:url("images/starfull.gif");
|
|
}
|
|
|
|
.rating_container a.rating_selected {
|
|
background-image:url("images/starselected.gif");
|
|
}
|
|
|
|
/* Image lookup */
|
|
#images, #images .thumbnail a {
|
|
background-color: #aaa;
|
|
color: #fff;
|
|
}
|
|
#images2 {
|
|
padding: 5px 5px 0px 5px;
|
|
}
|
|
|
|
/*
|
|
* Help Browser
|
|
*/
|
|
|
|
.helpbrowser code {font-family: monospace; color: #044;}
|
|
.helpbrowser td th {background-color: #eee;}
|
|
.helpbrowser h1 {text-align: center; font-size: 15pt; font-weight: bolder; margin-top: 0px}
|
|
.helpbrowser h2 {margin-left: 10px; font-size: 13pt; font-weight: bolder;}
|
|
.helpbrowser h3 {margin-left: 30px; font-size: 11pt; font-weight: bolder; font-variant: small-caps}
|
|
.helpbrowser p {text-align: justify; margin-left: 50px; width: 90%}
|
|
.helpbrowser pre {margin-left: 50px; font-family: monospace; color: #044;}
|
|
.helpbrowser table ul dl {margin-left: 50px; width: 90%}
|
|
.helpbrowser dd {margin-bottom: 10px;}
|
|
|