2013-02-07 03:21:02 +04:00
README
======
2013-07-06 03:27:44 +04:00
|travis-ci|_
2013-03-23 18:30:47 +04:00
2013-04-29 17:43:35 +04:00
The News app is a an RSS/Atom feed aggregator. It is based on the library SimplePie.
2013-03-26 02:01:04 +04:00
2013-07-06 16:17:48 +04:00
.. |travis-ci| image :: https://travis-ci.org/owncloud/news.png
.. _travis-ci: https://travis-ci.org/owncloud/news
2013-07-06 03:26:10 +04:00
2013-07-06 03:18:31 +04:00
2013-04-13 03:47:19 +04:00
Maintainers
-----------
2013-04-13 03:49:31 +04:00
* `Alessandro Cosentino <https://github.com/zimba12> `_
* `Bernhard Posselt <https://github.com/Raydiation> `_
2013-04-30 00:06:32 +04:00
* `Jan-Christoph Borchardt <https://github.com/jancborchardt> `_ (Design)
2013-04-13 03:47:19 +04:00
2013-04-16 17:47:59 +04:00
Bugs
----
2013-04-17 23:15:41 +04:00
Before reporting bugs:
2013-04-17 23:15:58 +04:00
2013-04-27 20:23:41 +04:00
* We do not support Internet Explorer and Safari (Patches accepted though, except for IE < 10)
2013-04-17 23:15:41 +04:00
* get the newest version of the App Framework
* get the newest version of the News app
2013-04-29 17:53:23 +04:00
* `check if they have already been reported <https://github.com/owncloud/news/issues?state=open> `_
2013-03-23 18:22:29 +04:00
2013-06-05 19:28:10 +04:00
----------------
If you are not able to add a feed because its XML *does not validate* (see `this issue <https://github.com/owncloud/news/issues/133> `_ for an example),
2013-05-12 19:49:51 +04:00
check if:
2013-06-05 19:28:10 +04:00
* it is a valid RSS by running it through the `W3C validator <http://feed2.w3.org/> `_
2013-05-12 19:49:51 +04:00
* you are able to add the feed in other feed readers
* it runs without error through `SimplePie demo <http://www.simplepie.org/demo/> `_
2013-06-05 19:28:10 +04:00
In the case the third condition is not met, please file a bug on `SimplePie issue tracker <https://github.com/simplepie/simplepie> `_ .
2013-05-12 19:49:51 +04:00
2013-04-29 17:43:35 +04:00
2013-04-17 02:03:51 +04:00
Before you install the News app
-------------------------------
Before you install the app check that the following requirements are met:
2013-04-29 19:07:37 +04:00
- `Magic quotes are turned off <http://php.net/manual/de/security.magicquotes.disabling.php> `_ (only needed for PHP < 5.4)
2013-04-23 21:14:49 +04:00
- `You use a browser that supports the FileReader API <https://developer.mozilla.org/en/docs/DOM/FileReader#Browser_compatibility> `_
2013-04-20 18:30:47 +04:00
- You can use a cron or webcron to call Background Jobs in ownCloud
2013-04-29 17:43:35 +04:00
- You have installed **php-curl** and activated it in the **php.ini**
2013-07-06 14:57:31 +04:00
- Install ownCloud **5.0.6+** (important!)
2013-04-29 17:43:35 +04:00
Should you have upgraded from a prior version, disable the CSS and JavaScript caching by adding this to :file: `owncloud/config/config.php` ::
DEFINE('DEBUG', true);
2013-04-29 17:45:03 +04:00
You can remove the line after a page reload
2013-05-25 16:34:44 +04:00
2013-05-25 16:36:41 +04:00
App Store
---------
2013-04-29 17:49:48 +04:00
Installation
~~~~~~~~~~~~
2013-04-29 17:43:35 +04:00
- Go to the ownCloud apps page
2013-04-29 17:53:23 +04:00
- Activate the **App Framework** App first, then activate the **News** app in the apps menu
2013-04-29 17:43:35 +04:00
- `Set up ownCloud Background Jobs <http://doc.owncloud.org/server/5.0/admin_manual/configuration/background_jobs.html> `_ to enable feed updates. A recommended timespan for feed updates is 15-30 Minutes.
2013-04-29 17:49:48 +04:00
Keep up to date
~~~~~~~~~~~~~~~
2013-05-06 16:19:46 +04:00
Both the **News** and **App Framework** App can be updated through the ownCloud apps page.
2013-04-17 02:03:51 +04:00
2013-04-29 17:49:48 +04:00
Git (development version)
-------------------------
Installation
~~~~~~~~~~~~
2013-04-17 02:03:51 +04:00
2013-04-29 17:53:23 +04:00
- Clone the **App Framework** app into the **/var/www** directory::
2013-03-23 18:22:29 +04:00
git clone https://github.com/owncloud/appframework.git
2013-04-29 17:53:23 +04:00
- Clone the **News** app into the **/var/www** directory::
2013-03-23 18:22:29 +04:00
git clone https://github.com/owncloud/news.git
2013-03-23 18:23:43 +04:00
- Link both into ownCloud's apps folder::
2013-03-23 18:22:29 +04:00
ln -s /var/www/appframework /var/www/owncloud/apps
ln -s /var/www/news /var/www/owncloud/apps
2013-04-29 17:53:23 +04:00
- Activate the **App Framework** App first, then activate the **News** app in the apps menu
2013-04-12 00:26:53 +04:00
2013-04-20 18:30:47 +04:00
- `Set up ownCloud Background Jobs <http://doc.owncloud.org/server/5.0/admin_manual/configuration/background_jobs.html> `_ to enable feed updates. A recommended timespan for feed updates is 15-30 Minutes.
2013-04-29 17:49:48 +04:00
Keep up to date
~~~~~~~~~~~~~~~
2013-04-12 00:26:53 +04:00
To get the newest update you can use git. To update the appframework use::
cd /var/www/appframework
git pull --rebase origin master
To update the News app use::
cd /var/www/news
git pull --rebase origin master
2013-04-20 18:30:47 +04:00
2013-04-22 20:42:24 +04:00
Keyboard shortcuts
------------------
2013-04-29 17:51:01 +04:00
* **Next item** : n / j / right arrow
* **Previous item** : p / k / left arrow
* **Star current item** : s / i
2013-04-25 14:55:19 +04:00
* **Keep current item unread** : u
2013-06-07 21:02:54 +04:00
* **Star item and jump to next one** : h
* **Open current item** : o
2013-04-23 02:06:27 +04:00
2013-05-21 17:45:13 +04:00
Mobile Clients
--------------
2013-06-08 23:53:44 +04:00
2013-05-21 17:45:13 +04:00
Official
~~~~~~~~
2013-06-14 18:00:42 +04:00
* **Platform** : Android, iOS, Windows Phone (PhoneGap), FirefoxOS
* **Status** : In development
2013-05-27 13:44:18 +04:00
* **Author** : `Bernhard Posselt <https://github.com/Raydiation> `_
2013-06-08 23:53:44 +04:00
* **Link (source)** : `https://github.com/owncloud/news-mobile <https://github.com/owncloud/news-mobile> `_
2013-05-21 17:48:27 +04:00
* **License** : AGPL
2013-05-25 16:39:38 +04:00
* **Bugtracker** : `https://github.com/owncloud/news-mobile/issues <https://github.com/owncloud/news-mobile/issues> `_
2013-05-21 17:45:13 +04:00
Unofficial
~~~~~~~~~~
2013-06-08 23:53:44 +04:00
* **Platform** : Android
2013-06-14 18:00:42 +04:00
* **Status** : Beta
2013-05-27 13:44:18 +04:00
* **Author** : `David Luhmer <https://github.com/David-Development> `_
2013-06-08 23:53:44 +04:00
* **Link (source)** : `Owncloud News Reader <http://david-luhmer.de/wordpress/?p=126> `_
2013-05-27 14:51:27 +04:00
* **Google play Store** : `buy the App <https://play.google.com/store/apps/details?id=de.luhmer.owncloudnewsreader> `_
2013-05-27 13:44:18 +04:00
* **License** : AGPL
* **Bugtracker** : `https://github.com/owncloud/News-Android-App/issues <https://github.com/owncloud/News-Android-App/issues> `_
2013-05-21 17:45:13 +04:00
2013-06-08 23:53:44 +04:00
----------------
* **Platform** : Blackberry 10
2013-06-14 18:00:42 +04:00
* **Status** : Beta
2013-06-08 23:53:44 +04:00
* **Author** : `Adam Pigg <http://www.piggz.co.uk/> `_
* **Link (source)** : `Own News <https://gitorious.org/ownnews/ownnews> `_
* **Blackberry World** : coming soon
* **License** : GPL
2013-05-21 17:45:13 +04:00
Desktop Clients
---------------
2013-04-23 02:06:27 +04:00
Performance Notices
-------------------
2013-04-23 14:25:27 +04:00
* Use MySQL or PostgreSQL for better database performance
2013-07-03 12:48:50 +04:00
Frequent Problems
-----------------
2013-07-03 12:57:27 +04:00
All feeds are not updated anymore
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2013-07-03 12:48:50 +04:00
`This is a bug in the core backgroundjob system <https://github.com/owncloud/core/issues/3221> `_ deleting the :file: `owncloud/data/cron.lock` file gets the cron back up running
2013-07-03 12:57:27 +04:00
All feeds are not updated and theres no cron.lock
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2013-07-03 12:48:50 +04:00
* Check if the cronjob exists with **crontab -u www-data -e** (replace www-data with your httpd user)
* Check if the cronjob is ever executed by placing an **error_log('updating')** in the `background job file <https://github.com/owncloud/news/blob/master/backgroundjob/task.php#L37> `_ . If the cronjob runs, there should be an updating log statement in your httpd log.
* If there is no **updating** statement in your logs check if your cronjob is executed by executing a different script
2013-07-03 12:56:25 +04:00
* If your cron works fine but owncloud's cronjobs are never executed, file a bug in `core <https://github.com/owncloud/core/> `_
2013-07-03 12:48:50 +04:00
2013-05-15 13:53:51 +04:00
2013-04-23 14:25:27 +04:00
Configuration
2013-04-29 17:54:41 +04:00
-------------
2013-04-23 14:25:27 +04:00
This will be in a seperate config file in the future but for now you can tweak the folowing things.
:file: `dependencyinjection/dicontainer.php`
* To cache feeds longer increase::
2013-04-23 14:26:27 +04:00
$this['simplePieCacheDuration'] = 30*60; // seconds
2013-04-23 14:25:27 +04:00
2013-04-23 14:26:27 +04:00
* To let people have more read items per feed before they are purged increase::
2013-04-23 14:25:27 +04:00
2013-04-23 14:26:27 +04:00
$this['autoPurgeCount'] = 200; // per feed
2013-04-23 14:25:27 +04:00
:file: `js/app/app.coffee`
All changes in the coffee file have to be compiled by using::
make
in the **js/** directory
* To increase the interval when the app fetches new entries from database(!, not the webpage, thats set by the backgroundjob interval) change::
feedUpdateInterval: 1000*60* 3 # miliseconds
2013-05-07 19:50:37 +04:00
2013-05-07 19:56:07 +04:00
Building the package
--------------------
To build the app simply run::
make
2013-05-07 20:04:41 +04:00
Then build the package with::
2013-05-07 19:56:07 +04:00
make dist
2013-05-07 20:04:41 +04:00
The package lies in the **build/** directory and is ready to be uploaded to `the App-Store <http://apps.owncloud.com> `_
2013-05-07 19:50:37 +04:00
Running tests
-------------
2013-05-07 23:38:41 +04:00
All tests
~~~~~~~~~
2013-05-07 23:40:13 +04:00
To run them execute::
2013-05-07 19:50:37 +04:00
make test
2013-05-07 23:38:41 +04:00
PHP Unit tests
~~~~~~~~~~~~~~
2013-05-07 23:40:13 +04:00
To run them execute::
2013-05-07 19:50:37 +04:00
2013-05-07 20:01:28 +04:00
make unit-tests
2013-05-07 19:50:37 +04:00
2013-05-07 23:38:41 +04:00
Integration tests
~~~~~~~~~~~~~~~~~
2013-05-07 23:40:13 +04:00
To run them execute::
2013-05-07 19:50:37 +04:00
2013-05-07 20:01:28 +04:00
make integration-tests
2013-05-07 19:50:37 +04:00
2013-05-07 23:38:41 +04:00
Acceptance tests
~~~~~~~~~~~~~~~~
2013-05-07 19:50:37 +04:00
.. note :: For acceptance tests, a user with the name **test** and password **test** must exist!
2013-05-07 23:37:12 +04:00
To change the url under which ownCloud is installed, set the environment variable $OWNCLOUD_HOST::
2013-05-07 23:36:19 +04:00
2013-05-07 23:44:19 +04:00
export OWNCLOUD_HOST="localhost/core"
2013-05-07 23:36:19 +04:00
2013-05-07 23:40:59 +04:00
Otherwise it defaults to **localhost/owncloud** ,
2013-05-07 23:40:13 +04:00
To run them execute::
2013-05-07 19:50:37 +04:00
2013-05-07 20:01:28 +04:00
make acceptance-tests
2013-05-07 23:38:41 +04:00
JavaScript unit tests
~~~~~~~~~~~~~~~~~~~~~
2013-05-07 23:40:13 +04:00
To run them execute::
2013-05-07 20:01:28 +04:00
2013-05-12 19:49:51 +04:00
make javascript-tests