diff options
author | Christian Wieninger <cwieninger (at) gmx (dot) de> | 2009-12-20 20:31:57 +0100 |
---|---|---|
committer | Christian Wieninger <cwieninger (at) gmx (dot) de> | 2009-12-20 20:31:57 +0100 |
commit | 3f909d1595112849dfd07a0eee0eae5c5e1f8ae2 (patch) | |
tree | c2ee692119776616680576f625c63d6ba742f148 /uservars.h | |
parent | 1b67f19cb48727d32f6cb6ef135c8983e57a7df8 (diff) | |
download | vdr-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.h | 33 |
1 files changed, 33 insertions, 0 deletions
@@ -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; |