Commit Graph
161 Commits
Author SHA1 Message Date
Andrew DeMaria 666bc66ec8 Merge remote-tracking branch 'origin/pr/1313' 2019-10-14 21:38:45 -06:00
Evan Harris 06f81f8b97 Added separate user icon from logout icon
Fixes #1305 and improves navigation.
2019-10-12 00:45:25 -05:00
François-Xavier Thomas 6b2c7e338d Remove white underline from player controls 2019-10-12 01:03:51 +02:00
François-Xavier Thomas 09808b170e Update dark icons for the 'groove' theme 2019-10-12 00:49:09 +02:00
Evan Harris 6783ced897 Removed inability to change roles for admin user 2019-10-08 06:38:57 -05:00
jvoisin 1a7bb68dc6 Remove a leftover of the Radexo removal
This is a followup of 85e0e08d9a
2019-10-07 17:11:42 +02:00
jvoisinandAndrew DeMaria 85e0e08d9a Remove radeox
Radeox is a rendering engine for an unspecified markup.
Its [website](http://radeox.org/) is dead, the website
of its [authors](http://www.codehaus.org/) is dead too,
its [last commit](https://github.com/codehaus/radeox) was 13 years ago.

It's only used for the welcome and login messages,
as well as comments from users. If we want to have some markup parsing,
we should use something maintained with autoescaping guarantees,
instead of a piece of zombie code prone to $DEITY knows what injections.

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 16:02:46 -06:00
Evan HarrisandAndrew DeMaria 90e6c77563 Fix incorrect absolute paths in css
Fixes #1256

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 15:55:19 -06:00
Andrew DeMaria 776bb2cfef Switch to newer modelAttribute
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-10-06 15:45:32 -06:00
Evan Harris 2fa584f81d Merge branch 'origin/pr/1244' 2019-10-02 01:24:51 -05:00
Andrew V. Louisandjvoisin 45c6893f16 Making textareas vertical-align middle allows them to align with adjacent imgs.
Signed-off-by: Andrew V. Louis
2019-10-01 19:13:30 +00:00
jvoisin 5593275a5a Fix the CSS for groove_simple
Previously, the css pointed to a non-existent
file path for the background.
2019-09-30 23:05:07 +02:00
François-Xavier ThomasandGitHub 2b73a82a88 Merge pull request #1254 from fxthomas/1160-fix-mejs-race-condition
Fix remaining race condition in media playback
2019-09-28 16:05:06 +02:00
François-Xavier Thomas 40ef5501ea Fix race condition in MediaElement.js (#685, #1160)
This commit is hopefully the final fix on Airsonic's side for #685.  It
also fixes #1160, which was caused by temporary workarounds introduced
in #1080 while we were looking for a solution.

The root cause of the issue is the fact that, when we go to the next
track in an Airsonic play queue, we change the media source in the
`ended` event.

In MEJS, this translates as the following two things:

* In Airsonic's 'ended' event, we change the media source (set the `src`
  attribute) and call the `load()` method, followed by the `play()`
  method.

* The 'ended' event was also used internally by the MEJS player, and
  one of these internal uses called the `pause()` method (presumably in
  order to make sure that playback was stopped on some media renderers).

Unfortunately, the order in which these events are called depends (in
all modern browsers) on the order in which they are registered.

In our case, the first one is registered inside the `<body>` tag, but
the second one is registered with `$(document).ready(...)`. This means
that the first event handler is called before the second.

This means that, in some cases (when we're unlucky, hence the seemingly
random nature of the bug), `pause()` is called after `load()`
but before the media has finished loading.

Apparently, this causes the `AbortError: The fetching process for the
media resource was aborted by the user agent at the user's request.`
message to appear (which indicates exactly what's described in the last
paragraph), and the playback of the next song is aborted.
2019-09-22 18:48:21 +02:00
Evan Harris 117e8c7fd1 Improve transcoder info text and formatting 2019-09-20 03:59:14 -05:00
jvoisin 53d835e6ed Make the logout icon/image cliquable
This should close #1178
2019-09-19 20:49:45 +02:00
jvoisin d256386cbb Use titles in some <img> tags 2019-07-22 22:49:11 +02:00
jvoisinandAndrew DeMaria e9ea61036f First pass of CSP-compliance for mousetrap
Since the preference for the keyboard shortcuts
is set server-side, I had to shove them into a non-javascript
context, and then access them via javascript,
in a separate file.

Since I'm not a javascript expert, I'm more than open
to alternatives if this isn't the right way™ to do it.
2019-07-14 11:46:28 -06:00
Andrew DeMaria 3d0d0482f5 Merge remote-tracking branch 'origin/pr/985' 2019-07-03 19:22:17 -06:00
François-Xavier Thomas 86510a4d42 Use the clear action to stop the internet radio 2019-07-02 23:00:03 +02:00
François-Xavier Thomas 9ff5536d9b Do not try to load radio playlists in the browser when clicking on a radio 2019-07-02 23:00:03 +02:00
François-Xavier Thomas afa037611d Show an error is an internet radio has no sources to load 2019-07-02 23:00:03 +02:00
François-Xavier Thomas 5cb9b6c029 Hide play queue actions while playing internet radios 2019-07-02 23:00:01 +02:00
François-Xavier Thomas 02d373d9ec Play internet radios in MediaElement (fix #408)
This allows the user to control playback for the internet radios, which
were previously started outside of the main player without any
possibility for direct control.
2019-07-02 22:25:19 +02:00
François-Xavier Thomas 2e0134259d Try to show a progress bar in the media player
This commit is kind of a hack to force MediaElement.js to show a
progress bar when we are loading a song.

Normally, in vanilla HTML5 MediaElement, we'd explicitely call 'play()'
when loading a song. Here, we cannot ensure playback will work well if
we don't wait for the 'canplay' event to be fired, but the progress bar
won't show up without 'play()'...

This commit emits a fake 'waiting' event to let the MEJS know that it
should update the UI.
2019-07-02 22:23:01 +02:00
François-Xavier Thomas 5a72322772 Work around play queue not going to the next song automatically
This commit works around a race caused by some of our JS code trying to
run play() for the next song while the MEJS player is still cleaning up
the last song.

MEJS issue: https://github.com/mediaelement/mediaelement/issues/2650
2019-07-02 22:21:30 +02:00
Andrew DeMaria a9b4d481c3 Merge remote-tracking branch 'origin/pr/1129' 2019-07-01 21:14:11 -06:00
Andrew DeMaria 2bfaea2e22 Merge remote-tracking branch 'origin/pr/1090' 2019-07-01 20:45:48 -06:00
Evan Harris 983d688cce Added validation to reject things disallowed on the current user 2019-06-27 00:26:10 -05:00
Evan Harris a4c62f6860 Disallow deleting your own user or removing admin role 2019-06-26 21:17:56 -05:00
Andrew DeMaria f8bd580fb7 Revert "Replace wz_tooltip.js with jquery-ui" and Revert "Fix #1112"
This reverts commit 50467942c8.
This reverts commit 195a0879c3.

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-06-26 17:16:34 -06:00
Andrew DeMaria 50467942c8 Fix #1112 2019-06-26 16:18:16 -06:00
Andrew DeMaria cf5a43d327 Merge remote-tracking branch 'origin/pr/1134' 2019-06-26 12:50:48 -06:00
Evan Harris 79b800656a Cleanup siebling -> sibling mis-spellings 2019-06-24 20:59:04 -05:00
jvoisinandGitHub cdc38cb88d Use SVG for the icons for the default_light theme 2019-06-19 23:25:05 +00:00
jvoisin 9bd2c1e83f Fix various minor javascript-related warnings 2019-06-15 17:27:03 +02:00
jvoisin 8f4e351718 Add an alt attribute to images, to increase accessibility 2019-06-15 17:06:25 +02:00
Andrew DeMaria 57dea9598e Merge remote-tracking branch 'origin/pr/1118' 2019-06-14 11:54:54 -06:00
Andrew DeMaria 2b178c4117 Merge remote-tracking branch 'origin/pr/1120' 2019-06-14 11:52:46 -06:00
jvoisin fc43364908 Fix a useless double-assignation 2019-06-12 00:21:06 +02:00
jvoisin 70bc0f6c04 Remove the ghetto REST flash-based video player 2019-06-12 00:09:02 +02:00
Andrew DeMaria e646077957 Merge remote-tracking branch 'origin/pr/1097' 2019-06-10 22:50:00 -06:00
jvoisin e0ac46cf44 Fix 3 minor errors in jsp files
- Add a missing `$` in dlnaSettings
- Add a missing taglib import in homePage.jsp
- Add a missing `=` in playQueue.jsp's css
2019-06-08 15:29:46 +02:00
jvoisin 40f7c73390 Fix the video player that was broken in cf1f86f 2019-06-08 00:54:55 +02:00
Schuyler Eldridge 89a4517f64 Show cover art not displaying on chromecast
Signed-off-by: Schuyler Eldridge <schuyler.eldridge@gmail.com>
2019-06-05 00:01:21 -04:00
jvoisinandGitHub 4f59c72bbe Replace wz_tooltip.js with jquery-ui 2019-06-04 22:27:47 +00:00
jvoisinandGitHub 6aa96911de Replace FancyZoom with jquery.fancyzoom 2019-06-04 22:13:07 +00:00
jvoisinandGitHub 24632317b2 Declare the usage of HTML5 in the doctype
This should marginally increase the performances
and jquery (no more quirks mode), as well
as making web browsers happier.
2019-06-04 21:04:59 +00:00
jvoisin 01dd070efa Fix indentation 2019-05-30 00:49:35 +02:00
jvoisin 195a0879c3 Replace wz_tooltip.js with jquery-ui
Since we're already using jquery-ui for other stuff, it makes sense to use it
for tooltips too, instead of using an old-school-written-in-2009 1300 lines
  steaming pile of javascript named wz_tooltip.js
2019-05-29 23:39:25 +02:00