Yonas Habteab
c382d0fbaa
Forms: Introduce RemoveHomeForm
class
2023-07-14 19:51:08 +02:00
Yonas Habteab
4f98b0c696
Forms: Introduce HomeForm class
2023-07-14 19:51:08 +02:00
Yonas Habteab
3048969cca
DashboardManager: Try to activate homes based on the request params
2023-07-14 19:51:08 +02:00
Yonas Habteab
93c3c524ce
DashboardEntries: Fix calling to fromArray
that doesn't exist anymore
2023-07-14 19:51:08 +02:00
Yonas Habteab
0ad7fdca53
Fix some signature inconsistencies
2023-07-14 19:51:08 +02:00
Yonas Habteab
7800c699b7
Introduce dashboards migrate command
2023-07-14 19:51:08 +02:00
Yonas Habteab
7fcc2caae5
DashboardManager: Remove unused property
2023-07-14 19:51:08 +02:00
Yonas Habteab
997517dc8d
Database: Transform assembled binary values to hex format for pgsql
2023-07-14 19:51:08 +02:00
Yonas Habteab
8ba46ac3d3
Don't load orphaned/unusable module dashlets
2023-07-14 19:51:08 +02:00
Yonas Habteab
84d57c622f
Make use of WidgetState
tratit & remove some obsolete codes
2023-07-14 19:51:08 +02:00
Yonas Habteab
408bb9c886
Introduce trait WidgetState
2023-07-14 19:51:08 +02:00
Yonas Habteab
83533d1641
Fix line indented incorrectly
2023-07-14 19:51:08 +02:00
Yonas Habteab
707de5c4da
dashboards.js: Remove some unnecessary codes
2023-07-14 19:51:08 +02:00
Yonas Habteab
d05b8d9e2f
main.less: Set cursor to pointer for the expand/collapse icons
2023-07-14 19:51:08 +02:00
Yonas Habteab
76c97bb1d2
dashboards.less: Add column spacing to the welcome form formcontrols
2023-07-14 19:51:08 +02:00
Yonas Habteab
04495e6276
Adjust Dashboard::getConn() calls & filtering by username
2023-07-14 19:51:08 +02:00
Yonas Habteab
ee706860c9
Introduce DashboardOwner model & adjust other models accordingly
2023-07-14 19:51:08 +02:00
Yonas Habteab
97b009c39f
Copy BoolCast
behavior from db-web
2023-07-14 19:51:08 +02:00
Yonas Habteab
d540ad4c0e
Cleanup DashboardManager trait
2023-07-14 19:51:08 +02:00
Yonas Habteab
3d5789d584
Introduce DashboardUserManager
trait
2023-07-14 19:51:08 +02:00
Yonas Habteab
08933e420f
Introduce Modules\DashletManager
class
2023-07-14 19:51:08 +02:00
Yonas Habteab
d993fea6e1
Introduce DBUtils class
2023-07-14 19:51:08 +02:00
Yonas Habteab
f8c0330e2d
schema: Add pgsql support for the new dashboards
2023-07-14 19:51:08 +02:00
Johannes Meyer
84b462f57c
dashboards/settings: Show tabs depending on where the user comes from
2023-07-14 19:51:08 +02:00
Johannes Meyer
2f09dbe68a
DashboardsController: $this->httpNotFound()
already accepts format params
...
there's no need to use `sprintf` explicitly
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
fd31f2d960
css: Adjust .controls.separated
border-shadow to match Icinga DB Web's
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
178cd7408a
Ensure to rerender dashlet parts with custom_url upon autosubmit
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
7f0197333f
DashboardsController: Use $this->getServerRequest()
where applicable
2023-07-14 19:51:08 +02:00
Johannes Meyer
577d08938d
dashboards/settings: Don't change refresh url due to re-order
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
Johannes Meyer
136f25cb66
layout.less: Fully remove letter-spacing from .dashboard
...
Since ipl-html is used now, there is no whitespace between
tags which gets rendered due to display:inline-block.
2023-07-14 19:51:08 +02:00
Johannes Meyer
799b935d96
dashboard.js: Only handle rendered
events we're interested in
2023-07-14 19:51:08 +02:00
Yonas Habteab
9b1f780c4b
dashboards.js: Don't use a variable for handle
2023-07-14 19:51:08 +02:00
Yonas Habteab
ff5ae27eb6
dashboards.js: Don't delay drag&drop events anymore
2023-07-14 19:51:08 +02:00
Yonas Habteab
8d8a234446
Make the bars icon a bit bigger
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
e5da8b1b73
DashboardsController: Perform a full reload when the drop action couldn't be performed successfully
2023-07-14 19:51:08 +02:00
Yonas Habteab
66904f483a
Don't render the initial modal view over again when autosubmitting the form
2023-07-14 19:51:08 +02:00