Blog posts
Foswiki.org is upgraded, and unless major issues are reported, this will become 1.1.5. We hope to release 1.1.5 the beginning of next week.
If you run a public Foswiki site, you need to be aware of - and take action against - spammers. This post describes how.
Foswiki.org has been upgraded to 1.1.5 Beta 2. Release Candidate 1 will be released soon.
Early beta of Foswiki 1.1.5 is running on foswiki.org.
That's right, on Redhat Enterprise and Centos, it’s now just as easy to install Foswiki and its ~300 plugins as it is on Debian.
*
Debian repository for Foswiki *
Centos6 and RHEL6 repository for FoswikiThis means you can now manage your Enterprise Foswiki using the same package management tools as the rest of the operating system.
Release 1.1.5 targeted for March 31st 2012
Support.SecurityAlert-CVE-2012-1004 with hotfix is available and we will be following up with Release 1.1.5. It will be a security focused release, picking up a number of bug fixes, and a small number of minor enhancements. The anticipated timeline is:
* Feature freeze: 5th of March
* String freeze: 10th of March
* Build release candidate: 20th of March
* Release - 31 of March
Please help
We need developer help to close out the Tasks.ReleaseBlocker tasks, and do a triage of any open tasks to pull fixes into 1.1.5. And translators need to be prepared to update the strings. The User Registration messages have all been converted to use MAKETEXT.
Branch of 1.2 soon
There is still some discussion going on, but initial plans are to branch 1.2 from trunk. We really need some help updating the Development.FeatureProposals, setting the PlannedFor field to 1.2 or 2.0. Stay tuned to the blog for updates.
Details of 1.1.5 and 1.2 / 2.0 releases are found in the
Development.ReleasePlan
%STARTSECTION{"all"}%<a name="BlogPosts"></a><noautolink><div class="blogAddOnViewOptions foswikiFormSteps">
<div class="foswikiFormStep">
<!-- Subscribe RSS -->
<span class="foswikiRight">%ICON{rss-small}%<a class="blogPostAddOnViewOptionsSubscribeLink" title='%IF{"defined pcategory and $pcategory!=''" then="%MAKETEXT{"RSS newsfeed: subscribe to blog posts in category [_1]" args="%pcategory%"}%" else="%MAKETEXT{"RSS newsfeed: subscribe to blog posts in all categories"}%"}%' href='%SCRIPTURLPATH{"view"}%/%BASEWEB%/BlogRss?author=%pauthor%;category=%pcategory%;tag=%ptag%'>%MAKETEXT{"Subscribe"}%</a>
</span>
<form name="blogAddOnViewOptionsForm" action="%SCRIPTURLPATH{"view"}%/%BASEWEB%/%BASETOPIC%" method="get">
<!-- ###########################################################################
Filter options
-->
<!--
<span class="blogAddOnViewOption">
%MAKETEXT{"View category:"}%
<select class="foswikiSelect" name="category" onchange="document.forms.blogAddOnViewOptionsForm.submit()">
%INCLUDE{"%TOPIC%" section="filterOption"
paramname="pcategory"
value=""
label="%MAKETEXT{"any category"}%"
}%%SEARCH{
" *\s*.*?"
topic="BlogCategory"
web="%WEB%"
type="regex"
multiple="on"
casesensitive="on"
nonoise="on"
format="$percntINCLUDE{$quot%TOPIC%$quot section=$quotfilterOption$quot
paramname=$quotpcategory$quot
value=$quot$pattern(.* \*\s([^\n]*).*)$quot
label=$quot$pattern(.* \*\s([^\n]*).*)$quot
}$percnt"
}%
</select>
</span>
-->
<!--
<span class="blogAddOnViewOption">
%MAKETEXT{"Results per page:"}%
<select class="foswikiSelect" name="pagesize" onchange="document.forms.blogAddOnViewOptionsForm.submit()">
%INCLUDE{"%TOPIC%" section="filterOption"
paramname="ppagesize"
value="10"
label="%MAKETEXT{"10"}%"
}%
%INCLUDE{"%TOPIC%" section="filterOption"
paramname="ppagesize"
value="25"
label="%MAKETEXT{"25"}%"
}%
%INCLUDE{"%TOPIC%" section="filterOption"
paramname="ppagesize"
value="50"
label="%MAKETEXT{"50"}%"
}%
%INCLUDE{"%TOPIC%" section="filterOption"
paramname="ppagesize"
value="100"
label="%MAKETEXT{"100"}%"
}%
%INCLUDE{"%TOPIC%" section="filterOption"
paramname="ppagesize"
value="all"
label="%MAKETEXT{"everything"}%"
}%
</select>
</span>
-->
<!-- ###########################################################################
Sort options
-->
<span class="blogAddOnViewOption">
%MAKETEXT{"Sort by:"}%
<select class="foswikiSelect" name="sort" onchange="document.forms.blogAddOnViewOptionsForm.submit()">
%INCLUDE{"%TOPIC%" section="filterOption"
paramname="psort"
value="formfield(Title)"
label="%MAKETEXT{"Title"}%"
}%
%INCLUDE{"%TOPIC%" section="filterOption"
paramname="psort"
value="formfield(Category)"
label="%MAKETEXT{"Category"}%"
}%
%INCLUDE{"%TOPIC%" section="filterOption"
paramname="psort"
value="formfield(Author)"
label="%MAKETEXT{"Author"}%"
}%
%INCLUDE{"%TOPIC%" section="filterOption"
paramname="psort"
value="formfield(PublishingDate)"
label="%MAKETEXT{"Publishing date"}%"
}%
%INCLUDE{"%TOPIC%" section="filterOption"
paramname="psort"
value="modified"
label="%MAKETEXT{"Last modified"}%"
}%
</select>
</span>
<noscript><span class="blogAddOnViewOptionsFilter"> <input type="submit" class="foswikiButton" value='%MAKETEXT{"Update"}%' /></span></noscript>
</form>
<div class="foswikiClear"></div>
</div>
</div>
</noautolink>%STARTSECTION{"posts"}%<noautolink><div class="blogPostAddOnPosts">
<!-- title of selected category -->
%IF{"(defined pcategory) OR (defined pauthor) OR (defined tag)" then="$percntINCLUDE{$quot%TOPIC%$quot section=$quotfilters$quot}$percnt"}%%STARTSECTION{"list"}%%SEARCH{
type="query"
"form.name='BlogPostForm'%IF{"defined pcategory and $pcategory!=''" then=" AND fields[name='Category'].value='%pcategory%'"}%%IF{"defined ptag and $ptag!=''" then="%FORMAT{
type="string"
"%ptag%"
format=" AND fields[name='Tags'].value=~'\b$item\b' "
}%"}%%IF{"defined pauthor and $pauthor!=''" then=" AND fields[name='Author'].value=~'\b%pauthor%\b'"}%"
web="%WEB%"
zeroresults="<div class='blogPostAddOnItem'>%MAKETEXT{"No posts found"}%</div>"
nosummary="on"
nosearch="on"
nototal="on"
excludetopic="*Template"
casesensitive="on"
format="%INCLUDE{
"%TOPIC%"
section="blogPostAddOnItem"
}%"
header="<div class='blogAddOnList'>"
footer="</div>"
order="%psort%"
reverse="%IF{"$psortdirection='descending'" then="on" else="off"}%"
pagesize="%ppagesize%"
pager="on"
}%%STARTSECTION{"styles"}%%ADDTOZONE{
"head"
id="blogPost"
text="<literal><style type=\"text/css\" media=\"all\">
.blogPost,
.blogPostAddOnItem {
border-bottom: 1px solid #ccc;
margin-bottom: 10px;
width: 700px;
height:1%; /* for IE */
}
.blogPost img {
max-width: 700px;
}
.blogAddOnViewOptions {
font-size:13px;
}
.blogAddOnViewOption {
margin-right:10px;
}
.blogPostAddOnItem {
padding: 0 0 10px 0;
}
.blogAddOnList {
margin:5px 0 0 0;
}
.blogPostAddOnExcerpt {%IF{
"defined BLOGADDON_AUTHOR_PICTURE_FIELD and $BLOGADDON_AUTHOR_PICTURE_FIELD!=''"
then="
margin-left:%ppicsizeauthor%px;
padding-left:10px;
"}%}
.blogPostAddOnItem h2 {
font-size:145%;
}
.blogPostAddOnSummary {
margin:10px 0 0 0;
}
.blogPostAddOnHasSummaryImage .blogPostAddOnSummaryText {
margin-left:%ppicsizesummary%px; /* image width %ppicsizesummary%px */
padding-left:15px;
}
.blogPostAddOnSummaryPicture {
float:left;
width:%ppicsizesummary%px;
min-height:%ppicsizesummary%px;
border:none;
margin:0 10px 5px 0;
}
.blogPostAddOnPicture {
float:left;
}
ul.blogPostAddOnCommentStatus {
margin:.5em 0 0 0;
padding:0;
list-style:none;
position:relative;
background: #ddd;
}
ul.blogPostAddOnCommentStatus li {
display:block;
background:#f6f6f5;
padding:3px 0;
margin:0 0 1px 0;
font-size:86%;
}
ul.blogPostAddOnCommentStatus li .blogPostAddOnPicture {
margin:0 10px;
}
.blogPostAddOnCommentStatusText {
padding: 5px 10px;
max-height: 90px;
overflow: hidden;
overflow-y: auto;
}
.blogPostAddOnCommentStatusText hr {
margin-right: 90%;
background-color: #ddd;
border-color: #ddd;
}
.blogPostAddOnLatestCommentCount {}
/* list of posts */
.blogPostAddOnPosts {}
.blogAddOnFilters {
margin:10px 0 0 0;
border-bottom: 1px solid #ccc;
}
a.blogAddOnRemoveFilterButton:link,
a.blogAddOnRemoveFilterButton:visited {
display:inline-block;
padding:0;
line-height:1.8em;
position:relative;
margin:0 10px 3px 0;
text-decoration:none;
font-size:13px;
font-weight:normal;
border: none;
background: none;
}
a.blogAddOnRemoveFilterButton:active,
a.blogAddOnRemoveFilterButton:focus {
outline:none;
-moz-outline-style:none;
}
a.blogAddOnRemoveFilterButton:hover {
cursor:pointer;
text-decoration:none;
color:#000;
}
a.blogAddOnRemoveFilterButton .blogAddOnFilterButtonIcon {
padding-left:22px;
width:13px;
height:13px;
background-repeat:no-repeat;
background-position:0 0;
background-image:url(%PUBURLPATH%/%SYSTEMWEB%/BlogAddOn/icon_tag_delete_btn.png);
}
a.blogAddOnRemoveFilterButton:link,
a.blogAddOnRemoveFilterButton:visited {
color:#000;
}
a.blogAddOnRemoveFilterButton:hover .blogAddOnFilterButtonIcon {
background-position:0 -16px;
}
.blogAddOnFilterButtonType {
font-size:90%;
padding:0 6px 0 0;
text-transform:uppercase;
}
a.blogSelectedCategory {
font-weight: bold;
background-color: #D9F5D9;
}
</style></literal>"
}%%ENDSECTION{"styles"}%%ENDSECTION{"list"}%</div></noautolink>%ENDSECTION{"posts"}%%ENDSECTION{"all"}%
<!-- ###########################################################################
filters
-->
%STARTSECTION{"filters"}%%IF{
"(defined pauthor and $pauthor!='') OR (defined pcategory and $pcategory!='') OR (defined ptag and $ptag!='')"
then="<div class='blogAddOnFilters'>"
}%%IF{
"defined pauthor and $pauthor!=''"
then="<a class='blogAddOnRemoveFilterButton' href='%SCRIPTURLPATH{view}%/%BASEWEB%/%BASETOPIC%?author=;category=%pcategory%;tag=%ptag%'><span class='blogAddOnFilterButtonIcon'></span><span class='blogAddOnFilterButtonType'>author:</span>$percntFORMFIELD{\"FirstName\" topic=\"%USERSWEB%.%pauthor%\"}$percnt $percntFORMFIELD{\"LastName\" topic=\"%USERSWEB%.%pauthor%\"}$percnt</a>"
}%%IF{
"defined pcategory and $pcategory!=''"
then="<a class='blogAddOnRemoveFilterButton' href='%SCRIPTURLPATH{view}%/%BASEWEB%/%BASETOPIC%?author=%pauthor%;category=;tag=%ptag%'><span class='blogAddOnFilterButtonIcon'></span><span class='blogAddOnFilterButtonType'>category:</span>%pcategory%</a>"
}%%IF{
"defined ptag and $ptag!=''"
then="%FORMAT{
type="string"
"%ptag%"
separator=""
format="<a class='blogAddOnRemoveFilterButton' href='%SCRIPTURLPATH{view}%/%BASEWEB%/%BASETOPIC%?tag=$percntFORMAT{$quot%ptag%$quot type=$quotstring$quot separator=$quot$quot format=$quot$dollarpercntIF{$dollarquot'$item'='$dollaritem'$dollarquot else=$dollarquot$dollaritem,$dollarquot}$dollarpercnt$quot}$percnt;category=%pcategory%;author=%pauthor%'><span class='blogAddOnFilterButtonIcon'></span><span class='blogAddOnFilterButtonType'>tag:</span>$item</a>"
}%"
}%%IF{
"(defined pauthor and $pauthor!='') OR (defined pcategory and $pcategory!='') OR (defined ptag and $ptag!='')"
then="</div>"
}%%ENDSECTION{"filters"}%
<!-- ###########################################################################
blogPostAddOnItem
-->
%STARTSECTION{"blogPostAddOnItem"}%<div class='blogPostAddOnItem'>
%IF{
"defined BLOGADDON_AUTHOR_PICTURE_FIELD and $BLOGADDON_AUTHOR_PICTURE_FIELD!=''"
then="$percntINCLUDE{$quot%WEB%.BlogPost$quot section=$quotblogPostAuthorPicture$quot imgWeb=$quot%USERSWEB%$quot imgTopic=$quot$formfield(Author)$quot imgWidth=$quot%ppicsizeauthor%$quot}$percnt"
}%<div class='blogPostAddOnExcerpt'><h2>[[$web.$topic][$formfield(Title)]]</h2>
<!-- author, category, tags -->
<div class='blogPostAddOnHeaderInfo foswikiUnvisited'>$percntINCLUDE{$quot%WEB%.%TOPIC%$quot section=$quotblogPostInfo$quot web=$quot$web$quot topic=$quot$topic$quot author=$quot$formfield(Author)$quot}$percnt</div>
<!-- summary -->
<div class='blogPostAddOnSummary$percntIF{$quot'$formfield(SummaryImage)'!=''$quot then=$quot blogPostAddOnHasSummaryImage$quot}$percnt'>$percntIF{$quot'$formfield(SummaryImage)'!=''$quot then=$quot$percntINCLUDE{$quot%WEB%.%TOPIC%$quot section=$quotsummaryPicture$quot imgWeb=$quot$web$quot imgTopic=$quot$topic$quot imgName=$quot$formfield(SummaryImage)$quot}$percnt$quot}$percnt<div class='blogPostAddOnSummaryText'>$percntIF{$quot'%poutline%'!=''$quot then=$quot$%poutline%$quot else=$quot$%pdefaultoutline%$quot}$percnt$percntINCLUDE{$quot%TOPIC%$quot section=$quot_comments$quot web=$quot$web$quot topic=$quot$topic$quot}$percnt</div></div>
</div><div class='foswikiClear'></div></div>%ENDSECTION{"blogPostAddOnItem"}%
<!-- ###########################################################################
blogPostInfo
params: web, topic, context, author
-->
%STARTSECTION{"blogPostInfo"}%%INCLUDE{
"%WEB%.%TOPIC%"
section="_info"
includeSection="_blogPostInfo"
}%%INCLUDE{
"%WEB%.%TOPIC%"
section="_info"
includeSection="_blogPostTags"
}%%ENDSECTION{"blogPostInfo"}%
<!--
_comments
params: web, topic
-->
%STARTSECTION{"_comments"}%%SEARCH{
"%topic%Comments%IF{
"($WIKINAME = '%BLOGADDON_HIDE_COMMENTS%') OR (($WIKINAME ingroup '%BLOGADDON_HIDE_COMMENTS%')"
then="n0nEToP1C"
}%"
web="%IF{
"defined BLOGADDON_COMMENTS_WEB and $BLOGADDON_COMMENTS_WEB!=''"
then="%BLOGADDON_COMMENTS_WEB%"
else="%web%"
}%"
scope="topic"
nonoise="on"
zeroresults=""
format="<ul class='blogPostAddOnCommentStatus'>
<li><div class='blogPostAddOnCommentStatusText'>
$percntINCLUDE{$quot$web.$topic$quot}$percnt</div></li><li><div class='blogPostAddOnCommentStatusText'>[[%web%.%topic%#BlogPostComments][Leave a comment]]</div></li></ul>"
}%%ENDSECTION{"_comments"}%
<!--
_info
params: web, topic, author, includeSection, context
-->
%STARTSECTION{"_info"}%%INCLUDE{
"%WEB%.%TOPIC%"
section="%includeSection%"
listtopic="%IF{"defined BLOGADDON_LIST_TOPIC and $BLOGADDON_LIST_TOPIC!=''" then="%BLOGADDON_LIST_TOPIC%" else="%WEB%.BlogPost"}%"
authortopic="%author%"
}%%ENDSECTION{"_info"}%
<!--
_blogPostInfo
params: web, topic, context, listtopic, authortopic
-->
%STARTSECTION{"_blogPostInfo"}%%MAKETEXT{"[_1] [_2] [_3]" args="
%FORMFIELD{
"PublishingDate"
topic="%web%.%topic%"
default="%REVINFO{rev="1" format="$date" topic="%web%.%topic%"}%"
alttext="%REVINFO{rev="1" format="$date" topic="%web%.%topic%"}%"
}%
,
%IF{
"istopic '%USERSWEB%.%CALC{$SUBSTITUTE(%author%,%USERSWEB%.,)}%' AND '%USERSWEB%/%CALC{$SUBSTITUTE(%author%,%USERSWEB%.,)}%'/fields[name='FirstName']"
then="by [[%SCRIPTURLPATH{view}%/%listtopic%?author=%CALC{$SUBSTITUTE(%author%,%USERSWEB%.,)}%%IF{"defined pcategory" then=";category=%ENCODE{"%pcategory%"}%"}%%IF{"defined ptag" then=";tag=%ENCODE{"%ptag%"}%"}%][%QUERY{
"'%USERSWEB%/%CALC{$SUBSTITUTE(%author%,%USERSWEB%.,)}%'/fields[name='FirstName'].value"}% %QUERY{"'%USERSWEB%/%CALC{$SUBSTITUTE(%author%,%USERSWEB%.,)}%'/fields[name='LastName'].value"
}%]]"
else="by [[%SCRIPTURLPATH{view}%/%listtopic%?%IF{"defined pauthor" then="author=%ENCODE{"%pauthor%"}%"}%%IF{"defined pcategory" then=";category=%ENCODE{"%pcategory%"}%"}%%IF{"defined ptag" then=";tag=%ENCODE{"%ptag%"}%"}%][%author%]]"
}%
,
%FORMFIELD{
"Category"
topic="%web%.%topic%"
format="in [[%SCRIPTURLPATH{view}%/%listtopic%?category=$value%IF{"defined ptag" then=";tag=%ENCODE{"%ptag%"}%"}%%IF{"defined pauthor" then=";author=%ENCODE{"%pauthor%"}%"}%][$value]]"
}%"
}%%ENDSECTION{"_blogPostInfo"}%
<!-- ###########################################################################
_blogPostTags
params: web, topic, listtopic
-->
%STARTSECTION{"_blogPostTags"}%%FORMAT{
"%FORMFIELD{"Tags" topic="%web%.%topic%"}%"
header=" <img src='%ICONURLPATH{tag}%' width='16' alt='tagged' /> "
type="string"
format="[[%SCRIPTURLPATH{view}%/%listtopic%?tag=$percntCALC{$LISTJOIN($dollarcomma,$LISTSORT($LISTUNIQUE($item,%ptag%)))}$percnt;category=%pcategory%;author=%pauthor%][$item]]"
separator=", "
}%%ENDSECTION{"_blogPostTags"}%
<!-- ###########################################################################
blogPostAuthorPicture
params: imgWeb, imgTopic
-->
%STARTSECTION{"blogPostAuthorPicture"}%<div class='blogPostAddOnPicture'>%INCLUDE{
"%TOPIC%"
section="%IF{"context ImagePluginEnabled" then="imagePluginImage" else="pubImage"}%"
}%
</div>%ENDSECTION{"blogPostAuthorPicture"}%
%STARTSECTION{"pubImage"}%$percntIF{$quot'%imgWeb%/%CALC{$SUBSTITUTE(%imgTopic%,%USERSWEB%.,)}%'/%BLOGADDON_AUTHOR_PICTURE_FIELD%$quot then=$quot<a href='%SCRIPTURLPATH{view}%/%imgWeb%/%CALC{$SUBSTITUTE(%imgTopic%,%USERSWEB%.,)}%'><img src='%PUBURL%/%imgWeb%/%CALC{$SUBSTITUTE(%imgTopic%,%USERSWEB%.,)}%/$percntQUERY{\"'%imgWeb%/%CALC{$SUBSTITUTE(%imgTopic%,%USERSWEB%.,)}%'/%BLOGADDON_AUTHOR_PICTURE_FIELD%\"}$percnt' width='%imgWidth%' title='%MAKETEXT{"Author page"}%' alt='%MAKETEXT{"Author picture"}%' /></a>$quot else=$quot<img src='%PUBURL%/%SYSTEMWEB%/PersonalInfoAddOn/silhouette.gif' width='%imgWidth%' alt='' />$quot}$percnt%ENDSECTION{"pubImage"}%
%STARTSECTION{"imagePluginImage"}%$percntIF{$quot'%imgWeb%/%CALC{$SUBSTITUTE(%imgTopic%,%USERSWEB%.,)}%'/%BLOGADDON_AUTHOR_PICTURE_FIELD%$quot then=$quot$percntIMAGE{web=\"%imgWeb%\" topic=\"%CALC{$SUBSTITUTE(%imgTopic%,%USERSWEB%.,)}%\" href=\"%SCRIPTURLPATH{view}%/%imgWeb%/%CALC{$SUBSTITUTE(%imgTopic%,%USERSWEB%.,)}%\" \"$percntQUERY{\"'%imgWeb%/%CALC{$SUBSTITUTE(%imgTopic%,%USERSWEB%.,)}%'/%BLOGADDON_AUTHOR_PICTURE_FIELD%\"}$percnt\" align=\"none\" zoom=\"on\" title=\"%MAKETEXT{"Author page"}%\" alt=\"%MAKETEXT{"Author picture"}%\" size=\"%imgWidth%\"}$percnt$quot else=$quot$percntIMAGE{web=\"%SYSTEMWEB%\" topic=\"PersonalInfoAddOn\" \"silhouette.gif\" align=\"none\" alt=\"\" size=\"%imgWidth%\"}$percnt$quot}$percnt%ENDSECTION{"imagePluginImage"}%
<!-- ###########################################################################
summaryPicture
params: imgWeb, imgTopic, imgName
-->
%STARTSECTION{"summaryPicture"}%<div class='blogPostAddOnSummaryPicture'>%INCLUDE{
"%TOPIC%"
section="%IF{"context ImagePluginEnabled" then="summaryImagePluginImage" else="summaryPubImage"}%"
imgWidth="%ppicsizesummary%"
}%
</div>%ENDSECTION{"summaryPicture"}%
%STARTSECTION{"summaryPubImage"}%<a href='%SCRIPTURLPATH{view}%/%imgWeb%/%imgTopic%'><img src='%PUBURL%/%imgWeb%/%imgTopic%/%imgName%' width='%imgWidth%' alt='' /></a>%ENDSECTION{"summaryPubImage"}%
%STARTSECTION{"summaryImagePluginImage"}%$percntIMAGE{web=\"%imgWeb%\" topic=\"%imgTopic%\" \"%imgName%\" align=\"center\" alt=\"\" size=\"%imgWidth%x%imgWidth%\" zoom=\"on\" href=\"%SCRIPTURLPATH{view}%/%imgWeb%/%imgTopic%\"}$percnt%ENDSECTION{"summaryImagePluginImage"}%
<!-- ###########################################################################
filterOption
params:paramname, value, label
-->
%STARTSECTION{"filterOption"}%<option value="%value%"%IF{"defined %paramname% and $%paramname% = '%value%'" then=" selected=\"selected\""}%>%label%</option>%ENDSECTION{"filterOption"}%
<!-- ###########################################################################
createButton
params:label
-->
%STARTSECTION{"createButton"}%<form method="get" action="%SCRIPTURLPATH{view}%/%WEB%/BlogPostCreator">
<input type="submit" class="foswikiButton" value="%IF{"defined label AND '%label%'!=''" then="%label%" else="%MAKETEXT{"Write a new blog post"}%"}%" /></form>%ENDSECTION{"createButton"}%