summaryrefslogtreecommitdiff
path: root/menu.c
diff options
context:
space:
mode:
Diffstat (limited to 'menu.c')
-rw-r--r--menu.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/menu.c b/menu.c
index 062355a..d9e6dd1 100644
--- a/menu.c
+++ b/menu.c
@@ -53,6 +53,7 @@ cMenuDb::~cMenuDb()
cDbFieldDef startTimeDef("starttime", "starttime", cDBS::ffInt, 0, cDBS::ftData);
cDbFieldDef timerStateDef("state", "state", cDBS::ffAscii, 100, cDBS::ftData);
cDbFieldDef timerActionDef("action", "action", cDBS::ffAscii, 100, cDBS::ftData);
+cDbFieldDef groupCountDef("GROUP_COUNT", "count(1)", cDBS::ffUInt, 0, cDBS::ftData);
//***************************************************************************
// initDb / exitDb
@@ -331,18 +332,21 @@ int cMenuDb::initDb()
status += selectRecordings->prepare();
- // select category, genre
+ // select category, genre, count(1)
// from recordinglist
// where
// (state <> 'D' or state is null)
// group by ifnull(category, 'unknown'), ifnull(genre, 'unknown')
// order by ifnull(category, 'unknown'), ifnull(genre, 'unknown')
+ groupCount.setField(&groupCountDef);
+
selectRecordingsGrouped = new cDbStatement(recordingListDb);
selectRecordingsGrouped->build("select ");
selectRecordingsGrouped->bind("CATEGORY", cDBS::bndOut);
selectRecordingsGrouped->bind("GENRE", cDBS::bndOut, ", ");
+ selectRecordingsGrouped->bind(&groupCount, cDBS::bndOut, ", ");
selectRecordingsGrouped->build(" from %s where ", recordingListDb->TableName());
selectRecordingsGrouped->build(" (%s <> 'D' or %s is null)",
recordingListDb->getField("STATE")->getDbName(),