NEWS System Plugin

Pluginanewssystem
Description A simple News System to create news articles and preview them or provide the News tags within a little cloud.
Type syntax
Author Taggic
Last update 2014-10-07
DW compatible 2013-12-08 (Binky), 2014-05-05 (Ponder Stibbons), 2014-09-29 (Hrun)
Depends none
Conflicts none
Similar tips:newssystem
Download https://github.com/Taggic/anewssystem/archives/master
Issues fcon - NEWS System issues

Vote for this plugin

NewsSystem
(92) (77)


Attention

The version 2012-07-17 modified the meaning of parameter prev_length. Now it is a threshold for the max previewed words. Please consider to change global config and syntax lines accordingly.

The version 2012-05-09 introduced tags. Formerly created news does not have such and might be not visible by given date-validity due to tags used as filter. To make them visible edit the news article and add ” * tags: tag1, tag2, tag3” into the line after author entry.

Take care that since version 2012-03-29 you need a modification of formerly created news articles. Open your newsdata page with DokuWiki Editor and replace all ---- by a level 1 headline. The headline text must be identical to the head content of your news.

.

Overview

The plugin delivers you three major functions (write news, news flash, read all). You are supported by a simple form to write the article. There you can also specify when the news will be visible and until when. Beside writing news articles you can put a NEWS flash box wherever you want (usually on the start page of your wiki). It will provide a preview of the news you want to tell the world linked to the complete content. Another function is to read the complete set of articles you have written. The news data will be stored into one text file, which can be edited by DokuWiki implemented editor as any other page. The previews also as the complete article are allowed to contain DokuWiki syntax. This will be rendered properly.

  • Easily write news supported by a form
  • Define publishing and perishing date of the article (e.g. for scheduled season greetings on x-mas, new years eve or easter)
  • Get a NEWS flash box where the previews are linked to the articles and pictures
  • Outdated news will be suppressed on preview and all news page
  • Preview length and item quantity can be easily modified case by case
  • Use DokuWiki syntax within the article as usual
  • Global and local parameters also as css support provide you control and customizability
  • DokuWiki ACL feature used

The Author Interface

Number one is a user interface to write News articles, link them and define a validity period.

On top of it a unique anchor will be calculated to link the previewed content properly with the whole article.

Define a Headline and the content of the news article you want to create. You may use standard DokuWiki Syntax within the article, it will be recognized and handled accordingly. The link is automatically created but for what reason ever you may want to change it. Take care that you properly set the anchor or the link will jump to the top of the referenced page. There is a small counter on top of the text input area to give you the quantity of entered words.

Publishing date is by standard the date when you write the article. If you leave this unchanged the new will be visible after pushing the Publish button. The perishing date is the day where the article will disappear from the system (not deleted but not visible for the user anymore). The perishing date is calculated based on global settings in Configuration Manager but you can modify it here towards the special needs you may have on a special NEWS post.

Please take care that all your authors (but only these) have write permission to the newsdata page. Users without proper permission cannot store news to your system.

News Output

There are 3 output variants available. One is the News Flash box you can place wherever you want within your page syntax. Styling can be customized by the style.css file. The output is defined by the syntax parameters for width, quantity of articles and count of words to be previewed.

Another method is to display all current valid News Posts completely. The validity is defined by start and stop date. That delivers you the possibility to write news articles which will be displayed in the future, e.g. for Christmas, New Year, Easter or any other date you may chose.

If you have write permission on that page where News Flash or All News syntax was placed you will find two little icons below each news article. If you click on these icons you can either edit or delete the related news post. The symbol will change from black & white picture into a coloured image if you hover the mouse over it. A click on the cross will immediately delete the related news record. There is no undo function so please use this function wisely. By a click on the blue feather the section edit of the related news record will be opened.

The third method is a page as usual within Dokuwiki containing all news as defined by the template divided into sections, where the Headline is used as section headline. To edit there you may chose the standard DokuWiki Editor itself with section edit.

News Cloud

The news cloud provides you a possibility to present your news tags as links in a cloud as you may know it from the cloud plugin. There is no dependency to install the cloud plugin for this feature. It also delivers you various options to style your cloud either by your own CSS by syntax class option and/or by styling parameters within the syntax line. The News Cloud will display all tags where you have current news articles (not beyond the perishing date). A click on such a tag-link of the News Cloud will open the configured “All News” page but overrule the potentially tag setting of the syntax line to show the current, wanted articles.

News Thumbshots

Many of the website needs to upload the thumbshot or screenshot manually of your website. So many of them try to use the third party tool or addons to. Nowadays a lot of webmasters are looking for a website snapshot tool in order to make data presentation more attractive to their visitors.

The News Thumbshots are realized by integration of related online Service Providers. There you can choose from variety of the online services, fee-less or highly professional with costs. I have checked the following for you but it is not limited and may change over time (list is not under regular care and there are many more available):

Most of them are fee of charge but need a registration of your page. The plugin does accept just one online Thumbshot provider. However, it is necessary to open the Configuration Manager and enter the related link as described on the home page (or see below).

The upper mentioned 4 would lead into following configuration values. The %s parameter is mandatory as is. The plugin use this place-holder to extend the provider link by your News Page link (or whatever page you have linked). It is telling the provider from what page the thumb-shot should be taken.

http://www.thumbshots.de/cgi-bin/show.cgi?url=%s
http://images.websnapr.com/?size=s&nocache=81&url=%s
http://www.artviper.net/screenshots/screener.php?sdx=1024&sdy=768&w=120&h=80&q=100&url=%s
http://image.thumber.de/?size=XXL&url=%s
http://fadeout.de/thumbshot-pro/?scale=3&url=%s&effect=2

Optional Configuration

Probably you may want to change something then please have a look into the Configuration Manager for the plugin. There are a few simple and self-explaining parameters. Further you may adapt the text used for controls and/or add further language resource files. How to do so is described within the DokuWiki.org. To modify the look and feel please check the style.css file. There are many definitions offered for modification. The easiest way to detect the right class for styling is provided by usage of FireBug functions. Please refer to css documentation and communities in the event of related questions.

Installation & Configuration

Install the plugin using the Plugin Manager and the download URL above, which points to latest version of the plugin.
Refer to DW Installation instructions to read more about.

  1. create a a page news:news and put there the following syntax, which will bring all elements onto one page
news.txt
====== News ====== ~~NOCACHE~~ **[ [[news:allnewsdata|all news]] | [[news:news|write news]] | [[news:newsdata?do=edit|edit news]] ]** {{anss>flash200,40%,right,10}} {{anss>author}}
  1.  
  2. ====== News ======
  3. ~~NOCACHE~~
  4. **[ [[news:allnewsdata|all news]] | [[news:news|write news]] | [[news:newsdata?do=edit|edit news]] ]**
  5.  
  6. {{anss>flash200,40%,right,10}}
  7. {{anss>author}}
  8.  
  1. create a page news:newsdata and enter there a space or dot sign (filled later with articles by using Author Interface)
  2. create a page news:allnewsdata containing the following content
  3. you may append the parameter |ho=off to prevent output of date and author information
allnewsdata.txt
====== Latest NEWS articles ====== ~~NOCACHE~~ {{anss>allnews}}
  1.  
  2. ====== Latest NEWS articles ======
  3. ~~NOCACHE~~
  4. {{anss>allnews}}
  5.  

As most of the plugins this can be configured basically by use of DokuWiki Configuration Manager. The News System does provide following parameter:

Parameter Effect
d_format   Define the date format (e.g. Y-m-d)
news_datafile   Set the path to the namespace:newsdata file
defines where the news records are stored
prev_length   Define the quantity of previewed words per news post
newsflash_link   switch on to turn the News preview box headline into a link to News page
hide_anchorID switch on to hide the anchor ID from writers GUI
soapp soapp = show one article per page (instead of current all news)
act_delim action link delimiter (older Version = &; newer Versions = ?)
convert insert the link to the online Thumbshot provider to enable preview pictures on NewsFlash box
(empty the field to switch off this feature)

Syntax

Simply place the following syntax into the page mark-up of a page:

Add News

Place the following syntax on a page to get the News author interface. The GUI will be visible for all (as long as the namespace/page is not ruled otherwise by ACL). The user cannot save news articles as long as the user has no write permission to the news:newsdata page. The controls depending on the newstemplate definition.

{{anss>author}}

Syntax for News Flah Box

Put the following syntax on a page where you want to show a NewsFlash box of recent news to the visitors of your wiki. It will use the global settings of config and css. These global settings can be re-ruled by syntax as follows.

{{anss>flash}}

Some use cases may need a different preview length, box width, etc. but you want to keep the global settings ? You can modify something by using parameters. The parameters are expected on a dedicated position. The following table explaining syntax and behaviour:

Parameter positionExampleDescription
1 {{anss>flash 200}}The content of the article will be previewed by 200 words, independently of the global setting in configuration manager.
2 {{anss>flash,40%}}The box width will be 40% of the page width. Pixel Width definitions (px) and other valid CSS width expressions are allowed.
(:!: Take care of the colon, it is necessary due to it defines parameter position and therewith the relation !)
3 {{anss>flash,300px,right}}This defines the text flow around the box, means the box can be left or right sided. Take care that float does make sense only if you have a width different to 100% of the page width.
4 {{anss>flash,,,10}}Usually the quantity of preview items is defined by the start and stop dates you providing during the NEWS edit based on the global settings or modified by yourself. However it might be necessary to further shrink the output. The 4th parameter defines how many news items to be displayed.
5 {{anss>flash,,,,tag}}Multiple tags are not to be separated (must not be separated by comma). Tags are used as positive matching filters for the output. That means if one of the given tags does match the tags of an article the article will be shown (if date is valid). If no tags are given all date-valid news will be displayed.
{{anss>flash200,40%,right,10,tag}}Of course you can do a mixture of all these settings as long as you keep the parameter position in mind

Syntax for All (current) News Articles

Put the following syntax on a page (e.g.allnews) where you want to show the complete set of actual news articles to the visitors of your wiki. The articles are linked with related previews. Please visit the example section below. The order of syntax styling options doesn't matter in this case.

{{anss>allnews}}
Parameter positionExampleDescription
1 {{anss>allnews}}This will show all written news, as far as they are not outdated (see perishing date):
>1 ,tagMultiple tags must not be separated. Just write them one after the other. Tags are used as positive matching filters for the output. That means the article will be shown if one of the given tags matches the tags of an article. If no tags are given all news will be displayed.

Syntax for Archive List

Put the following syntax on a page where you want to show an archive list of all news by date and headline.

{{anss>archive}}

The News Archive can be invoked also by a link (e.g. id=news:allnewsdata&archive=archive). Of course you can append the tag here to (e.g. news:allnewsdata&archive=archive&tag=issuetracker).

Parameter positionExampleDescription
1 {{anss>archive}}This shows the complete archive by its headlines, time-stamps and author information.
>1 ,tagMultiple tags must not be separated. Just write them one after the other. Tags are used as positive matching filters for the output. That means the article will be shown if one of the given tags matches the tags of an article. If no tags are given all news will be displayed.
>1 ,ho=onThe function headlines only to be used if no time-stamp nor the author should be displayed.
>1 ,qty=5 Limits the archive output to the 5 most recent headlines.
>1 ,date=10.2012This will display only the news of a defined month of a year (mm.yyyy, empty per default). The quantity setting will be considered too.

Example:
You have 10 news published during October 2012 and set the quantity to 5. Only most recent 5 of them will be displayed.
>1 ,class=tocThe toc-class can be used to show the archive like the table of contents on a page. Therefore the syntax to be inserted on top of the page and TOC to be switched off by use of ~~NOTOC~~.
>1 ,class=box The archive can be used inside the text of a page as a box. The box style can be defined within syntax like it would be written into a css file. Please take care that there must not be quotation marks around.

Example:
style=width:500px;border:1px solid #c3c3c3;float:left;margin-right:1em;border-radius:4px;box-shadow:2px 2px 4px #6B6B6B;
>1 ,p_signs defines a number of previewed signs of a News article
>1 ,cwsdefines if (=1) less simple styling to be kept or (=2) the News Article Styling fully applied or no styling if the parameter is missing (used together with p_sign parameter)

Syntax for News Cloud

Put the following syntax on a page where you want to show a cloud of tagged news articles. There are multiple options to style the cloud by CSS and syntax. Please read the table below carefully to get the whole set of style options.

{{anss>cloud [Tag_Alignment] [Text_Transformation] [Cloud_Float] [NewsCloud_user_style_class]}}
Tag Alignment parameter
tleft Aligns the tag-links to the left
tright Aligns the tag-links to the right
tcenter Centers the tag-links
tjustify Stretches the lines so that each line has equal width (like in newspapers and magazines)
tinherit Specifies that the value of the tag-links align property should be inherited from the parent element
Text Transformation parameter
capitalize Transforms the first character of each tag-link to upper-case
uppercase Transforms all tag-link characters to upper-case
lowercase Transforms all tag-link characters to lower-case
Cloud Float parameter
fleft The cloud floats to the left
fright The cloud floats to the right
finherit Specifies that the value of the float property should be inherited from the parent element

Additionally you can add newsclouddiv followed by a number greater than 1 as parameter to apply your own CSS settings on the NewsCloud div.

Examples/Usage

The Author interface

[ all news | write news | edit news ]

Headline

Sub-Title

Linked page

Publishing date

Perishing date

Your news article:



Author

Tag 


The Preview box



IssueTracker Version 2017-03-20 available now (20. Mar 2017, taggic)
The Report form is corrected and it is not possibe anymore to create issues without a title.
langdelete Plugin 2017-03-20 update available now (20. Mar 2017, taggic)
langdelete now deletes what it should delete. further it is ignoring leading and ending space characters on languages to be ekpt and it considers to Keep Audio sub-dir for selected languages like for "captcha/en/Audio"
Rater Update 2017-03-20 now available (20. Mar 2017, taggic)
Problem of rater names containing 'id' letters solved now. Please dwnload and update.



The Archive

The News Cloud

The tags will be loaded automatically from the news_data page. The sizing allows a fist impression of the quantity of related news articles. The total quantity will be shown as tool-tip when you hover the mouse over a link. A click on a tag-link will open the configured plugin»anewssystem»news_output page but overrule potentially existing tag setting of the syntax line by the clicked one. You may test it here with these examples.

{{anss>cloud 300px #FFFF99 tcenter fleft capitalize newsclouddiv1}}


{{anss>cloud 30% fright capitalize tjustify}}

Development

Change Log

Date Changes
soon
Id Created Product Version Severity Status Title
2014-10-07 BugFix:
- #207 Link to news article when SOOAPP turned on used incorrec char (& instead of ?)
2013-05-22 BugFix:
- #180 default value if allnews wont return something
2013-04-16 New Feature:
- #179 change back-link into link to NewsArchive

BugFix:
- output of single complete article limited by preview length
2013-02-19 New Feature:
- #173 prevent output of author and date information on allnews by syntax switch

BugFix:
- #172 Tag cloud feature produces errors
- #165 problem with action component
2012-12-08 Extension of Archive and Editor functionality

Version/Requirements

The plugin was tested with DW 2011-05-25 “Rincewind”, 2011-11-10 “Angua” and also with related on the Stick version. “Adora Belle” is tested too. Our standard browser are Internet Explorer 9 and FireFox 16 due to their majority at users. Of course, that is no guarantee that it works for all environmental configuration.

Potential for improvements

Probably interesting questions we could imagine:

  • How to combine the NEWS System with a news feed ?
  • Is there a way to put a picture to the news preview ? ⇒ YES, just use the DokuWiki syntax for media links
  • Is there a guide describing how to style the output of the plugin ?

If you are interested into these or have wishes for other improvements then please register to this wiki and use the Issue Tracker . You will be automatically informed via email about each request related progress by doing so.

FAQ

How do I use news pages instead of articles ?

You can write news as a wiki page and link this page. The plugin does the management of news flash according your setting. The headline of the News Flash is linked to your wiki page.

How do I show just one News Article instead of All current News ?

The behavior of the link is defined by writing the article. The link will be appended by a parameter to show only this article by clicking its News Flash headline, if the global flag SOAPP1) is turned on. If SOAPP2) is off then the link will be assembled to show All current News but scroll to the selected.

What is the link-difference ?

Each article is created with a time-stamp what is used as an anchor. If the anchor is added to the link as such (#anchor) the article will be opened within All News. The page is scrolled to the anchor that the article is topmost. If SOAPP3) is activated then just the article will be displayed. The anchor will be handed over as a different parameter (&anchor=anchor). Of course you can change this appearance manually by editing the links of the news articles (just replace the # by &anchor= or vice versa).

Why does the number of words do not exactly match the configuration/syntax parameter ?

The word counter check the quantity of space characters and line feeds of the text. The counter will turn into red when the global threshold for preview length is exceeded. The preview itself may show a few more words than given by the syntax parameter. That relates especially if you are using hyper-links or media-links. Those counted as one word due to some internal processing to generate proper links. Cutting them would crunch the output and functionality. That are some reasons for the difference of previewed words quantity and configuration.

How to create unordered lists ?

Usually all DokuWiki syntax may be used as is with one exception. Due to the template items are separated by two blanks followed by a star character it is necessary to have 3 space characters and a star to create an unordered list within a news article.

How to display real name instead of login ?

The News System makes use of the “showuseras” config parameter of DokuWiki.
Out of that it derives 2 different cases. The following table explain it:

showuseras setting News System display
Login name Login name
User's full name Real Name
User's e-mail addresss (obfuscated according to mail-guard setting) Real Name
User's e-mail addresss as a mailto: link Real Name

No name will be appended to the date if the GUI field author is empty. That is also the case if the template does not contain an author line.

How to add a picture to the News post ?

Simply use the DokuWiki Syntax to add pictures. Those will be rendered as you know it from the core system. Please take care that your pictures are properly sized or zoom them by the media link syntax.

How to change the name of the pages in question ?

For example mynews:news instead of news:news etc.

The page file names of course can be changed. Lets take your example for the explanation how to do it: Within the configuration you have the following page option:

$conf['news_datafile']     = 'news:newsdata';

You should modify it towards following:

$conf['news_datafile']     = 'mynews:news';

The news contain all news article you ever create. The allnews is just a syntax page to render all current visible news (considering the start and stop dates). If you are using the proposed syntax for the author GUI than please take following instead of example from description:

====== News ====== ~~NOCACHE~~ **[ [[mynews:allnews|current news]] | [[mynews:write|write news]] | [[mynews:news?do=edit|edit news]] ]** {{anss>flash200,40%,right,10}} {{anss>author}}
  1.  
  2. ====== News ======
  3. ~~NOCACHE~~
  4. **[ [[mynews:allnews|current news]] | [[mynews:write|write news]] | [[mynews:news?do=edit|edit news]] ]**
  5.  
  6. {{anss>flash200,40%,right,10}}
  7.  
  8. {{anss>author}}
  9.  

The page [[mynews:write]] is the page displaying your Author GUI and hosting the == News == syntax above. The red links re to be created and filled with syntax, means page allnews has to contain:

====== Latest NEWS articles ====== ~~NOCACHE~~ {{anss>allnews}}
  1.  
  2. ====== Latest NEWS articles ======
  3. ~~NOCACHE~~
  4. {{anss>allnews}}
  5.  

The news [[mynews:news]] will be filled by raw data according the news template and filtering by tags of your news article.

Why do my Thumbshots not appear ?

There maybe several reason. First you should read the descriptions of your Thumbshot service provider carefully. Easiest cause would be to wait a while until your page is rendered and the preview-picture created. Sometimes you have to register your url first or create some kind of an account. If that is done properly you should check the link-setting you have configured. The %s is the place where your link will be inserted. In the syntax-line this is usually after the url= position and maybe described by [YourURL].

Example:
fadeout description is as follows:
http://fadeout.de/thumbshot-pro/?scale=[SKALIERUNG]&url=[MEIN_URL]&effect=2

Parameter Meaning
[SKALIERUNG] scaling level, what defines the size of preview picture for this specific Thumbshot provider (1 or 2 or 3 or 4 … or 7)
[MEIN_URL] can be translated as [My_URL and is the position where you insert %s, which will replaced by the plugin with your linked news article page

Your configuration parameter should look similar to:
http://fadeout.de/thumbshot-pro/?scale=3&url=%s&effect=2

My Thumbshots do not fit

The size of the Thumbshots depending on your related service provider and settings. Please read their documentation carefully. You may modify the Thumbshot-box of NEWS System by css. The following settings are default and maybe adapted yourself.news_subcontent is the class of the surrounding box of the thumbshot where the preview-picture is contained. The preview picture class is named news_subcontent_pic.

.news_subcontent { position: absolute; visibility: hidden; width: 308px; height: 254px; padding: 8px; border-radius: 4px; background-color: #ffffff; border: 1px solid black; } .news_subcontent_pic { width: 300px; height: 246px; margin-left: auto; margin-right: auto; }
  1.  
  2.   .news_subcontent {
  3.     position:        absolute;
  4.     visibility:        hidden;
  5.     width:              308px;
  6.     height:             254px;
  7.     padding:              8px;
  8.     border-radius:        4px;
  9.     background-color: #ffffff;
  10.     border:   1px solid black;
  11.   }
  12.  
  13.   .news_subcontent_pic {
  14.     width:              300px;
  15.     height:             246px;
  16.     margin-left:         auto;
  17.     margin-right:        auto;
  18.   }
  19.  

Discussion

Please use only the DokuWiki Forum for discussion and the plugin related Issue Tracker page (or even git) to raise issues.
The plugin development is still ongoing. There might be something to be corrected, to be implement or to be improved.

1) , 2) , 3) soapp = show one article per page [instead of current all news]
news/descr.txt · Last modified: 2016/05/15 15:41 by taggic

This Wiki is hosted and ruled by Policies of Frister Consultancy Services.
By using this wiki you accept these rules. -> Impressum