summaryrefslogtreecommitdiff
path: root/pages
diff options
context:
space:
mode:
authorDieter Hametner <dh (plus) vdr (at) gekrumbel (dot) de>2007-01-21 16:54:56 +0000
committerDieter Hametner <dh (plus) vdr (at) gekrumbel (dot) de>2007-01-21 16:54:56 +0000
commit903e6b746db36238b48741bafcbfeb60e1a718c9 (patch)
tree1507ec5c79ab612b2808d61d3467953121177e74 /pages
parent6514a4d1e37954506168f5c9a7ea41580cdba95e (diff)
downloadvdr-plugin-live-903e6b746db36238b48741bafcbfeb60e1a718c9.tar.gz
vdr-plugin-live-903e6b746db36238b48741bafcbfeb60e1a718c9.tar.bz2
- use epg_events in recordings too. This simplifies the overall
recordings code.
Diffstat (limited to 'pages')
-rw-r--r--pages/.cvsignore2
-rw-r--r--pages/pageelems.ecpp2
-rw-r--r--pages/recordings.ecpp102
-rw-r--r--pages/whats_on.ecpp5
4 files changed, 53 insertions, 58 deletions
diff --git a/pages/.cvsignore b/pages/.cvsignore
new file mode 100644
index 0000000..1ae0abb
--- /dev/null
+++ b/pages/.cvsignore
@@ -0,0 +1,2 @@
+*.cpp
+.dependencies
diff --git a/pages/pageelems.ecpp b/pages/pageelems.ecpp
index 61089b1..8cc94fd 100644
--- a/pages/pageelems.ecpp
+++ b/pages/pageelems.ecpp
@@ -67,7 +67,7 @@ using namespace vdrlive;
</div>
<div class="epg_content">
<div class="epg_tools">
- <& (tools_comp) &>
+ <& (tools_comp) id=(boxId) &>
</div>
<div>
<div class="info"><$ (time) $></div>
diff --git a/pages/recordings.ecpp b/pages/recordings.ecpp
index a97dd17..2459944 100644
--- a/pages/recordings.ecpp
+++ b/pages/recordings.ecpp
@@ -1,18 +1,22 @@
<%pre>
#include <vdr/plugin.h>
#include <vdr/config.h>
+
#include "exception.h"
#include "tools.h"
+#include "epg_events.h"
+
#include "recordings.h"
using namespace vdrlive;
+using namespace std;
</%pre>
<%args>
</%args>
<%request scope="page">
RecordingsTree recordingsTree(LiveRecordingsManager());
-RecordingsTree::RecordingsItemPtr currRecItem;
+EpgEvents epgEvents;
</%request>
<%include>page_init.eh</%include>
<%cpp>
@@ -69,16 +73,16 @@ RecordingsTree::Map::iterator end = recordingsTree.end(path);
<{
for (iter = recordingsTree.begin(path); iter != end; ++iter) {
RecordingsTree::RecordingsItemPtr recItem = iter->second;
- std::string folderimg("folder_closed.png");
- std::string collapseimg("plus.png");
+ string folderimg("folder_closed.png");
+ string collapseimg("plus.png");
if (recItem->IsDir()) {
- reply.out() << std::string("\t\t\t")
- + std::string("<div class=\"recording_item\" onclick=\"Toggle(this)\">\n")
- + std::string("\t\t\t<div class=\"recording_imgs\">")
+ reply.out() << string("\t\t\t")
+ + string("<div class=\"recording_item\" onclick=\"Toggle(this)\">\n")
+ + string("\t\t\t<div class=\"recording_imgs\">")
+ StringRepeat(level, "<img src=\"transparent.png\" alt=\"\" width=\"16px\" height=\"16px\" />")
- + std::string("<img class=\"recording_expander\" src=\"") + collapseimg + std::string("\" alt=\"\" />")
- + std::string("<img class=\"recording_folder\" src=\"") + folderimg + std::string("\" alt=\"\" />")
- + std::string("</div>");
+ + string("<img class=\"recording_expander\" src=\"") + collapseimg + string("\" alt=\"\" />")
+ + string("<img class=\"recording_folder\" src=\"") + folderimg + string("\" alt=\"\" />")
+ + string("</div>");
}>
<div class="recording_name"><$ recItem->Name() $></div>
<div class="recording_actions">&nbsp;</div>
@@ -89,28 +93,37 @@ for (iter = recordingsTree.begin(path); iter != end; ++iter) {
recItemParams.add("path", *i);
}
recItemParams.add("path", recItem->Name());
- recItemParams.add("level", lexical_cast<std::string, int>(level + 1));
+ recItemParams.add("level", lexical_cast<string, int>(level + 1));
callComp("recordings.recordings_item", request, reply, recItemParams);
}
}
for (iter = recordingsTree.begin(path); iter != end; ++iter) {
RecordingsTree::RecordingsItemPtr recItem = iter->second;
- std::string folderimg("folder_closed.png");
- std::string collapseimg("plus.png");
+ string folderimg("folder_closed.png");
+ string collapseimg("plus.png");
if (!recItem->IsDir()) {
- currRecItem = recItem;
- std::string day(FormatDateTime("%a,", recItem->StartTime()));
- std::string dayLen(lexical_cast<std::string, int>(day.length() - 1) + ".25em;");
- reply.out() << std::string("\t\t\t")
- + std::string("<div class=\"recording_item\">\n")
- + std::string("\t\t\t<div class=\"recording_imgs\">")
+ const cRecordingInfo* info = recItem->RecInfo();
+ if (info) {
+ EpgEventPtr epgEvent(new EpgEvent(recItem->Id(),
+ recItem->Name(),
+ info->Title() ? info->Title() : recItem->Name(),
+ info->ShortText() ? info->ShortText() : "",
+ info->Description() ? info->Description() : "",
+ recItem->StartTime(),
+ recItem->StartTime()));
+ epgEvents.push_back(epgEvent);
+ }
+ string day(FormatDateTime("%a,", recItem->StartTime()));
+ string dayLen(lexical_cast<string, int>(day.length() - 1) + ".25em;");
+ reply.out() << string("\t\t\t")
+ + string("<div class=\"recording_item\">\n")
+ + string("\t\t\t<div class=\"recording_imgs\">")
+ StringRepeat(level, "<img src=\"transparent.png\" alt=\"\" width=\"16px\" height=\"16px\" />")
- + std::string("<img src=\"transparent.png\" alt=\"\" width=\"16px\" height=\"16px\" />")
- + std::string("<img src=\"movie.png\" alt=\"movie\" />")
- + std::string("</div>");
+ + string("<img src=\"transparent.png\" alt=\"\" width=\"16px\" height=\"16px\" />")
+ + string("<img src=\"movie.png\" alt=\"movie\" />")
+ + string("</div>");
- const cRecordingInfo* info = recItem->RecInfo();
- std::string shortDescr(tr("Click to view details.")); if (info && info->ShortText()) shortDescr = (std::string("") + info->ShortText() + std::string("<br />") + shortDescr);
+ string shortDescr(tr("Click to view details.")); if (info && info->ShortText()) shortDescr = (string("") + info->ShortText() + string("<br />") + shortDescr);
}>
<div class="recording_day" style="width: <$ dayLen $>"><$ day $></div>
<div class="recording_date"><$ FormatDateTime(tr("%b %d %y"), recItem->StartTime()) $></div>
@@ -130,45 +143,26 @@ for (iter = recordingsTree.begin(path); iter != end; ++iter) {
</ul>
</%def>
+
<%def recordings_data>
-<%args>
-path[];
-int level = 0;
-</%args>
<{
-RecordingsTree::Map::iterator iter;
-RecordingsTree::Map::iterator end = recordingsTree.end(path);
-for (iter = recordingsTree.begin(path); iter != end; ++iter) {
- RecordingsTree::RecordingsItemPtr recItem = iter->second;
- if (recItem->IsDir()) {
- cxxtools::QueryParams recItemParams(qparam, false);
- for (path_type::const_iterator i = path.begin(); i != path.end(); ++i) {
- recItemParams.add("path", *i);
- }
- recItemParams.add("path", recItem->Name());
- recItemParams.add("level", lexical_cast<std::string, int>(level + 1));
- callComp("recordings.recordings_data", request, reply, recItemParams);
- }
- else {
- currRecItem = recItem;
- const cRecordingInfo* info = recItem->RecInfo();
- if (info) {
- std::string start(FormatDateTime("%a,", recItem->StartTime()) + std::string(" ")
- + FormatDateTime(tr("%b %d %y"), recItem->StartTime()) + std::string(" ")
- + FormatDateTime(tr("%I:%M %p"), recItem->StartTime()));
- std::string title(recItem->Name()); if (info->Title()) title = info->Title();
- std::string shortDescr; if (info->ShortText()) shortDescr = info->ShortText();
- std::string longDescr; if (info->Description()) longDescr = info->Description();
+ // create hidden div for the tooltip hints.
+ for (vector<EpgEventPtr>::iterator i = epgEvents.begin(); i != epgEvents.end(); ++i) {
+ EpgEventPtr epg = *i;
+ string start(epg->StartTime("%a,") + string(" ")
+ + epg->StartTime(tr("%b %d %y")) + string(" ")
+ + epg->StartTime(tr("%I:%M %p")));
}>
- <& pageelems.epg_tt_box boxId=(recItem->Id()) caption=(recItem->Name()) tools_comp=("recordings.rec_tools") time=(start) title=(title) short_descr=(shortDescr) long_descr=(longDescr) &>
+ <& pageelems.epg_tt_box boxId=(epg->Id()) caption=(epg->Caption()) tools_comp=("recordings.rec_tools") time=(start) title=(epg->Title()) short_descr=(epg->ShortDescr()) long_descr=(epg->LongDescr()) &>
<{
- }
}
-}
}>
</%def>
<%def rec_tools>
-<& pageelems.ajax_action_href action="play_recording" param=(currRecItem->Id()) image="play.png" alt="" &>
+<%args>
+ string id;
+</%args>
+<& pageelems.ajax_action_href action="play_recording" param=(id) image="play.png" alt="" &>
</%def>
diff --git a/pages/whats_on.ecpp b/pages/whats_on.ecpp
index 49ec9f3..bf5a639 100644
--- a/pages/whats_on.ecpp
+++ b/pages/whats_on.ecpp
@@ -66,7 +66,7 @@ if (type == "now") {
}>
<div class="event">
<div class="station">
- <div><div><div><$ (epgEvent->ChannelName()) $></div></div></div>
+ <div><div><div><$ (epgEvent->Caption()) $></div></div></div>
</div>
<div class="content">
<div class="tools">
@@ -93,14 +93,13 @@ if (type == "now") {
}
}>
</div>
-
<div class="epg_data" style="display: none;">
<{
// create hidden div for the tooltip hints.
for (vector<EpgEventPtr>::iterator i = epgEvents.begin(); i != epgEvents.end(); ++i) {
EpgEventPtr epg = *i;
}>
- <& pageelems.epg_tt_box boxId=(epg->Id()) caption=(epg->ChannelName()) time=(epg->StartTime(tr("%I:%M %p")) + string(" - ") + epg->EndTime(tr("%I:%M %p"))) title=(epg->Title()) short_descr=(epg->ShortDescr()) long_descr=(epg->LongDescr()) &>
+ <& pageelems.epg_tt_box boxId=(epg->Id()) caption=(epg->Caption()) time=(epg->StartTime(tr("%I:%M %p")) + string(" - ") + epg->EndTime(tr("%I:%M %p"))) title=(epg->Title()) short_descr=(epg->ShortDescr()) long_descr=(epg->LongDescr()) &>
<{
}
}>