feat: time display

This commit is contained in:
Denis Gukov 2024-07-22 13:26:10 +05:00
parent ffeb65c2ec
commit 08cf4dd73c
3 changed files with 15 additions and 4 deletions

View File

@ -54,7 +54,7 @@ func (d *SqlDb) GetUserEvents(userID int, params db.RetrieveQueryParams) ([]db.E
q := squirrel.Select("event.*, p.name as project_name").
From("event").
LeftJoin("project as p on event.project_id=p.id").
OrderBy("created desc").
OrderBy("id desc").
LeftJoin("project__user as pu on pu.project_id=p.id").
Where("p.id IS NULL or pu.user_id=?", userID)
@ -65,7 +65,7 @@ func (d *SqlDb) GetEvents(projectID int, params db.RetrieveQueryParams) ([]db.Ev
q := squirrel.Select("event.*, p.name as project_name").
From("event").
LeftJoin("project as p on event.project_id=p.id").
OrderBy("created desc").
OrderBy("id desc").
Where("event.project_id=?", projectID)
return d.getEvents(q, params)

View File

@ -128,7 +128,7 @@ func (d *SqlDb) getTasks(projectID int, templateID *int, taskIDs []int, params d
From("task").
Join("project__template as tpl on task.template_id=tpl.id").
LeftJoin("`user` on task.user_id=`user`.id").
OrderBy("task.created desc, id desc")
OrderBy("id desc")
if templateID == nil {
q = q.Where("tpl.project_id=?", projectID)

View File

@ -13,7 +13,18 @@ const convert = new Convert();
axios.defaults.baseURL = document.baseURI;
Vue.config.productionTip = false;
Vue.filter('formatDate', (value) => (value ? moment(String(value)).fromNow() : '—'));
Vue.filter('formatDate', (value) => {
if (!value) {
return '—';
}
const date = moment(value);
const now = moment();
if (now.isSame(date, 'day')) {
return `${date.fromNow()} (${date.format('LT')})`; // Display only time if today
}
return date.format('L LT'); // Display only date otherwise
});
Vue.filter('formatTime', (value) => (value ? moment(String(value)).format('LTS') : '—'));
Vue.filter('formatLog', (value) => (value ? convert.toHtml(String(value)) : value));