@@ -386,7 +388,7 @@ for (recIter = recItems.begin(); recIter != recItems.end(); ++recIter) {
<$ FormatDateTime(tr("%a,"), startTime) + string(" ") + FormatDateTime(tr("%b %d %y"), startTime) + string(" ") + FormatDateTime(tr("%I:%M %p"), startTime) $>
<$ duration $>
-
+
<%cpp>
diff --git a/pages/timers.ecpp b/pages/timers.ecpp
index 7b7be70..b61963b 100644
--- a/pages/timers.ecpp
+++ b/pages/timers.ecpp
@@ -79,6 +79,7 @@ static const size_t maximumDescriptionLength = 300;
EpgInfoPtr epgEvent;
string longDescription;
string searchTimName;
+ int searchTimId = 0;
#if VDRVERSNUM >= 20301
if (!timer->Event()) {
LOCK_SCHEDULES_READ;
@@ -94,6 +95,7 @@ static const size_t maximumDescriptionLength = 300;
+ StringEscapeAndBreak(StringWordTruncate(epgEvent->LongDescr(), maximumDescriptionLength))
+ "
" + tr("Click to view details.");
searchTimName = SortedTimers::SearchTimerName(*timer);
+ if (!searchTimName.empty()) searchTimId = SortedTimers::SearchTimerId(*timer);
}
string currentDay = SortedTimers::GetTimerDays(*timer);
SortedTimers::iterator nextTimer = timer; ++nextTimer;
@@ -157,7 +159,7 @@ static const size_t maximumDescriptionLength = 300;
% }
><$ timer->File() $>
-
"> <$ searchTimName $> |
+
"> |
">Flags() & tfActive) ? "active.png" : "inactive.png") $>" alt="" <& tooltip.hint text=(tr("Toggle timer active/inactive")) &>> |
"><& pageelems.edit_timer timerId=(timers.GetTimerId(*timer)) &> |
">" alt="" <& tooltip.hint text=(tr("Delete timer")) &>> |
diff --git a/recman.cpp b/recman.cpp
index 7bd7912..4dc816c 100644
--- a/recman.cpp
+++ b/recman.cpp
@@ -431,6 +431,12 @@ namespace vdrlive {
return m_recording->LengthInSeconds() / 60;
}
+ long RecordingsItemRec::GetResume() const
+ {
+ if (!m_recording->FileName()) return 0;
+ return m_recording->GetResume();
+ }
+
/**
* Implementation of class RecordingsTree:
*/
diff --git a/recman.h b/recman.h
index c5a5fbb..dabbb4f 100644
--- a/recman.h
+++ b/recman.h
@@ -171,6 +171,7 @@ namespace vdrlive {
virtual time_t StartTime() const = 0;
virtual bool IsDir() const = 0;
virtual long Duration() const = 0;
+ virtual long GetResume() const = 0;
virtual const std::string& Name() const { return m_name; }
virtual const std::string Id() const = 0;
@@ -203,6 +204,7 @@ namespace vdrlive {
virtual time_t StartTime() const { return 0; }
virtual long Duration() const { return 0; }
virtual bool IsDir() const { return true; }
+ virtual long GetResume() const { return 0; }
virtual std::string const Id() const { return ""; }
private:
@@ -225,6 +227,7 @@ namespace vdrlive {
virtual time_t StartTime() const;
virtual long Duration() const;
virtual bool IsDir() const { return false; }
+ virtual long GetResume() const;
virtual const std::string Id() const { return m_id; }
virtual const cRecording* Recording() const { return m_recording; }
diff --git a/timers.cpp b/timers.cpp
index 98e4ad8..7122799 100644
--- a/timers.cpp
+++ b/timers.cpp
@@ -1,5 +1,6 @@
#include "timers.h"
+#include "epgsearch.h"
#include "exception.h"
#include "tools.h"
@@ -162,6 +163,15 @@ namespace vdrlive {
return info.str();
}
+ int SortedTimers::SearchTimerId(cTimer const& timer)
+ {
+ string st = SortedTimers::SearchTimerName(timer);
+ SearchTimers stimers;
+ SearchTimer* search = stimers.GetBySearch(st);
+ if (search) return search->Id();
+ return 0;
+ }
+
#if VDRVERSNUM >= 20301
bool SortedTimers::Modified()
{
diff --git a/timers.h b/timers.h
index 30583f3..5942e50 100644
--- a/timers.h
+++ b/timers.h
@@ -30,6 +30,7 @@ namespace vdrlive {
static std::string GetTimerDays(cTimer const& timer);
static std::string GetTimerInfo(cTimer const& timer);
static std::string SearchTimerName(cTimer const& timer);
+ static int SearchTimerId(cTimer const& timer);
private:
SortedTimers();