add -/
This commit is contained in:
parent
1ce97801b6
commit
18b82bf36f
9
epg.c
9
epg.c
|
@ -120,7 +120,14 @@ check_filter_range(struct epgfilter *f, enum epgfiltertype type,
|
||||||
|
|
||||||
for (; f; f = f->next)
|
for (; f; f = f->next)
|
||||||
{
|
{
|
||||||
if (f->type == type && (f->num < idl || f->num > idh))
|
if (f->type != type)
|
||||||
|
continue;
|
||||||
|
if (f->match == FT_RANGE)
|
||||||
|
{
|
||||||
|
if (idl < f->num || idl > f->num2)
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else if (f->num < idl || f->num > idh)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
return 1;
|
return 1;
|
||||||
|
|
31
main.c
31
main.c
|
@ -43,8 +43,12 @@ syntax()
|
||||||
" -E<event id> Show only selected event.\n"
|
" -E<event id> Show only selected event.\n"
|
||||||
" -R<SCRID> Show only events with this Series ID.\n"
|
" -R<SCRID> Show only events with this Series ID.\n"
|
||||||
" -S<service id> Show only selected service.\n"
|
" -S<service id> Show only selected service.\n"
|
||||||
|
);
|
||||||
|
fprintf(stderr,
|
||||||
" -T<content type> Show only selected content types.\n"
|
" -T<content type> Show only selected content types.\n"
|
||||||
" -@<unix timestamp> Show only programmes at time.\n"
|
" -@<unix timestamp> Show only programmes at time.\n"
|
||||||
|
" -/<unix timestamp> Show only programmes on day.\n"
|
||||||
|
" -/<days> Show only programmes on day.\n"
|
||||||
"\n"
|
"\n"
|
||||||
);
|
);
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
|
@ -126,7 +130,7 @@ sqldumpstart()
|
||||||
printf("(\n");
|
printf("(\n");
|
||||||
printf("service_id bigint unsigned not null default 0,\n");
|
printf("service_id bigint unsigned not null default 0,\n");
|
||||||
printf("event_id bigint unsigned not null default 0,\n");
|
printf("event_id bigint unsigned not null default 0,\n");
|
||||||
printf("start datetime not null,\n");
|
printf("start bigint unsigned not null,\n");
|
||||||
printf("duration bigint unsigned not null,\n");
|
printf("duration bigint unsigned not null,\n");
|
||||||
printf("name varchar(255),\n");
|
printf("name varchar(255),\n");
|
||||||
printf("text varchar(255),\n");
|
printf("text varchar(255),\n");
|
||||||
|
@ -138,6 +142,7 @@ sqldumpstart()
|
||||||
printf("rec_crid varchar(255),\n");
|
printf("rec_crid varchar(255),\n");
|
||||||
printf("primary key (service_id, event_id),\n");
|
printf("primary key (service_id, event_id),\n");
|
||||||
printf("index name (name),\n");
|
printf("index name (name),\n");
|
||||||
|
printf("index start (start),\n");
|
||||||
printf("index text (text)\n");
|
printf("index text (text)\n");
|
||||||
printf(") engine=innodb;\n");
|
printf(") engine=innodb;\n");
|
||||||
printf("truncate epg;\n");
|
printf("truncate epg;\n");
|
||||||
|
@ -525,6 +530,30 @@ main(int argc, char **argv)
|
||||||
atoi(cp), 0, NULL, FT_EQUAL);
|
atoi(cp), 0, NULL, FT_EQUAL);
|
||||||
goto nextopt;
|
goto nextopt;
|
||||||
|
|
||||||
|
case '/':
|
||||||
|
{
|
||||||
|
unsigned long dstart, dend, dat;
|
||||||
|
struct tm *tm;
|
||||||
|
|
||||||
|
GETOPT;
|
||||||
|
dat = atoi(cp);
|
||||||
|
/* If specified as number of days, then convert
|
||||||
|
* to timestamp. */
|
||||||
|
if (dat < 1000)
|
||||||
|
dat = (unsigned long)time(NULL) +
|
||||||
|
dat * 86400;
|
||||||
|
tm = localtime((time_t *)&dat);
|
||||||
|
tm->tm_hour = tm->tm_min = tm->tm_sec = 0;
|
||||||
|
dstart = mktime(tm);
|
||||||
|
tm->tm_hour = 23;
|
||||||
|
tm->tm_min = tm->tm_sec = 59;
|
||||||
|
dend = mktime(tm);
|
||||||
|
|
||||||
|
add_epgfilter(&filter, FILTER_TIMESTAMP,
|
||||||
|
dstart, dend, NULL, FT_RANGE);
|
||||||
|
goto nextopt;
|
||||||
|
}
|
||||||
|
|
||||||
case 'C':
|
case 'C':
|
||||||
GETOPT;
|
GETOPT;
|
||||||
add_epgfilter(&filter, FILTER_CRID,
|
add_epgfilter(&filter, FILTER_CRID,
|
||||||
|
|
Loading…
Reference in New Issue