Commit Graph

226 Commits

Author SHA1 Message Date
Thomas Gelf a79f786546 JS/loader: add icon cache prototype
Just playing around, I'm still unsure whether this really helps. The
motivation behind this patch are icons loaded again after not being
displayed for a little while.

Remains disabled unless we know whether and for which scenarios
(cache disabled, HTTPS...) this really helps.
2014-06-20 16:18:10 +02:00
Thomas Gelf 06a8803242 JS/loader: add failed requests to history
It's confusing if they are handled differently
2014-06-20 16:16:04 +02:00
Thomas Gelf 916c9c027e forms: fix isSubmitted
Implementation made wrong assumptions. A form is submitted when the
submit button has been pressed. It's value is then filled, it also
is when you're just pressing "RETURN". RETURN triggers the FIRST
submit button in a form. This way we are also able to find out which
form button has been pressed.

Current implementation is still poor, however isSubmitted works as
expected right now - and so does autosubmission.

fixes #5967
2014-06-20 14:32:22 +02:00
Thomas Gelf 834a73f926 JS/ui: fix "running" timesince/timeuntil
Broken got this by better English ;)
2014-06-20 13:54:16 +02:00
Thomas Gelf bd57f8f02a JS/loader: don't autorefresh while editing
We would loose our focus if autorefresh takes place. So we don't render
the new content in case a form field in the very same container carries
the focus. It would be great to have a better solution one far day, but
for now it plays fine like this.
2014-06-20 13:52:05 +02:00
Thomas Gelf 76219b025b js/events: multiple multiselect fixes
* Removed obsolete checks (event is only triggered for multiselect tables)
* allows deselecting last row, closing "detail view"
* fix bug when unselecting one of two rows, it used to keep the wrong one
* play nice with other involved non-row-level links
2014-06-20 13:43:18 +02:00
Thomas Gelf f98d8f7fc5 JS/ui: create new simple filter URLs 2014-06-20 13:40:41 +02:00
Thomas Gelf 68a90b8de8 JS/ui: separate closeContainer logic 2014-06-20 13:33:19 +02:00
Thomas Gelf 28c61c2595 JS/XHR: last commit was missing the JS part 2014-06-20 13:22:53 +02:00
Thomas Gelf b7cdff6fa5 js/history: do not remove special params
We used to do this to blacklist certain parameters to not trigger
heavvy actions twice when navigating through history. We also do
never want to see such parameters in our address bar.

This conflicts with our slightly more complicated new filter URLs,
unless we are able to handle them on client side this is disabled
for now. IMO it should be handled server-side and eventually invol-
ving one more redirect.
2014-06-17 14:21:28 +00:00
Thomas Gelf c3eae11624 JS/IE8: fix IE8 error caused by focus()
No more error when using the jQuery wrapper. Focus handling is pretty
outdated, needs special care as soon as we have auto-refreshing search
fields.
2014-06-12 17:22:17 +00:00
Marius Hein 06296f29d8 UI/Sparklines: Change sparkline code to serverside only
fixes #6124
2014-06-06 16:35:33 +02:00
Marius Hein 4587f26476 Revert "Ui/Sparklines: Remove img src before putting it into DOM"
This reverts commit a75796c64d.
2014-06-06 14:41:57 +02:00
Marius Hein a75796c64d Ui/Sparklines: Remove img src before putting it into DOM
SVG chart was fetched although we removed image tags
from DOM. This happens when text is converted into
browser DOM model to use with javascript. Small
regex remove img source attribute to avoid using
network bandwidth for unknown resources.

fixes #6124
2014-06-06 13:58:01 +02:00
Thomas Gelf ba87cc5c4a IE8/JS: some more console logging fixes
refs #6417
2014-06-06 05:23:57 +00:00
Thomas Gelf 2bf58b034b JS/cleanup: separate redirect header handling 2014-06-05 19:37:12 +00:00
Thomas Gelf 4646b74fbc JS/cleanup: start to clean up response handling
First step: get rid of the messy workaround for the problem that
notifications got lost once the whole body is re-rendered. This
should be solved either on server side or by detaching and re-
attaching existing notifications in such scenario.
2014-06-05 18:52:03 +00:00
Thomas Gelf 2d228ce83d JS for IE8: even more JS fixes
refs #6417
2014-06-05 18:11:19 +00:00
Thomas Gelf ca6b373be2 JS: fix multiselect burning resources
Especially on browsers with slow JS like IE8 iterating again and again
over all rows used to harm response rendering. Immagine a dasboard with
a total of a few hundred rows refreshing every 10 seconds while taking
3 secs to render one dashlet... it's far better right now.

refs #6417
2014-06-05 15:16:03 +00:00
Thomas Gelf 6d321d67cd JS/CSS: Get IE8 working
Just a bunch of JS and CSS improvements / fixes

refs #6417
2014-06-05 15:03:59 +00:00
Thomas Gelf 11b4661b46 js/history: fix history on initial page
There is a workaround for a nasty Chrome missbehaviour, however I have
no longer been able to reproduce it. Temporarily disabled the workaround,
could you please try whether behaviour is better / correct like this?

Please also check for requests firing twice on initial page load.

refs #6277
2014-06-05 03:40:43 +00:00
Thomas Gelf 99aae5a0d9 JS/XHR: get ready to get XHR redirect-aware
These are just the first steps, there is more to come
2014-06-05 03:37:36 +00:00
Thomas Gelf f767fb2de3 js/ui: rename timeunless to timeuntil
CSS filter adjusted to fit recent changes

refs #5981
2014-05-29 11:09:52 +00:00
Gunnar Beutner d01a98b7e6 Fix some of the time-related grammar mistakes
This updates some of the messages to use "For"
instead of "Since" where appropriate.

fixes #5981
2014-05-29 11:30:08 +02:00
Thomas Gelf e7e7ae72ba Encoding: decode encoded titles
Related to the last commit, forgot to decode titles
2014-05-28 21:39:34 +00:00
Thomas Gelf 88460189cd Encoding: no ASCII chars > 127 in HTTP headers
Had quite some trouble with this, decided to URL-encode titles and
notifications.
2014-05-28 21:34:36 +00:00
Thomas Gelf cf6f1f8bf4 icinga/loader.js: play nice with invalid responses
Even responses with no HTML or no root node or similar must be rendered
successfully to their containers.
2014-05-28 15:59:42 +00:00
Thomas Gelf 886c8b1231 js/notifications: fixed target=ignore notification
Ongoing error handling cleanup silently dropped notifications for
requests with "invalid" target (e.g. commands not redirecting after
submission - they should not exist, but they do).

This is redundant code, but that's ok for now - response handling will
be restructured.

fixes #6327
refs #6280
2014-05-27 10:54:44 +00:00
Thomas Gelf 70ba36aad6 notifications: improve client- and serverside
This is just a first step, trying to catch a few gotchas:

* it doesn't send notifications to the browser when issueing a redirect
  as redirects can currently not be catched in jQuery response handlers
* it tries to find a better notification handling place in the response
  handler (JS) - still imperfect
* it explicitely stores sessions once modified by notifications. Still
  need to crosscheck whether this is really needed and how we can get
  rid of this.

refs #6280
2014-05-26 14:41:47 +00:00
Thomas Gelf ce220c5ea7 sidebar/menu: menu should be scrollable
This allows us to scroll menus not fitting into available screen height.
Plays nice with menu hovering, however once you scroll down your menu
you'll temporarily disable the hover-menu-feature.

fixes #6283
2014-05-26 08:18:47 +00:00
Thomas Gelf f32eab627a js/forms: treat buttons like input-buttons
This fixes a few autosubmission-detection woes.
2014-05-20 23:55:18 +00:00
Thomas Gelf 194914917a js/events: initialize only existing search field
Formlerly JS failed on layouts without menu, should be fixed now.
2014-05-20 21:55:32 +00:00
Thomas Gelf ad91c420a0 js/loader + css: highlight containers loading slow
I missused the "impact" CSS class for this as it perfectly fit's this
use case. A container loading slow IS an impact. Added CSS transitions,
this way it feels better on modern browsers. The longer it takes to
load a page the darker will get it's background.
2014-05-20 14:58:58 +00:00
Thomas Gelf de0b97b4ca js/events: improve search field change detection
This used to be nasty since "search" is the field with the initial
focus. Right now we detect "real" changes, this might be implemented
in a more generic way for all autocompleting fields later on.
2014-05-20 14:07:19 +00:00
Thomas Gelf 67144407e6 js/events: do temporarily not respect tab focus
This has been added for keyboard navigation but caused some trouble.
Postponed for now.
2014-05-20 14:05:30 +00:00
Thomas Gelf 79d3f18b66 js/ui: remove hardcoded/duplicated with/height 2014-05-20 14:03:33 +00:00
Thomas Gelf 03e8ba88e4 Restore click behaviour for table links and rows
Multiselect handlers should influence only multiselect tables. Still
unhappy with current behaviour, but links should work fine right now.

refs #6162
2014-05-09 14:53:34 +00:00
Thomas Gelf cf82ac68cc Improve console log message on errors like 404
Former '404 Not found' plus weird HTML snippet is now: '404 Not Found:
 Page not found. Enabling the "bpapp" module might help!'
2014-05-09 12:08:38 +00:00
Thomas Gelf 19220a5a44 Initial "click" handling for dropdown tabs
Still uncomplete, there are a number of edge cases that need to be
handled. Keyboard navigation is one of them, hover/click distinction
is another one.

refs #6167
2014-05-09 11:49:15 +00:00
Thomas Gelf 23679c0078 Completely ignore remote links
There are no issues with "returning true" so this should be the
preferred way. No need to fall back on "window.open" here.

fixes #6159
2014-05-09 11:41:18 +00:00
Thomas Gelf e70ca26427 Detect and handle remote links
Currently they trigger XHR requests if not given a special target.

fixes #6159
2014-05-09 11:04:00 +00:00
Thomas Gelf 2a28e60bb7 Do not change browser title on autorefresh
fixes #6168
2014-05-09 10:13:49 +00:00
Matthias Jentsch d0c56126b8 Fix inline pie reload.
refs #6124
2014-05-07 17:03:27 +02:00
Johannes Meyer c711e3405d Fix cli default log configuration and js-loader debug message 2014-05-05 16:17:21 +02:00
Johannes Meyer 08260866df Fix navigating by anchor results in an empty detail view being opened
fixes #5871
2014-04-28 16:06:03 +02:00
Matthias Jentsch 661dbea740 Fix query that finds the nearest container of a table row and stores it. 2014-04-28 09:48:06 +02:00
Matthias Jentsch c641988233 Preserve multiselection during refresh
refs #5765
2014-04-28 09:48:06 +02:00
Matthias Jentsch b791883fa8 Fix configuration checkboxes and colors in piecharts
refs #5765
2014-04-28 09:48:06 +02:00
Matthias Jentsch b16c6efa05 Add PieChart to display hosts and services, improve layout and fix flag
checkboxes

refs #5765
2014-04-28 09:48:06 +02:00
Matthias Jentsch 081b5072a6 Fix layout of MultiController views
refs #5765
2014-04-28 09:48:06 +02:00