summaryrefslogtreecommitdiff
path: root/uservars.h
diff options
context:
space:
mode:
authorChristian Wieninger <cwieninger (at) gmx (dot) de>2009-12-20 20:31:57 +0100
committerChristian Wieninger <cwieninger (at) gmx (dot) de>2009-12-20 20:31:57 +0100
commit3f909d1595112849dfd07a0eee0eae5c5e1f8ae2 (patch)
treec2ee692119776616680576f625c63d6ba742f148 /uservars.h
parent1b67f19cb48727d32f6cb6ef135c8983e57a7df8 (diff)
downloadvdr-plugin-epgsearch-3f909d1595112849dfd07a0eee0eae5c5e1f8ae2.tar.gz
vdr-plugin-epgsearch-3f909d1595112849dfd07a0eee0eae5c5e1f8ae2.tar.bz2
new variables date_iso and date_iso_now
Diffstat (limited to 'uservars.h')
-rw-r--r--uservars.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/uservars.h b/uservars.h
index 3a2b715..33be78e 100644
--- a/uservars.h
+++ b/uservars.h
@@ -323,6 +323,21 @@ public:
}
};
+class cDateISOVar : public cInternalVar {
+public:
+ cDateISOVar() : cInternalVar("%date_iso%") {}
+ string Evaluate(const cEvent* e, bool escapeStrings = false)
+ {
+ if (!e) return "";
+ char dateISO[11] = "";
+ struct tm tm_r;
+ const time_t t = e->StartTime();
+ tm *tm = localtime_r(&t, &tm_r);
+ strftime(dateISO, sizeof(dateISO), "%Y-%m-%d", tm);
+ if (escapeStrings) return "'" + EscapeString(dateISO) + "'"; else return dateISO;
+ }
+};
+
class cYearVar : public cInternalVar {
public:
cYearVar() : cInternalVar("%year%") {}
@@ -468,6 +483,20 @@ public:
}
};
+class cDateISONowVar : public cInternalVar {
+public:
+ cDateISONowVar() : cInternalVar("%date_iso_now%") {}
+ string Evaluate(const cEvent*, bool escapeStrings = false)
+ {
+ char dateISO[11] = "";
+ struct tm tm_r;
+ const time_t t = time(NULL);
+ tm *tm = localtime_r(&t, &tm_r);
+ strftime(dateISO, sizeof(dateISO), "%Y-%m-%d", tm);
+ if (escapeStrings) return "'" + EscapeString(dateISO) + "'"; else return dateISO;
+ }
+};
+
class cTimeNowVar : public cInternalVar {
public:
cTimeNowVar() : cInternalVar("%timenow%") {}
@@ -665,6 +694,7 @@ class cUserVars : public cList<cUserVar> {
cLength_Var length_Var;
cDateVar dateVar;
cDateShortVar dateShortVar;
+ cDateISOVar dateISOVar;
cYearVar yearVar;
cMonthVar monthVar;
cDayVar dayVar;
@@ -678,6 +708,7 @@ class cUserVars : public cList<cUserVar> {
cColonVar colonVar;
cDateNowVar dateNowVar;
cDateShortNowVar dateShortNowVar;
+ cDateISONowVar dateISONowVar;
cTimeNowVar timeNowVar;
cVideodirVar videodirVar;
cPlugconfdirVar plugconfdirVar;
@@ -717,6 +748,7 @@ class cUserVars : public cList<cUserVar> {
internalVars[length_Var.Name()] = &length_Var;
internalVars[dateVar.Name()] = &dateVar;
internalVars[dateShortVar.Name()] = &dateShortVar;
+ internalVars[dateISOVar.Name()] = &dateISOVar;
internalVars[yearVar.Name()] = &yearVar;
internalVars[monthVar.Name()] = &monthVar;
internalVars[dayVar.Name()] = &dayVar;
@@ -729,6 +761,7 @@ class cUserVars : public cList<cUserVar> {
internalVars[colonVar.Name()] = &colonVar;
internalVars[dateNowVar.Name()] = &dateNowVar;
internalVars[dateShortNowVar.Name()] = &dateShortNowVar;
+ internalVars[dateISONowVar.Name()] = &dateISONowVar;
internalVars[timeNowVar.Name()] = &timeNowVar;
internalVars[videodirVar.Name()] = &videodirVar;
internalVars[plugconfdirVar.Name()] = &plugconfdirVar;