Commit Graph

4056 Commits

Author SHA1 Message Date
Johannes Meyer cc65164a67 Adjust global permissions 2021-02-18 11:11:39 +01:00
Johannes Meyer 429a70f05f Auth: Allow to ignore any and all restrictions 2021-02-18 11:11:39 +01:00
Johannes Meyer 6eb0139446 User: Move `$user:local_name$` handling to class `AdmissionLoader`
This way it also adjusts the roles directly, and not just their
copies for the user object
2021-02-18 11:11:39 +01:00
Johannes Meyer bdd0f204f0 Auth: Support single inheritance in roles 2021-02-18 11:11:39 +01:00
Johannes Meyer 87d741265e Auth: Add support for denied permissions 2021-02-18 11:11:39 +01:00
Johannes Meyer c0541d70e9 Move permission match code from class `User` to `Role` 2021-02-18 11:11:39 +01:00
Johannes Meyer 60d61a8fe7 Response: Only apply `showCompact=1` to redirects for GET requests 2021-02-09 15:59:42 +01:00
Johannes Meyer f4a8599193 Introduce and utilize class `Icinga\Util\LessParser` 2021-01-25 09:15:53 +01:00
Johannes Meyer 500696c767 Response: Set `showCompact=1` on a redirect url..
..if compact layout has been requested.

refs 
fixes 
2021-01-15 16:50:00 +01:00
Johannes Meyer accbd9d847 ApplicationStateController: Initalize `$autorefreshInterval`
Instead of defining it with the setter. This prevents the
user's preferences from having an effect on this route.
2021-01-15 15:08:48 +01:00
Johannes Meyer f1dd69d877 ActionController: Set autorefresh interval on view as late as possible
This allows to initialize property `$autorefreshInterval` and have it
take an effect on non-XHR requests.
2021-01-15 15:08:48 +01:00
Johannes Meyer 765557af69 ActionController: Drop new param in method `setAutorefreshInterval()` 2021-01-15 15:08:48 +01:00
Johannes Meyer 67de8a079a js: Initialize all types of input enrichments 2021-01-14 11:57:24 +01:00
Johannes Meyer cb24eafdb5 JavaScript: Load behavior `complete.js` 2021-01-14 11:57:05 +01:00
Johannes Meyer cb9ccc68f7 Url: Drop unwanted boolean parameters in method `onlyWith()` 2021-01-13 17:20:22 +01:00
Sukhwinder Dhillon 53388a3940 Change __toString() to get encoded url string 2020-12-07 13:27:14 +01:00
Johannes Meyer 7c58b3ced1 LessCompiler: Add support for variable exports by modules
Using the following in a module's less file:

```
@exports: {
  @foo: "bar";
  @number: 4;
  @color: red;
};
```

will export the variables `@foo`, `@number` and `@color` into the global
scope. Though, exports are not able to override already defined variables.
That's still reserved for themes.
2020-12-02 10:51:01 +01:00
Johannes Meyer a33317aeab Module: Don't emit warnings for module assets
resolves 
2020-12-01 09:44:56 +01:00
Johannes Meyer 629a39ebbe Cli/Loader: Configure the used `Screen` to use STDERR
Otherwise we still colorize output if stderr is being
redirected.
2020-11-30 15:35:20 +01:00
Alexander A. Klimov d7e3547c6e CLI: write errors to stderr 2020-11-30 15:35:20 +01:00
Alexander A. Klimov 81b19285a7 Make auto refresh interval configurable
refs 
2020-11-26 11:38:02 +01:00
Johannes Meyer 6956ec4450 Manager/Libraries: Don't try to compare versions if any version is sufficient 2020-11-24 15:31:11 +01:00
Johannes Meyer 79478fd2e1 Libraries: Return partial matches in method `get()`
This allows to reference libraries with only their
project name, not just together with the organisation
name.
2020-11-18 16:52:22 +01:00
Johannes Meyer be99703a67 Module: Deprecate asset support 2020-11-18 13:21:34 +01:00
Johannes Meyer a370a99fb4 cli: Allow to ignore module dependencies with `module enable --force` 2020-11-18 13:21:34 +01:00
Johannes Meyer 40c97d6a3e Libraries: Add method `get($name)` 2020-11-18 13:21:34 +01:00
Johannes Meyer 28c7c41b55 Manager: Don't enable modules which have unmet dependencies 2020-11-18 13:21:33 +01:00
Johannes Meyer aba8c4a8ba Manager: Add method `hasUnmetDependencies($name)` 2020-11-18 13:21:33 +01:00
Johannes Meyer baaf663db3 Module: Introduce new metadata field `Requires`
This is the successor of `Depends` and allows to
define dependencies for libraries and modules:

`Requires: <lib-name>[ (<ver>)][, <lib-name>[ (<ver>)]] ...`

or

```
Requires:
  Libraries: <name>[ (<ver>)][, <name>[ (<ver>)]] ...
  Modules: <name>[ (<ver>)][, <name>[ (<ver>)]] ...
```
2020-11-18 13:21:33 +01:00
Johannes Meyer 99b620983a Manager: Add method `has($name, $version = null)` 2020-11-18 13:21:33 +01:00
Johannes Meyer 0f485f1257 Libraries: Add method `has($name, $version = null)` 2020-11-18 13:21:33 +01:00
Johannes Meyer e9fa9d95dd JavaScript: Also optimize `define()` calls in module JS 2020-11-18 13:21:33 +01:00
Johannes Meyer 19e4eb6e1e Module: Add missing getter for property `jsdir` 2020-11-18 13:21:33 +01:00
Johannes Meyer 5a38977906 js: Add `define.js` 2020-11-18 13:21:33 +01:00
Johannes Meyer 220044277c webrouter: Serve lib assets at `lib/<lib-name>/<asset-path>` 2020-11-18 13:20:09 +01:00
Johannes Meyer ed7763c379 Introduce class `Icinga\Web\Controller\StaticController` 2020-11-18 13:20:09 +01:00
Johannes Meyer e44ea3b34c Introduce class `Icinga\Application\StaticWeb` 2020-11-18 13:20:09 +01:00
Johannes Meyer a9d6482533 Javascript: Load JS assets from loaded libraries 2020-11-18 13:20:09 +01:00
Johannes Meyer c49a811fb5 Library: Add getters for the different asset paths 2020-11-18 13:20:09 +01:00
Johannes Meyer ad9099509d StyleSheet: Load css assets from loaded libraries 2020-11-18 13:20:09 +01:00
Johannes Meyer c2769bd177 Library: Add accessors for assets 2020-11-18 13:20:09 +01:00
Johannes Meyer 84c23fe92b Library: Add accessors for meta data 2020-11-18 13:20:09 +01:00
Johannes Meyer a60f511cfc bootstrap: Load external libraries 2020-11-18 13:20:09 +01:00
Johannes Meyer a2bdc8074f Introduce classes `Libraries` and `Library` 2020-11-18 13:20:09 +01:00
Alexander A. Klimov 74d5d69085 Url::fromPath(): var_export() input value to complain about
... not to hide its type.
2020-11-18 09:40:44 +01:00
Johannes Meyer d918d6c86f
Merge pull request from Icinga/fix/sparkline-js-performance
Drop sparkline.js and render inline-pies as SVG
2020-11-18 09:37:31 +01:00
Jorge Vallecillo 865e4b9b2a Fix typos: consecutive use of 'the' 2020-11-18 09:26:39 +01:00
Johannes Meyer 7c1886430b Controller: Don't accept `0` as default page limit 2020-11-16 13:29:49 +01:00
Johannes Meyer 8c73f0462e InlinePie: Utilize SVG to render charts instantly
Inline pie charts usually don't contain that much
data and the SVG should be rather small in size.
So it doesn't hurt rendering them instantly.
2020-09-28 16:40:39 +02:00
Johannes Meyer 37fb455977 js: Drop sparkline lib and behavior 2020-09-28 16:39:54 +02:00
Johannes Meyer 77244b2c1b Raise version to v2.8.2 2020-08-19 11:03:31 +02:00
Johannes Meyer c3d329bd48 Raise version to 2.8.1 2020-06-29 10:30:58 +02:00
Johannes Meyer b288d86e91 DbQuery: Return non-string args as is in `valueToTimestamp()`
fixes 
2020-06-24 14:09:13 +02:00
Johannes Meyer 4d173e6746 DbUserBackend: Lowercase usernames before fetching password hashes
The BINARY cast to make trailing spaces significant () also
made these queries case-sensitive. This wasn't identified at the
time because the query itself wasn't case-insensitive, but the
default collation on the `name` column. (Tests sometimes are the
perfect mitigation for this...)

fixes 
2020-06-24 14:08:30 +02:00
Johannes Meyer e95fac3ff1 Raise version to 2.8.0 2020-06-08 10:51:35 +02:00
Johannes Meyer 62dd0b3f1e ActionController: Fix that view variable `compact` is undefined
refs 
2020-06-08 09:26:36 +02:00
Johannes Meyer a240e306ed Preserve/Remove param `showCompact` instead of `view` 2020-06-04 08:50:41 +02:00
Johannes Meyer 6cf9f19048 ActionController: Shift parameter `view` if its value is `compact` 2020-06-04 08:50:41 +02:00
Johannes Meyer 60c3fd6406 FilterEditor: Use a new url from request when redirecting searches
Creating a new url has the benefit that all framework params are
still there. `$this->url()` however returns a url that's already
mangled and parameter preservation does not work for framework
params.

This is not quite the correct fix. But the entire parameter
handling here is way too convoluted.
2020-06-04 08:50:41 +02:00
Johannes Meyer 46c6201a21 Url: Add method `onlyWith()` 2020-06-04 08:50:41 +02:00
Eric Lippmann 49eb245580 CLI: Also register assets
Because assets are not registered in the CLI context,
CLI actions cannot access the full style sheet.
This is necessary for Icinga Reporting though in order to send PDF reports.
2020-06-04 07:31:02 +02:00
Eric Lippmann fce2858beb LDAP: Add option to disable server side sorting
We automatically detect whether the server supports server side sorting
and sort manually if that is not the case. But there are LDAP servers
which report that they support this feature in general but have it
disabled for certain fields.

If we send the server side control for any field that has server side
sort disabled, the LDAP server will abort the query.

With the new configuration option it is possible to disable server side
sorting and it has precedence over our automatic detection.
Since this is a very special LDAP server configuration, there is no GUI
option for this.
2020-05-25 11:08:13 +02:00
Johannes Meyer c2f380cf9b Dashlet: Use `showCompact` instead of `view=compact`
Allows dashlets to use their own value for parameter `view`
2020-05-19 16:46:58 +02:00
Johannes Meyer c40d134ea5 ApplicationBootstrap: Use L10n locales in `getLocaleDir()` if available 2020-05-11 17:05:23 +02:00
Johannes Meyer 8b8094e9cc dashboards: Increase size of dashlets in no-js envs 2020-04-15 09:42:36 +02:00
Johannes Meyer 5ed41868d9 css: Fix no-script apply styles in non-inline forms 2020-04-15 09:42:36 +02:00
Alexander A. Klimov 568619b92e Form: allow checkboxes to be required 2020-04-09 14:03:21 +02:00
Feu Mourek c2568548cf Add appropriate aria labels to donut graphs 2020-04-09 08:36:29 +02:00
Johannes Meyer d72bdc2c32 Raise version to 2.8.0-rc1 2020-03-13 10:40:35 +01:00
Eric Lippmann e11feb81f5 Don't fail with an exception if module.info is flawed 2020-03-12 14:26:15 +01:00
Eric Lippmann 3361cac59a CLI: Setup fake auth
Since version 2.7.x CLI actions load all enabled modules automatically.
This includes launching configuration.php and run.php. Though code
in those files should be restricted to a supported set of functions,
module devs may write any code here. If a module requires authentication
in those files, CLI actions fail because there is no auth possible.
With this patch, we setup a fake user named "cli" w/o any permission when
running CLI actions.
2020-03-02 14:16:28 +01:00
Eric Lippmann 990a5e4d61 Introduce Auth::setUser() 2020-03-02 14:15:53 +01:00
Johannes Meyer 3a66b0a950 FilterExpression: Pass used delimiter to `preg_quote`
fixes 
2020-03-02 08:39:46 +01:00
Johannes Meyer eb674509b4 BaseTestCase: Read db host and port from env vars if available 2020-01-21 14:13:15 +01:00
Johannes Meyer 05135e716e
Merge pull request from Icinga/fix/pdfexport-hooks-may-cause-bad-loading-times
Fix pdfexport hooks may cause bad loading times
2020-01-16 09:02:31 +01:00
Johannes Meyer 69d15824fb
Merge pull request from Icinga/fix/server-side-window-handling
Fix server side window handling
2020-01-16 08:57:11 +01:00
Eric Lippmann 73a4d8ac31 WebBaseHook: Make setView() fluent 2020-01-14 16:06:22 +01:00
Eric Lippmann dd500578c9 Url: Fix @return hints
Before, sublcasses of Url suffered from @return Url hints. This is
@return static now.
2020-01-14 14:26:14 +01:00
Johannes Meyer 8da37e5ca2
Merge pull request from Icinga/fix/pdf-export-error-handling
Fix pdf export error handling
2020-01-14 11:13:01 +01:00
Johannes Meyer 6a8f17faf2 OutputFormat: Just provide the pdf export if there's a hook available
Calling `isSupported()` is bad here since there may be IO involved.
2020-01-14 11:01:53 +01:00
Johannes Meyer 29aaa363b4 Pdf: Utilize an pdfexport hook without calling `isSupported()`
If it's not supported, users should disable the module. If there
are multiple hooks supported at some point we need to touch this
again anyways. So that should suffice for now.
2020-01-14 10:59:01 +01:00
Johannes Meyer 9fe43dda5f ActionController: Drop method `handlerBrowserWindows()` 2020-01-14 10:14:02 +01:00
Johannes Meyer 855bb8ae72 Properly handle window id's and container id's 2020-01-14 10:14:02 +01:00
Johannes Meyer 2d3fc218db Window: Differentiate between window and container id 2020-01-14 10:14:02 +01:00
Johannes Meyer d459e58aca Response: Add methods to override the client's window id 2020-01-14 10:14:02 +01:00
Johannes Meyer 098bcfb98f LdapConnection: Ignore unknown vendor upon inspection 2020-01-13 13:46:32 +01:00
Johannes Meyer 7bb9c8e25f LdapConnnection: Don't pass param `$serverCtrls` to `ldap_search` prior php 7.3
refs 
2020-01-13 13:17:40 +01:00
Johannes Meyer 5a58279995 ActionController: Don't render exceptions as PDF 2020-01-10 14:11:52 +01:00
Johannes Meyer 5943e6bde9 Pdf: Restore previous state after rendering content
In case an exception occurs its output was previously merged
with the rendered content or even PDF..
2020-01-10 14:11:40 +01:00
Johannes Meyer f63dfa5294 DbUserBackend: Use binary string comparison if it's a mysql db 2019-12-11 10:15:05 +01:00
Johannes Meyer e6d9819adb FilterQueryString: Parse numbers as floats in range conditions 2019-12-09 09:39:50 +01:00
Johannes Meyer dc8981f209 ConfigFormEventsHook: Use base class `Icinga\Web\Form` in type hints 2019-12-09 09:01:33 +01:00
Johannes Meyer 4157821c89 IcingaCheckbox: Don't `display:none` the checkbox but add `.sr-only` to it 2019-12-05 16:12:41 +01:00
Johannes Meyer 668ae38497 ExternalBackend: Don't authenticate a user if `REMOTE_USER` is empty 2019-12-05 15:13:02 +01:00
Johannes Meyer d0857345d0 DbConnection: Set `COLLATE 'latin1_general_ci'` for `latin1` charsets
MySQL 8+ seems a bit more strict now.
2019-12-05 14:18:17 +01:00
Johannes Meyer 8519bb5d11 User: Don't return true if any permission is granted and `*` is required 2019-12-05 08:44:33 +01:00
Johannes Meyer 7b488d7f93 swag: Fix violations of PSR-12
PSR-2 has been deprecated and phpcs v3.5.3
now checks for the successor PSR-12
2019-12-04 11:28:08 +01:00
Johannes Meyer 9c94b9cde7 vendor/lessphp: Check for an array before accessing an offset
https://www.php.net/manual/en/migration74.incompatible.php#migration74.incompatible.core.non-array-access
2019-12-04 11:28:08 +01:00
Johannes Meyer 369ffa758e zend/Registry: Don't override method `offsetExists()`
It's not possible to use `array_key_exists()` on objects anymore
(https://www.php.net/manual/en/migration74.deprecated.php#migration74.deprecated.core.array-key-exists-objects)
and since the referenced bug (http://bugs.php.net/bug.php?id=40442)
only applied to PHP 5.2.0 it's now obsolete.
2019-12-04 11:28:08 +01:00
Johannes Meyer d34909bbac vendor/lessphp: Avoid curly braces to access array offsets
https://www.php.net/manual/en/migration74.deprecated.php#migration74.deprecated.core.array-string-access-curly-brace
2019-12-04 11:28:08 +01:00
Johannes Meyer 0a44bbc804 vendor/Zend: Avoid curly braces to access array offsets
https://www.php.net/manual/en/migration74.deprecated.php#migration74.deprecated.core.array-string-access-curly-brace
2019-12-04 11:28:08 +01:00
Johannes Meyer 67dd439673 vendor/HTMLPurifier: Avoid curly braces to access array offsets
https://www.php.net/manual/en/migration74.deprecated.php#migration74.deprecated.core.array-string-access-curly-brace
2019-12-04 11:28:08 +01:00
Johannes Meyer 0442c4f0ab View: Ignore setting `short_open_tag`
Adjusting class `Zend_View_Stream` according to https://www.php.net/manual/en/migration74.incompatible.php#migration74.incompatible.core.stream-wrappers
didn't work. (*syntax error, unexpected end of file* after every last php statement in phtml files)

So.. since `<?= ?>` instructions are permanently available since PHP 5.4 (https://www.php.net/manual/en/language.basic-syntax.phptags.php)
we'll just omit using a custom stream wrapper now.
2019-12-04 09:35:24 +01:00
Johannes Meyer 7bc1893a24 LdapConnection: Don't utilize `ldap_control_paged_result()` on PHP 7.3+
https://www.php.net/manual/en/migration74.deprecated.php#migration74.deprecated.ldap
2019-12-04 09:33:13 +01:00
Johannes Meyer 9b1dc44130 FilterEditor: Also trim trailing whitespace from search values
Simple values are wrapped with `*` anyway, so trimming all
whitespace doesn't pose an issue. (Even if inserted intentionally)
This doesn't apply to qualified search values. (e.g. `host = abc `)

resolves 
2019-12-03 10:33:00 +01:00
Eric Lippmann 9f4e29b56c JS/CSS: Load modal behavior and styles 2019-11-04 12:46:30 +01:00
Eric Lippmann c196631f5a Add Markdown::line() 2019-10-31 14:41:39 +01:00
Johannes Meyer e0be21f655 Raise version to 2.7.3 2019-10-18 07:41:53 +02:00
Johannes Meyer 362c30c1dd Raise version to 2.7.2 2019-10-16 08:12:09 +02:00
Johannes Meyer 8e5380220c SimpleQuery: Cache count query result and use it in `hasResult()`
Does not affect views which do not run a count query. (e.g. dashlets)
Though, this is a quick win for all other views with which the user
interacts directly and gets the desired result quicker than before.

refs 
refs 
2019-10-11 10:27:43 +02:00
Johannes Meyer 52d830170f LessCompiler: Put required assets into a module's css block
We have to include these there otherwise mixins from assets
can't be used.
2019-10-01 15:30:17 +02:00
Johannes Meyer 5352e72d1f
Merge pull request from Icinga/fix/wrong-dashlet-order-3931
Fix wrong dashlet order
2019-09-26 14:34:13 +02:00
Johannes Meyer d699191629
Let modules provide css/js assets to be used by other modules () 2019-09-25 09:53:53 +02:00
Johannes Meyer f98f988aff Remove tristate form element 2019-09-23 08:36:24 +02:00
Johannes Meyer d4dc282ac8 DashboardContainer: Allow to define a priority for dashlets
refs 
2019-09-09 14:43:28 +02:00
Johannes Meyer 04b23811be Raise version to 2.7.1 2019-08-14 13:10:19 +02:00
Eric Lippmann c8ed889114 Fix operator in wildcard filter chains 2019-08-13 17:19:45 +02:00
Eric Lippmann 31d3153d2b Support wildcard filters in chains () 2019-08-12 13:41:38 +02:00
Eric Lippmann 666bdfb4c4 Revert "Fix double query execution"
This reverts PR 6ea012af7e, reversing
changes made to be5b9f870b.

The reverted commit fixed a double query execution bug by only executing
the query once in either SimpleQuery::hasResult() or upon iteration.

But the fix (b20291a60) introduced two problems:

* Default sort rules no longer work
* Show more links missing

We work with DataView objects in our controllers and views. When
iterating over a DataView, it applies its default sort rules and then
returns the underlying query, see DataView::getIterator().

DataView::hasResult() on the other hand does not apply the default sort
rules. So, if hasResult() is called first, the default sort rules are no
longer applied because the query will be executed only once.
The fix would be as easy as to apply sorting in DataView::hasResult() as
well.

But now the show more part kicks in. We know whether there are more
results because we execute queries with $limit + 1. This is enabled via
SimpleQuery::peekAhead(). Unfortunately, we call
SimpleQuery::peekAhead() ALWAYS after SimpleQuery::hasResult(). And
that's why the show more links are missing because the query is executed
only once with the "wrong" limit.

For now, we just revert the commit in question and postpone a proper fix
for the double execution.
2019-08-07 13:29:57 +02:00
Eric Lippmann f35946df29 Raise version to 2.7.0 2019-07-30 10:19:53 +02:00
Eric Lippmann b8fb193bdd Add FilterChain::setFilters() 2019-07-30 09:17:25 +02:00
Johannes Meyer b31dd77812
Merge pull request from Icinga/feature/form-styling
Improve look of our forms
2019-07-30 08:26:08 +02:00
Markus Frosch c66d206042 Cleanup executable flags on files
Some or scripts, but if so just vendor artifacts
2019-07-30 07:53:54 +02:00
Johannes Meyer 9cdf37410c ApplicationStateMessages: Fix message layout 2019-07-29 10:19:39 +02:00
Johannes Meyer 13ad506393 css: Rename class `icinga-forms` to `icinga-form` 2019-07-29 10:17:59 +02:00
Johannes Meyer 212606de78 setup: Apply new icinga form style 2019-07-29 10:17:59 +02:00
Johannes Meyer 0bc70a840c SortBox: Apply icinga form style 2019-07-29 10:17:59 +02:00
Johannes Meyer 346083109a Apply new form style to the filter editor 2019-07-29 10:17:59 +02:00
Johannes Meyer 05613c413d Enhance toggle-switch, spinner and control-info placement
tested with Chromium, IE11 (Win7), Edge (Win10)
2019-07-29 10:17:59 +02:00
Johannes Meyer 115bb80c6a View: Register our own view helper path
That's a different path than application/views/helpers because this one
uses a namespace so that we're able to extend Zend's view helpers
2019-07-29 10:17:59 +02:00
Johannes Meyer bc2e7588d7 FormNotifications: Don't ignore warning and error notifications 2019-07-29 10:17:59 +02:00
Johannes Meyer a5f292c2ae Form: Define classes `icinga-forms` and `icinga-controls` by default 2019-07-29 10:17:59 +02:00
Florian Strohmaier f14256a7ee CSS: Adapt form design with filter editor
refs 
2019-07-29 10:17:59 +02:00
Florian Strohmaier f70f996085 Announcements: Increase font-size and align control layout
refs 
refs 
refs 
2019-07-29 10:17:59 +02:00
Florian Strohmaier c492c6bb23 Announcements: Avoid duplicate `id attribute
refs 
2019-07-29 10:17:59 +02:00
Eric Lippmann c49f5d6a0f Don't override Zend's Checkbox for our toggle switch 2019-07-29 10:17:59 +02:00
Eric Lippmann 41ee36c7e6 Reduce default textarea rows 2019-07-29 10:17:59 +02:00
Jennifer Mourek bf48b6d26b WIP: New form styles
Signed-off-by: Eric Lippmann <eric.lippmann@icinga.com>
2019-07-29 10:17:59 +02:00
Johannes Meyer 9d0ef4cf33 Wrap any markdown output with a `<section>` and remove explicit containers 2019-07-23 14:45:32 +02:00
Johannes Meyer 9de9fe8f39 Introduce class RolesConfig 2019-07-23 13:53:29 +02:00
Johannes Meyer 1f0ee9b0d4 IniRepository: Fix wrong documentation for $configs 2019-07-23 13:53:29 +02:00
Johannes Meyer 40529e76ef
Merge pull request from Icinga/feature/downtime-schedule-times
Require time output for downtime schedule and end/expire times
2019-07-18 08:47:55 +02:00
Johannes Meyer fcde2a9eea dashboard: Use the non-translated versions of pane and dashlet names for storage
This is a dirty quick fix. And calling it *quick* is already an overstatement.
Of course, it's also a breaking change, as **all** non-english users need to
update their dashboard.ini after this change.

Oh, and don't dare to move this over to the new dashboards!

refs 
2019-07-18 08:33:35 +02:00
Johannes Meyer 4fdfb190ad Navigation/DashboardPane: Properly register dashlets as children
refs 
2019-07-18 08:33:35 +02:00
Johannes Meyer 37a972cf75 dashboard: Differentiate between `name` and `title`
The former is the original name while title may
be changed by the user. This change is strictly
necessary for the references bug and should also
be introduced when rewriting this mess.

refs 
2019-07-18 08:33:35 +02:00
Johannes Meyer f8d3f43965 js: Drop vendor library tipsy 2019-07-18 07:57:14 +02:00
Johannes Meyer eac3a106ad Render `<title>` tags for line and bar charts instead of tipsy titles 2019-07-18 07:57:14 +02:00
Johannes Meyer c100654412 js: Integrate vendor library jquery-migrate 2019-07-18 07:57:14 +02:00
Johannes Meyer 91e4baa221 Remove remaining special cases for IE8 2019-07-18 07:57:14 +02:00
Jennifer Mourek 07586af41f Remove IE8 & IE9 traces 2019-07-18 07:56:09 +02:00