Commit Graph

163 Commits

Author SHA1 Message Date
Johannes Zellner b1752de36f Ensure HeaderBar and Profile view use the same profile object so avatar gets synced 2025-07-16 18:32:06 +02:00
Johannes Zellner 579f5d7c8a pankow moved to @cloudron/pankow 2025-07-10 11:55:11 +02:00
Girish Ramakrishnan 4cf1739604 metrics: overlay app metrics over system metrics 2025-07-07 19:12:57 +02:00
Girish Ramakrishnan 369474a0bc metrics: add route to query app metrics with the system 2025-07-07 19:12:57 +02:00
Johannes Zellner 61ac1c4ae3 If we have an app task, start with 5% progress 2025-07-07 17:37:48 +02:00
Girish Ramakrishnan 2317c17b4b metrics: interval is not configurable, unnecessary 2025-07-04 23:20:38 +02:00
Girish Ramakrishnan 813409a8fb graphs: directly stream docker stats
docker stats API caches the stat and reading it frequently gives back the same value.
this trips our "rate" code into thinking rate is 0.

one approach was to persist polling like we do now and ignore entries based on stats.read.
this works fine but the streaming approach seems better since we don't need to poll anymore.
2025-07-04 00:03:43 +02:00
Girish Ramakrishnan a6a715b8c2 apps: make app graphs use GraphItem 2025-07-03 16:39:18 +02:00
Johannes Zellner 39c0af46b0 Show platform status in headerbar 2025-07-01 11:49:40 +02:00
Johannes Zellner 713f1239c6 Allow admins to set users avatars 2025-06-30 22:44:59 +02:00
Johannes Zellner 8e18a5fb4c Implement update dialog 2025-06-30 17:35:01 +02:00
Girish Ramakrishnan 2486aee24d AppsView: updateInfo is now part of app object 2025-06-26 16:57:55 +02:00
Girish Ramakrishnan 19c9d7d59d updateInfo: move updateInfo into apps table
this has many advantages:
* easy to deliver the updateInfo via the apps object
* after updating, the task can clear it
* when apps are deleted, the info is automatically gone

otherwise, it's a mess of deps between apps/updater/apptask/rest routes

box update info is still in a file
2025-06-26 15:47:15 +02:00
Girish Ramakrishnan 1ca8eeeb50 split oidc into server and clients 2025-06-11 22:26:23 +02:00
Girish Ramakrishnan 30b6d1cd1d app: send POST body on restart 2025-06-11 11:51:54 +02:00
Johannes Zellner 1ddba4a76f Rework the 2fa disable dialog 2025-06-11 10:47:47 +02:00
Johannes Zellner 53b83909ed Convert password change dialog 2025-06-11 10:34:58 +02:00
Johannes Zellner af75060001 Reimplement fallback email dialog 2025-06-11 10:22:09 +02:00
Johannes Zellner 315210fe29 Improve primary email change dialog 2025-06-11 09:53:42 +02:00
Girish Ramakrishnan a93c85ebc9 profile: drop gravatar support
gravatar is owned by an external entity (Automattic) and we have an
unnecessary dep to this service. users can just upload a profile pic
2025-06-08 18:12:40 +02:00
Girish Ramakrishnan 344782099f add explicit unset for the image routes
the initial motivation was to fix up the profile avatar rule which
had a mix of json or multipart. this style does not work well with
express 5
2025-06-06 18:58:49 +02:00
Girish Ramakrishnan c49050ea69 appstore: removed old route and rename to reset_cloudron_id 2025-06-06 13:39:30 +02:00
Johannes Zellner d47b947acf Bring back possibility to disable 2fa for a user from the users view 2025-06-04 10:48:57 +02:00
Johannes Zellner ebba516603 Non-admins do not have a checklist property, so handle it correctly in AppsModel 2025-06-02 22:20:51 +02:00
Johannes Zellner a88d523559 Add button to reset the cloudron id if appstore token is invalid 2025-05-23 15:49:57 +02:00
Girish Ramakrishnan f3087773e3 graphs: cpu live graphs 2025-05-23 11:40:40 +02:00
Girish Ramakrishnan e5b27af055 metrics: make interval msecs 2025-05-22 12:27:19 +02:00
Girish Ramakrishnan 9c477710b9 graphs: make the interval configurable 2025-05-22 11:17:31 +02:00
Girish Ramakrishnan c0f0084e56 metrics: add stream api for system info 2025-05-21 18:09:02 +02:00
Girish Ramakrishnan 8779de448d rename /graphs route to /metrics 2025-05-21 16:26:36 +02:00
Girish Ramakrishnan 892ff38a3f graphs: make interval configurable 2025-05-20 20:46:35 +02:00
Johannes Zellner 60b1dcf5ee Bring checklist indicator back 2025-05-20 11:05:02 +02:00
Johannes Zellner 8f2b6cf44e Expand all template vars in postinstall and checklist messages 2025-05-15 15:04:20 +02:00
Johannes Zellner a8667836b3 Ignore invalid token on logout 2025-05-12 22:59:34 +02:00
Johannes Zellner e07914e9b3 Add docker registry config UI for multiple registries 2025-05-07 18:10:10 +02:00
Johannes Zellner d384442fb3 Add notification settings to profile view 2025-05-07 14:19:27 +02:00
Johannes Zellner c8976daf96 provisioning needs to call other api endpoints as dashboard 2025-05-06 15:48:13 +02:00
Johannes Zellner 7aca2a1b36 Add restore route in provision model 2025-05-06 11:54:02 +02:00
Johannes Zellner f84076d80c Selectively send volume config properties depending on mountType 2025-05-03 10:30:49 +02:00
Johannes Zellner 5f85810345 Fixup domain form in initial dns setup view 2025-05-03 09:51:32 +02:00
Johannes Zellner 52ad526b87 Move more dns provider related code into the shared DomainsModel.js to avoid duplication 2025-05-03 09:46:53 +02:00
Johannes Zellner 8939f0dad7 Only send provider specific dns configs 2025-05-02 15:34:10 +02:00
Johannes Zellner 34583c834d Basic app backup import is working 2025-04-29 16:58:36 +02:00
Johannes Zellner 4c662a30ef Reuse app restore dialog for app clone 2025-04-25 00:00:06 +02:00
Johannes Zellner 775a066a9a Bring back the postinstall dialog 2025-04-23 15:32:42 +02:00
Johannes Zellner 105bcf23be Add UI to archive app instead of uninstall 2025-04-22 18:03:01 +02:00
Johannes Zellner a26ceeb76d Refresh backup list after app backup creation 2025-04-22 17:56:50 +02:00
Johannes Zellner 5e1e6657d1 Fixes for the DomainDialog 2025-04-19 16:28:36 +02:00
Johannes Zellner 822460e5ee Implement remount and mountstatus in backupsview 2025-04-19 15:36:50 +02:00
Johannes Zellner da7934555c Fix up email event log view to use fetch on scroll instead of pagination 2025-04-11 18:35:02 +02:00