Figured it out.
The first file we need to look at is
xoopsroot/modules/newbbex/include/forumform.inc.php
On line 94 you'll notice the beginning of this if statement:
if(newbbex_isX23()) {
$editor_configs=array();
$editor_configs['name'] = 'message';
$editor_configs['value'] = $message;
$editor_configs['rows'] = 35;
$editor_configs['cols'] = 60;
$editor_configs['width'] = '100%';
$editor_configs['height'] = '400px';
$editor = new XoopsFormEditor('', 'htmlarea', $editor_configs);
} else {
$editor = new XoopsFormHtmlarea('', 'message', $message);
}
This is what pointed me to the problem. Specifically, the conditional for the statement uses the function is23() from newbbex. So if we go to xoopsroot/modules/newbbex/ we see a file called functions.php (do not confuse this with the same functions.php in the include folder).
Open this up and you'll find the function isX23, which looks like this:
function newbbex_isX23()
{
$x23 = false;
$xv = str_replace('XOOPS ','',XOOPS_VERSION);
if(substr($xv,2,1) == '3') {
$x23 = true;
}
return $x23;
}
Now, there are two ways to go about fixing this. The first requires the replacement of only one character. Change line 480 from
if(substr($xv,2,1) == '3') {
to
if(substr($xv,2,1) == '4') {
The other solution is easier to understand when you go back later to fix it, but takes a little more work. I really do mean little, though. Simply edit every instance of 3 to 4 in isX23. I even changed the name of the function to isX24 and called it that way.