summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Brachold <vdr07@deltab.de>2008-06-15 06:21:31 +0000
committerAndreas Brachold <vdr07@deltab.de>2008-06-15 06:21:31 +0000
commit96e79e35ef94b5172f9acd51fd5d470de914cdf3 (patch)
tree5209bfb30e5431921efc81f6f29360414f20974e
parentf07d90a855db44f1a38ed64fdf07262d896b4f7c (diff)
downloadxxv-96e79e35ef94b5172f9acd51fd5d470de914cdf3.tar.gz
xxv-96e79e35ef94b5172f9acd51fd5d470de914cdf3.tar.bz2
* Remove linked templates [a,m,r,t]search.tmpl, widget selected now by console->setcall('tlist')
* Add modul to manage keywords withhin recordings * Store AUX-parameter (autotimer id, keywords) inside timer now as xml struct
l---------skins/blue/asearch.tmpl1
l---------skins/blue/msearch.tmpl1
l---------skins/blue/rsearch.tmpl1
l---------skins/blue/tsearch.tmpl1
l---------skins/blue_flat/asearch.tmpl1
l---------skins/blue_flat/msearch.tmpl1
l---------skins/blue_flat/rsearch.tmpl1
l---------skins/blue_flat/tsearch.tmpl1
l---------skins/deltab/asearch.tmpl1
l---------skins/deltab/msearch.tmpl1
-rw-r--r--skins/deltab/rdisplay.tmpl18
-rw-r--r--skins/deltab/rlist.tmpl28
l---------skins/deltab/rsearch.tmpl1
-rw-r--r--skins/deltab/tlist.tmpl28
l---------skins/deltab/tsearch.tmpl1
l---------skins/lcars/asearch.tmpl1
l---------skins/lcars/msearch.tmpl1
l---------skins/lcars/rsearch.tmpl1
l---------skins/lcars/tsearch.tmpl1
l---------skins/lcars_flat/asearch.tmpl1
l---------skins/lcars_flat/msearch.tmpl1
l---------skins/lcars_flat/rsearch.tmpl1
l---------skins/lcars_flat/tsearch.tmpl1
l---------skins/snow/asearch.tmpl1
l---------skins/snow/msearch.tmpl1
l---------skins/snow/rsearch.tmpl1
l---------skins/snow/tsearch.tmpl1
l---------skins/snow_flat/asearch.tmpl1
l---------skins/snow_flat/msearch.tmpl1
l---------skins/snow_flat/rsearch.tmpl1
l---------skins/snow_flat/tsearch.tmpl1
l---------skins/stone/asearch.tmpl1
l---------skins/stone/msearch.tmpl1
-rw-r--r--skins/stone/rdisplay.tmpl18
-rw-r--r--skins/stone/rlist.tmpl37
l---------skins/stone/rsearch.tmpl1
-rw-r--r--skins/stone/tlist.tmpl37
l---------skins/stone/tsearch.tmpl1
l---------skins/stone_flat/asearch.tmpl1
l---------skins/stone_flat/msearch.tmpl1
-rw-r--r--skins/stone_flat/rdisplay.tmpl276
-rw-r--r--skins/stone_flat/rlist.tmpl37
l---------skins/stone_flat/rsearch.tmpl1
-rw-r--r--skins/stone_flat/tlist.tmpl37
l---------skins/stone_flat/tsearch.tmpl1
l---------skins/xstyle/asearch.tmpl1
-rw-r--r--skins/xstyle/rdisplay.tmpl19
-rw-r--r--skins/xstyle/rlist.tmpl3
l---------skins/xstyle/rsearch.tmpl1
l---------skins/xstyle/tsearch.tmpl1
50 files changed, 262 insertions, 315 deletions
diff --git a/skins/blue/asearch.tmpl b/skins/blue/asearch.tmpl
deleted file mode 120000
index 5671c2a..0000000
--- a/skins/blue/asearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-alist.tmpl \ No newline at end of file
diff --git a/skins/blue/msearch.tmpl b/skins/blue/msearch.tmpl
deleted file mode 120000
index 4325daf..0000000
--- a/skins/blue/msearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-../stone/msearch.tmpl \ No newline at end of file
diff --git a/skins/blue/rsearch.tmpl b/skins/blue/rsearch.tmpl
deleted file mode 120000
index 7f0148f..0000000
--- a/skins/blue/rsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-../stone/rsearch.tmpl \ No newline at end of file
diff --git a/skins/blue/tsearch.tmpl b/skins/blue/tsearch.tmpl
deleted file mode 120000
index 89d825a..0000000
--- a/skins/blue/tsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-../stone/tsearch.tmpl \ No newline at end of file
diff --git a/skins/blue_flat/asearch.tmpl b/skins/blue_flat/asearch.tmpl
deleted file mode 120000
index 5671c2a..0000000
--- a/skins/blue_flat/asearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-alist.tmpl \ No newline at end of file
diff --git a/skins/blue_flat/msearch.tmpl b/skins/blue_flat/msearch.tmpl
deleted file mode 120000
index 86e9342..0000000
--- a/skins/blue_flat/msearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-mlist.tmpl \ No newline at end of file
diff --git a/skins/blue_flat/rsearch.tmpl b/skins/blue_flat/rsearch.tmpl
deleted file mode 120000
index 2e6f4df..0000000
--- a/skins/blue_flat/rsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-rlist.tmpl \ No newline at end of file
diff --git a/skins/blue_flat/tsearch.tmpl b/skins/blue_flat/tsearch.tmpl
deleted file mode 120000
index 1f87771..0000000
--- a/skins/blue_flat/tsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-../stone_flat/tsearch.tmpl \ No newline at end of file
diff --git a/skins/deltab/asearch.tmpl b/skins/deltab/asearch.tmpl
deleted file mode 120000
index 5671c2a..0000000
--- a/skins/deltab/asearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-alist.tmpl \ No newline at end of file
diff --git a/skins/deltab/msearch.tmpl b/skins/deltab/msearch.tmpl
deleted file mode 120000
index 86e9342..0000000
--- a/skins/deltab/msearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-mlist.tmpl \ No newline at end of file
diff --git a/skins/deltab/rdisplay.tmpl b/skins/deltab/rdisplay.tmpl
index a23f9a0..c8ff2bf 100644
--- a/skins/deltab/rdisplay.tmpl
+++ b/skins/deltab/rdisplay.tmpl
@@ -188,7 +188,25 @@
<?% data.Description %?>
</p>
</td>
+ </tr>
+ <?% allowkeywords = allow('rk') %?>
+ <?% IF param.keywords.size > 0 %?>
+ <tr>
+ <td colspan="2">
+ <?% gettext('Keywords') %?>&nbsp;:&nbsp;
+ <?% FOREACH keyword = param.keywords %?>
+ <?% IF allowkeywords %?>
+ <a href="?cmd=rk&amp;data=<?% keyword.0 %?>">
+ <?% END %?>
+ <?% keyword.0 %?>
+ <?% IF allowkeywords %?>
+ </a>
+ <?% END %?>
+ &nbsp;
+ <?% END %?>
+ </td>
</tr>
+ <?% END %?>
<tr>
<td colspan="2">
<p>
diff --git a/skins/deltab/rlist.tmpl b/skins/deltab/rlist.tmpl
index a9eb4ae..9ec1f5c 100644
--- a/skins/deltab/rlist.tmpl
+++ b/skins/deltab/rlist.tmpl
@@ -283,5 +283,33 @@
<input type="text" name="data" size="18" <?% IF search.defined %?>value="<?% search %?>"<?% END %?> />
</p>
</form>
+
+ <?% IF param.keywords.size > 0 && allow('rk') %?>
+ <p class="section"><?% gettext("Keywords",20) %?></p>
+ <p>
+ <?% total = (param.keywordsmax - param.keywordsmin) %?>
+ <?% IF total > 5 %?>
+ <?% basis = 65 %?>
+ <?% size = 50 / total %?>
+ <?% ELSE %?>
+ <?% basis = 100 %?>
+ <?% size = 0 %?>
+ <?% END %?>
+ <?% FOREACH keyword = param.keywords %?>
+ <a href="?cmd=rk&amp;data=<?% keyword.0 %?>">
+ <font style="font-size:<?% (basis + (keyword.1 * size)) div 1 %?>%"><?% keyword.0 %?></font>
+ </a>&nbsp;
+ <?% END %?>
+ </p>
+ <form name="keywordsform" action="">
+ <p>
+ <input type="hidden" name="cmd" value="rkeywords" />
+ <input type="text" id="keytext" name="data" alt="<?% gettext("Keywords") %?>"
+ <?% IF keywords.defined %?>value="<?% keywords %?>"<?% END %?>
+ autocomplete="off" />
+ </p>
+ </form>
+ <?% END %?>
+
</div>
<?% global.sidebar = 1 %?>
diff --git a/skins/deltab/rsearch.tmpl b/skins/deltab/rsearch.tmpl
deleted file mode 120000
index 2e6f4df..0000000
--- a/skins/deltab/rsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-rlist.tmpl \ No newline at end of file
diff --git a/skins/deltab/tlist.tmpl b/skins/deltab/tlist.tmpl
index 5c61761..f41ecef 100644
--- a/skins/deltab/tlist.tmpl
+++ b/skins/deltab/tlist.tmpl
@@ -241,6 +241,34 @@
<input type="text" name="data" size="18" <?% IF cgi.param('cmd')=='ts' || cgi.param('cmd')=='tsearch' %?>value="<?% cgi.param('data')%?>"<?% END %?> />
</p>
</form>
+
+ <?% IF param.keywords.size > 0 && allow('tk') %?>
+ <p class="section"><?% gettext("Keywords",20) %?></p>
+ <p>
+ <?% total = (param.keywordsmax - param.keywordsmin) %?>
+ <?% IF total > 5 %?>
+ <?% basis = 65 %?>
+ <?% size = 50 / total %?>
+ <?% ELSE %?>
+ <?% basis = 100 %?>
+ <?% size = 0 %?>
+ <?% END %?>
+ <?% FOREACH keyword = param.keywords %?>
+ <a href="?cmd=tk&amp;data=<?% keyword.0 %?>">
+ <font style="font-size:<?% (basis + (keyword.1 * size)) div 1 %?>%"><?% keyword.0 %?></font>
+ </a>&nbsp;
+ <?% END %?>
+ </p>
+ <form name="keywordsform" action="">
+ <p>
+ <input type="hidden" name="cmd" value="tkeywords" />
+ <input type="text" id="keytext" name="data" alt="<?% gettext("Keywords") %?>"
+ <?% IF keywords.defined %?>value="<?% keywords %?>"<?% END %?>
+ autocomplete="off" />
+ </p>
+ </form>
+ <?% END %?>
+
</div>
<?% global.sidebar = 1 %?>
diff --git a/skins/deltab/tsearch.tmpl b/skins/deltab/tsearch.tmpl
deleted file mode 120000
index d1d3655..0000000
--- a/skins/deltab/tsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-tlist.tmpl \ No newline at end of file
diff --git a/skins/lcars/asearch.tmpl b/skins/lcars/asearch.tmpl
deleted file mode 120000
index 5671c2a..0000000
--- a/skins/lcars/asearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-alist.tmpl \ No newline at end of file
diff --git a/skins/lcars/msearch.tmpl b/skins/lcars/msearch.tmpl
deleted file mode 120000
index 4325daf..0000000
--- a/skins/lcars/msearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-../stone/msearch.tmpl \ No newline at end of file
diff --git a/skins/lcars/rsearch.tmpl b/skins/lcars/rsearch.tmpl
deleted file mode 120000
index 7f0148f..0000000
--- a/skins/lcars/rsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-../stone/rsearch.tmpl \ No newline at end of file
diff --git a/skins/lcars/tsearch.tmpl b/skins/lcars/tsearch.tmpl
deleted file mode 120000
index 89d825a..0000000
--- a/skins/lcars/tsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-../stone/tsearch.tmpl \ No newline at end of file
diff --git a/skins/lcars_flat/asearch.tmpl b/skins/lcars_flat/asearch.tmpl
deleted file mode 120000
index 5671c2a..0000000
--- a/skins/lcars_flat/asearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-alist.tmpl \ No newline at end of file
diff --git a/skins/lcars_flat/msearch.tmpl b/skins/lcars_flat/msearch.tmpl
deleted file mode 120000
index 86e9342..0000000
--- a/skins/lcars_flat/msearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-mlist.tmpl \ No newline at end of file
diff --git a/skins/lcars_flat/rsearch.tmpl b/skins/lcars_flat/rsearch.tmpl
deleted file mode 120000
index 2e6f4df..0000000
--- a/skins/lcars_flat/rsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-rlist.tmpl \ No newline at end of file
diff --git a/skins/lcars_flat/tsearch.tmpl b/skins/lcars_flat/tsearch.tmpl
deleted file mode 120000
index d1d3655..0000000
--- a/skins/lcars_flat/tsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-tlist.tmpl \ No newline at end of file
diff --git a/skins/snow/asearch.tmpl b/skins/snow/asearch.tmpl
deleted file mode 120000
index 5671c2a..0000000
--- a/skins/snow/asearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-alist.tmpl \ No newline at end of file
diff --git a/skins/snow/msearch.tmpl b/skins/snow/msearch.tmpl
deleted file mode 120000
index 4325daf..0000000
--- a/skins/snow/msearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-../stone/msearch.tmpl \ No newline at end of file
diff --git a/skins/snow/rsearch.tmpl b/skins/snow/rsearch.tmpl
deleted file mode 120000
index 7f0148f..0000000
--- a/skins/snow/rsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-../stone/rsearch.tmpl \ No newline at end of file
diff --git a/skins/snow/tsearch.tmpl b/skins/snow/tsearch.tmpl
deleted file mode 120000
index 89d825a..0000000
--- a/skins/snow/tsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-../stone/tsearch.tmpl \ No newline at end of file
diff --git a/skins/snow_flat/asearch.tmpl b/skins/snow_flat/asearch.tmpl
deleted file mode 120000
index 5671c2a..0000000
--- a/skins/snow_flat/asearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-alist.tmpl \ No newline at end of file
diff --git a/skins/snow_flat/msearch.tmpl b/skins/snow_flat/msearch.tmpl
deleted file mode 120000
index 86e9342..0000000
--- a/skins/snow_flat/msearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-mlist.tmpl \ No newline at end of file
diff --git a/skins/snow_flat/rsearch.tmpl b/skins/snow_flat/rsearch.tmpl
deleted file mode 120000
index 2e6f4df..0000000
--- a/skins/snow_flat/rsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-rlist.tmpl \ No newline at end of file
diff --git a/skins/snow_flat/tsearch.tmpl b/skins/snow_flat/tsearch.tmpl
deleted file mode 120000
index d1d3655..0000000
--- a/skins/snow_flat/tsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-tlist.tmpl \ No newline at end of file
diff --git a/skins/stone/asearch.tmpl b/skins/stone/asearch.tmpl
deleted file mode 120000
index 5671c2a..0000000
--- a/skins/stone/asearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-alist.tmpl \ No newline at end of file
diff --git a/skins/stone/msearch.tmpl b/skins/stone/msearch.tmpl
deleted file mode 120000
index 86e9342..0000000
--- a/skins/stone/msearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-mlist.tmpl \ No newline at end of file
diff --git a/skins/stone/rdisplay.tmpl b/skins/stone/rdisplay.tmpl
index ba63e0f..0083d82 100644
--- a/skins/stone/rdisplay.tmpl
+++ b/skins/stone/rdisplay.tmpl
@@ -252,6 +252,24 @@
</p>
</td>
</tr>
+ <?% allowkeywords = allow('rk') %?>
+ <?% IF param.keywords.size > 0 %?>
+ <tr>
+ <td colspan="2">
+ <?% gettext('Keywords') %?>&nbsp;:&nbsp;
+ <?% FOREACH keyword = param.keywords %?>
+ <?% IF allowkeywords %?>
+ <a target="_top" href="?cmd=rk&amp;data=<?% keyword.0 %?>">
+ <?% END %?>
+ <?% keyword.0 %?>
+ <?% IF allowkeywords %?>
+ </a>
+ <?% END %?>
+ &nbsp;
+ <?% END %?>
+ </td>
+ </tr>
+ <?% END %?>
<tr>
<td colspan="2">
<?% PROCESS marks %?>
diff --git a/skins/stone/rlist.tmpl b/skins/stone/rlist.tmpl
index d8fbd34..12d0393 100644
--- a/skins/stone/rlist.tmpl
+++ b/skins/stone/rlist.tmpl
@@ -350,6 +350,43 @@
<td class="sidebottom"></td>
</tr>
</table>
+ <?% IF param.keywords.size > 0 && allow('rk') %?>
+ <table summary="">
+ <tr><td class="sidehead"><?% gettext("Keywords",20) %?></td></tr>
+ <tr>
+ <td class="sidetext">
+ <?% total = (param.keywordsmax - param.keywordsmin) %?>
+ <?% IF total > 5 %?>
+ <?% basis = 65 %?>
+ <?% size = 50 / total %?>
+ <?% ELSE %?>
+ <?% basis = 100 %?>
+ <?% size = 0 %?>
+ <?% END %?>
+ <?% FOREACH keyword = param.keywords %?>
+ <a href="?cmd=rk&amp;data=<?% keyword.0 %?>">
+ <font style="font-size:<?% (basis + (keyword.1 * size)) div 1 %?>%"><?% keyword.0 %?></font>
+ </a>&nbsp;
+ <?% END %?>
+ </td>
+ </tr>
+ <tr>
+ <td class="sidetext">
+ <form name="keywordsform" action="">
+ <input type="hidden" name="cmd" value="rkeywords" />
+ <input type="text" id="keytext" name="data" alt="<?% gettext("Keywords") %?>"
+ onkeyup="suggest('rsuggestkeywords','keytext','keysuggest');"
+ <?% IF keywords.defined %?>value="<?% keywords %?>"<?% END %?>
+ autocomplete="off" />
+ <br /><div class="suggestbox" id="keysuggest"></div>
+ </form>
+ </td>
+ </tr>
+ <tr>
+ <td class="sidebottom"></td>
+ </tr>
+ </table>
+ <?% END %?>
<p id="sidefooter">&nbsp;</p>
</div>
<?% INCLUDE header.inc %?>
diff --git a/skins/stone/rsearch.tmpl b/skins/stone/rsearch.tmpl
deleted file mode 120000
index 2e6f4df..0000000
--- a/skins/stone/rsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-rlist.tmpl \ No newline at end of file
diff --git a/skins/stone/tlist.tmpl b/skins/stone/tlist.tmpl
index 7fce7a8..c1983ce 100644
--- a/skins/stone/tlist.tmpl
+++ b/skins/stone/tlist.tmpl
@@ -268,6 +268,43 @@
</tr>
<tr><td class="sidebottom"></td></tr>
</table>
+ <?% IF param.keywords.size > 0 && allow('tk') %?>
+ <table summary="">
+ <tr><td class="sidehead"><?% gettext("Keywords",20) %?></td></tr>
+ <tr>
+ <td class="sidetext">
+ <?% total = (param.keywordsmax - param.keywordsmin) %?>
+ <?% IF total > 5 %?>
+ <?% basis = 65 %?>
+ <?% size = 50 / total %?>
+ <?% ELSE %?>
+ <?% basis = 100 %?>
+ <?% size = 0 %?>
+ <?% END %?>
+ <?% FOREACH keyword = param.keywords %?>
+ <a href="?cmd=tk&amp;data=<?% keyword.0 %?>">
+ <font style="font-size:<?% (basis + (keyword.1 * size)) div 1 %?>%"><?% keyword.0 %?></font>
+ </a>&nbsp;
+ <?% END %?>
+ </td>
+ </tr>
+ <tr>
+ <td class="sidetext">
+ <form name="keywordsform" action="">
+ <input type="hidden" name="cmd" value="tkeywords" />
+ <input type="text" id="keytext" name="data" alt="<?% gettext("Keywords") %?>"
+ onkeyup="suggest('tsuggestkeywords','keytext','keysuggest');"
+ <?% IF keywords.defined %?>value="<?% keywords %?>"<?% END %?>
+ autocomplete="off" />
+ <br /><div class="suggestbox" id="keysuggest"></div>
+ </form>
+ </td>
+ </tr>
+ <tr>
+ <td class="sidebottom"></td>
+ </tr>
+ </table>
+ <?% END %?>
<p id="sidefooter">&nbsp;</p>
</div>
<?% INCLUDE header.inc %?>
diff --git a/skins/stone/tsearch.tmpl b/skins/stone/tsearch.tmpl
deleted file mode 120000
index d1d3655..0000000
--- a/skins/stone/tsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-tlist.tmpl \ No newline at end of file
diff --git a/skins/stone_flat/asearch.tmpl b/skins/stone_flat/asearch.tmpl
deleted file mode 120000
index 5671c2a..0000000
--- a/skins/stone_flat/asearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-alist.tmpl \ No newline at end of file
diff --git a/skins/stone_flat/msearch.tmpl b/skins/stone_flat/msearch.tmpl
deleted file mode 120000
index 86e9342..0000000
--- a/skins/stone_flat/msearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-mlist.tmpl \ No newline at end of file
diff --git a/skins/stone_flat/rdisplay.tmpl b/skins/stone_flat/rdisplay.tmpl
deleted file mode 100644
index ecc2e7e..0000000
--- a/skins/stone_flat/rdisplay.tmpl
+++ /dev/null
@@ -1,276 +0,0 @@
-<!-- rdisplay -->
-<?% USE date %?>
-<?% title = data.Title %?>
-<?% subtitle = data.SubTitle %?>
-<?% id = data.RecordId %?>
-<?% allowplay = 1 IF allow('rplay') or allow('playrecord') %?>
-<?% IF ! global.bodyinc.defined;global.bodyinc = 1 %?>
-
-<?% files = data.preview.split(',') %?>
-<script language="javascript" type="text/javascript">
-<!--
- var pics = <?% files.size %?>;
- if( pics > 3) {
- window.onload = initslide;
- }
- function setstart(wert) {
- document.forms.offset.__start.value = wert;
- }
- function playstart(cmd) {
- var url = '?cmd='+cmd + '&data=<?% id %?>&__start=' + document.forms.offset.__start.value;
- location.href = url;
- }
--->
-</script>
-<body class="hilfsframed">
-<div>
-<?% END %?>
-
-<?% ######################################################################## %?>
-<?% BLOCK hfs # d in Sekunden %?>
- <?% d div 3600 %?>:<?% d div 60 mod 60 | format('%02d') %?>:<?% d mod 60 | format('%02d') %?>
-<?% END %?>
-<?% ######################################################################## %?>
-<?% BLOCK dur # d in Sekunden %?>
- <br /><?% gettext("Duration") %?>: <?% PROCESS hfs %?>
-<?% END %?>
-<?% ######################################################################## %?>
-<?% BLOCK image %?>
- <?% IF data.Type == 'RADIO' %?>
- <img class="recorddetails" src="images/audio.<?% global.imagetyp %?>" alt="" title="<?% gettext('Radio recording') %?>" />
- <?% ELSIF files.size > 0; %?>
- <div id="slideframe">
- <?% IF files.size > 3 %?>
- <div id="slideleft"><img src="images/back.<?% global.imagetyp %?>" title="<?% gettext("Back") %?>" alt="" /></div>
- <div id="slideright"><img src="images/forward.<?% global.imagetyp %?>" title="<?% gettext("Next") %?>" alt="" /></div>
- <?% END %?>
- <div id="slidelist" style="left:<?% IF files.size <= 3 %?><?% 280 - (160 * ( files.size / 2 ) ) %?><?% ELSE %?>0<?% END %?>px; width:<?% files.size * 200 %?>px;" >
- <?% FOREACH frame = files %?>
- <?% d = ( frame ) / 25 %?>
- <?% IF allowplay %?><a href="javascript:setstart('<?% PROCESS hfs %?>')" ><?% END %?>
- <img src="?cmd=ri&data=<?% data.RecordId %?>_<?% frame %?>" alt="" title="<?% PROCESS hfs %?>" />
- <?% IF allowplay %?></a><?% END %?>
- <?% END %?>
- <div id="slideend"></div>
- </div>
- </div>
- <?% ELSE %?>
- <img class="recorddetails" src="images/movie.<?% global.imagetyp %?>" alt="" title="<?% gettext('Television recording') %?>" />
- <?% END; %?>
-<?% END %?>
-
-<?% quest=data.Title;IF data.SubTitle.length > 0;quest=data.SubTitle;END %?>
-<?% ######################################################################## %?>
-<?% BLOCK RowButtons %?>
-<form name="offset" method="get" action="">
-<div align="right" style="white-space: nowrap">
- <a target="_blank" href="http://german.imdb.com/find?s=tt&amp;site=aka&amp;q=<?% quest %?>">
- <img src="images/imdb.<?% global.imagetyp %?>" title="<?% gettext("Search with IMDb") %?>" alt="IMDb" />
- </a>
- <a target="_blank" href="http://www.ofdb.de/view.php?page=suchergebnis&Kat=Titel&SText=<?% quest %?>">
- <img src="images/ofdb.<?% global.imagetyp %?>" title="<?% gettext("Search with OFDb") %?>" alt="OFDb" />
- </a>
- <?% IF allow('rcut') %?>
- <a href="?cmd=rcut&amp;data=<?% id %?>">
- <img src="images/cut.<?% global.imagetyp %?>" alt="" title="<?% gettext("Cut recording") %?>" />
- </a>
- <?% END %?>
- <?% IF allow('redit') %?>
- <a href="?cmd=redit&amp;data=<?% id %?>">
- <img src="images/edit.<?% global.imagetyp %?>" alt="" title="<?% gettext("Edit recording") %?>" />
- </a>
- <?% END %?>
- <?% IF allow('rdelete') %?>
- <a href="javascript:sure('<?% gettext("Would you like to delete this recording?") %?>','<?% escape(title) %?><?% IF subtitle.length > 0 %?>~<?% escape(subtitle) %?><?% END %?>','rdelete','<?% id %?>')">
- <img src="images/delete.<?% global.imagetyp %?>" alt="" title="<?% gettext("Delete recording") %?>" />
- </a>
- <?% END %?>
- &nbsp;
- <?% IF allow('rplay') %?>
- <a href="javascript:playstart('rplay')" >
- <img src="images/watch.<?% global.imagetyp %?>" alt="" title="<?% gettext("Watch recording in VDR") %?>" />
- </a>
- <?% END %?>
- <?% IF allow('playrecord') %?>
- <a href="javascript:playstart('playrecord')" >
- <img src="images/webcast.<?% global.imagetyp %?>" alt="" title="<?% gettext("Watch recording as web cast") %?>" />
- </a>
- <?% END %?>
- <?% IF allowplay %?>
- <input type="hidden" name="cmd" value="<?% IF global.preferedlocal && allow('rplay') %?>rplay<?% ELSE %?>playrecord<?% END %?>" />
- <input type="hidden" name="data" value="<?% id %?>" />
- <input style="width:60px;" size="10" type="text" name="__start" value="00:00:00.0" />
- <?% END %?>
-</div>
-</form>
-<?% END %?>
-<?% ######################################################################## %?>
-<?% ######################################################################## %?>
-<?% BLOCK marks %?>
-<?% width = 550 %?>
- <table summary="" style="width:<?% width %?>px; margin:0; padding:0; text-align:left" >
- <tr>
- <?%-
- multi=1;
- IF data.Duration;
- window = 900;
- ticks = 0;
- WHILE (ticks <= 3 or ticks >= 8) && window > 15;
- ticks = (data.Duration div window) + 1;
- IF ticks >= 8;
- window = window * 2;
- ELSIF ticks <= 3;
- IF window == 900;window = 600;
- ELSIF window == 600;window = 300;
- ELSIF window == 300;window = 150;
- ELSIF window == 150;window = 60;
- ELSE; window = window / 2;
- END;
- END;
- END;
- END;
-
- IF window <= 300;
- multi=60;
- END;
- IF window <= 15 or ticks < 1;
- ticks = 1;
- window = 15;
- END;
- cols = 0;
- WHILE cols < ticks;
- cols = cols + 1;
- seconds = window * cols; -%?>
-
- <td colspan="3" style="width:<?% ( ( width / ticks) ) div 1 %?>px; white-space: nowrap; text-align:right">
- <font size='0.66em'>
-<?% IF allowplay && seconds < data.Duration %?><a href="javascript:setstart('<?% PROCESS hfs d=seconds %?>')" ><?% END %?>
- <?% ( seconds * multi ) div 3600 %?>:<?% ( seconds * multi ) div 60 mod 60 | format('%02d') %?>
-<?% IF allowplay && seconds < data.Duration %?></a><?% END %?>
- </font>
- </td>
-<?% END %?>
- </tr>
- <tr>
- <?%- cols = 0;
- window = window div 3;
- WHILE cols < ( ticks * 3);
- cols = cols + 1;
- seconds = window * cols; -%?>
- <td style="width:<?% (width / (ticks * 3)) div 1 %?>px; white-space: nowrap; text-align:right">
- <img style="background:<?% cols % 3 ? "gray" : "black" %?>" src="images/blank.gif" width="<?% cols % 12 ? "1" : "2" %?>" height='<?% (cols % 3 ? "5" : "10") %?>' />
- </td>
-<?% END %?>
- </tr>
- <tr>
- <td colspan="<?% cols %?>" style="white-space: nowrap">
- <?%- secold = 0;
- c = -1;
- ml = data.Marks.split(',');
- totaltime = ticks * window * 3;
- IF ml.size > 1;
- FOREACH marker = ml;
- b = c;
- c = c + 1;
- m = marker.split(':');
- sec = m.0 * 3600;
- sec = sec + m.1 * 60;
- sec = sec + m.2;
- percent = ((sec-secold) / totaltime) * width;
- -%?><?% IF c == 0 %?>
- <?% class = "marksleft" %?>
- <?% ELSE %?>
- <?% class = (class == 'marksright2' ? 'marksright1' : 'marksright2'); %?>
- <?% END %?><img<?% IF allowplay %?> onclick="javascript:setstart('<?% PROCESS hfs d=secold %?>')"<?% END %?> class="<?% class %?>" src="images/blank.gif" width="<?% ( percent ) div 1 %?>" height="12" title="<?% (b < 0 ? "0:00:00.00" : ml.$b) %?> - <?% ml.$c %?>" />
- <?%- secold = sec;
- END;
- IF totaltime > secold;
- class = (class == 'marksright2' ? 'marksright1' : 'marksright2');
- percent = ((data.Duration - secold) / totaltime) * width;
- -%?><img<?% IF allowplay %?> onclick="javascript:setstart('<?% PROCESS hfs d=secold %?>')"<?% END %?> class="<?% class %?>" src="images/blank.gif" width="<?% ( percent ) div 1 %?>" height="12" title="<?% (c < 0 ? "0:00:00.00" : ml.$c) %?> - <?% PROCESS hfs d=data.Duration %?>" />
- <?% END %?>
- <?% ELSE %?>
- <img class="marksleft" src="images/blank.gif" width="0" height="12" /><img class="marksright2" src="images/blank.gif" width="<?% (( data.Duration / totaltime) * width ) div 1 %?>" height="12" />
- <?% END %?>
- </td>
- </tr>
- </table>
-<?% END %?>
-<?% ######################################################################## %?>
-<table class="editortable" summary="">
- <tr>
- <td class="editorhead title">
- <div class="editorhead" style="float:left;">
- <?% IF data.New %?><img src="images/new.<?% global.imagetyp %?>" alt="" title="<?% gettext("New recording") %?>" /><?% END %?>
- <font class="title"><?% title %?></font>
- <?% IF subtitle.length > 0 %?><font class="subtitle">&nbsp;~&nbsp;<?% subtitle %?></font><?% END %?>
- </div>
- <?% INCLUDE shutter.inc %?>
- </td>
- </tr>
- <tr>
- <td class="editortext">
- <table width="100%" summary="" >
- <tr>
- <td valign="top" align="center">
- <?% PROCESS image %?>
- </td>
- </tr>
- <tr>
- <td>
- <table width="100%" summary="" >
- <tr>
- <td>
- <?% date.format(data.StartTime,"%A, %x",locale) %?>&nbsp;
- &nbsp;&nbsp;&nbsp;<?% date.format(data.StartTime,"%H:%M",locale) %?>&nbsp;-&nbsp;<?% date.format(data.StopTime,"%H:%M",locale) %?>
- <?% PROCESS dur d=data.Duration %?>
- <?% IF data.Channel %?>
- <br /><?% gettext('Channel') %?> : <?% data.Channel %?>
- <?% END %?>
- </td>
- <td class="push">
- <?% IF allow('rconvert') && param.reccmds.size > 0 %?>
- <p>
- <form action="">
- <select name='data' onchange="di('?cmd=rconvert&amp;data=',this.form.data.options[this.form.data.options.selectedIndex].value)">
- <option value='0'><?% gettext("Choose a command to edit this recording ...") %?></option>
- <?% FOREACH cmd = param.reccmds %?>
- <option value='<?% loop.count %?>_<?% id %?>'><?% cmd %?></option>
- <?% END %?>
- </select>
- </form>
- </p>
- <?% END %?>
- </td>
- </tr>
- <tr>
- <td colspan="2">
- <p>
-<?% data.Description %?>
- </p>
- </td>
- </tr>
- <tr>
- <td colspan="2">
- <?% PROCESS marks %?>
- </td>
- </tr>
- <tr>
- <td>
- <?% gettext('Lifetime') %?>&nbsp;:&nbsp;<?% data.Lifetime %?>,&nbsp;
- <?% gettext('Priority') %?>&nbsp;:&nbsp;<?% data.Prio %?>
- </td>
- <td class="push">
- <?% PROCESS RowButtons %?>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td class="editorbottom"></td>
- </tr>
-</table>
diff --git a/skins/stone_flat/rlist.tmpl b/skins/stone_flat/rlist.tmpl
index 9fe2332..5948f11 100644
--- a/skins/stone_flat/rlist.tmpl
+++ b/skins/stone_flat/rlist.tmpl
@@ -313,6 +313,43 @@
<td class="sidebottom"></td>
</tr>
</table>
+ <?% IF param.keywords.size > 0 && allow('rk') %?>
+ <table summary="">
+ <tr><td class="sidehead"><?% gettext("Keywords",20) %?></td></tr>
+ <tr>
+ <td class="sidetext">
+ <?% total = (param.keywordsmax - param.keywordsmin) %?>
+ <?% IF total > 5 %?>
+ <?% basis = 65 %?>
+ <?% size = 50 / total %?>
+ <?% ELSE %?>
+ <?% basis = 100 %?>
+ <?% size = 0 %?>
+ <?% END %?>
+ <?% FOREACH keyword = param.keywords %?>
+ <a href="?cmd=rk&amp;data=<?% keyword.0 %?>">
+ <font style="font-size:<?% (basis + (keyword.1 * size)) div 1 %?>%"><?% keyword.0 %?></font>
+ </a>&nbsp;
+ <?% END %?>
+ </td>
+ </tr>
+ <tr>
+ <td class="sidetext">
+ <form name="keywordsform" action="">
+ <input type="hidden" name="cmd" value="rkeywords" />
+ <input type="text" id="keytext" name="data" alt="<?% gettext("Keywords") %?>"
+ onkeyup="suggest('rsuggestkeywords','keytext','keysuggest');"
+ <?% IF keywords.defined %?>value="<?% keywords %?>"<?% END %?>
+ autocomplete="off" />
+ <br /><div class="suggestbox" id="keysuggest"></div>
+ </form>
+ </td>
+ </tr>
+ <tr>
+ <td class="sidebottom"></td>
+ </tr>
+ </table>
+ <?% END %?>
<p id="sidefooter">&nbsp;</p>
</div>
<?% INCLUDE header.inc %?>
diff --git a/skins/stone_flat/rsearch.tmpl b/skins/stone_flat/rsearch.tmpl
deleted file mode 120000
index 2e6f4df..0000000
--- a/skins/stone_flat/rsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-rlist.tmpl \ No newline at end of file
diff --git a/skins/stone_flat/tlist.tmpl b/skins/stone_flat/tlist.tmpl
index ecdc31a..c21bee3 100644
--- a/skins/stone_flat/tlist.tmpl
+++ b/skins/stone_flat/tlist.tmpl
@@ -267,6 +267,43 @@
</tr>
<tr><td class="sidebottom"></td></tr>
</table>
+ <?% IF param.keywords.size > 0 && allow('tk') %?>
+ <table summary="">
+ <tr><td class="sidehead"><?% gettext("Keywords",20) %?></td></tr>
+ <tr>
+ <td class="sidetext">
+ <?% total = (param.keywordsmax - param.keywordsmin) %?>
+ <?% IF total > 5 %?>
+ <?% basis = 65 %?>
+ <?% size = 50 / total %?>
+ <?% ELSE %?>
+ <?% basis = 100 %?>
+ <?% size = 0 %?>
+ <?% END %?>
+ <?% FOREACH keyword = param.keywords %?>
+ <a href="?cmd=tk&amp;data=<?% keyword.0 %?>">
+ <font style="font-size:<?% (basis + (keyword.1 * size)) div 1 %?>%"><?% keyword.0 %?></font>
+ </a>&nbsp;
+ <?% END %?>
+ </td>
+ </tr>
+ <tr>
+ <td class="sidetext">
+ <form name="keywordsform" action="">
+ <input type="hidden" name="cmd" value="tkeywords" />
+ <input type="text" id="keytext" name="data" alt="<?% gettext("Keywords") %?>"
+ onkeyup="suggest('tsuggestkeywords','keytext','keysuggest');"
+ <?% IF keywords.defined %?>value="<?% keywords %?>"<?% END %?>
+ autocomplete="off" />
+ <br /><div class="suggestbox" id="keysuggest"></div>
+ </form>
+ </td>
+ </tr>
+ <tr>
+ <td class="sidebottom"></td>
+ </tr>
+ </table>
+ <?% END %?>
<p id="sidefooter">&nbsp;</p>
</div>
<?% INCLUDE header.inc %?>
diff --git a/skins/stone_flat/tsearch.tmpl b/skins/stone_flat/tsearch.tmpl
deleted file mode 120000
index d1d3655..0000000
--- a/skins/stone_flat/tsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-tlist.tmpl \ No newline at end of file
diff --git a/skins/xstyle/asearch.tmpl b/skins/xstyle/asearch.tmpl
deleted file mode 120000
index 5671c2a..0000000
--- a/skins/xstyle/asearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-alist.tmpl \ No newline at end of file
diff --git a/skins/xstyle/rdisplay.tmpl b/skins/xstyle/rdisplay.tmpl
index 04d7852..774f3f2 100644
--- a/skins/xstyle/rdisplay.tmpl
+++ b/skins/xstyle/rdisplay.tmpl
@@ -167,6 +167,25 @@
</td>
</tr>
<?% END %?>
+ <?% allowkeywords = allow('rk') %?>
+ <?% IF param.keywords.size > 0 %?>
+ <tr>
+ <td>&nbsp;</td>
+ <td>
+ <?% gettext('Keywords') %?>&nbsp;:&nbsp;
+ <?% FOREACH keyword = param.keywords %?>
+ <?% IF allowkeywords %?>
+ <a href="?cmd=rk&amp;data=<?% keyword.0 %?>">
+ <?% END %?>
+ <?% keyword.0 %?>
+ <?% IF allowkeywords %?>
+ </a>
+ <?% END %?>
+ &nbsp;
+ <?% END %?>
+ </td>
+ </tr>
+ <?% END %?>
<tr>
<td>&nbsp;</td>
<td>
diff --git a/skins/xstyle/rlist.tmpl b/skins/xstyle/rlist.tmpl
index a3a1859..2f595fc 100644
--- a/skins/xstyle/rlist.tmpl
+++ b/skins/xstyle/rlist.tmpl
@@ -133,6 +133,9 @@
<li><a href="?cmd=rrecover"><?% gettext("Recover deleted recordings") %?></a></li>
<?% END %?>
<li><a href="#" onClick="suche('<?% gettext("Search text") %?>', '?cmd=rsearch&data=')"><?% gettext("Search for recordings") %?></a></li>
+<?% IF allow('rkeywords') %?>
+ <li><a href="#" onClick="suche('<?% gettext("Keywords") %?>', '?cmd=rkeywords&data=')"><?% gettext("Keywords") %?></a></li>
+<?% END %?>
</ul>
</div>
diff --git a/skins/xstyle/rsearch.tmpl b/skins/xstyle/rsearch.tmpl
deleted file mode 120000
index 2e6f4df..0000000
--- a/skins/xstyle/rsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-rlist.tmpl \ No newline at end of file
diff --git a/skins/xstyle/tsearch.tmpl b/skins/xstyle/tsearch.tmpl
deleted file mode 120000
index d1d3655..0000000
--- a/skins/xstyle/tsearch.tmpl
+++ /dev/null
@@ -1 +0,0 @@
-tlist.tmpl \ No newline at end of file