Message board, twin mode

Extension key

tt_board

Package name

jambagecom/tt-board

Version

main

Language

en

Description

Simple threaded (tree) or list message board (forum).

Keywords

translation pack

Copyright

since 2006

Author

Franz Holzinger

Email

franz@ttproducts.de

License

This document is published under the Creative Commons BY 4.0 license.

Rendered

Mon, 21 Jul 2025 19:28:13 +0000



Table of Contents:

Introduction

What does it do?

This is a forum and commenting system in list and tree view. It is the oldest forum/message board extension in TYPO3. It is not aimed at competing with other board products which feature a lot community like features with user profiles. However a front end user login may be used to limit read/write access by simply access-restricting the very board elements and pages used for display and submission of data. Use this extension in combination with a front end user registration extension.

Screenshots

List type forum:

list type forum

The forum topics and entries are listed in a table format.

Tree type forum:

tree type forum

The forum topics and entries are listed in a tree format with a plus symbol.

Requirements:

PHP 8.0, TYPO3 12.4, extension div2007 1.16.0 and extension tslib_fetce 0.8.0 are the minimum requirements.

Support:

You can get support and installation service for this extension at https://jambage.com/kontakt/forum/forum.html .

Users Manual

Installation

  1. Install tt_board from the Extension Manager. Maybe the extension must be fetched from TYPO3 TER in the Extension Manager or from https://extensions.typo3.org/ by downloading a ZIP file and uploading it into your TYPO3 system.

    tt_board in the Extension Manager

    list tt_board in the Extension Manager

Activate tt_board in the Extension Manager.

  1. Check if tt_board has been activated.

    tt_board activated in the Extension Manager

    list tt_board in the Extension Manager after activation

tt_board must have been activated in the Extension Manager.

  1. The Extension Manager should have activated all the dependant extensions automatically.

    tt_board's depending extensions activated

    list tt_board's depending extensions in the Extension Manager after activation

tt_board depends on some extensions which are automatically activated from the Extension Manager when tt_board is activated.

  1. Choose or add a starting page for the forum.

    add a starting page

    Each forum needs a starting page.

Use the TYPO3 backend page module to add a starting page.

  1. Add a new content element and choose the Board plugin.

    choose the first forum plugin

    The forum needs "Discussion Forum" or a "Message Board" plugin.

Choose the "Message Board" plugin for this example.

  1. Insert the Plugin on your Topics page

    insert the first forum plugin

    plugin addition

After the previous step you will see the "General" tab of the content element of the plugin.

  1. Select the Forum: List flexform of the Plugin “Board, List”

    insert the first forum list plugin

    forum list plugin addition

From the list of the available items you shall choose "Forum: List" for this example. Press the save button.

  1. Verify the code in the page module. It must be ‘LIST_FORUMS’.

    verify the code of the first forum list plugin

    forum list code verification

Just to be sure that everything has been accomplished correctly, have a look at the code of the plugin.

  1. Add two subpages underneath the Topics page. Add 2 subpages "Forum 1" and "Forum 2" Two forum pages are created below the forum starting page.
  1. Add a discussion forum to the page “Forum 1”. Add plugin for message board 1. Use the "New content element wizard". Add a new content element of the type plugin and subtype "Message Board" from the plugin tab.
  1. Insert the flexforms “Forum: Single” and “Entry Form: General” .

    select the message board 1 display modes

    Click 2 message board plugins from "Available items" into "Selected items"

    Choose from the available display modes for the "Message Board" (Board / List).

  1. Add the Message board to the “Forum 2” page.

    add plugin for message board 2

    New content element wizard with plugin tab

    Add a new content element of the type plugin and subtype "Message Board" from the plugin tab.

  1. Insert the “Forum: Single” and “Entry Form: General” flexforms.

    select the message board 2 display modes

    Click 2 message board plugins from "Available items" into "Selected items"

    Choose from the available display modes for the "Message Board" (Board / List).

  1. Create an extension template for tt_board in your Templates folder and call it “+ext: tt_board”

    create an extension template for tt_board

    Add a sysfolder "Templates" and create an empty extension template.

    The Constants will be filled in the next step.

  1. Insert Constants and Setup for tt_board.

    add the first constants and setup

    Edit the “+ext: tt_board” template and add important constants and setup.

    The forum shall be allowed for any user. By default it is limited to logged in front end users. This is because it must be taken care of spammers.

    Insert the Constants.

    plugin.tt_board {
        memberOfGroups = 0
    }
    Copied!

    Insert the Setup.

    FEData.tt_board.processScript {
        sendToMailingList = 1
        sendToMailingList {
            email = franz@ttproducts.de
            reply = franz@ttproducts.de
            namePrefix = Typo3Forum
            altSubject = Post from my Forum
        }
    }
    Copied!

    Use your own e-mail adresses instead of the example email address.

  1. Add the CSS styles (or use your own CSS file) and the Message Board Setup under “Include static from extensions”.

    include static from extensions

    Edit the “+ext: tt_board” template and add the templates "Message Board CSS styles (tt_board)" and "Message Board Setup (tt_board)" on the include tab.

    You can forget about the CSS styles template if you include your own CSS file for tt_board.

  1. Edit your master template.

    edit the master template in the Templates sysfolder

    Open your master template in the Templates sysfolder.

    The master template is the template which defines the whole TYPO3 website.

  1. Include the “+ext: tt_board” from your master template under “Include Basis Template”.

    edit the master template in the tab include

    The popup window output contains a page browser in order to navigate to the extension template setup and constants.

You must choose the include tab from the master template and move to the “Include Basis Template” sysfolder symbol. If you click on it then a popup windows shows up. There you choose the “+ext: tt_board” template. This template must be included anywhere into your webpage's template.

  1. Check the result.

    included basis template "+ext tt_board"

    The master template shows the extension template "+ext tt_board" under “Include Basis Template” as included .

If everything went fine you must also click on the save button.

  1. The two forums should be visible in the front end now.

    front end view with 2 forums

    The 2 pages of the 2 forums are shown. One forum page is open and it shows the empty forum list, the search entry form and the post entry form.

You do not see any entries in the forum yet. These will be shown after the first users entered some posts.

Administrator Manual

Prerequisites

PAGE_TARGET = _top
Copied!

Some of the TypoScript settings do not function via the constants field, but must be entered in the setup field. Only those settings which can be found using the Constants Editor or in the file Configuration/Sets/MyPluginSet/constants.typoscript are valid constants. You must include the “Message Board Setup” into your “include static from extensions” of your TYPO3 template setup. The “Message Board CSS styles“ are not required. They provide default CSS styles for the forum.

Use the flexforms in the plugin entry form to configure the plugin's functionality.

To prevent from spammers you must set the memberOfGroups constant to the FE groups to which the FE users must belong to be able to post. If you still want to allow to post for everyone, then unset memberOfGroups.

Example Constants

plugin.tt_board {
   memberOfGroups =
}
Copied!

Allow postings to everybody. This might lead to many spam postings! Your provider might then take down your website.

Installation

To install the extension, perform the following steps:

  1. Go to the Extension Manager
  2. Install the extension

    Extension Manager

    List of extensions within the Extension Manager also shortened as "EM"

  3. Configure it in the Extension Manager

    exclude creator IP

    exclude.tt_board = cr_ip

    This option disables the IP address for all tt_board records. If unset then the IP address of each post is stored. GDPR can require that you do not record the IP address. Here you can enter a comma separated list of fields of the tt_board table which will not be used. cr_ip is set by default in order not to store the IP address of the customer client. Remove it if you want to see the IP address of the persons who entered forms.

  4. Load the static template

    Other configuration
    This other option is for all the rest...

Configuration

This extension must be configured in the Extension Manager and in the Constants and Setup. The Exension Manager shows these options on the tt_board page:

  • exclude fields: basic.exclude.tt_board

See Installation for more details.

See the chapter Configuration for TypoScript.

Spam

Use the spamWords constant and add your own spam words in the Constants.

Example Constants

plugin.tt_board {
   spamWords := addToList(bad phrase, V1agra, http)
}
Copied!

Collect the IP addresses of the users which sent too many spams and protect your whole website by putting those IP addresses into your .htaccess file. Or insert it inside of the Directory clauses of an apache config file. See http://www.javascriptkit.com/howto/htaccess5.shtml

Example .htaccess

...
order allow,deny
deny from 195.225.177.12 87.118.112.253 81.177.14.45
allow from all
...
Copied!

Privacy Policy

You must set the constant PIDprivacyPolicy to the page id which shows your DSGVO or GDPR information. This is a legal requirement. You must use a front end registration extension to register the users. They must already have agreed to your privacy policy. If you use the forum without logged in front end users, then a privacy policy checkbox will appear in the forum entry form. You can overwrite the default texts by the _LOCAL_LANG setup.

Example Setup

plugin.tt_board_list {
    _LOCAL_LANG.default {
        privacy_policy.title = PRIVACY AGREEMENT
        privacy_policy.acknowledgement = The GDPR is applied.
        privacy_policy.approval_required = You must approve it.
        privacy_policy.acknowledged = You acknowledge to have read the privacy policy.
        privacy_policy.acknowledged_2 = You acknowledge that your entered data may be processed according to GDPR.
        privacy_policy.hint = You can withdraw this again.
        privacy_policy.hint_1 = Just send us an email and your personal data will be removed.
    }
}
Copied!

You must alternatively use plugin.tt_board_tree for the tree type forum. plugin.tt_board_list is only used for the list type forum.

Privacy Policy

Override the language texts for the Privacy Policy

You should use TypoScript to write your own language texts instead of these defaults for anything.

Captcha

Install the extension sr_freecap. The default constants is empty. Set the constants to captcha = freecap . This will enable the display of a captcha display in your post forms. An alternative is the extension captcha. Set the constants to captcha = captcha”.

Files

File

Description

template folder

Example templates.

board_template1.tmpl

default for the static template 'plugin.tt_board_list'.

board_template2.tmpl

default for the static template 'plugin.tt_board_tree'.

board_template3.tmpl

listing of the posts in a thread.

FAQ

No entry form is visible

memberOfGroups must be set correctly. This is set by default to 1 because of the danger of spam.

Configuration Reference

TypoScript Reference

You must either use the plugin.tt_board_list TypoScript prefix or the plugin.tt_board_tree. This depends if you want to configure the list or the tree plugins. In the reference only the plugin.tt_board_list is mentioned for simplification.

View Properties

Property Data type stdWrap Default
templateFile _ resource no  
pid_list_ string yes  
PIDforum integer no  
PIDprivacyPolicy integer no  
code string yes  
defaultCode string no  
alternatingLayouts integer no 2
date_stdWrap_ stdWrap yes  
time_stdWrap_ stdWrap yes  
age_stdWrap_ stdWrap yes  
dontParseContent boolean no  
typolink typolink no  
tree boolean no  
iconCode boolean no  
iconCode.joinBottom_ string yes  
iconCode.join_ string yes  
iconCode.line_ string yes  
iconCode.blank_ string yes  
iconCode.thread_ string yes  
iconCode.end_ string yes  
emoticons boolean no 1
allowCaching boolean no  
displayCurrentRecord boolean no  
wrap1 stdWrap yes  
wrap2 stdWrap yes  
color1 string yes  
color2 string yes  
color3 string yes  

View Property Details

templateFile

plugin.tt_board_list.templateFile = resource

The template-file. | See example in Resources/Private/Templates/board_template1.tmpl.

pid_list

plugin.tt_board_list.pid_list = string

The pids from where to fetch categories, forums and so on. Default is the current page. Accepts multiple pids commaseparated!

PIDforum

plugin.tt_board_list.PIDforum = integer

PID for the forum page. | You can set this to change the page where the BACKLINK leeds to.

PIDprivacyPolicy

plugin.tt_board_list.PIDprivacyPolicy = integer

PID for the privacy policy page in the TYPO3 page tree. On this page you must publish the privacy policy according to DSGVO and GDPR. If you have set this page and no sendToMailingList is set, then an additional privacy confirmation checkbox will appear.

code

plugin.tt_board_list.code = string

Code Label Description
LIST_CATEGORIES Category, Forum: List List the first level of pages as categories and the second
LIST_FORUMS Forum: Listt Lists the first level of pages as forums.
POSTFORM Entry Form: General Creates a form from which to post to the forum
POSTFORM_REPLY Entry Form: Reply as above, but ONLY if "tt_board_uid" is set for a reply!
POSTFORM_THREAD Entry Form: New Threa as above, but ONLY if "tt_board_uid" is NOT set, which means "New Thread".
FORUM Forum: Single Shows the content of the current forum. If the GLOBAL-var "tt_board_uid" is set with a uid of a board-item, either this item is shown or the thread. Depends on config.
THREAD_TREE Forum: Tree (tree only) tree of threads
HELP General: Help Help

defaultCode

plugin.tt_board_list.defaultCode = string

The default code (see above) if the value is empty. By default it's not set and a help screen will appear.

alternatingLayouts

plugin.tt_board_list.alternatingLayouts = integer

Defines number of alternatingLayouts to look for. This script has the ability to alternate between the use of template-subparts. It goes like this: If you define a subpart like <!--###POST###--> ... <!--###POST###--> this is used all the time. If you define a similar subpart <!--###POST_1###--> ... <!--###POST_1###--> which might show another set of colors, this is used every second time instead of the default! This is because "alternateLayouts" is set to 2 If you define a similar subpart <!--###POST_2###--> ... <!--###POST_2###--> ... this will be used every third time IF (!) "alternateLayouts" is set to 3. If you do now set it to three, the first two will be used only.

date_stdWrap

plugin.tt_board_list.date_stdWrap = stdWrap

stdWrap for the display of a date. Suggestion: date_stdWrap.strftime= %e-%m-%y

time_stdWrap

plugin.tt_board_list.time_stdWrap = stdWrap

stdWrap for the display of a time. Suggestion: time_stdWrap.strftime= %H:%M:%S

age_stdWrap

plugin.tt_board_list.age_stdWrap = stdWrap

stdWrap for the display of an age. Suggestion: age_stdWrap.strftime= 1

dontParseContent

plugin.tt_board_list.dontParseContent = boolean

Normally the content which is output it htmlspecialchar'ed and nl2br'ed. This flag prevents that.

tree

plugin.tt_board_list.tree = boolean

If set the items in the threads are accepted to be a tree and not just a list to the same parent. This means that replys, will get the current tt_board_uid as parent no matter what. This is only desirable, if your board has a genuine tree-structure.

iconCode

plugin.tt_board_list.iconCode = boolean

Enables the four icons below. The default without this is the examples you see below.

iconCode.joinBottom

plugin.tt_board_list.iconCode.joinBottom = string

HTML-Code for a "joinBottom" element in a tree-structure. Eg "-"

iconCode.join

plugin.tt_board_list.iconCode.join = string

as above, Eg. "|-"

iconCode.line

plugin.tt_board_list.iconCode.line = string

as above, Eg. "| "

iconCode.blank

plugin.tt_board_list.iconCode.blank = string

as above, Eg. " "

iconCode.thread

plugin.tt_board_list.iconCode.thread = string

The icon for an element with reply-elements (called a thread)

iconCode.end

plugin.tt_board_list.iconCode.end = string

The icon for an element without any replys (and "end")

emoticons

plugin.tt_board_list.emoticons = boolean

Enables emotion icons: :-) :) etc.

allowCaching

plugin.tt_board_list.allowCaching = boolean

If set, caching of the each page represented with a tt_board_uid is allowed to be cached.

displayCurrentRecord

plugin.tt_board_list.displayCurrentRecord = boolean

If set, certain settings are manipulated in order to let the script render a single item - the $cObj->data.

wrap1

plugin.tt_board_list.wrap1 = stdWrap

Global Wrap 1. This will be splitted into the markers ###GW1B### and ###GW1E###. Don't change the input value by the settings, only wrap it in something.

Example:

Code:

wrap1.wrap = <strong> |</strong>

wrap2

plugin.tt_board_list.wrap2 = stdWrap

Global Wrap 2 (see above)

color1

plugin.tt_board_list.color1 = string

Value for ###GC1### marker (Global colour 1)

color2

plugin.tt_board_list.color2 = string

Value for ###GC2### marker (Global colour 2)

color3

plugin.tt_board_list.color3 = string

Value for ###GC3### marker (Global colour 3)

Form Properties

code= POSTFORM, POSTFORM_REPLY, POSTFORM_THREAD

Property Data type stdWrap Default
postform FORM Content Objects (cObject) no tt_content.mailform.20
postform_newThread_ FORM Content Objects (cObject) no tt_content.mailform.20
moderatorEmail string no  
moderatorEmail_newThread_ string no  
memberOfGroups string no  

Form Property Details

postform

plugin.tt_board_list.postform = Content Objects (cObject)

Only the dataArray of this setting should be changed. You can add entries to the dataArray of the FORM cObject in order to change the view.

Configuration of the form for posting replies and possibly also new threads. Note, that two hidden-fields are forcibly added to the form: "parent" and "pid" (using .dataArray keys 9998-9999)!

postform_newThread

plugin.tt_board_list.postform_newThread = Content Objects (cObject)

This is the alternative configuration of the form for new threads. It defaults to postform .

moderatorEmail

plugin.tt_board_list.moderatorEmail = string

Email address where to send the notification of new entries into the board. If set, this email-address will receive a mail whenever a new reply is submitted.

Example:

plugin.tt_board_list {
  moderatorEmail = john@doe.com
}
Copied!

moderatorEmail_newThread

plugin.tt_board_list.moderatorEmail_newThread = string

Same as moderatorEmail, however only for new threads. If set, this email-address will receive a mail when a new thread is created. If not set, defaults to moderatorEmail .

memberOfGroups

plugin.tt_board_list.memberOfGroups = 1,2

Comma separated list of FE groups which a user must belong to, so that the post forms are shown and the submission of a post is allowed.

Category List Properties

code= LIST_CATEGORIES

"Category, Forum: List" The following properties are all prepended by list_categories .

Property Data type stdWrap Default
noForums boolean no  
numberOfRecentPosts integer no 0
title_stdWrap_ stdWrap yes  
subtitle_stdWrap_ stdWrap yes  
count_stdWrap_ stdWrap yes  
forum_title_stdWrap_ stdWrap yes  
forum_description_stdWrap_ stdWrap yes  
forum_posts_stdWrap_ stdWrap yes  
forum_threads_stdWrap_ stdWrap yes  
last_post_author_stdWrap_ stdWrap yes  
last_post_city_stdWrap_ stdWrap yes  
post_title_stdWrap_ stdWrap yes  
post_content_stdWrap_ stdWrap yes  
post_replies_stdWrap_ stdWrap yes  
post_author_stdWrap_ stdWrap yes  
post_city_stdWrap_ stdWrap yes  
cache_timeout_ integer no 300

Category List Properties Details

code= LIST_CATEGORIES:

noForums

plugin.tt_board_list.noForums = 1

Disables the view of forums. Default is to display forums in categories.

numberOfRecentPosts

plugin.tt_board_list.noForums = 10

Set the number of recent posts in a forum to display together with the categories list.

title_stdWrap

plugin.tt_board_list.title_stdWrap = stdWrap

subtitle_stdWrap

plugin.tt_board_list.subtitle_stdWrap = stdWrap

count_stdWrap

plugin.tt_board_list.count_stdWrap = stdWrap

forum_title_stdWrap

plugin.tt_board_list.forum_title_stdWrap = stdWrap

forum_description_stdWrap

plugin.tt_board_list.forum_description_stdWrap = stdWrap

forum_posts_stdWrap

plugin.tt_board_list.forum_posts_stdWrap = stdWrap

forum_threads_stdWrap

plugin.tt_board_list.forum_threads_stdWrap = stdWrap

last_post_author_stdWrap

plugin.tt_board_list.last_post_author_stdWrap = stdWrap

last_post_city_stdWrap

plugin.tt_board_list.last_post_city_stdWrap = stdWrap

post_title_stdWrap

plugin.tt_board_list.post_title_stdWrap = stdWrap

post_content_stdWrap

plugin.tt_board_list.post_content_stdWrap = stdWrap

post_replies_stdWrap

plugin.tt_board_list.post_replies_stdWrap = stdWrap

post_author_stdWrap

plugin.tt_board_list.post_author_stdWrap = stdWrap

post_city_stdWrap

plugin.tt_board_list.post_city_stdWrap = stdWrap

cache_timeout

plugin.tt_board_list.cache_timeout = integer

The number of seconds the page is cached. Default is 5 minutes.

Forum List Properties

code= LIST_FORUMS

"Forum: List" The following properties are all prepended list_forums .

Property Data type stdWrap Default
numberOfRecentPosts integer no 0
forum_title_stdWrap_ stdWrap yes  
forum_description_stdWrap_ stdWrap yes  
forum_posts_stdWrap_ stdWrap yes  
forum_threads_stdWrap_ stdWrap yes  
last_post_author_stdWrap_ stdWrap yes  
last_post_city_stdWrap_ stdWrap yes  
post_title_stdWrap_ stdWrap yes  
post_content_stdWrap_ stdWrap yes  
post_replies_stdWrap_ stdWrap yes  
post_author_stdWrap_ stdWrap yes  
post_city_stdWrap_ stdWrap yes  
cache_timeout_ integer no 300

Thread View Properties

code= FORUM

"Forum: Single" The following properties are all prepended view_thread .

Property Data type stdWrap Default
single boolean no 0
forum_title_stdWrap_ stdWrap yes  
post_thread_code_stdWrap_ stdWrap yes  
post_title_stdWrap_ stdWrap yes  
post_content_stdWrap_ stdWrap yes  
post_replies_stdWrap_ stdWrap yes  
post_author_stdWrap_ stdWrap yes  
post_city_stdWrap_ stdWrap yes  

single

plugin.tt_board_list.single = 1

If set, the items are displayed for themselves. Else the whole thread is normally displayed on one page. (This flag should probably be set together with the .tree-flag, if you use it, as this basically turns the board into a tree-like forum instead of a flat board-structure!

Thread List Properties

code = THREAD_TREE

"Forum: Tree" The following properties are all prepended list_threads or thread_tree. thread_tree is config for the thread_tree which shows a list of the elements in the current thread.

Property Data type stdWrap Default
forum_title_stdWrap_ stdWrap yes  
post_thread_code_stdWrap_ stdWrap yes  
post_title_stdWrap_ stdWrap yes  
post_content_stdWrap_ stdWrap yes  
post_replies_stdWrap_ stdWrap yes  
post_author_stdWrap_ stdWrap yes  
post_city_stdWrap_ stdWrap yes  
thread_limit_ integer no 50

thread_limit

plugin.tt_board_list.thread_limit = 6

Max number of items

Submit Form Properties

See example in static template from extensions 'Message Board Setup' The following properties are all prepended processScript (section FEData.tt_board).

Property Data type stdWrap Default
sendToMailingList boolean, a no  
notify boolean no  
notify_from_ string no  
newReply.msg resource no  
newThread.msg resource no  
newThread.debug_ boolean no  

sendToMailingList

FEData.tt_board.processScript.sendToMailingList = boolean

If enabled, a copy of the post is sent to the configured email address. This is useful if you want to integrate the forum with a mailing list. On Typo3.com such a link is established. The reply address is set up in the Qmail MTA to pipe the content into a custom PHP shell-script which parses the email and inserts it into the forum.

Example from the ancient Typo3.com:

FEData.tt_board {
  processScript {
    sendToMailingList = 1
    sendToMailingList {
       email = typo3@netfielders.de
       reply = [emailaddress which inserts into db]
       namePrefix = Typo3Forum/
       altSubject = Post from www.typo3.com
    }
  }
}
Copied!

notify

FEData.tt_board.processScript.notify = boolean

Enable email notification in forums.

notify_from

FEData.tt_board.processScript.notify_from = string

Enable email notification in forums.

newReply-msg

FEData.tt_board.processScript.newReply.msg = resource

Notification message template, first line is subject.

Example:

FEData.tt_board {
  processScript {
    newReply.msg = EXT:tt_board/Resources/Private/Templates/board_notify.txt
  }
}
Copied!

newThread-msg

FEData.tt_board.processScript.newThread.msg = resource

Notification message template, first line is subject.

Example:

FEData.tt_board {
  processScript {
    newThread.msg = EXT:tt_board/Resources/Private/Templates/board_notify.txt
  }
}
Copied!

debug

FEData.tt_board.processScript.debug = boolean

Outputs the mail information directly in browser. For debugging only.

Property Data type stdWrap Default
clearCacheForPids t3tsref:data-type-list no  

clearCacheForPids

plugin.tt_board_list.clearCacheForPids = t3tsref:data-type-list

This list of page ids is cleared in addition to the cache for the page of the item submitted.

Constants

Property Data type Default
moderatorEmail string  
moderatorEmail_newThread string  
emailCheck boolean  
captcha string  

emailCheck

Constant plugin.tt_board.emailCheck = string

If set the email address will be checked if it exists. Otherwise no entry will be made and an error message gets displayed.

captcha

Constant plugin.tt_board.captcha = string

Usage of the captcha security string. Set this to freecap and install sr_freecap. Or set this to captcha and install captcha.

Example: Constants

plugin.tt_board {
  captcha = freecap
}
Copied!

FAQ

No FAQ yet.

Developer Corner

Hooks

Possible hook examples. Input parameters are:

Parameter Data type Description
$table string Name of the table
$field string Name of the field

Use parameter $table to retrieve the table name...

API

How to use the API...

$stuff = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(
	'\\Foo\\Bar\\Utility\\Stuff'
);
$stuff->do();
Copied!

or some other language:

$(document).ready(
	function () {
		doStuff();
	}
);
Copied!

Known Problems

There is a bug tracker, where you can find current and former issues. This is the place to report new errors or to comment to those already listed.

You must insert the 'include static template from extensions' tt board static template in the Typoscript module in the backend.

If you do not get any output, then further investigation is needed. Try to debug the extension where it does not continue.

tt_board/Classes/Controller/RegisterPluginController.php :

Insert debug commands.

public function main($content, $conf)
Copied!

Try to find out if this PHP code is executed .

debug ($content, 'HERE $content');
return $content
Copied!

The result of $content is the output on the screen.

If the PHP code of tt_board is not executed, then the Default Setup has not been inserted into the TypoScript. Check the TypoScript backend module under 'Active TypoScript'.

You can also insert the TypoScript manually from the following extension folders:

tt_board/Configuration/TypoScript/Default/

One of the following TypoScript must be there:

List Forum:

temp.userFuncList = JambageCom\TtBoard\Controller\ListPluginController->main

plugin.tt_board_list {
   userFunc = JambageCom\TtBoard\Controller\ListPluginController->main
}
Copied!

Tree Forum:

temp.userFuncTree = JambageCom\TtBoard\Controller\TreePluginController->main

plugin.tt_board_tree {
   userFunc = JambageCom\TtBoard\Controller\TreePluginController->main
}
Copied!

Clear all the caches and the typo3temp/var/cache folder.

Try to add the Content Wizard in the TSConfig of the top page:

Page TSconfig Include static Page TSconfig (from extensions) [tsconfig_includes]

Check if it works after using the content wizard. Check if another extension plugin works.

Check if the following TypoScript is there:

tt_content.list.20.2 = CASE
tt_content.list.20.2 {
    key.field = layout
    0 = < plugin.tt_board_tree
}

tt_content.list.20.4 = CASE
tt_content.list.20.4 {
    key.field = layout
    0 = < plugin.tt_board_list
    1 = < plugin.tt_board_tree
}
Copied!

To-Do list

Give a link pointing to a roadmap. Alternatively, you can dress up a list of things you want to add or fix in this chapter or give a vision about where the extension is heading.

ChangeLog

For all recent changes: See the file ChangeLog.

  • 2.5.2023 Ready for TYPO3 12.x
  • 9.6.2018 DSGVO, GDPR
  • 26.7.2017 Ready for TYPO3 8.x
  • 8.9.2016 Ready for TYPO3 7.6.10
  • 21.10.2014 Ready for TYPO3 6.2. You must first install tslib_fetce.
  • 25.09.2008 Replace all tt_board_uid links by the prefixId parameter for uid.
  • 6.09.2008 Spam word detection and wrong captcha are shown in the entry form.
  • 17.10.2007 Usage of sr_freecap captcha in all post forms if it has been installed.
  • 27.2.2007 Change the setup to have independant configuration for each code. Investigations made by Jo Hasenau.
  • 25.11.2006 Store the IP addresses for every post. This could be used with your firewalls to prevent unwanted visitors
  • 11.11.2006 11:11 Protection against spam words
  • 3.09.2006 Use the flexforms now. Reenter every plugin and choose the appropriate flexform texts instead of the former code fields.
  • 21.08.2006 ownership taken over by Franz Holzinger.

Sitemap