55
I have made a custom code in class textsanitizer. It worked fine till recently. I don't know if it went wrong after moving tot 2.5.7.1 of to php 5.4 (tested on 5.4.12 and 5.4.45-0+deb7u1).
This is the error:
Fatal error: Cannot make static method MyTextSanitizerExtension::decode() non static in class MytsBldwz in C:wampwwwhttpdocsclasstextsanitizerbldwzbldwz.php on line 64
This is my custom code (bldwz.php) that is a modification of the readme.txt that is found in class/textsanitizer
<?php
class MytsBldwz extends MyTextSanitizerExtension
{
// The encode function for dhtml editor
function encode($textarea_id)
{
// If the extension has config data, load it
$config = parent::loadConfig(dirname(__FILE__));
// Make sure that the icon is available /images/form/mycode.gif
$code = "<img src='{$this->image_path}/bldwz.gif' alt='Bladwijzer' title='Bladwijzer' onclick='xoopsCodeBldwz("{$textarea_id}","" . htmlspecialchars("Voer de term met bladwijzer in", ENT_QUOTES) . "");' onmouseover='style.cursor="hand"'/> ";
$javascript = <<<EOH
function xoopsCodeBldwz(id, enterBldwzPhrase){
if (enterBldwzPhrase == null) {
enterBldwzPhrase = "Enter the content for the code.";
}
var selection = xoopsGetSelect(id);
if (selection.length > 0) {
var text = selection;
}else {
var text = prompt(enterBldwzPhrase, "");
}
var domobj = xoopsGetElementById(id);
if ( text != null && text != "" ) {
var result = "[bldwz]" + text + "[/bldwz]";
xoopsInsertText(domobj, result);
}
domobj.focus();
}
EOH;
// Return the scripts to be displayed in editor form and the javascript for relevant actions
return array($code, $javascript);
}
// The code parser
function load(&$ts)
{
$ts->patterns[] = "/[bldwz](.*)[/bldwz]/sU";
$ts->replacements[] = '<a href="' . XOOPS_URL . '/search.php?query=\1&action=results" target="_top">\1</a>';
$ts->patterns[] = "/[bldwz def](.*)[/bldwz]/sU";
$ts->replacements[] = '<a href="' . XOOPS_URL . '/search.php?query=\1+Begrip:&andor=AND&mids%5B%5D=28&action=results" target="_top">\1</a>';
$ts->patterns[] = "/[bldwz stp](.*)[/bldwz]/sU";
$ts->replacements[] = '<a href="' . XOOPS_URL . '/search.php?query=\1&mids%5B%5D=28&action=results" target="_top">\1</a>';
$ts->patterns[] = "/[bldwz ([0-9]*)](.*)[/bldwz]/sU";
$ts->replacements[] = '<a href="' . XOOPS_URL . '/modules/smartfaq/faq.php?faqid=\1" target="_top">\2</a>';
$ts->patterns[] = "/[bldwz KKK=([0-9]*)](.*)[/bldwz]/sU";
$ts->replacements[] = '<a href="http://www.katholieknederland.nl/katholicisme/katechismus-van-de-katholieke-kerk/blok_FBlokNo\1.html" target="_blank">\2</a>';
$ts->patterns[] = "/[news ([0-9]*)](.*)[/news]/sU";
$ts->replacements[] = '<a href="' . XOOPS_URL . '/modules/news/article.php?storyid=\1" target="_top">\2</a>';
$ts->patterns[] = "/[smeb ([0-9]*)](.*)[/smeb]/sU";
$ts->replacements[] = '<a href="' . XOOPS_URL . '/modules/publisher/category.php?categoryid=\1" target="_top">\2</a>';
$ts->patterns[] = "/[smehf ([0-9]*)](.*)[/smehf]/sU";
$ts->replacements[] = '<a href="' . XOOPS_URL . '/modules/publisher/item.php?itemid=\1" target="_top">\2</a>';
}
// Processing the text
function decode($text)
{
// Load config data if any
$config = parent::loadConfig( dirname(__FILE__) );
if ( empty($text) || empty($config['enabled']) ) return $text;
$ret = someFunctionToConvertTheTextToDefinedFormat($text);
return $ret;
}
}
?>
Line 64 is almost the latest with only "}".
Any idea what is wrong ?
Thanks !
SMEDrieben