From 7046ec9a9407e8ab551d63b8950066488742aaae Mon Sep 17 00:00:00 2001 From: Shariq Ansari Date: Thu, 28 Nov 2024 12:17:18 +0530 Subject: [PATCH 1/5] fix: add timezone in boot --- crm/www/crm.py | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/crm/www/crm.py b/crm/www/crm.py index 98871d14..80335d99 100644 --- a/crm/www/crm.py +++ b/crm/www/crm.py @@ -3,7 +3,7 @@ from __future__ import unicode_literals import frappe -from frappe.utils import cint +from frappe.utils import add_user_info, cint, get_system_timezone from frappe.utils.telemetry import capture no_cache = 1 @@ -33,10 +33,25 @@ def get_boot(): "site_name": frappe.local.site, "read_only_mode": frappe.flags.read_only, "csrf_token": frappe.sessions.get_csrf_token(), - "setup_complete": cint(frappe.get_system_settings("setup_complete")) + "setup_complete": cint(frappe.get_system_settings("setup_complete")), + "timezone": { + "system": get_system_timezone(), + "user": get_user_info() + .get(frappe.session.user, {}) + .get("time_zone", None) + or get_system_timezone(), + } } ) +def get_user_info(): + # get info for current user + user_info = frappe._dict() + add_user_info(frappe.session.user, user_info) + + return user_info + + def get_default_route(): return "/crm" From 75d365328d4f79647a57c239566f82eb39f4e286 Mon Sep 17 00:00:00 2001 From: Shariq Ansari Date: Thu, 28 Nov 2024 12:18:56 +0530 Subject: [PATCH 2/5] feat: added datepicker, datetimepicker in side panel fields --- frontend/src/components/SectionFields.vue | 28 ++++++++++++++++------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/frontend/src/components/SectionFields.vue b/frontend/src/components/SectionFields.vue index 6bea9f29..3233ff94 100644 --- a/frontend/src/components/SectionFields.vue +++ b/frontend/src/components/SectionFields.vue @@ -96,15 +96,9 @@ /> +
+ +
+
+ +
Date: Thu, 28 Nov 2024 12:25:24 +0530 Subject: [PATCH 3/5] fix: use formatDate(with user timezone), formatAsTimeAgo from frappeui --- .../src/components/Activities/Activities.vue | 16 ++++------------ .../src/components/Activities/AttachmentArea.vue | 10 ++-------- frontend/src/components/Activities/CallArea.vue | 6 +++--- .../src/components/Activities/CommentArea.vue | 4 ++-- frontend/src/components/Activities/EmailArea.vue | 4 ++-- frontend/src/components/Activities/NoteArea.vue | 4 ++-- frontend/src/components/Activities/TaskArea.vue | 6 +++--- .../src/components/Activities/WhatsAppArea.vue | 6 +++--- .../FilesUploader/FilesUploaderArea.vue | 4 ++-- .../src/components/ListViews/TasksListView.vue | 6 +++--- frontend/src/components/SLASection.vue | 6 +++--- frontend/src/pages/Contact.vue | 5 ++--- frontend/src/pages/Contacts.vue | 4 ++-- frontend/src/pages/Deals.vue | 9 ++++----- frontend/src/pages/EmailTemplates.vue | 4 ++-- frontend/src/pages/Leads.vue | 14 ++++---------- frontend/src/pages/MobileContact.vue | 5 ++--- frontend/src/pages/MobileOrganization.vue | 7 +++---- frontend/src/pages/Notes.vue | 4 ++-- frontend/src/pages/Organization.vue | 7 +++---- frontend/src/pages/Organizations.vue | 10 ++-------- frontend/src/pages/Tasks.vue | 4 ++-- frontend/src/utils/callLog.js | 9 ++------- frontend/src/utils/index.js | 12 ++++-------- 24 files changed, 63 insertions(+), 103 deletions(-) diff --git a/frontend/src/components/Activities/Activities.vue b/frontend/src/components/Activities/Activities.vue index a7e434e9..af749119 100644 --- a/frontend/src/components/Activities/Activities.vue +++ b/frontend/src/components/Activities/Activities.vue @@ -204,7 +204,7 @@ />
- +
{{ __(timeAgo(activity.creation)) }}
@@ -290,7 +290,7 @@
- +
{{ __(timeAgo(activity.creation)) }}
@@ -353,9 +353,7 @@
- +
{{ __(timeAgo(activity.creation)) }}
@@ -481,13 +479,7 @@ import CommunicationArea from '@/components/CommunicationArea.vue' import WhatsappTemplateSelectorModal from '@/components/Modals/WhatsappTemplateSelectorModal.vue' import AllModals from '@/components/Activities/AllModals.vue' import FilesUploader from '@/components/FilesUploader/FilesUploader.vue' -import { - timeAgo, - dateFormat, - dateTooltipFormat, - secondsToDuration, - startCase, -} from '@/utils' +import { timeAgo, formatDate, secondsToDuration, startCase } from '@/utils' import { globalStore } from '@/stores/global' import { usersStore } from '@/stores/users' import { contactsStore } from '@/stores/contacts' diff --git a/frontend/src/components/Activities/AttachmentArea.vue b/frontend/src/components/Activities/AttachmentArea.vue index 4a956d16..52f4abb5 100644 --- a/frontend/src/components/Activities/AttachmentArea.vue +++ b/frontend/src/components/Activities/AttachmentArea.vue @@ -32,7 +32,7 @@
- +
{{ __(timeAgo(attachment.creation)) }}
@@ -79,13 +79,7 @@ import FileTextIcon from '@/components/Icons/FileTextIcon.vue' import FileVideoIcon from '@/components/Icons/FileVideoIcon.vue' import { globalStore } from '@/stores/global' import { call, Tooltip } from 'frappe-ui' -import { - dateFormat, - timeAgo, - dateTooltipFormat, - convertSize, - isImage, -} from '@/utils' +import { formatDate, timeAgo, convertSize, isImage } from '@/utils' const props = defineProps({ attachments: Array, diff --git a/frontend/src/components/Activities/CallArea.vue b/frontend/src/components/Activities/CallArea.vue index d76ff040..b5b23f58 100644 --- a/frontend/src/components/Activities/CallArea.vue +++ b/frontend/src/components/Activities/CallArea.vue @@ -17,7 +17,7 @@ }}
- +
{{ __(timeAgo(activity.creation)) }}
@@ -56,7 +56,7 @@
- + @@ -97,7 +97,7 @@ import DurationIcon from '@/components/Icons/DurationIcon.vue' import MultipleAvatar from '@/components/MultipleAvatar.vue' import AudioPlayer from '@/components/Activities/AudioPlayer.vue' import { statusLabelMap, statusColorMap } from '@/utils/callLog.js' -import { dateFormat, timeAgo, dateTooltipFormat } from '@/utils' +import { formatDate, timeAgo } from '@/utils' import { Avatar, Badge, Tooltip } from 'frappe-ui' const props = defineProps({ diff --git a/frontend/src/components/Activities/CommentArea.vue b/frontend/src/components/Activities/CommentArea.vue index a082cb0a..f4708719 100644 --- a/frontend/src/components/Activities/CommentArea.vue +++ b/frontend/src/components/Activities/CommentArea.vue @@ -12,7 +12,7 @@
- +
{{ __(timeAgo(activity.creation)) }}
@@ -38,7 +38,7 @@ import UserAvatar from '@/components/UserAvatar.vue' import AttachmentItem from '@/components/AttachmentItem.vue' import { Tooltip } from 'frappe-ui' -import { timeAgo, dateFormat, dateTooltipFormat } from '@/utils' +import { timeAgo, formatDate } from '@/utils' const props = defineProps({ activity: Object, }) diff --git a/frontend/src/components/Activities/EmailArea.vue b/frontend/src/components/Activities/EmailArea.vue index 63869b47..40662d64 100644 --- a/frontend/src/components/Activities/EmailArea.vue +++ b/frontend/src/components/Activities/EmailArea.vue @@ -22,7 +22,7 @@ variant="subtle" :theme="status.color" /> - +
{{ __(timeAgo(activity.creation)) }}
@@ -92,7 +92,7 @@ import ReplyAllIcon from '@/components/Icons/ReplyAllIcon.vue' import AttachmentItem from '@/components/AttachmentItem.vue' import EmailContent from '@/components/Activities/EmailContent.vue' import { Badge, Tooltip } from 'frappe-ui' -import { timeAgo, dateFormat, dateTooltipFormat } from '@/utils' +import { timeAgo, formatDate } from '@/utils' import { computed } from 'vue' const props = defineProps({ diff --git a/frontend/src/components/Activities/NoteArea.vue b/frontend/src/components/Activities/NoteArea.vue index 1b5e1ef2..7028f05a 100644 --- a/frontend/src/components/Activities/NoteArea.vue +++ b/frontend/src/components/Activities/NoteArea.vue @@ -41,7 +41,7 @@ {{ getUser(note.owner).full_name }}
- +
{{ __(timeAgo(note.modified)) }}
@@ -51,7 +51,7 @@