From 81a3b0255bbf74bd6d6fe17cef394a4d4f338b09 Mon Sep 17 00:00:00 2001 From: horchi Date: Fri, 16 Feb 2018 08:04:37 +0100 Subject: 2018-02-13 version 1.1.84 (horchi)\n - added: Timer 'type' to timers menu\n\n --- menu.c | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) (limited to 'menu.c') diff --git a/menu.c b/menu.c index ee1aebb..1673884 100644 --- a/menu.c +++ b/menu.c @@ -621,14 +621,27 @@ int cMenuDb::lookupTimer(const cEvent* event, int& timerMatch, int& remote, int // Modify Timer // // - timerRow contain the actual vdrUuid -// - for move destUuid is set +// - for move destUuid or newType is set //*************************************************************************** -int cMenuDb::modifyTimer(cDbRow* timerRow, const char* destUuid) +int cMenuDb::modifyTimer(cDbRow* timerRow, const char* destUuid, char destType) { - int knownTimer = !timerRow->hasValue("ID", (long)na); - int move = knownTimer && destUuid && !timerRow->hasValue("VDRUUID", destUuid); int timerid = timerDb->getIntValue("ID"); + int knownTimer = !timerRow->hasValue("ID", (long)na); + int move = no; + + if (knownTimer) + { + // mive to other VDR? + + if (!timerRow->hasValue("VDRUUID", destUuid)) + move = yes; + + // move to other type + + else if (!timerRow->hasCharValue("TYPE", destType)) + move = yes; + } // lookup known (existing) timer @@ -667,11 +680,11 @@ int cMenuDb::modifyTimer(cDbRow* timerRow, const char* destUuid) timerDb->setValue("VDRUUID", destUuid); timerDb->setCharValue("ACTION", taCreate); timerDb->setValue("SOURCE", Epg2VdrConfig.uuid); - timerDb->setCharValue("TYPE", ttRecord); + timerDb->setCharValue("TYPE", destType); timerDb->insert(); - tell(0, "Created 'move' request for timer (%d) at vdr '%s'", - timerid, timerDb->getStrValue("VDRUUID")); + tell(0, "Created 'move' request for timer (%d) at vdr '%s' and type '%s'", + timerid, timerDb->getStrValue("VDRUUID"), timerDb->getStrValue("TYPE")); } else { @@ -682,7 +695,7 @@ int cMenuDb::modifyTimer(cDbRow* timerRow, const char* destUuid) timerDb->setCharValue("ACTION", knownTimer ? taModify : taCreate); timerDb->getValue("STATE")->setNull(); timerDb->setValue("SOURCE", Epg2VdrConfig.uuid); - timerDb->setCharValue("TYPE", ttRecord); + timerDb->setCharValue("TYPE", destType); if (!knownTimer) timerDb->setValue("NAMINGMODE", tnmAuto); -- cgit v1.2.3