<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://en.contaowiki.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://en.contaowiki.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=BugBuster</id>
		<title>Contao Community Documentation - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://en.contaowiki.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=BugBuster"/>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Special:Contributions/BugBuster"/>
		<updated>2026-06-01T19:37:46Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.22.6</generator>

	<entry>
		<id>https://en.contaowiki.org/Bot_Statistic</id>
		<title>Bot Statistic</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Bot_Statistic"/>
				<updated>2023-12-21T10:58:33Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bot Statistics counts the requests (visits, pages) of the bots.&amp;lt;br /&amp;gt;&lt;br /&gt;
To identify the bots, the module is used [[Bot Detection|Bot Detection]] (necessary dependence).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://contao.ninja&lt;br /&gt;
| ExtVersion=1.1.0&lt;br /&gt;
| Version=ab 5.2&lt;br /&gt;
| TLVersion=no&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]]&lt;br /&gt;
| ERLink=https://packagist.org/packages/bugbuster/contao-botstatistics-bundle&lt;br /&gt;
| DonateLink=http://www.amazon.de/wishlist/26HHEJOU03G76&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/contao-botstatistics-bundle/issues&lt;br /&gt;
| Comment=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[de:Bot_Statistik]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
After installation, create a front end module of type &amp;quot;Bot Statistics&amp;quot; and install this in the layout, best in the footer. The module only returns a HTML comment, and therefore does not affect the layout.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In the backend, there is in &amp;quot;System&amp;quot; the new item &amp;quot;Bot Statistics&amp;quot;.&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Stardate</id>
		<title>Stardate</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Stardate"/>
				<updated>2019-05-11T22:11:42Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.''''' &lt;br /&gt;
&lt;br /&gt;
[[File:Module_stardate_all.jpg|right|Stardate]]The module generates over insert-tags, the Star Trek&amp;lt;sup style=&amp;quot;font-size: 0.9em;&amp;quot;&amp;gt;®&amp;lt;/sup&amp;gt; Stardate.&lt;br /&gt;
With insert tags you can choose, according to which method of calculation and whether the return should take place as text or an image.&amp;lt;br /&amp;gt;&lt;br /&gt;
The image at right shows all types of calculation than image, at 2010-02-17 03:30 PM. &lt;br /&gt;
&lt;br /&gt;
{{Hint|This page is no longer updated by the developer.&lt;br /&gt;
The current manual for the extension Stardate (Contao 4) can be found here: [http://docs.contao.ninja/en/stardate.html docs.contao.ninja]}}&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=0.1.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.8.0 - 2.8.4&lt;br /&gt;
| Depending=[[GraphicalText|GraphicalText]] (optional)&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/stardate.html&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| TrackerLink=http://dev.typolight-forge.org/projects/stardate/issues&lt;br /&gt;
| Comment=German demo on [http://www.ncc1969.de/Sternzeit.html www.ncc1969.de]&lt;br /&gt;
}}&lt;br /&gt;
[[de:Stardate]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Stardate module will be answered in forum: [http://www.typolight-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [http://dev.typolight-forge.org/projects/stardate/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/stardate.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/stardate&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Use in the frontend=&lt;br /&gt;
The module used insert-tags. It can be selected the type (text / image), whether the generated values into the page cache (if activated) or newly generated each time. Both are controlled by corresponding parameters.&lt;br /&gt;
&lt;br /&gt;
=Insert-Tag Overview=&lt;br /&gt;
The names have been formed on the source or the series.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Stardate Today==&lt;br /&gt;
[[File:Module_stardate_today.jpg|left|Stardate]]Source: trekguide.com&amp;lt;br /&amp;gt;Output as a positive number for today.&lt;br /&gt;
Output in the form: YYMM.DD, YY is YYYY-1900&amp;lt;br /&amp;gt;&lt;br /&gt;
Text:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::TODAY}}&lt;br /&gt;
 {{cache_stardate::TODAY}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Image:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::TODAYGT}}&lt;br /&gt;
 {{stardate::TODAYGT::gttagname}}&lt;br /&gt;
 {{cache_stardate::TODAYGT::gttagname}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Where &amp;quot;[[Stardate#Determination_the_.22gttagname.22|gttagname]]&amp;quot; the name chosen in [[GraphicalText]] module. If no declaration, &amp;quot;Stardate&amp;quot; used as the default.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
==Fictional Stardate Today==&lt;br /&gt;
[[File:Module_stardate_fs.jpg|left|Stardate]]Source: trekguide.com&amp;lt;br /&amp;gt;Output as a positive number for today. Stardate 00000.0 begins on 7/14/1946 6:00 PM&amp;lt;br /&amp;gt;&lt;br /&gt;
Text:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::FS}}&lt;br /&gt;
 {{cache_stardate::FS}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Image:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::FSGT}}&lt;br /&gt;
 {{stardate::FSGT::gttagname}}&lt;br /&gt;
 {{cache_stardate::FSGT::gttagname}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Where &amp;quot;[[Stardate#Determination_the_.22gttagname.22|gttagname]]&amp;quot; the name chosen in [[GraphicalText]] module. If no declaration, &amp;quot;Stardate&amp;quot; used as the default.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
==Fictional Stardate TK==&lt;br /&gt;
[[File:Module_stardate_tk.jpg|left|Stardate]]Source: TrekConnection.com&amp;lt;br /&amp;gt;Output as a positive number for today.&amp;lt;br /&amp;gt;&lt;br /&gt;
Text:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::TK}}&lt;br /&gt;
 {{cache_stardate::TK}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Image:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::TKGT}}&lt;br /&gt;
 {{stardate::TKGT::gttagname}}&lt;br /&gt;
 {{cache_stardate::TKGT::gttagname}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Where &amp;quot;[[Stardate#Determination_the_.22gttagname.22|gttagname]]&amp;quot; the name chosen in [[GraphicalText]] module. If no declaration, &amp;quot;Stardate&amp;quot; used as the default.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
==Stardate of Star Trek XI==&lt;br /&gt;
[[File:Module_stardate_stxi.jpg|left|Stardate]]Source: trekguide.com&amp;lt;br /&amp;gt;Output as a positive number for today. Output in the form: YYYY.xx , YYYY is the current year, xx the 100th Part of the year.&amp;lt;br /&amp;gt;&lt;br /&gt;
Text:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::XI}}&lt;br /&gt;
 {{cache_stardate::XI}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Image:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::XIGT}}&lt;br /&gt;
 {{stardate::XIGT::gttagname}}&lt;br /&gt;
 {{cache_stardate::XIGT::gttagname}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Where &amp;quot;[[Stardate#Determination_the_.22gttagname.22|gttagname]]&amp;quot; the name chosen in [[GraphicalText]] module. If no declaration, &amp;quot;Stardate&amp;quot; used as the default.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Stardate TNG (1)==&lt;br /&gt;
[[File:Module_stardate_tng1.jpg|left|Stardate]]Source: lcars.org.uk&amp;lt;br /&amp;gt;Output as a negative number for today. Stardate 00000.0 begins on 0/01/2323 00:00 AM&amp;lt;br /&amp;gt;&lt;br /&gt;
Text:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::TNG2323}}&lt;br /&gt;
 {{cache_stardate::TNG2323}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Image:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::TNG2323GT}}&lt;br /&gt;
 {{stardate::TNG2323GT::gttagname}}&lt;br /&gt;
 {{cache_stardate::TNG2323GT::gttagname}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Where &amp;quot;[[Stardate#Determination_the_.22gttagname.22|gttagname]]&amp;quot; the name chosen in [[GraphicalText]] module. If no declaration, &amp;quot;Stardate&amp;quot; used as the default.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Stardate TNG (2)==&lt;br /&gt;
[[File:Module_stardate_tng2.jpg|left|Stardate]]Source: trekguide.com&amp;lt;br /&amp;gt;Output as a negative number for today. Stardate 00000.0 begins on 05/25/2322 00:00 AM&amp;lt;br /&amp;gt;&lt;br /&gt;
Text:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::TNG2322}}&lt;br /&gt;
 {{cache_stardate::TNG2322}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Image:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::TNG2322GT}}&lt;br /&gt;
 {{stardate::TNG2322GT::gttagname}}&lt;br /&gt;
 {{cache_stardate::TNG2322GT::gttagname}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Where &amp;quot;[[Stardate#Determination_the_.22gttagname.22|gttagname]]&amp;quot; the name chosen in [[GraphicalText]] module. If no declaration, &amp;quot;Stardate&amp;quot; used as the default.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Stardate TOS==&lt;br /&gt;
[[File:Module_stardate_tos.jpg|left|Stardate]]Source: trekguide.com&amp;lt;br /&amp;gt;Output as a negative number for today. Stardate 00000.0 begins on 05/01/2265 00:00 AM&amp;lt;br /&amp;gt;&lt;br /&gt;
Text:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::TOS}}&lt;br /&gt;
 {{cache_stardate::TOS}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Image:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{stardate::TOSGT}}&lt;br /&gt;
 {{stardate::TOSGT::gttagname}}&lt;br /&gt;
 {{cache_stardate::TOSGT::gttagname}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Where &amp;quot;[[Stardate#Determination_the_.22gttagname.22|gttagname]]&amp;quot; the name chosen in [[GraphicalText]] module. If no declaration, &amp;quot;Stardate&amp;quot; used as the default.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Determination the &amp;quot;gttagname&amp;quot;=&lt;br /&gt;
The &amp;quot;gttagname&amp;quot; is the &amp;quot;Tag&amp;quot; name as it was created in the back end module in the graphical text. The overview is the name in the first column in edit mode the field &amp;quot;Tag&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Module_stardate_gttagname.jpg|gttagname]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:38, 26 September 2010 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Dlstats</id>
		<title>Dlstats</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Dlstats"/>
				<updated>2016-06-19T19:23:48Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Counts the number of file downloads&lt;br /&gt;
&lt;br /&gt;
* Download statistics for the standard content elements Download and Downloads&lt;br /&gt;
* Count number of downloads per file plus latest download timestamp&lt;br /&gt;
* Optionally log every single download with timestamp, IP and username.&lt;br /&gt;
* Insert-Tag for number of downloads in the frontend (from 2.1.0)&lt;br /&gt;
* Ignore certain IPs (define itself, from 2.1.0)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://contao.ninja&lt;br /&gt;
| ExtVersion=2.4.1 / 3.4.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.7.6 - 2.8.4&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/dlstats.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/dlstats/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:dlstats]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao. On manual installation, call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''For manual installation, please note that the module &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; must be installed.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
Go to the Contao Settings and switch on the logging, either only counting the number of downloads per file, or optionally also log each download with timestamp and IP.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''For dlstats 2.1.x:''' In the settings you can be deactivated the Anonymize IP function, it must be the admin.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''From dlstats 2.2.0:''' IP addresses anonymous: &amp;quot;yes/no&amp;quot; is now controlled by Contao itself.&amp;lt;br /&amp;gt;&lt;br /&gt;
(System - Settings - Privacy settings - Anonymize IP addresses)&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Use the content element File Download or File Downloads for all downloaded files you want to have counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
After downloading a file you will find the statistics under Content - Download Stats. &lt;br /&gt;
&lt;br /&gt;
==Using Insert-Tag==&lt;br /&gt;
The Insert-Tag &amp;quot;cache_dlstats::total downloads::...&amp;quot; supports both, the source of the file (relative path + file name), as well as in connection with the article alias and how it generates for ce_download and ce_downloads. Therefore, the use is well used in the templates of the two CEs, see examples. Return is only the number of downloads as a number.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_dlstats::totaldownloads::tl_files/cdc2010.pdf}}&lt;br /&gt;
{{cache_dlstats::totaldownloads::CDC_2010.html?file=tl_files/cdc2010.pdf}}&lt;br /&gt;
&lt;br /&gt;
// in ce_download template:&lt;br /&gt;
{{cache_dlstats::totaldownloads::&amp;lt;?php echo $this-&amp;gt;href; ?&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
// in ce_downloads template:&lt;br /&gt;
{{cache_dlstats::totaldownloads::&amp;lt;?php echo $file['href']; ?&amp;gt;}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ignore certain IPs==&lt;br /&gt;
If any downloads from certain IP addresses should not be counted, this can be defined in the localconfig.php as follows:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV4'][] = '192.168.1.2';&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV4'][] = '192.168.0.0/24';&lt;br /&gt;
//respectively&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV6'][] = '2001:0db8::1';&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV6'][] = '2001:0db8:85a3:0800::/56';  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Notice==&lt;br /&gt;
* Simple links to files will not be counted as downloads!&lt;br /&gt;
* If you are logged in the backend, your download is not counted. (from 2.1.0)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 20:07, 1 April 2013 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Enhanced_error.log</id>
		<title>Enhanced error.log</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Enhanced_error.log"/>
				<updated>2016-05-12T15:08:52Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: Created page with &amp;quot;&amp;quot;Enhanced error.log&amp;quot; generate the Contao error.log with complete relative file paths.  {{ExtInfo | Dev=Glen Langer (BugBuster) | DevSite=https://contao.ninj...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;quot;Enhanced error.log&amp;quot; generate the Contao error.log with complete relative file paths.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=https://contao.ninja&lt;br /&gt;
| ExtVersion=1.0.0&lt;br /&gt;
| Version=from 3.5&lt;br /&gt;
| ERLink=https://contao.org/en/extension-list/view/errorlog_enhanced.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/errorlog_enhanced/issues&lt;br /&gt;
| VCSLink=https://github.com/BugBuster1701/errorlog_enhanced&lt;br /&gt;
| Comment=Version for Contao 3.5 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Enhanced_error.log]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
{{Hint|This page is no longer updated by the developer.&lt;br /&gt;
The current manual for the extension &amp;quot;Enhanced error.log&amp;quot; can be found here:  [https://docs.contao.ninja/en/enhanced-error-log.html docs.contao.ninja]}}&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Xing</id>
		<title>Xing</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Xing"/>
				<updated>2016-03-26T20:15:46Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Mod_xing_team.tpl.jpg|right|Xing Team]]Normally, you need not a module, because it is just a linked image. &amp;lt;br /&amp;gt;&lt;br /&gt;
But my aim was:&lt;br /&gt;
*to select the image &lt;br /&gt;
*to determine the position&lt;br /&gt;
*several of them on one side, or distributed on several domains.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
First, categories are created, in these categories then the XING profile(s). With the XING-Lister, you can select the category that are used. Each front-end module can be assigned their own template. Three different templates are included. (see &amp;quot;[[Xing#Using|Using]]&amp;quot;)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Thus, it is then possible, the categories to distribute on several layouts or several domains. Are there more than one profile in a category, all profiles will be shown from this category. Thus it would be e.g. possible to show the profiles of a whole team.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://contao.ninja&lt;br /&gt;
| ExtVersion= 	C3 3.1.0 / C4 1.0.0 &lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/gl_xing.html / https://github.com/BugBuster1701/contao-xing-bundle&lt;br /&gt;
| DonateLink=Cappuccino &lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/contao_xing/issues / https://github.com/BugBuster1701/contao-xing-bundle/issues&lt;br /&gt;
| Comment=Version for Contao 3 and Contao 4 are online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Xing]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Xing module will be answered in forum: &amp;lt;br /&amp;gt;&lt;br /&gt;
English: [https://community.contao.org/en/forumdisplay.php?15 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
German: [https://community.contao.org/de/forumdisplay.php?119 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the Issue Tracker. (Links see above.)&lt;br /&gt;
&lt;br /&gt;
=Installation in Contao 3=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [https://contao.org/en/extension-list/view/gl_xing.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/gl_xing&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Installation in Contao 4=&lt;br /&gt;
Installation is performed using Composer. Details see [https://github.com/BugBuster1701/contao-xing-bundle/blob/master/README.md Readme on GitHub].&lt;br /&gt;
&lt;br /&gt;
==Contao 3: Xing Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here.&lt;br /&gt;
*[[Xing_Update_v1_to_v2|'''Xing Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The Xing module contains a back end and a front end module. &amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Xing&amp;quot;, for the front end &amp;quot;Xing list&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Xing===&lt;br /&gt;
[[File:Xing_en_backend.jpg|Xing Module Backend]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Frontend==&lt;br /&gt;
For the front end module, a CSS file is included as an example:&lt;br /&gt;
*mod_xing_fe.css for a normal, line-by-line output.&lt;br /&gt;
&lt;br /&gt;
===Xing Banner===&lt;br /&gt;
The simplest variant, only the linked image:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Module_Xing_List.tpl.jpg|Xing Banner]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
The more complex variant, several Xing banner of a team, with team name and names of team members.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Module_Xing_Team.jpg|Xing Team]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
First, create a new category. In the category create the Xing profile(s).&amp;lt;br /&amp;gt;&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Here are the steps, each with the default values. [[Xing#Technical_Details|Technical details]] will be explained later.&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Xing'. In the main area click on the button 'New category'. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Xing_en_backend_category.jpg|Xing - New category]]&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
==Create Xing Profile==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, either click the 'New profile' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Xing_en_backend_profile_new.jpg|Xing - neues Profil]]&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, some information are needed:&lt;br /&gt;
* XING Profile, e.g.: John_Doe, explanations are provided in the help. (Help Wizard)&lt;br /&gt;
* XING Layout , explanations are provided in the help. (Help Wizard)&lt;br /&gt;
* activate &amp;quot;Published&amp;quot;&lt;br /&gt;
Then you click on &amp;quot;Save and close&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Front end Module==&lt;br /&gt;
A new front-end module is create with:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; (Front end) Modules -&amp;gt; Add module (Contao 2.9 and newer)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
At first, enter the title, and only then select in &amp;quot;Module type&amp;quot;: 'Xing' - 'Xing list'. It changes the form fields.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Xing Category' now select the previously created category, then 'Save and close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer)&lt;br /&gt;
&lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left)&lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
As mentioned above, is provided a CSS file for presentation.&amp;lt;br /&amp;gt;&lt;br /&gt;
For the first tests you should copy the file mod_xing_fe.css from '''/system/modules/gl_xing''' to '''/tl_files''' / '''/files'''.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then import them over the back end and activate it in the layout.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category and in the constructed front end module feasible / adjustable.&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the category==&lt;br /&gt;
===Team Profile===&lt;br /&gt;
In the category, you can create multiple Xing profiles.&amp;lt;br &amp;gt;&lt;br /&gt;
Use would be for example an overview of all team members.&amp;lt;br /&amp;gt;&lt;br /&gt;
Depending on the template selection in front-end module, the category name is the team name.&amp;lt;br /&amp;gt;&lt;br /&gt;
See the next section, as it could look like then.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the front end module definition==&lt;br /&gt;
===XING Template===&lt;br /&gt;
Is defined in the category only one Xing profile, the following two templates are useful:&lt;br /&gt;
* mod_xing_list, it shows only the linked graphic&amp;lt;br /&amp;gt;[[File:Module_Xing_List.tpl.jpg‎|mod_xing_list]]&lt;br /&gt;
* mod_xing_list_profile, it shows the linked graphic, including the profile name (underscore is removed)&amp;lt;br /&amp;gt;[[File:Module_Xing_Profile.tpl.jpg‎|mod_xing_profile]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
If several Xing profiles defined in the category to represent a team, the following two templates are useful:&lt;br /&gt;
* mod_xing_list_profile, it displays the graphics linked with each other, each including the profile name (underscore is removed)&amp;lt;br /&amp;gt;[[File:Module_Xing_Profile-2.tpl.jpg‎|mod_xing_profile]] &lt;br /&gt;
* mod_xing_list_team, as mod_xing_list_profile, in addition displays above the first graphic the team name (category name)&amp;lt;br /&amp;gt;[[File:Module_Xing_Team.jpg‎|mod_xing_team]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can save your own templates in the folder /templates or in the template folder of the used theme.&amp;lt;br /&amp;gt;&lt;br /&gt;
Template names must begin with '''''mod_xing_list''''' and must have the suffix '''''.tpl''''' / '''''.xhtml''''' / '''''.html5'''''. ( e.g.: '''''mod_xing_list_club66.xhtml''''' )&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
===Company Template===&lt;br /&gt;
For a company profile, XING has a different destination URL. Therefore it was created a custom template.&lt;br /&gt;
Please select the template &amp;quot;mod_xing_list_company&amp;quot; for a company profile.&lt;br /&gt;
&lt;br /&gt;
===Show to guests only===&lt;br /&gt;
Hide the module if a member is logged in.&lt;br /&gt;
&lt;br /&gt;
===Protect module===&lt;br /&gt;
Show the module to certain member groups only.&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Visitors</id>
		<title>Visitors</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Visitors"/>
				<updated>2015-08-25T19:06:29Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg|right|Visitors]]This module allows you to count hits and visits of your website.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the display appears the hits and visits from the current day, as well as the respective total.&lt;br /&gt;
Statistic is also in the backend.&lt;br /&gt;
&lt;br /&gt;
{{Hint|This page is no longer updated by the developer.&lt;br /&gt;
The current manual for the extension Visitors can be found here: [http://docs.contao.ninja/en/visitors.html docs.contao.ninja]}}&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.8.2 / 3.2.1&lt;br /&gt;
| Version=from 2.19&lt;br /&gt;
| TLVersion=2.7 - 2.9 (see installation notes)&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]],[[xls_export|Excel 95 writer (xls_export)]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/visitors.en.html&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/visitors/issues&lt;br /&gt;
| Comment=Version for Contao 3.2 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Visitors]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Visitors module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported at GitHub: [https://github.com/BugBuster1701/visitors/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Translations=&lt;br /&gt;
Translations can be performed on [https://www.transifex.com/projects/p/contao-visitors/ Transifex]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/visitors.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/visitors&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Visitors is dependent on the module &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; and &amp;quot;[[xls_export|Excel 95 writer (xls_export)]]&amp;quot;. They must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Note for older &amp;quot;TYPOlight/Contao&amp;quot; versions==&lt;br /&gt;
===Contao 2.9===&lt;br /&gt;
Users of Contao 2.9.x, please use Visitors Module Version 2.7.1 ([http://www.contao.org/extension-list/view/visitors.20070019.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use Visitors Module Version 1.7.2 ([http://www.contao.org/extension-list/view/visitors.10070029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use Visitors Module Version 1.4.1 ([http://www.contao.org/extension-list/view/visitors.10040019.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
==Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here. &lt;br /&gt;
*[[Visitors_Update_v1_to_v2|'''Visitors Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Overview=&lt;br /&gt;
The Visitors module contains two back end and one front end module.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Visitors&amp;quot; and &amp;quot;Visitor Statistics&amp;quot;, for the front end &amp;quot;Visitors&amp;quot;. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Visitors===&lt;br /&gt;
[[File:Visitors_en_backend_visitors.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors_en_backend_visitorstatistics.jpg]]&lt;br /&gt;
&lt;br /&gt;
shows in detail: (Click on image for higher resolution)&lt;br /&gt;
&amp;lt;gallery widths=&amp;quot;240&amp;quot; heights=&amp;quot;180&amp;quot; caption=&amp;quot;Visitors Statistics&amp;quot;&amp;gt;&lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details.jpg|Visitors Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_browser.jpg|Browser Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_searchengine.jpg|Search Engine Referer Statistics &lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Front end==&lt;br /&gt;
For the front end are provided two CSS files as an example:&lt;br /&gt;
*mod_visitors_fe.css for the normal output, line by line&lt;br /&gt;
*mod_visitors_fe_horizontal.css for the horizontal output&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics, horizontal===&lt;br /&gt;
[[File:Visitors-package-fe-horizontal-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The first one creates a new visitor category via the menu item &amp;quot;visitors&amp;quot;. In this then the counter.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Here are the steps, each with the default values. [[Visitors#Technical_Details|Technical details]] will be explained later.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Visitors'. In the main area click on the button 'New category'.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_category_new.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Create new counter==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, either click the 'New counter' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_counter_new.jpg]]&lt;br /&gt;
&lt;br /&gt;
Now, some information are needed: :&lt;br /&gt;
* Name, (is displayed as a heading on the numbers).&lt;br /&gt;
* Start date, optional, only for display in font end&lt;br /&gt;
* Optional: 'Initial value of visitors/hits'&lt;br /&gt;
* Optional: 'Visitors per day' &lt;br /&gt;
* Activate &amp;quot;Published&amp;quot;&lt;br /&gt;
Then you click on &amp;quot;Save and close&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Front end Module==&lt;br /&gt;
A new front-end module is create with:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Add module (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add module (TYPOlight 2.8.x)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
At first, enter the title, and only then select in &amp;quot;Module type&amp;quot;: 'Miscellaneous'-'Visitors'. It changes the form fields.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Visitors category' now select the previously created category, then 'Save and close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer) &lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x) &lt;br /&gt;
&lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left) &lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
As mentioned above, are provided two CSS file for presentation.&amp;lt;br /&amp;gt;&lt;br /&gt;
For the first tests you should copy the file &amp;lt;code&amp;gt;mod_visitors_fe.css&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;/system/modules/visitors&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;/tl_files&amp;lt;/code&amp;gt; . Then import them over the back end and activate it in the layout.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category, in the counter denifinition and in the constructed front end module feasible / adjustable. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the category==&lt;br /&gt;
===Counting mode===&lt;br /&gt;
From version 1.6.0, Counting mode is selectable, server side or browser side, by category:&lt;br /&gt;
* Load counting, server side by Contao&lt;br /&gt;
* Read counting, client side by browser&lt;br /&gt;
** (only on Contao cacheMode: server and browser cache / only browser cache)&lt;br /&gt;
&lt;br /&gt;
With &amp;quot;Read counting&amp;quot; can be counted when the page is in the browser cache and will be called from it.&lt;br /&gt;
The system setting &amp;quot;Cache mode&amp;quot; will be respected.&lt;br /&gt;
&lt;br /&gt;
{{Note|The display of current values will continue but only if the page is requested from the server.}}&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the counter denifinition==&lt;br /&gt;
===Block time===&lt;br /&gt;
The block time is in seconds. After interruption of the requests at this time, an access is counted as an additional visitor.&amp;lt;br /&amp;gt;&lt;br /&gt;
Pre-entered are 1800 seconds, so that is 30 minutes.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Technical Details in the front end module definition==&lt;br /&gt;
===Templates===&lt;br /&gt;
Each module can be assigned its own Template. Four different templates are included.&lt;br /&gt;
* mod_visitors_fe_all&lt;br /&gt;
** All fields are included. (see example above)&lt;br /&gt;
* mod_visitors_fe_hits&lt;br /&gt;
** Here the visit rows were removed.&lt;br /&gt;
* mod_visitors_fe_visits&lt;br /&gt;
** Here the hit rows were removed.&lt;br /&gt;
* mod_visitors_fe_invisible&lt;br /&gt;
** Here, nothing is displayed. This template is used for a pure counting.&lt;br /&gt;
&lt;br /&gt;
For own Templates, the template files must start with &amp;quot;mod_visitors_fe_&amp;quot; and end with &amp;quot;.html5&amp;quot; or &amp;quot;.xhtml&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Show to guests only===&lt;br /&gt;
Hide the module if a member (front end user) is logged in. &lt;br /&gt;
&lt;br /&gt;
===Protect module===&lt;br /&gt;
Show the module to certain member groups only.&lt;br /&gt;
&lt;br /&gt;
===No counting for this HTTP_USER_AGENT partial identifier===&lt;br /&gt;
You can set a custom UserAgent String in your browser and in the visitors module configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Module Name (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Module Name (TYPOlight 2.8.x)&lt;br /&gt;
In the field: &amp;quot;No counting for this HTTP_USER_AGENT partial identifier&amp;quot;, you can enter a unique identifier.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: CTISOK&amp;lt;br /&amp;gt;&lt;br /&gt;
Save it.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, change the User Agent String of Mozilla Firefox:&amp;lt;br /&amp;gt;&lt;br /&gt;
# Type '''about:config''' in the Mozilla Firefox address bar and press ENTER,&lt;br /&gt;
# Type '''general.useragent.extra.firefox''' in the Filter bar,&lt;br /&gt;
# Double-click on the returned Firefox setting, where you can change a user agent string to overwrite the default. &lt;br /&gt;
# Add her &amp;quot;CTISOK&amp;quot; separated by space, e.g. &amp;quot;Firefox/3.5.2 CTISOK&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can check your new User Agent String , type '''about:''' + ENTER in the Mozilla Firefox address bar and press ENTER, see last row.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For other browsers, see:&lt;br /&gt;
[http://www.walkernews.net/2007/07/05/how-to-change-user-agent-string/ walkernews.net - how to change user agent string]&lt;br /&gt;
{{Hint|This does not work anymore in Firefox 4.  Alternatively, use the add-on: [https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher/ User-Agent-Switcher]}}&lt;br /&gt;
&lt;br /&gt;
=Insert-Tags=&lt;br /&gt;
==Show the values==&lt;br /&gt;
From version 1.2.0 there is Insert-Tags to show the values.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::name}}&lt;br /&gt;
 {{visitors::catid::online}}&lt;br /&gt;
 {{visitors::catid::start}}&lt;br /&gt;
 {{visitors::catid::totalvisit}}&lt;br /&gt;
 {{visitors::catid::totalhit}}&lt;br /&gt;
 {{visitors::catid::todayvisit}}&lt;br /&gt;
 {{visitors::catid::todayhit}}&lt;br /&gt;
 {{visitors::catid::averagevisits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
From version 1.5.0 and from TYPOlight 2.8, Insert-Tags can be extended with prefix 'cache_'. Thus, these then cache resistant.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::name}}&lt;br /&gt;
 ...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The counting is continued through the module! Who wants to use to display the insert tags, the module continues to need, but only to count. With the templates mod_visitors_fe_invisible the module may be invisible, if desired.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
To determine the category ID, go into the category overview of the module with your mouse over the &amp;quot;i&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 2.3.1, the ID is shown right behind the category name.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-category.jpg|Visitor category ID]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The tooltip displays the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
Or click on the &amp;quot;i&amp;quot;, in the following site is in the first line the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
For category ID = 1 that would be like that:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::1::online}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Count==&lt;br /&gt;
An alternative to &amp;quot;counting only&amp;quot; would be to use an Insert-Tag. From version 1.5.0 there is another Insert-Tag. The module itself uses this as well:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::count}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Example for installation in an article (for category ID = 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span style=&amp;quot;width:0px;height:0px;&amp;quot;&amp;gt;{{cache_visitors::1::count}}&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Caution|It must be noticed, that the insert-tag for the count will be installed at first on the page so that the counting is carried out before the identification of the values.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==More Insert-Tags==&lt;br /&gt;
From version 2.1.0, there ist Insert-Tags for display the values of the day with the most visitors.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::bestday::date}}   - Day (Date) with the most visitors&lt;br /&gt;
 {{visitors::catid::bestday::visits}} - Number of visitors of the day with most visitors&lt;br /&gt;
 {{visitors::catid::bestday::hits}}   - Number of hits of the day with most visitors&lt;br /&gt;
or&lt;br /&gt;
 {{cache_visitors::catid::bestday::date}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::visits}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::hits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The &amp;quot;date&amp;quot; insert-tag has an optional parameter to format the date output. (m.d.Y , Y-m-d, etc.)&amp;lt;br /&amp;gt;&lt;br /&gt;
The system setting is used as default. As a separator, a &amp;quot;::&amp;quot; are used.&amp;lt;br /&amp;gt;&lt;br /&gt;
A complete example (with category 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 Best Day: {{visitors::1::bestday::date::j. F Y}} with {{visitors::1::bestday::visits}} visitors &lt;br /&gt;
(and {{visitors::1::bestday::hits}} hits)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
results:&lt;br /&gt;
 Best Day: 31. August 2010 with 25 visitors (and 123 hits)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Specific feature=&lt;br /&gt;
==No counting==&lt;br /&gt;
No front-end call is counted when one is logged on at the same time in the back end.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visitors per day: Ø = 0==&lt;br /&gt;
The average value per day will be calculated for each full calendar day.&amp;lt;br /&amp;gt;&lt;br /&gt;
So, having only one day before a counting or a counting of the current day, no meaningful value can be calculated.&amp;lt;br /&amp;gt;&lt;br /&gt;
(average = number visitors)&amp;lt;br /&amp;gt;&lt;br /&gt;
In these cases appears &amp;quot;0&amp;quot;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Bot Detection off==&lt;br /&gt;
Who wants to count the hits from bots and search engines can switch off the bot detection. This is done by the file localconfig.php.&lt;br /&gt;
{{Caution|This applies to all Visitors modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after: ### INSTALL SCRIPT STOP ### ) switching off the bot detection:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_visitors_bot_check'] = false;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:42, 12 December 2010 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Banner</id>
		<title>Banner</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Banner"/>
				<updated>2015-08-25T19:04:28Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
A banner advertisement module with a simple form of weighting.&amp;lt;br /&amp;gt;&lt;br /&gt;
In Backend you can see banner view and banner click statistics. (System Menu)&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
IP-based ReClick blocker was integrated (5 minutes). Forwarding functioned, but isn't counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
Similarly, the views within a period not re-counted if the same banner displayed. (10 minutes)&amp;lt;br /&amp;gt;&lt;br /&gt;
The amount of time to block the view count can be changed.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
By using the module &amp;quot;[[Bot Detection |Bot Detection]]&amp;quot; requests from bots and search engines are not counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
In the module directory is located in the file '''mod_banner_fe.css''' some CSS sample data. These can be included in the layout or you can import the file and activate this in the layout.&lt;br /&gt;
&lt;br /&gt;
{{Hint|This page is no longer updated by the developer.&lt;br /&gt;
The current manual for the extension Banner can be found here: [http://docs.contao.ninja/en/banner.html docs.contao.ninja]}}&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://contao.ninja&lt;br /&gt;
| ExtVersion=3.5.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.6.2 - 2.8.4 (see installations notes)&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]],[[xls_export|Excel 95 writer (xls_export)]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/banner.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/banner/issues&lt;br /&gt;
| VCSLink=https://github.com/BugBuster1701/banner&lt;br /&gt;
| Comment=Version for Contao 3.4 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Banner]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Visitors module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/banner/issues Issue Tracker].&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Translations=&lt;br /&gt;
Translations can be performed on [https://www.transifex.com/projects/p/contao-banner/ Transifex]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/banner.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/banner&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Banner is dependent on the modules &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; and &amp;quot;[[xls_export|Excel 95 writer (xls_export)]]&amp;quot;. They must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Note for older &amp;quot;TYPOlight&amp;quot; versions==&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use Banner Module Version 1.11.2 ([http://www.contao.org/extension-list/view/banner.10110029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use Banner Module Version 1.9.2 ([http://www.contao.org/extension-list/view/banner.10090029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.6===&lt;br /&gt;
Users of TYPOlight 2.6.x, please use Banner Module Version 1.6.5 ([http://www.contao.org/extension-list/view/banner.10060059.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Installation as an update=&lt;br /&gt;
An update is identical to the installation.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Notice when updating from &amp;lt; 1.10.0 to the latest version:'''&amp;lt;br /&amp;gt;&lt;br /&gt;
The CSS file &amp;quot;mod_banner_fe.css&amp;quot; which is included as an example, the uppercase / lowercase letters changed in a class.&amp;lt;br /&amp;gt;&lt;br /&gt;
Anyone who has imported this file or the design itself has to produce, the class &amp;quot;.mod_Banner&amp;quot; must change in &amp;quot;.mod_banner&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here. &lt;br /&gt;
*[[Banner_Update_v1_to_v2|'''Banner Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The Banner Module contains two back end and one front end module.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Banner&amp;quot; and &amp;quot;Banner Statistic&amp;quot;, for the front end &amp;quot;Banner&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Banner===&lt;br /&gt;
[[File:Banner_en_backend_banner.jpg|Back end module Banner]]&lt;br /&gt;
&lt;br /&gt;
===Banner Statistic===&lt;br /&gt;
[[File:Banner_en_backend_bannerstatistic.jpg|Back end module Banner Statistic]]&lt;br /&gt;
&lt;br /&gt;
==Front end==&lt;br /&gt;
&lt;br /&gt;
===Display a banner===&lt;br /&gt;
[[File:Banner_en_frontend_one_banner.jpg|Front end module Banner]]&lt;br /&gt;
# Module Headline&lt;br /&gt;
# Banner Image&lt;br /&gt;
# Banner Comment&lt;br /&gt;
# Banner Name&lt;br /&gt;
&lt;br /&gt;
More details about this see under &amp;quot;[[Banner#Using|Using]]&amp;quot; or &amp;quot;[[Banner#Technical_Details|Technical Details]]&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Display all Banner===&lt;br /&gt;
With 'all Banner' is meant here, all banners in the selected category.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Banner_en_frontend_all_banner.jpg|Front end all banner|left]]&lt;br /&gt;
In this example, 3 banners have been defined, &amp;lt;br /&amp;gt;&lt;br /&gt;
* Graphic Banner&lt;br /&gt;
* Flash Banner&lt;br /&gt;
* Text Banner&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
More details about this see under &amp;quot;[[Banner#Using|Using]]&amp;quot; or &amp;quot;[[Banner#Technical_Details|Technical Details]]&amp;quot;.&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The first one creates a new banner category via the menu item &amp;quot;banner&amp;quot;. In this then the banners.&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&lt;br /&gt;
Here are the steps, each with the default values. [[Banner#Technical_Details|Technical details]] will be explained later.&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Banner'. In the main area click on the button 'New category'.&lt;br /&gt;
[[File:Banner_en_backend_category_new.jpg|New Banner Category]]&lt;br /&gt;
&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
==Create the banners==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br &amp;gt;&lt;br /&gt;
Now, either click the 'New Banner' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br &amp;gt;&lt;br /&gt;
[[File:Banner_en_backend_banner_new.jpg|New Banner]]&lt;br /&gt;
&lt;br /&gt;
First they must select the banner source:&lt;br /&gt;
* internal Banner (Graphic / Flash files  is stored on server)&lt;br /&gt;
* external Banner (Graphic / Flash files are integrated via URL)&lt;br /&gt;
* Text Banner&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
After selecting it appear the appropriate form fields.&lt;br /&gt;
&lt;br /&gt;
===Graphic Banners===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed in the Banner overview and in the provided template appears below the banner graphic.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking on the banner graphic. The input must include &amp;quot;http://&amp;quot;.&lt;br /&gt;
#* Optional field. &lt;br /&gt;
#* Without a URL, the banner will be displayed without a link.&lt;br /&gt;
#* Alternative can be selected an internal target (Banner target page)&lt;br /&gt;
# Banner Image&lt;br /&gt;
#* Here you can now select the banner file.&lt;br /&gt;
# Banner width and height&lt;br /&gt;
#* To customize the banner size, you can specify the banner width and / or the banner height in pixels.&lt;br /&gt;
#* '''CAUTION''': Animated GIFs are for size definitions through the GD recalculation unfortunately to still images.&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* The first line will be installed and displayed as a &amp;quot;title&amp;quot; tag in the HTML source code if you move the cursor over the banner graphic.&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
===Flash Banner===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed only in the Banner overview.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking on the Flash Banner. The input must include &amp;quot;http://&amp;quot;.&lt;br /&gt;
#* Optional field.  &lt;br /&gt;
#* Without a URL, the Flash Banner will be displayed without a link.&lt;br /&gt;
#* Alternative can be selected an internal target (Banner target page)&lt;br /&gt;
# Banner Image&lt;br /&gt;
#* Here you can now select the banner file.&lt;br /&gt;
# Banner width and height&lt;br /&gt;
#* To customize the banner size, you can specify the banner width and / or the banner height in pixels.&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* Input is not necessary, is not used in the front end&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
A flash fallback to an image file is available, see the section [[Banner#Flash_Fallback_Image|Technical Details]]&lt;br /&gt;
&lt;br /&gt;
===Text Banner===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed in the Banner overview and in the provided template as a headline that is linked simultaneously with the target URL.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking. The input must include &amp;quot;http://&amp;quot;. &lt;br /&gt;
#* Optional field.&lt;br /&gt;
#* Without a URL, the Text Banner will be displayed without a link.&lt;br /&gt;
#* in provided template only the domain is shown as a short form. (Third row, see picture above)&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* This is the text line. (Second row, see picture above)&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
==Front end module==&lt;br /&gt;
A new front-end module is create with: &amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Add module (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add module (TYPOlight 2.8.x)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Be sure to '''first enter the title''', then selecting for module type:''Miscellaneous -&amp;gt; Banner''.&lt;br /&gt;
Now the form fields change accordingly.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Banner Categories' select the previously created category, then 'Save and Close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout: &amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer) &lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x) &lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left)&lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
For the first tests you should copy the provided file mod_banner_fe.css from /system/modules/banner to /tl_files . Then import them over the back end and activate it in the layout.&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category, in the banner denifinition and in the constructed front end module feasible / adjustable. &lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Category Definition==&lt;br /&gt;
===Number of banners===&lt;br /&gt;
* Show all banners&lt;br /&gt;
If you choose this option, all active banners will be showed in front end.&amp;lt;br /&amp;gt;&lt;br /&gt;
In addition, you can choose:&lt;br /&gt;
* Limiting the number of banners&lt;br /&gt;
Here, the number can be limited. Default is 0: show all banners, otherwise maximum number of banners that will be showed.&lt;br /&gt;
* Random order&lt;br /&gt;
If you choose this option, the banners will shown in a random order.&lt;br /&gt;
* Protect the statistic&lt;br /&gt;
Show the banner statistic for this category to certain user groups only. Administrators have unlimited access to all banner statistics.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Banner Definition==&lt;br /&gt;
===Flash Fallback Image===&lt;br /&gt;
If a browser does not support Flash or JavaScript is disabled, an image can be displayed instead (since version 2.2.0). At a local (internal) flash file, in the same path is searched for an image file with the same name but with the ending jpg, png or gif.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: for &amp;quot;myflash.swf&amp;quot; would be a fallback image: &amp;quot;myflash.jpg&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
Was found a replacement image, the image is displayed. If necessary, the image is converted to the dimensions of the flash file.&lt;br /&gt;
&lt;br /&gt;
===Display limitation by Start / Stop dates and times===&lt;br /&gt;
* Show from&lt;br /&gt;
** If you enter a date and time value here the current banner will not be shown on the website before this moment.&lt;br /&gt;
* Show until&lt;br /&gt;
** If you enter a date and time value here the current banner will not be shown on the website after this moment.&lt;br /&gt;
&lt;br /&gt;
===Limiting the number of Views and Clicks===&lt;br /&gt;
* Limiting the number of Views and Clicks&lt;br /&gt;
If you select this option, you can define a maximum number of views and/or maximum number of clicks.&lt;br /&gt;
* Limiting the number of Views&lt;br /&gt;
** By entering a number, the current banner is no longer displayed after this number of views.&amp;lt;br /&amp;gt;The &amp;quot;Limiting the number of Views and Clicks&amp;quot; has enabled it to stay.&lt;br /&gt;
* Limiting the number of Clicks&lt;br /&gt;
** By entering a number, the current banner is no longer displayed after this number of clicks.&amp;lt;br /&amp;gt;The &amp;quot;Limiting the number of Views and Clicks&amp;quot; has enabled it to stay.&lt;br /&gt;
&lt;br /&gt;
===Filter Domain===&lt;br /&gt;
If you enter a domain name, this banner is used only for this domain.If you leave the field empty, this banner is used for all domains. Example: '''yourdomain.com'''&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The banner will be displayed, if matches the domain. But also in partial match starting from the right. So also with access via &amp;quot;'''sub.yourdomain.com'''&amp;quot; .An entry in &amp;quot;Site structure&amp;quot; - &amp;quot;Domain Name&amp;quot; is not required for the filtering.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Front end Module Definition==&lt;br /&gt;
&lt;br /&gt;
===First banner for new visitor===&lt;br /&gt;
For each new visitor, at first is displayed the first published banner in the category. The choice is then returned to random mode. Thus, a kind of recognition can be achieved.&lt;br /&gt;
&lt;br /&gt;
===Templates===&lt;br /&gt;
Each module can be assigned its own Template. Two different templates are included.  &amp;lt;br /&amp;gt;&lt;br /&gt;
* mod_banner_list_all&lt;br /&gt;
** All fields are included.&lt;br /&gt;
* mod_banner_list_min&lt;br /&gt;
** The headline and name were removed. It will only display the banner itself.&lt;br /&gt;
&lt;br /&gt;
Both templates also support text banners.&amp;lt;br /&amp;gt;&lt;br /&gt;
For own Templates, the template files must start with &amp;quot;mod_banner_list_&amp;quot; and end with &amp;quot;.xhtml&amp;quot; / &amp;quot;.html5&amp;quot;. &lt;br /&gt;
Example: &amp;quot;mod_banner_list_special.html5&amp;quot;&lt;br /&gt;
&lt;br /&gt;
{{Note|In Banner Version 1.x this selection is located in the banner category.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Prevention of counting their own requests===&lt;br /&gt;
You can set a custom UserAgent String in your browser and in the banner modul configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Via: &lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Modul Name (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Module Name (TYPOlight 2.8.x)&lt;br /&gt;
In the applied banners module in the new field &amp;quot;No counting for this HTTP_USER_AGENT partial identifier&amp;quot; , a string is entered, it should be unique.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: CTISOK&amp;lt;br /&amp;gt;&lt;br /&gt;
Save it.&amp;lt;br /&amp;gt;&lt;br /&gt;
Several strings are also possible, then enter them separated by commas.&amp;lt;br /&amp;gt;&lt;br /&gt;
So you can change the User Agent String of Mozilla Firefox: &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
# use Add-on: User Agent Switcher&lt;br /&gt;
# insert your own user agent string and change then the string&lt;br /&gt;
# Add her &amp;quot;CTISOK&amp;quot; separated by space, e.g. &amp;quot;Firefox/35.0.1 CTISOK&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=Specific feature=&lt;br /&gt;
==Bot Detection off==&lt;br /&gt;
Who wants to count the hits from bots and search engines on the banners can switch off the bot detection. This is done by the file localconfig.php.&lt;br /&gt;
{{Caution|This applies to all Banner modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after: ### INSTALL SCRIPT STOP ### ) switching off the bot detection:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_banner_bot_check'] = false;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Change Banner Block Time for Views==&lt;br /&gt;
As written in the beginning, when a banner is displayed multiple times within 10 minutes (C3: 5 minutes), this banner is only counted once.&amp;lt;br /&amp;gt; &lt;br /&gt;
With an entry in the localconfig.php can change that. The values be there in minutes, the number must be&amp;gt; 0, otherwise will be automatically taken back to the default value (10).&lt;br /&gt;
{{Caution|This applies to all Banner modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after ### INSTALL SCRIPT STOP ### ) causes a change to 5 minutes:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_banner_block_time'] = 5;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Exception: No active banners defined and no default banner defined==&lt;br /&gt;
If, in this case, &amp;quot;Hide if empty&amp;quot; is not activated, until now was an empty image tag generated, what was presented by the IE as Broken Image. From version 1.11.2 now a DIV tag with class = &amp;quot;banner_empty&amp;quot; is generated:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_banner&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;div class=&amp;quot;banner_empty&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;!-- no banner, no default banner --&amp;gt;&lt;br /&gt;
	&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
With CSS can now be reached that is maintained (in this example) the amount and thus the layout of the site will not change:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;&lt;br /&gt;
.mod_banner .banner_empty {&lt;br /&gt;
    height:90px;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The resultant text can be overridden to enforce in langconfig.php, here is an example of an empty text:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_LANG']['MSC']['tl_banner']['noBanner'] = '';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Special case: Multiple Banner modules on one page==&lt;br /&gt;
Here are some hints and tips for well-known application scenarios and their characteristics.&lt;br /&gt;
&lt;br /&gt;
===One category - Two front end modules on one page===&lt;br /&gt;
In the current version it is possible to display all the banners from one category.&amp;lt;br /&amp;gt;&lt;br /&gt;
The old version's multiple banners on a Web page was to be able to create multiple front end modules and integrating them into the website. The module is prevented that a banner will not appear more than once.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Well, it was assumed that all displayed below each other, so it made sense, the module title to display only once.&amp;lt;br /&amp;gt;&lt;br /&gt;
If you want to leave now for all the title's banner front-end modules, because they are distributed on the page, must be made for this purpose a small modification to the template. Create a copy on the back end of the template &amp;quot;mod_banner_list_all&amp;quot; and renames it here, for example, in &amp;quot;mod_banner_list_special.tpl.&amp;lt;br /&amp;gt;&lt;br /&gt;
There, now you change the third line as follows:&amp;lt;br /&amp;gt;&lt;br /&gt;
Original:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;?php if (($this-&amp;gt;headline) &amp;amp;&amp;amp; (!$this-&amp;gt;headline_stop)): ?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Special:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php if ($this-&amp;gt;headline) : ?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Now edit the banner front end modules and select the new template.&amp;lt;br /&amp;gt;&lt;br /&gt;
Done.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
This is also true for more than two front end modules.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Two categories - Two front end modules on one page===&lt;br /&gt;
In this case, each front end module its own category. Again, only on the first module, the heading will appear for the same reason as in the previous section.&amp;lt;br /&amp;gt;&lt;br /&gt;
If you want to display in this scenario all module headers, the solution is the same.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This is also true for more than two front end modules.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] ([[User talk:BugBuster|talk]]) 00:31, 17 February 2015 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Add_Language_To_Url</id>
		<title>Add Language To Url</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Add_Language_To_Url"/>
				<updated>2015-07-12T19:09:59Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: Created page with &amp;quot;Add Language To Url&amp;quot; add language to URL, but only for individual domains. Therefore, only useful for multi-domain installations. Domains must be defined by name via backend s...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Add Language To Url&amp;quot; add language to URL, but only for individual domains. Therefore, only useful for multi-domain installations. Domains must be defined by name via backend settings. In Contao itself there is this possibility only per installation.&amp;lt;br &amp;gt;&lt;br /&gt;
It will be also individually adapted the sitemaps and the search index.&amp;lt;br &amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://contao.ninja&lt;br /&gt;
| ExtVersion=1.0.3&lt;br /&gt;
| Version=from 3.4.0&lt;br /&gt;
| ERLink=https://packagist.org/packages/bugbuster/contao-lang_to_url&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/contao-lang_to_url/issues&lt;br /&gt;
| VCSLink=https://github.com/BugBuster1701/contao-lang_to_url&lt;br /&gt;
| Comment=not published in ER2&lt;br /&gt;
}}&lt;br /&gt;
[[de:Add_Language_To_Url]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about this extension will be answered in forum: [https://community.contao.org/en/forumdisplay.php?143 Contao Forum]&lt;br /&gt;
&lt;br /&gt;
=Translations=&lt;br /&gt;
Translations can be performed on [https://www.transifex.com/projects/p/contao-lang_to_url/ Transifex]&lt;br /&gt;
&lt;br /&gt;
=User Guide=&lt;br /&gt;
The user guide is published on [http://docs.contao.ninja/en/add-language-to-url.html docs.contao.ninja].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] ([[User talk:BugBuster|talk]]) 21:09, 12 July 2015 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Bot_Detection</id>
		<title>Bot Detection</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Bot_Detection"/>
				<updated>2015-02-16T23:39:23Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Bot_detection.jpg|right|No Bots!]]Bot Detection is a helper class for other extensions (Frontend) the need to detect whether the access is human or machine.&amp;lt;br /&amp;gt;&lt;br /&gt;
(Detection of Search Engines, Spider, Crawler, Bots, Harvester, ...) &lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.7.2 / 3.4.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.8&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/botdetection.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/botdetection/issues&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| Comment=Now on GitHub&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[de:Bot_Detection]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/botdetection/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Translations=&lt;br /&gt;
Translations can be performed on [https://www.transifex.com/projects/p/botdetection/ Transifex]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/botdetection.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/botdetection&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The module Bot Detection provides three methods for detection.&amp;lt;br /&amp;gt;&lt;br /&gt;
A reliable detection is not possible. &amp;lt;br /&amp;gt;&lt;br /&gt;
It is to use two methods to detect this:&amp;lt;br /&amp;gt;&lt;br /&gt;
* User Agent&lt;br /&gt;
* IP adress (IPv4, IPv6 from version 1.4.0)&lt;br /&gt;
&lt;br /&gt;
The modul includes a method for the agent [[Bot_Detection#Method_BD_CheckBotAgent|BD_CheckBotAgent]] and one for the IP detection [[Bot_Detection#Method_BD_CheckBotIP|BD_CheckBotIP]].&amp;lt;br /&amp;gt;&lt;br /&gt;
These two methods return only &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot; and are only a rough search on strings and substrings to identify the most important bots.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Another method [[Bot_Detection#Method_BD_CheckBotAgentAdvanced|BD_CheckBotAgentAdvanced]] comes with an external configuration file for the user agent detection. As a result, it returns the short name of the bots or &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Method BD_CheckBotAgent==&lt;br /&gt;
The method BD_CheckBotAgent &amp;quot;searches in two steps to be completed as quickly as possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
Step 1 searches for substrings that appear in most search engines / bots in the name:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
'bot'&lt;br /&gt;
'spider'&lt;br /&gt;
'spyder'&lt;br /&gt;
'crawl'&lt;br /&gt;
'slurp'&lt;br /&gt;
'robo'&lt;br /&gt;
'yahoo'&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Step 2 then looks for other strings that usually follow the name of the search engine, such as:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
'altavista'&lt;br /&gt;
'archiver'&lt;br /&gt;
'inktomi'&lt;br /&gt;
'twiceler'&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The result is &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. (&amp;quot;true&amp;quot; = search engine / bot found)&lt;br /&gt;
&lt;br /&gt;
==Method BD_CheckBotIP==&lt;br /&gt;
The bot from Google, MSN / Bing looking sometimes with the user agent from a browser.&amp;lt;br /&amp;gt;&lt;br /&gt;
To uncover these &amp;quot;undercover&amp;quot; search engines, you must be filtered by IP address.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
There is also configuration files in the ''config'' directory of the module: '''''bot-ip-list.txt''''' and '''''bot-ip-list-ipv6.txt'''''&amp;lt;br /&amp;gt;&lt;br /&gt;
Current content knows an IP address of a spider from Israel as well as network addresses for Google and MSN / Bing.&amp;lt;br /&amp;gt;&lt;br /&gt;
Additional IP addresses or networks can be entered in this file, but they are not then upgrade secure.&amp;lt;br /&amp;gt;&lt;br /&gt;
Therefore, it is better to post them in the localconfig.php as follows:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IP'][] = '192.168.1.2';&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IP'][] = '192.168.0.0/24';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
For IPv6 on this way:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IPV6'][] = '2001:0db8::1';&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IPV6'][] = '2001:0db8:85a3:0800::/56';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Method BD_CheckBotAgentAdvanced==&lt;br /&gt;
The method BD_CheckBotAgentAdvanced &amp;quot;is controlled by an external configuration file to detect the user agent.&amp;lt;br /&amp;gt;&lt;br /&gt;
The result is the short name of the bots or &amp;quot;false&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The external configuration file is generated from known user agent information from search engines / bots and regularly renewed.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Note'''&amp;lt;br /&amp;gt;&lt;br /&gt;
This external DB differentiates between different types of search engines from a manufacturer.&amp;lt;br /&amp;gt;&lt;br /&gt;
For example, the return is not &amp;quot;Google&amp;quot;, but &amp;quot;Googlebot&amp;quot; or &amp;quot;Googlebot-Image&amp;quot; or &amp;quot;Googlebot-Mobile&amp;quot; and so on, depending on what was recognized.&amp;lt;br /&amp;gt;&lt;br /&gt;
These multiple name of a search engine are also available from other producers such as MSN, Yahoo, and so on.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Own or unknown user agent identifiers can be entered in the file '''/system/config/localconfig.php''':&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_AGENT'][] = array(&amp;quot;unitbot&amp;quot;,&amp;quot;UniBot from FHTW&amp;quot;);&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_AGENT'][] = array(&amp;quot;myprivat&amp;quot;,&amp;quot;My privat bot&amp;quot;);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The parameters are: short name in lower case, description.&lt;br /&gt;
&lt;br /&gt;
=Demo Modules=&lt;br /&gt;
Module Bot Detection has 2 frontend demo modules as a demo for the implementation in your own modules.&amp;lt;br /&amp;gt;&lt;br /&gt;
The using in the demo class is made by import.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$this-&amp;gt;import('ModuleBotDetection');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Frontend Demo 1==&lt;br /&gt;
Demo 1 tests with all three methods, the current IP and User Agent identifier and displays the results.&amp;lt;br /&amp;gt;&lt;br /&gt;
See example on the developer website - [http://www.contao.glen-langer.de/BD_Frontend_Demo_1.html Demo 1].&lt;br /&gt;
&lt;br /&gt;
==Frontend Demo 2==&lt;br /&gt;
Demo 2 makes available a form to check whether a user agent identifier from the module would be recognized as a bot.&amp;lt;br /&amp;gt;&lt;br /&gt;
These are called the two agent methods and displays the result.&amp;lt;br /&amp;gt;&lt;br /&gt;
See example on the developer website - [http://www.contao.glen-langer.de/BD_Frontend_Demo_2.html Demo 2].&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 21:42, 1 July 2011 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Banner</id>
		<title>Banner</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Banner"/>
				<updated>2015-02-16T23:31:58Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
A banner advertisement module with a simple form of weighting.&amp;lt;br /&amp;gt;&lt;br /&gt;
In Backend you can see banner view and banner click statistics. (System Menu)&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
IP-based ReClick blocker was integrated (5 minutes). Forwarding functioned, but isn't counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
Similarly, the views within a period not re-counted if the same banner displayed. (10 minutes)&amp;lt;br /&amp;gt;&lt;br /&gt;
The amount of time to block the view count can be changed.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
By using the module &amp;quot;[[Bot Detection |Bot Detection]]&amp;quot; requests from bots and search engines are not counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
In the module directory is located in the file '''mod_banner_fe.css''' some CSS sample data. These can be included in the layout or you can import the file and activate this in the layout.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://contao.ninja&lt;br /&gt;
| ExtVersion=3.5.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.6.2 - 2.8.4 (see installations notes)&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]],[[xls_export|Excel 95 writer (xls_export)]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/banner.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/banner/issues&lt;br /&gt;
| VCSLink=https://github.com/BugBuster1701/banner&lt;br /&gt;
| Comment=Version for Contao 3.4 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Banner]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Visitors module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/banner/issues Issue Tracker].&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Translations=&lt;br /&gt;
Translations can be performed on [https://www.transifex.com/projects/p/contao-banner/ Transifex]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/banner.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/banner&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Banner is dependent on the modules &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; and &amp;quot;[[xls_export|Excel 95 writer (xls_export)]]&amp;quot;. They must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Note for older &amp;quot;TYPOlight&amp;quot; versions==&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use Banner Module Version 1.11.2 ([http://www.contao.org/extension-list/view/banner.10110029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use Banner Module Version 1.9.2 ([http://www.contao.org/extension-list/view/banner.10090029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.6===&lt;br /&gt;
Users of TYPOlight 2.6.x, please use Banner Module Version 1.6.5 ([http://www.contao.org/extension-list/view/banner.10060059.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Installation as an update=&lt;br /&gt;
An update is identical to the installation.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Notice when updating from &amp;lt; 1.10.0 to the latest version:'''&amp;lt;br /&amp;gt;&lt;br /&gt;
The CSS file &amp;quot;mod_banner_fe.css&amp;quot; which is included as an example, the uppercase / lowercase letters changed in a class.&amp;lt;br /&amp;gt;&lt;br /&gt;
Anyone who has imported this file or the design itself has to produce, the class &amp;quot;.mod_Banner&amp;quot; must change in &amp;quot;.mod_banner&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here. &lt;br /&gt;
*[[Banner_Update_v1_to_v2|'''Banner Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The Banner Module contains two back end and one front end module.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Banner&amp;quot; and &amp;quot;Banner Statistic&amp;quot;, for the front end &amp;quot;Banner&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Banner===&lt;br /&gt;
[[File:Banner_en_backend_banner.jpg|Back end module Banner]]&lt;br /&gt;
&lt;br /&gt;
===Banner Statistic===&lt;br /&gt;
[[File:Banner_en_backend_bannerstatistic.jpg|Back end module Banner Statistic]]&lt;br /&gt;
&lt;br /&gt;
==Front end==&lt;br /&gt;
&lt;br /&gt;
===Display a banner===&lt;br /&gt;
[[File:Banner_en_frontend_one_banner.jpg|Front end module Banner]]&lt;br /&gt;
# Module Headline&lt;br /&gt;
# Banner Image&lt;br /&gt;
# Banner Comment&lt;br /&gt;
# Banner Name&lt;br /&gt;
&lt;br /&gt;
More details about this see under &amp;quot;[[Banner#Using|Using]]&amp;quot; or &amp;quot;[[Banner#Technical_Details|Technical Details]]&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Display all Banner===&lt;br /&gt;
With 'all Banner' is meant here, all banners in the selected category.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Banner_en_frontend_all_banner.jpg|Front end all banner|left]]&lt;br /&gt;
In this example, 3 banners have been defined, &amp;lt;br /&amp;gt;&lt;br /&gt;
* Graphic Banner&lt;br /&gt;
* Flash Banner&lt;br /&gt;
* Text Banner&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
More details about this see under &amp;quot;[[Banner#Using|Using]]&amp;quot; or &amp;quot;[[Banner#Technical_Details|Technical Details]]&amp;quot;.&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The first one creates a new banner category via the menu item &amp;quot;banner&amp;quot;. In this then the banners.&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&lt;br /&gt;
Here are the steps, each with the default values. [[Banner#Technical_Details|Technical details]] will be explained later.&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Banner'. In the main area click on the button 'New category'.&lt;br /&gt;
[[File:Banner_en_backend_category_new.jpg|New Banner Category]]&lt;br /&gt;
&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
==Create the banners==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br &amp;gt;&lt;br /&gt;
Now, either click the 'New Banner' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br &amp;gt;&lt;br /&gt;
[[File:Banner_en_backend_banner_new.jpg|New Banner]]&lt;br /&gt;
&lt;br /&gt;
First they must select the banner source:&lt;br /&gt;
* internal Banner (Graphic / Flash files  is stored on server)&lt;br /&gt;
* external Banner (Graphic / Flash files are integrated via URL)&lt;br /&gt;
* Text Banner&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
After selecting it appear the appropriate form fields.&lt;br /&gt;
&lt;br /&gt;
===Graphic Banners===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed in the Banner overview and in the provided template appears below the banner graphic.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking on the banner graphic. The input must include &amp;quot;http://&amp;quot;.&lt;br /&gt;
#* Optional field. &lt;br /&gt;
#* Without a URL, the banner will be displayed without a link.&lt;br /&gt;
#* Alternative can be selected an internal target (Banner target page)&lt;br /&gt;
# Banner Image&lt;br /&gt;
#* Here you can now select the banner file.&lt;br /&gt;
# Banner width and height&lt;br /&gt;
#* To customize the banner size, you can specify the banner width and / or the banner height in pixels.&lt;br /&gt;
#* '''CAUTION''': Animated GIFs are for size definitions through the GD recalculation unfortunately to still images.&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* The first line will be installed and displayed as a &amp;quot;title&amp;quot; tag in the HTML source code if you move the cursor over the banner graphic.&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
===Flash Banner===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed only in the Banner overview.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking on the Flash Banner. The input must include &amp;quot;http://&amp;quot;.&lt;br /&gt;
#* Optional field.  &lt;br /&gt;
#* Without a URL, the Flash Banner will be displayed without a link.&lt;br /&gt;
#* Alternative can be selected an internal target (Banner target page)&lt;br /&gt;
# Banner Image&lt;br /&gt;
#* Here you can now select the banner file.&lt;br /&gt;
# Banner width and height&lt;br /&gt;
#* To customize the banner size, you can specify the banner width and / or the banner height in pixels.&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* Input is not necessary, is not used in the front end&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
A flash fallback to an image file is available, see the section [[Banner#Flash_Fallback_Image|Technical Details]]&lt;br /&gt;
&lt;br /&gt;
===Text Banner===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed in the Banner overview and in the provided template as a headline that is linked simultaneously with the target URL.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking. The input must include &amp;quot;http://&amp;quot;. &lt;br /&gt;
#* Optional field.&lt;br /&gt;
#* Without a URL, the Text Banner will be displayed without a link.&lt;br /&gt;
#* in provided template only the domain is shown as a short form. (Third row, see picture above)&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* This is the text line. (Second row, see picture above)&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
==Front end module==&lt;br /&gt;
A new front-end module is create with: &amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Add module (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add module (TYPOlight 2.8.x)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Be sure to '''first enter the title''', then selecting for module type:''Miscellaneous -&amp;gt; Banner''.&lt;br /&gt;
Now the form fields change accordingly.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Banner Categories' select the previously created category, then 'Save and Close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout: &amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer) &lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x) &lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left)&lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
For the first tests you should copy the provided file mod_banner_fe.css from /system/modules/banner to /tl_files . Then import them over the back end and activate it in the layout.&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category, in the banner denifinition and in the constructed front end module feasible / adjustable. &lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Category Definition==&lt;br /&gt;
===Number of banners===&lt;br /&gt;
* Show all banners&lt;br /&gt;
If you choose this option, all active banners will be showed in front end.&amp;lt;br /&amp;gt;&lt;br /&gt;
In addition, you can choose:&lt;br /&gt;
* Limiting the number of banners&lt;br /&gt;
Here, the number can be limited. Default is 0: show all banners, otherwise maximum number of banners that will be showed.&lt;br /&gt;
* Random order&lt;br /&gt;
If you choose this option, the banners will shown in a random order.&lt;br /&gt;
* Protect the statistic&lt;br /&gt;
Show the banner statistic for this category to certain user groups only. Administrators have unlimited access to all banner statistics.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Banner Definition==&lt;br /&gt;
===Flash Fallback Image===&lt;br /&gt;
If a browser does not support Flash or JavaScript is disabled, an image can be displayed instead (since version 2.2.0). At a local (internal) flash file, in the same path is searched for an image file with the same name but with the ending jpg, png or gif.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: for &amp;quot;myflash.swf&amp;quot; would be a fallback image: &amp;quot;myflash.jpg&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
Was found a replacement image, the image is displayed. If necessary, the image is converted to the dimensions of the flash file.&lt;br /&gt;
&lt;br /&gt;
===Display limitation by Start / Stop dates and times===&lt;br /&gt;
* Show from&lt;br /&gt;
** If you enter a date and time value here the current banner will not be shown on the website before this moment.&lt;br /&gt;
* Show until&lt;br /&gt;
** If you enter a date and time value here the current banner will not be shown on the website after this moment.&lt;br /&gt;
&lt;br /&gt;
===Limiting the number of Views and Clicks===&lt;br /&gt;
* Limiting the number of Views and Clicks&lt;br /&gt;
If you select this option, you can define a maximum number of views and/or maximum number of clicks.&lt;br /&gt;
* Limiting the number of Views&lt;br /&gt;
** By entering a number, the current banner is no longer displayed after this number of views.&amp;lt;br /&amp;gt;The &amp;quot;Limiting the number of Views and Clicks&amp;quot; has enabled it to stay.&lt;br /&gt;
* Limiting the number of Clicks&lt;br /&gt;
** By entering a number, the current banner is no longer displayed after this number of clicks.&amp;lt;br /&amp;gt;The &amp;quot;Limiting the number of Views and Clicks&amp;quot; has enabled it to stay.&lt;br /&gt;
&lt;br /&gt;
===Filter Domain===&lt;br /&gt;
If you enter a domain name, this banner is used only for this domain.If you leave the field empty, this banner is used for all domains. Example: '''yourdomain.com'''&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The banner will be displayed, if matches the domain. But also in partial match starting from the right. So also with access via &amp;quot;'''sub.yourdomain.com'''&amp;quot; .An entry in &amp;quot;Site structure&amp;quot; - &amp;quot;Domain Name&amp;quot; is not required for the filtering.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Front end Module Definition==&lt;br /&gt;
&lt;br /&gt;
===First banner for new visitor===&lt;br /&gt;
For each new visitor, at first is displayed the first published banner in the category. The choice is then returned to random mode. Thus, a kind of recognition can be achieved.&lt;br /&gt;
&lt;br /&gt;
===Templates===&lt;br /&gt;
Each module can be assigned its own Template. Two different templates are included.  &amp;lt;br /&amp;gt;&lt;br /&gt;
* mod_banner_list_all&lt;br /&gt;
** All fields are included.&lt;br /&gt;
* mod_banner_list_min&lt;br /&gt;
** The headline and name were removed. It will only display the banner itself.&lt;br /&gt;
&lt;br /&gt;
Both templates also support text banners.&amp;lt;br /&amp;gt;&lt;br /&gt;
For own Templates, the template files must start with &amp;quot;mod_banner_list_&amp;quot; and end with &amp;quot;.xhtml&amp;quot; / &amp;quot;.html5&amp;quot;. &lt;br /&gt;
Example: &amp;quot;mod_banner_list_special.html5&amp;quot;&lt;br /&gt;
&lt;br /&gt;
{{Note|In Banner Version 1.x this selection is located in the banner category.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Prevention of counting their own requests===&lt;br /&gt;
You can set a custom UserAgent String in your browser and in the banner modul configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Via: &lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Modul Name (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Module Name (TYPOlight 2.8.x)&lt;br /&gt;
In the applied banners module in the new field &amp;quot;No counting for this HTTP_USER_AGENT partial identifier&amp;quot; , a string is entered, it should be unique.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: CTISOK&amp;lt;br /&amp;gt;&lt;br /&gt;
Save it.&amp;lt;br /&amp;gt;&lt;br /&gt;
Several strings are also possible, then enter them separated by commas.&amp;lt;br /&amp;gt;&lt;br /&gt;
So you can change the User Agent String of Mozilla Firefox: &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
# use Add-on: User Agent Switcher&lt;br /&gt;
# insert your own user agent string and change then the string&lt;br /&gt;
# Add her &amp;quot;CTISOK&amp;quot; separated by space, e.g. &amp;quot;Firefox/35.0.1 CTISOK&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=Specific feature=&lt;br /&gt;
==Bot Detection off==&lt;br /&gt;
Who wants to count the hits from bots and search engines on the banners can switch off the bot detection. This is done by the file localconfig.php.&lt;br /&gt;
{{Caution|This applies to all Banner modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after: ### INSTALL SCRIPT STOP ### ) switching off the bot detection:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_banner_bot_check'] = false;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Change Banner Block Time for Views==&lt;br /&gt;
As written in the beginning, when a banner is displayed multiple times within 10 minutes (C3: 5 minutes), this banner is only counted once.&amp;lt;br /&amp;gt; &lt;br /&gt;
With an entry in the localconfig.php can change that. The values be there in minutes, the number must be&amp;gt; 0, otherwise will be automatically taken back to the default value (10).&lt;br /&gt;
{{Caution|This applies to all Banner modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after ### INSTALL SCRIPT STOP ### ) causes a change to 5 minutes:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_banner_block_time'] = 5;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Exception: No active banners defined and no default banner defined==&lt;br /&gt;
If, in this case, &amp;quot;Hide if empty&amp;quot; is not activated, until now was an empty image tag generated, what was presented by the IE as Broken Image. From version 1.11.2 now a DIV tag with class = &amp;quot;banner_empty&amp;quot; is generated:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_banner&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;div class=&amp;quot;banner_empty&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;!-- no banner, no default banner --&amp;gt;&lt;br /&gt;
	&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
With CSS can now be reached that is maintained (in this example) the amount and thus the layout of the site will not change:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;&lt;br /&gt;
.mod_banner .banner_empty {&lt;br /&gt;
    height:90px;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The resultant text can be overridden to enforce in langconfig.php, here is an example of an empty text:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_LANG']['MSC']['tl_banner']['noBanner'] = '';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Special case: Multiple Banner modules on one page==&lt;br /&gt;
Here are some hints and tips for well-known application scenarios and their characteristics.&lt;br /&gt;
&lt;br /&gt;
===One category - Two front end modules on one page===&lt;br /&gt;
In the current version it is possible to display all the banners from one category.&amp;lt;br /&amp;gt;&lt;br /&gt;
The old version's multiple banners on a Web page was to be able to create multiple front end modules and integrating them into the website. The module is prevented that a banner will not appear more than once.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Well, it was assumed that all displayed below each other, so it made sense, the module title to display only once.&amp;lt;br /&amp;gt;&lt;br /&gt;
If you want to leave now for all the title's banner front-end modules, because they are distributed on the page, must be made for this purpose a small modification to the template. Create a copy on the back end of the template &amp;quot;mod_banner_list_all&amp;quot; and renames it here, for example, in &amp;quot;mod_banner_list_special.tpl.&amp;lt;br /&amp;gt;&lt;br /&gt;
There, now you change the third line as follows:&amp;lt;br /&amp;gt;&lt;br /&gt;
Original:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;?php if (($this-&amp;gt;headline) &amp;amp;&amp;amp; (!$this-&amp;gt;headline_stop)): ?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Special:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php if ($this-&amp;gt;headline) : ?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Now edit the banner front end modules and select the new template.&amp;lt;br /&amp;gt;&lt;br /&gt;
Done.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
This is also true for more than two front end modules.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Two categories - Two front end modules on one page===&lt;br /&gt;
In this case, each front end module its own category. Again, only on the first module, the heading will appear for the same reason as in the previous section.&amp;lt;br /&amp;gt;&lt;br /&gt;
If you want to display in this scenario all module headers, the solution is the same.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This is also true for more than two front end modules.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] ([[User talk:BugBuster|talk]]) 00:31, 17 February 2015 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Visitors</id>
		<title>Visitors</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Visitors"/>
				<updated>2014-08-11T21:20:03Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: /* Templates */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg|right|Visitors]]This module allows you to count hits and visits of your website.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the display appears the hits and visits from the current day, as well as the respective total.&lt;br /&gt;
Statistic is also in the backend.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.8.2 / 3.2.1&lt;br /&gt;
| Version=from 2.19&lt;br /&gt;
| TLVersion=2.7 - 2.9 (see installation notes)&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]],[[xls_export|Excel 95 writer (xls_export)]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/visitors.en.html&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/visitors/issues&lt;br /&gt;
| Comment=Version for Contao 3.2 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Visitors]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Visitors module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported at GitHub: [https://github.com/BugBuster1701/visitors/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Translations=&lt;br /&gt;
Translations can be performed on [https://www.transifex.com/projects/p/contao-visitors/ Transifex]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/visitors.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/visitors&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Visitors is dependent on the module &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; and &amp;quot;[[xls_export|Excel 95 writer (xls_export)]]&amp;quot;. They must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Note for older &amp;quot;TYPOlight/Contao&amp;quot; versions==&lt;br /&gt;
===Contao 2.9===&lt;br /&gt;
Users of Contao 2.9.x, please use Visitors Module Version 2.7.1 ([http://www.contao.org/extension-list/view/visitors.20070019.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use Visitors Module Version 1.7.2 ([http://www.contao.org/extension-list/view/visitors.10070029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use Visitors Module Version 1.4.1 ([http://www.contao.org/extension-list/view/visitors.10040019.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
==Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here. &lt;br /&gt;
*[[Visitors_Update_v1_to_v2|'''Visitors Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Overview=&lt;br /&gt;
The Visitors module contains two back end and one front end module.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Visitors&amp;quot; and &amp;quot;Visitor Statistics&amp;quot;, for the front end &amp;quot;Visitors&amp;quot;. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Visitors===&lt;br /&gt;
[[File:Visitors_en_backend_visitors.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors_en_backend_visitorstatistics.jpg]]&lt;br /&gt;
&lt;br /&gt;
shows in detail: (Click on image for higher resolution)&lt;br /&gt;
&amp;lt;gallery widths=&amp;quot;240&amp;quot; heights=&amp;quot;180&amp;quot; caption=&amp;quot;Visitors Statistics&amp;quot;&amp;gt;&lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details.jpg|Visitors Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_browser.jpg|Browser Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_searchengine.jpg|Search Engine Referer Statistics &lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Front end==&lt;br /&gt;
For the front end are provided two CSS files as an example:&lt;br /&gt;
*mod_visitors_fe.css for the normal output, line by line&lt;br /&gt;
*mod_visitors_fe_horizontal.css for the horizontal output&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics, horizontal===&lt;br /&gt;
[[File:Visitors-package-fe-horizontal-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The first one creates a new visitor category via the menu item &amp;quot;visitors&amp;quot;. In this then the counter.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Here are the steps, each with the default values. [[Visitors#Technical_Details|Technical details]] will be explained later.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Visitors'. In the main area click on the button 'New category'.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_category_new.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Create new counter==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, either click the 'New counter' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_counter_new.jpg]]&lt;br /&gt;
&lt;br /&gt;
Now, some information are needed: :&lt;br /&gt;
* Name, (is displayed as a heading on the numbers).&lt;br /&gt;
* Start date, optional, only for display in font end&lt;br /&gt;
* Optional: 'Initial value of visitors/hits'&lt;br /&gt;
* Optional: 'Visitors per day' &lt;br /&gt;
* Activate &amp;quot;Published&amp;quot;&lt;br /&gt;
Then you click on &amp;quot;Save and close&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Front end Module==&lt;br /&gt;
A new front-end module is create with:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Add module (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add module (TYPOlight 2.8.x)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
At first, enter the title, and only then select in &amp;quot;Module type&amp;quot;: 'Miscellaneous'-'Visitors'. It changes the form fields.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Visitors category' now select the previously created category, then 'Save and close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer) &lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x) &lt;br /&gt;
&lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left) &lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
As mentioned above, are provided two CSS file for presentation.&amp;lt;br /&amp;gt;&lt;br /&gt;
For the first tests you should copy the file &amp;lt;code&amp;gt;mod_visitors_fe.css&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;/system/modules/visitors&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;/tl_files&amp;lt;/code&amp;gt; . Then import them over the back end and activate it in the layout.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category, in the counter denifinition and in the constructed front end module feasible / adjustable. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the category==&lt;br /&gt;
===Counting mode===&lt;br /&gt;
From version 1.6.0, Counting mode is selectable, server side or browser side, by category:&lt;br /&gt;
* Load counting, server side by Contao&lt;br /&gt;
* Read counting, client side by browser&lt;br /&gt;
** (only on Contao cacheMode: server and browser cache / only browser cache)&lt;br /&gt;
&lt;br /&gt;
With &amp;quot;Read counting&amp;quot; can be counted when the page is in the browser cache and will be called from it.&lt;br /&gt;
The system setting &amp;quot;Cache mode&amp;quot; will be respected.&lt;br /&gt;
&lt;br /&gt;
{{Note|The display of current values will continue but only if the page is requested from the server.}}&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the counter denifinition==&lt;br /&gt;
===Block time===&lt;br /&gt;
The block time is in seconds. After interruption of the requests at this time, an access is counted as an additional visitor.&amp;lt;br /&amp;gt;&lt;br /&gt;
Pre-entered are 1800 seconds, so that is 30 minutes.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Technical Details in the front end module definition==&lt;br /&gt;
===Templates===&lt;br /&gt;
Each module can be assigned its own Template. Four different templates are included.&lt;br /&gt;
* mod_visitors_fe_all&lt;br /&gt;
** All fields are included. (see example above)&lt;br /&gt;
* mod_visitors_fe_hits&lt;br /&gt;
** Here the visit rows were removed.&lt;br /&gt;
* mod_visitors_fe_visits&lt;br /&gt;
** Here the hit rows were removed.&lt;br /&gt;
* mod_visitors_fe_invisible&lt;br /&gt;
** Here, nothing is displayed. This template is used for a pure counting.&lt;br /&gt;
&lt;br /&gt;
For own Templates, the template files must start with &amp;quot;mod_visitors_fe_&amp;quot; and end with &amp;quot;.html5&amp;quot; or &amp;quot;.xhtml&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Show to guests only===&lt;br /&gt;
Hide the module if a member (front end user) is logged in. &lt;br /&gt;
&lt;br /&gt;
===Protect module===&lt;br /&gt;
Show the module to certain member groups only.&lt;br /&gt;
&lt;br /&gt;
===No counting for this HTTP_USER_AGENT partial identifier===&lt;br /&gt;
You can set a custom UserAgent String in your browser and in the visitors module configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Module Name (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Module Name (TYPOlight 2.8.x)&lt;br /&gt;
In the field: &amp;quot;No counting for this HTTP_USER_AGENT partial identifier&amp;quot;, you can enter a unique identifier.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: CTISOK&amp;lt;br /&amp;gt;&lt;br /&gt;
Save it.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, change the User Agent String of Mozilla Firefox:&amp;lt;br /&amp;gt;&lt;br /&gt;
# Type '''about:config''' in the Mozilla Firefox address bar and press ENTER,&lt;br /&gt;
# Type '''general.useragent.extra.firefox''' in the Filter bar,&lt;br /&gt;
# Double-click on the returned Firefox setting, where you can change a user agent string to overwrite the default. &lt;br /&gt;
# Add her &amp;quot;CTISOK&amp;quot; separated by space, e.g. &amp;quot;Firefox/3.5.2 CTISOK&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can check your new User Agent String , type '''about:''' + ENTER in the Mozilla Firefox address bar and press ENTER, see last row.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For other browsers, see:&lt;br /&gt;
[http://www.walkernews.net/2007/07/05/how-to-change-user-agent-string/ walkernews.net - how to change user agent string]&lt;br /&gt;
{{Hint|This does not work anymore in Firefox 4.  Alternatively, use the add-on: [https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher/ User-Agent-Switcher]}}&lt;br /&gt;
&lt;br /&gt;
=Insert-Tags=&lt;br /&gt;
==Show the values==&lt;br /&gt;
From version 1.2.0 there is Insert-Tags to show the values.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::name}}&lt;br /&gt;
 {{visitors::catid::online}}&lt;br /&gt;
 {{visitors::catid::start}}&lt;br /&gt;
 {{visitors::catid::totalvisit}}&lt;br /&gt;
 {{visitors::catid::totalhit}}&lt;br /&gt;
 {{visitors::catid::todayvisit}}&lt;br /&gt;
 {{visitors::catid::todayhit}}&lt;br /&gt;
 {{visitors::catid::averagevisits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
From version 1.5.0 and from TYPOlight 2.8, Insert-Tags can be extended with prefix 'cache_'. Thus, these then cache resistant.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::name}}&lt;br /&gt;
 ...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The counting is continued through the module! Who wants to use to display the insert tags, the module continues to need, but only to count. With the templates mod_visitors_fe_invisible the module may be invisible, if desired.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
To determine the category ID, go into the category overview of the module with your mouse over the &amp;quot;i&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 2.3.1, the ID is shown right behind the category name.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-category.jpg|Visitor category ID]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The tooltip displays the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
Or click on the &amp;quot;i&amp;quot;, in the following site is in the first line the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
For category ID = 1 that would be like that:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::1::online}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Count==&lt;br /&gt;
An alternative to &amp;quot;counting only&amp;quot; would be to use an Insert-Tag. From version 1.5.0 there is another Insert-Tag. The module itself uses this as well:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::count}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Example for installation in an article (for category ID = 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span style=&amp;quot;width:0px;height:0px;&amp;quot;&amp;gt;{{cache_visitors::1::count}}&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Caution|It must be noticed, that the insert-tag for the count will be installed at first on the page so that the counting is carried out before the identification of the values.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==More Insert-Tags==&lt;br /&gt;
From version 2.1.0, there ist Insert-Tags for display the values of the day with the most visitors.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::bestday::date}}   - Day (Date) with the most visitors&lt;br /&gt;
 {{visitors::catid::bestday::visits}} - Number of visitors of the day with most visitors&lt;br /&gt;
 {{visitors::catid::bestday::hits}}   - Number of hits of the day with most visitors&lt;br /&gt;
or&lt;br /&gt;
 {{cache_visitors::catid::bestday::date}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::visits}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::hits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The &amp;quot;date&amp;quot; insert-tag has an optional parameter to format the date output. (m.d.Y , Y-m-d, etc.)&amp;lt;br /&amp;gt;&lt;br /&gt;
The system setting is used as default. As a separator, a &amp;quot;::&amp;quot; are used.&amp;lt;br /&amp;gt;&lt;br /&gt;
A complete example (with category 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 Best Day: {{visitors::1::bestday::date::j. F Y}} with {{visitors::1::bestday::visits}} visitors &lt;br /&gt;
(and {{visitors::1::bestday::hits}} hits)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
results:&lt;br /&gt;
 Best Day: 31. August 2010 with 25 visitors (and 123 hits)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Specific feature=&lt;br /&gt;
==No counting==&lt;br /&gt;
No front-end call is counted when one is logged on at the same time in the back end.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visitors per day: Ø = 0==&lt;br /&gt;
The average value per day will be calculated for each full calendar day.&amp;lt;br /&amp;gt;&lt;br /&gt;
So, having only one day before a counting or a counting of the current day, no meaningful value can be calculated.&amp;lt;br /&amp;gt;&lt;br /&gt;
(average = number visitors)&amp;lt;br /&amp;gt;&lt;br /&gt;
In these cases appears &amp;quot;0&amp;quot;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Bot Detection off==&lt;br /&gt;
Who wants to count the hits from bots and search engines can switch off the bot detection. This is done by the file localconfig.php.&lt;br /&gt;
{{Caution|This applies to all Visitors modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after: ### INSTALL SCRIPT STOP ### ) switching off the bot detection:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_visitors_bot_check'] = false;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:42, 12 December 2010 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Integrity_Check</id>
		<title>Integrity Check</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Integrity_Check"/>
				<updated>2014-07-27T16:31:08Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:check_overview_en.jpg|right|Integrity Check]] Integrity check for some files from Contao (Detection of hacked Contao installations.)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.3.10 / 3.4.0 &lt;br /&gt;
| Version=from 2.10.0&lt;br /&gt;
| ERLink=http://www.contao.org/en/extension-list/view/integrity_check.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/integrity_check/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:Integrity_Check]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
In Contao Forum, reports came about changed files, which malicious code was attached.&amp;lt;br /&amp;gt;&lt;br /&gt;
The problem itself can not be attributed to a vulnerability in Contao, but will be distributed over other ways of the server, eg vulnerable WP plugins, hacked servers, hacked FTP logins, etc.&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/integrity_check/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Translations=&lt;br /&gt;
Translations can be performed on [https://www.transifex.com/projects/p/contao-integrity_check/ Transifex]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/en/extension-list/view/integrity_check.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/integrity_check&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Example of an Infection=&lt;br /&gt;
How now looks like such a hack?&amp;lt;br /&amp;gt;&lt;br /&gt;
The attachment to the file index.php looked like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
#c3284d#&lt;br /&gt;
echo(gzinflate(base64_decode(&amp;quot;ZZBNisMwDIX.......T7oD&amp;quot;)));&lt;br /&gt;
#/c3284d# &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function frmAdd() { &lt;br /&gt;
var ifrm = document.createElement('iframe'); &lt;br /&gt;
....&lt;br /&gt;
}; &lt;br /&gt;
window.onload = frmAdd; &lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Site one the black list==&lt;br /&gt;
When you does not react fast enough, and Google notices this, the page is set to the &amp;quot;black list&amp;quot;. Browsers like Firefox use this to warn against unauthorized access to it. It looks like this:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:site_on_black_list_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Function of the module=&lt;br /&gt;
In the current version, the most important PHP files are checked for modifications.&amp;lt;br /&amp;gt;&lt;br /&gt;
This files will be checked:&lt;br /&gt;
* index.php&lt;br /&gt;
* cron.php (from version 1.1.0)&lt;br /&gt;
* contao/index.php&lt;br /&gt;
* contao/main.php&lt;br /&gt;
* .htaccess (from version 3.1.0)&lt;br /&gt;
&lt;br /&gt;
Special warning tests:&lt;br /&gt;
* Check for new Contao versions (from version 3.4.0)&lt;br /&gt;
* Check for install tool locking (from version 3.4.0)&lt;br /&gt;
&lt;br /&gt;
==Time of verification==&lt;br /&gt;
This test is performed automatically (Contao-Cron), see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
==Detection==&lt;br /&gt;
The check is identical to the official Contao check tool, that means via MD5 checksums. Checksums are available for comparison for Contao from 2.10.0.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 1.1.0, check via timestamps is possible.&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
In the backend, you can see the results: System - System Log. Normally if everything is OK, no message appears. In its own module debug mode then there is only a message::&lt;br /&gt;
* Checking files for integrity is completed.&lt;br /&gt;
If modifications were detected, a message is generated for each file:&lt;br /&gt;
* Integrity status for file index.php is: Corrupt [MD5]&lt;br /&gt;
* Integrity status for cron.php file is corrupted [Timestamp]&lt;br /&gt;
** It was checked by time stamp, possible from version 1.1.0.&lt;br /&gt;
An information is available via System Log and mail, see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
==Creating integrity check==&lt;br /&gt;
The integrity check need a check plan. This can be used for any of the files for the time, the art of check and the action.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Time intervals===&lt;br /&gt;
* in Contao 2.10: daily, weekly, monthly&lt;br /&gt;
* in Contao 2.11: hourly, daily, weekly, monthly&lt;br /&gt;
* in Contao 3.0: minutely(manual), hourly, daily, weekly, monthly&lt;br /&gt;
&lt;br /&gt;
===Art of check===&lt;br /&gt;
The detection of a change in the file is possible via:&lt;br /&gt;
* MD5 checksum&lt;br /&gt;
* Timestamps&lt;br /&gt;
&lt;br /&gt;
===Action===&lt;br /&gt;
* System log: Message in the system log (backend)&lt;br /&gt;
* Mail to Admin: a mail is sent to the admin of the Contao installation.&lt;br /&gt;
** It will then creates also automatically  an entry in the System log (from version 1.1.0)&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
===System-Log und Mail===&lt;br /&gt;
From version 1.1.0 automatically gets an entry in the system log when a mail is sent.&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
In Version 1.0.0, if you want to have both types of information, you creates the check twice, each with one of the actions: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_2_en.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Here is an example only for the index.php. This is of course also for the other files.&lt;br /&gt;
&lt;br /&gt;
===There can be only one!===&lt;br /&gt;
It is possible in the integrity check overview to create multiple checks. It basically makes no sense. Therefore, it is ensured that there can be only an integrity check, which is activated. If you switch a new integrity check active, all other existing tests are automatically switched inactive.&lt;br /&gt;
&lt;br /&gt;
==Protection against infection==&lt;br /&gt;
Well, a general protection is probably not possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
But there is a possibility that the malicious code is not executed. There is a ticket to GitHub, it is accepted for Contao 3. Here is the short info for Contao 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
Edit the index.php, go to the method &amp;quot;run&amp;quot; in the last line, should be the line of 269th (2.11.5) Before the curly bracket insert an exit; or insert a row for it. Here is from line 268 as an example:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
change to:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
        exit;&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Note: Now, the Integrity Check Tool as well as the Contao Check Tool report a change. Use the check vie timestamp now.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] ([[User talk:BugBuster|talk]]) 18:31, 27 July 2014 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/File:Check_overview_en.jpg</id>
		<title>File:Check overview en.jpg</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/File:Check_overview_en.jpg"/>
				<updated>2014-07-27T16:27:33Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: BugBuster uploaded a new version of &amp;amp;quot;File:Check overview en.jpg&amp;amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ceck Overview&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/File:Check_plan_en.jpg</id>
		<title>File:Check plan en.jpg</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/File:Check_plan_en.jpg"/>
				<updated>2014-07-27T16:23:57Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: BugBuster uploaded a new version of &amp;amp;quot;File:Check plan en.jpg&amp;amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Check Plan&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Visitors</id>
		<title>Visitors</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Visitors"/>
				<updated>2014-06-30T22:38:23Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: /* Forum */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg|right|Visitors]]This module allows you to count hits and visits of your website.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the display appears the hits and visits from the current day, as well as the respective total.&lt;br /&gt;
Statistic is also in the backend.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.8.2 / 3.2.1&lt;br /&gt;
| Version=from 2.19&lt;br /&gt;
| TLVersion=2.7 - 2.9 (see installation notes)&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]],[[xls_export|Excel 95 writer (xls_export)]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/visitors.en.html&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/visitors/issues&lt;br /&gt;
| Comment=Version for Contao 3.2 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Visitors]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Visitors module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported at GitHub: [https://github.com/BugBuster1701/visitors/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Translations=&lt;br /&gt;
Translations can be performed on [https://www.transifex.com/projects/p/contao-visitors/ Transifex]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/visitors.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/visitors&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Visitors is dependent on the module &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; and &amp;quot;[[xls_export|Excel 95 writer (xls_export)]]&amp;quot;. They must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Note for older &amp;quot;TYPOlight/Contao&amp;quot; versions==&lt;br /&gt;
===Contao 2.9===&lt;br /&gt;
Users of Contao 2.9.x, please use Visitors Module Version 2.7.1 ([http://www.contao.org/extension-list/view/visitors.20070019.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use Visitors Module Version 1.7.2 ([http://www.contao.org/extension-list/view/visitors.10070029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use Visitors Module Version 1.4.1 ([http://www.contao.org/extension-list/view/visitors.10040019.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
==Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here. &lt;br /&gt;
*[[Visitors_Update_v1_to_v2|'''Visitors Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Overview=&lt;br /&gt;
The Visitors module contains two back end and one front end module.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Visitors&amp;quot; and &amp;quot;Visitor Statistics&amp;quot;, for the front end &amp;quot;Visitors&amp;quot;. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Visitors===&lt;br /&gt;
[[File:Visitors_en_backend_visitors.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors_en_backend_visitorstatistics.jpg]]&lt;br /&gt;
&lt;br /&gt;
shows in detail: (Click on image for higher resolution)&lt;br /&gt;
&amp;lt;gallery widths=&amp;quot;240&amp;quot; heights=&amp;quot;180&amp;quot; caption=&amp;quot;Visitors Statistics&amp;quot;&amp;gt;&lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details.jpg|Visitors Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_browser.jpg|Browser Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_searchengine.jpg|Search Engine Referer Statistics &lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Front end==&lt;br /&gt;
For the front end are provided two CSS files as an example:&lt;br /&gt;
*mod_visitors_fe.css for the normal output, line by line&lt;br /&gt;
*mod_visitors_fe_horizontal.css for the horizontal output&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics, horizontal===&lt;br /&gt;
[[File:Visitors-package-fe-horizontal-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The first one creates a new visitor category via the menu item &amp;quot;visitors&amp;quot;. In this then the counter.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Here are the steps, each with the default values. [[Visitors#Technical_Details|Technical details]] will be explained later.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Visitors'. In the main area click on the button 'New category'.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_category_new.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Create new counter==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, either click the 'New counter' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_counter_new.jpg]]&lt;br /&gt;
&lt;br /&gt;
Now, some information are needed: :&lt;br /&gt;
* Name, (is displayed as a heading on the numbers).&lt;br /&gt;
* Start date, optional, only for display in font end&lt;br /&gt;
* Optional: 'Initial value of visitors/hits'&lt;br /&gt;
* Optional: 'Visitors per day' &lt;br /&gt;
* Activate &amp;quot;Published&amp;quot;&lt;br /&gt;
Then you click on &amp;quot;Save and close&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Front end Module==&lt;br /&gt;
A new front-end module is create with:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Add module (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add module (TYPOlight 2.8.x)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
At first, enter the title, and only then select in &amp;quot;Module type&amp;quot;: 'Miscellaneous'-'Visitors'. It changes the form fields.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Visitors category' now select the previously created category, then 'Save and close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer) &lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x) &lt;br /&gt;
&lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left) &lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
As mentioned above, are provided two CSS file for presentation.&amp;lt;br /&amp;gt;&lt;br /&gt;
For the first tests you should copy the file &amp;lt;code&amp;gt;mod_visitors_fe.css&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;/system/modules/visitors&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;/tl_files&amp;lt;/code&amp;gt; . Then import them over the back end and activate it in the layout.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category, in the counter denifinition and in the constructed front end module feasible / adjustable. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the category==&lt;br /&gt;
===Counting mode===&lt;br /&gt;
From version 1.6.0, Counting mode is selectable, server side or browser side, by category:&lt;br /&gt;
* Load counting, server side by Contao&lt;br /&gt;
* Read counting, client side by browser&lt;br /&gt;
** (only on Contao cacheMode: server and browser cache / only browser cache)&lt;br /&gt;
&lt;br /&gt;
With &amp;quot;Read counting&amp;quot; can be counted when the page is in the browser cache and will be called from it.&lt;br /&gt;
The system setting &amp;quot;Cache mode&amp;quot; will be respected.&lt;br /&gt;
&lt;br /&gt;
{{Note|The display of current values will continue but only if the page is requested from the server.}}&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the counter denifinition==&lt;br /&gt;
===Block time===&lt;br /&gt;
The block time is in seconds. After interruption of the requests at this time, an access is counted as an additional visitor.&amp;lt;br /&amp;gt;&lt;br /&gt;
Pre-entered are 1800 seconds, so that is 30 minutes.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Technical Details in the front end module definition==&lt;br /&gt;
===Templates===&lt;br /&gt;
Each module can be assigned its own Template. Four different templates are included.&lt;br /&gt;
* mod_visitors_fe_all&lt;br /&gt;
** All fields are included. (see example above)&lt;br /&gt;
* mod_visitors_fe_hits&lt;br /&gt;
** Here the visit rows were removed.&lt;br /&gt;
* mod_visitors_fe_visits&lt;br /&gt;
** Here the hit rows were removed.&lt;br /&gt;
* mod_visitors_fe_invisible.tpl&lt;br /&gt;
** Here, nothing is displayed. This template is used for a pure counting.&lt;br /&gt;
&lt;br /&gt;
For own Templates, the template files must start with &amp;quot;mod_visitors_fe_&amp;quot; and end with &amp;quot;.tpl&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Show to guests only===&lt;br /&gt;
Hide the module if a member (front end user) is logged in. &lt;br /&gt;
&lt;br /&gt;
===Protect module===&lt;br /&gt;
Show the module to certain member groups only.&lt;br /&gt;
&lt;br /&gt;
===No counting for this HTTP_USER_AGENT partial identifier===&lt;br /&gt;
You can set a custom UserAgent String in your browser and in the visitors module configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Module Name (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Module Name (TYPOlight 2.8.x)&lt;br /&gt;
In the field: &amp;quot;No counting for this HTTP_USER_AGENT partial identifier&amp;quot;, you can enter a unique identifier.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: CTISOK&amp;lt;br /&amp;gt;&lt;br /&gt;
Save it.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, change the User Agent String of Mozilla Firefox:&amp;lt;br /&amp;gt;&lt;br /&gt;
# Type '''about:config''' in the Mozilla Firefox address bar and press ENTER,&lt;br /&gt;
# Type '''general.useragent.extra.firefox''' in the Filter bar,&lt;br /&gt;
# Double-click on the returned Firefox setting, where you can change a user agent string to overwrite the default. &lt;br /&gt;
# Add her &amp;quot;CTISOK&amp;quot; separated by space, e.g. &amp;quot;Firefox/3.5.2 CTISOK&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can check your new User Agent String , type '''about:''' + ENTER in the Mozilla Firefox address bar and press ENTER, see last row.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For other browsers, see:&lt;br /&gt;
[http://www.walkernews.net/2007/07/05/how-to-change-user-agent-string/ walkernews.net - how to change user agent string]&lt;br /&gt;
{{Hint|This does not work anymore in Firefox 4.  Alternatively, use the add-on: [https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher/ User-Agent-Switcher]}}&lt;br /&gt;
&lt;br /&gt;
=Insert-Tags=&lt;br /&gt;
==Show the values==&lt;br /&gt;
From version 1.2.0 there is Insert-Tags to show the values.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::name}}&lt;br /&gt;
 {{visitors::catid::online}}&lt;br /&gt;
 {{visitors::catid::start}}&lt;br /&gt;
 {{visitors::catid::totalvisit}}&lt;br /&gt;
 {{visitors::catid::totalhit}}&lt;br /&gt;
 {{visitors::catid::todayvisit}}&lt;br /&gt;
 {{visitors::catid::todayhit}}&lt;br /&gt;
 {{visitors::catid::averagevisits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
From version 1.5.0 and from TYPOlight 2.8, Insert-Tags can be extended with prefix 'cache_'. Thus, these then cache resistant.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::name}}&lt;br /&gt;
 ...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The counting is continued through the module! Who wants to use to display the insert tags, the module continues to need, but only to count. With the templates mod_visitors_fe_invisible the module may be invisible, if desired.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
To determine the category ID, go into the category overview of the module with your mouse over the &amp;quot;i&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 2.3.1, the ID is shown right behind the category name.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-category.jpg|Visitor category ID]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The tooltip displays the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
Or click on the &amp;quot;i&amp;quot;, in the following site is in the first line the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
For category ID = 1 that would be like that:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::1::online}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Count==&lt;br /&gt;
An alternative to &amp;quot;counting only&amp;quot; would be to use an Insert-Tag. From version 1.5.0 there is another Insert-Tag. The module itself uses this as well:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::count}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Example for installation in an article (for category ID = 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span style=&amp;quot;width:0px;height:0px;&amp;quot;&amp;gt;{{cache_visitors::1::count}}&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Caution|It must be noticed, that the insert-tag for the count will be installed at first on the page so that the counting is carried out before the identification of the values.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==More Insert-Tags==&lt;br /&gt;
From version 2.1.0, there ist Insert-Tags for display the values of the day with the most visitors.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::bestday::date}}   - Day (Date) with the most visitors&lt;br /&gt;
 {{visitors::catid::bestday::visits}} - Number of visitors of the day with most visitors&lt;br /&gt;
 {{visitors::catid::bestday::hits}}   - Number of hits of the day with most visitors&lt;br /&gt;
or&lt;br /&gt;
 {{cache_visitors::catid::bestday::date}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::visits}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::hits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The &amp;quot;date&amp;quot; insert-tag has an optional parameter to format the date output. (m.d.Y , Y-m-d, etc.)&amp;lt;br /&amp;gt;&lt;br /&gt;
The system setting is used as default. As a separator, a &amp;quot;::&amp;quot; are used.&amp;lt;br /&amp;gt;&lt;br /&gt;
A complete example (with category 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 Best Day: {{visitors::1::bestday::date::j. F Y}} with {{visitors::1::bestday::visits}} visitors &lt;br /&gt;
(and {{visitors::1::bestday::hits}} hits)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
results:&lt;br /&gt;
 Best Day: 31. August 2010 with 25 visitors (and 123 hits)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Specific feature=&lt;br /&gt;
==No counting==&lt;br /&gt;
No front-end call is counted when one is logged on at the same time in the back end.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visitors per day: Ø = 0==&lt;br /&gt;
The average value per day will be calculated for each full calendar day.&amp;lt;br /&amp;gt;&lt;br /&gt;
So, having only one day before a counting or a counting of the current day, no meaningful value can be calculated.&amp;lt;br /&amp;gt;&lt;br /&gt;
(average = number visitors)&amp;lt;br /&amp;gt;&lt;br /&gt;
In these cases appears &amp;quot;0&amp;quot;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Bot Detection off==&lt;br /&gt;
Who wants to count the hits from bots and search engines can switch off the bot detection. This is done by the file localconfig.php.&lt;br /&gt;
{{Caution|This applies to all Visitors modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after: ### INSTALL SCRIPT STOP ### ) switching off the bot detection:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_visitors_bot_check'] = false;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:42, 12 December 2010 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Integrity_Check</id>
		<title>Integrity Check</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Integrity_Check"/>
				<updated>2014-06-30T12:00:41Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: /* Forum */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:check_overview_en.jpg|right|Integrity Check]] Integrity check for some files from Contao (Detection of hacked Contao installations.)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.3.10 / 3.3.9 &lt;br /&gt;
| Version=from 2.10.0&lt;br /&gt;
| ERLink=http://www.contao.org/en/extension-list/view/integrity_check.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/integrity_check/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:Integrity_Check]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
In Contao Forum, reports came about changed files, which malicious code was attached.&amp;lt;br /&amp;gt;&lt;br /&gt;
The problem itself can not be attributed to a vulnerability in Contao, but will be distributed over other ways of the server, eg vulnerable WP plugins, hacked servers, hacked FTP logins, etc.&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/integrity_check/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Translations=&lt;br /&gt;
Translations can be performed on [https://www.transifex.com/projects/p/contao-integrity_check/ Transifex]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/en/extension-list/view/integrity_check.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/integrity_check&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Example of an Infection=&lt;br /&gt;
How now looks like such a hack?&amp;lt;br /&amp;gt;&lt;br /&gt;
The attachment to the file index.php looked like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
#c3284d#&lt;br /&gt;
echo(gzinflate(base64_decode(&amp;quot;ZZBNisMwDIX.......T7oD&amp;quot;)));&lt;br /&gt;
#/c3284d# &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function frmAdd() { &lt;br /&gt;
var ifrm = document.createElement('iframe'); &lt;br /&gt;
....&lt;br /&gt;
}; &lt;br /&gt;
window.onload = frmAdd; &lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Site one the black list==&lt;br /&gt;
When you does not react fast enough, and Google notices this, the page is set to the &amp;quot;black list&amp;quot;. Browsers like Firefox use this to warn against unauthorized access to it. It looks like this:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:site_on_black_list_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Function of the module=&lt;br /&gt;
In the current version, the most important PHP files are checked for modifications.&amp;lt;br /&amp;gt;&lt;br /&gt;
This files will be checked:&lt;br /&gt;
* index.php&lt;br /&gt;
* cron.php (from version 1.1.0)&lt;br /&gt;
* contao/index.php&lt;br /&gt;
* contao/main.php&lt;br /&gt;
* .htaccess (from version 3.1.0)&lt;br /&gt;
&lt;br /&gt;
==Time of verification==&lt;br /&gt;
This test is performed automatically (Contao-Cron), see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
==Detection==&lt;br /&gt;
The check is identical to the official Contao check tool, that means via MD5 checksums. Checksums are available for comparison for Contao from 2.10.0.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 1.1.0, check via timestamps is possible.&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
In the backend, you can see the results: System - System Log. Normally if everything is OK, no message appears. In its own module debug mode then there is only a message::&lt;br /&gt;
* Checking files for integrity is completed.&lt;br /&gt;
If modifications were detected, a message is generated for each file:&lt;br /&gt;
* Integrity status for file index.php is: Corrupt [MD5]&lt;br /&gt;
* Integrity status for cron.php file is corrupted [Timestamp]&lt;br /&gt;
** It was checked by time stamp, possible from version 1.1.0.&lt;br /&gt;
An information is available via System Log and mail, see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
==Creating integrity check==&lt;br /&gt;
The integrity check need a check plan. This can be used for any of the files for the time, the art of check and the action.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Time intervals===&lt;br /&gt;
* in Contao 2.10: daily, weekly, monthly&lt;br /&gt;
* in Contao 2.11: hourly, daily, weekly, monthly&lt;br /&gt;
* in Contao 3.0: minutely(manual), hourly, daily, weekly, monthly&lt;br /&gt;
&lt;br /&gt;
===Art of check===&lt;br /&gt;
The detection of a change in the file is possible via:&lt;br /&gt;
* MD5 checksum&lt;br /&gt;
* Timestamps&lt;br /&gt;
&lt;br /&gt;
===Action===&lt;br /&gt;
* System log: Message in the system log (backend)&lt;br /&gt;
* Mail to Admin: a mail is sent to the admin of the Contao installation.&lt;br /&gt;
** It will then creates also automatically  an entry in the System log (from version 1.1.0)&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
===System-Log und Mail===&lt;br /&gt;
From version 1.1.0 automatically gets an entry in the system log when a mail is sent.&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
In Version 1.0.0, if you want to have both types of information, you creates the check twice, each with one of the actions: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_2_en.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Here is an example only for the index.php. This is of course also for the other files.&lt;br /&gt;
&lt;br /&gt;
===There can be only one!===&lt;br /&gt;
It is possible in the integrity check overview to create multiple checks. It basically makes no sense. Therefore, it is ensured that there can be only an integrity check, which is activated. If you switch a new integrity check active, all other existing tests are automatically switched inactive.&lt;br /&gt;
&lt;br /&gt;
==Protection against infection==&lt;br /&gt;
Well, a general protection is probably not possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
But there is a possibility that the malicious code is not executed. There is a ticket to GitHub, it is accepted for Contao 3. Here is the short info for Contao 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
Edit the index.php, go to the method &amp;quot;run&amp;quot; in the last line, should be the line of 269th (2.11.5) Before the curly bracket insert an exit; or insert a row for it. Here is from line 268 as an example:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
change to:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
        exit;&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Note: Now, the Integrity Check Tool as well as the Contao Check Tool report a change. Use the check vie timestamp now.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:46, 27 June 2013 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Banner</id>
		<title>Banner</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Banner"/>
				<updated>2014-06-30T11:57:15Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: /* Forum */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
A banner advertisement module with a simple form of weighting.&amp;lt;br /&amp;gt;&lt;br /&gt;
In Backend you can see banner view and banner click statistics. (System Menu)&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
IP-based ReClick blocker was integrated (5 minutes). Forwarding functioned, but isn't counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
Similarly, the views within a period not re-counted if the same banner displayed. (10 minutes)&amp;lt;br /&amp;gt;&lt;br /&gt;
The amount of time to block the view count can be changed.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
By using the module &amp;quot;[[Bot Detection |Bot Detection]]&amp;quot; requests from bots and search engines are not counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
In the module directory is located in the file '''mod_banner_fe.css''' some CSS sample data. These can be included in the layout or you can import the file and activate this in the layout.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.4.4 / 3.2.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.6.2 - 2.8.4 (see installations notes)&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]],[[xls_export|Excel 95 writer (xls_export)]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/banner.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/banner/issues&lt;br /&gt;
| VCSLink=https://github.com/BugBuster1701/banner&lt;br /&gt;
| Comment=Version for Contao 3.2 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Banner]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Visitors module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/banner/issues Issue Tracker].&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Translations=&lt;br /&gt;
Translations can be performed on [https://www.transifex.com/projects/p/contao-banner/ Transifex]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/banner.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/banner&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Banner is dependent on the modules &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; and &amp;quot;[[xls_export|Excel 95 writer (xls_export)]]&amp;quot;. They must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Note for older &amp;quot;TYPOlight&amp;quot; versions==&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use Banner Module Version 1.11.2 ([http://www.contao.org/extension-list/view/banner.10110029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use Banner Module Version 1.9.2 ([http://www.contao.org/extension-list/view/banner.10090029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.6===&lt;br /&gt;
Users of TYPOlight 2.6.x, please use Banner Module Version 1.6.5 ([http://www.contao.org/extension-list/view/banner.10060059.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Installation as an update=&lt;br /&gt;
An update is identical to the installation.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Notice when updating from &amp;lt; 1.10.0 to the latest version:'''&amp;lt;br /&amp;gt;&lt;br /&gt;
The CSS file &amp;quot;mod_banner_fe.css&amp;quot; which is included as an example, the uppercase / lowercase letters changed in a class.&amp;lt;br /&amp;gt;&lt;br /&gt;
Anyone who has imported this file or the design itself has to produce, the class &amp;quot;.mod_Banner&amp;quot; must change in &amp;quot;.mod_banner&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here. &lt;br /&gt;
*[[Banner_Update_v1_to_v2|'''Banner Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The Banner Module contains two back end and one front end module.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Banner&amp;quot; and &amp;quot;Banner Statistic&amp;quot;, for the front end &amp;quot;Banner&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Banner===&lt;br /&gt;
[[File:Banner_en_backend_banner.jpg|Back end module Banner]]&lt;br /&gt;
&lt;br /&gt;
===Banner Statistic===&lt;br /&gt;
[[File:Banner_en_backend_bannerstatistic.jpg|Back end module Banner Statistic]]&lt;br /&gt;
&lt;br /&gt;
==Front end==&lt;br /&gt;
&lt;br /&gt;
===Display a banner===&lt;br /&gt;
[[File:Banner_en_frontend_one_banner.jpg|Front end module Banner]]&lt;br /&gt;
# Module Headline&lt;br /&gt;
# Banner Image&lt;br /&gt;
# Banner Comment&lt;br /&gt;
# Banner Name&lt;br /&gt;
&lt;br /&gt;
More details about this see under &amp;quot;[[Banner#Using|Using]]&amp;quot; or &amp;quot;[[Banner#Technical_Details|Technical Details]]&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Display all Banner===&lt;br /&gt;
With 'all Banner' is meant here, all banners in the selected category.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Banner_en_frontend_all_banner.jpg|Front end all banner|left]]&lt;br /&gt;
In this example, 3 banners have been defined, &amp;lt;br /&amp;gt;&lt;br /&gt;
* Graphic Banner&lt;br /&gt;
* Flash Banner&lt;br /&gt;
* Text Banner&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
More details about this see under &amp;quot;[[Banner#Using|Using]]&amp;quot; or &amp;quot;[[Banner#Technical_Details|Technical Details]]&amp;quot;.&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The first one creates a new banner category via the menu item &amp;quot;banner&amp;quot;. In this then the banners.&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&lt;br /&gt;
Here are the steps, each with the default values. [[Banner#Technical_Details|Technical details]] will be explained later.&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Banner'. In the main area click on the button 'New category'.&lt;br /&gt;
[[File:Banner_en_backend_category_new.jpg|New Banner Category]]&lt;br /&gt;
&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
==Create the banners==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br &amp;gt;&lt;br /&gt;
Now, either click the 'New Banner' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br &amp;gt;&lt;br /&gt;
[[File:Banner_en_backend_banner_new.jpg|New Banner]]&lt;br /&gt;
&lt;br /&gt;
First they must select the banner source:&lt;br /&gt;
* internal Banner (Graphic / Flash files  is stored on server)&lt;br /&gt;
* external Banner (Graphic / Flash files are integrated via URL)&lt;br /&gt;
* Text Banner&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
After selecting it appear the appropriate form fields.&lt;br /&gt;
&lt;br /&gt;
===Graphic Banners===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed in the Banner overview and in the provided template appears below the banner graphic.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking on the banner graphic. The input must include &amp;quot;http://&amp;quot;.&lt;br /&gt;
#* Optional field. &lt;br /&gt;
#* Without a URL, the banner will be displayed without a link.&lt;br /&gt;
#* Alternative can be selected an internal target (Banner target page)&lt;br /&gt;
# Banner Image&lt;br /&gt;
#* Here you can now select the banner file.&lt;br /&gt;
# Banner width and height&lt;br /&gt;
#* To customize the banner size, you can specify the banner width and / or the banner height in pixels.&lt;br /&gt;
#* '''CAUTION''': Animated GIFs are for size definitions through the GD recalculation unfortunately to still images.&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* The first line will be installed and displayed as a &amp;quot;title&amp;quot; tag in the HTML source code if you move the cursor over the banner graphic.&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
===Flash Banner===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed only in the Banner overview.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking on the Flash Banner. The input must include &amp;quot;http://&amp;quot;.&lt;br /&gt;
#* Optional field.  &lt;br /&gt;
#* Without a URL, the Flash Banner will be displayed without a link.&lt;br /&gt;
#* Alternative can be selected an internal target (Banner target page)&lt;br /&gt;
# Banner Image&lt;br /&gt;
#* Here you can now select the banner file.&lt;br /&gt;
# Banner width and height&lt;br /&gt;
#* To customize the banner size, you can specify the banner width and / or the banner height in pixels.&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* Input is not necessary, is not used in the front end&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
A flash fallback to an image file is available, see the section [[Banner#Flash_Fallback_Image|Technical Details]]&lt;br /&gt;
&lt;br /&gt;
===Text Banner===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed in the Banner overview and in the provided template as a headline that is linked simultaneously with the target URL.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking. The input must include &amp;quot;http://&amp;quot;. &lt;br /&gt;
#* Optional field.&lt;br /&gt;
#* Without a URL, the Text Banner will be displayed without a link.&lt;br /&gt;
#* in provided template only the domain is shown as a short form. (Third row, see picture above)&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* This is the text line. (Second row, see picture above)&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
==Front end module==&lt;br /&gt;
A new front-end module is create with: &amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Add module (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add module (TYPOlight 2.8.x)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Be sure to '''first enter the title''', then selecting for module type:''Miscellaneous -&amp;gt; Banner''.&lt;br /&gt;
Now the form fields change accordingly.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Banner Categories' select the previously created category, then 'Save and Close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout: &amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer) &lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x) &lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left)&lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
For the first tests you should copy the provided file mod_banner_fe.css from /system/modules/banner to /tl_files . Then import them over the back end and activate it in the layout.&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category, in the banner denifinition and in the constructed front end module feasible / adjustable. &lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Category Definition==&lt;br /&gt;
===Number of banners===&lt;br /&gt;
* Show all banners&lt;br /&gt;
If you choose this option, all active banners will be showed in front end.&amp;lt;br /&amp;gt;&lt;br /&gt;
In addition, you can choose:&lt;br /&gt;
* Limiting the number of banners&lt;br /&gt;
Here, the number can be limited. Default is 0: show all banners, otherwise maximum number of banners that will be showed.&lt;br /&gt;
* Random order&lt;br /&gt;
If you choose this option, the banners will shown in a random order.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Banner Definition==&lt;br /&gt;
===Flash Fallback Image===&lt;br /&gt;
If a browser does not support Flash or JavaScript is disabled, an image can be displayed instead (since version 2.2.0). At a local (internal) flash file, in the same path is searched for an image file with the same name but with the ending jpg, png or gif.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: for &amp;quot;myflash.swf&amp;quot; would be a fallback image: &amp;quot;myflash.jpg&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
Was found a replacement image, the image is displayed. If necessary, the image is converted to the dimensions of the flash file.&lt;br /&gt;
&lt;br /&gt;
===Display limitation by Start / Stop dates and times===&lt;br /&gt;
* Show from&lt;br /&gt;
** If you enter a date and time value here the current banner will not be shown on the website before this moment.&lt;br /&gt;
* Show until&lt;br /&gt;
** If you enter a date and time value here the current banner will not be shown on the website after this moment.&lt;br /&gt;
&lt;br /&gt;
===Limiting the number of Views and Clicks===&lt;br /&gt;
* Limiting the number of Views and Clicks&lt;br /&gt;
If you select this option, you can define a maximum number of views and/or maximum number of clicks.&lt;br /&gt;
* Limiting the number of Views&lt;br /&gt;
** By entering a number, the current banner is no longer displayed after this number of views.&amp;lt;br /&amp;gt;The &amp;quot;Limiting the number of Views and Clicks&amp;quot; has enabled it to stay.&lt;br /&gt;
* Limiting the number of Clicks&lt;br /&gt;
** By entering a number, the current banner is no longer displayed after this number of clicks.&amp;lt;br /&amp;gt;The &amp;quot;Limiting the number of Views and Clicks&amp;quot; has enabled it to stay.&lt;br /&gt;
&lt;br /&gt;
===Filter Domain===&lt;br /&gt;
If you enter a domain name, this banner is used only for this domain.If you leave the field empty, this banner is used for all domains. Example: '''yourdomain.com'''&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The banner will be displayed, if matches the domain. But also in partial match starting from the right. So also with access via &amp;quot;'''sub.yourdomain.com'''&amp;quot; .An entry in &amp;quot;Site structure&amp;quot; - &amp;quot;Domain Name&amp;quot; is not required for the filtering.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Front end Module Definition==&lt;br /&gt;
&lt;br /&gt;
===First banner for new visitor===&lt;br /&gt;
For each new visitor, at first is displayed the first published banner in the category. The choice is then returned to random mode. Thus, a kind of recognition can be achieved.&lt;br /&gt;
&lt;br /&gt;
===Templates===&lt;br /&gt;
Each module can be assigned its own Template. Two different templates are included.  &amp;lt;br /&amp;gt;&lt;br /&gt;
* mod_banner_list_all&lt;br /&gt;
** All fields are included.&lt;br /&gt;
* mod_banner_list_min&lt;br /&gt;
** The headline and name were removed. It will only display the banner itself.&lt;br /&gt;
&lt;br /&gt;
Both templates also support text banners.&amp;lt;br /&amp;gt;&lt;br /&gt;
For own Templates, the template files must start with &amp;quot;mod_banner_list_&amp;quot; and end with &amp;quot;.tpl&amp;quot;. &lt;br /&gt;
Example: &amp;quot;mod_banner_list_special.tpl&amp;quot;&lt;br /&gt;
&lt;br /&gt;
{{Note|In Banner Version 1.x this selection is located in the banner category.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Prevention of counting their own requests===&lt;br /&gt;
You can set a custom UserAgent String in your browser and in the banner modul configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Via: &lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Modul Name (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Module Name (TYPOlight 2.8.x)&lt;br /&gt;
In the applied banners module in the new field &amp;quot;No counting for this HTTP_USER_AGENT partial identifier&amp;quot; , a string is entered, it should be unique.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: CTISOK&amp;lt;br /&amp;gt;&lt;br /&gt;
Save it.&amp;lt;br /&amp;gt;&lt;br /&gt;
Several strings are also possible, then enter them separated by commas.&amp;lt;br /&amp;gt;&lt;br /&gt;
so you can change the User Agent String of Mozilla Firefox: &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
# Type '''about:config''' in the Mozilla Firefox address bar and press ENTER&lt;br /&gt;
# Type '''general.useragent.extra.firefox''' in the Filter bar&lt;br /&gt;
# Double-click on the returned Firefox setting, where you can change a user agent string to overwrite the default.&lt;br /&gt;
# Add her &amp;quot;CTISOK&amp;quot; separated by space, e.g. &amp;quot;Firefox/3.6.3 CTISOK&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can check your new User Agent String , type '''about:''' in the Mozilla Firefox address bar and press ENTER, see last row.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For other browsers, see:&lt;br /&gt;
[http://www.walkernews.net/2007/07/05/how-to-change-user-agent-string/ walkernews.net - how to change user agent string]&lt;br /&gt;
&lt;br /&gt;
=Specific feature=&lt;br /&gt;
==Bot Detection off==&lt;br /&gt;
Who wants to count the hits from bots and search engines on the banners can switch off the bot detection. This is done by the file localconfig.php.&lt;br /&gt;
{{Caution|This applies to all Banner modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after: ### INSTALL SCRIPT STOP ### ) switching off the bot detection:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_banner_bot_check'] = false;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Change Banner Block Time for Views==&lt;br /&gt;
As written in the beginning, when a banner is displayed multiple times within 10 minutes (C3: 5 minutes), this banner is only counted once.&amp;lt;br /&amp;gt; &lt;br /&gt;
With an entry in the localconfig.php can change that. The values be there in minutes, the number must be&amp;gt; 0, otherwise will be automatically taken back to the default value (10).&lt;br /&gt;
{{Caution|This applies to all Banner modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after ### INSTALL SCRIPT STOP ### ) causes a change to 5 minutes:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_banner_block_time'] = 5;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Exception: No active banners defined and no default banner defined==&lt;br /&gt;
If, in this case, &amp;quot;Hide if empty&amp;quot; is not activated, until now was an empty image tag generated, what was presented by the IE as Broken Image. From version 1.11.2 now a DIV tag with class = &amp;quot;banner_empty&amp;quot; is generated:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_banner&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;div class=&amp;quot;banner_empty&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;!-- no banner, no default banner --&amp;gt;&lt;br /&gt;
	&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
With CSS can now be reached that is maintained (in this example) the amount and thus the layout of the site will not change:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;&lt;br /&gt;
.mod_banner .banner_empty {&lt;br /&gt;
    height:90px;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The resultant text can be overridden to enforce in langconfig.php, here is an example of an empty text:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_LANG']['MSC']['tl_banner']['noBanner'] = '';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Special case: Multiple Banner modules on one page==&lt;br /&gt;
Here are some hints and tips for well-known application scenarios and their characteristics.&lt;br /&gt;
&lt;br /&gt;
===One category - Two front end modules on one page===&lt;br /&gt;
In the current version it is possible to display all the banners from one category.&amp;lt;br /&amp;gt;&lt;br /&gt;
The old version's multiple banners on a Web page was to be able to create multiple front end modules and integrating them into the website. The module is prevented that a banner will not appear more than once.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Well, it was assumed that all displayed below each other, so it made sense, the module title to display only once.&amp;lt;br /&amp;gt;&lt;br /&gt;
If you want to leave now for all the title's banner front-end modules, because they are distributed on the page, must be made for this purpose a small modification to the template. Create a copy on the back end of the template &amp;quot;mod_banner_list_all&amp;quot; and renames it here, for example, in &amp;quot;mod_banner_list_special.tpl.&amp;lt;br /&amp;gt;&lt;br /&gt;
There, now you change the third line as follows:&amp;lt;br /&amp;gt;&lt;br /&gt;
Original:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;?php if (($this-&amp;gt;headline) &amp;amp;&amp;amp; (!$this-&amp;gt;headline_stop)): ?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Special:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php if ($this-&amp;gt;headline) : ?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Now edit the banner front end modules and select the new template.&amp;lt;br /&amp;gt;&lt;br /&gt;
Done.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
This is also true for more than two front end modules.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Two categories - Two front end modules on one page===&lt;br /&gt;
In this case, each front end module its own category. Again, only on the first module, the heading will appear for the same reason as in the previous section.&amp;lt;br /&amp;gt;&lt;br /&gt;
If you want to display in this scenario all module headers, the solution is the same.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This is also true for more than two front end modules.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 16:27, 10 July 2011 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Bot_Detection</id>
		<title>Bot Detection</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Bot_Detection"/>
				<updated>2014-06-28T19:54:35Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Bot_detection.jpg|right|No Bots!]]Bot Detection is a helper class for other extensions (Frontend) the need to detect whether the access is human or machine.&amp;lt;br /&amp;gt;&lt;br /&gt;
(Detection of Search Engines, Spider, Crawler, Bots, Harvester, ...) &lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.7.2 / 3.3.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.8&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/botdetection.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/botdetection/issues&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| Comment=Now on GitHub&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[de:Bot_Detection]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/botdetection/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Translations=&lt;br /&gt;
Translations can be performed on [https://www.transifex.com/projects/p/botdetection/ Transifex]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/botdetection.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/botdetection&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The module Bot Detection provides three methods for detection.&amp;lt;br /&amp;gt;&lt;br /&gt;
A reliable detection is not possible. &amp;lt;br /&amp;gt;&lt;br /&gt;
It is to use two methods to detect this:&amp;lt;br /&amp;gt;&lt;br /&gt;
* User Agent&lt;br /&gt;
* IP adress (IPv4, IPv6 from version 1.4.0)&lt;br /&gt;
&lt;br /&gt;
The modul includes a method for the agent [[Bot_Detection#Method_BD_CheckBotAgent|BD_CheckBotAgent]] and one for the IP detection [[Bot_Detection#Method_BD_CheckBotIP|BD_CheckBotIP]].&amp;lt;br /&amp;gt;&lt;br /&gt;
These two methods return only &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot; and are only a rough search on strings and substrings to identify the most important bots.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Another method [[Bot_Detection#Method_BD_CheckBotAgentAdvanced|BD_CheckBotAgentAdvanced]] comes with an external configuration file for the user agent detection. As a result, it returns the short name of the bots or &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Method BD_CheckBotAgent==&lt;br /&gt;
The method BD_CheckBotAgent &amp;quot;searches in two steps to be completed as quickly as possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
Step 1 searches for substrings that appear in most search engines / bots in the name:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
'bot'&lt;br /&gt;
'spider'&lt;br /&gt;
'spyder'&lt;br /&gt;
'crawl'&lt;br /&gt;
'slurp'&lt;br /&gt;
'robo'&lt;br /&gt;
'yahoo'&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Step 2 then looks for other strings that usually follow the name of the search engine, such as:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
'altavista'&lt;br /&gt;
'archiver'&lt;br /&gt;
'inktomi'&lt;br /&gt;
'twiceler'&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The result is &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. (&amp;quot;true&amp;quot; = search engine / bot found)&lt;br /&gt;
&lt;br /&gt;
==Method BD_CheckBotIP==&lt;br /&gt;
The bot from Google, MSN / Bing looking sometimes with the user agent from a browser.&amp;lt;br /&amp;gt;&lt;br /&gt;
To uncover these &amp;quot;undercover&amp;quot; search engines, you must be filtered by IP address.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
There is also configuration files in the ''config'' directory of the module: '''''bot-ip-list.txt''''' and '''''bot-ip-list-ipv6.txt'''''&amp;lt;br /&amp;gt;&lt;br /&gt;
Current content knows an IP address of a spider from Israel as well as network addresses for Google and MSN / Bing.&amp;lt;br /&amp;gt;&lt;br /&gt;
Additional IP addresses or networks can be entered in this file, but they are not then upgrade secure.&amp;lt;br /&amp;gt;&lt;br /&gt;
Therefore, it is better to post them in the localconfig.php as follows:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IP'][] = '192.168.1.2';&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IP'][] = '192.168.0.0/24';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
For IPv6 on this way:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IPV6'][] = '2001:0db8::1';&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IPV6'][] = '2001:0db8:85a3:0800::/56';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Method BD_CheckBotAgentAdvanced==&lt;br /&gt;
The method BD_CheckBotAgentAdvanced &amp;quot;is controlled by an external configuration file to detect the user agent.&amp;lt;br /&amp;gt;&lt;br /&gt;
The result is the short name of the bots or &amp;quot;false&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The external configuration file is generated from known user agent information from search engines / bots and regularly renewed.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Note'''&amp;lt;br /&amp;gt;&lt;br /&gt;
This external DB differentiates between different types of search engines from a manufacturer.&amp;lt;br /&amp;gt;&lt;br /&gt;
For example, the return is not &amp;quot;Google&amp;quot;, but &amp;quot;Googlebot&amp;quot; or &amp;quot;Googlebot-Image&amp;quot; or &amp;quot;Googlebot-Mobile&amp;quot; and so on, depending on what was recognized.&amp;lt;br /&amp;gt;&lt;br /&gt;
These multiple name of a search engine are also available from other producers such as MSN, Yahoo, and so on.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Own or unknown user agent identifiers can be entered in the file '''/system/config/localconfig.php''':&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_AGENT'][] = array(&amp;quot;unitbot&amp;quot;,&amp;quot;UniBot from FHTW&amp;quot;);&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_AGENT'][] = array(&amp;quot;myprivat&amp;quot;,&amp;quot;My privat bot&amp;quot;);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The parameters are: short name in lower case, description.&lt;br /&gt;
&lt;br /&gt;
=Demo Modules=&lt;br /&gt;
Module Bot Detection has 2 frontend demo modules as a demo for the implementation in your own modules.&amp;lt;br /&amp;gt;&lt;br /&gt;
The using in the demo class is made by import.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$this-&amp;gt;import('ModuleBotDetection');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Frontend Demo 1==&lt;br /&gt;
Demo 1 tests with all three methods, the current IP and User Agent identifier and displays the results.&amp;lt;br /&amp;gt;&lt;br /&gt;
See example on the developer website - [http://www.contao.glen-langer.de/BD_Frontend_Demo_1.html Demo 1].&lt;br /&gt;
&lt;br /&gt;
==Frontend Demo 2==&lt;br /&gt;
Demo 2 makes available a form to check whether a user agent identifier from the module would be recognized as a bot.&amp;lt;br /&amp;gt;&lt;br /&gt;
These are called the two agent methods and displays the result.&amp;lt;br /&amp;gt;&lt;br /&gt;
See example on the developer website - [http://www.contao.glen-langer.de/BD_Frontend_Demo_2.html Demo 2].&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 21:42, 1 July 2011 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Integrity_Check</id>
		<title>Integrity Check</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Integrity_Check"/>
				<updated>2014-06-07T23:16:51Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:check_overview_en.jpg|right|Integrity Check]] Integrity check for some files from Contao (Detection of hacked Contao installations.)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.3.10 / 3.3.9 &lt;br /&gt;
| Version=from 2.10.0&lt;br /&gt;
| ERLink=http://www.contao.org/en/extension-list/view/integrity_check.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/integrity_check/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:Integrity_Check]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
In Contao Forum, reports came about changed files, which malicious code was attached.&amp;lt;br /&amp;gt;&lt;br /&gt;
The problem itself can not be attributed to a vulnerability in Contao, but will be distributed over other ways of the server, eg vulnerable WP plugins, hacked servers, hacked FTP logins, etc.&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/integrity_check/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/en/extension-list/view/integrity_check.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/integrity_check&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Example of an Infection=&lt;br /&gt;
How now looks like such a hack?&amp;lt;br /&amp;gt;&lt;br /&gt;
The attachment to the file index.php looked like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
#c3284d#&lt;br /&gt;
echo(gzinflate(base64_decode(&amp;quot;ZZBNisMwDIX.......T7oD&amp;quot;)));&lt;br /&gt;
#/c3284d# &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function frmAdd() { &lt;br /&gt;
var ifrm = document.createElement('iframe'); &lt;br /&gt;
....&lt;br /&gt;
}; &lt;br /&gt;
window.onload = frmAdd; &lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Site one the black list==&lt;br /&gt;
When you does not react fast enough, and Google notices this, the page is set to the &amp;quot;black list&amp;quot;. Browsers like Firefox use this to warn against unauthorized access to it. It looks like this:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:site_on_black_list_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Function of the module=&lt;br /&gt;
In the current version, the most important PHP files are checked for modifications.&amp;lt;br /&amp;gt;&lt;br /&gt;
This files will be checked:&lt;br /&gt;
* index.php&lt;br /&gt;
* cron.php (from version 1.1.0)&lt;br /&gt;
* contao/index.php&lt;br /&gt;
* contao/main.php&lt;br /&gt;
* .htaccess (from version 3.1.0)&lt;br /&gt;
&lt;br /&gt;
==Time of verification==&lt;br /&gt;
This test is performed automatically (Contao-Cron), see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
==Detection==&lt;br /&gt;
The check is identical to the official Contao check tool, that means via MD5 checksums. Checksums are available for comparison for Contao from 2.10.0.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 1.1.0, check via timestamps is possible.&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
In the backend, you can see the results: System - System Log. Normally if everything is OK, no message appears. In its own module debug mode then there is only a message::&lt;br /&gt;
* Checking files for integrity is completed.&lt;br /&gt;
If modifications were detected, a message is generated for each file:&lt;br /&gt;
* Integrity status for file index.php is: Corrupt [MD5]&lt;br /&gt;
* Integrity status for cron.php file is corrupted [Timestamp]&lt;br /&gt;
** It was checked by time stamp, possible from version 1.1.0.&lt;br /&gt;
An information is available via System Log and mail, see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
==Creating integrity check==&lt;br /&gt;
The integrity check need a check plan. This can be used for any of the files for the time, the art of check and the action.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Time intervals===&lt;br /&gt;
* in Contao 2.10: daily, weekly, monthly&lt;br /&gt;
* in Contao 2.11: hourly, daily, weekly, monthly&lt;br /&gt;
* in Contao 3.0: minutely(manual), hourly, daily, weekly, monthly&lt;br /&gt;
&lt;br /&gt;
===Art of check===&lt;br /&gt;
The detection of a change in the file is possible via:&lt;br /&gt;
* MD5 checksum&lt;br /&gt;
* Timestamps&lt;br /&gt;
&lt;br /&gt;
===Action===&lt;br /&gt;
* System log: Message in the system log (backend)&lt;br /&gt;
* Mail to Admin: a mail is sent to the admin of the Contao installation.&lt;br /&gt;
** It will then creates also automatically  an entry in the System log (from version 1.1.0)&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
===System-Log und Mail===&lt;br /&gt;
From version 1.1.0 automatically gets an entry in the system log when a mail is sent.&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
In Version 1.0.0, if you want to have both types of information, you creates the check twice, each with one of the actions: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_2_en.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Here is an example only for the index.php. This is of course also for the other files.&lt;br /&gt;
&lt;br /&gt;
===There can be only one!===&lt;br /&gt;
It is possible in the integrity check overview to create multiple checks. It basically makes no sense. Therefore, it is ensured that there can be only an integrity check, which is activated. If you switch a new integrity check active, all other existing tests are automatically switched inactive.&lt;br /&gt;
&lt;br /&gt;
==Protection against infection==&lt;br /&gt;
Well, a general protection is probably not possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
But there is a possibility that the malicious code is not executed. There is a ticket to GitHub, it is accepted for Contao 3. Here is the short info for Contao 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
Edit the index.php, go to the method &amp;quot;run&amp;quot; in the last line, should be the line of 269th (2.11.5) Before the curly bracket insert an exit; or insert a row for it. Here is from line 268 as an example:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
change to:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
        exit;&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Note: Now, the Integrity Check Tool as well as the Contao Check Tool report a change. Use the check vie timestamp now.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:46, 27 June 2013 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Integrity_Check</id>
		<title>Integrity Check</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Integrity_Check"/>
				<updated>2014-06-07T23:15:02Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:check_overview_en.jpg|right|Integrity Check]] Integrity check for some files from Contao (Detection of hacked Contao installations.)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.3.10 / 3.3.2 &lt;br /&gt;
| Version=from 2.10.0&lt;br /&gt;
| ERLink=http://www.contao.org/en/extension-list/view/integrity_check.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/integrity_check/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:Integrity_Check]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
In Contao Forum, reports came about changed files, which malicious code was attached.&amp;lt;br /&amp;gt;&lt;br /&gt;
The problem itself can not be attributed to a vulnerability in Contao, but will be distributed over other ways of the server, eg vulnerable WP plugins, hacked servers, hacked FTP logins, etc.&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/integrity_check/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/en/extension-list/view/integrity_check.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/integrity_check&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Example of an Infection=&lt;br /&gt;
How now looks like such a hack?&amp;lt;br /&amp;gt;&lt;br /&gt;
The attachment to the file index.php looked like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
#c3284d#&lt;br /&gt;
echo(gzinflate(base64_decode(&amp;quot;ZZBNisMwDIX.......T7oD&amp;quot;)));&lt;br /&gt;
#/c3284d# &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function frmAdd() { &lt;br /&gt;
var ifrm = document.createElement('iframe'); &lt;br /&gt;
....&lt;br /&gt;
}; &lt;br /&gt;
window.onload = frmAdd; &lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Site one the black list==&lt;br /&gt;
When you does not react fast enough, and Google notices this, the page is set to the &amp;quot;black list&amp;quot;. Browsers like Firefox use this to warn against unauthorized access to it. It looks like this:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:site_on_black_list_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Function of the module=&lt;br /&gt;
In the current version, the most important PHP files are checked for modifications.&amp;lt;br /&amp;gt;&lt;br /&gt;
This files will be checked:&lt;br /&gt;
* index.php&lt;br /&gt;
* cron.php (from version 1.1.0)&lt;br /&gt;
* contao/index.php&lt;br /&gt;
* contao/main.php&lt;br /&gt;
* .htaccess (from version 3.1.0)&lt;br /&gt;
&lt;br /&gt;
==Time of verification==&lt;br /&gt;
This test is performed automatically (Contao-Cron), see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
==Detection==&lt;br /&gt;
The check is identical to the official Contao check tool, that means via MD5 checksums. Checksums are available for comparison for Contao from 2.10.0.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 1.1.0, check via timestamps is possible.&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
In the backend, you can see the results: System - System Log. Normally if everything is OK, no message appears. In its own module debug mode then there is only a message::&lt;br /&gt;
* Checking files for integrity is completed.&lt;br /&gt;
If modifications were detected, a message is generated for each file:&lt;br /&gt;
* Integrity status for file index.php is: Corrupt [MD5]&lt;br /&gt;
* Integrity status for cron.php file is corrupted [Timestamp]&lt;br /&gt;
** It was checked by time stamp, possible from version 1.1.0.&lt;br /&gt;
An information is available via System Log and mail, see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
==Creating integrity check==&lt;br /&gt;
The integrity check need a check plan. This can be used for any of the files for the time, the art of check and the action.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Time intervals===&lt;br /&gt;
* in Contao 2.10: daily, weekly, monthly&lt;br /&gt;
* in Contao 2.11: hourly, daily, weekly, monthly&lt;br /&gt;
* in Contao 3.0: minutely(manual), hourly, daily, weekly, monthly&lt;br /&gt;
&lt;br /&gt;
===Art of check===&lt;br /&gt;
The detection of a change in the file is possible via:&lt;br /&gt;
* MD5 checksum&lt;br /&gt;
* Timestamps&lt;br /&gt;
&lt;br /&gt;
===Action===&lt;br /&gt;
* System log: Message in the system log (backend)&lt;br /&gt;
* Mail to Admin: a mail is sent to the admin of the Contao installation.&lt;br /&gt;
** It will then creates also automatically  an entry in the System log (from version 1.1.0)&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
===System-Log und Mail===&lt;br /&gt;
From version 1.1.0 automatically gets an entry in the system log when a mail is sent.&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
In Version 1.0.0, if you want to have both types of information, you creates the check twice, each with one of the actions: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_2_en.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Here is an example only for the index.php. This is of course also for the other files.&lt;br /&gt;
&lt;br /&gt;
===There can be only one!===&lt;br /&gt;
It is possible in the integrity check overview to create multiple checks. It basically makes no sense. Therefore, it is ensured that there can be only an integrity check, which is activated. If you switch a new integrity check active, all other existing tests are automatically switched inactive.&lt;br /&gt;
&lt;br /&gt;
==Protection against infection==&lt;br /&gt;
Well, a general protection is probably not possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
But there is a possibility that the malicious code is not executed. There is a ticket to GitHub, it is accepted for Contao 3. Here is the short info for Contao 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
Edit the index.php, go to the method &amp;quot;run&amp;quot; in the last line, should be the line of 269th (2.11.5) Before the curly bracket insert an exit; or insert a row for it. Here is from line 268 as an example:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
change to:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
        exit;&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Note: Now, the Integrity Check Tool as well as the Contao Check Tool report a change. Use the check vie timestamp now.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:46, 27 June 2013 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Bot_Detection</id>
		<title>Bot Detection</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Bot_Detection"/>
				<updated>2013-12-08T23:09:45Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Bot_detection.jpg|right|No Bots!]]Bot Detection is a helper class for other extensions (Frontend) the need to detect whether the access is human or machine.&amp;lt;br /&amp;gt;&lt;br /&gt;
(Detection of Search Engines, Spider, Crawler, Bots, Harvester, ...) &lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.7.2 / 3.2.1&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.8&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/botdetection.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/botdetection/issues&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| Comment=Now on GitHub&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[de:Bot_Detection]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/botdetection/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/botdetection.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/botdetection&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The module Bot Detection provides three methods for detection.&amp;lt;br /&amp;gt;&lt;br /&gt;
A reliable detection is not possible. &amp;lt;br /&amp;gt;&lt;br /&gt;
It is to use two methods to detect this:&amp;lt;br /&amp;gt;&lt;br /&gt;
* User Agent&lt;br /&gt;
* IP adress (IPv4, IPv6 from version 1.4.0)&lt;br /&gt;
&lt;br /&gt;
The modul includes a method for the agent [[Bot_Detection#Method_BD_CheckBotAgent|BD_CheckBotAgent]] and one for the IP detection [[Bot_Detection#Method_BD_CheckBotIP|BD_CheckBotIP]].&amp;lt;br /&amp;gt;&lt;br /&gt;
These two methods return only &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot; and are only a rough search on strings and substrings to identify the most important bots.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Another method [[Bot_Detection#Method_BD_CheckBotAgentAdvanced|BD_CheckBotAgentAdvanced]] comes with an external configuration file for the user agent detection. As a result, it returns the short name of the bots or &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Method BD_CheckBotAgent==&lt;br /&gt;
The method BD_CheckBotAgent &amp;quot;searches in two steps to be completed as quickly as possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
Step 1 searches for substrings that appear in most search engines / bots in the name:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
'bot'&lt;br /&gt;
'spider'&lt;br /&gt;
'spyder'&lt;br /&gt;
'crawl'&lt;br /&gt;
'slurp'&lt;br /&gt;
'robo'&lt;br /&gt;
'yahoo'&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Step 2 then looks for other strings that usually follow the name of the search engine, such as:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
'altavista'&lt;br /&gt;
'archiver'&lt;br /&gt;
'inktomi'&lt;br /&gt;
'twiceler'&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The result is &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. (&amp;quot;true&amp;quot; = search engine / bot found)&lt;br /&gt;
&lt;br /&gt;
==Method BD_CheckBotIP==&lt;br /&gt;
The bot from Google, MSN / Bing looking sometimes with the user agent from a browser.&amp;lt;br /&amp;gt;&lt;br /&gt;
To uncover these &amp;quot;undercover&amp;quot; search engines, you must be filtered by IP address.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
There is also configuration files in the ''config'' directory of the module: '''''bot-ip-list.txt''''' and '''''bot-ip-list-ipv6.txt'''''&amp;lt;br /&amp;gt;&lt;br /&gt;
Current content knows an IP address of a spider from Israel as well as network addresses for Google and MSN / Bing.&amp;lt;br /&amp;gt;&lt;br /&gt;
Additional IP addresses or networks can be entered in this file, but they are not then upgrade secure.&amp;lt;br /&amp;gt;&lt;br /&gt;
Therefore, it is better to post them in the localconfig.php as follows:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IP'][] = '192.168.1.2';&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IP'][] = '192.168.0.0/24';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
For IPv6 on this way:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IPV6'][] = '2001:0db8::1';&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IPV6'][] = '2001:0db8:85a3:0800::/56';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Method BD_CheckBotAgentAdvanced==&lt;br /&gt;
The method BD_CheckBotAgentAdvanced &amp;quot;is controlled by an external configuration file to detect the user agent.&amp;lt;br /&amp;gt;&lt;br /&gt;
The result is the short name of the bots or &amp;quot;false&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The external configuration file is generated from known user agent information from search engines / bots and regularly renewed.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Note'''&amp;lt;br /&amp;gt;&lt;br /&gt;
This external DB differentiates between different types of search engines from a manufacturer.&amp;lt;br /&amp;gt;&lt;br /&gt;
For example, the return is not &amp;quot;Google&amp;quot;, but &amp;quot;Googlebot&amp;quot; or &amp;quot;Googlebot-Image&amp;quot; or &amp;quot;Googlebot-Mobile&amp;quot; and so on, depending on what was recognized.&amp;lt;br /&amp;gt;&lt;br /&gt;
These multiple name of a search engine are also available from other producers such as MSN, Yahoo, and so on.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Own or unknown user agent identifiers can be entered in the file '''/system/config/localconfig.php''':&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_AGENT'][] = array(&amp;quot;unitbot&amp;quot;,&amp;quot;UniBot from FHTW&amp;quot;);&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_AGENT'][] = array(&amp;quot;myprivat&amp;quot;,&amp;quot;My privat bot&amp;quot;);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The parameters are: short name in lower case, description.&lt;br /&gt;
&lt;br /&gt;
=Demo Modules=&lt;br /&gt;
Module Bot Detection has 2 frontend demo modules as a demo for the implementation in your own modules.&amp;lt;br /&amp;gt;&lt;br /&gt;
The using in the demo class is made by import.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$this-&amp;gt;import('ModuleBotDetection');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Frontend Demo 1==&lt;br /&gt;
Demo 1 tests with all three methods, the current IP and User Agent identifier and displays the results.&amp;lt;br /&amp;gt;&lt;br /&gt;
See example on the developer website - [http://www.contao.glen-langer.de/BD_Frontend_Demo_1.html Demo 1].&lt;br /&gt;
&lt;br /&gt;
==Frontend Demo 2==&lt;br /&gt;
Demo 2 makes available a form to check whether a user agent identifier from the module would be recognized as a bot.&amp;lt;br /&amp;gt;&lt;br /&gt;
These are called the two agent methods and displays the result.&amp;lt;br /&amp;gt;&lt;br /&gt;
See example on the developer website - [http://www.contao.glen-langer.de/BD_Frontend_Demo_2.html Demo 2].&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 21:42, 1 July 2011 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/BOM_Checker</id>
		<title>BOM Checker</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/BOM_Checker"/>
				<updated>2013-12-08T23:06:34Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.2.0 / 3.2.0&lt;br /&gt;
| Version=ab 2.9&lt;br /&gt;
| TLVersion=2.8 (not tested, but should work)&lt;br /&gt;
| ERLink=http://http://www.contao.org/en/extension-list/view/bom_checker.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/bom_checker/issues&lt;br /&gt;
| VCSLink=https://github.com/BugBuster1701/bom_checker&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| Comment=Version for Contao 3.2 online &lt;br /&gt;
}}&lt;br /&gt;
[[de:BOM_Checker]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Bom_checker_er.jpg|right|thumb|BOM_Checker]]The BOM-Checker is a backend helper module for developers.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the backend, there is a new menu item &amp;quot;Developer tools&amp;quot;, including the point will &amp;quot;BOM Checker&amp;quot; to be found.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
'''The module requires the Standard PHP Library (SPL), this is an integral part of PHP 5, if not disabled.'''&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=BOM ?=&lt;br /&gt;
PHP5 can't correctly interpret Files with a BOM. (Byte Order Mark, 3 bytes at the beginning of a file)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[Benutzer:BugBuster|BugBuster]] 00:53, 8. Mai 2011 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Backend_User_Online</id>
		<title>Backend User Online</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Backend_User_Online"/>
				<updated>2013-12-08T23:04:26Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Shows in then back end the online status of the back end and front end user in the user / member overview.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.2.0 / 3.1.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.7.2 - 2.8.4&lt;br /&gt;
| ERLink=http://http://contao.org/en/extension-list/view/backend_user_online.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/backend_user_online/issues&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[de:Backend_User_Online]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/backend_user_online/issues Issue Tracker]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/backend_user_online.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/backend_user_online&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
It expands the area of &amp;quot;Account manager&amp;quot; - &amp;quot;Members&amp;quot; and &amp;quot;Account manager&amp;quot; - &amp;quot;Users&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
For members it looks like this:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Be_user_online_en_member.jpg|Backend User Online - Members]]&lt;br /&gt;
&lt;br /&gt;
It represents the green eye &amp;quot;Online&amp;quot;, the gray eyes &amp;quot;Offline&amp;quot;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
For users it looks like this:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Be_user_online_en_user.jpg|Backend User Online - Users]]&lt;br /&gt;
&lt;br /&gt;
When you sort, as seen in the pictures, to &amp;quot;Last Login&amp;quot;, this information can also be seen.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 18:54, 10 November 2012 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Banner</id>
		<title>Banner</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Banner"/>
				<updated>2013-12-08T23:01:23Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
A banner advertisement module with a simple form of weighting.&amp;lt;br /&amp;gt;&lt;br /&gt;
In Backend you can see banner view and banner click statistics. (System Menu)&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
IP-based ReClick blocker was integrated (5 minutes). Forwarding functioned, but isn't counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
Similarly, the views within a period not re-counted if the same banner displayed. (10 minutes)&amp;lt;br /&amp;gt;&lt;br /&gt;
The amount of time to block the view count can be changed.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
By using the module &amp;quot;[[Bot Detection |Bot Detection]]&amp;quot; requests from bots and search engines are not counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
In the module directory is located in the file '''mod_banner_fe.css''' some CSS sample data. These can be included in the layout or you can import the file and activate this in the layout.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.4.4 / 3.2.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.6.2 - 2.8.4 (see installations notes)&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]],[[xls_export|Excel 95 writer (xls_export)]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/banner.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/banner/issues&lt;br /&gt;
| VCSLink=https://github.com/BugBuster1701/banner&lt;br /&gt;
| Comment=Version for Contao 3.2 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Banner]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Visitors module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/banner/issues Issue Tracker].&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/banner.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/banner&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Banner is dependent on the modules &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; and &amp;quot;[[xls_export|Excel 95 writer (xls_export)]]&amp;quot;. They must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Note for older &amp;quot;TYPOlight&amp;quot; versions==&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use Banner Module Version 1.11.2 ([http://www.contao.org/extension-list/view/banner.10110029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use Banner Module Version 1.9.2 ([http://www.contao.org/extension-list/view/banner.10090029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.6===&lt;br /&gt;
Users of TYPOlight 2.6.x, please use Banner Module Version 1.6.5 ([http://www.contao.org/extension-list/view/banner.10060059.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Installation as an update=&lt;br /&gt;
An update is identical to the installation.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Notice when updating from &amp;lt; 1.10.0 to the latest version:'''&amp;lt;br /&amp;gt;&lt;br /&gt;
The CSS file &amp;quot;mod_banner_fe.css&amp;quot; which is included as an example, the uppercase / lowercase letters changed in a class.&amp;lt;br /&amp;gt;&lt;br /&gt;
Anyone who has imported this file or the design itself has to produce, the class &amp;quot;.mod_Banner&amp;quot; must change in &amp;quot;.mod_banner&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here. &lt;br /&gt;
*[[Banner_Update_v1_to_v2|'''Banner Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The Banner Module contains two back end and one front end module.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Banner&amp;quot; and &amp;quot;Banner Statistic&amp;quot;, for the front end &amp;quot;Banner&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Banner===&lt;br /&gt;
[[File:Banner_en_backend_banner.jpg|Back end module Banner]]&lt;br /&gt;
&lt;br /&gt;
===Banner Statistic===&lt;br /&gt;
[[File:Banner_en_backend_bannerstatistic.jpg|Back end module Banner Statistic]]&lt;br /&gt;
&lt;br /&gt;
==Front end==&lt;br /&gt;
&lt;br /&gt;
===Display a banner===&lt;br /&gt;
[[File:Banner_en_frontend_one_banner.jpg|Front end module Banner]]&lt;br /&gt;
# Module Headline&lt;br /&gt;
# Banner Image&lt;br /&gt;
# Banner Comment&lt;br /&gt;
# Banner Name&lt;br /&gt;
&lt;br /&gt;
More details about this see under &amp;quot;[[Banner#Using|Using]]&amp;quot; or &amp;quot;[[Banner#Technical_Details|Technical Details]]&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Display all Banner===&lt;br /&gt;
With 'all Banner' is meant here, all banners in the selected category.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Banner_en_frontend_all_banner.jpg|Front end all banner|left]]&lt;br /&gt;
In this example, 3 banners have been defined, &amp;lt;br /&amp;gt;&lt;br /&gt;
* Graphic Banner&lt;br /&gt;
* Flash Banner&lt;br /&gt;
* Text Banner&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
More details about this see under &amp;quot;[[Banner#Using|Using]]&amp;quot; or &amp;quot;[[Banner#Technical_Details|Technical Details]]&amp;quot;.&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The first one creates a new banner category via the menu item &amp;quot;banner&amp;quot;. In this then the banners.&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&lt;br /&gt;
Here are the steps, each with the default values. [[Banner#Technical_Details|Technical details]] will be explained later.&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Banner'. In the main area click on the button 'New category'.&lt;br /&gt;
[[File:Banner_en_backend_category_new.jpg|New Banner Category]]&lt;br /&gt;
&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
==Create the banners==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br &amp;gt;&lt;br /&gt;
Now, either click the 'New Banner' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br &amp;gt;&lt;br /&gt;
[[File:Banner_en_backend_banner_new.jpg|New Banner]]&lt;br /&gt;
&lt;br /&gt;
First they must select the banner source:&lt;br /&gt;
* internal Banner (Graphic / Flash files  is stored on server)&lt;br /&gt;
* external Banner (Graphic / Flash files are integrated via URL)&lt;br /&gt;
* Text Banner&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
After selecting it appear the appropriate form fields.&lt;br /&gt;
&lt;br /&gt;
===Graphic Banners===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed in the Banner overview and in the provided template appears below the banner graphic.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking on the banner graphic. The input must include &amp;quot;http://&amp;quot;.&lt;br /&gt;
#* Optional field. &lt;br /&gt;
#* Without a URL, the banner will be displayed without a link.&lt;br /&gt;
#* Alternative can be selected an internal target (Banner target page)&lt;br /&gt;
# Banner Image&lt;br /&gt;
#* Here you can now select the banner file.&lt;br /&gt;
# Banner width and height&lt;br /&gt;
#* To customize the banner size, you can specify the banner width and / or the banner height in pixels.&lt;br /&gt;
#* '''CAUTION''': Animated GIFs are for size definitions through the GD recalculation unfortunately to still images.&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* The first line will be installed and displayed as a &amp;quot;title&amp;quot; tag in the HTML source code if you move the cursor over the banner graphic.&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
===Flash Banner===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed only in the Banner overview.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking on the Flash Banner. The input must include &amp;quot;http://&amp;quot;.&lt;br /&gt;
#* Optional field.  &lt;br /&gt;
#* Without a URL, the Flash Banner will be displayed without a link.&lt;br /&gt;
#* Alternative can be selected an internal target (Banner target page)&lt;br /&gt;
# Banner Image&lt;br /&gt;
#* Here you can now select the banner file.&lt;br /&gt;
# Banner width and height&lt;br /&gt;
#* To customize the banner size, you can specify the banner width and / or the banner height in pixels.&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* Input is not necessary, is not used in the front end&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
A flash fallback to an image file is available, see the section [[Banner#Flash_Fallback_Image|Technical Details]]&lt;br /&gt;
&lt;br /&gt;
===Text Banner===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed in the Banner overview and in the provided template as a headline that is linked simultaneously with the target URL.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking. The input must include &amp;quot;http://&amp;quot;. &lt;br /&gt;
#* Optional field.&lt;br /&gt;
#* Without a URL, the Text Banner will be displayed without a link.&lt;br /&gt;
#* in provided template only the domain is shown as a short form. (Third row, see picture above)&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* This is the text line. (Second row, see picture above)&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
==Front end module==&lt;br /&gt;
A new front-end module is create with: &amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Add module (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add module (TYPOlight 2.8.x)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Be sure to '''first enter the title''', then selecting for module type:''Miscellaneous -&amp;gt; Banner''.&lt;br /&gt;
Now the form fields change accordingly.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Banner Categories' select the previously created category, then 'Save and Close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout: &amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer) &lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x) &lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left)&lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
For the first tests you should copy the provided file mod_banner_fe.css from /system/modules/banner to /tl_files . Then import them over the back end and activate it in the layout.&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category, in the banner denifinition and in the constructed front end module feasible / adjustable. &lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Category Definition==&lt;br /&gt;
===Number of banners===&lt;br /&gt;
* Show all banners&lt;br /&gt;
If you choose this option, all active banners will be showed in front end.&amp;lt;br /&amp;gt;&lt;br /&gt;
In addition, you can choose:&lt;br /&gt;
* Limiting the number of banners&lt;br /&gt;
Here, the number can be limited. Default is 0: show all banners, otherwise maximum number of banners that will be showed.&lt;br /&gt;
* Random order&lt;br /&gt;
If you choose this option, the banners will shown in a random order.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Banner Definition==&lt;br /&gt;
===Flash Fallback Image===&lt;br /&gt;
If a browser does not support Flash or JavaScript is disabled, an image can be displayed instead (since version 2.2.0). At a local (internal) flash file, in the same path is searched for an image file with the same name but with the ending jpg, png or gif.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: for &amp;quot;myflash.swf&amp;quot; would be a fallback image: &amp;quot;myflash.jpg&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
Was found a replacement image, the image is displayed. If necessary, the image is converted to the dimensions of the flash file.&lt;br /&gt;
&lt;br /&gt;
===Display limitation by Start / Stop dates and times===&lt;br /&gt;
* Show from&lt;br /&gt;
** If you enter a date and time value here the current banner will not be shown on the website before this moment.&lt;br /&gt;
* Show until&lt;br /&gt;
** If you enter a date and time value here the current banner will not be shown on the website after this moment.&lt;br /&gt;
&lt;br /&gt;
===Limiting the number of Views and Clicks===&lt;br /&gt;
* Limiting the number of Views and Clicks&lt;br /&gt;
If you select this option, you can define a maximum number of views and/or maximum number of clicks.&lt;br /&gt;
* Limiting the number of Views&lt;br /&gt;
** By entering a number, the current banner is no longer displayed after this number of views.&amp;lt;br /&amp;gt;The &amp;quot;Limiting the number of Views and Clicks&amp;quot; has enabled it to stay.&lt;br /&gt;
* Limiting the number of Clicks&lt;br /&gt;
** By entering a number, the current banner is no longer displayed after this number of clicks.&amp;lt;br /&amp;gt;The &amp;quot;Limiting the number of Views and Clicks&amp;quot; has enabled it to stay.&lt;br /&gt;
&lt;br /&gt;
===Filter Domain===&lt;br /&gt;
If you enter a domain name, this banner is used only for this domain.If you leave the field empty, this banner is used for all domains. Example: '''yourdomain.com'''&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The banner will be displayed, if matches the domain. But also in partial match starting from the right. So also with access via &amp;quot;'''sub.yourdomain.com'''&amp;quot; .An entry in &amp;quot;Site structure&amp;quot; - &amp;quot;Domain Name&amp;quot; is not required for the filtering.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Front end Module Definition==&lt;br /&gt;
&lt;br /&gt;
===First banner for new visitor===&lt;br /&gt;
For each new visitor, at first is displayed the first published banner in the category. The choice is then returned to random mode. Thus, a kind of recognition can be achieved.&lt;br /&gt;
&lt;br /&gt;
===Templates===&lt;br /&gt;
Each module can be assigned its own Template. Two different templates are included.  &amp;lt;br /&amp;gt;&lt;br /&gt;
* mod_banner_list_all&lt;br /&gt;
** All fields are included.&lt;br /&gt;
* mod_banner_list_min&lt;br /&gt;
** The headline and name were removed. It will only display the banner itself.&lt;br /&gt;
&lt;br /&gt;
Both templates also support text banners.&amp;lt;br /&amp;gt;&lt;br /&gt;
For own Templates, the template files must start with &amp;quot;mod_banner_list_&amp;quot; and end with &amp;quot;.tpl&amp;quot;. &lt;br /&gt;
Example: &amp;quot;mod_banner_list_special.tpl&amp;quot;&lt;br /&gt;
&lt;br /&gt;
{{Note|In Banner Version 1.x this selection is located in the banner category.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Prevention of counting their own requests===&lt;br /&gt;
You can set a custom UserAgent String in your browser and in the banner modul configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Via: &lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Modul Name (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Module Name (TYPOlight 2.8.x)&lt;br /&gt;
In the applied banners module in the new field &amp;quot;No counting for this HTTP_USER_AGENT partial identifier&amp;quot; , a string is entered, it should be unique.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: CTISOK&amp;lt;br /&amp;gt;&lt;br /&gt;
Save it.&amp;lt;br /&amp;gt;&lt;br /&gt;
Several strings are also possible, then enter them separated by commas.&amp;lt;br /&amp;gt;&lt;br /&gt;
so you can change the User Agent String of Mozilla Firefox: &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
# Type '''about:config''' in the Mozilla Firefox address bar and press ENTER&lt;br /&gt;
# Type '''general.useragent.extra.firefox''' in the Filter bar&lt;br /&gt;
# Double-click on the returned Firefox setting, where you can change a user agent string to overwrite the default.&lt;br /&gt;
# Add her &amp;quot;CTISOK&amp;quot; separated by space, e.g. &amp;quot;Firefox/3.6.3 CTISOK&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can check your new User Agent String , type '''about:''' in the Mozilla Firefox address bar and press ENTER, see last row.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For other browsers, see:&lt;br /&gt;
[http://www.walkernews.net/2007/07/05/how-to-change-user-agent-string/ walkernews.net - how to change user agent string]&lt;br /&gt;
&lt;br /&gt;
=Specific feature=&lt;br /&gt;
==Bot Detection off==&lt;br /&gt;
Who wants to count the hits from bots and search engines on the banners can switch off the bot detection. This is done by the file localconfig.php.&lt;br /&gt;
{{Caution|This applies to all Banner modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after: ### INSTALL SCRIPT STOP ### ) switching off the bot detection:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_banner_bot_check'] = false;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Change Banner Block Time for Views==&lt;br /&gt;
As written in the beginning, when a banner is displayed multiple times within 10 minutes (C3: 5 minutes), this banner is only counted once.&amp;lt;br /&amp;gt; &lt;br /&gt;
With an entry in the localconfig.php can change that. The values be there in minutes, the number must be&amp;gt; 0, otherwise will be automatically taken back to the default value (10).&lt;br /&gt;
{{Caution|This applies to all Banner modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after ### INSTALL SCRIPT STOP ### ) causes a change to 5 minutes:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_banner_block_time'] = 5;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Exception: No active banners defined and no default banner defined==&lt;br /&gt;
If, in this case, &amp;quot;Hide if empty&amp;quot; is not activated, until now was an empty image tag generated, what was presented by the IE as Broken Image. From version 1.11.2 now a DIV tag with class = &amp;quot;banner_empty&amp;quot; is generated:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_banner&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;div class=&amp;quot;banner_empty&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;!-- no banner, no default banner --&amp;gt;&lt;br /&gt;
	&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
With CSS can now be reached that is maintained (in this example) the amount and thus the layout of the site will not change:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;&lt;br /&gt;
.mod_banner .banner_empty {&lt;br /&gt;
    height:90px;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The resultant text can be overridden to enforce in langconfig.php, here is an example of an empty text:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_LANG']['MSC']['tl_banner']['noBanner'] = '';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Special case: Multiple Banner modules on one page==&lt;br /&gt;
Here are some hints and tips for well-known application scenarios and their characteristics.&lt;br /&gt;
&lt;br /&gt;
===One category - Two front end modules on one page===&lt;br /&gt;
In the current version it is possible to display all the banners from one category.&amp;lt;br /&amp;gt;&lt;br /&gt;
The old version's multiple banners on a Web page was to be able to create multiple front end modules and integrating them into the website. The module is prevented that a banner will not appear more than once.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Well, it was assumed that all displayed below each other, so it made sense, the module title to display only once.&amp;lt;br /&amp;gt;&lt;br /&gt;
If you want to leave now for all the title's banner front-end modules, because they are distributed on the page, must be made for this purpose a small modification to the template. Create a copy on the back end of the template &amp;quot;mod_banner_list_all&amp;quot; and renames it here, for example, in &amp;quot;mod_banner_list_special.tpl.&amp;lt;br /&amp;gt;&lt;br /&gt;
There, now you change the third line as follows:&amp;lt;br /&amp;gt;&lt;br /&gt;
Original:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;?php if (($this-&amp;gt;headline) &amp;amp;&amp;amp; (!$this-&amp;gt;headline_stop)): ?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Special:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php if ($this-&amp;gt;headline) : ?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Now edit the banner front end modules and select the new template.&amp;lt;br /&amp;gt;&lt;br /&gt;
Done.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
This is also true for more than two front end modules.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Two categories - Two front end modules on one page===&lt;br /&gt;
In this case, each front end module its own category. Again, only on the first module, the heading will appear for the same reason as in the previous section.&amp;lt;br /&amp;gt;&lt;br /&gt;
If you want to display in this scenario all module headers, the solution is the same.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This is also true for more than two front end modules.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 16:27, 10 July 2011 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Visitors</id>
		<title>Visitors</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Visitors"/>
				<updated>2013-11-07T22:55:42Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg|right|Visitors]]This module allows you to count hits and visits of your website.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the display appears the hits and visits from the current day, as well as the respective total.&lt;br /&gt;
Statistic is also in the backend.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.8.2 / 3.2.1&lt;br /&gt;
| Version=from 2.19&lt;br /&gt;
| TLVersion=2.7 - 2.9 (see installation notes)&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]],[[xls_export|Excel 95 writer (xls_export)]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/visitors.en.html&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/visitors/issues&lt;br /&gt;
| Comment=Version for Contao 3.2 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Visitors]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Visitors module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported at GitHub: [https://github.com/BugBuster1701/visitors/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/visitors.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/visitors&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Visitors is dependent on the module &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; and &amp;quot;[[xls_export|Excel 95 writer (xls_export)]]&amp;quot;. They must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Note for older &amp;quot;TYPOlight/Contao&amp;quot; versions==&lt;br /&gt;
===Contao 2.9===&lt;br /&gt;
Users of Contao 2.9.x, please use Visitors Module Version 2.7.1 ([http://www.contao.org/extension-list/view/visitors.20070019.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use Visitors Module Version 1.7.2 ([http://www.contao.org/extension-list/view/visitors.10070029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use Visitors Module Version 1.4.1 ([http://www.contao.org/extension-list/view/visitors.10040019.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
==Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here. &lt;br /&gt;
*[[Visitors_Update_v1_to_v2|'''Visitors Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Overview=&lt;br /&gt;
The Visitors module contains two back end and one front end module.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Visitors&amp;quot; and &amp;quot;Visitor Statistics&amp;quot;, for the front end &amp;quot;Visitors&amp;quot;. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Visitors===&lt;br /&gt;
[[File:Visitors_en_backend_visitors.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors_en_backend_visitorstatistics.jpg]]&lt;br /&gt;
&lt;br /&gt;
shows in detail: (Click on image for higher resolution)&lt;br /&gt;
&amp;lt;gallery widths=&amp;quot;240&amp;quot; heights=&amp;quot;180&amp;quot; caption=&amp;quot;Visitors Statistics&amp;quot;&amp;gt;&lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details.jpg|Visitors Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_browser.jpg|Browser Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_searchengine.jpg|Search Engine Referer Statistics &lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Front end==&lt;br /&gt;
For the front end are provided two CSS files as an example:&lt;br /&gt;
*mod_visitors_fe.css for the normal output, line by line&lt;br /&gt;
*mod_visitors_fe_horizontal.css for the horizontal output&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics, horizontal===&lt;br /&gt;
[[File:Visitors-package-fe-horizontal-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The first one creates a new visitor category via the menu item &amp;quot;visitors&amp;quot;. In this then the counter.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Here are the steps, each with the default values. [[Visitors#Technical_Details|Technical details]] will be explained later.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Visitors'. In the main area click on the button 'New category'.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_category_new.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Create new counter==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, either click the 'New counter' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_counter_new.jpg]]&lt;br /&gt;
&lt;br /&gt;
Now, some information are needed: :&lt;br /&gt;
* Name, (is displayed as a heading on the numbers).&lt;br /&gt;
* Start date, optional, only for display in font end&lt;br /&gt;
* Optional: 'Initial value of visitors/hits'&lt;br /&gt;
* Optional: 'Visitors per day' &lt;br /&gt;
* Activate &amp;quot;Published&amp;quot;&lt;br /&gt;
Then you click on &amp;quot;Save and close&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Front end Module==&lt;br /&gt;
A new front-end module is create with:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Add module (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add module (TYPOlight 2.8.x)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
At first, enter the title, and only then select in &amp;quot;Module type&amp;quot;: 'Miscellaneous'-'Visitors'. It changes the form fields.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Visitors category' now select the previously created category, then 'Save and close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer) &lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x) &lt;br /&gt;
&lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left) &lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
As mentioned above, are provided two CSS file for presentation.&amp;lt;br /&amp;gt;&lt;br /&gt;
For the first tests you should copy the file &amp;lt;code&amp;gt;mod_visitors_fe.css&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;/system/modules/visitors&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;/tl_files&amp;lt;/code&amp;gt; . Then import them over the back end and activate it in the layout.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category, in the counter denifinition and in the constructed front end module feasible / adjustable. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the category==&lt;br /&gt;
===Counting mode===&lt;br /&gt;
From version 1.6.0, Counting mode is selectable, server side or browser side, by category:&lt;br /&gt;
* Load counting, server side by Contao&lt;br /&gt;
* Read counting, client side by browser&lt;br /&gt;
** (only on Contao cacheMode: server and browser cache / only browser cache)&lt;br /&gt;
&lt;br /&gt;
With &amp;quot;Read counting&amp;quot; can be counted when the page is in the browser cache and will be called from it.&lt;br /&gt;
The system setting &amp;quot;Cache mode&amp;quot; will be respected.&lt;br /&gt;
&lt;br /&gt;
{{Note|The display of current values will continue but only if the page is requested from the server.}}&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the counter denifinition==&lt;br /&gt;
===Block time===&lt;br /&gt;
The block time is in seconds. After interruption of the requests at this time, an access is counted as an additional visitor.&amp;lt;br /&amp;gt;&lt;br /&gt;
Pre-entered are 1800 seconds, so that is 30 minutes.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Technical Details in the front end module definition==&lt;br /&gt;
===Templates===&lt;br /&gt;
Each module can be assigned its own Template. Four different templates are included.&lt;br /&gt;
* mod_visitors_fe_all&lt;br /&gt;
** All fields are included. (see example above)&lt;br /&gt;
* mod_visitors_fe_hits&lt;br /&gt;
** Here the visit rows were removed.&lt;br /&gt;
* mod_visitors_fe_visits&lt;br /&gt;
** Here the hit rows were removed.&lt;br /&gt;
* mod_visitors_fe_invisible.tpl&lt;br /&gt;
** Here, nothing is displayed. This template is used for a pure counting.&lt;br /&gt;
&lt;br /&gt;
For own Templates, the template files must start with &amp;quot;mod_visitors_fe_&amp;quot; and end with &amp;quot;.tpl&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Show to guests only===&lt;br /&gt;
Hide the module if a member (front end user) is logged in. &lt;br /&gt;
&lt;br /&gt;
===Protect module===&lt;br /&gt;
Show the module to certain member groups only.&lt;br /&gt;
&lt;br /&gt;
===No counting for this HTTP_USER_AGENT partial identifier===&lt;br /&gt;
You can set a custom UserAgent String in your browser and in the visitors module configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Module Name (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Module Name (TYPOlight 2.8.x)&lt;br /&gt;
In the field: &amp;quot;No counting for this HTTP_USER_AGENT partial identifier&amp;quot;, you can enter a unique identifier.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: CTISOK&amp;lt;br /&amp;gt;&lt;br /&gt;
Save it.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, change the User Agent String of Mozilla Firefox:&amp;lt;br /&amp;gt;&lt;br /&gt;
# Type '''about:config''' in the Mozilla Firefox address bar and press ENTER,&lt;br /&gt;
# Type '''general.useragent.extra.firefox''' in the Filter bar,&lt;br /&gt;
# Double-click on the returned Firefox setting, where you can change a user agent string to overwrite the default. &lt;br /&gt;
# Add her &amp;quot;CTISOK&amp;quot; separated by space, e.g. &amp;quot;Firefox/3.5.2 CTISOK&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can check your new User Agent String , type '''about:''' + ENTER in the Mozilla Firefox address bar and press ENTER, see last row.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For other browsers, see:&lt;br /&gt;
[http://www.walkernews.net/2007/07/05/how-to-change-user-agent-string/ walkernews.net - how to change user agent string]&lt;br /&gt;
{{Hint|This does not work anymore in Firefox 4.  Alternatively, use the add-on: [https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher/ User-Agent-Switcher]}}&lt;br /&gt;
&lt;br /&gt;
=Insert-Tags=&lt;br /&gt;
==Show the values==&lt;br /&gt;
From version 1.2.0 there is Insert-Tags to show the values.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::name}}&lt;br /&gt;
 {{visitors::catid::online}}&lt;br /&gt;
 {{visitors::catid::start}}&lt;br /&gt;
 {{visitors::catid::totalvisit}}&lt;br /&gt;
 {{visitors::catid::totalhit}}&lt;br /&gt;
 {{visitors::catid::todayvisit}}&lt;br /&gt;
 {{visitors::catid::todayhit}}&lt;br /&gt;
 {{visitors::catid::averagevisits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
From version 1.5.0 and from TYPOlight 2.8, Insert-Tags can be extended with prefix 'cache_'. Thus, these then cache resistant.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::name}}&lt;br /&gt;
 ...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The counting is continued through the module! Who wants to use to display the insert tags, the module continues to need, but only to count. With the templates mod_visitors_fe_invisible the module may be invisible, if desired.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
To determine the category ID, go into the category overview of the module with your mouse over the &amp;quot;i&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 2.3.1, the ID is shown right behind the category name.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-category.jpg|Visitor category ID]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The tooltip displays the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
Or click on the &amp;quot;i&amp;quot;, in the following site is in the first line the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
For category ID = 1 that would be like that:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::1::online}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Count==&lt;br /&gt;
An alternative to &amp;quot;counting only&amp;quot; would be to use an Insert-Tag. From version 1.5.0 there is another Insert-Tag. The module itself uses this as well:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::count}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Example for installation in an article (for category ID = 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span style=&amp;quot;width:0px;height:0px;&amp;quot;&amp;gt;{{cache_visitors::1::count}}&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Caution|It must be noticed, that the insert-tag for the count will be installed at first on the page so that the counting is carried out before the identification of the values.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==More Insert-Tags==&lt;br /&gt;
From version 2.1.0, there ist Insert-Tags for display the values of the day with the most visitors.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::bestday::date}}   - Day (Date) with the most visitors&lt;br /&gt;
 {{visitors::catid::bestday::visits}} - Number of visitors of the day with most visitors&lt;br /&gt;
 {{visitors::catid::bestday::hits}}   - Number of hits of the day with most visitors&lt;br /&gt;
or&lt;br /&gt;
 {{cache_visitors::catid::bestday::date}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::visits}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::hits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The &amp;quot;date&amp;quot; insert-tag has an optional parameter to format the date output. (m.d.Y , Y-m-d, etc.)&amp;lt;br /&amp;gt;&lt;br /&gt;
The system setting is used as default. As a separator, a &amp;quot;::&amp;quot; are used.&amp;lt;br /&amp;gt;&lt;br /&gt;
A complete example (with category 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 Best Day: {{visitors::1::bestday::date::j. F Y}} with {{visitors::1::bestday::visits}} visitors &lt;br /&gt;
(and {{visitors::1::bestday::hits}} hits)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
results:&lt;br /&gt;
 Best Day: 31. August 2010 with 25 visitors (and 123 hits)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Specific feature=&lt;br /&gt;
==No counting==&lt;br /&gt;
No front-end call is counted when one is logged on at the same time in the back end.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visitors per day: Ø = 0==&lt;br /&gt;
The average value per day will be calculated for each full calendar day.&amp;lt;br /&amp;gt;&lt;br /&gt;
So, having only one day before a counting or a counting of the current day, no meaningful value can be calculated.&amp;lt;br /&amp;gt;&lt;br /&gt;
(average = number visitors)&amp;lt;br /&amp;gt;&lt;br /&gt;
In these cases appears &amp;quot;0&amp;quot;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Bot Detection off==&lt;br /&gt;
Who wants to count the hits from bots and search engines can switch off the bot detection. This is done by the file localconfig.php.&lt;br /&gt;
{{Caution|This applies to all Visitors modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after: ### INSTALL SCRIPT STOP ### ) switching off the bot detection:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_visitors_bot_check'] = false;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:42, 12 December 2010 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Replace_Language</id>
		<title>Replace Language</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Replace_Language"/>
				<updated>2013-10-02T22:33:29Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&lt;br /&gt;
[[File:Replace_language_en.jpg|right|Replace Language]]&amp;quot;Replace Language&amp;quot; replaces the language requested by search engines (over HTTP_ACCEPT_LANGUAGE) in a given language.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The aim is it, for a multilingual website in Contao, to provide the search engine the result of the request in a fixed language. Reason for the development was, that search engine query often with the English language and the German pages (e.g. over &amp;quot;change language&amp;quot; links) only with a lower classification have been evaluated. &lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.0.0 / 3.0.0&lt;br /&gt;
| Version=from 2.9 / 3.1.0&lt;br /&gt;
| TLVersion=2.8.0 - 2.8.4&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]]&lt;br /&gt;
| ERLink=https://contao.org/en/extension-list/view/replacelanguage.html&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/replacelanguage/issues&lt;br /&gt;
| Comment=Version for Contao 3.1 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Replace_Language]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the &amp;quot;Replace Language&amp;quot; module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/replacelanguage/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [https://contao.org/en/extension-list/view/replacelanguage.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/replacelanguage&amp;quot;.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Replace Language is dependent on the module &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot;. It must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
In the back end, the module is enabled in &amp;quot;Settings&amp;quot;, and the language is defined there.&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Bot_Detection</id>
		<title>Bot Detection</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Bot_Detection"/>
				<updated>2013-09-08T22:02:28Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Bot_detection.jpg|right|No Bots!]]Bot Detection is a helper class for other extensions (Frontend) the need to detect whether the access is human or machine.&amp;lt;br /&amp;gt;&lt;br /&gt;
(Detection of Search Engines, Spider, Crawler, Bots, Harvester, ...) &lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.7.1 / 3.0.1&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.8&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/botdetection.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/botdetection/issues&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| Comment=Now on GitHub&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[de:Bot_Detection]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/botdetection/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/botdetection.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/botdetection&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The module Bot Detection provides three methods for detection.&amp;lt;br /&amp;gt;&lt;br /&gt;
A reliable detection is not possible. &amp;lt;br /&amp;gt;&lt;br /&gt;
It is to use two methods to detect this:&amp;lt;br /&amp;gt;&lt;br /&gt;
* User Agent&lt;br /&gt;
* IP adress (IPv4, IPv6 from version 1.4.0)&lt;br /&gt;
&lt;br /&gt;
The modul includes a method for the agent [[Bot_Detection#Method_BD_CheckBotAgent|BD_CheckBotAgent]] and one for the IP detection [[Bot_Detection#Method_BD_CheckBotIP|BD_CheckBotIP]].&amp;lt;br /&amp;gt;&lt;br /&gt;
These two methods return only &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot; and are only a rough search on strings and substrings to identify the most important bots.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Another method [[Bot_Detection#Method_BD_CheckBotAgentAdvanced|BD_CheckBotAgentAdvanced]] comes with an external configuration file for the user agent detection. As a result, it returns the short name of the bots or &amp;quot;false&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Method BD_CheckBotAgent==&lt;br /&gt;
The method BD_CheckBotAgent &amp;quot;searches in two steps to be completed as quickly as possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
Step 1 searches for substrings that appear in most search engines / bots in the name:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
'bot'&lt;br /&gt;
'spider'&lt;br /&gt;
'spyder'&lt;br /&gt;
'crawl'&lt;br /&gt;
'slurp'&lt;br /&gt;
'robo'&lt;br /&gt;
'yahoo'&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Step 2 then looks for other strings that usually follow the name of the search engine, such as:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
'altavista'&lt;br /&gt;
'archiver'&lt;br /&gt;
'inktomi'&lt;br /&gt;
'twiceler'&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The result is &amp;quot;true&amp;quot; or &amp;quot;false&amp;quot;. (&amp;quot;true&amp;quot; = search engine / bot found)&lt;br /&gt;
&lt;br /&gt;
==Method BD_CheckBotIP==&lt;br /&gt;
The bot from Google, MSN / Bing looking sometimes with the user agent from a browser.&amp;lt;br /&amp;gt;&lt;br /&gt;
To uncover these &amp;quot;undercover&amp;quot; search engines, you must be filtered by IP address.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
There is also configuration files in the ''config'' directory of the module: '''''bot-ip-list.txt''''' and '''''bot-ip-list-ipv6.txt'''''&amp;lt;br /&amp;gt;&lt;br /&gt;
Current content knows an IP address of a spider from Israel as well as network addresses for Google and MSN / Bing.&amp;lt;br /&amp;gt;&lt;br /&gt;
Additional IP addresses or networks can be entered in this file, but they are not then upgrade secure.&amp;lt;br /&amp;gt;&lt;br /&gt;
Therefore, it is better to post them in the localconfig.php as follows:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IP'][] = '192.168.1.2';&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IP'][] = '192.168.0.0/24';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
For IPv6 on this way:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IPV6'][] = '2001:0db8::1';&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_IPV6'][] = '2001:0db8:85a3:0800::/56';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Method BD_CheckBotAgentAdvanced==&lt;br /&gt;
The method BD_CheckBotAgentAdvanced &amp;quot;is controlled by an external configuration file to detect the user agent.&amp;lt;br /&amp;gt;&lt;br /&gt;
The result is the short name of the bots or &amp;quot;false&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The external configuration file is generated from known user agent information from search engines / bots and regularly renewed.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Note'''&amp;lt;br /&amp;gt;&lt;br /&gt;
This external DB differentiates between different types of search engines from a manufacturer.&amp;lt;br /&amp;gt;&lt;br /&gt;
For example, the return is not &amp;quot;Google&amp;quot;, but &amp;quot;Googlebot&amp;quot; or &amp;quot;Googlebot-Image&amp;quot; or &amp;quot;Googlebot-Mobile&amp;quot; and so on, depending on what was recognized.&amp;lt;br /&amp;gt;&lt;br /&gt;
These multiple name of a search engine are also available from other producers such as MSN, Yahoo, and so on.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Own or unknown user agent identifiers can be entered in the file '''/system/config/localconfig.php''':&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_AGENT'][] = array(&amp;quot;unitbot&amp;quot;,&amp;quot;UniBot from FHTW&amp;quot;);&lt;br /&gt;
$GLOBALS['BOTDETECTION']['BOT_AGENT'][] = array(&amp;quot;myprivat&amp;quot;,&amp;quot;My privat bot&amp;quot;);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The parameters are: short name in lower case, description.&lt;br /&gt;
&lt;br /&gt;
=Demo Modules=&lt;br /&gt;
Module Bot Detection has 2 frontend demo modules as a demo for the implementation in your own modules.&amp;lt;br /&amp;gt;&lt;br /&gt;
The using in the demo class is made by import.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$this-&amp;gt;import('ModuleBotDetection');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Frontend Demo 1==&lt;br /&gt;
Demo 1 tests with all three methods, the current IP and User Agent identifier and displays the results.&amp;lt;br /&amp;gt;&lt;br /&gt;
See example on the developer website - [http://www.contao.glen-langer.de/BD_Frontend_Demo_1.html Demo 1].&lt;br /&gt;
&lt;br /&gt;
==Frontend Demo 2==&lt;br /&gt;
Demo 2 makes available a form to check whether a user agent identifier from the module would be recognized as a bot.&amp;lt;br /&amp;gt;&lt;br /&gt;
These are called the two agent methods and displays the result.&amp;lt;br /&amp;gt;&lt;br /&gt;
See example on the developer website - [http://www.contao.glen-langer.de/BD_Frontend_Demo_2.html Demo 2].&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 21:42, 1 July 2011 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Visitors</id>
		<title>Visitors</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Visitors"/>
				<updated>2013-09-08T21:58:51Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg|right|Visitors]]This module allows you to count hits and visits of your website.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the display appears the hits and visits from the current day, as well as the respective total.&lt;br /&gt;
Statistic is also in the backend.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.8.2 / 3.1.4&lt;br /&gt;
| Version=from 2.19&lt;br /&gt;
| TLVersion=2.7 - 2.9 (see installation notes)&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]],[[xls_export|Excel 95 writer (xls_export)]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/visitors.en.html&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/visitors/issues&lt;br /&gt;
| Comment=Version for Contao 3.0 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Visitors]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Visitors module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported at GitHub: [https://github.com/BugBuster1701/visitors/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/visitors.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/visitors&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Visitors is dependent on the module &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; and &amp;quot;[[xls_export|Excel 95 writer (xls_export)]]&amp;quot;. They must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Note for older &amp;quot;TYPOlight/Contao&amp;quot; versions==&lt;br /&gt;
===Contao 2.9===&lt;br /&gt;
Users of Contao 2.9.x, please use Visitors Module Version 2.7.1 ([http://www.contao.org/extension-list/view/visitors.20070019.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use Visitors Module Version 1.7.2 ([http://www.contao.org/extension-list/view/visitors.10070029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use Visitors Module Version 1.4.1 ([http://www.contao.org/extension-list/view/visitors.10040019.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
==Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here. &lt;br /&gt;
*[[Visitors_Update_v1_to_v2|'''Visitors Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Overview=&lt;br /&gt;
The Visitors module contains two back end and one front end module.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Visitors&amp;quot; and &amp;quot;Visitor Statistics&amp;quot;, for the front end &amp;quot;Visitors&amp;quot;. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Visitors===&lt;br /&gt;
[[File:Visitors_en_backend_visitors.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors_en_backend_visitorstatistics.jpg]]&lt;br /&gt;
&lt;br /&gt;
shows in detail: (Click on image for higher resolution)&lt;br /&gt;
&amp;lt;gallery widths=&amp;quot;240&amp;quot; heights=&amp;quot;180&amp;quot; caption=&amp;quot;Visitors Statistics&amp;quot;&amp;gt;&lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details.jpg|Visitors Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_browser.jpg|Browser Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_searchengine.jpg|Search Engine Referer Statistics &lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Front end==&lt;br /&gt;
For the front end are provided two CSS files as an example:&lt;br /&gt;
*mod_visitors_fe.css for the normal output, line by line&lt;br /&gt;
*mod_visitors_fe_horizontal.css for the horizontal output&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics, horizontal===&lt;br /&gt;
[[File:Visitors-package-fe-horizontal-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The first one creates a new visitor category via the menu item &amp;quot;visitors&amp;quot;. In this then the counter.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Here are the steps, each with the default values. [[Visitors#Technical_Details|Technical details]] will be explained later.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Visitors'. In the main area click on the button 'New category'.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_category_new.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Create new counter==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, either click the 'New counter' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_counter_new.jpg]]&lt;br /&gt;
&lt;br /&gt;
Now, some information are needed: :&lt;br /&gt;
* Name, (is displayed as a heading on the numbers).&lt;br /&gt;
* Start date, optional, only for display in font end&lt;br /&gt;
* Optional: 'Initial value of visitors/hits'&lt;br /&gt;
* Optional: 'Visitors per day' &lt;br /&gt;
* Activate &amp;quot;Published&amp;quot;&lt;br /&gt;
Then you click on &amp;quot;Save and close&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Front end Module==&lt;br /&gt;
A new front-end module is create with:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Add module (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add module (TYPOlight 2.8.x)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
At first, enter the title, and only then select in &amp;quot;Module type&amp;quot;: 'Miscellaneous'-'Visitors'. It changes the form fields.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Visitors category' now select the previously created category, then 'Save and close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer) &lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x) &lt;br /&gt;
&lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left) &lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
As mentioned above, are provided two CSS file for presentation.&amp;lt;br /&amp;gt;&lt;br /&gt;
For the first tests you should copy the file &amp;lt;code&amp;gt;mod_visitors_fe.css&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;/system/modules/visitors&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;/tl_files&amp;lt;/code&amp;gt; . Then import them over the back end and activate it in the layout.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category, in the counter denifinition and in the constructed front end module feasible / adjustable. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the category==&lt;br /&gt;
===Counting mode===&lt;br /&gt;
From version 1.6.0, Counting mode is selectable, server side or browser side, by category:&lt;br /&gt;
* Load counting, server side by Contao&lt;br /&gt;
* Read counting, client side by browser&lt;br /&gt;
** (only on Contao cacheMode: server and browser cache / only browser cache)&lt;br /&gt;
&lt;br /&gt;
With &amp;quot;Read counting&amp;quot; can be counted when the page is in the browser cache and will be called from it.&lt;br /&gt;
The system setting &amp;quot;Cache mode&amp;quot; will be respected.&lt;br /&gt;
&lt;br /&gt;
{{Note|The display of current values will continue but only if the page is requested from the server.}}&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the counter denifinition==&lt;br /&gt;
===Block time===&lt;br /&gt;
The block time is in seconds. After interruption of the requests at this time, an access is counted as an additional visitor.&amp;lt;br /&amp;gt;&lt;br /&gt;
Pre-entered are 1800 seconds, so that is 30 minutes.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Technical Details in the front end module definition==&lt;br /&gt;
===Templates===&lt;br /&gt;
Each module can be assigned its own Template. Four different templates are included.&lt;br /&gt;
* mod_visitors_fe_all&lt;br /&gt;
** All fields are included. (see example above)&lt;br /&gt;
* mod_visitors_fe_hits&lt;br /&gt;
** Here the visit rows were removed.&lt;br /&gt;
* mod_visitors_fe_visits&lt;br /&gt;
** Here the hit rows were removed.&lt;br /&gt;
* mod_visitors_fe_invisible.tpl&lt;br /&gt;
** Here, nothing is displayed. This template is used for a pure counting.&lt;br /&gt;
&lt;br /&gt;
For own Templates, the template files must start with &amp;quot;mod_visitors_fe_&amp;quot; and end with &amp;quot;.tpl&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Show to guests only===&lt;br /&gt;
Hide the module if a member (front end user) is logged in. &lt;br /&gt;
&lt;br /&gt;
===Protect module===&lt;br /&gt;
Show the module to certain member groups only.&lt;br /&gt;
&lt;br /&gt;
===No counting for this HTTP_USER_AGENT partial identifier===&lt;br /&gt;
You can set a custom UserAgent String in your browser and in the visitors module configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Module Name (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Module Name (TYPOlight 2.8.x)&lt;br /&gt;
In the field: &amp;quot;No counting for this HTTP_USER_AGENT partial identifier&amp;quot;, you can enter a unique identifier.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: CTISOK&amp;lt;br /&amp;gt;&lt;br /&gt;
Save it.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, change the User Agent String of Mozilla Firefox:&amp;lt;br /&amp;gt;&lt;br /&gt;
# Type '''about:config''' in the Mozilla Firefox address bar and press ENTER,&lt;br /&gt;
# Type '''general.useragent.extra.firefox''' in the Filter bar,&lt;br /&gt;
# Double-click on the returned Firefox setting, where you can change a user agent string to overwrite the default. &lt;br /&gt;
# Add her &amp;quot;CTISOK&amp;quot; separated by space, e.g. &amp;quot;Firefox/3.5.2 CTISOK&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can check your new User Agent String , type '''about:''' + ENTER in the Mozilla Firefox address bar and press ENTER, see last row.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For other browsers, see:&lt;br /&gt;
[http://www.walkernews.net/2007/07/05/how-to-change-user-agent-string/ walkernews.net - how to change user agent string]&lt;br /&gt;
{{Hint|This does not work anymore in Firefox 4.  Alternatively, use the add-on: [https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher/ User-Agent-Switcher]}}&lt;br /&gt;
&lt;br /&gt;
=Insert-Tags=&lt;br /&gt;
==Show the values==&lt;br /&gt;
From version 1.2.0 there is Insert-Tags to show the values.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::name}}&lt;br /&gt;
 {{visitors::catid::online}}&lt;br /&gt;
 {{visitors::catid::start}}&lt;br /&gt;
 {{visitors::catid::totalvisit}}&lt;br /&gt;
 {{visitors::catid::totalhit}}&lt;br /&gt;
 {{visitors::catid::todayvisit}}&lt;br /&gt;
 {{visitors::catid::todayhit}}&lt;br /&gt;
 {{visitors::catid::averagevisits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
From version 1.5.0 and from TYPOlight 2.8, Insert-Tags can be extended with prefix 'cache_'. Thus, these then cache resistant.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::name}}&lt;br /&gt;
 ...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The counting is continued through the module! Who wants to use to display the insert tags, the module continues to need, but only to count. With the templates mod_visitors_fe_invisible the module may be invisible, if desired.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
To determine the category ID, go into the category overview of the module with your mouse over the &amp;quot;i&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 2.3.1, the ID is shown right behind the category name.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-category.jpg|Visitor category ID]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The tooltip displays the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
Or click on the &amp;quot;i&amp;quot;, in the following site is in the first line the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
For category ID = 1 that would be like that:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::1::online}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Count==&lt;br /&gt;
An alternative to &amp;quot;counting only&amp;quot; would be to use an Insert-Tag. From version 1.5.0 there is another Insert-Tag. The module itself uses this as well:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::count}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Example for installation in an article (for category ID = 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span style=&amp;quot;width:0px;height:0px;&amp;quot;&amp;gt;{{cache_visitors::1::count}}&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Caution|It must be noticed, that the insert-tag for the count will be installed at first on the page so that the counting is carried out before the identification of the values.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==More Insert-Tags==&lt;br /&gt;
From version 2.1.0, there ist Insert-Tags for display the values of the day with the most visitors.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::bestday::date}}   - Day (Date) with the most visitors&lt;br /&gt;
 {{visitors::catid::bestday::visits}} - Number of visitors of the day with most visitors&lt;br /&gt;
 {{visitors::catid::bestday::hits}}   - Number of hits of the day with most visitors&lt;br /&gt;
or&lt;br /&gt;
 {{cache_visitors::catid::bestday::date}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::visits}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::hits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The &amp;quot;date&amp;quot; insert-tag has an optional parameter to format the date output. (m.d.Y , Y-m-d, etc.)&amp;lt;br /&amp;gt;&lt;br /&gt;
The system setting is used as default. As a separator, a &amp;quot;::&amp;quot; are used.&amp;lt;br /&amp;gt;&lt;br /&gt;
A complete example (with category 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 Best Day: {{visitors::1::bestday::date::j. F Y}} with {{visitors::1::bestday::visits}} visitors &lt;br /&gt;
(and {{visitors::1::bestday::hits}} hits)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
results:&lt;br /&gt;
 Best Day: 31. August 2010 with 25 visitors (and 123 hits)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Specific feature=&lt;br /&gt;
==No counting==&lt;br /&gt;
No front-end call is counted when one is logged on at the same time in the back end.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visitors per day: Ø = 0==&lt;br /&gt;
The average value per day will be calculated for each full calendar day.&amp;lt;br /&amp;gt;&lt;br /&gt;
So, having only one day before a counting or a counting of the current day, no meaningful value can be calculated.&amp;lt;br /&amp;gt;&lt;br /&gt;
(average = number visitors)&amp;lt;br /&amp;gt;&lt;br /&gt;
In these cases appears &amp;quot;0&amp;quot;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Bot Detection off==&lt;br /&gt;
Who wants to count the hits from bots and search engines can switch off the bot detection. This is done by the file localconfig.php.&lt;br /&gt;
{{Caution|This applies to all Visitors modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after: ### INSTALL SCRIPT STOP ### ) switching off the bot detection:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_visitors_bot_check'] = false;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:42, 12 December 2010 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Bot_Statistic</id>
		<title>Bot Statistic</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Bot_Statistic"/>
				<updated>2013-08-11T21:27:19Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bot Statistics counts the requests (visits, pages) of the bots.&amp;lt;br /&amp;gt;&lt;br /&gt;
To identify the bots, the module is used [[Bot Detection|Bot Detection]] (necessary dependence).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://contao.glen-langer.de&lt;br /&gt;
| ExtVersion=0.5.2 / 3.1.0 &lt;br /&gt;
| Version=ab 2.10&lt;br /&gt;
| TLVersion=no&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]]&lt;br /&gt;
| ERLink=http://www.contao.org/de/extension-list/view/botstatistics.de.html&lt;br /&gt;
| DonateLink=&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/botstatistics/issues&lt;br /&gt;
| Comment=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[de:Bot_Statistik]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
After installation, create a front end module of type &amp;quot;Bot Statistics&amp;quot; and install this in the layout, best in the footer. The module only returns a HTML comment, and therefore does not affect the layout.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In the backend, there is in &amp;quot;System&amp;quot; the new item &amp;quot;Bot Statistics&amp;quot;.&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Dlstats</id>
		<title>Dlstats</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Dlstats"/>
				<updated>2013-08-10T19:19:55Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Counts the number of file downloads&lt;br /&gt;
&lt;br /&gt;
* Download statistics for the standard content elements Download and Downloads&lt;br /&gt;
* Count number of downloads per file plus latest download timestamp&lt;br /&gt;
* Optionally log every single download with timestamp, IP and username.&lt;br /&gt;
* Insert-Tag for number of downloads in the frontend (from 2.1.0)&lt;br /&gt;
* Ignore certain IPs (define itself, from 2.1.0)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.4.1 / 3.4.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.7.6 - 2.8.4&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/dlstats.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/dlstats/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:dlstats]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao. On manual installation, call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''For manual installation, please note that the module &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; must be installed.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
Go to the Contao Settings and switch on the logging, either only counting the number of downloads per file, or optionally also log each download with timestamp and IP.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''For dlstats 2.1.x:''' In the settings you can be deactivated the Anonymize IP function, it must be the admin.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''From dlstats 2.2.0:''' IP addresses anonymous: &amp;quot;yes/no&amp;quot; is now controlled by Contao itself.&amp;lt;br /&amp;gt;&lt;br /&gt;
(System - Settings - Privacy settings - Anonymize IP addresses)&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Use the content element File Download or File Downloads for all downloaded files you want to have counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
After downloading a file you will find the statistics under Content - Download Stats. &lt;br /&gt;
&lt;br /&gt;
==Using Insert-Tag==&lt;br /&gt;
The Insert-Tag &amp;quot;cache_dlstats::total downloads::...&amp;quot; supports both, the source of the file (relative path + file name), as well as in connection with the article alias and how it generates for ce_download and ce_downloads. Therefore, the use is well used in the templates of the two CEs, see examples. Return is only the number of downloads as a number.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_dlstats::totaldownloads::tl_files/cdc2010.pdf}}&lt;br /&gt;
{{cache_dlstats::totaldownloads::CDC_2010.html?file=tl_files/cdc2010.pdf}}&lt;br /&gt;
&lt;br /&gt;
// in ce_download template:&lt;br /&gt;
{{cache_dlstats::totaldownloads::&amp;lt;?php echo $this-&amp;gt;href; ?&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
// in ce_downloads template:&lt;br /&gt;
{{cache_dlstats::totaldownloads::&amp;lt;?php echo $file['href']; ?&amp;gt;}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ignore certain IPs==&lt;br /&gt;
If any downloads from certain IP addresses should not be counted, this can be defined in the localconfig.php as follows:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV4'][] = '192.168.1.2';&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV4'][] = '192.168.0.0/24';&lt;br /&gt;
//respectively&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV6'][] = '2001:0db8::1';&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV6'][] = '2001:0db8:85a3:0800::/56';  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Notice==&lt;br /&gt;
* Simple links to files will not be counted as downloads!&lt;br /&gt;
* If you are logged in the backend, your download is not counted. (from 2.1.0)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 20:07, 1 April 2013 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Integrity_Check</id>
		<title>Integrity Check</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Integrity_Check"/>
				<updated>2013-06-26T22:46:47Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:check_overview_en.jpg|right|Integrity Check]] Integrity check for some files from Contao (Detection of hacked Contao installations.)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.3.5 / 3.1.2 &lt;br /&gt;
| Version=from 2.10.0&lt;br /&gt;
| ERLink=http://www.contao.org/en/extension-list/view/integrity_check.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/integrity_check/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:Integrity_Check]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
In Contao Forum, reports came about changed files, which malicious code was attached.&amp;lt;br /&amp;gt;&lt;br /&gt;
The problem itself can not be attributed to a vulnerability in Contao, but will be distributed over other ways of the server, eg vulnerable WP plugins, hacked servers, hacked FTP logins, etc.&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/integrity_check/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/en/extension-list/view/integrity_check.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/integrity_check&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Example of an Infection=&lt;br /&gt;
How now looks like such a hack?&amp;lt;br /&amp;gt;&lt;br /&gt;
The attachment to the file index.php looked like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
#c3284d#&lt;br /&gt;
echo(gzinflate(base64_decode(&amp;quot;ZZBNisMwDIX.......T7oD&amp;quot;)));&lt;br /&gt;
#/c3284d# &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function frmAdd() { &lt;br /&gt;
var ifrm = document.createElement('iframe'); &lt;br /&gt;
....&lt;br /&gt;
}; &lt;br /&gt;
window.onload = frmAdd; &lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Site one the black list==&lt;br /&gt;
When you does not react fast enough, and Google notices this, the page is set to the &amp;quot;black list&amp;quot;. Browsers like Firefox use this to warn against unauthorized access to it. It looks like this:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:site_on_black_list_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Function of the module=&lt;br /&gt;
In the current version, the most important PHP files are checked for modifications.&amp;lt;br /&amp;gt;&lt;br /&gt;
This files will be checked:&lt;br /&gt;
* index.php&lt;br /&gt;
* cron.php (from version 1.1.0)&lt;br /&gt;
* contao/index.php&lt;br /&gt;
* contao/main.php&lt;br /&gt;
&lt;br /&gt;
==Time of verification==&lt;br /&gt;
This test is performed automatically (Contao-Cron), see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
==Detection==&lt;br /&gt;
The check is identical to the official Contao check tool, that means via MD5 checksums. Checksums are available for comparison for Contao from 2.10.0.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 1.1.0, check via timestamps is possible.&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
In the backend, you can see the results: System - System Log. Normally if everything is OK, no message appears. In its own module debug mode then there is only a message::&lt;br /&gt;
* Checking files for integrity is completed.&lt;br /&gt;
If modifications were detected, a message is generated for each file:&lt;br /&gt;
* Integrity status for file index.php is: Corrupt [MD5]&lt;br /&gt;
* Integrity status for cron.php file is corrupted [Timestamp]&lt;br /&gt;
** It was checked by time stamp, possible from version 1.1.0.&lt;br /&gt;
An information is available via System Log and mail, see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
==Creating integrity check==&lt;br /&gt;
The integrity check need a check plan. This can be used for any of the files for the time, the art of check and the action.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Time intervals===&lt;br /&gt;
* in Contao 2.10: daily, weekly, monthly&lt;br /&gt;
* in Contao 2.11: hourly, daily, weekly, monthly&lt;br /&gt;
* in Contao 3.0: minutely(manual), hourly, daily, weekly, monthly&lt;br /&gt;
&lt;br /&gt;
===Art of check===&lt;br /&gt;
The detection of a change in the file is possible via:&lt;br /&gt;
* MD5 checksum&lt;br /&gt;
* Timestamps&lt;br /&gt;
&lt;br /&gt;
===Action===&lt;br /&gt;
* System log: Message in the system log (backend)&lt;br /&gt;
* Mail to Admin: a mail is sent to the admin of the Contao installation.&lt;br /&gt;
** It will then creates also automatically  an entry in the System log (from version 1.1.0)&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
===System-Log und Mail===&lt;br /&gt;
From version 1.1.0 automatically gets an entry in the system log when a mail is sent.&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
In Version 1.0.0, if you want to have both types of information, you creates the check twice, each with one of the actions: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_2_en.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Here is an example only for the index.php. This is of course also for the other files.&lt;br /&gt;
&lt;br /&gt;
===There can be only one!===&lt;br /&gt;
It is possible in the integrity check overview to create multiple checks. It basically makes no sense. Therefore, it is ensured that there can be only an integrity check, which is activated. If you switch a new integrity check active, all other existing tests are automatically switched inactive.&lt;br /&gt;
&lt;br /&gt;
==Protection against infection==&lt;br /&gt;
Well, a general protection is probably not possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
But there is a possibility that the malicious code is not executed. There is a ticket to GitHub, it is accepted for Contao 3. Here is the short info for Contao 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
Edit the index.php, go to the method &amp;quot;run&amp;quot; in the last line, should be the line of 269th (2.11.5) Before the curly bracket insert an exit; or insert a row for it. Here is from line 268 as an example:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
change to:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
        exit;&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Note: Now, the Integrity Check Tool as well as the Contao Check Tool report a change. Use the check vie timestamp now.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:46, 27 June 2013 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Xing</id>
		<title>Xing</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Xing"/>
				<updated>2013-06-05T19:58:38Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: /* Forum */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Mod_xing_team.tpl.jpg|right|Xing Team]]Normally, you need not a module, because it is just a linked image. &amp;lt;br /&amp;gt;&lt;br /&gt;
But my aim was:&lt;br /&gt;
*to select the image &lt;br /&gt;
*to determine the position&lt;br /&gt;
*several of them on one side, or distributed on several domains.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
First, categories are created, in these categories then the XING profile(s). With the XING-Lister, you can select the category that are used. Each front-end module can be assigned their own template. Three different templates are included. (see &amp;quot;[[Xing#Using|Using]]&amp;quot;)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Thus, it is then possible, the categories to distribute on several layouts or several domains. Are there more than one profile in a category, all profiles will be shown from this category. Thus it would be e.g. possible to show the profiles of a whole team.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.2.1 / 3.1.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.7.0 - 2.8.4 (see Installations notes)&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/gl_xing.html&lt;br /&gt;
| DonateLink=Cappuccino &lt;br /&gt;
| TrackerLink=http://dev.typolight-forge.org/projects/xing/issues&lt;br /&gt;
| Comment=Version for Contao 3.1 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Xing]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Xing module will be answered in forum: &amp;lt;br /&amp;gt;&lt;br /&gt;
English: [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
German: [http://www.contao-community.de/showthread.php?4225 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/gl_xing/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/gl_xing.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/gl_xing&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Note for older &amp;quot;TYPOlight&amp;quot; versions==&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use XING module 1.1.1! ([http://www.contao.org/extension-list/view/gl_xing.10010019.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use XING module 1.0.4! ([http://www.contao.org/extension-list/view/gl_xing.10000049.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Xing Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here.&lt;br /&gt;
*[[Xing_Update_v1_to_v2|'''Xing Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The Xing module contains a back end and a front end module. &amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Xing&amp;quot;, for the front end &amp;quot;Xing list&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Xing===&lt;br /&gt;
[[File:Xing_en_backend.jpg|Xing Module Backend]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Frontend==&lt;br /&gt;
For the front end module, a CSS file is included as an example:&lt;br /&gt;
*mod_xing_fe.css for a normal, line-by-line output.&lt;br /&gt;
&lt;br /&gt;
===Xing Banner===&lt;br /&gt;
The simplest variant, only the linked image:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Module_Xing_List.tpl.jpg|Xing Banner]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
The more complex variant, several Xing banner of a team, with team name and names of team members.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Module_Xing_Team.jpg|Xing Team]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
First, create a new category. In the category create the Xing profile(s).&amp;lt;br /&amp;gt;&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Here are the steps, each with the default values. [[Xing#Technical_Details|Technical details]] will be explained later.&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Xing'. In the main area click on the button 'New category'. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Xing_en_backend_category.jpg|Xing - New category]]&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
==Create Xing Profile==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, either click the 'New profile' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Xing_en_backend_profile_new.jpg|Xing - neues Profil]]&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, some information are needed:&lt;br /&gt;
* XING Profile, e.g.: John_Doe, explanations are provided in the help. (Help Wizard)&lt;br /&gt;
* XING Layout , explanations are provided in the help. (Help Wizard)&lt;br /&gt;
* activate &amp;quot;Published&amp;quot;&lt;br /&gt;
Then you click on &amp;quot;Save and close&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Front end Module==&lt;br /&gt;
A new front-end module is create with:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; (Front end) Modules -&amp;gt; Add module (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add modules (TYPOlight 2.8.x and older)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
At first, enter the title, and only then select in &amp;quot;Module type&amp;quot;: 'Xing' - 'Xing list'. It changes the form fields.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Xing Category' now select the previously created category, then 'Save and close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x)&lt;br /&gt;
&lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left)&lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
As mentioned above, is provided a CSS file for presentation.&amp;lt;br /&amp;gt;&lt;br /&gt;
For the first tests you should copy the file mod_xing_fe.css from '''/system/modules/gl_xing''' to '''/tl_files'''.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then import them over the back end and activate it in the layout.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category and in the constructed front end module feasible / adjustable.&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the category==&lt;br /&gt;
===Team Profile===&lt;br /&gt;
In the category, you can create multiple Xing profiles.&amp;lt;br &amp;gt;&lt;br /&gt;
Use would be for example an overview of all team members.&amp;lt;br /&amp;gt;&lt;br /&gt;
Depending on the template selection in front-end module, the category name is the team name.&amp;lt;br /&amp;gt;&lt;br /&gt;
See the next section, as it could look like then.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the front end module definition==&lt;br /&gt;
===XING Template===&lt;br /&gt;
Is defined in the category only one Xing profile, the following two templates are useful:&lt;br /&gt;
* mod_xing_list, it shows only the linked graphic&amp;lt;br /&amp;gt;[[File:Module_Xing_List.tpl.jpg‎|mod_xing_list]]&lt;br /&gt;
* mod_xing_list_profile, it shows the linked graphic, including the profile name (underscore is removed)&amp;lt;br /&amp;gt;[[File:Module_Xing_Profile.tpl.jpg‎|mod_xing_profile]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
If several Xing profiles defined in the category to represent a team, the following two templates are useful:&lt;br /&gt;
* mod_xing_list_profile, it displays the graphics linked with each other, each including the profile name (underscore is removed)&amp;lt;br /&amp;gt;[[File:Module_Xing_Profile-2.tpl.jpg‎|mod_xing_profile]] &lt;br /&gt;
* mod_xing_list_team, as mod_xing_list_profile, in addition displays above the first graphic the team name (category name)&amp;lt;br /&amp;gt;[[File:Module_Xing_Team.jpg‎|mod_xing_team]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can save your own templates in the folder /templates or in the template folder of the used theme.&amp;lt;br /&amp;gt;&lt;br /&gt;
Template names must begin with '''''mod_xing_list''''' and must have the suffix '''''.tpl''''' / '''''.xhtml''''' / '''''.html5'''''. ( e.g.: '''''mod_xing_list_club66.xhtml''''' )&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
===Company Template===&lt;br /&gt;
For a company profile, XING has a different destination URL. Therefore it was created a custom template.&lt;br /&gt;
Please select the template &amp;quot;mod_xing_list_company&amp;quot; for a company profile.&lt;br /&gt;
&lt;br /&gt;
===Show to guests only===&lt;br /&gt;
Hide the module if a member is logged in.&lt;br /&gt;
&lt;br /&gt;
===Protect module===&lt;br /&gt;
Show the module to certain member groups only.&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Xing</id>
		<title>Xing</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Xing"/>
				<updated>2013-06-05T19:57:34Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Mod_xing_team.tpl.jpg|right|Xing Team]]Normally, you need not a module, because it is just a linked image. &amp;lt;br /&amp;gt;&lt;br /&gt;
But my aim was:&lt;br /&gt;
*to select the image &lt;br /&gt;
*to determine the position&lt;br /&gt;
*several of them on one side, or distributed on several domains.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
First, categories are created, in these categories then the XING profile(s). With the XING-Lister, you can select the category that are used. Each front-end module can be assigned their own template. Three different templates are included. (see &amp;quot;[[Xing#Using|Using]]&amp;quot;)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Thus, it is then possible, the categories to distribute on several layouts or several domains. Are there more than one profile in a category, all profiles will be shown from this category. Thus it would be e.g. possible to show the profiles of a whole team.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.2.1 / 3.1.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.7.0 - 2.8.4 (see Installations notes)&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/gl_xing.html&lt;br /&gt;
| DonateLink=Cappuccino &lt;br /&gt;
| TrackerLink=http://dev.typolight-forge.org/projects/xing/issues&lt;br /&gt;
| Comment=Version for Contao 3.1 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Xing]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Xing module will be answered in forum: &amp;lt;br /&amp;gt;&lt;br /&gt;
English: [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
German: [http://www.contao-community.de/showthread.php?4225 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [http://dev.typolight-forge.org/projects/xing/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/gl_xing.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/gl_xing&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Note for older &amp;quot;TYPOlight&amp;quot; versions==&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use XING module 1.1.1! ([http://www.contao.org/extension-list/view/gl_xing.10010019.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use XING module 1.0.4! ([http://www.contao.org/extension-list/view/gl_xing.10000049.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Xing Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here.&lt;br /&gt;
*[[Xing_Update_v1_to_v2|'''Xing Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The Xing module contains a back end and a front end module. &amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Xing&amp;quot;, for the front end &amp;quot;Xing list&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Xing===&lt;br /&gt;
[[File:Xing_en_backend.jpg|Xing Module Backend]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Frontend==&lt;br /&gt;
For the front end module, a CSS file is included as an example:&lt;br /&gt;
*mod_xing_fe.css for a normal, line-by-line output.&lt;br /&gt;
&lt;br /&gt;
===Xing Banner===&lt;br /&gt;
The simplest variant, only the linked image:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Module_Xing_List.tpl.jpg|Xing Banner]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
The more complex variant, several Xing banner of a team, with team name and names of team members.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Module_Xing_Team.jpg|Xing Team]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
First, create a new category. In the category create the Xing profile(s).&amp;lt;br /&amp;gt;&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Here are the steps, each with the default values. [[Xing#Technical_Details|Technical details]] will be explained later.&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Xing'. In the main area click on the button 'New category'. &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Xing_en_backend_category.jpg|Xing - New category]]&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
==Create Xing Profile==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, either click the 'New profile' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Xing_en_backend_profile_new.jpg|Xing - neues Profil]]&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, some information are needed:&lt;br /&gt;
* XING Profile, e.g.: John_Doe, explanations are provided in the help. (Help Wizard)&lt;br /&gt;
* XING Layout , explanations are provided in the help. (Help Wizard)&lt;br /&gt;
* activate &amp;quot;Published&amp;quot;&lt;br /&gt;
Then you click on &amp;quot;Save and close&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Front end Module==&lt;br /&gt;
A new front-end module is create with:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; (Front end) Modules -&amp;gt; Add module (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add modules (TYPOlight 2.8.x and older)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
At first, enter the title, and only then select in &amp;quot;Module type&amp;quot;: 'Xing' - 'Xing list'. It changes the form fields.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Xing Category' now select the previously created category, then 'Save and close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x)&lt;br /&gt;
&lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left)&lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
As mentioned above, is provided a CSS file for presentation.&amp;lt;br /&amp;gt;&lt;br /&gt;
For the first tests you should copy the file mod_xing_fe.css from '''/system/modules/gl_xing''' to '''/tl_files'''.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then import them over the back end and activate it in the layout.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category and in the constructed front end module feasible / adjustable.&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the category==&lt;br /&gt;
===Team Profile===&lt;br /&gt;
In the category, you can create multiple Xing profiles.&amp;lt;br &amp;gt;&lt;br /&gt;
Use would be for example an overview of all team members.&amp;lt;br /&amp;gt;&lt;br /&gt;
Depending on the template selection in front-end module, the category name is the team name.&amp;lt;br /&amp;gt;&lt;br /&gt;
See the next section, as it could look like then.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the front end module definition==&lt;br /&gt;
===XING Template===&lt;br /&gt;
Is defined in the category only one Xing profile, the following two templates are useful:&lt;br /&gt;
* mod_xing_list, it shows only the linked graphic&amp;lt;br /&amp;gt;[[File:Module_Xing_List.tpl.jpg‎|mod_xing_list]]&lt;br /&gt;
* mod_xing_list_profile, it shows the linked graphic, including the profile name (underscore is removed)&amp;lt;br /&amp;gt;[[File:Module_Xing_Profile.tpl.jpg‎|mod_xing_profile]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
If several Xing profiles defined in the category to represent a team, the following two templates are useful:&lt;br /&gt;
* mod_xing_list_profile, it displays the graphics linked with each other, each including the profile name (underscore is removed)&amp;lt;br /&amp;gt;[[File:Module_Xing_Profile-2.tpl.jpg‎|mod_xing_profile]] &lt;br /&gt;
* mod_xing_list_team, as mod_xing_list_profile, in addition displays above the first graphic the team name (category name)&amp;lt;br /&amp;gt;[[File:Module_Xing_Team.jpg‎|mod_xing_team]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can save your own templates in the folder /templates or in the template folder of the used theme.&amp;lt;br /&amp;gt;&lt;br /&gt;
Template names must begin with '''''mod_xing_list''''' and must have the suffix '''''.tpl''''' / '''''.xhtml''''' / '''''.html5'''''. ( e.g.: '''''mod_xing_list_club66.xhtml''''' )&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
===Company Template===&lt;br /&gt;
For a company profile, XING has a different destination URL. Therefore it was created a custom template.&lt;br /&gt;
Please select the template &amp;quot;mod_xing_list_company&amp;quot; for a company profile.&lt;br /&gt;
&lt;br /&gt;
===Show to guests only===&lt;br /&gt;
Hide the module if a member is logged in.&lt;br /&gt;
&lt;br /&gt;
===Protect module===&lt;br /&gt;
Show the module to certain member groups only.&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Integrity_Check</id>
		<title>Integrity Check</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Integrity_Check"/>
				<updated>2013-05-21T23:24:35Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:check_overview_en.jpg|right|Integrity Check]] Integrity check for some files from Contao (Detection of hacked Contao installations.)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.3.5 / 3.1.1  &lt;br /&gt;
| Version=from 2.10.0&lt;br /&gt;
| ERLink=http://www.contao.org/en/extension-list/view/integrity_check.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/integrity_check/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:Integrity_Check]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
In Contao Forum, reports came about changed files, which malicious code was attached.&amp;lt;br /&amp;gt;&lt;br /&gt;
The problem itself can not be attributed to a vulnerability in Contao, but will be distributed over other ways of the server, eg vulnerable WP plugins, hacked servers, hacked FTP logins, etc.&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/integrity_check/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/en/extension-list/view/integrity_check.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/integrity_check&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Example of an Infection=&lt;br /&gt;
How now looks like such a hack?&amp;lt;br /&amp;gt;&lt;br /&gt;
The attachment to the file index.php looked like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
#c3284d#&lt;br /&gt;
echo(gzinflate(base64_decode(&amp;quot;ZZBNisMwDIX.......T7oD&amp;quot;)));&lt;br /&gt;
#/c3284d# &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function frmAdd() { &lt;br /&gt;
var ifrm = document.createElement('iframe'); &lt;br /&gt;
....&lt;br /&gt;
}; &lt;br /&gt;
window.onload = frmAdd; &lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Site one the black list==&lt;br /&gt;
When you does not react fast enough, and Google notices this, the page is set to the &amp;quot;black list&amp;quot;. Browsers like Firefox use this to warn against unauthorized access to it. It looks like this:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:site_on_black_list_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Function of the module=&lt;br /&gt;
In the current version, the most important PHP files are checked for modifications.&amp;lt;br /&amp;gt;&lt;br /&gt;
This files will be checked:&lt;br /&gt;
* index.php&lt;br /&gt;
* cron.php (from version 1.1.0)&lt;br /&gt;
* contao/index.php&lt;br /&gt;
* contao/main.php&lt;br /&gt;
&lt;br /&gt;
==Time of verification==&lt;br /&gt;
This test is performed automatically (Contao-Cron), see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
==Detection==&lt;br /&gt;
The check is identical to the official Contao check tool, that means via MD5 checksums. Checksums are available for comparison for Contao from 2.10.0.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 1.1.0, check via timestamps is possible.&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
In the backend, you can see the results: System - System Log. Normally if everything is OK, no message appears. In its own module debug mode then there is only a message::&lt;br /&gt;
* Checking files for integrity is completed.&lt;br /&gt;
If modifications were detected, a message is generated for each file:&lt;br /&gt;
* Integrity status for file index.php is: Corrupt [MD5]&lt;br /&gt;
* Integrity status for cron.php file is corrupted [Timestamp]&lt;br /&gt;
** It was checked by time stamp, possible from version 1.1.0.&lt;br /&gt;
An information is available via System Log and mail, see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
==Creating integrity check==&lt;br /&gt;
The integrity check need a check plan. This can be used for any of the files for the time, the art of check and the action.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Time intervals===&lt;br /&gt;
* in Contao 2.10: daily, weekly, monthly&lt;br /&gt;
* in Contao 2.11: hourly, daily, weekly, monthly&lt;br /&gt;
* in Contao 3.0: minutely(manual), hourly, daily, weekly, monthly&lt;br /&gt;
&lt;br /&gt;
===Art of check===&lt;br /&gt;
The detection of a change in the file is possible via:&lt;br /&gt;
* MD5 checksum&lt;br /&gt;
* Timestamps&lt;br /&gt;
&lt;br /&gt;
===Action===&lt;br /&gt;
* System log: Message in the system log (backend)&lt;br /&gt;
* Mail to Admin: a mail is sent to the admin of the Contao installation.&lt;br /&gt;
** It will then creates also automatically  an entry in the System log (from version 1.1.0)&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
===System-Log und Mail===&lt;br /&gt;
From version 1.1.0 automatically gets an entry in the system log when a mail is sent.&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
In Version 1.0.0, if you want to have both types of information, you creates the check twice, each with one of the actions: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_2_en.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Here is an example only for the index.php. This is of course also for the other files.&lt;br /&gt;
&lt;br /&gt;
===There can be only one!===&lt;br /&gt;
It is possible in the integrity check overview to create multiple checks. It basically makes no sense. Therefore, it is ensured that there can be only an integrity check, which is activated. If you switch a new integrity check active, all other existing tests are automatically switched inactive.&lt;br /&gt;
&lt;br /&gt;
==Protection against infection==&lt;br /&gt;
Well, a general protection is probably not possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
But there is a possibility that the malicious code is not executed. There is a ticket to GitHub, it is accepted for Contao 3. Here is the short info for Contao 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
Edit the index.php, go to the method &amp;quot;run&amp;quot; in the last line, should be the line of 269th (2.11.5) Before the curly bracket insert an exit; or insert a row for it. Here is from line 268 as an example:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
change to:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
        exit;&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Note: Now, the Integrity Check Tool as well as the Contao Check Tool report a change. Use the check vie timestamp now.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 20:06, 1 April 2013 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Banner</id>
		<title>Banner</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Banner"/>
				<updated>2013-04-28T15:02:51Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
A banner advertisement module with a simple form of weighting.&amp;lt;br /&amp;gt;&lt;br /&gt;
In Backend you can see banner view and banner click statistics. (System Menu)&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
IP-based ReClick blocker was integrated (5 minutes). Forwarding functioned, but isn't counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
Similarly, the views within a period not re-counted if the same banner displayed. (10 minutes)&amp;lt;br /&amp;gt;&lt;br /&gt;
The amount of time to block the view count can be changed.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
By using the module &amp;quot;[[Bot Detection |Bot Detection]]&amp;quot; requests from bots and search engines are not counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
In the module directory is located in the file '''mod_banner_fe.css''' some CSS sample data. These can be included in the layout or you can import the file and activate this in the layout.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.4.4 / 3.0.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.6.2 - 2.8.4 (see installations notes)&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]],[[xls_export|Excel 95 writer (xls_export)]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/banner.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/banner/issues&lt;br /&gt;
| VCSLink=https://github.com/BugBuster1701/banner&lt;br /&gt;
| Comment=Version for Contao 3.0 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Banner]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Visitors module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/banner/issues Issue Tracker].&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/banner.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/banner&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Banner is dependent on the modules &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; and &amp;quot;[[xls_export|Excel 95 writer (xls_export)]]&amp;quot;. They must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Note for older &amp;quot;TYPOlight&amp;quot; versions==&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use Banner Module Version 1.11.2 ([http://www.contao.org/extension-list/view/banner.10110029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use Banner Module Version 1.9.2 ([http://www.contao.org/extension-list/view/banner.10090029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.6===&lt;br /&gt;
Users of TYPOlight 2.6.x, please use Banner Module Version 1.6.5 ([http://www.contao.org/extension-list/view/banner.10060059.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Installation as an update=&lt;br /&gt;
An update is identical to the installation.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Notice when updating from &amp;lt; 1.10.0 to the latest version:'''&amp;lt;br /&amp;gt;&lt;br /&gt;
The CSS file &amp;quot;mod_banner_fe.css&amp;quot; which is included as an example, the uppercase / lowercase letters changed in a class.&amp;lt;br /&amp;gt;&lt;br /&gt;
Anyone who has imported this file or the design itself has to produce, the class &amp;quot;.mod_Banner&amp;quot; must change in &amp;quot;.mod_banner&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here. &lt;br /&gt;
*[[Banner_Update_v1_to_v2|'''Banner Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The Banner Module contains two back end and one front end module.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Banner&amp;quot; and &amp;quot;Banner Statistic&amp;quot;, for the front end &amp;quot;Banner&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Banner===&lt;br /&gt;
[[File:Banner_en_backend_banner.jpg|Back end module Banner]]&lt;br /&gt;
&lt;br /&gt;
===Banner Statistic===&lt;br /&gt;
[[File:Banner_en_backend_bannerstatistic.jpg|Back end module Banner Statistic]]&lt;br /&gt;
&lt;br /&gt;
==Front end==&lt;br /&gt;
&lt;br /&gt;
===Display a banner===&lt;br /&gt;
[[File:Banner_en_frontend_one_banner.jpg|Front end module Banner]]&lt;br /&gt;
# Module Headline&lt;br /&gt;
# Banner Image&lt;br /&gt;
# Banner Comment&lt;br /&gt;
# Banner Name&lt;br /&gt;
&lt;br /&gt;
More details about this see under &amp;quot;[[Banner#Using|Using]]&amp;quot; or &amp;quot;[[Banner#Technical_Details|Technical Details]]&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Display all Banner===&lt;br /&gt;
With 'all Banner' is meant here, all banners in the selected category.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Banner_en_frontend_all_banner.jpg|Front end all banner|left]]&lt;br /&gt;
In this example, 3 banners have been defined, &amp;lt;br /&amp;gt;&lt;br /&gt;
* Graphic Banner&lt;br /&gt;
* Flash Banner&lt;br /&gt;
* Text Banner&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
More details about this see under &amp;quot;[[Banner#Using|Using]]&amp;quot; or &amp;quot;[[Banner#Technical_Details|Technical Details]]&amp;quot;.&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The first one creates a new banner category via the menu item &amp;quot;banner&amp;quot;. In this then the banners.&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&lt;br /&gt;
Here are the steps, each with the default values. [[Banner#Technical_Details|Technical details]] will be explained later.&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Banner'. In the main area click on the button 'New category'.&lt;br /&gt;
[[File:Banner_en_backend_category_new.jpg|New Banner Category]]&lt;br /&gt;
&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
==Create the banners==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br &amp;gt;&lt;br /&gt;
Now, either click the 'New Banner' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br &amp;gt;&lt;br /&gt;
[[File:Banner_en_backend_banner_new.jpg|New Banner]]&lt;br /&gt;
&lt;br /&gt;
First they must select the banner source:&lt;br /&gt;
* internal Banner (Graphic / Flash files  is stored on server)&lt;br /&gt;
* external Banner (Graphic / Flash files are integrated via URL)&lt;br /&gt;
* Text Banner&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
After selecting it appear the appropriate form fields.&lt;br /&gt;
&lt;br /&gt;
===Graphic Banners===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed in the Banner overview and in the provided template appears below the banner graphic.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking on the banner graphic. The input must include &amp;quot;http://&amp;quot;.&lt;br /&gt;
#* Optional field. &lt;br /&gt;
#* Without a URL, the banner will be displayed without a link.&lt;br /&gt;
#* Alternative can be selected an internal target (Banner target page)&lt;br /&gt;
# Banner Image&lt;br /&gt;
#* Here you can now select the banner file.&lt;br /&gt;
# Banner width and height&lt;br /&gt;
#* To customize the banner size, you can specify the banner width and / or the banner height in pixels.&lt;br /&gt;
#* '''CAUTION''': Animated GIFs are for size definitions through the GD recalculation unfortunately to still images.&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* The first line will be installed and displayed as a &amp;quot;title&amp;quot; tag in the HTML source code if you move the cursor over the banner graphic.&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
===Flash Banner===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed only in the Banner overview.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking on the Flash Banner. The input must include &amp;quot;http://&amp;quot;.&lt;br /&gt;
#* Optional field.  &lt;br /&gt;
#* Without a URL, the Flash Banner will be displayed without a link.&lt;br /&gt;
#* Alternative can be selected an internal target (Banner target page)&lt;br /&gt;
# Banner Image&lt;br /&gt;
#* Here you can now select the banner file.&lt;br /&gt;
# Banner width and height&lt;br /&gt;
#* To customize the banner size, you can specify the banner width and / or the banner height in pixels.&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* Input is not necessary, is not used in the front end&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
A flash fallback to an image file is available, see the section [[Banner#Flash_Fallback_Image|Technical Details]]&lt;br /&gt;
&lt;br /&gt;
===Text Banner===&lt;br /&gt;
# Banner Name&lt;br /&gt;
#* The banner name will be displayed in the Banner overview and in the provided template as a headline that is linked simultaneously with the target URL.&lt;br /&gt;
# Banner weighting&lt;br /&gt;
#* This controls the display frequency of the banners. The higher the priority, the more often this banner is displayed.&lt;br /&gt;
# Banner target URL&lt;br /&gt;
#* The URL of the target by clicking. The input must include &amp;quot;http://&amp;quot;. &lt;br /&gt;
#* Optional field.&lt;br /&gt;
#* Without a URL, the Text Banner will be displayed without a link.&lt;br /&gt;
#* in provided template only the domain is shown as a short form. (Third row, see picture above)&lt;br /&gt;
# Banner Comment&lt;br /&gt;
#* This is the text line. (Second row, see picture above)&lt;br /&gt;
# Published&lt;br /&gt;
#* If this option is not selected, this banner is not displayed.&lt;br /&gt;
&lt;br /&gt;
==Front end module==&lt;br /&gt;
A new front-end module is create with: &amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Add module (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add module (TYPOlight 2.8.x)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Be sure to '''first enter the title''', then selecting for module type:''Miscellaneous -&amp;gt; Banner''.&lt;br /&gt;
Now the form fields change accordingly.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Banner Categories' select the previously created category, then 'Save and Close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout: &amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer) &lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x) &lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left)&lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
For the first tests you should copy the provided file mod_banner_fe.css from /system/modules/banner to /tl_files . Then import them over the back end and activate it in the layout.&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category, in the banner denifinition and in the constructed front end module feasible / adjustable. &lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Category Definition==&lt;br /&gt;
===Number of banners===&lt;br /&gt;
* Show all banners&lt;br /&gt;
If you choose this option, all active banners will be showed in front end.&amp;lt;br /&amp;gt;&lt;br /&gt;
In addition, you can choose:&lt;br /&gt;
* Limiting the number of banners&lt;br /&gt;
Here, the number can be limited. Default is 0: show all banners, otherwise maximum number of banners that will be showed.&lt;br /&gt;
* Random order&lt;br /&gt;
If you choose this option, the banners will shown in a random order.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Banner Definition==&lt;br /&gt;
===Flash Fallback Image===&lt;br /&gt;
If a browser does not support Flash or JavaScript is disabled, an image can be displayed instead (since version 2.2.0). At a local (internal) flash file, in the same path is searched for an image file with the same name but with the ending jpg, png or gif.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: for &amp;quot;myflash.swf&amp;quot; would be a fallback image: &amp;quot;myflash.jpg&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
Was found a replacement image, the image is displayed. If necessary, the image is converted to the dimensions of the flash file.&lt;br /&gt;
&lt;br /&gt;
===Display limitation by Start / Stop dates and times===&lt;br /&gt;
* Show from&lt;br /&gt;
** If you enter a date and time value here the current banner will not be shown on the website before this moment.&lt;br /&gt;
* Show until&lt;br /&gt;
** If you enter a date and time value here the current banner will not be shown on the website after this moment.&lt;br /&gt;
&lt;br /&gt;
===Limiting the number of Views and Clicks===&lt;br /&gt;
* Limiting the number of Views and Clicks&lt;br /&gt;
If you select this option, you can define a maximum number of views and/or maximum number of clicks.&lt;br /&gt;
* Limiting the number of Views&lt;br /&gt;
** By entering a number, the current banner is no longer displayed after this number of views.&amp;lt;br /&amp;gt;The &amp;quot;Limiting the number of Views and Clicks&amp;quot; has enabled it to stay.&lt;br /&gt;
* Limiting the number of Clicks&lt;br /&gt;
** By entering a number, the current banner is no longer displayed after this number of clicks.&amp;lt;br /&amp;gt;The &amp;quot;Limiting the number of Views and Clicks&amp;quot; has enabled it to stay.&lt;br /&gt;
&lt;br /&gt;
===Filter Domain===&lt;br /&gt;
If you enter a domain name, this banner is used only for this domain.If you leave the field empty, this banner is used for all domains. Example: '''yourdomain.com'''&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The banner will be displayed, if matches the domain. But also in partial match starting from the right. So also with access via &amp;quot;'''sub.yourdomain.com'''&amp;quot; .An entry in &amp;quot;Site structure&amp;quot; - &amp;quot;Domain Name&amp;quot; is not required for the filtering.&lt;br /&gt;
&lt;br /&gt;
==Technical Details in the Front end Module Definition==&lt;br /&gt;
&lt;br /&gt;
===First banner for new visitor===&lt;br /&gt;
For each new visitor, at first is displayed the first published banner in the category. The choice is then returned to random mode. Thus, a kind of recognition can be achieved.&lt;br /&gt;
&lt;br /&gt;
===Templates===&lt;br /&gt;
Each module can be assigned its own Template. Two different templates are included.  &amp;lt;br /&amp;gt;&lt;br /&gt;
* mod_banner_list_all&lt;br /&gt;
** All fields are included.&lt;br /&gt;
* mod_banner_list_min&lt;br /&gt;
** The headline and name were removed. It will only display the banner itself.&lt;br /&gt;
&lt;br /&gt;
Both templates also support text banners.&amp;lt;br /&amp;gt;&lt;br /&gt;
For own Templates, the template files must start with &amp;quot;mod_banner_list_&amp;quot; and end with &amp;quot;.tpl&amp;quot;. &lt;br /&gt;
Example: &amp;quot;mod_banner_list_special.tpl&amp;quot;&lt;br /&gt;
&lt;br /&gt;
{{Note|In Banner Version 1.x this selection is located in the banner category.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Prevention of counting their own requests===&lt;br /&gt;
You can set a custom UserAgent String in your browser and in the banner modul configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Via: &lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Modul Name (Contao 2.9 and newer)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Module Name (TYPOlight 2.8.x)&lt;br /&gt;
In the applied banners module in the new field &amp;quot;No counting for this HTTP_USER_AGENT partial identifier&amp;quot; , a string is entered, it should be unique.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: CTISOK&amp;lt;br /&amp;gt;&lt;br /&gt;
Save it.&amp;lt;br /&amp;gt;&lt;br /&gt;
Several strings are also possible, then enter them separated by commas.&amp;lt;br /&amp;gt;&lt;br /&gt;
so you can change the User Agent String of Mozilla Firefox: &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
# Type '''about:config''' in the Mozilla Firefox address bar and press ENTER&lt;br /&gt;
# Type '''general.useragent.extra.firefox''' in the Filter bar&lt;br /&gt;
# Double-click on the returned Firefox setting, where you can change a user agent string to overwrite the default.&lt;br /&gt;
# Add her &amp;quot;CTISOK&amp;quot; separated by space, e.g. &amp;quot;Firefox/3.6.3 CTISOK&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can check your new User Agent String , type '''about:''' in the Mozilla Firefox address bar and press ENTER, see last row.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For other browsers, see:&lt;br /&gt;
[http://www.walkernews.net/2007/07/05/how-to-change-user-agent-string/ walkernews.net - how to change user agent string]&lt;br /&gt;
&lt;br /&gt;
=Specific feature=&lt;br /&gt;
==Bot Detection off==&lt;br /&gt;
Who wants to count the hits from bots and search engines on the banners can switch off the bot detection. This is done by the file localconfig.php.&lt;br /&gt;
{{Caution|This applies to all Banner modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after: ### INSTALL SCRIPT STOP ### ) switching off the bot detection:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_banner_bot_check'] = false;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Change Banner Block Time for Views==&lt;br /&gt;
As written in the beginning, when a banner is displayed multiple times within 10 minutes (C3: 5 minutes), this banner is only counted once.&amp;lt;br /&amp;gt; &lt;br /&gt;
With an entry in the localconfig.php can change that. The values be there in minutes, the number must be&amp;gt; 0, otherwise will be automatically taken back to the default value (10).&lt;br /&gt;
{{Caution|This applies to all Banner modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after ### INSTALL SCRIPT STOP ### ) causes a change to 5 minutes:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_banner_block_time'] = 5;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Exception: No active banners defined and no default banner defined==&lt;br /&gt;
If, in this case, &amp;quot;Hide if empty&amp;quot; is not activated, until now was an empty image tag generated, what was presented by the IE as Broken Image. From version 1.11.2 now a DIV tag with class = &amp;quot;banner_empty&amp;quot; is generated:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_banner&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;div class=&amp;quot;banner_empty&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;!-- no banner, no default banner --&amp;gt;&lt;br /&gt;
	&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
With CSS can now be reached that is maintained (in this example) the amount and thus the layout of the site will not change:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;css&amp;quot;&amp;gt;&lt;br /&gt;
.mod_banner .banner_empty {&lt;br /&gt;
    height:90px;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The resultant text can be overridden to enforce in langconfig.php, here is an example of an empty text:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_LANG']['MSC']['tl_banner']['noBanner'] = '';&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Special case: Multiple Banner modules on one page==&lt;br /&gt;
Here are some hints and tips for well-known application scenarios and their characteristics.&lt;br /&gt;
&lt;br /&gt;
===One category - Two front end modules on one page===&lt;br /&gt;
In the current version it is possible to display all the banners from one category.&amp;lt;br /&amp;gt;&lt;br /&gt;
The old version's multiple banners on a Web page was to be able to create multiple front end modules and integrating them into the website. The module is prevented that a banner will not appear more than once.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Well, it was assumed that all displayed below each other, so it made sense, the module title to display only once.&amp;lt;br /&amp;gt;&lt;br /&gt;
If you want to leave now for all the title's banner front-end modules, because they are distributed on the page, must be made for this purpose a small modification to the template. Create a copy on the back end of the template &amp;quot;mod_banner_list_all&amp;quot; and renames it here, for example, in &amp;quot;mod_banner_list_special.tpl.&amp;lt;br /&amp;gt;&lt;br /&gt;
There, now you change the third line as follows:&amp;lt;br /&amp;gt;&lt;br /&gt;
Original:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;?php if (($this-&amp;gt;headline) &amp;amp;&amp;amp; (!$this-&amp;gt;headline_stop)): ?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Special:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php if ($this-&amp;gt;headline) : ?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Now edit the banner front end modules and select the new template.&amp;lt;br /&amp;gt;&lt;br /&gt;
Done.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
This is also true for more than two front end modules.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Two categories - Two front end modules on one page===&lt;br /&gt;
In this case, each front end module its own category. Again, only on the first module, the heading will appear for the same reason as in the previous section.&amp;lt;br /&amp;gt;&lt;br /&gt;
If you want to display in this scenario all module headers, the solution is the same.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
This is also true for more than two front end modules.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 16:27, 10 July 2011 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Integrity_Check</id>
		<title>Integrity Check</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Integrity_Check"/>
				<updated>2013-04-04T20:04:34Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:check_overview_en.jpg|right|Integrity Check]] Integrity check for some files from Contao (Detection of hacked Contao installations.)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.3.5 / 3.1.0  &lt;br /&gt;
| Version=from 2.10.0&lt;br /&gt;
| ERLink=http://www.contao.org/en/extension-list/view/integrity_check.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/integrity_check/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:Integrity_Check]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
In Contao Forum, reports came about changed files, which malicious code was attached.&amp;lt;br /&amp;gt;&lt;br /&gt;
The problem itself can not be attributed to a vulnerability in Contao, but will be distributed over other ways of the server, eg vulnerable WP plugins, hacked servers, hacked FTP logins, etc.&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/integrity_check/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/en/extension-list/view/integrity_check.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/integrity_check&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Example of an Infection=&lt;br /&gt;
How now looks like such a hack?&amp;lt;br /&amp;gt;&lt;br /&gt;
The attachment to the file index.php looked like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
#c3284d#&lt;br /&gt;
echo(gzinflate(base64_decode(&amp;quot;ZZBNisMwDIX.......T7oD&amp;quot;)));&lt;br /&gt;
#/c3284d# &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function frmAdd() { &lt;br /&gt;
var ifrm = document.createElement('iframe'); &lt;br /&gt;
....&lt;br /&gt;
}; &lt;br /&gt;
window.onload = frmAdd; &lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Site one the black list==&lt;br /&gt;
When you does not react fast enough, and Google notices this, the page is set to the &amp;quot;black list&amp;quot;. Browsers like Firefox use this to warn against unauthorized access to it. It looks like this:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:site_on_black_list_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Function of the module=&lt;br /&gt;
In the current version, the most important PHP files are checked for modifications.&amp;lt;br /&amp;gt;&lt;br /&gt;
This files will be checked:&lt;br /&gt;
* index.php&lt;br /&gt;
* cron.php (from version 1.1.0)&lt;br /&gt;
* contao/index.php&lt;br /&gt;
* contao/main.php&lt;br /&gt;
&lt;br /&gt;
==Time of verification==&lt;br /&gt;
This test is performed automatically (Contao-Cron), see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
==Detection==&lt;br /&gt;
The check is identical to the official Contao check tool, that means via MD5 checksums. Checksums are available for comparison for Contao from 2.10.0.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 1.1.0, check via timestamps is possible.&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
In the backend, you can see the results: System - System Log. Normally if everything is OK, no message appears. In its own module debug mode then there is only a message::&lt;br /&gt;
* Checking files for integrity is completed.&lt;br /&gt;
If modifications were detected, a message is generated for each file:&lt;br /&gt;
* Integrity status for file index.php is: Corrupt [MD5]&lt;br /&gt;
* Integrity status for cron.php file is corrupted [Timestamp]&lt;br /&gt;
** It was checked by time stamp, possible from version 1.1.0.&lt;br /&gt;
An information is available via System Log and mail, see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
==Creating integrity check==&lt;br /&gt;
The integrity check need a check plan. This can be used for any of the files for the time, the art of check and the action.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Time intervals===&lt;br /&gt;
* in Contao 2.10: daily, weekly, monthly&lt;br /&gt;
* in Contao 2.11: hourly, daily, weekly, monthly&lt;br /&gt;
* in Contao 3.0: minutely(manual), hourly, daily, weekly, monthly&lt;br /&gt;
&lt;br /&gt;
===Art of check===&lt;br /&gt;
The detection of a change in the file is possible via:&lt;br /&gt;
* MD5 checksum&lt;br /&gt;
* Timestamps&lt;br /&gt;
&lt;br /&gt;
===Action===&lt;br /&gt;
* System log: Message in the system log (backend)&lt;br /&gt;
* Mail to Admin: a mail is sent to the admin of the Contao installation.&lt;br /&gt;
** It will then creates also automatically  an entry in the System log (from version 1.1.0)&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
===System-Log und Mail===&lt;br /&gt;
From version 1.1.0 automatically gets an entry in the system log when a mail is sent.&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
In Version 1.0.0, if you want to have both types of information, you creates the check twice, each with one of the actions: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_2_en.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Here is an example only for the index.php. This is of course also for the other files.&lt;br /&gt;
&lt;br /&gt;
===There can be only one!===&lt;br /&gt;
It is possible in the integrity check overview to create multiple checks. It basically makes no sense. Therefore, it is ensured that there can be only an integrity check, which is activated. If you switch a new integrity check active, all other existing tests are automatically switched inactive.&lt;br /&gt;
&lt;br /&gt;
==Protection against infection==&lt;br /&gt;
Well, a general protection is probably not possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
But there is a possibility that the malicious code is not executed. There is a ticket to GitHub, it is accepted for Contao 3. Here is the short info for Contao 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
Edit the index.php, go to the method &amp;quot;run&amp;quot; in the last line, should be the line of 269th (2.11.5) Before the curly bracket insert an exit; or insert a row for it. Here is from line 268 as an example:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
change to:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
        exit;&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Note: Now, the Integrity Check Tool as well as the Contao Check Tool report a change. Use the check vie timestamp now.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 20:06, 1 April 2013 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/LastLogin</id>
		<title>LastLogin</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/LastLogin"/>
				<updated>2013-04-02T14:40:45Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Display of last login and the list of online / offline members over Insert-Tags.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
From Contao 2.8 is already displayed by the login module itself the last login time.&amp;lt;br /&amp;gt;&lt;br /&gt;
This module now supports the internal method and also includes an insert-tag for this.&amp;lt;br /&amp;gt;&lt;br /&gt;
More Insert-Tags have been added over the course of development, as shown in the follow list.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.9.1 / 3.0.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.8.0 - 2.8.4 (see installations notes)&lt;br /&gt;
| Depending=[[Memberlist|memberlist]] (mandatory), [[Avatar|avatar]] (optional)&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/lastlogin.en.html&lt;br /&gt;
| DonateLink=http://www.amazon.de/wishlist/26HHEJOU03G76&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/lastlogin/issues&lt;br /&gt;
| VCSLink=https://github.com/BugBuster1701/lastlogin&lt;br /&gt;
| Comment=Version for Contao 3.0 online &lt;br /&gt;
}}&lt;br /&gt;
[[de:LastLogin]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the LastLogin module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/lastlogin/issues Issue Tracker].&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/lastlogin.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/lastlogin&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Note for older Contao versions==&lt;br /&gt;
===Contao 2.8 - 2.11 ===&lt;br /&gt;
Contao 2.8 - 2.11 , please use LastLogin module version 1.9.1 ([http://www.contao.org/extension-list/view/lastlogin.10090019.en.html Direct Link])&lt;br /&gt;
===Contao 2.7===&lt;br /&gt;
Users of Contao 2.7.x, please use LastLogin module version 1.4.1 ([http://www.contao.org/extension-list/view/lastlogin.10040019.en.html Direct Link])&lt;br /&gt;
&lt;br /&gt;
=Installation as an update=&lt;br /&gt;
An update is identical to the installation.&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The last login module has no back end or front end modules, it provides only insert tags.&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Hint|All Insert-Tags from the module to be resistant from Contao 2.8 cache by adding the prefix &amp;quot;cache_&amp;quot;.}}&lt;br /&gt;
When the cache is turned on in the site structure, the values of the insert tags will not be saved with the cache, but will be replaced again with each delivery from the cache.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: &amp;quot;last_login&amp;quot; becomes &amp;quot;cache_last_login.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following Insert-Tags are currently available:&lt;br /&gt;
* [[LastLogin#Last_Login|Last Login]]&lt;br /&gt;
** last_login / cache_last_login&lt;br /&gt;
&lt;br /&gt;
* [[LastLogin#Online_members|Online Members]]&lt;br /&gt;
** last_login_members_online / cache_last_login_members_online&lt;br /&gt;
* [[LastLogin#Online_members_linked|Online Members linked]]&lt;br /&gt;
** last_login_members_online_link / cache_last_login_members_online_link&lt;br /&gt;
&lt;br /&gt;
* [[LastLogin#Number_registered_members|Number registered members]]&lt;br /&gt;
** last_login_number_registered_members / cache_last_login_number_registered_members&lt;br /&gt;
* [[LastLogin#Number_online_members|Number online members]]&lt;br /&gt;
** last_login_number_online_members / cache_last_login_number_online_members&lt;br /&gt;
* [[LastLogin#Number_offline_members|Number offline members]]&lt;br /&gt;
** last_login_number_offline_members / cache_last_login_number_offline_members&lt;br /&gt;
&lt;br /&gt;
* [[LastLogin#Offline_members|Offline Members]]&lt;br /&gt;
** last_login_members_offline / cache_last_login_members_offline&lt;br /&gt;
* [[LastLogin#Offline_members_linked|Offline Members linked]]&lt;br /&gt;
** last_login_members_offline_link / cache_last_login_members_offline_link&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All the insert tags are controlled by parameters of what and how something is to be displayed. (firstname,lastname,avatar,...)&lt;br /&gt;
&lt;br /&gt;
==Last Login==&lt;br /&gt;
Shows the own &amp;quot;Last Login&amp;quot; time. Expandable with additional parameters.&amp;lt;br /&amp;gt;&lt;br /&gt;
Without the format information is generated after the system definition &amp;quot;dateFormat&amp;quot;. The example of the default installation &amp;quot;webacademy&amp;quot; is there defined as: &amp;quot;Y-m-d&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
On example would be the last login on 3.4.2009 at 16:27 o'clock: :&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
Last Login: {{cache_last_login}}&lt;br /&gt;
Last Login: {{cache_last_login::d.m.y H:i}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
shows:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Last Login: 2009-04-03&lt;br /&gt;
Last Login: 03.04.09 16:27&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a member log on for the first time, no date for the last login is available. Instead, the current date is displayed.&amp;lt;br /&amp;gt;&lt;br /&gt;
Since version 1.9.0 it is possible to force the output in this case with a &amp;quot;0&amp;quot;. Syntax:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
Last Login: {{cache_last_login::zero}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
shows on first login: 0, after each additional login will shown the date. The date format can also be defined again:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
Last Login: {{cache_last_login::zero::d.m.Y H:i}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
About the output of the &amp;quot;0&amp;quot;, you can now respond in the template and print information on first login:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php if ($this-&amp;gt;replaceInsertTags( '{{cache_last_login::zero}}' ) == 0 ) : ?&amp;gt;&lt;br /&gt;
&amp;lt;p class=&amp;quot;notice&amp;quot;&amp;gt;Warning: This is your first login, please immediately change your password!&amp;lt;p&amp;gt;&lt;br /&gt;
&amp;lt;?php endif; ?&amp;gt; &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Online members==&lt;br /&gt;
Shows all the online and active members. Expandable with additional parameters. Each member must have released these fields. (Public fields)&lt;br /&gt;
&lt;br /&gt;
===Comma-separated output===&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_online::username}}&lt;br /&gt;
{{cache_last_login_members_online::firstname}}&lt;br /&gt;
{{cache_last_login_members_online::lastname}}&lt;br /&gt;
{{cache_last_login_members_online::fullname}}&lt;br /&gt;
{{cache_last_login_members_online::avatar}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The word &amp;quot;username&amp;quot; represents the default specification, &amp;lt;nowiki&amp;gt;{{cache_last_login_members_online}}&amp;lt;/nowiki&amp;gt; will also apply.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''The members are displayed only when you are online.'''&lt;br /&gt;
{{Hint|The term &amp;quot;avatar&amp;quot; will only work if the module &amp;quot;[http://www.contao.org/extension-list/view/avatar.en.html avatar]&amp;quot; is installed. This does not happen automatically because it has not been defined as dependence in the ER.}}&lt;br /&gt;
&lt;br /&gt;
===Output as a list===&lt;br /&gt;
The further declaration &amp;quot;list&amp;quot;, will be used the included template &amp;quot;mod_last_login_members&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
This will output a list of the names.&amp;lt;br /&amp;gt;&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_online::username::list}}&lt;br /&gt;
{{cache_last_login_members_online::firstname::list}}&lt;br /&gt;
{{cache_last_login_members_online::lastname::list}}&lt;br /&gt;
{{cache_last_login_members_online::fullname::list}}&lt;br /&gt;
{{cache_last_login_members_online::avatar::list}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The word &amp;quot;username&amp;quot; represents the default specification, &amp;lt;nowiki&amp;gt;{{cache_last_login_members_online::list}}&amp;lt;/nowiki&amp;gt; will also apply. &amp;lt;br /&amp;gt;&lt;br /&gt;
'''The members are displayed only when you are online.'''&lt;br /&gt;
{{Hint|The term &amp;quot;avatar&amp;quot; will only work if the module &amp;quot;[http://www.contao.org/extension-list/view/avatar.en.html avatar]&amp;quot; is installed. This does not happen automatically because it has not been defined as dependence in the ER.}}&lt;br /&gt;
&lt;br /&gt;
===Online members linked===&lt;br /&gt;
Online members as a linked issue with connection to the module member list. It can be specified which field to display (first parameter) and the alias name of the site by the Member List module has been integrated (second parameter).&amp;lt;br /&amp;gt;&lt;br /&gt;
Use as cache_last_login_members_online, following information are available:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_online_link::username::memberlist}}&lt;br /&gt;
{{cache_last_login_members_online_link::firstname::memberlist}}&lt;br /&gt;
{{cache_last_login_members_online_link::lastname::memberlist}}&lt;br /&gt;
{{cache_last_login_members_online_link::fullname::memberlist}}&lt;br /&gt;
{{cache_last_login_members_online_link::avatar::memberlist}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The words &amp;quot;username&amp;quot; and &amp;quot;memberlist&amp;quot; represents the default specification, &amp;lt;nowiki&amp;gt;{{cache_last_login_members_online_link}}&amp;lt;/nowiki&amp;gt; will also apply.&amp;lt;br /&amp;gt;'''The members are displayed only when you are online.'''&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Examples: Output should be firstname, alias name is &amp;quot;mymemberlist&amp;quot;:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_online_link::firstname::mymemberlist}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
generated when there are 2 users online (with ID 4 and 5):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_last_login&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;ul class=&amp;quot;members_online_link&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=4&amp;quot; title=&amp;quot;Profile view&amp;quot;&amp;gt;Donna&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=5&amp;quot; title=&amp;quot;Profile view&amp;quot;&amp;gt;John&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
With &amp;quot;avatar&amp;quot;, as follows:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_last_login&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;ul class=&amp;quot;members_online_link_avatar&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=4&amp;quot; title=&amp;quot;Profile view Donna Evans&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;img width=&amp;quot;32&amp;quot; height=&amp;quot;31&amp;quot; class=&amp;quot;avatar&amp;quot; alt=&amp;quot;avatar&amp;quot; src=&amp;quot;tl_files/avatars/member_4.jpg&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=5&amp;quot; title=&amp;quot;Profile view John Smith&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;img width=&amp;quot;32&amp;quot; height=&amp;quot;31&amp;quot; class=&amp;quot;avatar&amp;quot; alt=&amp;quot;avatar&amp;quot; src=&amp;quot;tl_files/avatars/member_5.jpg&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Number registered members==&lt;br /&gt;
Shows the number of registered members.&amp;lt;br /&amp;gt;&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
There are {{cache_last_login_number_registered_members}} registered members.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Number online members==&lt;br /&gt;
Shows the number of online members.&amp;lt;br /&amp;gt;&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
There are {{cache_last_login_number_online_members}} online members.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Number offline members==&lt;br /&gt;
Shows the number of offline members, but were already online today.&amp;lt;br /&amp;gt;&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
There are {{cache_last_login_number_offline_members}} offline members, recently online.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Offline members==&lt;br /&gt;
Shows offline members, recently online. Expandable with additional parameters.&lt;br /&gt;
===Comma-separated output===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_offline::username}}&lt;br /&gt;
{{cache_last_login_members_offline::firstname}}&lt;br /&gt;
{{cache_last_login_members_offline::lastname}}&lt;br /&gt;
{{cache_last_login_members_offline::fullname}}&lt;br /&gt;
{{cache_last_login_members_offline::avatar}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The word &amp;quot;username&amp;quot; represents the default specification, &amp;lt;nowiki&amp;gt;{{cache_last_login_members_offline}}&amp;lt;/nowiki&amp;gt; will also apply.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''The members are displayed only when you are online.'''&lt;br /&gt;
{{Hint|The term &amp;quot;avatar&amp;quot; will only work if the module &amp;quot;[http://www.contao.org/extension-list/view/avatar.en.html avatar]&amp;quot; is installed. This does not happen automatically because it has not been defined as dependence in the ER.}}&lt;br /&gt;
===Output as a list===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_offline::list}}&lt;br /&gt;
{{cache_last_login_members_offline::username::list}}&lt;br /&gt;
{{cache_last_login_members_offline::firstname::list}}&lt;br /&gt;
{{cache_last_login_members_offline::lastname::list}}&lt;br /&gt;
{{cache_last_login_members_offline::fullname::list}}&lt;br /&gt;
{{cache_last_login_members_offline::avatar::list}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The word &amp;quot;username&amp;quot; represents the default specification, &amp;lt;nowiki&amp;gt;{{cache_last_login_members_offline::list}}&amp;lt;/nowiki&amp;gt; will also apply. &amp;lt;br /&amp;gt;'''The members are displayed only when you are online.'''&lt;br /&gt;
{{Hint|The term &amp;quot;avatar&amp;quot; will only work if the module &amp;quot;[http://www.contao.org/extension-list/view/avatar.en.html avatar]&amp;quot; is installed. This does not happen automatically because it has not been defined as dependence in the ER.}}&lt;br /&gt;
&lt;br /&gt;
===Offline members linked===&lt;br /&gt;
Offline members (recently online) as a linked issue with connection to the module member list. It can be specified which field to display (first parameter) and the alias name of the site by the Member List module has been integrated (second parameter).&amp;lt;br /&amp;gt;&lt;br /&gt;
Use as last_login_members_offline, following information are available:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_offline_link::username::memberlist}}&lt;br /&gt;
{{cache_last_login_members_offline_link::firstname::memberlist}}&lt;br /&gt;
{{cache_last_login_members_offline_link::lastname::memberlist}}&lt;br /&gt;
{{cache_last_login_members_offline_link::fullname::memberlist}}&lt;br /&gt;
{{cache_last_login_members_offline_link::avatar::memberlist}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The words &amp;quot;username&amp;quot; and &amp;quot;memberlist&amp;quot; represents the default specification, &amp;lt;nowiki&amp;gt;{{cache_last_login_members_offline_link}}&amp;lt;/nowiki&amp;gt; will also apply.&amp;lt;br /&amp;gt;'''The members are displayed only when you are online.'''&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Examples: Output should be firstname, alias name is &amp;quot;mymemberlist&amp;quot;:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_offline_link::firstname::mymemberlist}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
generated when there are 2 users online (with ID 4 and 5): &lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_last_login_offline&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;ul class=&amp;quot;members_offline_link&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=4&amp;quot; title=&amp;quot;Profile view&amp;quot;&amp;gt;Donna&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=5&amp;quot; title=&amp;quot;Profile view&amp;quot;&amp;gt;John&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
With &amp;quot;avatar&amp;quot;, as follows: &lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_last_login_offline&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;ul class=&amp;quot;members_offline_link_avatar&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=4&amp;quot; title=&amp;quot;Profile view Donna Evans&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;img width=&amp;quot;32&amp;quot; height=&amp;quot;31&amp;quot; class=&amp;quot;avatar&amp;quot; alt=&amp;quot;avatar&amp;quot; src=&amp;quot;tl_files/avatars/member_4.jpg&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=5&amp;quot; title=&amp;quot;Profile view John Smith&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;img width=&amp;quot;32&amp;quot; height=&amp;quot;31&amp;quot; class=&amp;quot;avatar&amp;quot; alt=&amp;quot;avatar&amp;quot; src=&amp;quot;tl_files/avatars/member_5.jpg&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tutorials=&lt;br /&gt;
==Using as HTML Module==&lt;br /&gt;
The following code could be used to place the insert-tags to an HTML module:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;!-- indexer::stop --&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_login&amp;quot;&amp;gt;&lt;br /&gt;
Last Login: {{cache_last_login::d.m.Y}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;!-- indexer::continue --&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Then specify in the HTML module, &amp;quot;Protect module&amp;quot; and on &amp;quot;Allowed member groups&amp;quot; select &amp;quot;Select all&amp;quot;.&lt;br /&gt;
So that the module is shown only in a logged state.&lt;br /&gt;
&lt;br /&gt;
==Multilingualism==&lt;br /&gt;
With the Insert-Tag &amp;quot;&amp;lt;nowiki&amp;gt;{{iflng}}&amp;lt;/nowiki&amp;gt;&amp;quot; you could do it in several languages:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{iflng::en}}Last login:{{iflng}}{{iflng::de}}Letzer Login:{{iflng}} {{cache_last_login}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==When does &amp;quot;online&amp;quot; / &amp;quot;offline&amp;quot;?==&lt;br /&gt;
In &amp;quot;cache_last_login_members_online&amp;quot; / &amp;quot;cache_last_login_number_online_members&amp;quot; users must perform an action (page view) have done in Contao within the last 5 minutes. (Session table)&lt;br /&gt;
&lt;br /&gt;
In &amp;quot;cache_last_login_members_offline&amp;quot; / &amp;quot;cache_last_login_number_offline_members&amp;quot; it is quite complex, which was then so are discussed and defined:&lt;br /&gt;
* Users who have accessed within the session time for 5 minutes no pages (but session owner)&lt;br /&gt;
* Users were today or yesterday online and today offline, by logging off&lt;br /&gt;
* Users were online today, but have no more session, and are not logged (but session deleted)&lt;br /&gt;
&lt;br /&gt;
This means you get not all appear. It will only be displayed that were recently online, but already offline or considered as such.&lt;br /&gt;
&lt;br /&gt;
==Limit the number of output as a list==&lt;br /&gt;
In output as a list, it is possible by an additional parameter to limit the number. Examples of each type (with 5 lines):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_online::username::list::5}}&lt;br /&gt;
{{cache_last_login_members_online::avatar::list::5}}&lt;br /&gt;
{{cache_last_login_members_online_link::lastname::memberlist::5}}&lt;br /&gt;
{{cache_last_login_members_online_link::avatar::memberlist::5}}&lt;br /&gt;
{{cache_last_login_members_offline::lastname::list::5}}&lt;br /&gt;
{{cache_last_login_members_offline::avatar::list::5}}&lt;br /&gt;
{{cache_last_login_members_offline_link::fullname::memberlist::5}}&lt;br /&gt;
{{cache_last_login_members_offline_link::avatar::memberlist::5}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:06, 27 January 2013 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Visitors</id>
		<title>Visitors</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Visitors"/>
				<updated>2013-04-01T18:19:42Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg|right|Visitors]]This module allows you to count hits and visits of your website.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the display appears the hits and visits from the current day, as well as the respective total.&lt;br /&gt;
Statistic is also in the backend.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.8.0 / 3.1.0&lt;br /&gt;
| Version=from 2.19&lt;br /&gt;
| TLVersion=2.7 - 2.9 (see installation notes)&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]],[[xls_export|Excel 95 writer (xls_export)]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/visitors.en.html&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/visitors/issues&lt;br /&gt;
| Comment=Version for Contao 3.0 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Visitors]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Visitors module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported at GitHub: [https://github.com/BugBuster1701/visitors/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/visitors.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/visitors&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Visitors is dependent on the module &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; and &amp;quot;[[xls_export|Excel 95 writer (xls_export)]]&amp;quot;. They must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Note for older &amp;quot;TYPOlight/Contao&amp;quot; versions==&lt;br /&gt;
===Contao 2.9===&lt;br /&gt;
Users of Contao 2.9.x, please use Visitors Module Version 2.7.1 ([http://www.contao.org/extension-list/view/visitors.20070019.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use Visitors Module Version 1.7.2 ([http://www.contao.org/extension-list/view/visitors.10070029.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use Visitors Module Version 1.4.1 ([http://www.contao.org/extension-list/view/visitors.10040019.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
==Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here. &lt;br /&gt;
*[[Visitors_Update_v1_to_v2|'''Visitors Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Overview=&lt;br /&gt;
The Visitors module contains two back end and one front end module.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Visitors&amp;quot; and &amp;quot;Visitor Statistics&amp;quot;, for the front end &amp;quot;Visitors&amp;quot;. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Visitors===&lt;br /&gt;
[[File:Visitors_en_backend_visitors.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors_en_backend_visitorstatistics.jpg]]&lt;br /&gt;
&lt;br /&gt;
shows in detail: (Click on image for higher resolution)&lt;br /&gt;
&amp;lt;gallery widths=&amp;quot;240&amp;quot; heights=&amp;quot;180&amp;quot; caption=&amp;quot;Visitors Statistics&amp;quot;&amp;gt;&lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details.jpg|Visitors Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_browser.jpg|Browser Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_searchengine.jpg|Search Engine Referer Statistics &lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Front end==&lt;br /&gt;
For the front end are provided two CSS files as an example:&lt;br /&gt;
*mod_visitors_fe.css for the normal output, line by line&lt;br /&gt;
*mod_visitors_fe_horizontal.css for the horizontal output&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics, horizontal===&lt;br /&gt;
[[File:Visitors-package-fe-horizontal-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The first one creates a new visitor category via the menu item &amp;quot;visitors&amp;quot;. In this then the counter.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Here are the steps, each with the default values. [[Visitors#Technical_Details|Technical details]] will be explained later.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Visitors'. In the main area click on the button 'New category'.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_category_new.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Create new counter==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, either click the 'New counter' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_counter_new.jpg]]&lt;br /&gt;
&lt;br /&gt;
Now, some information are needed: :&lt;br /&gt;
* Name, (is displayed as a heading on the numbers).&lt;br /&gt;
* Start date, optional, only for display in font end&lt;br /&gt;
* Optional: 'Initial value of visitors/hits'&lt;br /&gt;
* Optional: 'Visitors per day' &lt;br /&gt;
* Activate &amp;quot;Published&amp;quot;&lt;br /&gt;
Then you click on &amp;quot;Save and close&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Front end Module==&lt;br /&gt;
A new front-end module is create with:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Add module (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add module (TYPOlight 2.8.x)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
At first, enter the title, and only then select in &amp;quot;Module type&amp;quot;: 'Miscellaneous'-'Visitors'. It changes the form fields.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Visitors category' now select the previously created category, then 'Save and close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer) &lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x) &lt;br /&gt;
&lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left) &lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
As mentioned above, are provided two CSS file for presentation.&amp;lt;br /&amp;gt;&lt;br /&gt;
For the first tests you should copy the file &amp;lt;code&amp;gt;mod_visitors_fe.css&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;/system/modules/visitors&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;/tl_files&amp;lt;/code&amp;gt; . Then import them over the back end and activate it in the layout.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category, in the counter denifinition and in the constructed front end module feasible / adjustable. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the category==&lt;br /&gt;
===Counting mode===&lt;br /&gt;
From version 1.6.0, Counting mode is selectable, server side or browser side, by category:&lt;br /&gt;
* Load counting, server side by Contao&lt;br /&gt;
* Read counting, client side by browser&lt;br /&gt;
** (only on Contao cacheMode: server and browser cache / only browser cache)&lt;br /&gt;
&lt;br /&gt;
With &amp;quot;Read counting&amp;quot; can be counted when the page is in the browser cache and will be called from it.&lt;br /&gt;
The system setting &amp;quot;Cache mode&amp;quot; will be respected.&lt;br /&gt;
&lt;br /&gt;
{{Note|The display of current values will continue but only if the page is requested from the server.}}&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the counter denifinition==&lt;br /&gt;
===Block time===&lt;br /&gt;
The block time is in seconds. After interruption of the requests at this time, an access is counted as an additional visitor.&amp;lt;br /&amp;gt;&lt;br /&gt;
Pre-entered are 1800 seconds, so that is 30 minutes.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Technical Details in the front end module definition==&lt;br /&gt;
===Templates===&lt;br /&gt;
Each module can be assigned its own Template. Four different templates are included.&lt;br /&gt;
* mod_visitors_fe_all&lt;br /&gt;
** All fields are included. (see example above)&lt;br /&gt;
* mod_visitors_fe_hits&lt;br /&gt;
** Here the visit rows were removed.&lt;br /&gt;
* mod_visitors_fe_visits&lt;br /&gt;
** Here the hit rows were removed.&lt;br /&gt;
* mod_visitors_fe_invisible.tpl&lt;br /&gt;
** Here, nothing is displayed. This template is used for a pure counting.&lt;br /&gt;
&lt;br /&gt;
For own Templates, the template files must start with &amp;quot;mod_visitors_fe_&amp;quot; and end with &amp;quot;.tpl&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Show to guests only===&lt;br /&gt;
Hide the module if a member (front end user) is logged in. &lt;br /&gt;
&lt;br /&gt;
===Protect module===&lt;br /&gt;
Show the module to certain member groups only.&lt;br /&gt;
&lt;br /&gt;
===No counting for this HTTP_USER_AGENT partial identifier===&lt;br /&gt;
You can set a custom UserAgent String in your browser and in the visitors module configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Module Name (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Module Name (TYPOlight 2.8.x)&lt;br /&gt;
In the field: &amp;quot;No counting for this HTTP_USER_AGENT partial identifier&amp;quot;, you can enter a unique identifier.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: CTISOK&amp;lt;br /&amp;gt;&lt;br /&gt;
Save it.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, change the User Agent String of Mozilla Firefox:&amp;lt;br /&amp;gt;&lt;br /&gt;
# Type '''about:config''' in the Mozilla Firefox address bar and press ENTER,&lt;br /&gt;
# Type '''general.useragent.extra.firefox''' in the Filter bar,&lt;br /&gt;
# Double-click on the returned Firefox setting, where you can change a user agent string to overwrite the default. &lt;br /&gt;
# Add her &amp;quot;CTISOK&amp;quot; separated by space, e.g. &amp;quot;Firefox/3.5.2 CTISOK&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can check your new User Agent String , type '''about:''' + ENTER in the Mozilla Firefox address bar and press ENTER, see last row.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For other browsers, see:&lt;br /&gt;
[http://www.walkernews.net/2007/07/05/how-to-change-user-agent-string/ walkernews.net - how to change user agent string]&lt;br /&gt;
{{Hint|This does not work anymore in Firefox 4.  Alternatively, use the add-on: [https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher/ User-Agent-Switcher]}}&lt;br /&gt;
&lt;br /&gt;
=Insert-Tags=&lt;br /&gt;
==Show the values==&lt;br /&gt;
From version 1.2.0 there is Insert-Tags to show the values.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::name}}&lt;br /&gt;
 {{visitors::catid::online}}&lt;br /&gt;
 {{visitors::catid::start}}&lt;br /&gt;
 {{visitors::catid::totalvisit}}&lt;br /&gt;
 {{visitors::catid::totalhit}}&lt;br /&gt;
 {{visitors::catid::todayvisit}}&lt;br /&gt;
 {{visitors::catid::todayhit}}&lt;br /&gt;
 {{visitors::catid::averagevisits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
From version 1.5.0 and from TYPOlight 2.8, Insert-Tags can be extended with prefix 'cache_'. Thus, these then cache resistant.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::name}}&lt;br /&gt;
 ...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The counting is continued through the module! Who wants to use to display the insert tags, the module continues to need, but only to count. With the templates mod_visitors_fe_invisible the module may be invisible, if desired.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
To determine the category ID, go into the category overview of the module with your mouse over the &amp;quot;i&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 2.3.1, the ID is shown right behind the category name.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-category.jpg|Visitor category ID]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The tooltip displays the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
Or click on the &amp;quot;i&amp;quot;, in the following site is in the first line the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
For category ID = 1 that would be like that:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::1::online}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Count==&lt;br /&gt;
An alternative to &amp;quot;counting only&amp;quot; would be to use an Insert-Tag. From version 1.5.0 there is another Insert-Tag. The module itself uses this as well:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::count}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Example for installation in an article (for category ID = 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span style=&amp;quot;width:0px;height:0px;&amp;quot;&amp;gt;{{cache_visitors::1::count}}&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Caution|It must be noticed, that the insert-tag for the count will be installed at first on the page so that the counting is carried out before the identification of the values.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==More Insert-Tags==&lt;br /&gt;
From version 2.1.0, there ist Insert-Tags for display the values of the day with the most visitors.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::bestday::date}}   - Day (Date) with the most visitors&lt;br /&gt;
 {{visitors::catid::bestday::visits}} - Number of visitors of the day with most visitors&lt;br /&gt;
 {{visitors::catid::bestday::hits}}   - Number of hits of the day with most visitors&lt;br /&gt;
or&lt;br /&gt;
 {{cache_visitors::catid::bestday::date}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::visits}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::hits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The &amp;quot;date&amp;quot; insert-tag has an optional parameter to format the date output. (m.d.Y , Y-m-d, etc.)&amp;lt;br /&amp;gt;&lt;br /&gt;
The system setting is used as default. As a separator, a &amp;quot;::&amp;quot; are used.&amp;lt;br /&amp;gt;&lt;br /&gt;
A complete example (with category 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 Best Day: {{visitors::1::bestday::date::j. F Y}} with {{visitors::1::bestday::visits}} visitors &lt;br /&gt;
(and {{visitors::1::bestday::hits}} hits)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
results:&lt;br /&gt;
 Best Day: 31. August 2010 with 25 visitors (and 123 hits)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Specific feature=&lt;br /&gt;
==No counting==&lt;br /&gt;
No front-end call is counted when one is logged on at the same time in the back end.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visitors per day: Ø = 0==&lt;br /&gt;
The average value per day will be calculated for each full calendar day.&amp;lt;br /&amp;gt;&lt;br /&gt;
So, having only one day before a counting or a counting of the current day, no meaningful value can be calculated.&amp;lt;br /&amp;gt;&lt;br /&gt;
(average = number visitors)&amp;lt;br /&amp;gt;&lt;br /&gt;
In these cases appears &amp;quot;0&amp;quot;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Bot Detection off==&lt;br /&gt;
Who wants to count the hits from bots and search engines can switch off the bot detection. This is done by the file localconfig.php.&lt;br /&gt;
{{Caution|This applies to all Visitors modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after: ### INSTALL SCRIPT STOP ### ) switching off the bot detection:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_visitors_bot_check'] = false;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:42, 12 December 2010 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Dlstats</id>
		<title>Dlstats</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Dlstats"/>
				<updated>2013-04-01T18:07:54Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Counts the number of file downloads&lt;br /&gt;
&lt;br /&gt;
* Download statistics for the standard content elements Download and Downloads&lt;br /&gt;
* Count number of downloads per file plus latest download timestamp&lt;br /&gt;
* Optionally log every single download with timestamp, IP and username.&lt;br /&gt;
* Insert-Tag for number of downloads in the frontend (from 2.1.0)&lt;br /&gt;
* Ignore certain IPs (define itself, from 2.1.0)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.3.1 / 3.1.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.7.6 - 2.8.4&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/dlstats.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/dlstats/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:dlstats]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao. On manual installation, call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''For manual installation, please note that the module &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; must be installed.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
Go to the Contao Settings and switch on the logging, either only counting the number of downloads per file, or optionally also log each download with timestamp and IP.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''For dlstats 2.1.x:''' In the settings you can be deactivated the Anonymize IP function, it must be the admin.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''From dlstats 2.2.0:''' IP addresses anonymous: &amp;quot;yes/no&amp;quot; is now controlled by Contao itself.&amp;lt;br /&amp;gt;&lt;br /&gt;
(System - Settings - Privacy settings - Anonymize IP addresses)&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Use the content element File Download or File Downloads for all downloaded files you want to have counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
After downloading a file you will find the statistics under Content - Download Stats. &lt;br /&gt;
&lt;br /&gt;
==Using Insert-Tag==&lt;br /&gt;
The Insert-Tag &amp;quot;cache_dlstats::total downloads::...&amp;quot; supports both, the source of the file (relative path + file name), as well as in connection with the article alias and how it generates for ce_download and ce_downloads. Therefore, the use is well used in the templates of the two CEs, see examples. Return is only the number of downloads as a number.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_dlstats::totaldownloads::tl_files/cdc2010.pdf}}&lt;br /&gt;
{{cache_dlstats::totaldownloads::CDC_2010.html?file=tl_files/cdc2010.pdf}}&lt;br /&gt;
&lt;br /&gt;
// in ce_download template:&lt;br /&gt;
{{cache_dlstats::totaldownloads::&amp;lt;?php echo $this-&amp;gt;href; ?&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
// in ce_downloads template:&lt;br /&gt;
{{cache_dlstats::totaldownloads::&amp;lt;?php echo $file['href']; ?&amp;gt;}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ignore certain IPs==&lt;br /&gt;
If any downloads from certain IP addresses should not be counted, this can be defined in the localconfig.php as follows:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV4'][] = '192.168.1.2';&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV4'][] = '192.168.0.0/24';&lt;br /&gt;
//respectively&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV6'][] = '2001:0db8::1';&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV6'][] = '2001:0db8:85a3:0800::/56';  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Notice==&lt;br /&gt;
* Simple links to files will not be counted as downloads!&lt;br /&gt;
* If you are logged in the backend, your download is not counted. (from 2.1.0)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 20:07, 1 April 2013 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Integrity_Check</id>
		<title>Integrity Check</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Integrity_Check"/>
				<updated>2013-04-01T18:06:58Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:check_overview_en.jpg|right|Integrity Check]] Integrity check for some files from Contao (Detection of hacked Contao installations.)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.3.4 / 3.1.0  &lt;br /&gt;
| Version=from 2.10.0&lt;br /&gt;
| ERLink=http://www.contao.org/en/extension-list/view/integrity_check.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/integrity_check/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:Integrity_Check]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
In Contao Forum, reports came about changed files, which malicious code was attached.&amp;lt;br /&amp;gt;&lt;br /&gt;
The problem itself can not be attributed to a vulnerability in Contao, but will be distributed over other ways of the server, eg vulnerable WP plugins, hacked servers, hacked FTP logins, etc.&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/integrity_check/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/en/extension-list/view/integrity_check.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/integrity_check&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Example of an Infection=&lt;br /&gt;
How now looks like such a hack?&amp;lt;br /&amp;gt;&lt;br /&gt;
The attachment to the file index.php looked like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
#c3284d#&lt;br /&gt;
echo(gzinflate(base64_decode(&amp;quot;ZZBNisMwDIX.......T7oD&amp;quot;)));&lt;br /&gt;
#/c3284d# &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function frmAdd() { &lt;br /&gt;
var ifrm = document.createElement('iframe'); &lt;br /&gt;
....&lt;br /&gt;
}; &lt;br /&gt;
window.onload = frmAdd; &lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Site one the black list==&lt;br /&gt;
When you does not react fast enough, and Google notices this, the page is set to the &amp;quot;black list&amp;quot;. Browsers like Firefox use this to warn against unauthorized access to it. It looks like this:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:site_on_black_list_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Function of the module=&lt;br /&gt;
In the current version, the most important PHP files are checked for modifications.&amp;lt;br /&amp;gt;&lt;br /&gt;
This files will be checked:&lt;br /&gt;
* index.php&lt;br /&gt;
* cron.php (from version 1.1.0)&lt;br /&gt;
* contao/index.php&lt;br /&gt;
* contao/main.php&lt;br /&gt;
&lt;br /&gt;
==Time of verification==&lt;br /&gt;
This test is performed automatically (Contao-Cron), see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
==Detection==&lt;br /&gt;
The check is identical to the official Contao check tool, that means via MD5 checksums. Checksums are available for comparison for Contao from 2.10.0.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 1.1.0, check via timestamps is possible.&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
In the backend, you can see the results: System - System Log. Normally if everything is OK, no message appears. In its own module debug mode then there is only a message::&lt;br /&gt;
* Checking files for integrity is completed.&lt;br /&gt;
If modifications were detected, a message is generated for each file:&lt;br /&gt;
* Integrity status for file index.php is: Corrupt [MD5]&lt;br /&gt;
* Integrity status for cron.php file is corrupted [Timestamp]&lt;br /&gt;
** It was checked by time stamp, possible from version 1.1.0.&lt;br /&gt;
An information is available via System Log and mail, see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
==Creating integrity check==&lt;br /&gt;
The integrity check need a check plan. This can be used for any of the files for the time, the art of check and the action.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Time intervals===&lt;br /&gt;
* in Contao 2.10: daily, weekly, monthly&lt;br /&gt;
* in Contao 2.11: hourly, daily, weekly, monthly&lt;br /&gt;
* in Contao 3.0: minutely(manual), hourly, daily, weekly, monthly&lt;br /&gt;
&lt;br /&gt;
===Art of check===&lt;br /&gt;
The detection of a change in the file is possible via:&lt;br /&gt;
* MD5 checksum&lt;br /&gt;
* Timestamps&lt;br /&gt;
&lt;br /&gt;
===Action===&lt;br /&gt;
* System log: Message in the system log (backend)&lt;br /&gt;
* Mail to Admin: a mail is sent to the admin of the Contao installation.&lt;br /&gt;
** It will then creates also automatically  an entry in the System log (from version 1.1.0)&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
===System-Log und Mail===&lt;br /&gt;
From version 1.1.0 automatically gets an entry in the system log when a mail is sent.&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
In Version 1.0.0, if you want to have both types of information, you creates the check twice, each with one of the actions: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_2_en.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Here is an example only for the index.php. This is of course also for the other files.&lt;br /&gt;
&lt;br /&gt;
===There can be only one!===&lt;br /&gt;
It is possible in the integrity check overview to create multiple checks. It basically makes no sense. Therefore, it is ensured that there can be only an integrity check, which is activated. If you switch a new integrity check active, all other existing tests are automatically switched inactive.&lt;br /&gt;
&lt;br /&gt;
==Protection against infection==&lt;br /&gt;
Well, a general protection is probably not possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
But there is a possibility that the malicious code is not executed. There is a ticket to GitHub, it is accepted for Contao 3. Here is the short info for Contao 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
Edit the index.php, go to the method &amp;quot;run&amp;quot; in the last line, should be the line of 269th (2.11.5) Before the curly bracket insert an exit; or insert a row for it. Here is from line 268 as an example:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
change to:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
        exit;&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Note: Now, the Integrity Check Tool as well as the Contao Check Tool report a change. Use the check vie timestamp now.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 20:06, 1 April 2013 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Dlstats</id>
		<title>Dlstats</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Dlstats"/>
				<updated>2013-03-17T17:20:41Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Counts the number of file downloads&lt;br /&gt;
&lt;br /&gt;
* Download statistics for the standard content elements Download and Downloads&lt;br /&gt;
* Count number of downloads per file plus latest download timestamp&lt;br /&gt;
* Optionally log every single download with timestamp, IP and username.&lt;br /&gt;
* Insert-Tag for number of downloads in the frontend (from 2.1.0)&lt;br /&gt;
* Ignore certain IPs (define itself, from 2.1.0)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.3.0 / 3.0.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.7.6 - 2.8.4&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/dlstats.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/dlstats/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:dlstats]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao. On manual installation, call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''For manual installation, please note that the module &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; must be installed.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
Go to the Contao Settings and switch on the logging, either only counting the number of downloads per file, or optionally also log each download with timestamp and IP.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''For dlstats 2.1.x:''' In the settings you can be deactivated the Anonymize IP function, it must be the admin.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''From dlstats 2.2.0:''' IP addresses anonymous: &amp;quot;yes/no&amp;quot; is now controlled by Contao itself.&amp;lt;br /&amp;gt;&lt;br /&gt;
(System - Settings - Privacy settings - Anonymize IP addresses)&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Use the content element File Download or File Downloads for all downloaded files you want to have counted.&amp;lt;br /&amp;gt;&lt;br /&gt;
After downloading a file you will find the statistics under Content - Download Stats. &lt;br /&gt;
&lt;br /&gt;
==Using Insert-Tag==&lt;br /&gt;
The Insert-Tag &amp;quot;cache_dlstats::total downloads::...&amp;quot; supports both, the source of the file (relative path + file name), as well as in connection with the article alias and how it generates for ce_download and ce_downloads. Therefore, the use is well used in the templates of the two CEs, see examples. Return is only the number of downloads as a number.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_dlstats::totaldownloads::tl_files/cdc2010.pdf}}&lt;br /&gt;
{{cache_dlstats::totaldownloads::CDC_2010.html?file=tl_files/cdc2010.pdf}}&lt;br /&gt;
&lt;br /&gt;
// in ce_download template:&lt;br /&gt;
{{cache_dlstats::totaldownloads::&amp;lt;?php echo $this-&amp;gt;href; ?&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
// in ce_downloads template:&lt;br /&gt;
{{cache_dlstats::totaldownloads::&amp;lt;?php echo $file['href']; ?&amp;gt;}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ignore certain IPs==&lt;br /&gt;
If any downloads from certain IP addresses should not be counted, this can be defined in the localconfig.php as follows:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV4'][] = '192.168.1.2';&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV4'][] = '192.168.0.0/24';&lt;br /&gt;
//respectively&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV6'][] = '2001:0db8::1';&lt;br /&gt;
$GLOBALS['DLSTATS']['BOT_IPV6'][] = '2001:0db8:85a3:0800::/56';  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Notice==&lt;br /&gt;
* Simple links to files will not be counted as downloads!&lt;br /&gt;
* If you are logged in the backend, your download is not counted. (from 2.1.0)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:10, 29 December 2011 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/LastLogin</id>
		<title>LastLogin</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/LastLogin"/>
				<updated>2013-01-26T23:06:40Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Display of last login and the list of online / offline members over Insert-Tags.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
From Contao 2.8 is already displayed by the login module itself the last login time.&amp;lt;br /&amp;gt;&lt;br /&gt;
This module now supports the internal method and also includes an insert-tag for this.&amp;lt;br /&amp;gt;&lt;br /&gt;
More Insert-Tags have been added over the course of development, as shown in the follow list.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.9.0 / 3.0.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.8.0 - 2.8.4 (see installations notes)&lt;br /&gt;
| Depending=[[Memberlist|memberlist]] (mandatory), [[Avatar|avatar]] (optional)&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/lastlogin.en.html&lt;br /&gt;
| DonateLink=http://www.amazon.de/wishlist/26HHEJOU03G76&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/lastlogin/issues&lt;br /&gt;
| VCSLink=https://github.com/BugBuster1701/lastlogin&lt;br /&gt;
| Comment=Version for Contao 3.0 online &lt;br /&gt;
}}&lt;br /&gt;
[[de:LastLogin]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the LastLogin module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/lastlogin/issues Issue Tracker].&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/lastlogin.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/lastlogin&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Note for older Contao versions==&lt;br /&gt;
===Contao 2.8 - 2.11 ===&lt;br /&gt;
Contao 2.8 - 2.11 , please use LastLogin module version 1.9.1 ([http://www.contao.org/extension-list/view/lastlogin.10090019.en.html Direct Link])&lt;br /&gt;
===Contao 2.7===&lt;br /&gt;
Users of Contao 2.7.x, please use LastLogin module version 1.4.1 ([http://www.contao.org/extension-list/view/lastlogin.10040019.en.html Direct Link])&lt;br /&gt;
&lt;br /&gt;
=Installation as an update=&lt;br /&gt;
An update is identical to the installation.&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The last login module has no back end or front end modules, it provides only insert tags.&amp;lt;br /&amp;gt;&lt;br /&gt;
{{Hint|All Insert-Tags from the module to be resistant from Contao 2.8 cache by adding the prefix &amp;quot;cache_&amp;quot;.}}&lt;br /&gt;
When the cache is turned on in the site structure, the values of the insert tags will not be saved with the cache, but will be replaced again with each delivery from the cache.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: &amp;quot;last_login&amp;quot; becomes &amp;quot;cache_last_login.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following Insert-Tags are currently available:&lt;br /&gt;
* [[LastLogin#Last_Login|Last Login]]&lt;br /&gt;
** last_login / cache_last_login&lt;br /&gt;
&lt;br /&gt;
* [[LastLogin#Online_members|Online Members]]&lt;br /&gt;
** last_login_members_online / cache_last_login_members_online&lt;br /&gt;
* [[LastLogin#Online_members_linked|Online Members linked]]&lt;br /&gt;
** last_login_members_online_link / cache_last_login_members_online_link&lt;br /&gt;
&lt;br /&gt;
* [[LastLogin#Number_registered_members|Number registered members]]&lt;br /&gt;
** last_login_number_registered_members / cache_last_login_number_registered_members&lt;br /&gt;
* [[LastLogin#Number_online_members|Number online members]]&lt;br /&gt;
** last_login_number_online_members / cache_last_login_number_online_members&lt;br /&gt;
* [[LastLogin#Number_offline_members|Number offline members]]&lt;br /&gt;
** last_login_number_offline_members / cache_last_login_number_offline_members&lt;br /&gt;
&lt;br /&gt;
* [[LastLogin#Offline_members|Offline Members]]&lt;br /&gt;
** last_login_members_offline / cache_last_login_members_offline&lt;br /&gt;
* [[LastLogin#Offline_members_linked|Offline Members linked]]&lt;br /&gt;
** last_login_members_offline_link / cache_last_login_members_offline_link&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All the insert tags are controlled by parameters of what and how something is to be displayed. (firstname,lastname,avatar,...)&lt;br /&gt;
&lt;br /&gt;
==Last Login==&lt;br /&gt;
Shows the own &amp;quot;Last Login&amp;quot; time. Expandable with additional parameters.&amp;lt;br /&amp;gt;&lt;br /&gt;
Without the format information is generated after the system definition &amp;quot;dateFormat&amp;quot;. The example of the default installation &amp;quot;webacademy&amp;quot; is there defined as: &amp;quot;Y-m-d&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
On example would be the last login on 3.4.2009 at 16:27 o'clock: :&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
Last Login: {{cache_last_login}}&lt;br /&gt;
Last Login: {{cache_last_login::d.m.y H:i}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
shows:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
Last Login: 2009-04-03&lt;br /&gt;
Last Login: 03.04.09 16:27&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a member log on for the first time, no date for the last login is available. Instead, the current date is displayed.&amp;lt;br /&amp;gt;&lt;br /&gt;
Since version 1.9.0 it is possible to force the output in this case with a &amp;quot;0&amp;quot;. Syntax:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
Last Login: {{cache_last_login::zero}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
shows on first login: 0, after each additional login will shown the date. The date format can also be defined again:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
Last Login: {{cache_last_login::zero::d.m.Y H:i}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
About the output of the &amp;quot;0&amp;quot;, you can now respond in the template and print information on first login:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php if ($this-&amp;gt;replaceInsertTags( '{{cache_last_login::zero}}' ) == 0 ) : ?&amp;gt;&lt;br /&gt;
&amp;lt;p class=&amp;quot;notice&amp;quot;&amp;gt;Warning: This is your first login, please immediately change your password!&amp;lt;p&amp;gt;&lt;br /&gt;
&amp;lt;?php endif; ?&amp;gt; &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Online members==&lt;br /&gt;
Shows all the online and active members. Expandable with additional parameters. Each member must have released these fields. (Public fields)&lt;br /&gt;
&lt;br /&gt;
===Comma-separated output===&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_online::username}}&lt;br /&gt;
{{cache_last_login_members_online::firstname}}&lt;br /&gt;
{{cache_last_login_members_online::lastname}}&lt;br /&gt;
{{cache_last_login_members_online::fullname}}&lt;br /&gt;
{{cache_last_login_members_online::avatar}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The word &amp;quot;username&amp;quot; represents the default specification, &amp;lt;nowiki&amp;gt;{{cache_last_login_members_online}}&amp;lt;/nowiki&amp;gt; will also apply.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''The members are displayed only when you are online.'''&lt;br /&gt;
{{Hint|The term &amp;quot;avatar&amp;quot; will only work if the module &amp;quot;[http://www.contao.org/extension-list/view/avatar.en.html avatar]&amp;quot; is installed. This does not happen automatically because it has not been defined as dependence in the ER.}}&lt;br /&gt;
&lt;br /&gt;
===Output as a list===&lt;br /&gt;
The further declaration &amp;quot;list&amp;quot;, will be used the included template &amp;quot;mod_last_login_members&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
This will output a list of the names.&amp;lt;br /&amp;gt;&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_online::username::list}}&lt;br /&gt;
{{cache_last_login_members_online::firstname::list}}&lt;br /&gt;
{{cache_last_login_members_online::lastname::list}}&lt;br /&gt;
{{cache_last_login_members_online::fullname::list}}&lt;br /&gt;
{{cache_last_login_members_online::avatar::list}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The word &amp;quot;username&amp;quot; represents the default specification, &amp;lt;nowiki&amp;gt;{{cache_last_login_members_online::list}}&amp;lt;/nowiki&amp;gt; will also apply. &amp;lt;br /&amp;gt;&lt;br /&gt;
'''The members are displayed only when you are online.'''&lt;br /&gt;
{{Hint|The term &amp;quot;avatar&amp;quot; will only work if the module &amp;quot;[http://www.contao.org/extension-list/view/avatar.en.html avatar]&amp;quot; is installed. This does not happen automatically because it has not been defined as dependence in the ER.}}&lt;br /&gt;
&lt;br /&gt;
===Online members linked===&lt;br /&gt;
Online members as a linked issue with connection to the module member list. It can be specified which field to display (first parameter) and the alias name of the site by the Member List module has been integrated (second parameter).&amp;lt;br /&amp;gt;&lt;br /&gt;
Use as cache_last_login_members_online, following information are available:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_online_link::username::memberlist}}&lt;br /&gt;
{{cache_last_login_members_online_link::firstname::memberlist}}&lt;br /&gt;
{{cache_last_login_members_online_link::lastname::memberlist}}&lt;br /&gt;
{{cache_last_login_members_online_link::fullname::memberlist}}&lt;br /&gt;
{{cache_last_login_members_online_link::avatar::memberlist}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The words &amp;quot;username&amp;quot; and &amp;quot;memberlist&amp;quot; represents the default specification, &amp;lt;nowiki&amp;gt;{{cache_last_login_members_online_link}}&amp;lt;/nowiki&amp;gt; will also apply.&amp;lt;br /&amp;gt;'''The members are displayed only when you are online.'''&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Examples: Output should be firstname, alias name is &amp;quot;mymemberlist&amp;quot;:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_online_link::firstname::mymemberlist}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
generated when there are 2 users online (with ID 4 and 5):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_last_login&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;ul class=&amp;quot;members_online_link&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=4&amp;quot; title=&amp;quot;Profile view&amp;quot;&amp;gt;Donna&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=5&amp;quot; title=&amp;quot;Profile view&amp;quot;&amp;gt;John&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
With &amp;quot;avatar&amp;quot;, as follows:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_last_login&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;ul class=&amp;quot;members_online_link_avatar&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=4&amp;quot; title=&amp;quot;Profile view Donna Evans&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;img width=&amp;quot;32&amp;quot; height=&amp;quot;31&amp;quot; class=&amp;quot;avatar&amp;quot; alt=&amp;quot;avatar&amp;quot; src=&amp;quot;tl_files/avatars/member_4.jpg&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=5&amp;quot; title=&amp;quot;Profile view John Smith&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;img width=&amp;quot;32&amp;quot; height=&amp;quot;31&amp;quot; class=&amp;quot;avatar&amp;quot; alt=&amp;quot;avatar&amp;quot; src=&amp;quot;tl_files/avatars/member_5.jpg&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Number registered members==&lt;br /&gt;
Shows the number of registered members.&amp;lt;br /&amp;gt;&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
There are {{cache_last_login_number_registered_members}} registered members.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Number online members==&lt;br /&gt;
Shows the number of online members.&amp;lt;br /&amp;gt;&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
There are {{cache_last_login_number_online_members}} online members.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Number offline members==&lt;br /&gt;
Shows the number of offline members, but were already online today.&amp;lt;br /&amp;gt;&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
There are {{cache_last_login_number_offline_members}} offline members, recently online.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Offline members==&lt;br /&gt;
Shows offline members, recently online. Expandable with additional parameters.&lt;br /&gt;
===Comma-separated output===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_offline::username}}&lt;br /&gt;
{{cache_last_login_members_offline::firstname}}&lt;br /&gt;
{{cache_last_login_members_offline::lastname}}&lt;br /&gt;
{{cache_last_login_members_offline::fullname}}&lt;br /&gt;
{{cache_last_login_members_offline::avatar}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The word &amp;quot;username&amp;quot; represents the default specification, &amp;lt;nowiki&amp;gt;{{cache_last_login_members_offline}}&amp;lt;/nowiki&amp;gt; will also apply.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''The members are displayed only when you are online.'''&lt;br /&gt;
{{Hint|The term &amp;quot;avatar&amp;quot; will only work if the module &amp;quot;[http://www.contao.org/extension-list/view/avatar.en.html avatar]&amp;quot; is installed. This does not happen automatically because it has not been defined as dependence in the ER.}}&lt;br /&gt;
===Output as a list===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_offline::list}}&lt;br /&gt;
{{cache_last_login_members_offline::username::list}}&lt;br /&gt;
{{cache_last_login_members_offline::firstname::list}}&lt;br /&gt;
{{cache_last_login_members_offline::lastname::list}}&lt;br /&gt;
{{cache_last_login_members_offline::fullname::list}}&lt;br /&gt;
{{cache_last_login_members_offline::avatar::list}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The word &amp;quot;username&amp;quot; represents the default specification, &amp;lt;nowiki&amp;gt;{{cache_last_login_members_offline::list}}&amp;lt;/nowiki&amp;gt; will also apply. &amp;lt;br /&amp;gt;'''The members are displayed only when you are online.'''&lt;br /&gt;
{{Hint|The term &amp;quot;avatar&amp;quot; will only work if the module &amp;quot;[http://www.contao.org/extension-list/view/avatar.en.html avatar]&amp;quot; is installed. This does not happen automatically because it has not been defined as dependence in the ER.}}&lt;br /&gt;
&lt;br /&gt;
===Offline members linked===&lt;br /&gt;
Offline members (recently online) as a linked issue with connection to the module member list. It can be specified which field to display (first parameter) and the alias name of the site by the Member List module has been integrated (second parameter).&amp;lt;br /&amp;gt;&lt;br /&gt;
Use as last_login_members_offline, following information are available:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_offline_link::username::memberlist}}&lt;br /&gt;
{{cache_last_login_members_offline_link::firstname::memberlist}}&lt;br /&gt;
{{cache_last_login_members_offline_link::lastname::memberlist}}&lt;br /&gt;
{{cache_last_login_members_offline_link::fullname::memberlist}}&lt;br /&gt;
{{cache_last_login_members_offline_link::avatar::memberlist}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The words &amp;quot;username&amp;quot; and &amp;quot;memberlist&amp;quot; represents the default specification, &amp;lt;nowiki&amp;gt;{{cache_last_login_members_offline_link}}&amp;lt;/nowiki&amp;gt; will also apply.&amp;lt;br /&amp;gt;'''The members are displayed only when you are online.'''&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Examples: Output should be firstname, alias name is &amp;quot;mymemberlist&amp;quot;:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_offline_link::firstname::mymemberlist}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
generated when there are 2 users online (with ID 4 and 5): &lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_last_login_offline&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;ul class=&amp;quot;members_offline_link&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=4&amp;quot; title=&amp;quot;Profile view&amp;quot;&amp;gt;Donna&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=5&amp;quot; title=&amp;quot;Profile view&amp;quot;&amp;gt;John&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
With &amp;quot;avatar&amp;quot;, as follows: &lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_last_login_offline&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;ul class=&amp;quot;members_offline_link_avatar&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=4&amp;quot; title=&amp;quot;Profile view Donna Evans&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;img width=&amp;quot;32&amp;quot; height=&amp;quot;31&amp;quot; class=&amp;quot;avatar&amp;quot; alt=&amp;quot;avatar&amp;quot; src=&amp;quot;tl_files/avatars/member_4.jpg&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&amp;lt;a href=&amp;quot;mymemberlist.html?show=5&amp;quot; title=&amp;quot;Profile view John Smith&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;img width=&amp;quot;32&amp;quot; height=&amp;quot;31&amp;quot; class=&amp;quot;avatar&amp;quot; alt=&amp;quot;avatar&amp;quot; src=&amp;quot;tl_files/avatars/member_5.jpg&amp;quot;&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tutorials=&lt;br /&gt;
==Using as HTML Module==&lt;br /&gt;
The following code could be used to place the insert-tags to an HTML module:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;!-- indexer::stop --&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mod_login&amp;quot;&amp;gt;&lt;br /&gt;
Last Login: {{cache_last_login::d.m.Y}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;!-- indexer::continue --&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Then specify in the HTML module, &amp;quot;Protect module&amp;quot; and on &amp;quot;Allowed member groups&amp;quot; select &amp;quot;Select all&amp;quot;.&lt;br /&gt;
So that the module is shown only in a logged state.&lt;br /&gt;
&lt;br /&gt;
==Multilingualism==&lt;br /&gt;
With the Insert-Tag &amp;quot;&amp;lt;nowiki&amp;gt;{{iflng}}&amp;lt;/nowiki&amp;gt;&amp;quot; you could do it in several languages:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{iflng::en}}Last login:{{iflng}}{{iflng::de}}Letzer Login:{{iflng}} {{cache_last_login}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==When does &amp;quot;online&amp;quot; / &amp;quot;offline&amp;quot;?==&lt;br /&gt;
In &amp;quot;cache_last_login_members_online&amp;quot; / &amp;quot;cache_last_login_number_online_members&amp;quot; users must perform an action (page view) have done in Contao within the last 5 minutes. (Session table)&lt;br /&gt;
&lt;br /&gt;
In &amp;quot;cache_last_login_members_offline&amp;quot; / &amp;quot;cache_last_login_number_offline_members&amp;quot; it is quite complex, which was then so are discussed and defined:&lt;br /&gt;
* Users who have accessed within the session time for 5 minutes no pages (but session owner)&lt;br /&gt;
* Users were today or yesterday online and today offline, by logging off&lt;br /&gt;
* Users were online today, but have no more session, and are not logged (but session deleted)&lt;br /&gt;
&lt;br /&gt;
This means you get not all appear. It will only be displayed that were recently online, but already offline or considered as such.&lt;br /&gt;
&lt;br /&gt;
==Limit the number of output as a list==&lt;br /&gt;
In output as a list, it is possible by an additional parameter to limit the number. Examples of each type (with 5 lines):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{{cache_last_login_members_online::username::list::5}}&lt;br /&gt;
{{cache_last_login_members_online::avatar::list::5}}&lt;br /&gt;
{{cache_last_login_members_online_link::lastname::memberlist::5}}&lt;br /&gt;
{{cache_last_login_members_online_link::avatar::memberlist::5}}&lt;br /&gt;
{{cache_last_login_members_offline::lastname::list::5}}&lt;br /&gt;
{{cache_last_login_members_offline::avatar::list::5}}&lt;br /&gt;
{{cache_last_login_members_offline_link::fullname::memberlist::5}}&lt;br /&gt;
{{cache_last_login_members_offline_link::avatar::memberlist::5}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:06, 27 January 2013 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Visitors</id>
		<title>Visitors</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Visitors"/>
				<updated>2012-11-10T18:11:59Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg|right|Visitors]]This module allows you to count hits and visits of your website.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the display appears the hits and visits from the current day, as well as the respective total.&lt;br /&gt;
Statistic is also in the backend.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=2.7.1 / 3.0.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.7.0 - 2.8.4 (see installation notes)&lt;br /&gt;
| Depending=[[Bot Detection|Bot Detection]],[[xls_export|Excel 95 writer (xls_export)]]&lt;br /&gt;
| ERLink=http://www.contao.org/extension-list/view/visitors.en.html&lt;br /&gt;
| DonateLink=Cappuccino&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/visitors/issues&lt;br /&gt;
| Comment=Version for Contao 3.0 online&lt;br /&gt;
}}&lt;br /&gt;
[[de:Visitors]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Visitors module will be answered in forum: [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported at GitHub: [https://github.com/BugBuster1701/visitors/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/visitors.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/visitors&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php - Perform Update Database.&amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:red&amp;quot;&amp;gt;'''''The module Visitors is dependent on the module &amp;quot;[[Bot Detection|Bot Detection]]&amp;quot; and &amp;quot;[[xls_export|Excel 95 writer (xls_export)]]&amp;quot;. They must therefore be installed with manual installation.'''''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Note for older &amp;quot;TYPOlight&amp;quot; versions==&lt;br /&gt;
===TYPOlight 2.8===&lt;br /&gt;
Users of TYPOlight 2.8.x, please use Visitors Module Version 1.7.1 ([http://www.contao.org/extension-list/view/visitors.10070019.en.html Direct Link])&lt;br /&gt;
===TYPOlight 2.7===&lt;br /&gt;
Users of TYPOlight 2.7.x, please use Visitors Module Version 1.4.1 ([http://www.contao.org/extension-list/view/visitors.10040019.en.html Direct Link])&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
==Update version 1.x to version 2.x==&lt;br /&gt;
{{Caution|Version 2.x is not fully compatible with previous versions, an update is possible.}}&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
What is to be observed, can be found here. &lt;br /&gt;
*[[Visitors_Update_v1_to_v2|'''Visitors Update Version 1 to Version 2''']]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Overview=&lt;br /&gt;
The Visitors module contains two back end and one front end module.&amp;lt;br /&amp;gt;&lt;br /&gt;
In the back end, there are &amp;quot;Visitors&amp;quot; and &amp;quot;Visitor Statistics&amp;quot;, for the front end &amp;quot;Visitors&amp;quot;. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Back end==&lt;br /&gt;
&lt;br /&gt;
===Visitors===&lt;br /&gt;
[[File:Visitors_en_backend_visitors.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors_en_backend_visitorstatistics.jpg]]&lt;br /&gt;
&lt;br /&gt;
shows in detail: (Click on image for higher resolution)&lt;br /&gt;
&amp;lt;gallery widths=&amp;quot;240&amp;quot; heights=&amp;quot;180&amp;quot; caption=&amp;quot;Visitors Statistics&amp;quot;&amp;gt;&lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details.jpg|Visitors Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_browser.jpg|Browser Statistics &lt;br /&gt;
File:Visitors_en_backend_visitorstatistics_details_searchengine.jpg|Search Engine Referer Statistics &lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Front end==&lt;br /&gt;
For the front end are provided two CSS files as an example:&lt;br /&gt;
*mod_visitors_fe.css for the normal output, line by line&lt;br /&gt;
*mod_visitors_fe_horizontal.css for the horizontal output&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics===&lt;br /&gt;
[[File:Visitors-package-fe-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Visitors Statistics, horizontal===&lt;br /&gt;
[[File:Visitors-package-fe-horizontal-wiki-en.jpg]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
The first one creates a new visitor category via the menu item &amp;quot;visitors&amp;quot;. In this then the counter.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then, create a front end module and build it into the layout of the page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Here are the steps, each with the default values. [[Visitors#Technical_Details|Technical details]] will be explained later.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Create the category==&lt;br /&gt;
To create a new category, just click on the left in the back end in 'content' to 'Visitors'. In the main area click on the button 'New category'.&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_category_new.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
There, enter the name of the category. The front end module will later use this name. Then you click on &amp;quot;Save and close&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now you can see the category overview. By clicking on the pencil in the line of the category and repeated clicking on the pencil in the head of the category you return to the settings of the category.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Create new counter==&lt;br /&gt;
In the category list now clicking on Edit (pencil) of the category.&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, either click the 'New counter' and then the arrow icon, or click the plus in the head of the category: &amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Visitors_en_backend_counter_new.jpg]]&lt;br /&gt;
&lt;br /&gt;
Now, some information are needed: :&lt;br /&gt;
* Name, (is displayed as a heading on the numbers).&lt;br /&gt;
* Start date, optional, only for display in font end&lt;br /&gt;
* Optional: 'Initial value of visitors/hits'&lt;br /&gt;
* Optional: 'Visitors per day' &lt;br /&gt;
* Activate &amp;quot;Published&amp;quot;&lt;br /&gt;
Then you click on &amp;quot;Save and close&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Front end Module==&lt;br /&gt;
A new front-end module is create with:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Add module (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Add module (TYPOlight 2.8.x)&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
At first, enter the title, and only then select in &amp;quot;Module type&amp;quot;: 'Miscellaneous'-'Visitors'. It changes the form fields.&amp;lt;br /&amp;gt;&lt;br /&gt;
In 'Visitors category' now select the previously created category, then 'Save and close'.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, the front end module must be included in the layout:&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Layout -&amp;gt; Edit the used layout (Contao 2.9 and newer) &lt;br /&gt;
* Layout -&amp;gt; Page layout -&amp;gt; Edit the used layout (TYPOlight 2.8.x) &lt;br /&gt;
&lt;br /&gt;
Include in 'Included modules' the just-created front end module (e.g. to left) &lt;br /&gt;
&lt;br /&gt;
==CSS-File==&lt;br /&gt;
As mentioned above, are provided two CSS file for presentation.&amp;lt;br /&amp;gt;&lt;br /&gt;
For the first tests you should copy the file &amp;lt;code&amp;gt;mod_visitors_fe.css&amp;lt;/code&amp;gt; from &amp;lt;code&amp;gt;/system/modules/visitors&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;/tl_files&amp;lt;/code&amp;gt; . Then import them over the back end and activate it in the layout.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
Technical details are inside of the category, in the counter denifinition and in the constructed front end module feasible / adjustable. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the category==&lt;br /&gt;
===Counting mode===&lt;br /&gt;
From version 1.6.0, Counting mode is selectable, server side or browser side, by category:&lt;br /&gt;
* Load counting, server side by Contao&lt;br /&gt;
* Read counting, client side by browser&lt;br /&gt;
** (only on Contao cacheMode: server and browser cache / only browser cache)&lt;br /&gt;
&lt;br /&gt;
With &amp;quot;Read counting&amp;quot; can be counted when the page is in the browser cache and will be called from it.&lt;br /&gt;
The system setting &amp;quot;Cache mode&amp;quot; will be respected.&lt;br /&gt;
&lt;br /&gt;
{{Note|The display of current values will continue but only if the page is requested from the server.}}&lt;br /&gt;
&lt;br /&gt;
==Technical Details inside of the counter denifinition==&lt;br /&gt;
===Block time===&lt;br /&gt;
The block time is in seconds. After interruption of the requests at this time, an access is counted as an additional visitor.&amp;lt;br /&amp;gt;&lt;br /&gt;
Pre-entered are 1800 seconds, so that is 30 minutes.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
==Technical Details in the front end module definition==&lt;br /&gt;
===Templates===&lt;br /&gt;
Each module can be assigned its own Template. Four different templates are included.&lt;br /&gt;
* mod_visitors_fe_all&lt;br /&gt;
** All fields are included. (see example above)&lt;br /&gt;
* mod_visitors_fe_hits&lt;br /&gt;
** Here the visit rows were removed.&lt;br /&gt;
* mod_visitors_fe_visits&lt;br /&gt;
** Here the hit rows were removed.&lt;br /&gt;
* mod_visitors_fe_invisible.tpl&lt;br /&gt;
** Here, nothing is displayed. This template is used for a pure counting.&lt;br /&gt;
&lt;br /&gt;
For own Templates, the template files must start with &amp;quot;mod_visitors_fe_&amp;quot; and end with &amp;quot;.tpl&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Show to guests only===&lt;br /&gt;
Hide the module if a member (front end user) is logged in. &lt;br /&gt;
&lt;br /&gt;
===Protect module===&lt;br /&gt;
Show the module to certain member groups only.&lt;br /&gt;
&lt;br /&gt;
===No counting for this HTTP_USER_AGENT partial identifier===&lt;br /&gt;
You can set a custom UserAgent String in your browser and in the visitors module configuration.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
* Layout -&amp;gt; Themes -&amp;gt; Modules -&amp;gt; Module Name (Contao 2.9)&lt;br /&gt;
* Layout -&amp;gt; Modules -&amp;gt; Module Name (TYPOlight 2.8.x)&lt;br /&gt;
In the field: &amp;quot;No counting for this HTTP_USER_AGENT partial identifier&amp;quot;, you can enter a unique identifier.&amp;lt;br /&amp;gt;&lt;br /&gt;
Example: CTISOK&amp;lt;br /&amp;gt;&lt;br /&gt;
Save it.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Now, change the User Agent String of Mozilla Firefox:&amp;lt;br /&amp;gt;&lt;br /&gt;
# Type '''about:config''' in the Mozilla Firefox address bar and press ENTER,&lt;br /&gt;
# Type '''general.useragent.extra.firefox''' in the Filter bar,&lt;br /&gt;
# Double-click on the returned Firefox setting, where you can change a user agent string to overwrite the default. &lt;br /&gt;
# Add her &amp;quot;CTISOK&amp;quot; separated by space, e.g. &amp;quot;Firefox/3.5.2 CTISOK&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You can check your new User Agent String , type '''about:''' + ENTER in the Mozilla Firefox address bar and press ENTER, see last row.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
For other browsers, see:&lt;br /&gt;
[http://www.walkernews.net/2007/07/05/how-to-change-user-agent-string/ walkernews.net - how to change user agent string]&lt;br /&gt;
{{Hint|This does not work anymore in Firefox 4.  Alternatively, use the add-on: [https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher/ User-Agent-Switcher]}}&lt;br /&gt;
&lt;br /&gt;
=Insert-Tags=&lt;br /&gt;
==Show the values==&lt;br /&gt;
From version 1.2.0 there is Insert-Tags to show the values.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::name}}&lt;br /&gt;
 {{visitors::catid::online}}&lt;br /&gt;
 {{visitors::catid::start}}&lt;br /&gt;
 {{visitors::catid::totalvisit}}&lt;br /&gt;
 {{visitors::catid::totalhit}}&lt;br /&gt;
 {{visitors::catid::todayvisit}}&lt;br /&gt;
 {{visitors::catid::todayhit}}&lt;br /&gt;
 {{visitors::catid::averagevisits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
From version 1.5.0 and from TYPOlight 2.8, Insert-Tags can be extended with prefix 'cache_'. Thus, these then cache resistant.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::name}}&lt;br /&gt;
 ...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The counting is continued through the module! Who wants to use to display the insert tags, the module continues to need, but only to count. With the templates mod_visitors_fe_invisible the module may be invisible, if desired.&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
To determine the category ID, go into the category overview of the module with your mouse over the &amp;quot;i&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 2.3.1, the ID is shown right behind the category name.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Visitors-package-category.jpg|Visitor category ID]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
The tooltip displays the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
Or click on the &amp;quot;i&amp;quot;, in the following site is in the first line the ID.&amp;lt;br /&amp;gt;&lt;br /&gt;
For category ID = 1 that would be like that:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::1::online}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Count==&lt;br /&gt;
An alternative to &amp;quot;counting only&amp;quot; would be to use an Insert-Tag. From version 1.5.0 there is another Insert-Tag. The module itself uses this as well:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{cache_visitors::catid::count}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Example for installation in an article (for category ID = 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;span style=&amp;quot;width:0px;height:0px;&amp;quot;&amp;gt;{{cache_visitors::1::count}}&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Caution|It must be noticed, that the insert-tag for the count will be installed at first on the page so that the counting is carried out before the identification of the values.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==More Insert-Tags==&lt;br /&gt;
From version 2.1.0, there ist Insert-Tags for display the values of the day with the most visitors.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 {{visitors::catid::bestday::date}}   - Day (Date) with the most visitors&lt;br /&gt;
 {{visitors::catid::bestday::visits}} - Number of visitors of the day with most visitors&lt;br /&gt;
 {{visitors::catid::bestday::hits}}   - Number of hits of the day with most visitors&lt;br /&gt;
or&lt;br /&gt;
 {{cache_visitors::catid::bestday::date}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::visits}}&lt;br /&gt;
 {{cache_visitors::catid::bestday::hits}}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
The &amp;quot;date&amp;quot; insert-tag has an optional parameter to format the date output. (m.d.Y , Y-m-d, etc.)&amp;lt;br /&amp;gt;&lt;br /&gt;
The system setting is used as default. As a separator, a &amp;quot;::&amp;quot; are used.&amp;lt;br /&amp;gt;&lt;br /&gt;
A complete example (with category 1):&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
 Best Day: {{visitors::1::bestday::date::j. F Y}} with {{visitors::1::bestday::visits}} visitors &lt;br /&gt;
(and {{visitors::1::bestday::hits}} hits)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
results:&lt;br /&gt;
 Best Day: 31. August 2010 with 25 visitors (and 123 hits)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Specific feature=&lt;br /&gt;
==No counting==&lt;br /&gt;
No front-end call is counted when one is logged on at the same time in the back end.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visitors per day: Ø = 0==&lt;br /&gt;
The average value per day will be calculated for each full calendar day.&amp;lt;br /&amp;gt;&lt;br /&gt;
So, having only one day before a counting or a counting of the current day, no meaningful value can be calculated.&amp;lt;br /&amp;gt;&lt;br /&gt;
(average = number visitors)&amp;lt;br /&amp;gt;&lt;br /&gt;
In these cases appears &amp;quot;0&amp;quot;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Bot Detection off==&lt;br /&gt;
Who wants to count the hits from bots and search engines can switch off the bot detection. This is done by the file localconfig.php.&lt;br /&gt;
{{Caution|This applies to all Visitors modules when several front end modules have been created!}}&lt;br /&gt;
The following entry to the end of localconfig.php (after: ### INSTALL SCRIPT STOP ### ) switching off the bot detection:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$GLOBALS['TL_CONFIG']['mod_visitors_bot_check'] = false;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 00:42, 12 December 2010 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Backend_User_Online</id>
		<title>Backend User Online</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Backend_User_Online"/>
				<updated>2012-11-10T17:54:48Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: /* Using */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Shows in then back end the online status of the back end and front end user in the user / member overview.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.2.0 / 3.0.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.7.2 - 2.8.4&lt;br /&gt;
| ERLink=http://http://contao.org/en/extension-list/view/backend_user_online.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/backend_user_online/issues&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[de:Backend_User_Online]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/backend_user_online/issues Issue Tracker]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/backend_user_online.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/backend_user_online&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
It expands the area of &amp;quot;Account manager&amp;quot; - &amp;quot;Members&amp;quot; and &amp;quot;Account manager&amp;quot; - &amp;quot;Users&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
For members it looks like this:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Be_user_online_en_member.jpg|Backend User Online - Members]]&lt;br /&gt;
&lt;br /&gt;
It represents the green eye &amp;quot;Online&amp;quot;, the gray eyes &amp;quot;Offline&amp;quot;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
For users it looks like this:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Be_user_online_en_user.jpg|Backend User Online - Users]]&lt;br /&gt;
&lt;br /&gt;
When you sort, as seen in the pictures, to &amp;quot;Last Login&amp;quot;, this information can also be seen.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 18:54, 10 November 2012 (CET)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Backend_User_Online</id>
		<title>Backend User Online</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Backend_User_Online"/>
				<updated>2012-11-10T17:54:30Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: /* Using */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Shows in then back end the online status of the back end and front end user in the user / member overview.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.2.0 / 3.0.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.7.2 - 2.8.4&lt;br /&gt;
| ERLink=http://http://contao.org/en/extension-list/view/backend_user_online.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/backend_user_online/issues&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[de:Backend_User_Online]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/backend_user_online/issues Issue Tracker]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/backend_user_online.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/backend_user_online&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
It expands the area of &amp;quot;Account manager&amp;quot; - &amp;quot;Members&amp;quot; and &amp;quot;Account manager&amp;quot; - &amp;quot;Users&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
For members it looks like this:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Be_user_online_en_member.jpg|Backend User Online - Members]]&lt;br /&gt;
&lt;br /&gt;
It represents the green eye &amp;quot;Online&amp;quot;, the gray eyes &amp;quot;Offline&amp;quot;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
For users it looks like this:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Be_user_online_en_user.jpg|Backend User Online - Users]]&lt;br /&gt;
&lt;br /&gt;
When you sort, as seen in the pictures, to &amp;quot;Last Login&amp;quot;, this information can also be seen.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 23:33, 25 September 2010 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/File:Be_user_online_en_user.jpg</id>
		<title>File:Be user online en user.jpg</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/File:Be_user_online_en_user.jpg"/>
				<updated>2012-11-10T17:51:31Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: uploaded a new version of &amp;quot;File:Be user online en user.jpg&amp;quot;:&amp;amp;#32;Contao 3 Version&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Back end user online - users&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/File:Be_user_online_en_member.jpg</id>
		<title>File:Be user online en member.jpg</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/File:Be_user_online_en_member.jpg"/>
				<updated>2012-11-10T17:51:03Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: uploaded a new version of &amp;quot;File:Be user online en member.jpg&amp;quot;:&amp;amp;#32;Contao 3 Version&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Back end user online - members&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Backend_User_Online</id>
		<title>Backend User Online</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Backend_User_Online"/>
				<updated>2012-11-10T17:41:40Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Shows in then back end the online status of the back end and front end user in the user / member overview.&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.2.0 / 3.0.0&lt;br /&gt;
| Version=from 2.9&lt;br /&gt;
| TLVersion=2.7.2 - 2.8.4&lt;br /&gt;
| ERLink=http://http://contao.org/en/extension-list/view/backend_user_online.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/backend_user_online/issues&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[de:Backend_User_Online]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/backend_user_online/issues Issue Tracker]&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/extension-list/view/backend_user_online.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/backend_user_online&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
( /typolight/install.php in older TYPOlight installations )&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Using=&lt;br /&gt;
It expands the area of &amp;quot;Account manager&amp;quot; - &amp;quot;Members&amp;quot; and &amp;quot;Account manager&amp;quot; - &amp;quot;Users&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
For members it looks like this:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Be_user_online_en_member.jpg|Backend User Online - Members]]&lt;br /&gt;
&lt;br /&gt;
It represents the green eye &amp;quot;Online&amp;quot;, the gray eyes &amp;quot;Offline&amp;quot;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
For users it looks like this:&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:Be_user_online_en_user.jpg|Backend User Online - Users]]&lt;br /&gt;
&lt;br /&gt;
It represents the green eye &amp;quot;Online&amp;quot;, the gray eyes &amp;quot;Offline&amp;quot;.&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 23:33, 25 September 2010 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Integrity_Check</id>
		<title>Integrity Check</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Integrity_Check"/>
				<updated>2012-09-03T18:02:37Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:check_overview_en.jpg|right|Integrity Check]] Integrity check for some files from Contao (Detection of hacked Contao installations.)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.1.0 &lt;br /&gt;
| Version=from 2.10.0&lt;br /&gt;
| ERLink=http://www.contao.org/en/extension-list/view/integrity_check.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/integrity_check/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:Integrity_Check]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
In Contao Forum, reports came about changed files, which malicious code was attached.&amp;lt;br /&amp;gt;&lt;br /&gt;
The problem itself can not be attributed to a vulnerability in Contao, but will be distributed over other ways of the server, eg vulnerable WP plugins, hacked servers, hacked FTP logins, etc.&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/integrity_check/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/en/extension-list/view/integrity_check.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/integrity_check&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Example of an Infection=&lt;br /&gt;
How now looks like such a hack?&amp;lt;br /&amp;gt;&lt;br /&gt;
The attachment to the file index.php looked like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
#c3284d#&lt;br /&gt;
echo(gzinflate(base64_decode(&amp;quot;ZZBNisMwDIX.......T7oD&amp;quot;)));&lt;br /&gt;
#/c3284d# &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function frmAdd() { &lt;br /&gt;
var ifrm = document.createElement('iframe'); &lt;br /&gt;
....&lt;br /&gt;
}; &lt;br /&gt;
window.onload = frmAdd; &lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Site one the black list==&lt;br /&gt;
When you does not react fast enough, and Google notices this, the page is set to the &amp;quot;black list&amp;quot;. Browsers like Firefox use this to warn against unauthorized access to it. It looks like this:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:site_on_black_list_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Function of the module=&lt;br /&gt;
In the current version, the most important PHP files are checked for modifications.&amp;lt;br /&amp;gt;&lt;br /&gt;
This files will be checked:&lt;br /&gt;
* index.php&lt;br /&gt;
* cron.php (from version 1.1.0)&lt;br /&gt;
* contao/index.php&lt;br /&gt;
* contao/main.php&lt;br /&gt;
&lt;br /&gt;
==Time of verification==&lt;br /&gt;
This test is performed automatically (Contao-Cron), see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
==Detection==&lt;br /&gt;
The check is identical to the official Contao check tool, that means via MD5 checksums. Checksums are available for comparison for Contao from 2.10.0.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 1.1.0, check via timestamps is possible.&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
In the backend, you can see the results: System - System Log. Normally if everything is OK, no message appears. In its own module debug mode then there is only a message::&lt;br /&gt;
* Checking files for integrity is completed.&lt;br /&gt;
If modifications were detected, a message is generated for each file:&lt;br /&gt;
* Integrity status for file index.php is: Corrupt [MD5]&lt;br /&gt;
* Integrity status for cron.php file is corrupted [Timestamp]&lt;br /&gt;
** It was checked by time stamp, possible from version 1.1.0.&lt;br /&gt;
An information is available via System Log and mail, see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
==Creating integrity check==&lt;br /&gt;
The integrity check need a check plan. This can be used for any of the files for the time, the art of check and the action.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Time intervals===&lt;br /&gt;
* in Contao 2.10: daily, weekly, monthly&lt;br /&gt;
* in Contao 2.11: hourly, daily, weekly, monthly&lt;br /&gt;
* in Contao 3.0*: minutely, hourly, daily, weekly, monthly&lt;br /&gt;
 *Contao 3.0 Version still in development&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Art of check===&lt;br /&gt;
The detection of a change in the file is possible via:&lt;br /&gt;
* MD5 checksum&lt;br /&gt;
* Timestamps&lt;br /&gt;
&lt;br /&gt;
===Action===&lt;br /&gt;
* System log: Message in the system log (backend)&lt;br /&gt;
* Mail to Admin: a mail is sent to the admin of the Contao installation.&lt;br /&gt;
** It will then creates also automatically  an entry in the System log (from version 1.1.0)&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
===System-Log und Mail===&lt;br /&gt;
From version 1.1.0 automatically gets an entry in the system log when a mail is sent.&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
In Version 1.0.0, if you want to have both types of information, you creates the check twice, each with one of the actions: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_2_en.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Here is an example only for the index.php. This is of course also for the other files.&lt;br /&gt;
&lt;br /&gt;
===There can be only one!===&lt;br /&gt;
It is possible in the integrity check overview to create multiple checks. It basically makes no sense. Therefore, it is ensured that there can be only an integrity check, which is activated. If you switch a new integrity check active, all other existing tests are automatically switched inactive.&lt;br /&gt;
&lt;br /&gt;
==Protection against infection==&lt;br /&gt;
Well, a general protection is probably not possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
But there is a possibility that the malicious code is not executed. There is a ticket to GitHub, it is accepted for Contao 3. Here is the short info for Contao 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
Edit the index.php, go to the method &amp;quot;run&amp;quot; in the last line, should be the line of 269th (2.11.5) Before the curly bracket insert an exit; or insert a row for it. Here is from line 268 as an example:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
change to:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
        exit;&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Note: Now, the Integrity Check Tool as well as the Contao Check Tool report a change. Use the check vie timestamp now.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 14:14, 2 August 2012 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/File:Check_overview_en.jpg</id>
		<title>File:Check overview en.jpg</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/File:Check_overview_en.jpg"/>
				<updated>2012-08-26T20:01:16Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: Ceck Overview&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ceck Overview&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	<entry>
		<id>https://en.contaowiki.org/Integrity_Check</id>
		<title>Integrity Check</title>
		<link rel="alternate" type="text/html" href="https://en.contaowiki.org/Integrity_Check"/>
				<updated>2012-08-26T20:00:45Z</updated>
		
		<summary type="html">&lt;p&gt;BugBuster: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''''I'm not a native English speaker. Please correct my mistakes.'''''&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:check_overview_en.jpg|right|Integrity Check]] Integrity check for some files from Contao (Detection of hacked Contao installations.)&lt;br /&gt;
&lt;br /&gt;
{{ExtInfo&lt;br /&gt;
| Dev=Glen Langer ([[User:BugBuster|BugBuster]])&lt;br /&gt;
| DevSite=http://www.contao.glen-langer.de&lt;br /&gt;
| ExtVersion=1.1.0 rc1&lt;br /&gt;
| Version=from 2.10.0&lt;br /&gt;
| ERLink=http://www.contao.org/en/extension-list/view/integrity_check.en.html&lt;br /&gt;
| TrackerLink=https://github.com/BugBuster1701/integrity_check/issues&lt;br /&gt;
}}&lt;br /&gt;
[[de:Integrity_Check]]&lt;br /&gt;
[[Category:Extensions]]&lt;br /&gt;
&lt;br /&gt;
In Contao Forum, reports came about changed files, which malicious code was attached.&amp;lt;br /&amp;gt;&lt;br /&gt;
The problem itself can not be attributed to a vulnerability in Contao, but will be distributed over other ways of the server, eg vulnerable WP plugins, hacked servers, hacked FTP logins, etc.&lt;br /&gt;
&lt;br /&gt;
=Forum=&lt;br /&gt;
Questions about the Bot Detection module will be answered in [http://www.contao-community.org/viewforum.php?f=21 Forum]&amp;lt;br /&amp;gt;&lt;br /&gt;
Errors and requests can be reported in the [https://github.com/BugBuster1701/integrity_check/issues Issue Tracker].&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The installation of the module occurs about the extension Repository in back end of Contao.&amp;lt;br /&amp;gt;&lt;br /&gt;
A manual installation is possible. [http://www.contao.org/en/extension-list/view/integrity_check.en.html Download] the ZIP file from Extension Repository, unzip and transfer it.&amp;lt;br /&amp;gt;&lt;br /&gt;
A directory should have been created &amp;quot;/system/modules/integrity_check&amp;quot;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Then call /contao/install.php  - Perform Update Database. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Example of an Infection=&lt;br /&gt;
How now looks like such a hack?&amp;lt;br /&amp;gt;&lt;br /&gt;
The attachment to the file index.php looked like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
#c3284d#&lt;br /&gt;
echo(gzinflate(base64_decode(&amp;quot;ZZBNisMwDIX.......T7oD&amp;quot;)));&lt;br /&gt;
#/c3284d# &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or like this (shortened):&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
function frmAdd() { &lt;br /&gt;
var ifrm = document.createElement('iframe'); &lt;br /&gt;
....&lt;br /&gt;
}; &lt;br /&gt;
window.onload = frmAdd; &lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Site one the black list==&lt;br /&gt;
When you does not react fast enough, and Google notices this, the page is set to the &amp;quot;black list&amp;quot;. Browsers like Firefox use this to warn against unauthorized access to it. It looks like this:&amp;lt;br /&amp;gt;&lt;br /&gt;
[[File:site_on_black_list_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
=Function of the module=&lt;br /&gt;
In the current version, the most important PHP files are checked for modifications.&amp;lt;br /&amp;gt;&lt;br /&gt;
This files will be checked:&lt;br /&gt;
* index.php&lt;br /&gt;
* cron.php (from version 1.1.0)&lt;br /&gt;
* contao/index.php&lt;br /&gt;
* contao/main.php&lt;br /&gt;
&lt;br /&gt;
==Time of verification==&lt;br /&gt;
This test is performed automatically (Contao-Cron), see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
==Detection==&lt;br /&gt;
The check is identical to the official Contao check tool, that means via MD5 checksums. Checksums are available for comparison for Contao from 2.10.0.&amp;lt;br /&amp;gt;&lt;br /&gt;
From version 1.1.0, check via timestamps is possible.&lt;br /&gt;
&lt;br /&gt;
==Using==&lt;br /&gt;
In the backend, you can see the results: System - System Log. Normally if everything is OK, no message appears. In its own module debug mode then there is only a message::&lt;br /&gt;
* Checking files for integrity is completed.&lt;br /&gt;
If modifications were detected, a message is generated for each file:&lt;br /&gt;
* Integrity status for file index.php is: Corrupt [MD5]&lt;br /&gt;
* Integrity status for cron.php file is corrupted [Timestamp]&lt;br /&gt;
** It was checked by time stamp, possible from version 1.1.0.&lt;br /&gt;
An information is available via System Log and mail, see the section [[Integrity_Check#Technical_Details|Technical Details]].&lt;br /&gt;
&lt;br /&gt;
=Technical Details=&lt;br /&gt;
==Creating integrity check==&lt;br /&gt;
The integrity check need a check plan. This can be used for any of the files for the time, the art of check and the action.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Time intervals===&lt;br /&gt;
* in Contao 2.10: daily, weekly, monthly&lt;br /&gt;
* in Contao 2.11: hourly, daily, weekly, monthly&lt;br /&gt;
* in Contao 3.0*: minutely, hourly, daily, weekly, monthly&lt;br /&gt;
 *Contao 3.0 Version still in development&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Art of check===&lt;br /&gt;
The detection of a change in the file is possible via:&lt;br /&gt;
* MD5 checksum&lt;br /&gt;
* Timestamps&lt;br /&gt;
&lt;br /&gt;
===Action===&lt;br /&gt;
* System log: Message in the system log (backend)&lt;br /&gt;
* Mail to Admin: a mail is sent to the admin of the Contao installation.&lt;br /&gt;
** It will then creates also automatically  an entry in the System log (from version 1.1.0)&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
===System-Log und Mail===&lt;br /&gt;
From version 1.1.0 automatically gets an entry in the system log when a mail is sent.&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
In Version 1.0.0, if you want to have both types of information, you creates the check twice, each with one of the actions: &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:check_plan_2_en.jpg]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Here is an example only for the index.php. This is of course also for the other files.&lt;br /&gt;
&lt;br /&gt;
===There can be only one!===&lt;br /&gt;
It is possible in the integrity check overview to create multiple checks. It basically makes no sense. Therefore, it is ensured that there can be only an integrity check, which is activated. If you switch a new integrity check active, all other existing tests are automatically switched inactive.&lt;br /&gt;
&lt;br /&gt;
==Protection against infection==&lt;br /&gt;
Well, a general protection is probably not possible.&amp;lt;br /&amp;gt;&lt;br /&gt;
But there is a possibility that the malicious code is not executed. There is a ticket to GitHub, it is accepted for Contao 3. Here is the short info for Contao 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
Edit the index.php, go to the method &amp;quot;run&amp;quot; in the last line, should be the line of 269th (2.11.5) Before the curly bracket insert an exit; or insert a row for it. Here is from line 268 as an example:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
change to:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
        exit;&lt;br /&gt;
    }  &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Note: Now, the Integrity Check Tool as well as the Contao Check Tool report a change. Use the check vie timestamp now.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
--[[User:BugBuster|BugBuster]] 14:14, 2 August 2012 (CEST)&lt;/div&gt;</summary>
		<author><name>BugBuster</name></author>	</entry>

	</feed>