$Id: readme.txt,v 1.1.1.1 2006/01/03 05:05:59 ohwada Exp $

=================================================
Version: 0.11
Date:   2006-01-21
Author: Kenichi OHWADA
URL:    http://linux2.ohwada.net/
Email:  webmaster@ohwada.net
=================================================

* changes *
(1) add module number to block name
(2) add descent id order to record list
(3) change method to update record
(4) correct broken link of menu.php

=================================================
Version: 0.10
Date:   2006-01-01
Author: Kenichi OHWADA
URL:    http://linux2.ohwada.net/
Email:  webmaster@ohwada.net
=================================================

* Module Outline *
This module collects RDF/RSS/ATOM feeds from the registered sites, and stores in a database.
This module searchs feeds in database, and carries out the search results in RDF/RSS/ATOM form.

This module becomes independent from the RDF/RSS/ATOM function of WebLinks module,
and enhances more powerful.

This module aims the platform of RDF/RSS/ATOM feeds.
As an example of application, like a headline module, like the Web Service http://sf.livedoor.com/.

Now, it is the beta version. 
From now on, the specification and implementation may change sharply. 
Even if some problems come out, only those who can do somehow personally need to use. 
Welcome the proposal of specification or the example of application, a bug report, a bug solution, and your hack, etc.


* Main Function * 
1. Site Registration 
Enter A site name, site URL, URL of RDF/RSS/ATOM, cash time, etc.

2. RDF/RSS/ATOM Auto Discovery 
If a site corresponds to "RDF/RSS/ATOM Auto Discovery",
when you register the URL of a site,
this module will detect automatically the URL of RDF/RSS/ATOM, and register it. 

3. Blacklist 
If you register Blog Search Sites, such as http://sf.livedoor.com/,
this module may collect feeds which you dont desire. 
If you register the URL of undesirable site into a blacklist, 
this module will stop to collect feeds from this site.

4. How to collect RDF/RSS/ATOM feeds
This module supports three methods. 

4.1 Someone accesses by WEB browser. 
When someone accesses a simple headline page or block.
this module collects automatically RDF/RSS/ATOM feeds.
This module collects feeds form the only sites to show in the simple headline. 
A timeout may be carried out, if there are many sites to show in the simple headline. 

4.2  An administrator collects manually. 
This module supports "archive management" in admin page. 

4.3  Automatically in the command line mode. 
Look "setup of a command line".

5. XML Parser of RDF/RSS/ATOM feed
5.1  Character Code 
This module can correspond to many character codes. 
However, if there is no specification of a character code in XML format,
or XML use character code which PHP multi-byte function does not support,
this module may not parse it correctly.
Since PHP XML parser function support only US-ASCII or UTF-8,
this module converts another character code to UTF-8, and parses it.

5.2  Parser Selection 
According to XML form as RDF or RSS or ATOM,
this module will select XML parser automatically. 
Furthermore, this module support two or more parser,
you can select a favorite parser.
this module support the XOOPS core's RSS parser and this module's original parser.
The original parser can parse many items than XOOPS parser.

6. Show of RDF/RSS/ATOM feeds
(1) allow to use HTML tags, or not
You can choice to use HTML tags, or not, in Title and Content.
If you choise use HTML tags and Content contains Java Script, 
this module may sanitaize JS, and JS will become invalid. 

7. Processing of a deficient RDF/RSS/ATOM feeds 
(1) no title
If feed have no tile,
this module substituted by "---", and show it

(2) no date
If feed have no date, this feed may be shown always in the tail end.
This module substitute by present time, and store it to database.

(3) future date
If feed have future date, this feed may be shown  always in top line.
This module show feeds except more than 3 days future.

8. Server environment 
(1) This module corresponds to PHP allow_url_fopen is off. 

9. Import from other Module 
9.1 XoopsHeadline Module
This module can import the data from XoopsHeadline Module,
such as headline table. 

9.2 WebLinks Module
This module can import the data from WebLinks Module,
such as link table, feed table, and blacklist. 
A present, there is no cooperation function with RSSC and WebLinks.
You MUST continue to use WebLinks RSS/ATOM function.

10. Module Duplicate 
This module can be duplicated only by copying. 
It is the same function as TinyD module, etc. 
Currently prepared module name are "rssc" and "rssc0" . 
When you want touse another name,
please create necessary files in sql, templates, and images directory. 


* Installation *
(1) Unzip rssc.zip.
    The directory "rssc" will be made. 
(2) Install RSSC module in XOOPS admin page. 
(3) Click RSSC icon, and goto the management page of RSSC module. 
(4) In first time, some warning are displayed.
  (i) The config table is not initialized 
      Click save, and initialize. 
  (ii) Not writable the directory. 
       Permit to write in rssc/cache directory. 
(5) Confirm that "xoops.org" is registered by "Link List" 
(6) Execute "Refresh Archive" in "Archive Management"
(7) Click "Goto Module", and show the top page of RSSC module.
(8) The latest feeds is showing, it will be OK.
(9) If necessity, import data from XoopsHeadline module or WebLinks module. 

* setup of a command line *
This function is assumed to execute a command line periodically by Cron. 
Please delete bin directory, if unnecessary. 

(1) Goto admin page.
(2) Execute "Create Config File" in "Command Manage".
(3) Execute "Test to execute bin/refresh.php".

(4) Add the following to crontab. 
-----
22 3 * * * /usr/bin/php -q -f /home/***/html/modules/rssc/bin/refresh.php password 
-----
password is displayed "password" at "Command Config" in "Module Configration".


* TODO *
(1) In XML parser, add magpieRSS and PEAR RSS. 
(2) Make the structure which shares a blacklist. 
(3) Make the sample which cooperates with other modules.
(4) Add search result block
(5) show whith HTML tag ina headline. 
(6) Add the list of headlines link in admin page.

