feat: add videodb media index with Docker stack

- 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>
This commit is contained in:
2026-05-11 09:49:52 +02:00
commit f55c91276e
1230 changed files with 252321 additions and 0 deletions

View File

@@ -0,0 +1,95 @@
{*
Template for the borrowing a single disk
$Id: borrow.tpl,v 2.17 2008/03/09 14:57:23 andig2 Exp $
*}
{if $diskid && $editable}
<div>
<table width="100%" class="tablefilter">
<tr>
<td class="center">
<form action="borrow.php" id="borrow" name="borrow" method="post">
<input type="hidden" name="diskid" id="diskid" value="{$diskid}" />
{if $who}
<br />
{$lang.diskid} {$diskid}
{$lang.lentto} {$who} ({$dt})
<br />
<input type="hidden" name="return" value="1" />
<input type="submit" value="{$lang.returned}" class="button" />
{else}
<br />
{$lang.diskid} {$diskid} {$lang.available}
<br />
{$lang.borrowto}:
<input type="text" size="40" maxlength="255" id="who" name="who" />
<input type="submit" value="{$lang.okay}" class="button" />
{/if}
<br />
</form>
</td>
</tr>
</table>
<script language="JavaScript" type="text/javascript">
if (document.forms['borrow'].who) document.forms['borrow'].who.focus();
</script>
</div>
{else}
<div id="topspacer"></div>
{/if}
<br/>
{if $config.multiuser}
<table>
<tr>
<td class="show_title">{$lang.curlentfrom}</td>
<td><form action="borrow.php">{html_options name=owner options=$owners selected=$owner onchange="submit()"}</form></td>
<td>:</td>
</tr>
</table><br/>
{else}
<h3>{$lang.curlent}</h3>
{/if}
{if $borrowlist}
<table width="90%" class="tableborder">
<tr class="{cycle values="even,odd"}">
<th>{$lang.diskid}</th>
{if $config.multiuser}<th>{$lang.owner}</th>{/if}
<th>{$lang.title}</th>
<th>{$lang.lentto}</th>
<th>{$lang.date}</th>
<th></th>
</tr>
{foreach item=disk from=$borrowlist}
<tr class="{cycle values="even,odd"}">
<td class="center"><a href="search.php?q={$disk.diskid}&fields=diskid&nowild=1">{$disk.diskid}</a></td>
{if $config.multiuser}
<td class="center">{$disk.owner}</td>
{/if}
<td class="center">
<a href="show.php?id={$disk.id}">{$disk.title}</a>
{if $disk.count > 1} ... {/if}
</td>
<td class="center">{$disk.who}</td>
<td class="center">{$disk.dt}</td>
<td class="center">
{if $disk.editable}
<form action="borrow.php" method="get">
<input type="hidden" name="diskid" value="{$disk.diskid}" />
<input type="hidden" name="return" value="1" />
<input type="submit" value="{$lang.returned}" class="button"/>
</form>
{/if}
</td>
</tr>
{/foreach}
</table>
{else}
{$lang.l_nothing}
<br/><br/>
{/if}

View File

@@ -0,0 +1,25 @@
{*
IMDB borow request popup
$Id: borrowask.tpl,v 1.2 2004/09/20 15:14:10 andig2 Exp $
*}
{include file="xml.tpl"}
<body>
<script language="JavaScript" type="text/javascript">
//<![CDATA[
window.focus()
//]]>
</script>
<p>
{if $success}
{$lang.msg_borrowaskok}
{else}
{$lang.msg_borrowaskfail}
{/if}
</p>
<p align="center">[ <a href="javascript:close()">{$lang.okay}</a> ]</p>
</body>
</html>

View File

@@ -0,0 +1,230 @@
/**
* $Id: compact.css,v 2.16 2007/08/08 19:03:37 andig2 Exp $
*/
body {
font-family: Tahoma, Verdana, sans serif;
font-size:12px;
margin: 0px;
padding: 0px;
}
tr {
vertical-align: top;
}
td {
vertical-align: top; /* this fixes a problem with opera */
text-align: left; /* this fixes a problem with opera */
font-size: 12px;
}
th {
font-size: 12px;
}
img {
border: 0px;
}
a:link, a:visited, a:active {
text-decoration: none;
color: #004;
}
a:hover {
text-decoration: underline;
}
#topspacer {
height: 10px;
}
/*
* AJAX styles
*/
.hidden {
display: none;
}
.even {background-color:#fff;}
.odd {background-color:#eee;}
.lent {background-color:#fcc;}
.wanted {background-color:#ff9;}
.filter {
font-size:10px
}
.list_title,
.list_diskid { font-weight:bold; font-size:12px; }
.list_info { font-style:italic; font-size:10px; }
.list_seen,
.list_plot { font-size:10px; }
.list_episode { padding: 2px; }
.tableborder {width:100%; background-color: #fff; }
.tablefilter, #topspacer {width:100%; background-color:#ccf; border-bottom: 1px solid #339; }
.tablefooter {width:100%; background-color:#ccf; border-top: 1px solid #339; }
.tablemenu {width:100%; background-color: #339;}
.show_title {
font-size: 18px;
font-weight: bolder;
}
.show_subtitle,
.show_id {
font-size: 18px;
font-weight: bolder;
}
.show_info {
background-color:#f0f0f0;
border-bottom: 1px solid #bbbbbb;
}
.show_plot {
background-color:#f6f6f6;
border-bottom: 1px solid #bbbbbb;
}
.notavail {color:#ff0000; font-weight:bold}
.logo, a.logo, a.logo:hover, a.logo:visited {
font-size:18px;
font-weight:bolder;
font-style:italic;
text-decoration: none;
color: #ffffff;
float: right;
margin-right: 3px; /* right margin on logo */
}
.splitbrain,
.version {
font-size: 10px;
}
.center {
text-align: center;
}
.tabActive A:visited,
.tabActive A:link,
.tabActive A:hover {
font-size: 11px;
font-weight:bold;
height: 22px;
border-color:#ffffff #333399 #ffffff #ffffff;
border-style: groove;
border-width: 2px 1px 0px 2px;
padding: 2px 6px 2px 6px;
background-color:#ccccff;
color:#333399;
text-decoration:none;
text-transform: capitalize;
}
.tabActive A:hover {
background-color:#ccccff;
color:#6666cc;
}
.tabInactive A,
.tabInactive A:visited,
.tabInactive A:link,
.tabInactive A:hover {
font-size: 11px;
font-weight: bold;
height: 18px;
border-color: #ccccff #333399 #ccccff #ccccff;
border-style: groove;
border-width: 2px 1px 0px 2px ;
margin: 4px 0px 0px 0px;
padding: 0px 6px 0px 6px;
background-color:#6666cc;
color:#ffffff;
text-decoration: none;
text-transform: capitalize;
}
.tabInactive A:hover {
background-color:#ccccff;
color:#6666cc;
}
.filterlink A,
.filterlink A:visited,
.filterlink A:link,
.filterlink A:hover,
.filterlink {
font-weight: bold;
color: #339;
text-transform: capitalize;
}
form {
margin: 0px;
}
input, textarea, select {
font-size: 12px;
}
input.button {
text-transform: capitalize;
font-size: 12px;
}
.caption,
.editcaption {
text-transform: capitalize;
}
.caption {
font-weight: bold;
}
.cover
{
margin: 0px 4px 1px 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.tpl thumbnail formatting */
.thumbnail
{
float: left;
margin: 5px;
}
#topspacer {
height: 10px;
}
/* special formatings for stuff in the helpbrowser */
.helpbrowser code {font-family:monospace; color:#004444;}
.helpbrowser td {background-color:#EEEEEE;}
.helpbrowser th {background-color:#EEEEEE;}
.helpbrowser h1 {text-align:center; font-size:15pt; font-weight:bolder;}
.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:#004444;}
.helpbrowser ul {margin-left:50px; width:90%}
.helpbrowser dl {margin-left:50px; width:90%}
.helpbrowser dd {margin-bottom:10px;}
.helpbrowser table {margin-left:50px; width:90%}

View File

@@ -0,0 +1,32 @@
{*
Index of the contrib content
$Id: contrib.tpl,v 1.4 2005/10/13 19:30:55 andig2 Exp $
*}
<div id="topspacer"></div>
<table width="100%" cellspacing="0" cellpadding="0">
<tr>
<td colspab="3" height="20px">&nbsp;</td>
</tr>
{foreach item=file from=$files}
{cycle values="even,odd" assign=CLASS print=false}
<tr class="{$CLASS}">
<td width="10%"></td>
<td width="80%">
<table>
<tr>
<td>
<a href="{$file[0]}">{$file[1]}</a>
</td>
</tr>
</table>
</td>
<td width="10%"></td>
</tr>
{/foreach}
<tr>
<td colspab="3" height="20px">&nbsp;</td>
</tr>
</table>

View File

@@ -0,0 +1,12 @@
{*
Deletion confirmation
$Id: delete.tpl,v 2.3 2005/05/25 21:09:51 andig2 Exp $
*}
<div id="topspacer"></div>
<br/>
<div class="center">
{$lang.deleted}
</div>
<br/>

View File

@@ -0,0 +1,257 @@
{*
Template for the edit interface
$Id: edit.tpl,v 2.39 2007/12/29 10:23:18 andig2 Exp $
*}
{if !empty($video.id)}
<table width="100%" class="tablefilter" cellspacing="5">
<tr>
<td width="100%">&nbsp;</td>
<td class="center">
<form action="show.php" method="get" name="show">
<input type="hidden" name="id" value="{$video.id}" />
<input type="submit" value="{$lang.view}" class="button"/>
</form>
</td>
</tr>
</table>
{else}
{if $xmlimport}
<table width="100%" class="tablefilter" cellspacing="5">
<tr>
<td width="100%">&nbsp;</td>
<td class="center">
<form action="edit.php" method="get" name="import">
<input type="hidden" name="import" value="xml" />
<input type="submit" value="Import" class="button"/>
</form>
</td>
</tr>
</table>
{else}
<div id="topspacer"></div>
{/if}
{/if}
<script language="JavaScript" type="text/javascript" src="javascript/edit.js"></script>
<table class="tableborder" style="background-color:#eeeeee;">
<tr><td>
{if $http_error}<div class="center">{$http_error}</div>{/if}
<div align="center">
<form action="edit.php" id="edi" name="edi" method="post" enctype="multipart/form-data">
<input type="hidden" name="id" id="id" value="{if !empty($video.id)}{$video.id}{/if}" />
<input type="hidden" name="engine" id="engine" value="{if !empty($engine)}{$engine}{/if}" />
<input type="hidden" name="save" id="save" value="1" />
<table class="tableedit">
<tr>
<td>
<table>
<tr>
<td><span class="editcaption">{$lang.title}:</span></td>
<td>
<input type="text" name="title" id="title" value="{if !empty($video.q_title)}{$video.q_title}{/if}" size="50" maxlength="255" />
<a href="javascript:void(lookupData(document.edi.title.value))"><img src="images/search.gif" alt="" align="middle" /></a>
</td>
</tr>
<tr>
<td><span class="editcaption">{$lang.subtitle}:</span></td>
<td>
<input type="text" name="subtitle" id="subtitle" value="{if !empty($video.q_subtitle)}{$video.q_subtitle}{/if}" size="50" maxlength="255" />
<a href="javascript:void(lookupData(document.edi.subtitle.value))"><img src="images/search.gif" alt="" align="middle" /></a>
</td>
</tr>
<tr>
<td><span class="editcaption">{$lang.language}:</span></td>
<td>{$video.f_language}</td>
</tr>
<tr>
<td><span class="editcaption">{$lang.diskid}:</span></td>
<td>
<input type="text" name="diskid" id="diskid" value="{if !empty($video.q_diskid)}{$video.q_diskid}{/if}" size="15" maxlength="255" />
<input type="hidden" name="autoid" id="autoid" value="{$autoid}" />
<input type="hidden" name="oldmediatype" id="oldmediatype" value="{$video.mediatype}" />
{$lang.mediatype} {html_options name="mediatype" options=$mediatypes selected=$video.mediatype}
</td>
</tr>
<tr>
<td><span class="editcaption"><label for="istv">{$lang.tvepisode}</label>:</span></td>
<td><input type="checkbox" name="istv" id="istv" value="1" {if !empty($video.istv)}checked="checked"{/if}/></td>
</tr>
<tr>
<td><span class="editcaption"><label for="seen">{$lang.seen}</label>:</span></td>
<td><input type="checkbox" name="seen" id="seen" value="1" {if !empty($video.seen)}checked="checked"{/if}/></td>
</tr>
<tr>
<td><span class="editcaption">{$lang.filename}:</span></td>
<td><input type="text" name="filename" id="filename" value="{if !empty($video.q_filename)}{$video.q_filename}{/if}" size="50" maxlength="255" /></td>
</tr>
<tr>
<td><span class="editcaption">{$lang.filesize}:</span></td>
<td><input type="text" name="filesize" id="filesize" value="{if !empty($video.q_filesize)}{$video.q_filesize}{/if}" size="10" maxlength="15" /> bytes</td>
</tr>
<tr>
<td><span class="editcaption">{$lang.filedate}:</span></td>
<td><input type="text" name="filedate" id="filedate" value="{if !empty($video.q_filedate)}{$video.q_filedate}{/if}" size="18" maxlength="20" /></td>
</tr>
<tr>
<td><span class="editcaption">{$lang.audiocodec}:</span></td>
<td><input type="text" name="audio_codec" id="audio_codec" value="{if !empty($video.q_audio_codec)}{$video.q_audio_codec}{/if}" /></td>
</tr>
<tr>
<td><span class="editcaption">{$lang.videocodec}:</span></td>
<td><input type="text" name="video_codec" id="video_codec" value="{if !empty($video.q_video_codec)}{$video.q_video_codec}{/if}" /></td>
</tr>
<tr>
<td><span class="editcaption">{$lang.dimension}:</span></td>
<td>
<input type="text" name="video_width" id="video_width" value="{if !empty($video.q_video_width)}{$video.q_video_width}{/if}" size="5" maxlength="4" /> x
<input type="text" name="video_height" id="video_height" value="{if !empty($video.q_video_height)}{$video.q_video_height}{/if}" size="5" maxlength="4" />
</td>
</tr>
<tr>
<td>{$lang.rating}:</td>
<td>
{if !empty($video.rating)}
{rating_input value=$video.rating}
{else}
{rating_input value=null}
{/if}
</td>
</tr>
<tr>
<td colspan="2"><span class="editcaption">{$lang.genre}:</span>
<br/>
{$genreselect}
</td>
</tr>
{if !empty($video.custom1name)}
<tr>
<td><span class="editcaption">{$video.custom1name}:</span></td>
<td>{$video.custom1in}</td>
</tr>
{/if}
{if !empty($video.custom3name)}
<tr>
<td><span class="editcaption">{$video.custom3name}:</span></td>
<td>{$video.custom3in}</td>
</tr>
{/if}
</table>
</td>
<td width="10">&nbsp;</td>
<td>
<table>
<tr>
<td><span class="editcaption">IMDb-ID:</span></td>
<td>
<input type="text" name="imdbID" id="imdbID" value="{if !empty($video.q_imdbID)}{$video.q_imdbID}{/if}" size="15" maxlength="30" onchange="changedId()" />
{if !empty($link)}<span class="filterlink"><a href="{$link}" target="_blank">{$lang.visit}</a></span>{/if}</td>
</tr>
<tr>
<td><span class="editcaption">{$lang.coverurl}:</span></td>
<td>
<input type="text" name="imgurl" id="imgurl" value="{if !empty($video.q_imgurl)}{$video.q_imgurl}{/if}" size="50" maxlength="255" />
<a href="javascript:void(lookupImage(document.edi.title.value))"><img src="images/search.gif" alt="" align="middle" /></a>
</td>
</tr>
<tr>
<td><span class="editcaption">{$lang.coverupload}:</span></td>
<td><input type="file" name="coverupload" id="coverupload" size="35" /></td>
</tr>
<tr>
<td><span class="editcaption">{$lang.country}:</span></td>
<td><input type="text" name="country" id="country" value="{if !empty($video.q_country)}{$video.q_country}{/if}" size="50" maxlength="255" /></td>
</tr>
<tr>
<td><span class="editcaption">{$lang.director}:</span></td>
<td><input type="text" name="director" id="director" value="{if !empty($video.q_director)}{$video.q_director}{/if}" size="50" maxlength="255" /></td>
</tr>
<tr>
<td><span class="editcaption">{$lang.runtime}:</span></td>
<td>
<input type="text" name="runtime" id="runtime" value="{if !empty($video.q_runtime)}{$video.q_runtime}{/if}" size="5" maxlength="5" />min
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{$lang.year}
<input type="text" name="year" id="year" value="{if !empty($video.year)}{$video.year}{/if}" size="5" maxlength="4" />
</td>
</tr>
<tr>
<td><span class="editcaption">{$lang.plot}:</span></td>
<td><textarea cols="40" rows="8" name="plot" id="plot" wrap="virtual">{if !empty($video.q_plot)}{$video.q_plot}{/if}</textarea></td>
</tr>
<tr>
<td><span class="editcaption">{$lang.cast}:</span></td>
<td><textarea cols="40" rows="8" name="actors" id="actors" wrap="off">{if !empty($video.q_actors)}{$video.q_actors}{/if}</textarea></td>
</tr>
<tr>
<td><span class="editcaption">{$lang.comment}:</span></td>
<td><textarea cols="40" rows="3" name="comment" id="comment" wrap="virtual">{if !empty($video.q_comment)}{$video.q_comment}{/if}</textarea></td>
</tr>
{if !empty($video.custom2name)}
<tr>
<td><span class="editcaption">{$video.custom2name}:</span></td>
<td>{$video.custom2in}</td>
</tr>
{/if}
{if !empty($video.custom4name)}
<tr>
<td><span class="editcaption">{$video.custom4name}:</span></td>
<td>{$video.custom4in}</td>
</tr>
{/if}
{if !empty($owners)}
<tr>
<td>{$lang.owner}</td>
<td>
{html_options name=owner_id options=$owners selected=$video.owner_id}
</td>
</tr>
{/if}
</table>
</td>
</tr>
</table>
<script language="JavaScript" type="text/javascript">
document.edi.title.focus();
</script>
{$lang.radio_look_caption}: {html_radios name=lookup options=$lookup checked="$lookup_id"}
<label for="add_flag"><input type="checkbox" name="add_flag" id="add_flag" value="1" {if !empty($add_flag)}checked="checked"{/if} />{$lang.add_another}</label>
<div align="center"><input type="submit" value="{$lang.save}" class="button" accesskey="s" /></div>
</form>
</div>
</td></tr>
</table>

View File

@@ -0,0 +1,54 @@
{*
Template for the video detail view/episodes chapter
$Id: episodes.tpl,v 2.2 2005/05/20 10:24:28 andig2 Exp $
*}
<table width="100%" class="show_plot" cellspacing="0" cellpadding="0">
{counter start=0 print=false name=videocount}
{foreach item=episode from=$video.episodes}
{if !$count}
{cycle values="even,odd" assign=CLASS print=false}
<tr class="{$CLASS}">
{/if}
<td class="list_episode">
{*
<table width="100%" class="show_plot">
<tr>
<td style="text-align:justify">
*}
<b>
<a href="show.php?id={$episode.id}">{$episode.title}</a>
{if $episode.episode}
[{$episode.season}-{$episode.episode}]
{/if}
</b><br/>
{*
<b>{$lang.plot}:</b><br/>{$episode.plot}<br/>
*}
{$episode.plot}
{*
</td>
</tr>
</table>
*}
</td>
{counter assign=count name=videocount}
{if $count == $listcolumns}
{counter start=0 print=false name=videocount}
</tr>
{/if}
{/foreach}
{if $count}
{section name="columnLoop" start=$count loop=$listcolumns}
<td class="{$CLASS}">&nbsp;</td>
{/section}
</tr>
{/if}
</table>

View File

@@ -0,0 +1,48 @@
{*
The filters on top of the browse page
$Id: filters.tpl,v 2.15 2006/03/28 11:50:09 andig2 Exp $
*}
<div>
<form action="index.php" id="browse" name="browse">
<table width="100%" class="tablefilter" cellspacing="5">
<tr>
<td class="filter" nowrap="nowrap">
{html_radios name=filter options=$filters checked=$filter label_class="filterlink" onclick="submit()"}
</td>
{if !empty($order_options) AND $filter<>'new'}
<td class="filter" nowrap="nowrap" width="50%">
<div align="right">
<label class="filterlink" for="order">{$lang.order}: </label>{html_options name="order" id="order" options=$order_options selected=$order onchange="submit()"}
</div>
</td>
{/if}
<td class="filter" width="50%">
<div align="right">
<input type="checkbox" name="showtv" id="showtv" value="1" {if $showtv}checked="checked"{/if} onclick="submit()" /><label class="filterlink" for="showtv">{$lang.radio_showtv}</label>
</div>
</td>
{if !empty($owners)}
<td class="filter">
<div align="right">
{html_options name=owner options=$owners selected=$owner onchange="submit()"}
</div>
</td>
{/if}
<!--
<td align="right">
<input type="submit" value="{$lang.okay}" class="button"/>
</td>
-->
{if $listcolumns AND $moreless}
<td align="right" valign="middle">
<div align="center"><span class="filterlink" style="font-size:10px; font-weight: bold;">
<a href="index.php?listcolumns={math equation="columns+1" columns=$listcolumns}">{$lang.more}</a><br/>
{if $listcolumns gt 1}<a href="index.php?listcolumns={math equation="columns-1" columns=$listcolumns}">{/if}{$lang.less}{if $listcolumns gt 1}</a>{/if}
</span></div>
</td>
{/if}
</tr>
</table>
</form>
</div>

View File

@@ -0,0 +1,41 @@
{*
This is the footer which is displayed on bottom of every page
$Id: footer.tpl,v 2.25 2008/10/19 10:45:28 andig2 Exp $
*}
{$DEBUG}
<table class="tablefooter">
<tr>
<td><a href="#top"><img src="images/top.gif" alt=""/></a></td>
<td style="text-align:center" nowrap="nowrap">
<span class="version">
{if !empty($pageno) && !empty($maxpageno)}
{if $pageno != 1}<a href="?pageno={$pageno-1}">&#171;</a>{/if}
Page {$pageno} of {$maxpageno}
{if $pageno != $maxpageno}<a href="?pageno={$pageno+1}">&#187;</a>{/if}
&nbsp;
{/if}
{if !empty($totalresults)}<span id="count">{$totalresults}</span> {$lang.records}.{/if}
</span>
</td>
<td align="right" style="text-align:right" nowrap="nowrap">
{if !empty($pdf)}
<a href="{$pdf}export=pdf&ext=.pdf"><img src="images/pdfexport.png" style="float:right;margin-left:3px;"/></a>
{/if}
{if !empty($xls)}
<a href="{$xls}export=xls&ext=.xls"><img src="images/xlsexport.png" style="float:right;margin-left:3px;"/></a>
{/if}
{if !empty($xml)}
<a href="{$xml}export=xml" target="_blank"><img src="images/xmlexport.png" style="float:right;margin-left:3px;"/></a>
{/if}
{if !empty($rss)}
<a href="{$rss}export=rss" target="_blank"><img src="images/rssexport.png" style="float:right;margin-left:3px;"/></a>
{/if}
<a href="https://github.com/andig/videodb.git" class="splitbrain">v.{$version|strip}</a>{if !empty($loggedin)}<span class="version">, {$lang.loggedinas} {$loggedin}</span>{/if}
</td>
</tr>
</table>
</body>
</html>

View File

@@ -0,0 +1,43 @@
{*
This is the header which is displayed on top of every page
$Id: header.tpl,v 2.25 2011/02/11 07:42:10 andig2 Exp $
*}
{include file="xml.tpl"}
<body>
<a name="top"></a>
<div class="tablemenu">
<a href="https://github.com/andig/videodb.git" class="logo">videoDB</a>
<div style="height:7px; font-size:1px;"></div>
{if !empty($header.browse)}<span class="{if $header.active == 'browse'}tabActive{else}tabInactive{/if}"><a href="{$header.browse}{if !empty($browseid)}#{$browseid}{/if}" accesskey="i">{$lang.browse}</a></span>{/if}
{if !empty($header.trace)}<span class="{if $header.active == 'trace'}tabActive{else}tabInactive{/if}"><a href="{$header.trace}">{$lang.imdbbrowser}</a></span>{/if}
{if !empty($header.random)}<span class="{if $header.active == 'random'}tabActive{else}tabInactive{/if}"><a href="{$header.random}">{$lang.random}</a></span>{/if}
{if !empty($header.search)}<span class="{if $header.active == 'search'}tabActive{else}tabInactive{/if}"><a href="{$header.search}">{$lang.search}</a></span>{/if}
{if !empty($header.new)}<span class="{if $header.active == 'new'}tabActive{else}tabInactive{/if}"><a href="{$header.new}" accesskey="n">{$lang.n_e_w}</a></span>{/if}
{if $header.active == 'show'}<span class="tabActive"> {if !empty($header.request_uri)}<a href="{$header.request_uri}">{/if} {$lang.view}</a></span> {/if}
{if $header.active == 'edit'}<span class="tabActive"><a href="{$header.edit}">{$lang.edit}</a></span> {/if}
{if !empty($header.borrow)}<span class="{if $header.active == 'borrow'}tabActive{else}tabInactive{/if}"><a href="{$header.borrow}">{$lang.borrow}</a></span>{/if}
{if !empty($header.stats)}<span class="{if $header.active == 'stats'}tabActive{else}tabInactive{/if}"><a href="{$header.stats}">{$lang.statistics}</a></span>{/if}
{if !empty($header.contrib)}<span class="{if $header.active == 'contrib'}tabActive{else}tabInactive{/if}"><a href="{$header.contrib}">{$lang.contrib}</a></span>{/if}
{if !empty($header.setup)}<span class="{if $header.active == 'setup'}tabActive{else}tabInactive{/if}"><a href="{$header.setup}">{$lang.setup}</a></span>{/if}
{if !empty($header.profile)}<span class="{if $header.active == 'profile'}tabActive{else}tabInactive{/if}"><a href="{$header.profile}">{$lang.profile}</a></span>{/if}
{if !empty($header.help)}<span class="{if $header.active == 'help'}tabActive{else}tabInactive{/if}"><a href="{$header.help}">{$lang.help}</a></span>{/if}
{if !empty($header.login)}<span class="{if $header.active == 'login'}tabActive{else}tabInactive{/if}"><a href="{$header.login}">{if !empty($loggedin)}{$lang.logout}{else}{$lang.login}{/if}</a></span>{/if}
</div>

View File

@@ -0,0 +1,15 @@
{*
The help template
$Id: help.tpl,v 1.2 2005/05/25 21:09:51 andig2 Exp $
*}
<div id="topspacer"></div>
<table width="90%" class="tableborder">
<tr><td>
<span class="helpbrowser">
{$helptext}
</span>
<br/>
</td></tr>
</table>

View File

@@ -0,0 +1,115 @@
{*
Output of search results/browselist
$Id: list.tpl,v 2.35 2013/03/14 17:17:27 andig2 Exp $
*}
{if !empty($listcolumns) && $listcolumns == 1}
{assign var=IMGWIDTH value="35"}
{assign var=IMGHEIGHT value="48"}
{assign var=ROWSPAN value="2"}
{else}
{assign var=IMGWIDTH value="97"}
{assign var=IMGHEIGHT value="144"}
{assign var=ROWSPAN value="3"}
{/if}
<div id="docpart_list_target">
{if !empty($list)}
<table id="listitems" cellpadding=0 cellspacing=0>
{counter assign=count start=0 print=false name=videocount}
{foreach item=video from=$list}
{if $count == 0}
{cycle values="even,odd" assign=CLASS print=false}
<tr class="{$CLASS}">
{/if}
<td {if $video.who}class="lent"{elseif $video.mediatype==$smarty.const.MEDIA_WISHLIST}class="wanted"{/if} width="{math equation="floor(100/x)" x=$listcolumns}%">
{* uncomment this if you want the 'Browse' tab to remember last visited movie
<a name="{$video.id}" />
*}
<table>
<tr>
{if $video.imgurl}<td>
{html_image file=$video.imgurl link="show.php?id="|cat:$video.id align=left max_width=$IMGWIDTH max_height=$IMGHEIGHT class="cover"}
{if $listcolumns < 4}</td>{/if}
{/if}
{if $listcolumns < 4}<td width="100%">{/if}
<a class="list_title" href="show.php?id={$video.id}">{$video.title}{if $video.subtitle} - {$video.subtitle}{/if}</a>{if $listcolumns != 1}<br/>{/if}
{if $video.year || $video.director}
<span class="list_info">[{if $video.year}<a href="search.php?q={$video.year}&fields=year&nowild=1">{$video.year}</a>{if $video.director}; {/if}{/if}{if $video.director}<a href="search.php?q=%22{$video.director}%22&isname=Y">{$video.director}</a>{/if}]</span>
{* uncomment this if you want to have ratings in the 'Browse' tab
{if $video.custom_rating}<br/>{custom_rating rating=$video.custom_rating}{/if}
*}
<br/>
{/if}
<span class="list_plot">
{$video.plot|truncate:250}
<b><a class="list_plot" href="show.php?id={$video.id}">{$lang.more}</a></b>
</span>
</td>
{if $listcolumns < 3}<td align="right" nowrap="nowrap" style="text-align:right">
<span class="list_diskid"><a href="search.php?q={$video.diskid}&fields=diskid&nowild=1">{$video.diskid}</a></span>
<br/>
{* changed to support mutiple languages
{if $video.language}<a href="search.php?q={$video.language|escape:url}&fields=language&nowild=1">
{if $video.flagfile}<img src="{$video.flagfile}" alt="{$video.language}" />{else}{$video.language}{/if}</a>{/if}
*}
{foreach item=itemlang from=$video.language}
{if $itemlang}<a href="search.php?q={$itemlang|escape:url}&fields=language">
{if !empty($video.flagfile[$itemlang])}
<img src="{$video.flagfile[$itemlang]}" alt="{$itemlang}"/>
{else}
{$itemlang}
{/if}</a>
{/if}
{/foreach}
<br/>
{if $video.seen}<span class="list_seen">{$lang.seen}</span><br/>{/if}
{if $listcolumns == 1}</td>
<td class="center" nowrap="nowrap">{/if}
{if $video.editable}
{*
<a href="edit.php?id={$video.id}">{$lang.edit}</a><br/>
<a href="delete.php?id={$video.id}" onclick="return(confirm('{$video.title|escape:javascript|escape}: {$lang.really_del|escape:javascript|escape}?'))">{$lang.delete}</a>
*}
<form action="edit.php" method="get">
<input type="hidden" name="id" value="{$video.id}"/>
<input type="submit" value="{$lang.edit}" class="button"/>
</form>
<form action="delete.php" method="get">
<input type="hidden" name="id" value="{$video.id}"/>
<input type="submit" value="{$lang.delete}" onclick="return(confirm('{$video.title|escape:javascript|escape}: {$lang.really_del|escape:javascript|escape}?'))" class="button"/>
</form>
{/if}
</td>{/if}
</tr>
</table>
</td>
{counter assign=count name=videocount}
{if $count == $listcolumns}
{counter start=0 print=false name=videocount}
</tr>
{/if}
{/foreach}
{if $count != 0}
{section name="columnLoop" start=$count loop=$listcolumns}
<td class="{$CLASS}">&nbsp;</td>
{/section}
</tr>
{/if}
</table>
{/if}
</div>

View File

@@ -0,0 +1,41 @@
{*
Output of login page
*}
<div id="topspacer"></div>
<table class="tableborder" style="background-color:#eeeeee;">
<tr><td class="center">
<br/>
<p>{$lang.enterusername}</p>
<form action="login.php" id="login" method="post">
<input type="hidden" value="{$refer}" name="refer"/>
<table class="tableedit" align="center">
<tr>
<td>{$lang.username}:</td>
<td><input type="textbox" id="username" name="username"/></td>
</tr>
<tr>
<td>{$lang.password}:</td>
<td><input type="password" name="password"/></td>
</tr>
<tr>
<td colspan="2"><input type="checkbox" name="permanent" id="permanent" value="1" /><label for="permanent">{$lang.stayloggedin}</label></td>
</tr>
<tr>
<td colspan="2" class="center">
<input type="submit" value="{$lang.login}" class="button"/>
</td>
</tr>
</table>
</form>
<p>{$error}</p>
</td></tr>
</table>
<script language="JavaScript" type="text/javascript">
document.forms['login'].username.focus();
</script>

View File

@@ -0,0 +1,93 @@
{*
Search engine popup
$Id: lookup.tpl,v 2.35 2009/04/04 16:21:34 andig2 Exp $
*}
{include file="xml.tpl"}
<body>
<script language="JavaScript" type="text/javascript" src="javascript/lookup.js"></script>
<!-- {$smarty.template} -->
<div class="tablemenu">
<div style="height:7px; font-size:1px;"></div>
{foreach key=e item=eng from=$engines}
<span class="{if $engine == $e}tabActive{else}tabInactive{/if}"><a href="{$eng.url}">{$eng.name}</a></span>
{/foreach}
</div>
<table width="100%" cellspacing="0" cellpadding="0">
<tr>
<td>
<form action="lookup.php" id="lookup" name="lookup">
<table width="100%" class="tablefilter" cellspacing="5">
<tr>
<td nowrap="nowrap">
<input type="text" name="find" id="find" value="{$q_find}" size="31" style="width:200px" />
{include file="lookup_engines.tpl"}
<input type="submit" class="button" value="{$lang.l_search}" />
<script language="JavaScript" type="text/javascript">
document.lookup.find.focus();
</script>
</td>
</tr>
</table>
</form>
</td>
</tr>
<tr>
<td>
<br/>
{if $http_error}
<pre>{$http_error}</pre>
{/if}
{if $imdbresults}
<b>{$lang.l_select}</b>
{if $searchtype == 'image'}
{foreach item=match from=$imdbresults}
<div class="thumbnail">
<a href="javascript:void(returnImage('{$match.coverurl|escape:"javascript"}'));" title="Select image and close Window">
<img src="{$match.imgsmall}" align="left" width="60" height="90" /><br />
{$match.title}
</a>
</div>
{/foreach}
{else}
<ul>
{foreach item=match from=$imdbresults}
<li>
<a href="javascript:void(returnData('{$match.id}','{$match.title|escape:"javascript"|escape}','{$match.subtitle|escape:"javascript"|escape}', '{$engine}'));" title="add ID and close Window">{$match.title}{if $match.subtitle} - {$match.subtitle}{/if}</a>
{if $match.details or $match.imgsmall}
<br/>
<font size="-2">
{if $match.imgsmall}<img src="{$match.imgsmall}" align="left" width="25" height="35" />{/if}
{$match.details}
</font>
{/if}
<br clear="all" />
</li>
{/foreach}
</ul>
{/if}
{else}
<div align="center"><b>{$lang.l_nothing}</b></div>
<br />
{/if}
<br clear="all" />
<div align="right">
[ <a href="{$searchurl}" target="_blank">{$lang.l_selfsearch}</a> ]
</div>
</td>
</tr>
</table>
</body>
</html>

View File

@@ -0,0 +1,17 @@
{*
Lookup engine options
$Id: lookup_engines.tpl,v 1.1 2008/02/03 17:59:24 andig2 Exp $
*}
<input type="hidden" name="engine" id="engine" value="{$engine}" />
{if $searchtype}<input type="hidden" name="searchtype" id="searchtype" value="{$searchtype}" />{/if}
{if $engine=="amazona2s" || $engine=="amazonxml"}
{html_options name=catalog values=$catalog output=$catalog selected=$selectedcatalog}
{/if}
{if $engine=="amazonxml"}
{html_options name=area values=$area output=$area selected=$selectedarea}
{/if}
{if $engine=="imdb"}
{html_checkbox name="searchaka" value="1" checked=$searchaka label=$lang.aka}
{/if}

View File

@@ -0,0 +1,215 @@
/**
* $Id: modern.css,v 2.27 2011/02/11 07:42:10 andig2 Exp $
*/
body {
font-family: sans-serif;
/* font-family: Tahoma, Arial, Helvetica, sans-serif; */
font-size:12px;
margin: 0px;
padding: 0px;
}
tr {
vertical-align: top;
}
td {
vertical-align: top; /* this fixes a problem with opera */
text-align: left; /* this fixes a problem with opera */
font-size: 15px;
}
img {
border: 0px;
}
a:link, a:visited, a:active {
text-decoration:none;
color:#000044;
}
a:hover {
text-decoration:underline;
}
#topspacer {
height: 10px;
}
.even {background-color:#fff;}
.odd {background-color:#eee;}
.lent {background-color:#fcc;}
.wanted {background-color:#ff9;}
.filter {font-size:12px}
.list_title,
.list_diskid {font-weight:bold; font-size:15px;}
.list_info {font-style:italic; font-size:15px;}
.list_seen,
.list_plot { font-size: 12px; }
.list_episode { padding: 2px; }
.tableborder {width:100%; background-color: #ffffff; }
.tablefilter, #topspacer {width:100%; background-color:#ccccff; border-bottom: 1px solid #333399; }
.tablefooter {width:100%; background-color:#ccccff; border-top: 1px solid #333399; }
.tablemenu {width:100%; height: 22px; vertical-align: bottom; background-color: #333399;}
.show_title {font-size:20px; font-weight:bolder;}
.show_subtitle,
.show_id {font-size:18px; font-weight:bolder;}
.show_info {
font-size: 15px;
background-color:#f0f0f0;
border-bottom: 1px solid #bbbbbb;
}
.show_plot {
background-color:#f6f6f6;
border-bottom: 1px solid #bbbbbb;
}
.notavail {color:#ff0000; font-weight:bold}
.logo, a.logo, a.logo:hover, a.logo:visited {
font-size: 18px;
font-weight: bolder;
font-style: italic;
text-decoration:none;
color: #ffffff;
float: right;
padding-right: 4px; /* right margin on logo */
}
.splitbrain,
.version {
font-size: 10px;
}
.center {
text-align: center
}
.tabActive A:visited,
.tabActive A:link,
.tabActive A:hover {
font-size: 12px;
font-weight:bold;
height:22px;
border-color:#ffffff #333399 #ffffff #ffffff;
border-style: groove;
border-width: 2px 1px 0px 2px;
padding: 2px 6px 2px 6px;
background-color:#ccccff;
color:#333399;
text-decoration:none;
text-transform: capitalize;
}
.tabActive A:hover {
background-color:#ccccff;
color:#6666cc;
}
.tabInactive A,
.tabInactive A:visited,
.tabInactive A:link,
.tabInactive A:hover {
font-size: 12px;
font-weight: bold;
height: 18px;
border-color: #ccccff #333399 #ccccff #ccccff;
border-style: groove;
border-width: 2px 1px 0px 2px ;
margin: 4px 0px 0px 0px;
padding: 0px 6px 0px 6px;
background-color:#6666cc;
color:#ffffff;
text-decoration: none;
text-transform: capitalize;
}
.tabInactive A:hover {
background-color:#ccccff;
color:#6666cc;
}
.filterlink A,
.filterlink A:visited,
.filterlink A:link,
.filterlink A:hover,
.filterlink {
font-weight:bold;
color:#333399;
text-transform: capitalize;
}
form {
margin: 0px;
}
input.button, inputbutton {
text-transform: capitalize;
}
.caption,
.editcaption {
text-transform: capitalize;
}
.caption {
font-weight: bold;
}
.cover
{
margin: 0px 4px 1px 0px;
}
.thumb
{
float: left;
margin: 0px 2px 1px 0px;
}
/* setup screenshot thumbnails */
.setup-thumb {
float: left;
width: 105px;
text-align: center;
font-size: 12px;
border: 1px solid #999;
margin: 0 15px 15px 0;
padding: 5px;
}
.setup-thumb a:hover {
text-decoration: none;
}
/* lookup.tpl thumbnail formatting */
.thumbnail
{
float: left;
margin: 5px;
}
#topspacer {
height: 10px;
}
/*
* AJAX styles
*/
.hidden {
display: none;
}
/* special formatings for stuff in the helpbrowser */
.helpbrowser code {font-family:monospace; color:#004444;}
.helpbrowser td {background-color:#EEEEEE;}
.helpbrowser th {background-color:#EEEEEE;}
.helpbrowser h1 {text-align:center; font-size:20pt; font-weight:bolder;}
.helpbrowser h2 {margin-left:10px; font-size:16pt; font-weight:bolder;}
.helpbrowser h3 {margin-left:30px; font-size:12pt; 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:#004444;}
.helpbrowser ul {margin-left:50px; width:90%}
.helpbrowser dl {margin-left:50px; width:90%}
.helpbrowser dd {margin-bottom:10px;}
.helpbrowser table {margin-left:50px; width:90%}

View File

@@ -0,0 +1,52 @@
{*
Template to display config options used by setup.tpl and profile.tpl
$Id: options.tpl,v 1.6 2006/11/11 15:53:44 andig2 Exp $
*}
{foreach from=$setup item=option}
<tr class="{cycle values="even,odd"}">
{if !empty($option.group)}
<td class="center" colspan="2">
<h3><a name="{$option.group}"></a>{$lang[$option.group]}</h3>
</td>
{else}
<td class="center" nowrap="nowrap">
<b>{$option.hl}</b>
<br/>
{if $option.type == 'text'}
<input type="text" size="20" name="{$option.name}" id="{$option.name}" value="{$option.set|escape}" style="text-align:center"/>
{/if}
{if $option.type == 'boolean'}
{html_checkbox name=$option.name id=$option.name value=1 checked=$option.set}
{/if}
{if $option.type == 'dropdown'}
{html_options name=$option.name options=$option.data selected=$option.set}
{/if}
{if $option.type == 'multi'}
<select name="{$option.name}[]" size="5" multiple="multiple">
<option value=""></option>
{html_options options=$option.data selected=$option.set}
</select>
{/if}
{if $option.type == 'special'}
{$option.data}
{/if}
{if $option.type == 'link'}
<a href="{$option.data}">{$option.hl}</a>
{/if}
</td>
<td>
{$option.help}
{if !empty($option.thumbs)}
{include file="options_thumbs.tpl"}
{/if} </td>
{/if}
</tr>
{/foreach}

View File

@@ -0,0 +1,13 @@
{*
Template to display thumbnails for available templates
$Id: options_thumbs.tpl,v 2.2 2006/11/11 16:18:13 andig2 Exp $
*}
<!-- {$smarty.template} -->
{foreach item=thumb from=$option.thumbs}
<div class="setup-thumb">
<a href="{$smarty.server.PHP_SELF}?template={$thumb.name}&quicksave=1"><img src="{$thumb.img}"/><br/>
{$thumb.name}</a>
</div>
{/foreach}

View File

@@ -0,0 +1,27 @@
{*
This is the page navigation which is displayed on bottom of new filter
$Id: page.tpl,v 1.1 2003/10/13 16:57:00 andig2 Exp $
*}
<div class="page">
{foreach from=$page item=curPage key=page name=pages}
{if $smarty.foreach.pages.first and $lastPage}
<a href="index.php?filter=new&OK=OK&page={$lastPage}">
&lt;&lt;
</a>
{/if}
{if $curPage == 1}
<span class="curPage">[ {$page} ]</span>
{else}
<a href="index.php?filter=new&OK=OK&page={$page}">
{$page}
</a>
{/if}
{if $smarty.foreach.pages.last and $nextPage}
<a href="index.php?filter={$filter}&OK=OK&page={$nextPage}">
&gt;&gt;
</a>
{/if}
{/foreach}
</div>

View File

@@ -0,0 +1,64 @@
{*
Template for the permission management screen
$Id: permissions.tpl,v 2.3 2005/05/27 13:53:43 chinamann Exp $
*}
<div id="content">
{if $message}
<table width="100%" cellpadding="0" cellspacing="0">
<tr><td>
<table width="100%">
<tr>
<td class="center">
<br/>{$message}<br/>
</td>
</tr>
</table>
</td></tr>
</table>
{else}
{include file="topspacer.tpl"}
{/if}
<form action="permissions.php" method="post">
<table width="100%">
<tr><td align="center">
<h3>{$lang.permforuser} {html_options name=from_uid options=$owners selected=$from_uid onchange="submit()"}:</h3>
</td></tr>
<tr><td class="center">
<table width="100%">
<tr class="{cycle values="even,odd"}">
<th>{$lang.username}</th>
<th>{$lang.read}</th>
<th>{$lang.write}</th>
</tr>
{foreach item=perm from=$permlist}
<input type="hidden" name="newflag_{$perm.to_uid}" id="newflag_{$perm.to_uid}" value="{$perm.newentry}" />
<tr class="{cycle values="even,odd"}">
<td class="center">
{$perm.to_name}
</td>
<td class="center">
<input type="checkbox" name="readflag_{$perm.to_uid}" id="readflag_{$perm.to_uid}" value="1" {if $perm.read}checked="checked"{/if}/>
</td>
<td class="center">
<input type="checkbox" name="writeflag_{$perm.to_uid}" id="writeflag_{$perm.to_uid}" value="1" {if $perm.write}checked="checked"{/if}/>
</td>
</tr>
{/foreach}
<tr>
<td class="center" colspan="4"><br/>
<input type="submit" name="save" value="{$lang.save}" class="button" accesskey="s" />
<input type="button" value="{$lang.back}" class="button" onclick="window.location.href='users.php';" accesskey="c" />
</td>
</tr>
</table>
</td>
</tr>
</table>
</form>
</div>

View File

@@ -0,0 +1,26 @@
{*
The user profile template
$Id: profile.tpl,v 1.4 2005/10/13 19:30:55 andig2 Exp $
*}
<div id="topspacer"></div>
<table class="tablelist" cellspacing="0" cellpadding="0">
<tr><td>
<form method="post" action="profile.php">
<input type="hidden" name="save" value="1">
<table width="90%" class="tableborder">
{include file="options.tpl"}
</table>
<br/>
<div align="center">
<input type="submit" value="{$lang.save}" class="button" accesskey="s" />
</div>
</form>
</td></tr>
</table>
<br/>

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

@@ -0,0 +1,64 @@
{*
Template for the search interface
$Id: search.tpl,v 2.27 2005/10/13 19:30:55 andig2 Exp $
*}
<script language="JavaScript" type="text/javascript" src="javascript/search.js"></script>
<div>
{include file="searchengines.tpl"}
<form action="search.php" id="search" name="search" method="get">
<table width="100%" class="tablefilter" cellspacing="5">
<tr>
<td width="40%">
<table width="100%" cellpadding="5" cellspacing="0">
<tr>
<td width="20%">
<span class="filterlink">{$lang.keywords}:</span>
<br/>
<input type="text" name="q" id="q" value='{$q_q}' size="45" maxlength="300"/>
<br/>
{include file="searchradios.tpl"}
<input type="button" value="{$lang.l_search}" onClick="submitSearch(this)" class="button" />
</td>
</tr>
<tr>
<td>{$lang.keywords_desc}</td>
</tr>
</table>
</td>
<td nowrap="nowrap">
<span class="filterlink">{$lang.fieldselect}:</span><br />
<select name="fields[]" size="8" multiple="multiple">
{html_options options=$search_fields selected=$selected_fields}
</select><br />
<span class="filterlink" style="font-size:10px; font-weight: bold;"><a href="javascript:selectAllFields()">{$lang.selectall}</a></span>
</td>
<td width="60%" rowspan="2">
{if !empty($owners)}
<span class="filterlink">{$lang.owner}:</span>
{html_options name=owner options=$owners selected=$owner}<br/>
{/if}
<span class="filterlink">{$lang.genre_desc}:</span>
{$genreselect}
</td>
{if !empty($imgurl)}
<td>
{*
<a href='http://uk.imdb.com/Name?{$q_q|replace:"&quot;|\"":""|escape:url}'>{html_image file=$imgurl}</a>
*}
<a href='http://uk.imdb.com/Name?{$q|replace:"&quot;|\"":""|escape:url}'>{html_image file=$imgurl}</a>
<!--<img align=left src="{$imgurl}" width="97" height="144"/>-->
</td>
{/if}
</tr>
</table>
</form>
</div>
<script language="JavaScript" type="text/javascript">
selectField(document.search.q);
</script>

View File

@@ -0,0 +1,38 @@
{*
Hidden search engine forms for multi-engine support
$Id: searchengines.tpl,v 1.7 2011/06/19 11:05:31 andig2 Exp $
*}
{assign var="link" value="https://www.imdb.com/find"}
<form action="trace.php" id="searchIMDB" name="searchIMDB" method="get" {if !$config.imdbBrowser}target="_blank"{/if}>
{if $config.imdbBrowser}<input type="hidden" name="videodburl" value="{$link}"/>{/if}
<input type="hidden" name="q" id="forIMDB" value=""/>
<input type="hidden" name="s" value="all" />
</form>
{if !empty($engine.tvcom)}
{assign var="link" value="http://www.tv.com/search.php"}
<form action="trace.php" id="searchTvcom" name="searchTvcom" method="get" {if !$config.imdbBrowser}target="_blank"{/if}>
{if $config.imdbBrowser}<input type="hidden" name="videodburl" value="{$link}"/>{/if}
<input type="hidden" name="qs" id="forTvcom" value=""/>
<input type="hidden" name="stype" value="all"/>
</form>
{/if}
{if !empty($engine.filmweb)}
{assign var="link" value="http://www.filmweb.pl/Find"}
<form action="trace.php" id="searchFilmweb" name="searchFilmweb" method="get" {if !$config.imdbBrowser}target="_blank"{/if}>
{if $config.imdbBrowser}<input type="hidden" name="videodburl" value="{$link}"/>{/if}
<input type="hidden" name="query" id="forFilmweb" value=""/>
<input type="hidden" name="category" value="all" />
</form>
{/if}
{if !empty($engine.amazon) || !empty($engine.amazoncom) || !empty($engine.amazonxml)}
{assign var="link" value="http://www.amazon.com/exec/obidos/search-handle-form/ref=dp_sr_00/102-0276103-8470541"}
<form action="trace.php" id="searchAmazon" name="searchAmazon" method="post" {if !$config.imdbBrowser}target="_blank"{/if}>
{if $config.imdbBrowser}<input type="hidden" name="videodburl" value="{$link}"/>{/if}
<input type="hidden" name="field-keywords" id="forAmazon" value=""/>
<input type="hidden" name="url" value="index=blended" />
</form>
{/if}

View File

@@ -0,0 +1,13 @@
{*
Radio buttons for search engines for multi-engine support
$Id: searchradios.tpl,v 2.3 2006/11/28 23:34:04 acidity Exp $
*}
<label for="engine0"><input type="radio" name="engine" id="engine0" value="videodb" checked="checked" />videoDB</label>
{if !empty($engine.tvcom)}
<label for="engine1"><input type="radio" name="engine" id="engine1" value="tvcom" />TV.com</label>{/if}
{if !empty($engine.amazon) || !empty($engine.amazoncom) || !empty($engine.amazonxml)}
<label for="engine2"><input type="radio" name="engine" id="engine2" value="amazon" />Amazon</label>{/if}
<label for="engine3"><input type="radio" name="engine" id="engine3" value="imdb" />IMDB</label>
{if !empty($engine.filmweb)}
<label for="engine4"><input type="radio" name="engine" id="engine4" value="filmweb" />FilmWeb</label>{/if}

View File

@@ -0,0 +1,38 @@
{*
The configuration template
$Id: setup.tpl,v 2.18 2010/02/14 12:25:12 andig2 Exp $
*}
<table width="100%" cellspacing="0" cellpadding="0">
<tr><td>
<table width="100%" class="tablefilter" cellspacing="5">
<tr>
<td align="right">
<form action="setup.php" style="display:inline">
<input type="hidden" name="cacheempty" value="1"/>
<input type="submit" value="{$lang.cacheempty}" onclick="return(confirm('{$lang.really_del|escape:javascript|escape}?'))" class="button"/>
</form>
<form action="users.php" style="display:inline">
<input type="submit" value="{$lang.help_usermanagern}" class="button"/>
</form>
</td>
</tr>
</table>
<form method="post" action="setup.php">
<input type="hidden" name="save" value="1"/>
<table width="90%" class="tableborder">
{include file="options.tpl"}
</table>
<br/>
<div align="center">
<input type="submit" value="{$lang.save}" class="button" accesskey="s" />
</div>
</form>
</td></tr>
</table>
<br/>

View File

@@ -0,0 +1,282 @@
{*
Template for the video detailview
$Id: show.tpl,v 2.60 2013/03/14 17:17:27 andig2 Exp $
*}
<script language="JavaScript" type="text/javascript" src="javascript/show.js"></script>
<!-- {$smarty.template} -->
{if $video.editable || $video.copyable}
<table width="100%" class="tablefilter" cellspacing="5">
<tr>
<td width="100%">&nbsp;</td>
{if $video.copyable}
<td>
<form action="edit.php" name="copyform">
<input type="hidden" name="copyid" value="{$video.id}"/>
<input type="hidden" name="copy" value="1" />
<input type="hidden" name="save" value="1" />
<input type="submit" value="{$lang.copy}" class="button"/>
</form>
</td>
{/if}
{if $video.editable}
<td>
<form action="edit.php" name="editform">
<input type="hidden" name="id" value="{$video.id}"/>
<input type="submit" value="{$lang.edit}" class="button"/>
</form>
</td><td>
<form action="borrow.php" name="borrowform">
<input type="hidden" name="diskid" value="{$video.diskid}"/>
<input type="submit" value="{$lang.borrow}" class="button"/>
</form>
</td><td>
<form action="delete.php" name="deleteform">
<input type="hidden" name="id" value="{$video.id}"/>
<input type="submit" value="{$lang.delete}" onclick="return(confirm('{$video.title|escape:javascript|escape}: {$lang.really_del|escape:javascript|escape}?'))" class="button"/>
</form>
</td>
{/if}
</tr>
</table>
{else}
<div id="topspacer"></div>
{/if}
<!-- content begin -->
<table width="100%" class="show_info" cellspacing="5">
<tr>
<td class="center" rowspan="2" width="200">
{if $link}
{if $config.imdbBrowser}{assign var="link" value=$link|escape:url}{assign var="link" value="trace.php?videodburl=$link"}{/if}
{/if}
{* <a href="{$link}" title="{$lang.visit}">
<img src="{$video.imgurl}" width="97" height="144" alt="" />{if $video.imdbID}</a>{/if} *}
{html_image file=$video.imgurl link=$link title=$lang.visit max_width="97" max_height="144"}
</td>
<td colspan="2">
<span class="show_title">{$video.title}</span>
{if $video.subtitle}
<br/>
<span class="show_subtitle">{$video.subtitle}</span>
{/if}
</td>
<td class="center">
{if $video.diskid}
<span class="show_id"><a href="search.php?q={$video.diskid}&fields=diskid&nowild=1">{$video.diskid}</a></span>
{if !empty($video.who)}
<br/>
{$lang.notavail} {$video.who}
{/if}
{/if}
</td>
</tr>
<tr>
<td>
<table>
{if $video.year}
<tr><td><b>{$lang.year}:</b></td><td><a href="search.php?q={$video.year}&fields=year&nowild=1">{$video.year}</a></td></tr>
{/if}
{if $video.director}
<tr><td><b>{$lang.director}:</b></td><td><a href="search.php?q=%22{$video.director|escape:url}%22&isname=Y">{$video.director}</a></td></tr>
{/if}
{if count($video.country)}
<tr><td><b>{$lang.country}:</b></td>
<td>
{*
<td><a href="search.php?q=%22{$video.country|escape:url}%22&fields=country&nowild=1">{$video.country}</a>
*}
{foreach item=country from=$video.country}
<a href="search.php?q=%22{$country|escape:url}%22&fields=country">{$country}</a>
{/foreach}
</td></tr>
{/if}
<tr>
<td><b>{$lang.seen}:</b></td>
<td>
<form action="show.php" name="show" id="show">
<input type="hidden" name="id" value="{$video.id}" />
<input type="hidden" name="save" value="1" />
{html_checkbox name="seen" value=1 checked=$video.seen onclick="submit()"}
{if $video.seen}<label for="seen">{$lang.yes}</label>{/if}
</form>
</td>
</tr>
<tr>
<td><b>{$lang.rating}:</b></td>
<td>{html_rating value=$video.rating}</td>
</tr>
{if !empty($engines.trailer)}
<tr>
<td colspan="2">
<a href="#" onclick='showTrailer("{$video.title|escape:javascript|escape:html}"); return false;'>{$lang.trailer_show}</a>
</td>
</tr>
{/if}
</table>
</td>
<td>
<table>
{if $video.runtime > 0}
<tr><td><b>{$lang.length}:</b></td><td><b>{math equation="floor(x/60)" x=$video.runtime}</b> hr(s) <b>{math equation="x - floor(x/60) * 60" x=$video.runtime}</b> min ({$video.runtime} min)</td></tr>
{/if}
{if $video.language}
<tr>
<td><b>{$lang.language}:</b></td>
<td>
{*
<a href="search.php?q=%22{$video.language|escape:url}%22&fields=language&nowild=1">{$video.language}</a>
*}
{foreach item=language from=$video.language}
<a href="search.php?q=%22{$language|escape:url}%22&fields=language">{$language}</a>
{/foreach}
</td>
</tr>
{/if}
{if $video.mediatype}
<tr><td><b>{$lang.mediatype}:</b></td><td><a href="search.php?q=%22{$video.mediatype|escape:url}%22&fields=mediatype&nowild=1">{$video.mediatype}</a></td></tr>
{/if}
{if !empty($video.owner)}
<tr>
<td><b>{$lang.owner}:</b></td>
<td><a href="search.php?q={$video.owner|escape:url}&fields=owner&nowild=1">{$video.owner}</a>
{if $loggedin and $video.email and $video.owner != $loggedin and $video.who == '' and $video.diskid}
[ <a href="javascript:void(open('borrowask.php?id={$video.id|escape:url}&diskid={$video.diskid|escape:url}','borrowask','width=210,height=210,menubar=no,resizable=yes,scrollbars=yes,status=yes,toolbar=no'))">{$lang.borrowask}</a> ]
{/if}
</td>
</tr>
{/if}
{if !empty($video.custom1name) && !empty($video.custom1out)}
<tr>
<td><b>{$video.custom1name}:</b></td>
<td>{$video.custom1out}</td>
</tr>
{/if}
{if !empty($video.custom2name) && !empty($video.custom2out)}
<tr>
<td><b>{$video.custom2name}:</b></td>
<td>{$video.custom2out}</td>
</tr>
{/if}
{if !empty($video.custom3name) && !empty($video.custom3out)}
<tr>
<td><b>{$video.custom3name}:</b></td>
<td>{$video.custom3out}</td>
</tr>
{/if}
{if !empty($video.custom4name) && !empty($video.custom4out)}
<tr>
<td><b>{$video.custom4name}:</b></td>
<td>{$video.custom4out}</td>
</tr>
{/if}
</table>
</td>
<td>
{if $genres}
<b>{$lang.genres}:</b><br/>
{foreach item=genre from=$genres}
<a href="search.php?q=&genres[]={$genre.id}">{$genre.name}</a><br/>
{/foreach}
{/if}
</td>
</tr>
</table>
{if $video.plot}
<table width="100%" class="show_plot">
<tr>
<td colspan="2" style="text-align:justify">
<b>{$lang.plot}:</b><br/>{$video.plot}<br/>
</td>
</tr>
</table>
{/if}
{if !empty($video.episodes)}{include file="episodes.tpl"}{/if}
<table width="100%" class="show_info">
{if $video.filename}
<tr>
<td>
<table>
{if $video.filename}
<tr><td><b>{$lang.filename}:</b></td><td>{$video.filename}</td></tr>
{/if}
{if $video.filesize > 0}
<tr><td><b>{$lang.filesize}:</b></td><td>{$video.filesize} mb</td></tr>
{/if}
{if $video.filedate != "0000-00-00 00:00:00"}
<tr><td><b>{$lang.filedate}:</b></td><td>{$video.filedate}</td></tr>
{/if}
{if $video.audio_codec}
<tr><td><b>{$lang.audiocodec}:</b></td><td>{$video.audio_codec}</td></tr>
{/if}
{if $video.video_codec}
<tr><td><b>{$lang.videocodec}:</b></td><td>{$video.video_codec}</td></tr>
{/if}
{if $video.video_height > 0 || $video.video_width > 0}
<tr><td><b>{$lang.dimension}:</b></td><td>{$video.video_width}x{$video.video_height}<br /><br /></td></tr>
{/if}
</table>
</td>
</tr>
{/if}
{if $video.comment}
<tr>
<td colspan="2" style="text-align:justify">
<b>{$lang.comment}:</b><br/>{$video.comment}<br/>
</td>
</tr>
{/if}
</table>
{if $video.actors}
<table width="100%">
<tr>
<td>
<b>{$lang.cast}:
{if $cast_toggle}
{if $show_cast}
<a href="show.php?id={$video.id}" class="button submit">{$lang.hidecast}</a>
{else}
<a href="show.php?id={$video.id}&amp;show_cast=1" class="button submit">{$lang.showcast}</a>
{/if}
{/if}
</b>
{if $show_cast}
<table width="100%">
{counter start=0 print=false name=castcount assign=count}}
{foreach item=actor from=$video.cast}
{if $count == 0}
<tr>
{/if}
<td width="{math equation="floor(100/x)" x=$config.castcolumns}%">
{if $actor.imgurl}
{assign var="link" value=$actor.imdburl}
<a href="{if $config.imdbBrowser}{assign var="link" value=$link|escape:url}trace.php?videodburl={/if}{$link}">{html_image file=$actor.imgurl max_width=45 max_height=60 class=thumb}{*<img src="{$actor.imgurl}" width="38" height="52" align="left">*}</a>
{/if}
<a href="search.php?q=%22{$actor.name|escape:url}%22&isname=Y">{$actor.name}</a><br/>
{foreach item=role from=$actor.roles}
{$role}<br/>
{/foreach}
</td>
{counter assign=count name=castcount}
{if $count == $config.castcolumns}
{counter start=0 print=false name=castcount}
</tr>
{/if}
{/foreach}
{if $count != 0}
{section name="columnLoop" start=$count loop=$config.castcolumns}
<td>&nbsp;</td>
{/section}
</tr>
{/if}
</table>
{/if}
</td>
</tr>
</table>
{/if}
<!-- content end -->

View File

@@ -0,0 +1,121 @@
{*
Template for the statistics page
$Id: stats.tpl,v 2.19 2008/11/13 17:56:05 andig2 Exp $
*}
<div id="topspacer"></div>
<table width="90%" class="tableborder">
<tr>
<td align="center">
<table>
{if !empty($owners)}
<tr>
<td><span class="caption">{$lang.owner}:</span></td>
<td><form action="stats.php">{html_options name=owner options=$owners selected=$owner onchange="submit()"}</form></td>
</tr>
{/if}
<tr>
<td><span class="caption">{$lang.totalfiles}:</span></td>
<td>{$stats.count_all}</td>
</tr>
<tr>
<td><span class="caption">{$lang.tv_episodes}:</span></td>
<td><a href="search.php?q=1&fields=istv">{$stats.count_tv}</a></td>
</tr>
<tr>
<td><span class="caption">{$lang.numberdisks}:</span></td>
<td>{$stats.count_disk}</td>
</tr>
<tr>
<td><span class="caption">{$lang.videobygen}:</span><br/>{$lang.multiple}</td>
<td>
<table cellspacing="0">
{foreach item=row from=$stats.count_genre}
<tr><td><a href="search.php?q=&genres[]={$row.id}">{$row.name}</a>:</td><td>{$row.count}</td></tr>
{/foreach}
</table>
</td>
</tr>
<tr>
<td><span class="caption">{$lang.year}:</span></td>
<td>
<table cellpadding="2">
<tr>
<td valign="bottom" align="left" style="text-align:left"><small>{$stats.first_year|spacify:"<br/>"}</small></td>
<td colspan="2" valign="bottom" align="left" class="odd">
{foreach key=year item=count from=$stats.count_year}<a href="search.php?q={$year}&fields=year&nowild=1"><img src="images/bar.gif" width="7" height="{if $count==0}0{else}{math equation="round(80/y*x)" x=$count y=$stats.max_count}{/if}" title="{$year}: {$count}" alt="{$year}: {$count}" /></a>{/foreach}
</td>
<td valign="bottom" align="right" style="text-align:right"><small>{$stats.last_year|spacify:"<br/>"}</small></td>
</tr>
</table>
</td>
</tr>
</table>
</td>
<td align="center">
<table>
<tr>
<td><span class="caption">{$lang.averagefilesize}:</span></td>
<td>{$stats.avg_size} mb</td>
</tr>
<tr>
<td><span class="caption">{$lang.totalsize}:</span></td>
<td>{$stats.sum_size} gb</td>
</tr>
<tr>
<td><span class="caption">{$lang.averageruntime}:</span></td>
<td>{$stats.avg_time} min</td>
</tr>
<tr>
<td><span class="caption">{$lang.totalruntime}:</span></td>
<td>{$stats.sum_time} h</td>
</tr>
<tr>
<td><span class="caption">{$lang.totalseen}:</span></td>
<td>{$stats.seen_time} h</td>
</tr>
<tr>
<td><span class="caption">{$lang.languages}:</span><br/></td>
<td>
<table cellspacing="0">
{foreach item=row from=$stats.count_lang}
{if $row.language}<tr><td><a href="search.php?q={$row.language|escape:url}&fields=language">{$row.language}</a>:</td><td>{$row.count}</td></tr>{/if}
{/foreach}
</table>
</td>
</tr>
<tr>
<td><span class="caption">{$lang.videobymedia}:</span></td>
<td>
<table cellspacing="0">
{foreach item=row from=$stats.count_media}
<tr><td><a href="search.php?q={$row.name|escape:url}&fields=mediatype&nowild=1">{$row.name}</a>:</td><td>{$row.count}</td></tr>
{/foreach}
</table>
</td>
</tr>
<tr>
<td><span class="caption">{$lang.videobyvcodec}:</span><br/></td>
<td>
<table cellspacing="0">
{foreach item=row from=$stats.count_vcodec}
{if $row.video_codec}<tr><td><a href="search.php?q={$row.video_codec|escape:url}&fields=video_codec&nowild=1">{$row.video_codec}</a>:</td><td>{$row.count}</td></tr>{/if}
{/foreach}
</table>
</td>
</tr>
<tr>
<td><span class="caption">{$lang.videobyacodec}:</span><br/></td>
<td>
<table cellspacing="0">
{foreach item=row from=$stats.count_acodec}
{if $row.audio_codec}<tr><td><a href="search.php?q={$row.audio_codec|escape:url}&fields=audio_codec&nowild=1">{$row.audio_codec}</a>:</td><td>{$row.count}</td></tr>{/if}
{/foreach}
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>

View File

@@ -0,0 +1,25 @@
{*
Template for IMDB Online browsing
$Id: trace.tpl,v 2.11 2005/10/13 19:30:55 andig2 Exp $
*}
<table width="100%" cellspacing="0" cellpadding="0">
<tr><td>
<table width="100%" class="tablefilter" cellspacing="5">
<tr><td width="100%">
<span class="filterlink">URL: </span><a href="{$url}" target="_blank">{$url}</a>
</td>
<td align="right">
<nobr>{if $fetchtime}<span class="filterlink">{$lang.fetchtime}: </span>{$fetchtime}s{else}&nbsp;{/if}{if !empty($md5)} {$md5}{/if}</nobr>
</td>
<td align="right">
<form action="trace.php" method="get">
<input type="hidden" name="videodburl" value="{$url}"/>
<input type="hidden" name="videodbreload" value="Y"/>
<input type="submit" value="Reload" class="button"/>
</form>
</td></tr>
</table>
</td></tr>
</table>
{$page}

View File

@@ -0,0 +1,38 @@
{*
Trailer popup
$Id: trailer.tpl,v 1.5 2012/08/10 16:07:30 andig2 Exp $
*}
{include file="xml.tpl"}
<body>
<script language="JavaScript" type="text/javascript" src="javascript/lookup.js"></script>
<div class="tablemenu">
<div style="height:7px; font-size:1px;"></div>
<span class="tabActive"><a href="#">YouTube Trailers</a></span>
</div>
<div id="topspacer"></div>
{if $trailer}
<table width="100%" cellspacing="0" cellpadding="0">
{assign var="id" value="1"}
{foreach item=match from=$trailer}
<tr>
<td>
<iframe id="ytplayer{$id++}" type="text/html" width="425" height="350"
src="http://www.youtube.com/embed/{$match.id}?autoplay=0"
frameborder="0"/>
</td>
</tr>
{/foreach}
</table>
{/if}
</body>
</html>

View File

@@ -0,0 +1,118 @@
{*
Template for the user management screen
$Id: users.tpl,v 1.20 2013/03/15 16:42:46 andig2 Exp $
*}
{if $message}
<table width="100%" cellpadding="0" cellspacing="0">
<tr><td>
<table width="100%" class="tablefilter">
<tr>
<td class="center">
<br/>{$message}<br/><br/>
</td>
</tr>
</table>
</td></tr>
</table>
{else}
<div id="topspacer"></div>
{/if}
<table width="90%" class="tableborder">
<tr>
<td class="center" colspan="5">
<h3>{$lang.existingusers}</h3>
</td>
</tr>
<tr class="{cycle values="even,odd"}">
<th>{$lang.username}</th>
<th>{$lang.permissions}</th>
<th>{$lang.email}</th>
<th>{$lang.password}</th>
<th colspan="3">{$lang.action}</th>
</tr>
{foreach item=user from=$userlist}
<tr class="{cycle values="even,odd"}">
<form action="users.php" method="post">
<input type="hidden" name="id" value="{$user.id}" />
<td class="center">
<input type="text" name="name" value="{$user.name}" />
</td>
<td class="center">
{html_checkbox style="vertical-align:middle;" name="readflag" value="1" id="readflag"|cat:$user.name checked=$user.read label=$lang.perm_readall}&nbsp;&nbsp;
{html_checkbox style="vertical-align:middle;" name="writeflag" value="1" id="writeflag"|cat:$user.name checked=$user.write label=$lang.perm_writeall}&nbsp;&nbsp;
{html_checkbox style="vertical-align:middle;" name="adultflag" value="1" id="adultflag"|cat:$user.name checked=$user.adult label=$lang.perm_adult}&nbsp;&nbsp;
{html_checkbox style="vertical-align:middle;" name="adminflag" value="1" id="adminflag"|cat:$user.name checked=$user.admin label=$lang.perm_admin}
</td>
<td class="center">
{if $user.guest}
<input type="hidden" name="email" value="{$user.email|escape}" />
{else}
<input type="text" name="email" value="{$user.email|escape}" />
{/if}
</td>
<td class="center">
{if $user.guest}
<input type="hidden" name="password" />
{else}
<input type="text" name="password" />
{/if}
</td>
<td class="center">
<input type="submit" value="{$lang.update}" class="button" />
</td>
</form>
<td class="center">
<form action="users.php" method="post">
<input type="hidden" name="del" value="{$user.id}" />
{if !$user.guest}
<input type="submit" value="{$lang.delete}" onClick="return confirm('{$lang.really_del|escape:javascript|escape}?')" class="button"/>
{/if}
</form>
</td>
<td class="center">
<form action="permissions.php" method="post">
<input type="hidden" name="from_uid" value="{$user.id}" />
<input type="submit" value="{$lang.perm}" class="button"/>
</form>
</td>
</form>
</tr>
{/foreach}
<tr>
<td class="center" colspan="5">
<br/>
<h3>{$lang.createuser}</h3>
</td>
</tr>
<tr class="odd">
<form action="users.php" method="post">
<input type="hidden" name="newuser" value="1" />
<td class="center">
<input type="text" name="name" />
</td>
<td class="center">
{html_checkbox style="vertical-align:middle;" name="readflag" value="1" id="readflagNEWUSER" label=$lang.perm_readall}&nbsp;&nbsp;
{html_checkbox style="vertical-align:middle;" name="writeflag" value="1" id="writeflagNEWUSER" label=$lang.perm_writeall}&nbsp;&nbsp;
{html_checkbox style="vertical-align:middle;" name="adultflag" value="1" id="adultflagNEWUSER" label=$lang.perm_adult}&nbsp;&nbsp;
{html_checkbox style="vertical-align:middle;" name="adminflag" value="1" id="adminflagNEWUSER" label=$lang.perm_admin}
</td>
<td class="center">
<input type="text" name="email" />
</td>
<td class="center">
<input type="text" name="password"/>
</td>
<td class="center" colspan="3">
<input type="submit" value="{$lang.create}" class="button" accesskey="s"/>
</td>
</form>
</tr>
</table>

View File

@@ -0,0 +1,16 @@
{*
commented out to avoid IE switching to quirksmode, see http://www.quirksmode.org/css/quirksmode
{if !$DEBUG}<?xml version="1.0" encoding="{$lang.encoding}"?>{/if}
*}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{$langcode}" lang="{$langcode}" dir="ltr">
<head>
<title>VideoDB{if $title} - {$title}{/if}</title>
<meta http-equiv="Content-Type" content="text/html; charset={$lang.encoding}" />
{if !empty($trace_meta)} {$trace_meta} {/if}
{if !empty($delete_meta)} {$delete_meta} {/if}
<meta name="description" content="VideoDB" />
<link rel="stylesheet" href="{$style}" type="text/css" />
{if !empty($rss)}<link rel="alternate" type="application/rss+xml" title="VideoDB RSS" href="index.php?export=rss" />
{/if}<link rel="shortcut icon" href="images/icons/1-favicon.ico" type="image/ico" />
</head>

View File

@@ -0,0 +1,77 @@
{*
Template for the edit interface
$Id: xmlimport.tpl,v 2.5 2007/09/01 14:09:06 andig2 Exp $
*}
<div id="topspacer"></div>
<table class="tableborder" style="background-color:#eeeeee;">
<tr><td>
<div class="center">
{if $xmlerror}
<br/><pre>{$xmlerror}</pre>
{/if}
<form action="edit.php?import=xml" id="edi" name="edi" method="post" enctype="multipart/form-data">
<input type="hidden" name="xml" id="xml" value="import" />
<table class="tableedit">
<tr>
<td>XML file:</td>
<td><input type="file" name="xmlfile" id="xmlfile" size="50" value="" /></td>
</tr>
<tr>
<td>XML data:</td>
<td><textarea name="xmldata" cols=80 rows=15>{$xmldata}</textarea></td>
</tr>
<tr>
<td>Import options:</td>
<td>
<label for="import_custom"><input type="checkbox" name="xmloptions[import_custom]" id="import_custom" value="1"/>{$lang.help_customn}</label>
<br/>
<label for="import_diskid"><input type="checkbox" name="xmloptions[import_diskid]" id="import_diskid" value="1"/>{$lang.diskid}</label>
<br/>
<label for="import_owner"><input type="checkbox" name="xmloptions[import_owner]" id="import_owner" value="1"/>{$lang.owner}</label>
</td>
</tr>
<!--
<tr>
<td>
<label for="import_custom">Import custom fields:</label>
</td>
<td>
<input type="checkbox" name="xmloptions[import_custom]" id="import_custom" value="1"/>
</td>
</tr>
<tr>
<td>
<label for="import_diskid">Import disk fields:</label>
</td>
<td>
<input type="checkbox" name="xmloptions[import_diskid]" id="import_diskid" value="1"/>
</td>
</tr>
<tr>
<td>
<label for="import_owner">Import owner:</label>
</td>
<td>
<input type="checkbox" name="xmloptions[import_owner]" id="import_owner" value="1"/>
</td>
</tr>
-->
</table>
<div class="center"><input type="submit" value="Import" class="button" accesskey="s" /></div>
</form>
</div>
</td></tr>
</table>