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"
diff --git a/frappe-ui b/frappe-ui
index 82150c95..5a4f3c8d 160000
--- a/frappe-ui
+++ b/frappe-ui
@@ -1 +1 @@
-Subproject commit 82150c9591a36abc5dc8667ae5873651d4b2cc0d
+Subproject commit 5a4f3c8d4f12efba37b9a83a51a59b53fa758be0
diff --git a/frontend/package.json b/frontend/package.json
index d354e80b..d91fa865 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -14,7 +14,7 @@
"@vueuse/core": "^10.3.0",
"@vueuse/integrations": "^10.3.0",
"feather-icons": "^4.28.0",
- "frappe-ui": "^0.1.86",
+ "frappe-ui": "^0.1.89",
"gemoji": "^8.1.0",
"lodash": "^4.17.21",
"mime": "^4.0.1",
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 @@