1926 Commits

Author SHA1 Message Date
Johannes Meyer
84b462f57c dashboards/settings: Show tabs depending on where the user comes from 2023-07-14 19:51:08 +02:00
Johannes Meyer
3041d7d3c1 dashboards/settings: Cleanup HTML and CSS
Well what should I say..

* There should be nothing else inside a `ul` than `li` elements
 * If that's not feasible, don't use a `ul` but a `div`
* If adjusting a stylesheet, don't add new stuff to it without
  making sure that redundant/obsolete stuff is removed
* Restructure your stylesheet once you notice you're adding
  one rule after another to counteract the one before it.
  There was way too much code smell
* Only be as specific in CSS rules as you absolutely need to.
  Classes are usually enough. Only add tags if you use the same
  classes on different tags.
* Ensure that your CSS makes as less assumptions as possible
2023-07-14 19:51:08 +02:00
Johannes Meyer
d91795d815 dashboards/settings: Don't disguise action links as button links 2023-07-14 19:51:08 +02:00
Johannes Meyer
8bd82ff97c Cleanup dashboard welcome page
* The `h1` is the tab or page title, the welcome message is at most a `h2?`
* It's not necessary to mention that the welcome page is only shown as
  long as there are no dashboards/dashlets, if the very next statement
  explains this already
* The icinga form layout is not relevant here, so there's no need to
  work-around/counteract it
* The text opacity just reduced the contrast needlessly
2023-07-14 19:51:08 +02:00
Johannes Meyer
40716e7dbd Fetch homes and panes already ordered from the database
Doing so in userspace is not required and too inefficient.
2023-07-14 19:51:08 +02:00
Johannes Meyer
9a1f8816ae There can only be a single active home at a time
Cleans up various usages of `setActive` calls.
2023-07-14 19:51:08 +02:00
Yonas Habteab
bb5ba73feb Move module related methods from trait to Dashlet 2023-07-14 19:51:08 +02:00
Yonas Habteab
871e1f7191 Move from/toArray() methods to BaseDashboard 2023-07-14 19:51:08 +02:00
Yonas Habteab
5253db1842 Rename DashboardControls -> DashboardEntries & add an internal flag for sorting 2023-07-14 19:51:08 +02:00
Johannes Meyer
c96da1da98 Change handling of the params showCompact and limit
* The editor should provide the full url in the title,
  to show the user the same view as in the dashboard.
* In the dashboard, `limit` and now also `view` need
  to be removed from the title's link. The user isn't
  editing and should see the default view.
2023-07-14 19:51:08 +02:00
Johannes Meyer
ff54184681 Menu: Don't translate home titles
Homes can't be provided by modules, so there's no way
that a translation exists.
2023-07-14 19:51:08 +02:00
Johannes Meyer
cdb489bc88 DashboardControls: Ensure to use sorted entries in rewindEntries() 2023-07-14 19:51:08 +02:00
Johannes Meyer
930898fd2f Decouple menu and dashboard code 2023-07-14 19:51:08 +02:00
Yonas Habteab
ad6fb35ae1 Use spaceship operator for sorting assoc arrays 2023-07-14 19:51:08 +02:00
Yonas Habteab
28021b61d3 Use handle icon to initiate the drag&drop events 2023-07-14 19:51:08 +02:00
Yonas Habteab
ee75d53daf Merge some related classes 2023-07-14 19:51:08 +02:00
Yonas Habteab
d859522c31 Allow browsing predefined dashlets when creating a new dashlet 2023-07-14 19:51:08 +02:00
Yonas Habteab
bfb799bf9e Fix return type mismatch 2023-07-14 19:51:08 +02:00
Yonas Habteab
c635102d4e Simulate removal of dashboard home Default Home 2023-07-14 19:51:08 +02:00
Yonas Habteab
50c19af224 Remove obsolete button styles & add a proper button class names 2023-07-14 19:51:08 +02:00
Yonas Habteab
443a963307 Adjust how module dashlets are handled 2023-07-14 19:51:08 +02:00
Yonas Habteab
5ea43efd02 Wrap getConn() into a try catch to prevent the menu from being broken 2023-07-14 19:51:08 +02:00
Yonas Habteab
4d47f710ae Clean up codes 2023-07-14 19:51:08 +02:00
Yonas Habteab
49267d6fa3 Use sendMultipartUpdate() for drag&drop actions & adjust some css styles 2023-07-14 19:51:08 +02:00
Yonas Habteab
945a69f0cd Menu: Swallow silently any DB issue in the main menu 2023-07-14 19:51:07 +02:00
Yonas Habteab
b597c7c489 Adjust dashbaord conent layouts & don't redirect when sorting only dashlets 2023-07-14 19:51:07 +02:00
Yonas Habteab
b41e078711 Fix some code styles and comments 2023-07-14 19:51:07 +02:00
Yonas Habteab
ac1534ab0d Use Menu class instead of HomeMenu 2023-07-14 19:51:07 +02:00
Yonas Habteab
e0ee07fc39 Remove some unused interfaces/attrs 2023-07-14 19:51:07 +02:00
Yonas Habteab
8b73811fa7 Adjust param description & extract home properties from a homeitem properly 2023-07-14 19:51:07 +02:00
Yonas Habteab
5d5f6cbcd2 Fix some logical inconsistencies 2023-07-14 19:51:07 +02:00
Yonas Habteab
e688d48167 Pane: Utilize query with dashboard when selecting dashlets 2023-07-14 19:51:07 +02:00
Yonas Habteab
a733c6f66d Delay sorting events for 100ms 2023-07-14 19:51:07 +02:00
Yonas Habteab
cdd60f965b Do some code refactoring 2023-07-14 19:51:07 +02:00
Yonas Habteab
14bc749556 Dashboard: Provide mini welcome wizard for new users 2023-07-14 19:51:07 +02:00
Yonas Habteab
077ee4b537 Dashboard: Introduce Settings class to manage to the new dashbaords 2023-07-14 19:51:07 +02:00
Yonas Habteab
610effb140 Dashboard: Introduce DashboardHomeList widget 2023-07-14 19:51:07 +02:00
Yonas Habteab
97f98b6d58 Dashboard: Introduce DashbaordList widget 2023-07-14 19:51:07 +02:00
Yonas Habteab
051c33b5df DashboardSettings: Don't add Add Dashlet as a dropdown menu anymore 2023-07-14 19:51:07 +02:00
Yonas Habteab
c71f3cd75d Make use of the new controller by default 2023-07-14 19:51:07 +02:00
Yonas Habteab
715adfedb1 Menu: Provide own class for dashboard homes navigation items 2023-07-14 19:51:07 +02:00
Yonas Habteab
c94284e9b2 SearchDashboard: Provide support for the enhanced dashboards 2023-07-14 19:51:07 +02:00
Yonas Habteab
48b54f6025 Introduce DashletlistMultiSelect class 2023-07-14 19:51:07 +02:00
Yonas Habteab
0f074325b3 Introduce DashletListItem class 2023-07-14 19:51:07 +02:00
Yonas Habteab
f30d550c56 Dashboard: Introduce OverridingWidget interface 2023-07-14 19:51:07 +02:00
Yonas Habteab
1d5164b907 Introduce a new dashboard manager 2023-07-14 19:51:07 +02:00
Yonas Habteab
588e886b69 Navigation: Introduce DashboardHome navigation item class 2023-07-14 19:51:07 +02:00
Yonas Habteab
b11a692780 Introduce new Pane widget 2023-07-14 19:51:07 +02:00
Yonas Habteab
a216d5f956 Introduce a new Dashlet widget 2023-07-14 19:51:07 +02:00
Yonas Habteab
4039da8556 Dashbaord: Introduce some common traits used to manage the new dashboards 2023-07-14 19:51:07 +02:00