Buster "Silver Eagle" Neece
5a5bc0e367
Update NowPlaying library.
2021-04-11 17:33:51 -05:00
Buster "Silver Eagle" Neece
b2ae1da573
#3963 -- Allow disabling remote ISRC fetching.
2021-04-06 14:36:07 -05:00
Mitch
168327fdc8
Update backup_run.php ( #3976 )
2021-04-05 20:02:01 -05:00
Buster "Silver Eagle" Neece
3419e58d83
Make daily average/unique listeners start zoomed in (and then be pannable for older data).
2021-03-31 00:36:35 -05:00
Buster "Silver Eagle" Neece
08ba636bbe
Add Libravatar, make avatar services configurable.
2021-03-24 22:21:53 -05:00
Buster "Silver Eagle" Neece
da50621f91
Revert font changes; implement play/stop change in old Material font.
2021-03-21 10:26:23 -05:00
Buster "Silver Eagle" Neece
06384b7f4a
Create `/api/frontend/account/me` endpoints.
2021-03-21 03:30:48 -05:00
Buster "Silver Eagle" Neece
68b971a571
Icon changes
...
- Switch to two-tone Material icon library
- Implement shared Vue common icon component
- Switch instances of "pause" to "stop"
2021-03-19 08:30:50 -05:00
Buster "Silver Eagle" Neece
d7c51ea00f
Add history embed and simplify vue rendering in templates.
2021-03-17 02:20:12 -05:00
Buster "Silver Eagle" Neece
a79e00c1c4
Vue component reorganization
...
Put components into folders related to their section of the site (with the same paths as the controllers/route names).
2021-03-16 07:25:29 -05:00
Buster "Silver Eagle" Neece
91c73de176
Add API endpoint and frontend modal to view playlist's AutoDJ queue.
2021-03-08 07:20:54 -06:00
Buster "Silver Eagle" Neece
f0c91ba563
Split playlist actions into standalone files.
2021-03-07 02:00:37 -06:00
Buster "Silver Eagle" Neece
ace826dae5
Add e-mail webhook.
2021-03-06 03:27:55 -06:00
Buster "Silver Eagle" Neece
34b075ba50
Add new webhook and API response for online/offline stations.
2021-02-28 17:28:17 -06:00
Buster "Silver Eagle" Neece
489511ba4a
Improve usability of zxcvbn password strength meter.
2021-02-27 21:27:40 -06:00
Buster "Silver Eagle" Neece
c24f5dfc69
Implement SMTP Mail Delivery and Self-Service Password Reset ( #3848 )
2021-02-27 20:50:45 -06:00
Buster "Silver Eagle" Neece
72cc75b8c6
Improve verbosity of sync task logging.
2021-02-21 22:19:02 -06:00
Buster "Silver Eagle" Neece
ec2ec899d8
Update links across application to point to new documentation.
2021-02-15 15:36:34 -06:00
Buster "Silver Eagle" Neece
85e9905af8
Make Station Queue view a Vue component.
2021-02-09 13:57:25 -06:00
Buster "Silver Eagle" Neece
0c390bd13d
#3733 -- Simplify webhook dispatch and add rate-limiting.
2021-02-04 15:47:08 -06:00
Buster "Silver Eagle" Neece
cabeeb5cc0
Move "Enable Advanced Settings" to DB and make it actually work.
2021-02-02 22:17:57 -06:00
Buster "Silver Eagle" Neece
f134d45cf0
Listener tracking improvements
...
- Add the mount/remote that a listener is connected to, and show it in reports
- Create a new Google Analytics webhook that will post live listeners to GA using the measurement protocol.
2021-01-27 11:42:54 -06:00
Buster "Silver Eagle" Neece
64423a7097
Unify env var names on Ansible installs with their Docker counterparts.
2021-01-21 13:32:47 -06:00
Buster "Silver Eagle" Neece
4ccddeb5f3
Refactor adapters; move some static functions to be non-static and implement a better change tracking system.
2021-01-19 11:52:45 -06:00
Buster "Silver Eagle" Neece
686f480d7c
Add Support for Remote Album Art on APIs and Media Uploads ( #3680 )
2021-01-18 23:44:15 -06:00
Buster "Silver Eagle" Neece
db6a9043f9
Add new "azuracast:debug:optimize-tables" CLI command.
2021-01-13 02:00:39 -06:00
Buster "Silver Eagle" Neece
8f4ba82c58
Add fancybox back to media manager.
2021-01-11 20:57:03 -06:00
Buster "Silver Eagle" Neece
7441d13472
Refactor Acl to be part of the request lifecycle.
2021-01-11 05:08:06 -06:00
Buster "Silver Eagle" Neece
7862c6d515
Dashboard Overhaul ( #3651 )
2021-01-10 20:41:58 -06:00
Buster "Silver Eagle" Neece
991465d14c
Allow customization of Redis env vars for advanced configurations.
2021-01-05 05:02:00 -06:00
Buster "Silver Eagle" Neece
0e6910ba17
Allow hiding the "Download" button on "On-Demand" media page.
2021-01-05 00:43:01 -06:00
Buster "Silver Eagle" Neece
a88b9c6688
Media Manager Improvements
...
- Fold "Duplicates" report into the main media manager, allowing it to see custom fields, album art, etc.
- Create a new "Unprocessable media" report that also uses the main media browser
- Add a new "Reprocess" batch option that can be run on any media directly from the web UI
- Improve how hashes are detected in the media manager
2021-01-03 00:23:07 -06:00
Mitch
93215a0275
Change wording to include listener metadata ( #3619 )
2021-01-02 13:59:53 -06:00
Buster "Silver Eagle" Neece
e4c887fd3a
Improve logging on sync tasks.
2020-12-22 19:52:50 -06:00
Buster "Silver Eagle" Neece
bdc6dcc22d
Make unprocessable media downloadable and show processing errors.
2020-12-22 15:40:33 -06:00
Buster "Silver Eagle" Neece
a12b655cb4
Log console exceptions and nonzero exit codes.
2020-12-18 23:07:28 -06:00
Buster "Silver Eagle" Neece
44a3ef15e6
Use Intervention image manager for images.
2020-12-18 20:39:47 -06:00
Buster "Silver Eagle" Neece
cc067943ac
Remove external Rotate library and rotate backups for all filesystems.
2020-12-18 17:49:00 -06:00
Buster "Silver Eagle" Neece
8f29382b9e
Move log level to Environment; update changelog.
2020-12-15 07:44:20 -06:00
Buster "Silver Eagle" Neece
fc97e39d0a
Update composer deps; handle logging at Supervisor library level.
2020-12-14 12:03:50 -06:00
Buster "Silver Eagle" Neece
05d5a95090
Switch to Symfony Cache for PSR-6/16 implementation.
2020-12-12 17:45:34 -06:00
Buster "Silver Eagle" Neece
4aa1902dae
#3525 -- Rework settings to be fetched on-demand to avoid collisions.
2020-12-10 16:46:03 -06:00
Buster "Silver Eagle" Neece
1604799048
#3526 -- Fix webhook Environment error.
2020-12-09 02:02:40 -06:00
Buster "Silver Eagle" Neece
788370d0c0
Switch to Doctrine explicit change tracking for performance.
...
(We've been writing code for years as though this setting were enabled, and yet it's not the default setting, so we were losing performance on large operations for no good reason.)
2020-12-06 14:06:15 -06:00
Buster "Silver Eagle" Neece
97e1fab14e
Add message queue length and per-queue clear buttons to Debugger page.
2020-12-06 11:23:40 -06:00
Buster "Silver Eagle" Neece
0a8c41542d
Make environment immutable and strictly use function calls.
2020-12-06 05:57:39 -06:00
Buster "Silver Eagle" Neece
bf1e4f2591
Simplify Environment class and dependencies.
2020-12-06 01:55:25 -06:00
Buster "Silver Eagle" Neece
2eac4d3cb4
Make sync tasks a long-running logged process like backups.
2020-12-05 13:34:13 -06:00
Buster "Silver Eagle" Neece
e7fee785a0
Entity Manager cleanup tasks.
...
- Make the "refresh" method of the decorated EM a part of a new Reloadable interface and add "refreshAsReference"
- Make all classes use the "IDENTITY" generatedvalue strategy and have nullable IDs
2020-12-05 01:39:05 -06:00
Buster "Silver Eagle" Neece
969789aa05
Code style fixes.
2020-12-04 06:42:15 -06:00
Buster "Silver Eagle" Neece
9e011647c3
More "settings" to "environment" renames.
2020-12-04 06:33:52 -06:00
Buster "Silver Eagle" Neece
aed854a17c
Settings overhaul, part 2
...
Make Settings a controlled entity.
2020-12-04 02:41:55 -06:00
Buster "Silver Eagle" Neece
5727f12b6f
Settings refactor part 1: Rename App\Settings to App\Environment.
...
Previously AzuraCast had two very similar `$settings` variables, one that was from environment and the other from the database. This refactor distinguishes the two much more clearly.
2020-12-02 22:18:06 -06:00
Buster "Silver Eagle" Neece
7c268f3a88
#3215 -- Implement "remember me" checkbox on login.
2020-11-30 05:32:52 -06:00
Buster "Silver Eagle" Neece
a0528ce71c
Refactor sync task class names.
2020-11-30 03:55:30 -06:00
Buster "Silver Eagle" Neece
9f8c808859
#2981 -- Make playlist export path have a period for legacy purposes.
2020-11-28 19:27:37 -06:00
Buster "Silver Eagle" Neece
08f948e96b
Add support for Simplified Chinese.
2020-11-25 02:00:20 -06:00
Buster "Silver Eagle" Neece
13b66eca7e
Fix "Advanced" saying "Undefined", make it translatable too.
2020-11-17 20:28:44 -06:00
Buster "Silver Eagle" Neece
8c730b3d41
Remove Chosen JS library, replace with Select2.
2020-11-17 19:13:08 -06:00
Buster "Silver Eagle" Neece
8ee4d3864b
Improve lock management and always clear locks when manually running sync.
2020-11-14 20:47:38 -06:00
Buster "Silver Eagle" Neece
62ed3aa51d
Supply individual worker names for each queue worker.
2020-11-14 18:06:34 -06:00
Buster "Silver Eagle" Neece
76a14ba638
Move API keys to other admin menu.
2020-11-14 15:45:39 -06:00
Buster "Silver Eagle" Neece
582b8faef9
Warn about sync tasks not having been run recently.
...
Also includes a minor rewrite of the EventDispatcher, and a restructure of notification checks into standalone classes.
2020-11-12 15:30:02 -06:00
Buster "Silver Eagle" Neece
6de636f475
Unified Filesystem Overhaul ( #3341 )
...
This migration adds "Storage Locations", managed via a new System Administration panel, that can hold Station Media data, live broadcast recordings, and backups. These storage locations can be local (as they are by default) or remote via any S3-compatible service.
2020-11-09 21:06:48 -06:00
Buster "Silver Eagle" Neece
f4ee44199c
Revert commit and set environment to "Testing".
2020-10-25 05:58:06 -05:00
Buster "Silver Eagle" Neece
6711feeeee
Move lazy-loading of cache interface to downstream services.
2020-10-25 05:48:50 -05:00
Buster "Silver Eagle" Neece
600988be4f
Lazy-load the Redis cache because locale commands are called via regular PHP.
2020-10-25 05:31:47 -05:00
Buster "Silver Eagle" Neece
37c54e4937
Cache/Config changes for testing.
2020-10-25 04:53:52 -05:00
Buster "Silver Eagle" Neece
b4698ec833
Disable session cache on CLI commands too.
2020-10-25 02:28:21 -05:00
Buster "Silver Eagle" Neece
4c7fe5c1ce
#3298 -- Properly flush Redis cache during SFTP upload.
2020-10-25 01:46:41 -05:00
Buster "Silver Eagle" Neece
6c69e6fe52
Better line update channels up with update notifications.
2020-10-24 10:26:55 -05:00
Buster "Silver Eagle" Neece
bc7773a2f1
#3312 -- Remove the "Administer Users"/"Permissions" permissions.
2020-10-22 06:16:19 -05:00
Vaalyn
7fa7ca781d
Make ACL permissions extendable by plugins via event dispatching ( #3309 )
2020-10-22 02:18:05 -05:00
Buster "Silver Eagle" Neece
80192a31d5
Code style fixes for metadata manager adapter.
2020-10-21 05:36:51 -05:00
Buster "Silver Eagle" Neece
9e4bc0e51d
Implement abstract Metadata read/write interfaces.
2020-10-21 05:04:58 -05:00
Nick Robillard
06808d01f8
Remove "difficult to map" options from custom fields auto assignable id3v2 fields select ( #3293 )
2020-10-19 06:00:00 -05:00
Vaalyn
415c24ca8f
Add possibility to register message queue message handlers for plugins ( #3288 )
2020-10-18 00:56:44 -05:00
Buster "Silver Eagle" Neece
909ea2b786
Make the Station Profile a standalone compiled Vue component.
2020-10-16 04:08:58 -05:00
Buster "Silver Eagle" Neece
fb4f7de2df
Make the public radio player a Vue component.
2020-10-15 05:01:32 -05:00
Buster "Silver Eagle" Neece
f822d83cda
Remove non-functional Timezone utility class.
2020-10-09 16:31:48 -05:00
Buster "Silver Eagle" Neece
c65e686798
Add initial support for Greek and Swedish localizations.
2020-10-09 04:38:17 -05:00
Buster "Silver Eagle" Neece
6458ac4953
#3219 -- Add dark theme for sweetalerts.
2020-10-07 22:35:54 -05:00
Buster "Silver Eagle" Neece
a6ec36b21c
Analytics Overhaul and InfluxDB Removal ( #3243 )
...
- Make the Analytics table in the database the primary one for handling statistics for all stations, removing the InfluxDB dependency entirely
- Expand the Analytics table to also track unique listeners per hour and day
- Properly clean up the Listeners table according to each installation's history retention settings
- Implement a cute new animated "waiting for services" startup message that avoids previous wait messages that looked more like errors
2020-10-07 18:50:30 -05:00
Limon Monte
daf6e09bb9
Switch from SweetAlert to SweetAlert2 ( #3239 )
2020-10-07 03:09:01 -05:00
Buster "Silver Eagle" Neece
1a1ef5f013
Revert service configuration change.
2020-10-05 02:07:36 -05:00
Buster "Silver Eagle" Neece
c81ff62b5c
Remove the `Song` entity and restructure dependent tables accordingly ( #3231 )
...
* Song database and entity overhaul, part 1.
* Remove Songs table from a number of qeries and reports.
* Fix references to Songs table; rewrite StationMedia processing.
* Remove song reference in queue page.
* Allow custom log level via environment variable.
2020-10-04 17:35:41 -05:00
Vaalyn
adec893a93
Add possibility to add migrations from plugins via event dispatcher ( #3168 )
...
* Add possibility to add migrations from plugins via event dispatcher
* Add possibility to add Doctrine mapping classes paths from plugins via event dispatcher
2020-09-30 10:39:22 -05:00
Buster "Silver Eagle" Neece
7e4d572060
#3220 -- Bump log level for production instances.
2020-09-29 22:57:49 -05:00
Buster "Silver Eagle" Neece
949ac7940a
#3203 -- Clean up album art and waveforms (with an added sync check).
2020-09-29 11:45:50 -05:00
Buster "Silver Eagle" Neece
a2c0637386
Overhaul MessageQueue and switch back to Redis.
2020-09-26 18:05:33 -05:00
Buster "Silver Eagle" Neece
7bac35b2ff
Switch to new Symfony Lock component for our mutex locks.
2020-09-26 12:50:47 -05:00
Buster "Silver Eagle" Neece
ca38bea82b
Add clear-cache and clear-queue commands to debugger.
2020-09-22 15:47:46 -05:00
Buster "Silver Eagle" Neece
60704898f2
Restructure CLI commands and add message queue management commands.
2020-09-21 09:06:24 -05:00
Buster "Silver Eagle" Neece
a69c802a78
Make Sync (cron) tasks an event that plugins can attach to.
2020-09-20 07:07:09 -05:00
Buster "Silver Eagle" Neece
18daed36b0
#3042 -- Update Nowplaying library to apply fixes.
2020-09-16 06:56:25 -05:00
Buster "Silver Eagle" Neece
0de15ea673
#3096 -- Extend Doctrine redeliver timeout.
2020-09-14 19:14:13 -05:00
Buster "Silver Eagle" Neece
c54836726f
#3170 -- Fix play icon switching for all files on the media manager.
2020-09-13 22:26:26 -05:00
Vaalyn
63a2aeab26
Add configurable time range for duplicate prevention ( #3172 )
...
* Add configurable time range for duplicate prevention
* Add missing belongsTo to duplicate prevention range setting
* Fix bug in calculation of least played song when duplicate can't be prevented by taking history timestamp_start into account
2020-09-13 19:03:04 -05:00
Buster "Silver Eagle" Neece
9d764ae9b5
(Ansible) set table length to avoid metadata storage error.
2020-09-06 16:46:27 -05:00
Buster "Silver Eagle" Neece
a5a0149d26
Implement lazy-loading service locator for Webhook and Sync locators.
2020-08-28 05:32:33 -05:00
Buster "Silver Eagle" Neece
93ff68881f
Webhook and Sync Task Refactor
...
Moving service locator dependencies to their own Collections and make webhooks dispatch via MessageQueue messages.
2020-08-28 02:04:23 -05:00
Buster "Silver Eagle" Neece
23f2172488
Scheduler/StationQueue Rework ( #3087 )
...
Create a new "StationQueue" entity that contains the upcoming song queue, and split the important AutoDJ functionality across multiple classes (Annotations, Queue and Scheduler).
2020-08-16 09:54:01 -05:00
Buster "Silver Eagle" Neece
0889916194
Better error handling through wrapping exceptions with richer requests.
2020-08-10 02:46:09 -05:00
Buster "Silver Eagle" Neece
51a2292803
Implement a custom crossfade function for live streams.
2020-08-02 12:32:55 -05:00
Buster "Silver Eagle" Neece
ffa6d6b4fc
Auto-load most Vue component deps from Webpack manifest.
2020-07-15 03:00:17 -05:00
Buster "Silver Eagle" Neece
989ef42b49
Add theme class to body, update Codemirror styling.
2020-07-12 03:57:03 -05:00
Buster "Silver Eagle" Neece
f3f845cf1a
#3020 -- Switch to MariaDB-based message queue.
2020-07-11 00:22:02 -05:00
Buster "Silver Eagle" Neece
6f66ff072b
Make Auth and Customization PSR-7 lifecycle friendly.
2020-07-09 23:15:27 -05:00
Buster "Silver Eagle" Neece
16ce83be51
Remove unused code.
2020-07-08 19:30:58 -05:00
Buster "Silver Eagle" Neece
2abb8bf623
Routine code cleanup.
2020-07-08 02:03:50 -05:00
Buster "Silver Eagle" Neece
df7053e3f7
#3014 -- Update log level to string on GuzzleHTTP library.
2020-07-06 01:47:34 -05:00
Buster "Silver Eagle" Neece
26088a36ba
Move to Guzzle 7.x for PSR-18-compatible client.
2020-07-05 21:36:50 -05:00
Buster "Silver Eagle" Neece
62763250ca
Remove Sentry, simplify error handling.
...
Developer's note: the Sentry team has been very supportive of open-source and is good people! We simply don't use the library enough on our end to justify its dependencies in our codebase.
2020-07-04 11:08:53 -05:00
Buster "Silver Eagle" Neece
0adda37403
Incorporate new NowPlaying library
...
- Move much of AzuraCast's merging and client integration into the library itself
- The library now uses typed properties on a return object for much more reliable hinting
- Update both this library and SupervisorPHP to use PSR-17 and PSR-18 standardized factories
2020-07-03 15:24:04 -05:00
Buster "Silver Eagle" Neece
b96d8dbaac
Update SupervisorPHP version to 4.x alpha branch.
2020-07-01 19:26:26 -05:00
Buster "Silver Eagle" Neece
db2ba3f1ad
Finish migration to Symfony Messenger from Bernard.
2020-06-28 18:00:00 -05:00
Buster "Silver Eagle" Neece
9efa5a651e
Replace Bernard message queue with Symfony Messenger 5
2020-06-28 11:29:22 -05:00
Buster "Silver Eagle" Neece
4bcfad3eb5
Updates preparing for Doctrine 3.0
...
- Switch to EntityManagerInterface for EM uses
- Wrap EntityManager in close-resilient wrapper
- Close/clear/reopen EM with every request
- Rework tests to be em->clear() resilient.
2020-06-26 15:22:53 -05:00
Buster "Silver Eagle" Neece
0dea2de081
Update to Doctrine Migrations 3.x.
2020-06-25 03:47:49 -05:00
Buster "Silver Eagle" Neece
19bf99d836
Set default value for recording format.
2020-06-24 00:47:18 -05:00
Buster "Silver Eagle" Neece
3f162d484a
#2957 -- Use global "App.lang" for default translated strings.
2020-06-21 11:30:37 -05:00
Buster "Silver Eagle" Neece
903ffd7e63
Rework webpack building to be faster and reduce common load times.
2020-06-17 05:44:59 -05:00
Buster "Silver Eagle" Neece
6a335f4537
Minor refactoring; rename UploadAction to FlowUploadAction for clarity.
2020-06-16 05:43:31 -05:00
Buster "Silver Eagle" Neece
94640dbbb8
Remove "advanced" status on some essential fields.
2020-06-03 04:25:10 -05:00
Buster "Silver Eagle" Neece
0069df6d2d
Disable certain dangerous "advanced" features by default in new installs.
...
Some functionality of AzuraCast has always been intended for "Power Users", but seemingly no amount of warnings or labels will prevent users from discovering these features, misusing them, and either burdening our support channels or declaring AzuraCast to be "broken". With this update, new installations have some of these most dangerous settings (manual port assignments, manual directory selection, custom LS/Icecast config, etc.) disabled. They can easily be re-enabled by editing "azuracast.env" and turning them on, and will remain available for all previous users by default.
2020-05-27 02:36:30 -05:00
Buster "Silver Eagle" Neece
1c87b48bdb
#2834 -- Add CLI command to list user accounts.
...
Can be invoked by running CLI with "azuracast:account:list".
2020-05-26 02:38:18 -05:00
Buster "Silver Eagle" Neece
f93b150d54
#2860 -- Make Queue display page share permissions of queue API calls.
2020-05-20 18:41:24 -05:00
Buster "Silver Eagle" Neece
bd6d3203b1
Add On-Demand Streaming/Download Support ( #2836 )
...
This branch represents the initial earliest commit of a new option for radio stations that also want to make a portion of their media library available to the public (such as podcast episodes, royalty-free music, etc.) in an on-demand fashion.
Note: because of royalty restrictions with most radio stations, this feature is turned OFF by default on all stations, and even when enabled, station administrators must select each individual playlist that will contain on-demand available media.
2020-05-15 05:13:47 -05:00
Buster "Silver Eagle" Neece
769de19d00
Big Visual Waveform Editor Overhaul
...
- Refactor Flysystem to use constants instead of magic strings for URL prefixes
- Add audiowaveform installation to both Docker and Ansible installations
- Use audiowaveform to generate waveforms saved to disk for every track
- Load these waveforms when visiting the visual waveform editor page instead of using the browser to calculate them
- Add volume control and use app-wide storage of default volume
- Remove "beta" tag from waveform editor header
2020-05-11 19:32:41 -05:00
Buster "Silver Eagle" Neece
9062903d6d
#2814 -- Slight refactor to address some router issues.
2020-05-08 19:40:34 -05:00
Buster "Silver Eagle" Neece
78c762ee4e
#2702 -- Use full request URI (sans path) for default base URL.
2020-05-05 20:42:14 -05:00
Buster "Silver Eagle" Neece
5203e8db08
#2654 -- Add InfluxDB debug CLI command.
2020-05-04 23:47:45 -05:00
Buster "Silver Eagle" Neece
a961481e85
#2249 -- Add ability to update Now Playing metadata via API call.
2020-05-03 21:48:26 -05:00
Buster "Silver Eagle" Neece
945b4a83df
Implement per-station default album artwork.
2020-05-02 20:28:08 -05:00
Buster "Silver Eagle" Neece
4804e2f710
Make Backend and Frontend config collections, avoiding "magic strings".
2020-05-02 02:58:59 -05:00
Buster "Silver Eagle" Neece
382dbef1a1
#2707 -- Run the queue build sync task more often.
2020-04-21 01:59:15 -05:00
Buster "Silver Eagle" Neece
0fb3c8e2eb
Fix URLs in webhook tests; force HTTPS on thumbnail/image URLs.
2020-04-20 22:57:57 -05:00
Buster "Silver Eagle" Neece
2f173fca53
Restrict the permission needed to manage LS configuration.
2020-04-19 20:53:34 -05:00
Buster "Silver Eagle" Neece
e82212629a
Make AutoDJ queue length per-station configurable.
2020-04-15 23:24:53 -05:00
Buster "Silver Eagle" Neece
f1040f7fdd
Initial refactor to separate queue management from Now Playing process.
2020-04-15 00:23:11 -05:00
Buster "Silver Eagle" Neece
767fb5dd31
Add confirmation step to the "Restart to Apply Changes" menu items.
2020-04-13 01:49:59 -05:00
Buster "Silver Eagle" Neece
51f82d1ceb
Add back ability to import playlist file from existing M3U/PLS file.
2020-04-12 02:23:45 -05:00
Buster "Silver Eagle" Neece
135c9f21dd
Add "reshuffle playlist" button to dropdown for shuffle-type playlists.
2020-04-09 10:13:49 -05:00
Buster "Silver Eagle" Neece
66ded0a693
Move route groups to separate files to ease maintenance.
2020-04-07 23:19:24 -05:00
Buster "Silver Eagle" Neece
5903387eb9
Add button to clear all pending requests.
2020-04-06 23:54:28 -05:00
Buster "Silver Eagle" Neece
07ac05f990
Switch from Redis Mutex to a simpler local Lock mechanism.
2020-04-04 00:48:27 -05:00
Buster "Silver Eagle" Neece
c59fca5933
Broaden permissions on profile API endpoint.
2020-04-02 17:13:26 -05:00
Buster "Silver Eagle" Neece
f1025d52f7
Unify all station profile API calls into a single response.
2020-04-02 06:30:00 -05:00
Buster "Silver Eagle" Neece
66d55d33f1
Add an uptime wait function during the setup process.
2020-03-29 23:50:40 -05:00
Buster "Silver Eagle" Neece
c851f92f27
Split Liquidsoap service control and configuration writer components.
2020-03-19 14:41:22 -05:00
Buster "Silver Eagle" Neece
f5e9160b6f
Frontend package updates; add fullscreen to listener map.
2020-03-13 18:47:23 -05:00
Buster "Silver Eagle" Neece
62219946f3
Add LS Telnet commands to Debug page.
2020-03-10 17:30:02 -05:00
Buster "Silver Eagle" Neece
710c64e041
Run backups in background and show rolling log; new backup timecode check.
2020-03-08 17:49:48 -05:00
Buster "Silver Eagle" Neece
81fbf023b0
Add ability to supply a banned listener IP list via the web interface.
2020-03-01 18:03:03 -06:00
Buster "Silver Eagle" Neece
0939599532
Create new "Debug" page for testing internal functions in debug mode.
2020-03-01 10:26:49 -06:00
Buster "Silver Eagle" Neece
82b9ec685d
Create new "Edit Liquidsoap Config" page; allow editing in more places.
2020-02-23 06:58:47 -06:00
Buster "Silver Eagle" Neece
18a2089377
Formalize and define the new `/station/{id}/schedule` API endpoint.
2020-02-19 09:05:15 -06:00
Buster "Silver Eagle" Neece
33d2ed64ae
Implement Streamer Schedules, Schedule Enforcement and new Scheduled Items Panel on Profile ( #2422 )
...
* Commit new Schedule entity changes and new API endpoints.
* Fix possible cause of API POST errors.
* Fix syntax with JSON return slashes.
* Add "Schedule View" and "Enforce Schedule" settings to Streamers.
* Add "Scheduled" panel to Profile.
2020-02-17 22:32:14 -06:00
Buster "Silver Eagle" Neece
dbba8e3c00
Add ability to specify admin pw and load clients for remote relays.
2020-02-12 23:37:45 -06:00
Buster "Silver Eagle" Neece
027590dc54
Cleanup and optimization relating to the recent AzuraCore merge.
2020-02-12 20:29:42 -06:00
Buster "Silver Eagle" Neece
bddbab4e02
#2395 -- Fix default database name on Ansible installs.
2020-02-07 02:13:38 -06:00
Buster "Silver Eagle" Neece
4d4d75ad4d
Reunify AzuraCore and AzuraCast repositories.
2020-02-05 20:35:13 -06:00
Buster "Silver Eagle" Neece
5ccb3798dc
Add ability to delete individual broadcasts.
2020-02-03 01:15:57 -06:00
Vaalyn
4edbe6cd2a
Fix issue 2141 ( #2362 )
...
* Fix backups download route path
* Add download attribute to backup download link
2020-01-30 15:57:30 -06:00
Buster "Silver Eagle" Neece
41edc21987
Add ability to add folders to playlists and auto-assign contents.
2020-01-30 15:48:34 -06:00
Buster "Silver Eagle" Neece
ca9c5db39d
New feature: Track broadcasts and record them. ( #2353 )
...
* Add form entries and LS config writing for live stream recording.
* Create new Broadcast entity; implement new djon/djoff handling.
* Rework record command procedure and add Station relation to Broadcast.
* Run code reformat on JS to add semicolons back.
* Properly save recording path on entity.
* Initial commit of new streamers Vue component.
* Finish frontend Vue dev and add necessary API endpoints.
* Add loader to Datatable; update npm deps; polish on components.
2020-01-28 20:23:55 -06:00
Buster "Silver Eagle" Neece
78eb312ec7
#2326 -- Add ability to uninstall GeoLite database.
2020-01-24 14:45:45 -06:00
Buster "Silver Eagle" Neece
71a91cc12d
#2325 -- Fix settings error on Ansible installations.
2020-01-22 23:04:50 -06:00
Buster "Silver Eagle" Neece
72013d105f
Expand SFTP username length to 32.
2020-01-22 18:44:15 -06:00
Buster "Silver Eagle" Neece
31c34ebbc4
Abstract IP Geolocation services and add DBIP support.
2020-01-22 04:48:02 -06:00
Buster "Silver Eagle" Neece
2c093abfe3
Update syntax on SHOUTcast authhash form.
2020-01-21 00:26:21 -06:00
Buster "Silver Eagle" Neece
feeb8b9af1
#2306 -- Partially revert removal of "Prefer Browser URL" setting.
2020-01-21 00:02:06 -06:00
Buster "Silver Eagle" Neece
b6f558eb54
Always prefer browser URL and always enable SFTP server.
...
Both settings are no longer relevant and turning them off would cause unexpected issues, so they're being removed completely instead to ease configuration difficulty.
2020-01-15 14:52:47 -06:00
Buster "Silver Eagle" Neece
14ecffa4b7
Make WebDJ link always-HTTPS in sidebar; fix possible JS issue.
2020-01-10 23:56:45 -06:00
Buster "Silver Eagle" Neece
343a0a6e46
Move Vue, uncompiled JS, etc. files out of public web directory.
2020-01-08 20:25:38 -06:00
Buster "Silver Eagle" Neece
a208c172df
Switch to "provide license, download automatically" for GeoLite DB.
2020-01-08 14:37:56 -06:00
Buster "Silver Eagle" Neece
ebb6349ae1
Rename Sftp class, use new external auth support.
2020-01-08 13:24:33 -06:00
Buster "Silver Eagle" Neece
e9d8775af6
Switch from FTP to SFTP on Docker installations.
2020-01-05 15:29:56 -06:00
Buster "Silver Eagle" Neece
388bcee951
#2250 -- Handle MaxMind no longer offering free public downloads.
...
- Remove automatic download attempt from Ansible installation process
- Allow listener report to function without the MaxMind database present, but with error messages
- Create new "Install GeoLite Database" page in system administration, allowing user upload of the MaxMind database, with instructions
2019-12-31 06:49:25 -06:00
Buster "Silver Eagle" Neece
c72be08e99
Make the "reprocess media" command allow one station only.
2019-12-15 02:53:04 -06:00
Buster "Silver Eagle" Neece
7fea11f544
Enable "Prefer Browser URL" by default.
2019-12-02 18:46:24 -06:00
Buster "Silver Eagle" Neece
440687e93b
Settings forms code refactor, fixes #2171 .
2019-11-25 21:25:29 -06:00
Buster "Silver Eagle" Neece
42d08db5a2
Add internal "get IP" command for PureFTPD.
2019-11-22 04:44:03 -06:00
Buster "Silver Eagle" Neece
19dd927189
Finish initial buildout of new playlist editor.
2019-11-06 15:19:32 -06:00
Buster "Silver Eagle" Neece
74e9154e74
Finish initial buildout of new modal Playlist form.
2019-11-06 02:57:39 -06:00
Buster "Silver Eagle" Neece
27be5deead
Style updates, form refactor for both Media and Playlists.
2019-11-05 16:55:27 -06:00
Buster "Silver Eagle" Neece
54140c4674
Update loaded assets and finish "reorder" functionality.
2019-11-04 15:59:52 -06:00
Buster "Silver Eagle" Neece
a44f9fe0bb
Further dev work on new playlist manager.
2019-11-03 20:19:25 -06:00
Buster "Silver Eagle" Neece
20abb359c0
Create Vue components and move Playlist endpoints to API.
2019-11-03 00:22:00 -06:00
Buster "Silver Eagle" Neece
9fc7a6328a
DB migrations and initial API endpoint preparation.
2019-11-02 13:50:21 -05:00
Buster "Silver Eagle" Neece
80b7ca9461
Stop the task processor if the EntityManager is closed.
2019-10-31 21:52:09 -05:00
Buster "Silver Eagle" Neece
0112568041
#2068 -- Move "write playlist to disk" task to the message queue.
2019-10-29 14:49:03 -05:00
Buster "Silver Eagle" Neece
d90d48bc54
Fix password field name on administration page.
2019-10-29 04:27:03 -05:00
Buster "Silver Eagle" Neece
2f03b038f7
Refactor Account/Profile sections and fix #2099 (2FA setup errors).
2019-10-26 18:35:24 -05:00
Buster "Silver Eagle" Neece
cd72560032
Update Composer deps, switch to Docker image for CA cert updates.
2019-10-24 23:46:05 -05:00
Buster "Silver Eagle" Neece
7f96916a0d
#2076 -- Revamp how album art changes are handled.
...
- All media rows will have an "art_updated_at" field that tracks the latest time the art was changed for the file.
- If this field is set to zero (0), the system will return the default album art instead of attempting to resolve an album art URL that we know won't go anywhere.
- The timestamp of the latest update is now included in the album art image SRC, so we can maintain our very long caches without interfering with album art updates.
2019-10-24 14:37:27 -05:00
Buster "Silver Eagle" Neece
047d19e972
Protect against accidentally loading the same dir, but with a prepended slash.
2019-10-22 01:39:07 -05:00
Buster "Silver Eagle" Neece
17d306b970
Enable Web Radio Proxy by default on new installations.
2019-10-20 00:44:33 -05:00
Buster "Silver Eagle" Neece
ff7d741455
Fix upload namespace on routes.
2019-10-10 20:51:55 -05:00
Buster "Silver Eagle" Neece
7f55696b47
Add new media manager album art tab.
2019-10-10 20:22:02 -05:00
Buster "Silver Eagle" Neece
1d2ed5fa55
Move file routes to API endpoints and add inline renaming.
2019-10-09 21:13:04 -05:00
Buster "Silver Eagle" Neece
4048ddcc01
Add bootstrap-vue to assets; finish initial Media Manager buildout.
2019-10-06 04:16:16 -05:00
Buster "Silver Eagle" Neece
d79c19c887
#2032 -- Return to using global Vue for drop-in components.
2019-10-04 03:02:53 -05:00
Buster "Silver Eagle" Neece
e0efde8612
Move Webcaster deps locally and switch Vue-i18n to Vue-gettext.
2019-10-03 22:12:15 -05:00
Buster "Silver Eagle" Neece
28765bd489
Bring Vue-i18n back until it's fully phased out.
2019-10-03 02:16:53 -05:00
Buster "Silver Eagle" Neece
8e49ea60c1
Switch to gettext method of Vue component localization.
2019-10-03 02:11:22 -05:00
Buster "Silver Eagle" Neece
d207a8ae83
Add "auto_assign" to custom field.
2019-09-30 03:33:20 -05:00
Buster "Silver Eagle" Neece
9a2f837586
Pull list of ID3v2 tags and add to custom field form.
2019-09-30 03:33:20 -05:00
Buster "Silver Eagle" Neece
c0d5365407
Prevent showing both "start station" and "restart station".
2019-09-29 19:01:15 -05:00
Buster "Silver Eagle" Neece
14de279bdf
Dependency-inject fixtures.
2019-09-29 16:45:05 -05:00
Buster "Silver Eagle" Neece
d7819a6993
Migrate Doctrine repositories to composited, DI-friendly classes.
2019-09-29 02:50:24 -05:00
Buster "Silver Eagle" Neece
9a8b095521
Switch back to Certainty and use a less frequent, non-per-request update process.
2019-09-27 21:07:33 -05:00
Buster "Silver Eagle" Neece
55d2a17119
Change "Name" in user form to "Display Name" to confirm it isn't a username.
2019-09-24 18:19:51 -05:00
Buster "Silver Eagle" Neece
a98aebb8e0
#1976 -- Add ability to restart a single station from CLI.
2019-09-18 21:31:13 -05:00
Buster "Silver Eagle" Neece
daf78fa738
Move Settings and Logging to static system-wide functions.
2019-09-12 00:31:01 -05:00
Buster "Silver Eagle" Neece
bf8bece9ac
#1954 -- Fix some LS commands on Ansible installs.
2019-09-11 12:58:22 -05:00
Buster "Silver Eagle" Neece
fb54e4ee78
Begin refactor of CLI commands to use new Silly DI format.
2019-09-10 18:10:57 -05:00
Buster "Silver Eagle" Neece
1ae761efd8
More "station_id" rename fixes.
2019-09-09 23:13:11 -05:00
Buster "Silver Eagle" Neece
a4a146673e
More fixes to allow for new PHP-DI bridge integration.
2019-09-09 23:02:08 -05:00
Buster "Silver Eagle" Neece
46fe1256cd
Transport 2FA secret via session rather than form input variable.
2019-09-04 10:25:31 -05:00
Buster Neece
457c4896f6
Add support for the FTP service notifying app of new uploads for processing.
2019-08-26 17:05:32 -05:00
Buster Neece
1a1a18dfe7
Add integrated FTP upload support.
2019-08-25 17:50:20 -05:00
Buster Neece
0953182033
Localization Overhaul
...
- Replace several "add %s", "remove %s", "manage %s" strings with dedicated strings for each action
- Make API responses locale-aware and translated
- Make CLI locale-aware and translated
- Add initial support for Turkish language
2019-08-21 17:34:05 -05:00
Buster Neece
d4b2b22428
Reduce number of concurrent Redis connections by consolidating to one DB.
2019-08-17 20:33:44 -05:00
Buster Neece
297356a7e3
Turn the live websockets off by default, but still easily enabled.
2019-08-16 12:23:35 -05:00
Buster "Silver Eagle" Neece
37c69afe85
Implement Audit Log ( #1859 )
...
Add a new "Audit Logs" table (and corresponding administrative page) that tracks inserts, updates and deletes to important database entries, along with tracking the user who made the change.
2019-08-14 18:50:53 -05:00
Buster Neece
a38d24ba43
Switch to using AC Central for IP determination; add IP to streamers page.
2019-08-10 02:45:17 -05:00
Buster Neece
2f8ab5544a
Switch back to Request/Response decorators.
2019-08-09 10:00:21 -05:00
Buster Neece
fa68598fce
Remove the two un-autowireable middlewares.
2019-08-06 23:43:21 -05:00
Buster "Silver Eagle" Neece
639dddf989
Slim PHP Framework 4 Update ( #1822 )
...
Implement an upgrade of the codebase to use Slim Framework version 4, which includes the following changes:
- Updating to Slim version 4 and the corresponding AzuraCore updates.
- Making all objects PSR-7 Request/Response agnostic (and creating RequestHelper and ResponseHelper objects to interact with the PSR-7 Req/Resp objects).
- Moving to PHP-DI as a DI container and implementing its autowiring support.
2019-08-06 23:33:55 -05:00
Buster Neece
fab08ff763
Clean up SoundExchange report and remove duplicate PHP file.
2019-08-02 22:26:13 -05:00
Buster Neece
68088fbd05
Create a page showing AzuraRelay instances.
2019-07-31 22:20:06 -05:00
Buster Neece
bc1c2cb871
Allow disabling of websocket updates; improve NP time counter stability.
2019-07-31 13:47:12 -05:00
Buster Neece
be7459c57d
Switch to older (but more reliable) way of sending nchan messages.
2019-07-31 13:23:03 -05:00
Buster Neece
bec2880f2c
Use nchan library from npm and directly import into Vue.
2019-07-26 18:51:59 -05:00
Buster Neece
83f3d407a5
Bring nchan back.
2019-07-25 23:54:25 -05:00
Buster Neece
5a9ec823e4
Make relays an internal URL and prevent :443 infinite redirects.
2019-07-23 11:51:06 -05:00
Buster Neece
c9e0d8ee93
Update autocomplete on new-password/CSRF; composer update.
2019-07-20 20:31:03 -05:00
Buster Neece
b5cd364402
Bring back the AzuraCast AutoDJ (and "Next Song").
2019-07-17 16:29:21 -05:00
Buster Neece
ffcf01adc8
Fix migration, add POST relay update and remote adapter.
2019-07-15 18:47:05 -05:00
Buster Neece
3a1faa3887
Add DB migration, entity and editable checks.
2019-07-14 23:47:39 -05:00
Buster Neece
419d524744
Add new relays API endpoint and fix response docs on some other endpoints.
2019-07-10 12:45:54 -05:00
Buster Neece
56e6b4c232
Unify CLI commands
2019-07-10 00:45:10 -05:00
Buster Neece
fd01cf78be
Use dirrty jQuery library for more accurate "form is changed" detection.
2019-06-27 16:09:40 -05:00
Buster Neece
a6fa2bbad0
Fix password-change checking the original password and confirming the new one.
2019-06-27 03:30:27 -05:00
Buster Neece
eea56852eb
Consolidate documentation onto site homepage and update relevant links.
2019-06-21 18:27:18 -05:00
Buster Neece
b95449064a
#1606 -- Move fonts back to local so entire UI is self-hosted.
2019-06-19 02:21:21 -05:00
Buster Neece
fab95b13f7
Switch to smaller 10-year range timezone data.
2019-06-03 18:09:29 -05:00
Buster Neece
20100f0c31
Add station clock to sidebar.
2019-06-03 14:58:44 -05:00
Buster Neece
2e5b829efc
Switch to sortablejs to remove a jQuery dep and fix NPM audit reports.
2019-06-02 19:23:17 -05:00