Commit Graph

391 Commits

Author SHA1 Message Date
Lucas Bickel 287cd28546 🐛 Make Settings menu visible to all users 2019-01-20 14:52:50 +01:00
Robb 5cd943d68e
Merge pull request #531 from radiorabe/chore/fix-ci
Fix CI: python checks and docs deployment
2018-10-06 17:05:52 -04:00
Lucas Bickel f7ceeedb04 (Amazon S3) drop broken S3 support 2018-10-06 12:45:22 +02:00
Robbt 329d214b25 Merge branch 'feature/celery-status' of https://github.com/radiorabe/libretime into radiorabe-feature/celery-status 2018-09-03 18:49:07 -04:00
Lucas Bickel cc18596384
Merge pull request #489 from xabispacebiker/reconditioning-interface-personal-block
Reconditioning interface personal block
2018-06-30 11:08:14 +02:00
Lucas Bickel 23eb0fcf63 Fix remaining help links 2018-02-04 14:23:25 +01:00
Xabi Spacebiker c62eff2913 Hide Radio Page Menu Link, it is useless and 2017-09-30 13:24:20 +02:00
Xabi Spacebiker 2fd1e71620 Interface improvements https://github.com/LibreTime/libretime/issues/313 2017-09-29 15:50:50 +02:00
Lucas Bickel e31d5077ac Fix rebasing typo 2017-07-21 13:28:08 +02:00
Lucas Bickel fa2018a2c5 Simplify configuration file structure
This removes most of the legacy upstream config madness by not using
weird config files spread all over the place.

This isn't the solution to other config reading fragility issues, but
it does move the whole config back to the central airtime.conf file.
2017-07-21 13:15:28 +02:00
Lucas Bickel af2ca7f9a0 Only grab ldap config from ini if it exists
This is a workaround to make updating easier for folks who do not re-install. A proper solution would get rid of most of the Config class and use something based on Zend_Config_Ini instead. It would also have some sensible defaults in the code and nor error when new values get added.
2017-04-03 13:46:28 +02:00
Lucas Bickel 516f98dfcf Report on airtime-celery service in status
Adds celery checks to /?config and /systemstatus for completeness' sake.

Fixes #138
2017-04-01 10:25:12 +02:00
Lucas Bickel aa5bc06d74 FreeIPA Auth Adaptor for LibreTime
Allow delegating user authentication to FreeIPA rather than having it be checked against the database.
2017-03-31 14:16:31 +02:00
Robb e73a2941fd Merge pull request #121 from radiorabe/feature/restore-recording-feature-part-2
Fix recording through ecasound
2017-03-26 00:19:49 -04:00
Lucas Bickel b267036483 Fix recording through ecasound
This is part 2 of fixing ecasound recordings from line-in. Part 1 restored the User-Interface, part 2 takes care of getting to the point where ecasound gets started, records something and uploads it through rest when done. Part 3 will take care of making sure that the recorded file is mapped to the show and not just stored as a new track.

I refactored api_clients to not use urllib2 for posting multipart data since I was loosing my sanity over it and requests seems to have a modern approach to doing this compared to what api_clients was previously doing.
2017-03-24 15:15:37 +01:00
Lucas Bickel 314c105508 Proper translation rendering for main menu 2017-03-23 23:41:47 +01:00
Lucas Bickel 06a3ad0ed3 Re-implement version check
This makes LibreTime check its version against github releases and lets the user know when to update. It uses the red exclamation point when there is a patch release or if LibreTime is more than one major release ahead. The orange icon is used when LibreTime is on a git install, a single major update is available, or a pre-release version is installed. The green update icon gets used to signify that a new minor release is available. Finally the green checkmark will be used when you are on a stable release.
2017-03-20 20:36:46 +01:00
Lucas Bickel 88b3eb22a0 Change default email sender
The new noreply@ address is now libretime.org and the address gets moved to contants.php rather than being hardcoded in the email model.
2017-03-13 20:46:39 +01:00
Lucas Bickel 38d4fdcdda Disable all google tracking per default 2017-03-13 17:30:05 +01:00
Robb ff83784864 Merge pull request #56 from radiorabe/feature/version-reporting
Harmonize version reporting in ui and api
2017-03-11 19:06:28 -05:00
Lucas Bickel 095ddaed38 Add new columns to schema.xml and regenerate sql 2017-03-10 21:18:50 +01:00
Lucas Bickel bd18caf69d Harmonize version reporting in ui and api
Everything should use the version from the VERSION file created by the installer like this.
2017-03-10 20:38:43 +01:00
Lucas Bickel 2a53241ba3 Whitespace and deadcode nitpick 2017-03-10 16:27:46 +01:00
Robb Ebright 32a1a66378 Added AutoPlaylist Functionality to Show Scheduler enabling shows to have tracks added automatically. 2017-03-10 15:33:32 +01:00
Robb 945998f836 Merge pull request #49 from radiorabe/feature/refactor-help-menu
Update naming and links in constants
2017-03-08 20:30:12 -05:00
Lucas Bickel 272c295974 Update naming and links in constants
This is to get the help section to look better and point to somewhere users can find us. It also takes care of /dashboard/about and maybe more.

Some of the links I'm adding are 404 as we have yet to write them, I'd rather link something we have under our control rather than legacy transifex or others.
2017-03-08 16:26:18 +01:00
Lucas Bickel 7315af0304 restore /systemstatus page
All it needed was a new controller, and some small ui tweaks + re-adding to the menu. I put it in Settings » Status where I believe it belongs.
2017-03-08 14:46:33 +01:00
Lucas Bickel 7c86991c50 Merge pull request #11 from radiorabe/feature/disable-billing
Problem: Billing is always on
2017-03-04 16:10:50 +01:00
Lucas Bickel 01a954481c Merge pull request #10 from radiorabe/feature/config-rewrite-airtime-saas-folder
Rewrite config from /etc/airtime-saas to plain /etc/airtime
2017-03-04 15:56:29 +01:00
Lucas Bickel e55b95cc3b Merge pull request #7 from radiorabe/feature/turn-off-live-chat-per-default
config to disable live chat
2017-03-04 15:48:00 +01:00
Lucas Bickel e28ad471f9 Rewrite config from /etc/airtime-saas to plain /etc/airtime
This is the results of sed -i -e 's|/etc/airtime-saas/|/etc/airtime/|' `grep -irl 'airtime-saas' airtime_mvc/ python_apps/` :P

It might need more testing, the airtime-saas part never really made sense, zf1 has environments for that, ie you would create a saas env based on production for instance.

I beleive legacy upstream was using this to share configuration between customers (ie. analyser runs only once and writes to a shared S3 bucket). I assume they mount the airtime-saas folder onto individual customers instances with a global config. Like I said, I don't feel that this makes sense since all it does is make hacking at the configs in airtime-saas a bit easier. A serious SaaS operation should be using something like puppet or ansible to achieve this.
2017-03-03 15:57:41 +01:00
Lucas Bickel 6e03863fa1 Problem: Billing is always on
Solution: Make billing configurable through LIBRETIME_ENABLE_BILLING and deactivate it

This should catch all the changes needed to deactive billing in LibreTime.

* [x] only call billing when it is enabled
* [x] let super admins edit their info
* [x] dont link to billing if it is disabled
2017-03-03 15:34:54 +01:00
Lucas Bickel 8fbf4fec8b config to disable live chat
Problem: Live Chat points back to legacy upstream and I do not believe we can let them do support for us ;)

Solution: Deactivate live chat through constants.php so it never gets checked.

This is like 34db703381 but removes one more sql call and makes it easy to reactivate should anyone want to use the feature in future.
2017-03-03 15:33:19 +01:00
Lucas Bickel 10532dc4e8 Problem: Failed logins always try log in against legacy upstream
Solution: Make the login fallback optional and deactivate it in the default config.

I'm leaving the code in here mostly because I want to revisit it and make it modular so I can later on plug my own FreeIPA things :)
2017-03-03 15:32:31 +01:00
Lucas Bickel 7b04f413a0 Remove zend dep check from status and config output
It's LibreTime's responsability to ensure this (ie in packages...) and the user should not need to know about this.
2017-03-02 14:31:51 +01:00
Lucas Bickel 1ca47d67d5 Use local configuration in tests
This way the tests should really run out of the box with what is described in TESTING.md.
2017-02-28 12:16:03 +01:00
Lucas Bickel 625f92fe44 Vendorize ZF1, fix PHPUnit and configure travis
This a a rather large commit due to the nature of the stuff it is touching. To get PHPUnit up and running again I had to update some deps and I did so by vendorizing them. The vendorizing of zf1 makes sense since distros are already considering to drop it from their repos.

* [x] install vendorized zf1 with composer
* [x] load composer autoloader before zf1
* [x] Implement headAction for all Zend_Rest_Controller based controllers
* [x] switch to yml dataset to get around string only limitations of xml sets (also removed warning in readme)
* [x] use year 2044 as hardcoded date for tests since it is in the future and has the same days like previously used 2016
* [x] make tests easier to run when accessing phpunit directly
* [x] clean up test helper to always use airtime.conf
* [x] switch test dbname to libretime_test
* [x] test db username password switched to libretime/libretime
* [x] install phpunit with composer in a clear version (make tests easier to reproduce on other platforms)
* [x] remove local libs from airtime repo (most of airtime_mvc/library was not needed of in vendor already)
* [x] configure composer autoloading and use it (also removed requires that are not needed anymore)
* [x] add LibreTime prefix for FileNotFoundException (phing had a similar class and these are all pre-namespace style)
* [x] add .travis.yml file
* [x] make etc and logdir configurable with LIBRETIME_CONF_DIR and LIBRETIME_LOG_DIR env (so travis can change it)
* [x] slight cleanup in config for travis not to fail
* [x] add cloud_storage.conf for during test runs
* [x] rewrite mvc testing docs and move them to docs/ folder
* [x] don't use `static::class` in a class that does not have a parent class, use `__CLASS__` instead.
* [x] don't use `<ClassName>::class`, since we already know what class we want `"<ClassName>"` ist just fine.
* [x] fix "can't use method in write context" errors on 5.4 (also helps the optimizer)
* [x] add build status badge on main README.md

Fixes https://github.com/LibreTime/libretime/issues/4

The PHP parts of https://github.com/LibreTime/libretime/pull/10 get obsoleted by this change and it will need rebasing.

This also contains https://github.com/LibreTime/libretime/pull/8, the late static binding compat code was broken for no reason and until CentOS drops php 5.4 there is no reason I'm aware of not to support it. I inlined #8 since the test would be failing on php 5.4 without the change.

If you want to run tests you need to run `composer install` in the root directory and then `cd airtime_mvc/tests && ../../vendor/bin/phpunit`. For the tests to run the user `libretime` needs to be allowed to create the `libretime_test` database. See `docs/TESTING.md` for more info on getting set up.
2017-02-27 17:59:01 +01:00
drigato 34eb7d6e22 Merge branch 'saas-dev' into saas-dev-bandwidth-limits 2015-11-26 11:30:03 -05:00
Duncan Sommerville 0fc4f6c26f Fix Airtime bandwidth limit suspension code 2015-11-25 17:56:09 -05:00
Duncan Sommerville 82544f34d9 SAAS-1229, SAAS-1230 - initial implementation of station suspend when over bandwidth limit 2015-11-24 13:36:54 -05:00
Albert Santoni 25c54ce974 Merge branch 'saas-dev' into saas-dev-facebook-radio 2015-11-19 15:09:29 -05:00
Albert Santoni 965a78c54a Merge branch 'saas-dev' into saas-dev-publishing
Conflicts:
	airtime_mvc/application/controllers/ApiController.php
2015-11-18 12:38:18 -05:00
Duncan Sommerville 8e867b522c SAAS-1202 - move station podcast to top-level menu item 2015-11-13 14:57:32 -05:00
Albert Santoni ee99a7304f XXXX-260 - Recalculate schedule API as part of bugfix
Conflicts:
	airtime_mvc/application/configs/constants.php
	airtime_mvc/application/controllers/ApiController.php
	airtime_mvc/application/models/Scheduler.php
2015-11-06 12:49:53 -05:00
drigato a7370de832 Bump code version 2015-11-04 13:21:36 -05:00
drigato d20574dfb1 SAAS-1073: Schema upgrade for podcasts
Upgrade and downgrade done.
2015-11-03 10:57:55 -05:00
Albert Santoni 702ee97c7b Refactored Facebook Widget stuff 2015-10-30 14:38:34 -04:00
Duncan Sommerville 95aae317c6 Merge branch 'saas-dev' into saas-dev-publishing
Conflicts:
	airtime_mvc/application/controllers/plugins/PageLayoutInitPlugin.php
	airtime_mvc/public/css/dashboard.css
	airtime_mvc/public/js/airtime/library/spl.js
2015-10-29 11:21:24 -04:00
Albert Santoni 323b54d239 Rename billing menu for trials 2015-10-27 15:01:34 -04:00
Duncan Sommerville 0b1df6baf3 * SAAS-1084 - initial work on publishing API backend
* More work on automatic ingest
* Add automatic_ingest_timestamp column to ImportedPodcast
2015-10-20 19:03:34 -04:00