MaryTheG(r)eek
07-08-2011, 05:30 PM
Hello all,
After loosing the coder's title, I can't post any more in Articles section, so I'm posting here a fix, for those who have developed addon modules (using the vbEditor only), and the new 4.1.4 version brought to them error:
Warning: require_once(./includes/functions_wysiwyg.php) [function.require-once (http://www.thevbexperts.com/function.require-once)]: failed to open stream
This error appear to all new 4.1.4 installations, but for those who have upgraded from 4.1.3, it can appears or not. It has nothing to do with server configurations. It has to do with your choice during upgrade to delete or not the old unused files. Among those files is the: functions_wysiwyg.php which is not in use anymore.
If you choosen to keep the old files, your module will continue working, but (in my opinion), is a security risk to let in your site files that are not any more in vB's file structure and thus are not checked for bugs any more.
To make your addon compatible with 4.1.4, but still keep compatiblity with previous versions (not all have upgraded to 4.1.4 yet), here are the changes that you need to do:
1.- Fing the section where your code was getting the value of the posting message and change it to:
if (version_compare(@$vbulletin->versionnumber, '4.1.4', '>='))
{
require_once(DIR . '/includes/class_wysiwygparser.php');
$html_parser = new vB_WysiwygHtmlParser($vbulletin);
$vbulletin->GPC['message'] = $html_parser->parse_wysiwyg_html_to_bbcode($_POST['message'], 0);
} else {
require_once(DIR . '/includes/functions_wysiwyg.php');
$vbulletin->GPC['message'] = convert_wysiwyg_html_to_bbcode($_POST['message'], 0);
}
2.- Be sure that there is no any call to functions_wysiwyg.php at the top of your file. Usally coders add it at the top of the file with other includes (eg global.php). If you find any call to functions_wysiwyg.php follow the step 1.
3.- Of course there is another way to fix the problem, but I don't really suggest it. Just in case that you can't fix it. Find the files of any vB version prior to 4.1.4 and copy the file functions_wysiwyg.php which you can find inside the includes directory. vB4.1.4 does has this file in the package.
Maria
After loosing the coder's title, I can't post any more in Articles section, so I'm posting here a fix, for those who have developed addon modules (using the vbEditor only), and the new 4.1.4 version brought to them error:
Warning: require_once(./includes/functions_wysiwyg.php) [function.require-once (http://www.thevbexperts.com/function.require-once)]: failed to open stream
This error appear to all new 4.1.4 installations, but for those who have upgraded from 4.1.3, it can appears or not. It has nothing to do with server configurations. It has to do with your choice during upgrade to delete or not the old unused files. Among those files is the: functions_wysiwyg.php which is not in use anymore.
If you choosen to keep the old files, your module will continue working, but (in my opinion), is a security risk to let in your site files that are not any more in vB's file structure and thus are not checked for bugs any more.
To make your addon compatible with 4.1.4, but still keep compatiblity with previous versions (not all have upgraded to 4.1.4 yet), here are the changes that you need to do:
1.- Fing the section where your code was getting the value of the posting message and change it to:
if (version_compare(@$vbulletin->versionnumber, '4.1.4', '>='))
{
require_once(DIR . '/includes/class_wysiwygparser.php');
$html_parser = new vB_WysiwygHtmlParser($vbulletin);
$vbulletin->GPC['message'] = $html_parser->parse_wysiwyg_html_to_bbcode($_POST['message'], 0);
} else {
require_once(DIR . '/includes/functions_wysiwyg.php');
$vbulletin->GPC['message'] = convert_wysiwyg_html_to_bbcode($_POST['message'], 0);
}
2.- Be sure that there is no any call to functions_wysiwyg.php at the top of your file. Usally coders add it at the top of the file with other includes (eg global.php). If you find any call to functions_wysiwyg.php follow the step 1.
3.- Of course there is another way to fix the problem, but I don't really suggest it. Just in case that you can't fix it. Find the files of any vB version prior to 4.1.4 and copy the file functions_wysiwyg.php which you can find inside the includes directory. vB4.1.4 does has this file in the package.
Maria