Commit Graph

272 Commits

Author SHA1 Message Date
Thomas Gelf b54326bf5d Improve form submission, make use of serializeObject 2014-03-26 07:48:22 +00:00
Thomas Gelf 8dbf7b0729 Allow IcingaWeb to trigger a browser-side CSS reload 2014-03-26 07:41:23 +00:00
Thomas Gelf 48913767d3 Add a serializeObject jQuery funtion 2014-03-26 07:40:41 +00:00
Thomas Gelf ac90ccfd22 Activate menu search form on URL path match and ignore params 2014-03-25 12:30:05 +00:00
Thomas Gelf 36f31f9f02 Fix search form autosubmission and response handling 2014-03-25 12:13:42 +00:00
Thomas Gelf e36fb2558e Add JS helper extending url params 2014-03-25 12:11:39 +00:00
Thomas Gelf d8c758056f Fix UI controls AFTER detecting a layout change 2014-03-25 07:51:33 +00:00
Thomas Gelf ff3d351c8f Fix all ampersands before XHR-submitting a form 2014-03-25 07:44:24 +00:00
Thomas Gelf 4ce35b5b95 Delay tab dropdown disappearance 2014-03-24 09:22:20 +00:00
Thomas Gelf 01f94c574d Handle window-id requests, allowing us to identify distinct windows 2014-03-21 13:27:44 +00:00
Thomas Gelf 8a7ac587d9 Get rid of hardcoded target for action-tables 2014-03-21 10:27:46 +00:00
Thomas Gelf e8a783a44a Better JS link target detection, fix a few edge cases 2014-03-20 15:41:36 +00:00
Thomas Gelf e1de4e384a Rudimentary anchor name escaping 2014-03-20 14:07:43 +00:00
Thomas Gelf edc3deeec8 Handle anchors in links 2014-03-20 11:25:10 +00:00
Thomas Gelf 9561096f4a Take care of module JS respecting recent module container changes
* Also improves generic tree behaviour
2014-03-20 09:58:28 +00:00
Thomas Gelf 77e88b24dd Merged old bug, sorry 2014-03-17 16:34:37 +00:00
Thomas Gelf a8cecfa162 Shorten tree-specific event handler 2014-03-17 16:17:10 +00:00
Thomas Gelf e0c93d6ca7 JS cleanup
* Precedence rules: skip autorefresh if click is pending
* Clean up the attr VS data mess
* More steps towards a column-count-ignorant GUI
2014-03-17 17:10:03 +01:00
Thomas Gelf 2febbdd7d5 One more safety measure for IEs weird way of providing a JS console 2014-03-17 17:06:31 +01:00
Thomas Gelf f1f1813b04 Activate only the first match if multiple menu items carry the same URL 2014-03-12 00:44:30 +01:00
Thomas Gelf e0be89a1dc Apply history also on page load 2014-03-10 14:48:40 +00:00
Thomas Gelf 347186e282 No automagic button for autosubmitted form 2014-03-09 23:38:55 +01:00
Thomas Gelf fcd05dfe81 Improve click/site behaviour 2014-03-09 23:30:37 +01:00
Michael Friedrich 0598930b09 Fix minus null minutes again. 2014-03-09 22:27:36 +01:00
Michael Friedrich ef73bb13d3 Refactor timeUntil for negative values. 2014-03-09 22:19:05 +01:00
Thomas Gelf ee01b28646 Replace tabs with whitespaces 2014-03-09 21:16:56 +01:00
Michael Friedrich 2883fa0bd0 Fix JS Time unless counter.
There is still a small glitch with the global refresh of 10s
sometimes setting an empty string for next_check.

Try check_interval = 5s with Icinga 2.
2014-03-09 20:27:10 +01:00
Thomas Gelf bd0c36ad7a Allow to enable / disable running counters with a simple JS call 2014-03-09 18:02:12 +01:00
Thomas Gelf f31e697d72 Handle _blank and similar links in JS as 'return true' seems unreliable 2014-03-09 00:58:49 +01:00
Thomas Gelf 959967c646 Fix logout button "sometimes not working" and similar 2014-03-08 23:58:19 +01:00
Thomas Gelf a03f24b7ed Temporary fix for 1px issue with controls header on FF 2014-03-08 20:07:00 +01:00
Thomas Gelf 09e2055df4 Lower history API log level as it works fine right now 2014-03-08 18:36:15 +01:00
Thomas Gelf 485222492b Removed on noisy chatter from JS debug 2014-03-08 17:21:39 +01:00
Thomas Gelf ac0980b111 Just comments 2014-03-08 16:20:30 +01:00
Thomas Gelf 227b65558c Move link / form action target detection to one central place 2014-03-08 15:25:10 +01:00
Thomas Gelf 8de42139d3 Move layout functions to ui.js 2014-03-08 15:08:03 +01:00
Thomas Gelf 7e2d6cd5c2 ui.js indentation 2014-03-08 15:04:09 +01:00
Thomas Gelf 415193f9de Just a comment 2014-03-08 15:01:57 +01:00
Thomas Gelf 62dd827ce2 Cleanup, shorten and document the onClick event handler 2014-03-08 14:53:17 +01:00
Thomas Gelf d1c5e6da14 Sorry, no default values for JS functions 2014-03-08 12:17:56 +01:00
Thomas Gelf 71aea4dfc7 Responses with not output (container: ignore) must of course be handled in JS 2014-03-08 12:07:49 +01:00
Thomas Gelf 269b93432d Clean up button click handler on JS destroy 2014-03-07 23:39:06 +00:00
Thomas Gelf d21a356a0b Handle notifications on client side (JS) 2014-03-07 23:19:02 +00:00
Thomas Gelf d60d3d4193 Event handler for form buttons, overrides table actions etc 2014-03-07 17:12:44 +00:00
Thomas Gelf 097d3a94a4 JS "impact" handling needs improvement, first step here 2014-03-06 18:53:31 +00:00
Thomas Gelf 833bf69e6d UI: Right column cleanup on layout switch 2014-03-06 15:06:58 +00:00
Alexander Klimov 1ef5d5adaf JS hotfix 2014-03-06 13:36:27 +01:00
Alexander Klimov b410ebeed6 Remove unnecessary spaces at end of line 2014-03-06 13:08:11 +01:00
Alexander Klimov a3ce5f2e52 JS hotfix 2014-03-06 13:01:52 +01:00
Alexander Klimov d2ec3c9509 Re-design configuration interface
Conflicts:
	public/js/icinga/events.js
2014-03-06 12:32:55 +01:00
Thomas Gelf 6286e15441 HistoryColorGrid events should be "live" 2014-03-06 09:47:53 +00:00
Thomas Gelf f8540d079c Relax hardcoded link target detection, more TBD 2014-03-06 09:42:29 +00:00
Thomas Gelf 25032204ee Reorder history logic 2014-03-06 09:41:22 +00:00
Thomas Gelf 3ad869ff23 Forgot to remove obsolete line in last commit 2014-03-06 09:39:51 +00:00
Thomas Gelf 180db36e6c timeSince timer should always be on 2014-03-06 09:25:32 +00:00
Matthias Jentsch 819e7e9806 Implement Widget to display problems as matrix over time
refs #5703
2014-03-05 20:19:09 +01:00
Thomas Gelf 144a250954 Switch to jQuery 2.1. Fallback for IE8 is missing right now 2014-03-04 13:10:39 +00:00
Thomas Gelf 9a485df81a Lot's of JS changes 2014-03-04 13:08:29 +00:00
Thomas Gelf 9531dbb869 $.classes helper function 2014-03-04 13:07:28 +00:00
Thomas Gelf 090974401c Workaround for apply missing in IE console (native object vs function) 2014-03-04 13:06:12 +00:00
Thomas Gelf 927b0a7ae7 Less global stuff in helpers.js 2014-03-04 13:05:42 +00:00
Thomas Gelf 3cac42161b History API, initial implementation 2014-03-04 13:05:01 +00:00
Thomas Gelf 57caacb93f Merge branch 'feature/fanzzzy-5481' into feature/master-1
Conflicts:
	application/controllers/AuthenticationController.php
	application/controllers/ErrorController.php
	application/views/scripts/authentication/login.phtml
	library/Icinga/Application/ApplicationBootstrap.php
	library/Icinga/Web/Controller/ActionController.php
	library/Icinga/Web/Hook.php
	library/Icinga/Web/Widget/Dashboard.php
2014-03-04 09:42:25 +00:00
Eric Lippmann 07d04628cf Merge branch 'feature/installation-and-configuration-cleanup-5638'
Conflicts:
	config/config.ini.in
	library/Icinga/Application/ApplicationBootstrap.php
	library/Icinga/Application/Cli.php
	library/Icinga/Application/EmbeddedWeb.php
	library/Icinga/Application/Logger.php
	library/Icinga/Application/Modules/Manager.php
	library/Icinga/Application/Web.php
	library/Icinga/Authentication/Backend/DbUserBackend.php
	library/Icinga/Authentication/Manager.php
	library/Icinga/User/Preferences/IniStore.php
	test/php/library/Icinga/Application/LoggerTest.php
2014-03-03 19:03:39 +01:00
Thomas Gelf 1d278617ab Whatever your browser prefers, we want to unload Icinga if you leave 2014-02-21 14:05:28 +00:00
Thomas Gelf a0e6a73ecc Added sparkline support 2014-02-21 14:03:50 +00:00
Thomas Gelf f20f27927d Window unload event support for most browsers
* Also fixes "Webserver gone away" sometimes appearing on page reload
2014-02-21 14:03:50 +00:00
Thomas Gelf 072eda70c4 Better link target discovery, support _blank 2014-02-21 14:03:49 +00:00
Eric Lippmann 8f4d062cbc JS/Dashboard: Initial XHRs must not push the URL loaded to the browser's history stack 2014-02-21 14:03:49 +00:00
Thomas Gelf ed2b330843 A few JS files where missing 2014-02-21 14:03:49 +00:00
Thomas Gelf c8c580bea0 Light new JS implementation, initial commit 2014-02-21 14:03:48 +00:00
Thomas Gelf 86ede29644 Removed URI.js, we will use a lighter implementation 2014-02-21 14:03:48 +00:00
Thomas Gelf 81444bdd3a Removed freetile.js, history.js, html5shiv, scrollto, require.js, less 2014-02-21 14:03:48 +00:00
Thomas Gelf c0a740ca9e Removed legacy icinga JS 2014-02-21 14:03:48 +00:00
Thomas Gelf a38a126d42 imagesLoaded is not used 2014-02-21 14:03:48 +00:00
Thomas Gelf d33473134f Removed modernizr 2014-02-21 14:03:48 +00:00
Thomas Gelf 88c172b33a We no longer need bootstrap 2014-02-21 14:03:48 +00:00
Matthias Jentsch a2baf4217b Add php script to render dynamic svgs of inline charts
Add a php script to render dynamic SVGs as a fallback and add a widget to draw
inline charts.

refs #5679
2014-02-19 18:29:59 +01:00
Markus Frosch 971a87c608 Fixed executable flags on normal files.
Refs #5040
2014-02-18 09:42:13 +01:00
Alexander Klimov 2ecf1a99a6 Show load indicator after 500 ms
fixes #5540
2014-02-03 11:10:36 +01:00
Johannes Meyer 1b5b26c2bb Add window awareness
refs #5510
2014-01-24 14:44:19 +01:00
Alexander Klimov db22945f1e Add close button to details
resolves #4925
2014-01-23 17:09:46 +01:00
Alexander Klimov 5ff081d683 Deselect tr only when ctrl key pressed 2014-01-23 16:42:04 +01:00
Eric Lippmann 2242973568 XHR: Force redirect to login if session is expired
resolves #5507
2014-01-23 16:03:47 +01:00
Eric Lippmann bbe018567f Dashboard: Render exceptions on failing requests
refs #5507
2014-01-22 14:58:23 +01:00
Eric Lippmann d853c9417c Remove respond.min.js since its no longer used 2013-10-29 15:28:04 +01:00
Jannis Moßhammer 275275f29e Fix inline commands 2013-10-23 15:11:25 +02:00
Eric Lippmann ca1d50ae53 Rename Icinga 2 Web to Icinga Web 2 2013-10-23 15:11:06 +02:00
Jannis Moßhammer aa5fb1d8cf Fix remove downtime 2013-10-23 14:34:20 +02:00
Jannis Moßhammer 1a95e48deb Fix row style, add dashboard as default route 2013-10-23 14:20:32 +02:00
Jannis Moßhammer 8eea09ab53 Add default dashboard, fix componentLoader issue introduced before 2013-10-23 13:06:09 +02:00
Jannis Moßhammer b616b652bc Fix container error message, prevent components from being loaded twice 2013-10-23 11:17:31 +02:00
Matthias Jentsch e0aae9d14b Cancel the pending request when loading a new container element
fixes #4947
2013-10-23 09:43:57 +02:00
Matthias Jentsch eaa3c81f7a Fix bug that caused the detail view to stay open, even when nothing was selected
fixes #4749
2013-10-22 17:06:05 +02:00
Jannis Moßhammer f7c0eaa7c4 Fix/Reimplement dashboard
refs #4532
2013-10-22 12:10:12 +02:00
Jannis Moßhammer cc5fa0a7b4 Fix suburls in grids not being recognized 2013-10-21 17:57:29 +02:00
Jannis Moßhammer c4f3e78c02 Fix filter behaviour, fix statusdat filter
refs #4469
2013-10-21 17:04:39 +02:00
Marius Hein 1a73747740 Implement bootstrap datepicker
refs #4929
2013-10-21 11:32:24 +02:00
Marius Hein a49691068e Add datepicker
refs #4929
2013-10-21 10:32:53 +02:00
Jannis Moßhammer f3bbf09bae Status.dat query fixes and documentation after rebase
refs #3801
2013-10-20 15:16:44 +02:00
Marius Hein 5a1a738ce7 Add form to configure objects
refs #4924
2013-10-20 13:15:11 +02:00
Marius Hein 53ab6dbbf1 Implement global command toggle form in process view
refs #4918
2013-10-19 15:28:51 +02:00
Matthias Jentsch 3f48a29c05 Fix problems caused by rebasing
refs #3788
2013-10-18 16:44:03 +02:00
Matthias Jentsch 9cba03b017 Add actual links and buttons to the multi-views
refs #3788
2013-10-18 16:44:03 +02:00
Matthias Jentsch 4133d0093d Add support for different selection modes, using a data attribute in the mainDetailGrid
Add code to handle single, multi and no selection. Add the class 'hover' to
table rows, that are selectable to indicate when a row is selectable.

refs #3788
2013-10-18 16:44:03 +02:00
Matthias Jentsch 8c416a51ce Add views and behaviour to MultiController
Add views for every possible action, fix some bugs in the JavaScript multi selection,
make selection hrefs in the list controllers unique to be able to handle the selection
properly

refs #3788
2013-10-18 16:44:02 +02:00
Matthias Jentsch b911e8c56b Add multi-object detail views
Add the controller to handle requests to the multi-detail view and fix some
bugs in the multiselection of the mainDetailGrid component

refs #3788
2013-10-18 16:44:02 +02:00
Matthias Jentsch a96331b4d6 Add support for multi-selection
Add classes to handle multi-row selection using the CTRL-Key and to
create the link for the selected query.

refs #3788
2013-10-18 16:44:02 +02:00
Jannis Moßhammer 4a95ba3468 Change url handling to detail on hashtag, add service filter
The url is now
http://%mainUrl%#%anchor%!detail=%detailUrl%
which allows us to better support IE and prevents
the detail url from appearing on the server side.

refs #4868
2013-10-17 19:55:00 +02:00
Jannis Moßhammer d33cec78de Semantic search implementation
- Only implemented for hosts as an example
- URL behaviour still has to be normalized

refs #4469
2013-10-17 19:52:52 +02:00
Jannis Moßhammer 24da98be83 Implement base filter library and tests
refs #4469
2013-10-17 19:52:25 +02:00
Marius Hein d0fe1be7f7 Add command form helper for buttons with icons or labels
refs #4869
2013-10-15 18:10:36 +02:00
Marius Hein a69c7498ec Style comments, cowntimes, properties, flags in detail pane [WIP]
refs #4869
2013-10-15 18:10:36 +02:00
Marius Hein f011b56911 Bugfix: Non existing function
refs #4400
2013-10-14 13:03:24 +02:00
Jannis Moßhammer 8aea2f4d3c Close detail on main pagination
refs #4823
2013-10-14 12:57:26 +02:00
Jannis Moßhammer 549c5d7390 Fix detail being added twice to URLs on updateContainerHref
This was caused by an redudant call to updateContainerHref in mainDetailGrid

refs #4823
2013-10-14 12:57:26 +02:00
Eric Lippmann c67ef17e86 js/link target: Replace detail container from url when the a tag's data-icinga-target attribute is set to 'detail'
refs #4823
2013-10-14 12:57:25 +02:00
Marius Hein 73ed141a5e Fix: Allow errors in body to be replaced
fixes #4736
2013-10-09 17:27:47 +02:00
Marius Hein 53d2e34e23 Finish comment view
refs #4714
2013-10-09 09:35:32 +02:00
Marius Hein d109f370cd ellipsisText: Implement ellipsis component for text content
Use by comment overview.

refs #4714
2013-10-09 09:35:32 +02:00
Eric Lippmann e9292199e7 Temporary: mainDetail: Don't trap clickable links, only rowselect loads detail
refs #4663
2013-10-09 09:20:17 +02:00
Marius Hein 571351e342 Cleanup unused js fragments for load indicator
refs #4400
2013-10-04 15:32:39 +02:00
Marius Hein 1db06637be Add frontend test for load indicator
refs #4400
2013-10-04 15:32:38 +02:00
Marius Hein 16dd53e798 Implement container load mask
refs #4400
2013-10-04 15:32:38 +02:00
Jannis Moßhammer aa110ef9fe Fix pagination in main-detail
refs #4611
2013-09-23 13:56:59 +02:00
Jannis Moßhammer 3e195501ac Fixed issues with click targets
refs #4611
2013-09-23 13:56:59 +02:00
Jannis Moßhammer 376dc8cd0f Document form and container behaviour and simplify
Now the whole page gets refreshed on container changes, if
we encounter issues with that we can improve it afterwards
or roll back some cahnges already made in previous commits

refs #4611
2013-09-23 13:56:59 +02:00
Jannis Moßhammer f596f72169 Add URI component
Great library for Url manipulation, see http://medialize.github.io/URI.js/
MIT and GPLv3 License

refs #4611
2013-09-23 13:55:49 +02:00
Jannis Moßhammer e6b3a54e90 Add/modify JavaScript components for main/detail and their tests
This commit introduces the following changes (although they are not
implemented in the templates, this follows):
- links in the top and navigation bar are loaded in the background
- generic main/detail container component handling click/load delegation
- mainDetailGrid implementation handling selection and render targets
- Generic history implementation handling URI change detection and reloading

refs #4611
2013-09-23 13:55:49 +02:00
Jannis Moßhammer 57e66c247a Add sort widget, change js path from module to app, small style fixes
refs #4601
2013-09-04 15:22:00 +02:00
Marius Hein 6c59d2cf40 Fix icinga js license header
refs #4622
2013-09-02 10:59:05 +02:00
Jannis Moßhammer 6db96bfb8f CS Fixes: form.js License, comments and deprecated bind()
refs #4622
2013-09-02 10:59:05 +02:00
Jannis Moßhammer c5fde2324e Generalize form handling in Icinga\Web Form & Tests
configForm.js is now form.js and applied on all forms,
the autosubmit is now a special attribute for input fields,
so the PHP code doesn't create JS snippets anymore

refs #4622
2013-09-02 10:59:05 +02:00
Jannis Moßhammer 978b3519f6 Add configform js component (will be renamed later)
refs #4622
2013-09-02 10:59:05 +02:00
Jannis Moßhammer 3a19cf8543 Reorganize and cleanup js files, add bootstrap 3
refs #4550
2013-08-23 10:27:16 +02:00
Matthias Jentsch a66934e41d Remove scripts that are no longer needed
refs #4456
2013-08-21 09:40:32 +02:00
Matthias Jentsch 7353797147 Add server-side logging when not existing components are required and fix code style issues
refs #4456
2013-08-21 09:40:32 +02:00
Matthias Jentsch 889abf55eb Fix a bug in the component loader that caused components to be loaded multiple times
refs # 4456
2013-08-21 09:40:32 +02:00
Matthias Jentsch 5e663846a5 Remove old module loader
Remove old (now-unusable) module loader and components and corresponding unit
tests. Give the component loader and the component registry more meaningful names.

refs #4456
2013-08-21 09:40:32 +02:00
Matthias Jentsch 52c66893ab Add new component loader to load frontend-components
Add a component loader that finds components by searching for elements with the
"data-icinga-component" attribute and loads the corresponding JavaScript file
from the backend to render the component.

refs #4456
2013-08-21 09:40:31 +02:00
Jannis Moßhammer 0b479e3796 Code style fixes, fix documentation, fix tab parameters not being overwritten
refs #4512
2013-08-16 15:08:28 +02:00
Jannis Moßhammer be29b8ff8f Make ConfigController and PreferenceController extensible by convention
- Rename ConfigurationController to ConfigController
- ConfigController and PreferenceController are now subclasses of
  BaseConfigController and BasePreferenceController
- Module and Application Config/Preference Tabs are detected via
  the ControllerTabCollector
- Moved Controller classes to Icinga/Web/Controller (this is why
  so many files are modified)

refs #4530
2013-08-14 16:08:15 +02:00
Johannes Meyer 94ea09b552 Remove Date and Time form elements
Drops the Date and Time form element as they are redundant.

refs #4440
2013-08-12 16:43:08 +02:00
Eric Lippmann c0e3712e1b Framework/Elements: Implement DateTime form element
refs #4440
2013-08-12 16:42:51 +02:00
Jannis Moßhammer f8bb478f0e Update dashboard implementation
fix javascript naming (icinga-url to icingaurl), fix add form, add remove
button, code style changes

refs #4192
2013-08-07 17:43:37 +02:00
Johannes Meyer 4b8643dc56 Add a date and time form-element.
Added a date and time form-element which are implemented based on the
new "date" and "time" input-types introduced with html5. If those are not
available two bootstrap javascript-modules will be enabled.

refs #4355
2013-07-23 14:46:24 +02:00
Jannis Moßhammer e0f0e1fc13 Fix history api URI encoding
The history API encoded components multiple times, e.g. causing a [ to
be converted to %5B in the first link, then to %255B on the second link,
%25255B on the third, etc.

refs #4408
2013-07-15 13:03:12 +02:00
Jannis Moßhammer 79a4ee1804 Remove console.log as this breaks tests 2013-06-27 11:25:19 +02:00
Jannis Moßhammer d71d15c822 Merge branch 'master' of ssh://git.icinga.org/icinga2-web into feature/history-api-4303
Conflicts:
	public/js/icinga/components/actionTable.js
	public/js/icinga/components/mainDetail.js
	public/js/icinga/container.js
	public/js/icinga/util/async.js
2013-06-27 10:20:46 +02:00
Jannis Moßhammer d1f4e9831a Fix empty module folder causing errors, fix var naming
Fix a wrongly named class causing ClassNotFound issues,
also added additional checks for empty module folder and
added en moduleFolder directive to configure module location

refs #4092
2013-06-26 16:41:07 +02:00