X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?p=mymail.git;a=blobdiff_plain;f=mymail.c;h=0e9009a96de42ed8ae04882bee725c7a4590ee8b;hp=2519a7ae16defcc256442b2806bde082cc171171;hb=0ea4d09380ffcc4063d2fed55078f91ff59e72fa;hpb=43d77e1079096fc1af9ce18e1cd2698ebfd210a4 diff --git a/mymail.c b/mymail.c index 2519a7a..0e9009a 100644 --- a/mymail.c +++ b/mymail.c @@ -55,18 +55,11 @@ regex_t leading_from_line_regexp; -char *db_filename; -char *db_filename_regexp_string; -char *db_root_path; -char *db_filename_list; -char output_filename[PATH_MAX + 1]; +/* Global variables! */ int paranoid; -int action_index; int quiet; -time_t being_today; - /********************************************************************/ enum { @@ -709,12 +702,22 @@ void init_condition(struct search_condition *condition, char *string) { condition->negation = 0; } - if(strcmp(search_field, "6h") == 0) { + /* Last 8 hours */ + + if(strcmp(search_field, "8h") == 0) { + condition->field_id = ID_INTERVAL; + condition->interval_start = time(0) - 3600 * 8; + condition->interval_stop = 0; + } + + else if(strcmp(search_field, "week") == 0) { condition->field_id = ID_INTERVAL; - condition->interval_start = time(0) - 3600 * 6; + condition->interval_start = time(0) - 3600 * 24 * 7; condition->interval_stop = 0; } + /* Today and yesterday */ + else if(strcmp(search_field, "24h") == 0 || strcmp(search_field, "today") == 0) { condition->field_id = ID_INTERVAL; @@ -722,6 +725,14 @@ void init_condition(struct search_condition *condition, char *string) { condition->interval_stop = 0; } + else if(strcmp(search_field, "yesterday") == 0) { + condition->field_id = ID_INTERVAL; + condition->interval_start = time(0) - 2 * 3600 * 24; + condition->interval_stop = condition->interval_start + 3600 * 24; + } + + /* Week days */ + else if(strcmp(search_field, "monday") == 0) { condition->field_id = ID_INTERVAL; condition->interval_start = time_for_past_day(1); @@ -764,12 +775,6 @@ void init_condition(struct search_condition *condition, char *string) { condition->interval_stop = condition->interval_start + 3600 * 24; } - else if(strcmp(search_field, "yesterday") == 0) { - condition->field_id = ID_INTERVAL; - condition->interval_start = time(0) - 2 * 3600 * 24; - condition->interval_stop = condition->interval_start + 3600 * 24; - } - else { condition->field_id = -1; @@ -809,6 +814,13 @@ void free_condition(struct search_condition *condition) { /*********************************************************************/ int main(int argc, char **argv) { + char *db_filename; + char *db_filename_regexp_string; + char *db_root_path; + char *db_filename_list; + char output_filename[PATH_MAX + 1]; + int action_index; + int error = 0, show_help = 0; const int nb_fields_to_parse = sizeof(fields_to_parse) / sizeof(struct parsable_field); char c; @@ -828,6 +840,7 @@ int main(int argc, char **argv) { paranoid = 0; action_index = 0; db_filename = 0; + db_filename_regexp_string = 0; db_root_path = 0; db_filename_list = 0; quiet = 0;