[grisbi-cvs] grisbi-web/newsportal/doc bugs.txt, NONE, 1.1 captcha.txt, NONE, 1.1 faq.txt, NONE, 1.1 history.txt, NONE, 1.1 layout.txt, NONE, 1.1 quickstart.txt, NONE, 1.1 readme.txt, NONE, 1.1 todo.txt, NONE, 1.1
NIEL Gérald
gegeweb at users.sourceforge.net
Mon May 24 17:03:51 CEST 2010
Update of /cvsroot/grisbi/grisbi-web/newsportal/doc
In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv18681/doc
Added Files:
bugs.txt captcha.txt faq.txt history.txt layout.txt
quickstart.txt readme.txt todo.txt
Log Message:
news version off newsportal
--- NEW FILE: history.txt ---
0.38 (16.7.2008)
- mechanisms against spam (form field name encryption)
- stronger mechanism against spam: support for a CAPTCHA
- documented the API to connect newsportal to existing user databases
(see extras/registration/README)
- some bugfixes
0.37 (16.5.2006)
- repaired a MAJOR SECURITY HOLE. Please update!
- fixed a small cross site scripting security hole
- fixed some layout problems
- improved stability
- fixed a problem in decoding attachments, by Cheng Kwok Wing, William <kwokwing at ust.hk>
0.36
- bugfix in mime-attachment support (by Eckhard Voellm, ev at iltis.maxdsl.de)
- in flat-view, long articles can now be cut after some lines
- should be compatible to php5 now
0.36pre3
- split the main newsportal.php in more smaller files
- flat-view of an article thread
- thread.php can now also display only the first article of a thread
- renamed some options in config.inc.php
- faster rendering of single articles
0.36pre1 and 0.36pre2
- enhanced CSS support
- added a little rss backend (extras/rss/backend.php)
- bugfix: timezone interpretation in the header-parser
- bugfix: article overview parsing
- bugfix: newsportal didn't detect empty spool-files
- enhanced cache management
- grouplist in index.php is now also cached
- began to restructure the code
- some minor changes
- updated danish translation, by Rasmus Bog Hansen <moffe at amagerkollegiet.dk>
0.35pl1 (3.4.2004)
- bugfix: broken displaying of articles without Content-Type header
0.35 (2.4.2004)
- bugfix in attachment.php, by rainer scherg <rainer.scherg at nospam.de>
- bugfix in quoted printable encoding + character set recoding, by
Paulius Bulotas <paulius at kaktusas.org>
- bugfix in index.php: empty lines in groups.txt made problems
- security bugfix: it was possible to overwrite files on the webserver,
by Jordan Russell <jr at quo.to>
- Fixed answering of articles, that contains backslashes (in body or subject)
- improved text->html regexp, by Jordan Russell <jr at quo.to>
- fixed the frames-support
- generation of message-ids
- support for anonymous posting
- some minor changes and bugfixes
0.34 (15.2.2004)
- some small bugfixes, some by DJ TRanx <tranx at djcentral.com>
- fixed bug in lib/check.php
- changes in polish language file, by DJ TRanx <tranx at djcentral.com>
0.33 (12.2.2004)
- fixed bug: on some php-versions posting new messages was impossible
- fixed bug in lib/check.php
- possibility to suppress mailto-links in the thread- and article-view and
to rewrite the address to make it invisible for spam-harvesters
0.32 (10.2.2004)
- fixed bug: replaced spaced at the beginning of lines by   instead
of , by Rasmus Bøg Hanasen <moffe at amagerkollegiet.dk>
- new language: danish, by Rasmus Bøg Hanasen <moffe at amagerkollegiet.dk>
0.31 (8.2.2004)
- fixed bug in threading which caused crash on some articles
- fixed bug that made problems with group-specific configs
- new module checks some settings the user made in the config
- fixed bug in post.php that made replying impossible
- fixed bug in cancel.php
0.30 (7.2.2004)
- trim references header when posting an article
- small change for russian charsets in post.php,
by Kirill Mantulnikov <maki at rusfmpro.ru>
- small bugfix in german language file, by Yogi <jo_bo at nexgo.de>
- some code cleanup
- repaired ascii-art filter
0.29 (4.2.2004)
- sort threads in groups by the newest article in a thread
- newsportal now runs with the Changi Newsserver
- Fixed comments in CSS stylesheet,
by Wolfgang Scheicher <worf at sbox.tu-graz.ac.at>
- improved text to html function
- Several whitespaces in text result in more space between the words,
important for ascii-art
- individual settings for groups or hierarchies, set groups read-only or
give them other languages or charsets, for example
- some small bugfixes
0.28 (20.1.2004)
- basic support for CSS stylesheets
- Added some mimetyes, by DJ TRanx <tranx at gazeta.pl>
- fixed bug in displaying threads,
by Gunter Ohrner <G.Ohrner at post.rwth-aachen.de>
- Fixed sending QUIT message to newsserver when getting article from it
by DJ TRanx <tranx at gazeta.pl>
- added some TLDs to the function, that convert URLs inside texts to
hyperlinks, by DJ TRanx <tranx at gazeta.pl>
- repaired article-raw.php, by DJ TRanx <tranx at gazeta.pl>
- renamed config.inc to config.inc.php
- included the "babbel-net" newsgroups file in extras/babbel-net/
0.27 (6.1.2003)
- some small bugfixes
- Russian translation, by Dmitry E Gouriev, gouriev at icenet.ru
- Charset of new posts and webpage is defined in config.inc via $www_charset,
by Dmitry E Gouriev, gouriev at icenet.ru
- Normal addressing of attachments
- automatic conversion of the charset in articles to be read, with help of
the iconcv-extension of PHP
- fixed some html-bugs in thread.php + removed a table, by
Wolfgang Scheicher <worf at sbox.tu-graz.ac.at>
0.26 (28.12.2003)
- major speed improvenments of the thread.php because of a html-cache
- New layout of index.php
- Discerning posts with format=flowed, with reading and posting
- fixed attachment.php
0.25 (13.3.2003)
- some small bugfixes
0.24
- Individuelle Autentifizierung der Benutzer am Newsserver
(Patch von Jan Dankert, jandankert at jandankert.de)
- laeuft nun auch mit register_globals=off
- jedemenge Bugfixes
- finnish.lang (von Markku Lehtola, markku at markkulehtola.com)
0.24pre9 (20.8.2002)
- Signaturtrenner beim posten, $cutsignature
- (was: ...) im Subject wird beim reply abgetrennt
- artikel, die beim aufruf von article.php als gelöscht auffallen,
werden nun aus dem im spool gespeicherten thread geloescht.
- Subthreads in article.php
- artikel-cache etwas verbessert, noch immer experimentell
- paar optimierungen und bugfixes
0.24pre6 (8.3.2002)
- Attachmentanzeige sollte nun gehen...
- Frames werden wieder unterstuetzt
0.24pre4 (29.10.2001)
- Tschechisches Sprachpaket (Dank an Michal Sanger, sanger at math.muni.cz)
- kleinere Fehler entfernt
0.24pre3 (17.05.2001)
- Mime-multipart-nachrichten werden nun dekodiert, und die attachments
können einzeln abgerufen werden
- Artikel können nun im spool-verzeichnis gecached werden
- Nicht gefundene Artikel oder Attachments liefern nun einen 404-Header
in der article.php3 bzw. attachment.php3
- kleine Geschwindigkeitsverbesserungen
- Die einzelnen Seiten haben nun einen Expires:-Header, so daß sie nicht
bei Abruf des Users vom Browser neu angefordert werden, und Proxys besser
cachen können
- Header mit 8bit-Zeichen werden nun quoted-printable kodiert
- Bugfix: Die Cookies fuer das Speichern von Name und E-Mail beim Schreiben
von Artikeln bleiben nun 3 Monate erhalten.
- Bugfix: Fehler bei der Dekodierung von base64-kodierten Headerzeilen behoben
- türkische und polnische Sprachunterstützung.
0.23 (19.12.2000)
- Ein einigen Stellen wurden bei bestimmten PHP-Versionen bzw. Konfigurationen
Warnungen ausgegeben
- Frames funktionierten nicht zusammen mit mehrseitigen Threads
- Threading war ein wenig defekt
- Slovenisches Sprachpaket hinzugefügt (Dank an Tomaz Zelic,
tomaz.zelic at siol.net)
- in der Artikelansicht sind die References nun mit Links hinterlegt und
werden nur noch duchnummeriert, und nicht mehr voll ausgeschrieben
- Die Organization-Headerzeile wird nun in der Artikelansicht nach URLs
durchsucht, die dann mit Links hinterlegt werden
0.22 (15.10.2000)
- Man kann nun den Thread seitenweise durchblaettern
- htmlentities() durch htmlspecialchars() ersetzt: ermoeglicht nun auch
die Anzeige diverser laenderspezifischer Zeichen.
- Massenhaft "Re:" oder "Aw:" werden nun im Thread und beim Antworten auf
Artikel zusammengekuerzt
- Bei einigen Versionen von PHP funktionierte das Laden der Spooldateien
nicht
- bosnisches, italiaenisches und portugiesisches Sprachpaket hinzugefuegt
Aenderungen von Georg Burkhard (Georg.Burkhard at roma-online.de):
- Gefaltete Headerzeilen werden nun ordentlich zusammengefuegt anstatt
gekuerzt
- Sicherheitsloch gestopft: Alle Zeilen, die nach einem einzelnen "." beim
Schreiben eines Artikels standen, wurden nicht in den Artikel uebernommen,
sondern vom Newsserver als Befehle interpretiert.
- Kleiner Fehler bei der Anzeige der References im Artikel behoben
0.21 (5.6.2000)
- Verbesserte Unterstuetzung fuer Browser ohne Frameunterstützung (z.B. Lynx)
innerhalb der Frameunterstuetzung von Newsportal
Aenderungen von Samuel Hocevar (sam at via.ecp.fr):
- Einige Aenderungen der HTML-Syntax um XHTML-Konform zu werden
- Die body.inc enthaelt nun auch den Header der HTML-Dateien
- die footer.inc wird an jede Datei angehaengt
- das franzoesische Sprachpaket ist nun komplett
0.20 (17.5.2000)
- Base64 kodierte Headerzeilen werden nun korrekt dekodiert.
- das franzoesische Sprachpaket wurde stark erweitert (Dank an
Samuel Hocevar (sam at via.ecp.fr)
0.19 (15.3.2000)
- Es kann fuer das Posten von Artikeln ein anderer Newsserver angegeben
werden.
- Man kann nun eine Datei angeben, die an jede Nachricht angehaengt wird,
die mit NewsPortal geschrieben wird.
- Bugfix: Newsportal hing in einer Endlosschleife fest, wenn man eine
leere Newsgruppe betreten hat, und man einen Microsoft Newsserver benutzt
hat
0.18 (13.3.2000)
- Man kann nun einstellen, ob die Spooldateien komprimiert werden sollen
oder nicht. Das Abschalten der Kompression kann sinnvoll sein, wenn man
eine aeltere PHP-Version benutzt, die Kompression nicht unterstuetzt
- Die Spooldateien werden automatisch neu aufgebaut, wenn man in der
Konfigurationsdatei Optionen veraendert hat, die sonst erst nach einem
manuellen Loeschen der Spooldateien wirksam geworden waeren
0.17 (11.3.2000)
- Neue Layoutmoeglichkeiten fuer die Artikeluebersicht, die Routinen wurden
teilweise neu geschrieben, und sind nun leichter fuer jeden individuell
anpassbar.
- Weitere URLs werden erkannt und anklickbar gemacht: https://, news:// und
gopher://, zudem werden bestimmte Adressen in der form www.domain.de
erkannt, bei denen das einleitende http:// fehlt.
- Auch die Texte in post.php3 koennen nun auch über die .lang Dateien an
verschiedene Sprachen angepasst werden.
- Es ist nun nicht mehr moeglich, durch Crossposts oder Followups in
Gruppen zu schreiben, auf die man sonst keinen Zugriff haette.
- Neue, etwas schnellere und flexiblere Technik zur Verwaltung der
Spooldateien eingebaut
- Die Routine zur Dekodierung von Quoted-Printable kodierten Headerzeilen
nach RFC 2047 wurde verbessert
- eMail-Adressen koennen vor dem Posten geprueft werden, um Missbrauch
ein wenig einzuschraenken
- in der groups.txt koennen nun zusaetzlich Beschreibungen der Newsgruppen
eingetragen werden
- Bugfix: schreibgeschuetzte Newsserver koennen nun auch benutzt werden.
- Bugfix: # innerhalb von http-URLs wurden nicht als der URL zugehoerig
erkannt
- Bigfix: Der Nachrichtenbody wurde nicht korrekt angezeigt, wenn er
Quoted-Printable kodiert wurde, und die Angaben im header dazu gross
geschrieben sind.
- Bugfix: in der Routine, die entscheidet, welche Artikelinformationen im
Spool vorliegen, und welche zusaetzlich noch angefordert werden muessen,
gab es einige Ungereimtheiten.
- Bugfix: " im Subject beim Schreiben von Artikeln werden nun korrekt
abgeschickt anstatt in der Form \"
0.16 (15.2.2000)
- Bugfix: Bearbeitung der Webseite wurde komplett unterbrochen, wenn ein
Fehler aufgetreten ist. So konnten z.B. Tabellen nicht mehr geschlossen
werden.
- Frameunterstuetzung
- Unterstuetzung fuer passwortgeschuetzte Newsserver
- ueberarbeitete Funktion zur Erkennung von URLs in Texten
- Fehlerhafte Spool-Datenbanken werden nun erkannt und sofort geloescht.
0.15 (24.19.1999)
- Bugfix: Newsgruppen, deren Namen Zeichen wie + oder & enthalten, können nun
auch gelesen werden.
- HTML-Tags innerhalb vom Nachrichtenkopf (eMail-Adresse, Subject) werden
nun sowohl in der Threadansicht als auch in der Artikelansicht im
Klartext angezeigt
- Das Datumsformat bei der Anzeige von Artikeln kann nun in den
Sprachdefinitionsdateien angegeben werden.
- Bugfix: Kursivschrift in Artikeln bei gequotetem Text funktioniert wieder
0.14 (18.12.1999)
- Datumsangaben werden nun als Unix-Timestamps verwaltet, so daß endlich
Zeitmessungen möglich sind (Farbmarkierungen, Sortierung)
- in der Artikelübersicht können die Datumsangaben je nach Alter der
Nachricht farblich markiert werden
- Sortierung der Artikel in der Artikelübersicht kann festgelegt werden
- Bugfix: Ist der Newsserver nicht erreichbar, werden keine sinnlosen
Meldungen mehr ausgegeben, sondern die Bearbeitung abgebrochen.
- weitere Meldungen in die Sprachdefinitionsdateien ausgelagert
- Hinweis: die Spool-Dateien müssen bei einem Update gelöscht werden
0.13 (17.12.1999)
- Zeilenumbruchbehandlung überarbeitet
- Bugfix: schon geladene Artikelinformationen wurden überflüssigerweise
unter bestimmten Bedingungen nochmal geladen (Geschwindigkeitsverlust)
- Begonnen, Meldungen und bestimmte Begriffe in einer extrernen Datei zu
definieren, um leicht zwischen verschiedenen Sprachen wechseln zu können
und um einfacher kleine Aenderungen am Layout machen zu können.
0.12 (15.12.1999)
- Subjectzeilen können in der Länge begrenzt werden
- Bugfix: auf dem Newsserver gelöschte Artikel waren in der Artikelübersicht
noch sichtbar
- HTML-Tags in Artikeln werden nun nicht mehr vom Browser interpretiert,
sondern im Klartext angezeigt.
- Der User-Agent kann nun auch im Artikel angezeigt werden
0.11 (23.11.1999)
- Bugfix: Die Organization-Headerzeile wird wieder mit veschickt beim Posten
- Bessere Fehlermeldungen beim Schreiben, wenn Eingabefelder nicht
ausgefüllt worden sind
- Bugfix: Nur die neuen Artikeloverview-Daten werden wieder vom Newsserver
angefordert.
- Bugfix: Falsches einfuegen von Quotezeichen beim Antworten korrigiert
0.10 (29.10.1999)
- Etwas neue Struktur, Artikel werden nun nicht mehr über ihre ID
referenziert, sondern über ihre nummer in der Newsgruppe zusammen mit
dem Gruppennamen.
- Überlange Zeilen werden nun korrekt eingelesen
- Falls es mehrere Zeilen Beschreibung (durch Doppeleinträge) für eine
Newsgruppe gibt, kommt es nun nicht mehr zum Fehler
- http-Links können nun direkt angeklickt werden
- Quoted-Printable-Dekodierung scheint nun fehlerfrei zu sein
0.9pl1 (17.10.1999)
- Kleinen Fehler behoben, der das Antworten auf Artikel unmöglich gemacht
hat
0.9 (16.10.1999)
- Followup-To Header wird beim Antworten auf einen Artikel beachtet
- Gruppen, die nicht in der groups.txt eingetragen sind, können nun nicht
mehr eingesehen werden.
- Ein kleiner Fehler bei der Übergabe der Message-IDs, der von den meisten
Newsservern ignoriert wird, wurde entfernt.
- Etwas verbesserte Quoted-Printable-Dekodierung (aber leider noch immer
nicht ganz fehlerfrei, kommt aber noch)
0.8 (12.10.1999)
- Einige Dateien umbenannt
- das Schreiben von Artikeln kann verboten werden
- das Anzeigen von Artikeln, die Leerzeilen enthalten, was bei einigen
nicht funktionierte, funktioniert nun
- Die Namen der php3-Dateien können nun variiert werden
- Die Anzeige von Datum, Subject und Autor in der Artikelübersicht kann
unterbunden werden
- Die Anzeige der Headerzeilen in der Artikelansicht kann konfiguriert
werden
- Die in der config.inc angegebenen Optionen können nun innerhalb der
php3-Dateien überschrieben werden, um im Einzelfall eine andere
Darstellung zu erzwingen
0.7 (9.10.1999)
- Einige kleinere Fehler behoben
- Optional Cookies eingefuehrt, um email-adresse und Namen des Benutzers
speichern zu können
- Die Darstellung des Artikelbaumes kann nun variiert werden.
- Die Anzahl der anzuzeigenden Artikel kann begrenzt werden.
0.6pl1 (8.10.1999)
- Dateinamen von .phtml nach .php3 benannt
- config nach config.inc umbenannt
- groups.txt wird nun komplett eingelesen
- fehlender </head> Tag ergaenzt
- imap-Funktionen entfernt, so daß das Skript nun ohne imap-unterstuetzung
laufen sollte
0.6 (6.10.1999)
- Die Overview-Informationen des Newsservers werden nun lokal in einem
Spoolverzeichnis zwischengespeichert. Das bewirkt eine wesentliche
Geschwindigkeitssteigerung bei der Anzeige des Kommentarbaumes.
0.5: (29.9.1999)
- graphische Kommentarbaumanzeige
- besser kommentierte Skripte
0.4: (28.9.1999)
- Newsportal läuft nun auch zusammen mit einem Microsort Newsserver, nachdem
ich einige Fehler gefunden habe.
--- NEW FILE: todo.txt ---
(This appears to be a binary file; contents omitted.)
--- NEW FILE: captcha.txt ---
to enable the captcha test, you have to:
1. activate it in your config.inc.php: set $post_captcha=true
2. make sure, your PHP has the needed extentions enabled:
--with-gd
--enable-gd-native-ttf
--with-png
--with-zlib-dir
--with-ttf
--with-jpeg-dir
--with-freetype-dir
--with-xpm-dir
--- NEW FILE: layout.txt ---
Florian Amrhein
NewsPortal Layout Guide
Colors
To change the colors of NewsPortal simply edit the style.css. It
should be self explaining.
only topics in thread.php
Normaly, newsportal always displays complete threads in thread.php. An
alternative view you can suppress this by setting setting
$thread_show["replies"] to false in the thread layout section in
config.inc.php.
It makes sense to set $thread_show["threadsize"] to true, so that your
visitors can see how many articles are in a thread without clicking on
it. It would also good, that they see the date of the most recent
article in the thread instead of the first, so set
$thread_show["lastdate"] to true.
flat view for articles
If you show only the topics in your thread.php, as described above,
you maybe want to activate the flat-view for your articles.
Normaly, your article.php only shows one single article plus (if not
deactivated by setting article_showthread to false) links to the other
articles in the thread.
This behaviour can be changed by using an alternative code for
displaying articles. Set $file_article to "article-flat.php". Now, all
articles of a thread are shown on one single page (that can be
splittet, what we see later) one after another.
This style is typical for webboards. If you want to show real
newsgroups, this will make problems, because users of webboards often
add additions to the thread by simply replying to the last article,
what will make problems, if their answer don't match to this last
article.
But this flat-view make sense, if you have an isolated system, and
only want to use a newsserver as backend without using the typical
layout and handling of newsgroups.
Now, there are some additionaly settings, you may want to use:
* $articleflat_articles_per_page defines, how many articles should
be displayed on a single page
* Long articles can be cut to the first
$articleflat_chars_per_articles. If a article gets cut, there will
be a link where your visitors can view the complete article. If
you have set $file_article_full to the original article.php, then
they will see the normal view to a single article.
--- NEW FILE: bugs.txt ---
- no mime-decoding of the names of attachments
- message-ids inside texts are misinterpreted as email-addresses and get
a mailto: tag
--- NEW FILE: quickstart.txt ---
Florian Amrhein
Documentation - Quickstart Guide
After you downloaded the newsportal archive, uncompress it
and move the files inside into a directory of your webserver.
There are only a few options in config.inc.php that you have to edit
to let newsportal run:
* $file_language: Your favourite language-package.
* $server: The adress of your newsserver
* $port: The port of your newsserver, normaly this is 119
Security related options:
* Set $readonly=true, if you don't want users to post articles to
groups.
To customize the output you can change the following values:
* $treestyle: 0-7, different thread-layouts. Just try out. Normally
7 should be the right for you
* $maxarticles: The maximal number of articles that newsportal loads
from the newsserver. If the number is too high NewsPortal will
slow down.
* $articles_per_page: Maximum amount of articles showed on one page.
0 if you don't want to split the thread into several pages.
--- NEW FILE: faq.txt ---
NewsPortal Frequently Asked Questions
What newsserver should I use?
Normally, NewsPortal is made for people who already own a newsserver
with local groups.
If you want to give your users access to usenet groups, and want to do
this by using an external newsserver, you should better do this by
installing your own newsserver. Newsportal can produce much load on
the newsserver, so the most administrators of newsserver would not
like it, if you use their newsservers without asking.
A good newsserver (for Unix) is INN.
How can I configure NewsPortal to access groups on different servers?
If you have, for example three hierarchies a.ALL, b.ALL and c.ALL on
three different servers A, B and C, you have to the following:
First, configure newsserver normally in your config.inc.php by setting
$server to A. For the servers B and C create two config-files named,
for example, server-B.inc and server-C.inc. Write <?
$server="news.serverB.org"; ?> in server-B.inc and the corresponding
for C into server-C.inc.
Now, you have to tell newsportal, when it has to use the configuration
files for B and C, because until this point newsportal only use A as
default.
This can be done by setting the $group_config in config.inc.php. For
example like this, to bind hierarchy b.ALL to server B and hierarchie
c.ALL to server C:
$group_config=array(
'^b\.' => "server-B.inc",
'^c\.' => "server-C.inc"
);
Now, thread.php, article.php and post.php should use the right server.
You can test this by opening
http://yourserver.org/thread.php?group=b.groupname
The problem is, that index.php can only use one server while fetching
the group-informations.
The only solution with the actual version of NewsPortal is to delete
index.php and replace it with a static html-file that links to the
single groups via thread.php.
Later versions of NewsPortal will have more comfortable solutions for
this.
How does Newsportal store it's data?
Newsportal stores it's data in form of plain text files in it's spool
directory. It only stores the thread data, not the articles itself,
unless you activate the article-cache.
Will it grow?
Normaly you have set $maxarticles, so Newsportal doesn't fetch more
than this number of article-overviews from every group. If all your
groups have more than $maxarticles articles in it, the content of your
spool directory will not grow.
But, if you have activated the article-cache, then the spool can grow,
because every article can have a different size. If, for example,
suddenly appears an article with a very long attachment on it, this
attachment will be stored in the spool and let your spool grow. The
spool will later shrink, when the article will be deleted, when it
reaches the "horizont" defined by $maxarticles.
Do I have to set a holding time for old articles?
No, this is not necessary, and not possible at the moment. Later, for
the article-cache, there will be such a setting, so that articles can
be deleted before they reaches their horizont.
But you can manualy or by script remove everything in your spool
directory.
NewsPortal doesn't want to the newsserver
There are several reasons why Newsportal doesn't connect to your
newsserver.
1. Do you try to use the newsserver of your dialin provider? Normaly,
such newsservers only work if you connect to them from inside the
network of the provider. So, at home you can use their newsserver,
but your webserver somewhere in the internet is not allowed to
connect.
2. You try to use Newsportal on a shared webserver? Often provider of
such servers block outgoing connections because of safety reasons
or because it is difficult to charge you for the traffic you make.
You have to move to another provider, or use a dedicated or
virtual server.
--- NEW FILE: readme.txt ---
Florian Amrhein
NewsPortal Readme
Introduction
News portal is a PHP based newsreader. It is licensed under the GNU
Public License (see enclosed LICENSE).
Overview
This script collection enables the access to a newsserver (by NNTP)
from a webpage. It allows you to combine web-forums and newsgroups.
The script is also suitable for presentation of announce newsgroups on
web pages, without having the user notice that he is in fact accessing
a newsserver.
The main functionality of the script is located in the file
newsportal.php, which contains the major part of the implemented
php3-functions. In addition to that there are four more php-files,
which are directly accessed by the browser:
* index.php shows the available newsgroups of the newsserver (if you
have added the names to groups.txt)
* thread.php displays the article-overview of a newsgroup. The
articles are displayed in a thread.
* article.php displays an individual article.
* post.php posts a message into a newsgroup.
* attachment.php shows possible attachments of articles.
There are some more files that control the behavior of newsportal or
contain information:
* config.inc.php contains the configuration.
* head.inc contains the header and the body-tag of the pages. This
way the layout of the pages (i.e. the background) can easily be
adjusted.
* tail.inc contains the end of every page.
* style.css CSS-Stylesheet for NewsPortal
* german.lang : The German language definitions
* english.lang : The English language definitions
Since fetching the article overview of the newsserver takes quite some
time, newsportal caches this data in the directory spool/. Any file
can be deleted in this directory, it will automatically be
regenerated.
Installation
1. download the zip or tar.gz archive
2. unzip it to a directory
3. The file config.inc must be edited with your settings (the most
important variables are: $server, $port, $title and $readonly).
4. Write the names of all groups newsportal should show into the file
groups.txt. Behind the groupname, seperated by a blank, a
description of the group can be added. If the description is
missing, newsportal will try to request the description from the
newsserver.
5. The spool directory has to be created and configured to grant read
an write access to the newsserver: chmod 777 spool
6. Adjust the charset in config.inc.php ($www_charset). If you are in
western Europe or the USA the predefined iso-8859-15 charset is
correct and you don't have to change it. In eastern Europe
iso-8859-2 should be the right setting, and koi8-r in Russia. You
may also want to try utf-8 for unicode, that should work
everywhere, but not with older webbrowsers and newsreaders.
Configuration
The following adjustments can be made in config.inc.php
Directories and files
* $file_newsportal="newsportal.php": Name of the file containing the
newsportal-functions.
* $file_groups="index.php": The file which shows the list of
available newsgroups.
* $file_thread="thread.php": The file which shows the article-thread
of a selected newsgroup
* $file_article="article.php": Displays an article. Set this to
"article-flat.php" if you want flat-view in your thread (also set
$thread_show["replies"] to false later in the thread layout
section). Have a look at the Layout Guide.
* file_article_full: In flat-view, the file that will show a
complete article
* $file_post="post.php": The file which allows you to post an
article to a newsgroup. This file can be removed, if the system is
set on readonly (see below).
* $file_language="english.lang": Reference to the language
definition file.
* $file_footer: Optionally, the name of a file can be indicated,
which will be attached to every article posted to a newsgroup.
* $file_groups: Name of the file where the names of the newsgroups
are in.
Newsserver setup
* $server: Hostname or IP of the newsserver
* $port: Port of the newsserver, normally 119
* $post_server: Optionally an extra newsserver can be indicated here
which is used by post.php for writing articles. This is useful if
two newsservers need to be accessed, a fast read-only server and a
slow server to post articles. Be aware that it might take some
time until the posted article will show up on your main newsserver
($server), which you use to read articles.
* $post_port: Port of your post-newsserver
* $server_auth_user: If the newsserver requires authentication by
name and password put your username here. Otherwise just set the
variable to "".
* $server_auth_pass: Put your password here.
Grouplist Layout
* $gl_age: true, if in index.php colors should indicate how old is
the last article in the group
Thread Layout
* $treestyle: The appearance of the message tree:
+ 0: Simple listing of the articles
+ 1: Easy listing of the articles, with some more HTML tags
+ 2: Simple listing in a table
+ 3: Threaded with HTML-tags (UL, li)
+ 4: Threaded with text characters
+ 5: Threaded with graphical images
+ 6: Threaded with text characters and table
+ 7: Threaded with graphical images table (the normal view)
* $thread_show["date"],
* $thread_show["subject"],
* $thread_show["author"]:
+ true: the date / the subject / the author are displayed in
the thread
+ false: output is suppressed.
* $thread_show["authorlink"]: Set true to add a mailto-link to the
email address of the author, false else
* $thread_show["replies"]: Set this to false, if you only want the
first article of a thread to be showed in your thread.php. Maybe
you also want to set $file_article to "article-flat.php".
* $thread_show["lastdate"]]: If set to true, newsportal shows the
date of the last recent article in a thread instead of the real
date of the article. This makes only sense if
$thread_show["replies"] is set to false.
* $thread_show["threadsize"]: Shows how many articles are in a
thread. This makes also only sense if $thread_show["replies"] is
set to false.
* $thread_maxSubject: Maximum number of characters of the subject
displayed
* $maxarticles: This number indicates the maximum amount of overview
data of a newsgroup newsportal tries to get from the newsserver.
"0" means no limitation. $maxarticles also indicates the amount of
articles to be stored in the spoolfiles. A lower value means less
work for newsportal
* $maxarticles_extra: The problem with $maxarticles is that all
article data must be completely requested again by the new server,
if the indicated value is exceeded. $maxarticles_extra can be set
to prevent this. The article-spool will only be restructured if
$maxarticles + $maxarticles_extra articles are present, whereby
$maxarticles many article data are requested. Only if an exact
given number of articles should be displayed on the web page, the
value of this variable schould be set "0", but this will slow
NewsPortal down.
* $age_count: Number of different age levels for the coloured
marking of articles
* $age_time[n]: maximal age of an article in seconds, so that the
article gets marked with the colour
* $age_color[n]: n is a natural number > = 1 and all numbers from 1
to n must be assigned, gaps are not permitted.
* $age_color[n]: The colour in which the article is marked
* $thread_sort_order: The sort sequence for the articles:
+ 0: No assortment, articles are displayed in the order in
which they are polled from the server. This is nearly like
ascending assortment.
+ 1: ascending assortment, the oldest articles to the top.
+ -1: descending assortment, the newest articles to the top.
* $thread_sort_type: kind of sorting:
+ "thread": order by thread, newest thread on top/bottom
+ "article": order by article, newest article on top/bottom
* $articles_per_page: If this value is not 0, the maximum amount of
articles is given, which are to be displayed on one page at the
same time. The thread will be split into individual pages.
* $startpage: In connection with $$articles_per_page the variable
indicates, which page is to be displayed first:
+ "first": The page with the newest articles
+ "last": the page with the oldest articles
The specification should be co-ordinated with $thread_sorting. "first"
for 0 and 1, and "last" for -1.
Frames
Example files for the frame support are located in extras/frames/. In
this section the names of the frames can be defined. If you want to
use frames you have to set the variable $frame_thread to
"thread_frameset.php".
NewsPortal has only a very basic support of frames. You have to make
changes in the code to adjust some links. Frame support doesn't come
out of the box.
* $frame_articles: Name of the article frame. Must be the same as
defined in thread_frameset.php.
* $frame_thread: Name of the thread frame.
* $frame_groups: Name of the frame for the grouplist, normally set
to "_top" to open a new frameset.
* $frame_post: Name of the frame for post.php
* $frame_threadframeset: Name of the frame, in which the frameset is
to appear, which takes up the article and thread Frames. Normally
set to "_top".
* $frame_externallink: Target frame for external links within
articles.
Article layout
* $article_show["Subject"],
* $article_show["From"],
* $article_show["Newsgroups"],
* $article_show["Organization"],
* $article_show["Date"],
* $article_show["Message-ID"],
* $article_show["User-Agent"],
* $article_show["References"]: "true" displays the respective header
line in article.php, by "false" it is suppressed.
* $article_show["From_link"]: Set true to add a mailto-link to the
email address of the author, false else. This only affects the
address in the header of an article.
* $article_show["From_rewrite"]: regular expression that converts
the email-adress (to make it invisible to spam-harvesters for
example)
* $article_showthread: true, if under every article the subthread of
that article should be showed, false if not.
* $article_graphicquotes: Graphical representation of quotes instead
of a > character?
Article flat-view
If you have set $file_article to article-flat.php, then this options
will be used:
* $articleflat_articles_per_page: how many articles will be shown on
one single page
* $articleflat_chars_per_articles: After how much characters
articles will be cut in flat-view. A link will then be provided,
so your visitors can view the full article by clicking on it.
Message posting
* $send_poster_host: true means that a header-line named
"X-HTTP-Posting-Host:" will be attached to every posted article,
set to the hostname of the user who wrote the article.
* $readonly: if set to true, the newsportal is read-only. The file
post.php can be safely removed.
* $testgroup: if set to true newsportal checks if a group is listed
in groups.txt when accessed through thread.php. Otherwise a group
could be seen simply by entering the right URL, although the group
is not displayed in the group list.
* $validate_email: Sets how newsportal checks an email address in
post.php for syntax:
+ 0: no examination. Not recommended, since the newsserver will
give an error message, if the address is not syntactically
correct.
+ 1: Checks the address on syntactic correctness.
+ 2: Additionally a MX or A record is checked for the
domain-name of the e-mail address. Newsportal performs a
hostname lookup.
* $organization: Name of your organization. Put after the
"Organization:"-header when posting articles.
* $setcookies: Permits the user to save his name and his
email-address as cookies in his browser.
* $anonym_address: If you want to allow your users to not post their
email address, you can do this by setting this variable to an
address, that will be posted if the author let the email-field
empty. Set this to a valid address, and create an autoresponder
for this address, so that users, that use normal newsreaders get a
response if they write a mail to this address.
* $msgid_generate: should newsportal generate the message id?
Available settings:
+ "no": do not generate a message-id. The server will generate
the id instead
+ "md5": Generate a hash out of the contents of the article and
use this as the local part of the message-id. This will
prevent the posting of duplicate articles.
* $msgid_fqdn: The full qualified domain name that will be used as
the domain-part of the message-id. You can set the domain of your
webserver here for example. By default this is set to
$_SERVER["HTTP_HOST"] which contains your server-address.
Attachments
* $attachment_show: true, if you want attachments to be shown
* $attachment_delete_alternative: if true, non-text attachments
inside a multipart/alternative block will be deleted, if there is
a text-only alternative.
* $attachment_uudecode: if true, newsportal tries to decode
uuencoded attachments. This option is very buggy and slow.
Safety settings
* $block_xnoarchive: if set true, don't show articles that have
"X-No-Archive: yes" in the header. I don't think this makes sense,
because newsportal is not an archive. But some people wanted such
a "feature".
Cache
* $cache_articles: true if you want articles to be cached. This
feature is experimental, but is recommended if you have groups
with a lot of attachments. This feature makes problems if articles
were canceled, because newsportal doesn't notice this.
* $cache_index: After how many seconds the grouplist in index.php
should be reloaded
* $cache_thread: After how many seconds the thread in thread.php
should ask the newsserver if there are new articles in the group.
Misc
* $title: The value of this variable is put in the title-header of
the generated webpages.
* $cutsignature: if set to true, the signature will be cut off when
replying to articles
* $compress_spoolfiles: Sets whether the spool files should be
compressed or not. This is recommended under normal conditions,
since the size of the spoolfiles shrinks approximately to about
15% of the original size. Be aware that some PHP-Versions do not
support compressing
* $www_charset: Charset of your websites. For example iso-8859-15
for central europe, iso-8859-2 for east europe, utf-8 for unicode
or koi8-r for russia
* $iconv_enable: Enable automatic conversion of charsets. So, for
example, if your charset is iso-8859-1, you can also read utf-8
encoded postings and vice versa
* $timezone: Timezone relative to GMT. Set it to +1 if you live in a
CET zone. This setting only changes the behaviour of how dates are
shown. When you post articles newsportal don't set any
date-headers.
Group specific config
If you have single groups or complete hierarchies where you want to
set some alternative options, you have to edit this section.
You can create additional config-files, where you can overwrite the
default settings of your config.inc.php.
The variable $group_config binds that additional config files to
groups.
It is array, where it's keys are regular expressions that match group
names, and it's values are names of config-files that are loaded over
the normal config. The first key that matches wins, so put the more
specific expressions on top.
Example:
$group_config=array(
'^de\.alt\.fan\.aldi$' => "aldi-fan.inc.php",
'^de\.alt\.' => "de-alternative.inc.php",
'\.comp\.' => 'computer.inc.php'
);
First it looks after the single group de.alt.fan.aldi, second the
complete de.alt.ALL hierarchie, and then every group that contains
comp.
The additional config files that were referenced here are like the
config.inc.php, but contains normally only a few options.
For example, if you want to have de.alt.fan.aldi readonly, then create
the file aldi-fan.inc.php with the following contents:
<?
$readonly=false;
?>
Warning: index.php ignores this file. If you want to have different
groups on different newsservers, you have to replace this file by an
static html-file. There will be a better solution for this in later
versions of NewsPortal.
Safety notes
This script was originally (and actually still) only meant for access
to local newsgroups. If you use it with UseNet? newsgroups, following
problems could show up:
* Articles could be posted anonymously (i.e. spamming), see
$send_poster_host
* There are lists with so-called "open" newsservers in the internet.
Mostly "open" doesn't mean for this server that everyone is
allowed to use this server. Normally it means that the operator of
the server forgot to protect his server adequatly. So before using
an "open" newsserver, you should make sure that the operator
permits the use of his server for newsportal.
* Posting articles anonymously is not accepted in most UseNet?
groups. Before you give writing access to a newsgroup, you should
ask the users in the newsgroup if they have no objections. Do not
give public write access on UseNet? newsgroups, if you do not know
exactly, what you are doing!
* Do not use the cancel-features of newsportal, if you don't know
what you are doing! Cancel means removing articles worldwide on
every newsserver!
The author reserves the right not to be responsible for the
topicality, correctness, completeness or quality of the program
provided. Liability claims regarding damage caused by the program
provided, will therefore be rejected.
In other words: Use this program at your own risk!
Compatibility
Newsportal should work with every webserver with php4 support and
every newsserver. Webserver and newsserver do not need to run on the
same machine.
More information about the cvs
mailing list