Hinweis
Das Modul ist ab Version 5  nicht mehr enthalten. Mit den neuen Möglichkeiten lässt sich ein Newssystem sehr leicht und wesentlich flexibler abbilden.

Einleitung
Das Modul bildet ein Newssystem ab, man könnte es auch Newsticker oder einfaches Redaktionssystem nennen.
Berechtigte Mitarbeiter können über ein einfaches Web-Formular Nachrichten eingeben. Diese werden unter verschiedenen Bedingungen anderen Anwendern angezeigt. Die Nachrichten werden dabei direkt als HTML-Text eingegeben.

Channels
Es können verschiedene Themenbereiche definiert werden. Diese werden Channels genannt und in der Konfigurationsdatei ini/news.ini angelegt.

ini/news.ini
[channels]
channel_1=Homepage
channel_2=Produkt A
channel_3=Produkt B
channel_4=Produkt C


Templates
Die Darstellung wird wie gewohnt komplett über Templates bestimmt.

news/list_main
Die Hauptseite des Newssystems.
<b>News:</b><br>
{newsmain}<br>
<br>
{new}<a href="{linknew}">[new]</a>{/new}
{first}<a href="{linkfirst}">|&lt;</a>{/first}
{prev}<a href="{linkprev}">&lt;&lt;</a>{/prev}
{next}<a href="{linknext}">&gt;&gt;</a>{/next}
{last}<a href="{linklast}">&gt;|</a>{/last}

Platzhalter
{newsmain} - Hier wird die Liste der Nachrichten ausgegeben
{new}/{/new} - Falls der aktuelle User das Recht hat neue Nachrichten einzugeben, wird der Bereich zwischen {new} und {/new} angezeigt.
{linknew} - Erzeugt Link zur Neueingabe
{first}/{/first} - Falls Blättern zur ersten Nachricht möglich ist, wird der Bereich zwischen {first} und {/first} angezeigt.
{linkfirst} - Erzeugt Link, der zur ersten Nachricht blättert
{prev}/{/prev} - Falls Blättern zur vorherigen Nachrichtenseite möglich ist, wird der Bereich zwischen {prev} und {/prev} angezeigt.
{linkprev} - Erzeugt Link, der zur vorherigen Nachrichtenseite blättert
{next}/{/next} - Falls Blättern zur nächsten Nachrichtenseite möglich ist, wird der Bereich zwischen {next} und {/next} angezeigt
{linknext} - Erzeugt Link, der zur nächsten Nachrichtenseite blättert
{last}/{/last} - Falls Blättern zur letzten Nachricht möglich ist, wird der Bereich zwischen {last} und {/last} angezeigt
{linklast} - Erzeugt Link, der zur letzten Nachricht blättert


news/list_message
Für jede Nachricht in der Liste wird dieses Template benutzt
<a href="{linkmessage}">{headline}</a><br>
{teaser}<br>
<small>({user}/{newsdate}/{newstime})</small>

Platzhalter

{linkmessage} - Link um Nachricht anzuzeigen
{headline} - Überschrift der Nachricht
{teaser} - Teaser (Vorspann) der Nachricht
{user} - Der User, der die Nachricht verfasst hat
{newsdate} - Das Datum der Nachricht
{newstime} - Die Zeit der Nachricht


news/list_between_messages
Dieses Template wird zwischen zwei Nachrichten in der Liste ausgegeben.
<hr>


news/message
Wird eine Nachricht angewählt, wird dieses Template zur Anzeige benutzt.
<table>
  <tr>
    <td>
      {headline}
    </td>
    <td>
      ({user}/{newsdate}/{newstime})
    </td>
  </tr>
  <tr>
    <td colspan="2">
      {Text}
    </td>
  </tr>
  <tr>
    <td colspan="2">
      <a href="{linkback}">[zurück]</a>
      {edit}<a href="{linkedit}">[ändern]</a>{/edit}
      {del}<a href="{linkdel}">[löschen]</a>{/del}
    </td>
  </tr>
</table>

Platzhalter

{headline} - Überschrift der Nachricht
{teaser} - Teaser (Vorspann) der Nachricht
{Text} - Der Text der Nachricht
{user} - Der User, der die Nachricht verfasst hat
{newsdate} - Das Datum der Nachricht
{newstime} - Die Zeit der Nachricht
{linkback} - Erzeugt Link zurück zur Übersicht
{edit}/{edit} - Falls der Anwender das Recht zur Datenpflege hat, wird der Bereich zwischen {edit} und {/edit} angezeigt
{linkedit} - Erzeugt Link um Nachricht zu ändern
{del}/{del} - Falls der Anwender das Recht zur Datenpflege hat, wird der Bereich zwischen {del} und {/del} angezeigt
{linkdel} - Erzeugt Link um Nachricht zu löschen


news/no_messages
Falls keine Nachrichten auf der aktuellen Seite anzuzeigen sind, wird dieses Template ausgegeben.
No News<br>


news/message_form
Das Neueingabe- und Ändernformular für Nachrichten.
<form method="post" action="{postlink}">
Headline: <input type="text" name="headline" value="{headline}"><br>
Date: <input type="text" name="newsdate" value="{newsdate}"><br>
Time: <input type="text" name="newstime" value="{newstime}"><br>
Channels: {channels}
Teaser: <textarea name="teaser">{teaser}</textarea><br>
Text: <textarea name="text">{text}</textarea><br>
<input type="submit" value="OK">
</form>

Platzhalter
{postlink} - Der Ziellink für das Formular
{headline} - Die Vorbelegung des Feldes Headline (bei Ändern)
{newsdate} - Die Vorbelegung des Feldes für das Nachrichtendatum (bei Ändern)
{newstime} - Die Vorbelegung des Feldes für die Nachrichtenzeit (bei Ändern)
{teaser} - Die Vorbelegung des Feldes für den Teaser (Vorspann) (bei Ändern)
{text} - Die Vorbelegung des Feldes für den Nachrichtentext (bei Ändern)
{channels} - An dieser Stelle wird eine Liste mit Checkboxen für die Themengebiete ausgegeben. Diese wird je nach Berechtigungen erzeugt

Hinweis: Dieses Formular ist nicht zwingend notwendig. nachrichten können auch über Tools/News eingepflegt werden.

Berechtigungen
Wer das Recht hat, Beiträge zu verfassen oder zu editieren, wird über die Userverwaltung festgelegt. Dabei muss die Eingabe in Rechte_Direkt erfolgen.
[news]
new_Homepage=1
new_Produkt_A=1
new_Produkt_B=1
edit_Homepage=1
edit_Produkt_A=1
edit_Produkt_B=1
Im Beispiel hat der User Neueingaberechte für die Channel Homepage, Produkt_A und Produkt_B. Das Gleiche gilt für die Ändernrechte.


Aufruf
Das Modul wird mit {execmacro="news" param="Parameter"} aufgerufen. Die einzelnen Werte des Parameters werden mit Strichpunkt (;) getrennt.

channel=

Gibt an, welche Channel ausgegeben werden sollen. channel= kann dabei mehrfach vorkommen.
Sonderfall channel=* bedeutet, dass alle Channels ausgegeben werden sollen.

nonav
Keine Möglichkeit zum Blättern. Die Links zum Blättern ({first}...{last}) sollen entfallen.

show=
Gibt an, wie viele Einträge zu sehen sind. Dabei ist ein numerischer Wert als Anzahl Einträge genauso erlaubt, wie ein Wert in Tagen, Wochen oder Monaten. Dazu wird ein Buchstabe direkt hinter die Zahl angegeben. Dabei Bedeutet d=Tage, w=Wochen, m=Monate.
Beispiele:
show=10 (Zeigt die letzten 10 Einträge)
show=3d (Zeigt die Einträge der letzten 3 Tage)
show=1w (Zeigt die Einträge der letzten Woche)
show=3m (Zeigt die Einträge der letzten 3 Monate)

Die Blätterbuttons orientieren sich an der show-Angabe. Werden z.B. die letzten drei Tage angezeigt, entspricht einmal Blättern drei Tagen.
Falls show= nicht angegeben ist, gilt die Defaulteinstellung 10. Also die letzten zehn Einträge.

template=
Es können alternative Templates benutzt werden. Hier wird ein Präfix angegeben, der den normalen Templatenamen vorangestellt wird.
Beispiel:
template=startpage_ - Nun wird statt news/message das Template news/startpage_message , statt news/list_message das TEmplate news/startpage_list_message gewählt, usw..

random
Aus den eigentlich angezeigten Einträgen wird per Zufall nur einer Angezeigt. Damit ist es z.B. Möglich 10 verschiedene Textblöcke vorzubereiten und per Zufall immer einen davon auf einer Seite einzubinden.
(ab ewm4/17.06.2004)

target=
Bei Klick auf einen Link wird zur angegebenen Seite verzweigt. So können Sie z.B. einen Newsticker im Seitenrand unterbringen, der bei Klick die News-Hauptseite aufruft und dort sofort die ausgewählte Meldung anzeigt.
Beispiel:
target=pos:1.2

future
Es werden keine vergangenen News, sondern zukünftige Termine dargestellt. Die Sortierung ist entsprechend auch genau anders herum. Der News-Eintrag mit dem nächsten Datum wird als erstes dargestellt.

outrange
Ist diese Option gesetzt, werden Einträge angezeigt, die ein zukünftiges Datum haben bzw. wenn zusätzlich future gewählt ist, Einträge mit vergangenem Datum.
Erklärung: Bei der Nutzung als News stellt man Nachrichten ein, die ein Datum in der Vergangenheit haben. Gibt man ein Datuzm in der Zukunft ein, wird es erst dargestellt, wenn das Datum erreicht wurde. Mit der Option outrange zwingt man das News-Modul immer alle Einträge anzuzeigen.
Entsprechend verhält es sich bei der Benutzung mit future. Dann werden normalerweise zukünftige Termine angezeigt, ist ein Termin vergangen, wird dieser ausgeblendet. Hier werden mit der Option outrange auch vergangene Termine angezeigt.


Beispiele:
{execmacro="news" param="show=3m;channel=Arzt;channel=Apotheker;nonav"}
{execmacro="news" param="show=10;channel=Homepage"}
{execmacro="news" param="show=100;channel=*;template=smallfont_"}


Neu ab Version 4:
Unter Tools/News können nun die News komfortabel gepflegt werden.

eforia® web manager Dokumentation
Stand V 3.01 / 20.12.2010
© Horst Klier
http://www.klier.net
Impressum