Commit graph

216 commits

Author SHA1 Message Date
sokumon
f71597fedf fix(onboarding): only update allowed fields 2026-04-30 01:01:14 +05:30
gajjug004
72369a329f fix: respect Enable Onboarding setting in sidebar onboarding panel 2026-04-13 15:09:00 +05:30
Rohit Waghchaure
a8f353dc7d fix: module onbaordding has no attribute subtitle 2026-02-24 15:00:11 +05:30
rohitwaghchaure
637500155e
Merge pull request #37322 from rohitwaghchaure/feat-user-onboarding
feat: module onboarding
2026-02-24 11:29:39 +05:30
Rohit Waghchaure
97e4e46ec4 fix: cy test case failing 2026-02-23 22:53:42 +05:30
Rohit Waghchaure
c859375d2c feat: module onboarding 2026-02-23 12:19:37 +05:30
KerollesFathy
14159b72f3 fix: avoid append None to pages list 2026-02-21 19:16:19 +00:00
Aarol D'Souza
68727cbd61
fix: add type hints to whitelisted methods 4 (#37204)
* fix(utils): add type hints to whitelisted methods

* fix(desktop): add type hints to whitelisted methods

* fix(listview): add type hints to whitelisted methods

* fix(access_log): add type hints to whitelisted methods

* fix(setup_wizard): add type hints to whitelisted methods

* fix(notification_settings): add type hints to whitelisted methods

* fix(calendar): add type hints to whitelisted methods

* fix(notifications): add type hints to whitelisted methods

* fix(query_report): add type hints to whitelisted methods

* fix(load): add type hints to whitelisted methods

* fix(save): add type hints to whitelisted methods

* fix(user): add type hints to whitelisted methods

* fix: correct Document import

* fix(list_view_settings): add type hints to whitelisted methods

* fix(reportview): add type hints to whitelisted methods

* fix(treeview): add type hints to whitelisted methods

* fix(linked_with): add type hints to whitelisted methods

* fix(bulk_update): add type hints to whitelisted methods

* fix(assign_to): add type hints to whitelisted methods

* fix(workspace): add type hints to whitelisted methods

* fix(kanban_board): add type hints to whitelisted methods

* fix(event): add type hints to whitelisted methods

* fix(email): add type hints to whitelisted methods

* fix(exporter): add type hints to whitelisted methods

* fix(permission_manager): add type hints to whitelisted methods

* fix(dashboard_chart): add type hints to whitelisted methods

* fix(number_card): add type hints to whitelisted methods

* fix(tag): add type hints to whitelisted methods

* fix: add hook to force type hints on all whitelisted endpoints

* fix: target_doc can be dict/json string

* fix: doc can be dict/json string

* fix(tests): add type hints to whitelisted methods in test

* fix: tree method is optional

* test: Fix test api types

* chore: drop dead code

* fix: document can be int

* fix: Number card input can be document

As utils in some other API calls

* fix: Always use session user

The only usage of this API that makes sense.

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Ankush Menat <ankush@frappe.io>
2026-02-20 14:53:08 +05:30
Arshad Qureshi
6700203523
fix(workspace): show role-restricted non-public workspaces in sidebar (#36829)
* fix(workspace): show role-restricted non-public workspaces in sidebar

Non-public workspaces with assigned roles were not visible to users
with matching roles because the visibility logic only had two buckets:
public workspaces and private (for_user) workspaces. Role-restricted
non-public workspaces without a for_user value fell through both
conditions and were never shown.

Fixes #36201

* fix(workspace): use existing module in test to fix CI failure

The test was using "Test Module" via create_workspace() helper, but
get_module_app() could not resolve it in CI's fresh environment since
the module-app mapping cache did not include it. Use "Desk" module
which always exists.

* fix(workspace): use db.delete in test cleanup to bypass on_trash hook

The on_trash hook calls delete_from_my_workspaces() which tries to
fetch "Workspace Sidebar" doc that does not exist in CI. Using
frappe.db.delete bypasses document hooks and avoids the error.
2026-02-08 12:41:38 +05:30
Sagar Vora
95d9568a80 chore: revert workspace settings 2026-01-20 12:48:32 +05:30
sokumon
9658ca1642 feat: export and sync workspace sidebar and desktop icon 2025-11-14 23:05:11 +05:30
mergify[bot]
5d270b9f67
fix: Cache thrashing in workspace code (#31446) (#31448)
if result is `[]` then it ignores cache and keeps hitting DB for no
reason.

(cherry picked from commit 20b63f3252f9b23655e34ca830cff426ad5a50a3)

Co-authored-by: Ankush Menat <ankush@frappe.io>
2025-02-27 08:11:53 +00:00
Akhil Narang
b5ee3b29cf
fix: set report_ref_doctype for custom reports
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2025-02-14 16:25:48 +05:30
Akhil Narang
ccde8a1922
fix(save_new_widget): prevent UnboundLocalError
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2024-12-13 14:59:09 +05:30
Akhil Narang
72d658a256
fix(desktop): manual fixup on top of ruff's changes
This seems like what the original code wanted to do, I think

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2024-12-04 13:23:52 +05:30
Akhil Narang
84ef6ec677
refactor: fixup with ruff 0.8.1
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2024-12-04 13:18:04 +05:30
Corentin Forler
e0c08fab4e
fix: Fix typo in build_domain_restriced function names 2024-11-20 13:52:19 +01:00
Sumit Bhanushali
99b8899ff6 feat(PrivateApp): virtual app that will host all private workspaces of user 2024-10-01 14:03:11 +05:30
Sumit Bhanushali
950814747c feat(Workspace): user can now add doctype, page, report, external url as workspace and get easy access on sidebar 2024-09-26 16:58:52 +05:30
Rushabh Mehta
e01bdd9283 fix(minor): set defaiult workspace app in desktop.py 2024-09-23 22:18:59 +05:30
Rushabh Mehta
4da1f70eaf fix(desktop): fixes to app switcher inside desk 2024-09-23 15:19:09 +05:30
Rushabh Mehta
c2652fed39 fix(minor): page creation 2024-09-06 14:12:34 +05:30
Rushabh Mehta
774d86f642 feat: Workspace Settings - allow enabling and disabling of workspaces during setup 2024-08-04 13:41:08 +05:30
Gursheen Anand
61807dda71 fix: allow creation of workspace based on desk role perms 2024-05-30 17:35:48 +05:30
Ankush Menat
7fe9cc4f09
perf: Don't update session in cache after every request (#26308)
It's just reading and writing same information except last_update inside
data which is never read back from this.
2024-05-04 06:10:38 +00:00
Sabu Siyad
f3a472b76e
fix(ux): translate onboarding step description 2024-03-13 12:08:43 +05:30
Akhil Narang
3f1e19de85
refactor(treewide): enable RUF rules
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2024-02-21 16:20:28 +05:30
Akhil Narang
26ae0f3460
fix: ruff fixes
Signed-off-by: Akhil Narang <me@akhilnarang.dev>
2024-02-07 17:04:31 +05:30
Rucha Mahabal
68003a23d5
feat: show doctype description on workspace link hover (#24598) 2024-02-06 15:38:59 +05:30
Ankush Menat
de9ac89748 style: re-format with ruff 2024-02-05 18:53:33 +05:30
barredterra
89582dc73d fix: include workspaces without domain restriction 2024-01-10 13:13:19 +01:00
Xiaoguang Sun
1fe3b5d5bc
refactor(workspace): Optimize save call on workspace doc (#24052)
Optimize Workspace.save_page to call doc.save() only once therefore
eliminate sending unnecessary queries to database.

Signed-off-by: Xiaoguang Sun <sunxiaoguang@gmail.com>
2024-01-01 11:38:40 +05:30
Hussain Nagaria
8d2137c265 docs: consistent doc strings 2023-12-18 18:27:39 +05:30
Ankush Menat
018ed845bd refactor: defer unnecessary json-dumping of messages
Also avoid accessing locals where interface is present like for popping last message.
2023-10-16 18:13:50 +05:30
Maharshi Patel
d23b543dc9 Merge branch 'develop' into feat-desk-refresh 2023-09-15 12:12:25 +05:30
Shariq Ansari
cbb80ed0ee fix: getting workspace roles from doc instead from Has Role doctype 2023-09-12 18:10:41 +05:30
Shariq Ansari
a392f57c5e fix: made workspace indicator color customizable 2023-08-25 15:08:10 +05:30
barredterra
88c8baa9ee refactor: for append to extend, merge list extend
Replace a for append loop with list extend.
Create the list with values instead of creating
an empty list and extending it with another list.
2023-08-09 13:25:39 +02:00
Shariq Ansari
90f6b44f48 fix: added welcome workspace if user has desk acces but does not have module access
basically if user doesn't have access to any public workspaces

also made welcome workspace hidden if he/she has even one workspace
2023-07-28 19:01:11 +05:30
Ankush Menat
fa6dc03cc8
refactor: frappe.cache() usage to frappe.cache (#21282) 2023-06-08 11:47:17 +05:30
Shariq Ansari
d08b0fa477 fix: allow custom html block based on roles applied
if roles table is empty it will allow access
2023-05-17 17:39:08 +05:30
Shariq Ansari
001425f71b fix: backend to create workspace custom block and update workspace 2023-05-17 14:59:19 +05:30
Ankush Menat
cbbb6a7d85 chore: track onboarding progress
Easy self-onboarding has been hardest to get right in complex business
apps, even though we have worked on this for long long time we have no
clear idea on how well it works, or if it's severly lacking.

We want to improve this by first understanding how efficient current
system is.

This PR adds basic telemetry for which steps are being completed, which
are skipped and what onboarding group is dismissed completely.
2023-05-05 12:54:14 +05:30
Shariq Ansari
41d43b2a06 fix: allow url type shortcut 2023-04-19 23:17:23 +05:30
Shariq Ansari
d46ff2ed24 fix: include number_card in cleanup logic 2023-02-28 13:41:21 +05:30
Shariq Ansari
8780503191 chore: code reformatting 2023-02-28 10:49:17 +05:30
Rohan Bansal
2af64893a3 feat: allow number cards in workspaces 2023-02-17 14:44:54 +05:30
Shariq Ansari
97a57f7105 feat: hide/unhide workspace from sidebar 2023-01-09 17:51:25 +05:30
Rucha Mahabal
14a84793a8
fix: Show quick list only if user has access (#18102) 2022-09-13 16:09:33 +05:30
Ankush Menat
2eec621e95 chore: db.get_all -> get_all
Reduces 1 pointless function call.
Function calls are also not "super cheap" in python.
2022-08-22 11:35:14 +05:30