utils: Use GDate to compare dates
This commit is contained in:
@@ -129,6 +129,8 @@ gint
|
|||||||
gcal_date_time_compare_date (GDateTime *dt1,
|
gcal_date_time_compare_date (GDateTime *dt1,
|
||||||
GDateTime *dt2)
|
GDateTime *dt2)
|
||||||
{
|
{
|
||||||
|
GDate d1, d2;
|
||||||
|
|
||||||
if (!dt1 && !dt2)
|
if (!dt1 && !dt2)
|
||||||
return 0;
|
return 0;
|
||||||
else if (!dt1)
|
else if (!dt1)
|
||||||
@@ -136,16 +138,17 @@ gcal_date_time_compare_date (GDateTime *dt1,
|
|||||||
else if (!dt2)
|
else if (!dt2)
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
if (g_date_time_get_year (dt1) != g_date_time_get_year (dt2))
|
g_date_set_dmy (&d1,
|
||||||
return (g_date_time_get_year (dt1) - g_date_time_get_year (dt2)) * 360;
|
g_date_time_get_day_of_month (dt1),
|
||||||
|
g_date_time_get_month (dt1),
|
||||||
|
g_date_time_get_year (dt1));
|
||||||
|
|
||||||
if (g_date_time_get_month (dt1) != g_date_time_get_month (dt2))
|
g_date_set_dmy (&d2,
|
||||||
return (g_date_time_get_month (dt1) - g_date_time_get_month (dt2)) * 30;
|
g_date_time_get_day_of_month (dt2),
|
||||||
|
g_date_time_get_month (dt2),
|
||||||
|
g_date_time_get_year (dt2));
|
||||||
|
|
||||||
if (g_date_time_get_day_of_month (dt1) != g_date_time_get_day_of_month (dt2))
|
return g_date_days_between (&d1, &d2);
|
||||||
return g_date_time_get_day_of_month (dt1) - g_date_time_get_day_of_month (dt2);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user