πŸ“° RSS/Atom feed reader
ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ
Jenkins for ownCloud 5eb0fbd67f [tx-robot] updated from transifex 2013-07-07 01:19:02 +02:00
3rdparty/htmlpurifier remove purifier tests 2013-07-01 12:39:39 +02:00
appinfo adjust routes for new api 2013-06-12 20:32:49 +02:00
backgroundjob first delete, then updated, #214 2013-06-01 11:01:25 +02:00
businesslayer also set last modified when marking feeds, folders, or all read, fix #256 2013-06-22 15:11:34 +02:00
controller When creating a feed or folder the it should purge the deleted 2013-05-21 21:10:45 +02:00
css Update items.css 2013-06-27 22:06:25 +02:00
db Modified readAll, readFolder and readFeed SQL queries 2013-07-01 14:32:22 +02:00
dependencyinjection Modified HTMLPurifier Configuration 2013-07-03 18:14:59 +02:00
external add api annotations 2013-06-22 18:18:55 +02:00
img Optimize images using optipng and scour 2013-06-16 18:29:46 +02:00
js display 40 articles by default, autopage when 20 are left 2013-07-05 16:46:20 +02:00
l10n [tx-robot] updated from transifex 2013-07-07 01:19:02 +02:00
templates make it possible to turn off mark read by scrolling 2013-07-05 14:19:20 +02:00
tests Modified testReadAll, testReadFolder and testReadAll SQL quieries 2013-07-01 14:33:34 +02:00
utility fix indention 2013-06-22 16:15:51 +02:00
.gitignore gitignore cache folder 2013-06-12 10:07:06 -04:00
.travis.yml remove xfvb code 2013-07-06 10:52:03 +02:00
AUTHORS adjust changelog 2013-06-07 19:18:29 +02:00
CHANGELOG changelog updates 2013-06-22 15:26:29 +02:00
COPYING add license file 2013-06-06 00:08:18 +02:00
Makefile fix makefile for building the zip 2013-05-21 21:20:59 +02:00
README.rst Update README.rst 2013-07-06 14:17:48 +02:00

README.rst

README
======
|travis-ci|_

The News app is a an RSS/Atom feed aggregator. It is based on the library SimplePie.

.. |travis-ci| image:: https://travis-ci.org/owncloud/news.png
.. _travis-ci: https://travis-ci.org/owncloud/news


Maintainers
-----------
* `Alessandro Cosentino <https://github.com/zimba12>`_ 
* `Bernhard Posselt <https://github.com/Raydiation>`_ 
* `Jan-Christoph Borchardt <https://github.com/jancborchardt>`_ (Design)

Bugs
----
Before reporting bugs:

* We do not support Internet Explorer and Safari (Patches accepted though, except for IE < 10)
* get the newest version of the App Framework
* get the newest version of the News app
* `check if they have already been reported <https://github.com/owncloud/news/issues?state=open>`_

----------------

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), 
check if:

* it is a valid RSS by running it through the `W3C validator <http://feed2.w3.org/>`_
* you are able to add the feed in other feed readers
* it runs without error through `SimplePie demo <http://www.simplepie.org/demo/>`_

In the case the third condition is not met, please file a bug on `SimplePie issue tracker <https://github.com/simplepie/simplepie>`_.


Before you install the News app
-------------------------------
Before you install the app check that the following requirements are met:

- `Magic quotes are turned off <http://php.net/manual/de/security.magicquotes.disabling.php>`_ (only needed for PHP < 5.4)
- `You use a browser that supports the FileReader API <https://developer.mozilla.org/en/docs/DOM/FileReader#Browser_compatibility>`_
- You can use a cron or webcron to call Background Jobs in ownCloud
- You have installed **php-curl** and activated it in the **php.ini**
- Install ownCloud **5.0.6+** (important!)

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);

You can remove the line after a page reload


App Store
---------

Installation
~~~~~~~~~~~~

- Go to the ownCloud apps page
- Activate the **App Framework** App first, then activate the **News** app in the apps menu
- `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.

Keep up to date
~~~~~~~~~~~~~~~
Both the **News** and **App Framework** App can be updated through the ownCloud apps page. 


Git (development version)
-------------------------

Installation
~~~~~~~~~~~~

- Clone the **App Framework** app into the **/var/www** directory::

	git clone https://github.com/owncloud/appframework.git

- Clone the **News** app into the **/var/www** directory::

	git clone https://github.com/owncloud/news.git


- Link both into ownCloud's apps folder::

	ln -s /var/www/appframework /var/www/owncloud/apps
	ln -s /var/www/news /var/www/owncloud/apps

- Activate the **App Framework** App first, then activate the **News** app in the apps menu

- `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.

Keep up to date
~~~~~~~~~~~~~~~

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


Keyboard shortcuts
------------------
* **Next item**: n / j / right arrow
* **Previous item**: p / k / left arrow
* **Star current item**: s / i
* **Keep current item unread**: u
* **Star item and jump to next one**: h
* **Open current item**: o

Mobile Clients
--------------

Official
~~~~~~~~
* **Platform**: Android, iOS, Windows Phone (PhoneGap), FirefoxOS
* **Status**: In development
* **Author**: `Bernhard Posselt <https://github.com/Raydiation>`_
* **Link (source)**: `https://github.com/owncloud/news-mobile <https://github.com/owncloud/news-mobile>`_
* **License**: AGPL
* **Bugtracker**: `https://github.com/owncloud/news-mobile/issues <https://github.com/owncloud/news-mobile/issues>`_

Unofficial
~~~~~~~~~~
* **Platform**: Android
* **Status**: Beta
* **Author**: `David Luhmer <https://github.com/David-Development>`_
* **Link (source)**: `Owncloud News Reader <http://david-luhmer.de/wordpress/?p=126>`_
* **Google play Store**: `buy the App <https://play.google.com/store/apps/details?id=de.luhmer.owncloudnewsreader>`_
* **License**: AGPL
* **Bugtracker**: `https://github.com/owncloud/News-Android-App/issues <https://github.com/owncloud/News-Android-App/issues>`_

----------------

* **Platform**: Blackberry 10
* **Status**: Beta
* **Author**: `Adam Pigg <http://www.piggz.co.uk/>`_
* **Link (source)**: `Own News <https://gitorious.org/ownnews/ownnews>`_
* **Blackberry World**: coming soon
* **License**: GPL


Desktop Clients
---------------

Performance Notices
-------------------
* Use MySQL or PostgreSQL for better database performance

Frequent Problems
-----------------

All feeds are not updated anymore
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
`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

All feeds are not updated and theres no cron.lock
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* 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
* If your cron works fine but owncloud's cronjobs are never executed, file a bug in `core <https://github.com/owncloud/core/>`_


Configuration
-------------
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::
 
    $this['simplePieCacheDuration'] = 30*60;  // seconds

* To let people have more read items per feed before they are purged increase::

    $this['autoPurgeCount'] = 200;  // per feed

: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


Building the package
--------------------
To build the app simply run::

    make

Then build the package with::

    make dist

The package lies in the **build/** directory and is ready to be uploaded to `the App-Store <http://apps.owncloud.com>`_

Running tests
-------------
All tests
~~~~~~~~~
To run them execute::

    make test

PHP Unit tests
~~~~~~~~~~~~~~
To run them execute::

    make unit-tests

Integration tests
~~~~~~~~~~~~~~~~~
To run them execute::

    make integration-tests

Acceptance tests
~~~~~~~~~~~~~~~~
.. note:: For acceptance tests, a user with the name **test** and password **test** must exist!

To change the url under which ownCloud is installed, set the environment variable $OWNCLOUD_HOST::

    export OWNCLOUD_HOST="localhost/core"

Otherwise it defaults to **localhost/owncloud**,

To run them execute::

    make acceptance-tests

JavaScript unit tests
~~~~~~~~~~~~~~~~~~~~~
To run them execute::

    make javascript-tests