--- ../plain/epgsearch-0.9.20//i18n.c 2007-01-28 16:29:57.000000000 +0100
+++ i18n.c 2007-02-03 16:54:11.000000000 +0100
@@ -7327,6 +7327,28 @@
"",// TODO
"",// TODO
},
+ { "Childlock",
+ "Kindersicherung",
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "Adulte",
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ "",//TODO
+ },
{ NULL }
};
--- ../plain/epgsearch-0.9.20//menu_commands.c 2007-01-13 15:20:59.000000000 +0100
+++ menu_commands.c 2007-02-10 09:38:32.000000000 +0100
@@ -135,11 +135,11 @@
else
{
string fullaux = "";
+ string aux = "";
if (event)
{
int bstart = event->StartTime() - timer->StartTime();
int bstop = timer->StopTime() - event->EndTime();
- string aux = "";
int checkmode = DefTimerCheckModes.GetMode(timer->Channel());
aux = UpdateAuxValue(aux, "update", checkmode);
aux = UpdateAuxValue(aux, "eventid", event->EventID());
@@ -147,6 +147,12 @@
aux = UpdateAuxValue(aux, "bstop", bstop);
fullaux = UpdateAuxValue(fullaux, "epgsearch", aux);
}
+
+ // #PIN PATCH
+ aux = "";
+ aux = UpdateAuxValue(aux, "protected", timer->FskProtection() ? "yes" : "no");
+ fullaux = UpdateAuxValue(fullaux, "pin-plugin", aux);
+
SetAux(timer, fullaux);
Timers.Add(timer);
timer->Matches();
--- ../plain/epgsearch-0.9.20//menu_main.c 2007-01-16 23:38:11.000000000 +0100
+++ menu_main.c 2007-02-10 09:38:47.000000000 +0100
@@ -159,12 +159,12 @@
else
{
string fullaux = "";
+ string aux = "";
if (item->event)
{
const cEvent* event = item->event;
int bstart = event->StartTime() - timer->StartTime();
int bstop = timer->StopTime() - event->EndTime();
- string aux = "";
int checkmode = DefTimerCheckModes.GetMode(timer->Channel());
aux = UpdateAuxValue(aux, "update", checkmode);
aux = UpdateAuxValue(aux, "eventid", event->EventID());
@@ -172,6 +172,12 @@
aux = UpdateAuxValue(aux, "bstop", bstop);
fullaux = UpdateAuxValue(fullaux, "epgsearch", aux);
}
+
+ // #PIN PATCH
+ aux = "";
+ aux = UpdateAuxValue(aux, "protected", timer->FskProtection() ? "yes" : "no");
+ fullaux = UpdateAuxValue(fullaux, "pin-plugin", aux);
+
SetAux(timer, fullaux);
Timers.Add(timer);
timer->Matches();
--- ../plain/epgsearch-0.9.20//menu_myedittimer.c 2007-01-23 20:26:12.000000000 +0100
+++ menu_myedittimer.c 2007-02-10 09:40:33.000000000 +0100
@@ -36,6 +36,7 @@
stop = Timer->Stop();
priority = Timer->Priority();
lifetime = Timer->Lifetime();
+ fskProtection = Timer->FskProtection(); // PIN PATCH
strcpy(file, Timer->File());
channel = Timer->Channel()->Number();
if (forcechannel)
@@ -107,6 +108,14 @@
Add(new cMenuEditBitItem( tr("VPS"), &flags, tfVps));
Add(new cMenuEditIntItem( tr("Priority"), &priority, 0, MAXPRIORITY));
Add(new cMenuEditIntItem( tr("Lifetime"), &lifetime, 0, MAXLIFETIME));
+ // PIN PATCH
+ if (cOsd::pinValid || !fskProtection) Add(new cMenuEditBoolItem(tr("Childlock"),&fskProtection));
+ else {
+ char* buf = 0;
+ asprintf(&buf, "%s\t%s", tr("Childlock"), fskProtection ? tr("yes") : tr("no"));
+ Add(new cOsdItem(buf));
+ free(buf);
+ }
Add(new cMenuEditStrItem( tr("File"), file, MaxFileName, tr(FileNameChars)));
Add(new cMenuEditStrItem( tr("Directory"), directory, MaxFileName, tr(AllowedChars)));
@@ -211,6 +220,33 @@
return osContinue;
}
+char* cMenuMyEditTimer::SetFskProtection(int fskProtection, char* aux) // PIN PATCH
+{
+ char* p;
+ char* tmp = 0;
+
+ if (fskProtection && (!aux || !strstr(aux, "yes")))
+ {
+ // add protection info to aux
+
+ if (aux) { tmp = strdup(aux); free(aux); }
+ asprintf(&aux,"%syes", tmp ? tmp : "");
+ }
+ else if (!fskProtection && aux && (p = strstr(aux, "yes")))
+ {
+ // remove protection info to aux
+
+ asprintf(&tmp, "%.*s%s", p-aux, aux, p+strlen("yes"));
+ free(aux);
+ aux = strdup(tmp);
+ }
+
+ if (tmp)
+ free(tmp);
+
+ return aux;
+}
+
eOSState cMenuMyEditTimer::ProcessKey(eKeys Key)
{
bool bWasSingleEvent = IsSingleEvent();
@@ -290,6 +326,7 @@
}
string fullaux = "";
+ string aux = "";
if (timer && timer->Aux())
fullaux = timer->Aux();
@@ -307,7 +344,6 @@
bstop = stopTime - event->EndTime();
char* epgsearchaux = GetAuxValue(timer, "epgsearch");
- string aux = "";
if (epgsearchaux)
{
aux = epgsearchaux;
@@ -320,6 +356,10 @@
fullaux = UpdateAuxValue(fullaux, "epgsearch", aux);
}
+ // #PIN PATCH
+ aux = "";
+ aux = UpdateAuxValue(aux, "protected", timer->FskProtection() ? "yes" : "no");
+ fullaux = UpdateAuxValue(fullaux, "pin-plugin", aux);
char* tmpFile = strdup(file);
tmpFile = strreplace(tmpFile, ':', '|');
--- ../plain/epgsearch-0.9.20//menu_myedittimer.h 2006-12-08 21:50:22.000000000 +0100
+++ menu_myedittimer.h 2007-02-03 16:40:11.000000000 +0100
@@ -13,6 +13,7 @@
bool addIfConfirmed;
int UserDefDaysOfWeek;
cMenuEditStrItem* m_DirItem;
+ char* SetFskProtection(int fskProtection, char* aux); // PIN PATCH
uint flags;
time_t day;
@@ -23,6 +24,7 @@
int lifetime;
char file[MaxFileName];
char directory[MaxFileName];
+ int fskProtection; // PIN PATCH
int checkmode;
public:
cMenuMyEditTimer(cTimer *Timer, bool New, const cEvent* event, const cChannel* forcechannel=NULL);
--- ../plain/epgsearch-0.9.20//menu_whatson.c 2007-01-27 14:30:52.000000000 +0100
+++ menu_whatson.c 2007-02-10 09:39:52.000000000 +0100
@@ -450,12 +450,12 @@
else
{
string fullaux = "";
+ string aux = "";
if (item->event)
{
const cEvent* event = item->event;
int bstart = event->StartTime() - timer->StartTime();
int bstop = timer->StopTime() - event->EndTime();
- string aux = "";
int checkmode = DefTimerCheckModes.GetMode(timer->Channel());
aux = UpdateAuxValue(aux, "update", checkmode);
aux = UpdateAuxValue(aux, "eventid", event->EventID());
@@ -463,6 +463,12 @@
aux = UpdateAuxValue(aux, "bstop", bstop);
fullaux = UpdateAuxValue(fullaux, "epgsearch", aux);
}
+
+ // #PIN PATCH
+ aux = "";
+ aux = UpdateAuxValue(aux, "protected", timer->FskProtection() ? "yes" : "no");
+ fullaux = UpdateAuxValue(fullaux, "pin-plugin", aux);
+
SetAux(timer, fullaux);
Timers.Add(timer);
timer->Matches();