Commit Graph

7369 Commits

Author SHA1 Message Date
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
Robb 0f909a9ec8 Merge pull request #48 from radiorabe/feature/systemstatus
re-implement /systemstatus
2017-03-08 20:29:12 -05:00
Lucas Bickel 779081f4e0 Debrand big gray from old error page 2017-03-08 16:47:07 +01:00
Lucas Bickel 8f27f6c8e3 Debrand favicon.ico as well 2017-03-08 16:45:40 +01:00
Lucas Bickel c8c3f89a4b quick and dirty logo debranding
I'm replacing them all with empty images under the assumption that we will want to re-add a new logo. This is just to ensure that we can release LibreTime without infringing upon the sourcefabric trademark for now.
2017-03-08 16:37:26 +01: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 70e6135e93 Restore full disk usage not based on quota
This is mostly a restore of how this used to be implemented.
2017-03-08 15:56:43 +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
Robb 7a32d5534d Merge pull request #43 from radiorabe/feature/record-line-in
Re-enable record line in feature
2017-03-06 18:45:54 -05:00
Robb 1279ce62d8 Merge pull request #37 from radiorabe/feature/no-sad-tape-for-facebook
Add empty default Facebook config
2017-03-06 18:34:03 -05:00
Robb d86e223c45 Merge pull request #28 from radiorabe/feature/robbt/podcast-naming
Podcast naming feature as per #26
2017-03-06 18:12:57 -05:00
Lucas Bickel f8bf67792c Re-enable record line in feature
I did a quick check and added a show, ecasound is also still being installed, I see no further reason why this should not work but we will need to get some real tests done to be sure.

Fixes #42
2017-03-06 17:51:19 +01:00
Lucas Bickel e69bc9dc00 Merge pull request #41 from radiorabe/comiconomenclaturist/hw-output
Re-enable hw output
2017-03-06 13:14:15 +01:00
Lucas Bickel 9e05e91dde Add empty default Facebook config
This will get rid of the sad tape error on the facebook widgets page `/embeddablewidgets/facebook`. We will probably end up having to document how to set up facebook properly, but I'd like to take care of that while I'm testing against real facebook.
2017-03-05 14:13:01 +01:00
Lucas Bickel d374ab2b3b Fix call to get_author()
This was introduced by the zf1 mega commit 625f92fe44.

625f92fe44 (commitcomment-21156925)
2017-03-05 12:26:54 +01:00
Lucas Bickel bd7091ae59 Merge pull request #35 from Robbt/install_script_fixes
Added sample cloud_storage.conf to build dir and install script, chan…
2017-03-05 11:49:13 +01:00
Robb 0abfa7f018 Merge pull request #23 from radiorabe/feature/stop-using-reflection-inproduction-code
stop using reflection in production code
2017-03-04 22:25:34 -05:00
Robb 6085a8fd27 Merge pull request #22 from radiorabe/feature/use-zend-file-transfer-for-plupload
Use Zend_File_Transfer instead of $_FILES
2017-03-04 22:15:19 -05:00
Robb Ebright 86b1fcbf7c Added sample cloud_storage.conf to build dir and install script, changed production dir to symlink, added libretime ASCII art logo 2017-03-04 19:44:01 -05:00
Robb da1181e6ca Merge pull request #25 from radiorabe/feature/default-soundcloud-config
Add default soundcloud config
2017-03-04 17:56:17 -05: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 96eb746f18 Merge pull request #9 from radiorabe/feature/missing-arg
Add missing argument to playlistNotFound call
2017-03-04 15:48:22 +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
Robb Ebright 481c049c97 added passing podcast title to download function 2017-03-04 13:38:36 +01:00
Robb Ebright 2cebb7dfa2 first part of the adding album tags to podcast downloads 2017-03-04 13:38:36 +01:00
Lucas Bickel c7ab886d2a Add default soundcloud config 2017-03-04 12:33:37 +01:00
Lucas Bickel 0b704e95f1 Use Zend_File_Transfer instead of $_FILES
This should give us more information in the case of an error and is the framework idiomatic way to handle a RESTful file upload.

I'm hoping this helps debug https://github.com/LibreTime/libretime/issues/3
2017-03-04 11:09:06 +01:00
Lucas Bickel 09aea8b747 stop using reflection in prooduction code
Problem: Reflection is a debugging tool and not really meant for use on production. There are easier ways to check if a class implements an interface with `is_a()`.

Solution: Get rid of reflection use and switch to `is_a()` in TaskManager, refactor the Enum thing that does not make sense since it is not being used.

The `is_a()` solution is really straightforward and has been supported in php for ages.

The Enum thing was a copy paste hack from stackoverflow and ignored the simple solution mentioned there while not using the features of the advanced one.
2017-03-03 22:48:19 +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 4875bc37a8 Add missing argument to playlistNotFound call
Was on 2.5.x as 7dbf4cf5d2d37057e1f5ab72cb12ffcc5ddc1ccb
2017-03-03 15:34:21 +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 39fb738945 Always log locally during test run 2017-03-02 16:45:34 +01:00
Lucas Bickel 898a1ce545 Let soudcloud fail gracefuly when unconfigured
This makes general preferences look nice again, even when no soundcloud id and secret is configured (those don't belong us).
2017-03-02 14:47:16 +01:00
Lucas Bickel 51960a891f Manual loading fix for more classes in Zend_ pseudo-ns 2017-03-02 14:40:29 +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 4a7f3ea001 Fix preference page with customer ImageSize plugin
As noted in the code, this was getting loaded in a rather special way.
2017-03-02 14:29:19 +01:00
Lucas Bickel 693f1f6e51 Remove system zf1 from test include path 2017-03-02 13:57:56 +01:00
Lucas Bickel 021bf38c1b Remove phing StringHelper dependency
I had only really looked for requires previously, this one caught me off guard as using an include is quite anachronistic.

I did some digging and figured out, that this is the only occurence of such phing use I can find.
2017-03-02 13:25:50 +01:00
Lucas Bickel 21a319767f Fix missing AMQPConnection errors in setup
Also fixes them elsewhere, apart from having switched to a vendorized version, I also used one that is already namespaced.

The easy way out here is to use it in the namespaced fashion, it is only used in a few places and I know the library well enough to be certain that nothing much changed apart from the namespacing.
2017-03-02 12:38:44 +01:00
Lucas Bickel 7f3f420763 Regression: travis db is on localhost
This is one of the "small" things I need to take care of on my local env. Once the value is changeable through more than just the config file, I'll won't be touching these in my docker envs as much.
2017-02-28 12:29:40 +01:00
Lucas Bickel 4936b16bc1 Load autoloader early so setup can use it
Also fixes a @include_once check that is now much easier.
2017-02-28 12:25:24 +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
comiconomenclaturist 9017418b4e modified: airtime_mvc/application/forms/StreamSetting.php
modified:   install
2017-02-27 16:47:26 +00:00
Robb Ebright 276a69aa1b Porting commits from downloaded zip file of saas-dev branch 2017-02-13 18:22:22 +01:00
Albert Santoni db596d54b5 Fix bug in my last commit 2015-12-11 12:29:59 -05:00
Albert Santoni 2594105a5e Handle unknown plan types more gracefully with the bandwidth limit 2015-12-11 10:19:11 -05:00