PDA

View Full Version : problems with WYSIWYG and quickreply in 3.0.x


AN-net
11-27-2005, 03:23 PM
ok i got WYSIWYG to showup but i cant seem it to submit the message>_<
my template:

<script type="text/javascript">
<!--
var WYSIWYG = $WYSIWYG;
var threadedmode = $threadedmode;
var minchars = $vboptions[postminchars];
var maxchars = $vboptions[postmaxchars];
var require_click = $QRrequireclick;
var must_click_message = "$vbphrase[click_quick_reply_icon]";
var istyles = new Array(); istyles = { $istyles_js };
var normalmode = false;
var vbphrase = {
// wysiwyg only
"wysiwyg_please_wait" : "$vbphrase[wysiwyg_please_wait]",
"wysiwyg_initialized" : "$vbphrase[wysiwyg_initialized]",
"wysiwyg_command_invalid" : "$vbphrase[wysiwyg_command_invalid]",
"moz_must_select_text" : "$vbphrase[moz_must_select_text]",
"moz_edit_config_file" : "$vbphrase[moz_edit_config_file]",
"enter_tag_option" : "$vbphrase[enter_tag_option]",
"must_select_text_to_use" : "$vbphrase[must_select_text_to_use]",
"browser_is_safari_no_wysiwyg" : "$vbphrase[browser_is_safari_no_wysiwyg]",
// standard only
"enter_text_to_be_formatted" : "$vbphrase[enter_text_to_be_formatted]",
"enter_link_text" : "$vbphrase[enter_link_text]",
"enter_list_type" : "$vbphrase[enter_list_type]",
"enter_list_item" : "$vbphrase[enter_list_item]",
// both
"must_enter_subject" : "$vbphrase[must_enter_subject]",
"message_too_short" : "$vbphrase[message_too_short]",
"enter_link_url" : "$vbphrase[enter_link_url]",
"enter_image_url" : "$vbphrase[enter_image_url]",
"enter_email_link" : "$vbphrase[enter_email_link]"
};
//-->
</script>

<form action="journal.php" method="post" name="vbform" onsubmit="return checkQR(this);">
<input type="hidden" name="do" value="insertcomment" />
<input type="hidden" name="journalid" <if condition="$journalinfo[journal_id]">value="$journalinfo[journal_id]"<else />value="$journal[journal_id]"</if> />
<if condition="$entry[entry_id]">
<input type="hidden" name="entryid" value="$entry[entry_id]" />
</if>
<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center">
<thead>
<tr>
<td class="tcat" colspan="2">
<a style="float:$stylevar[right]" href="#top" onclick="return <if condition="$WYSIWYG == 2 AND !is_browser('ie')">editor_loaded ? false : </if> toggle_collapse('quickreply');"><img id="collapseimg_quickreply" src="$stylevar[imgdir_button]/collapse_tcat$vbcollapse[collapseimg_quickreply].gif" alt="" border="0" /></a>
<!--<img class="inlineimg" src="$stylevar[imgdir_button]/quickreply.gif" alt="" title="$vbphrase[quick_reply]" border="0" <if condition="$debug">onclick="infoQR();"</if> />-->
Add Comment to <if condition="$pagetitle">$pagetitle<else /><if condition="$journalinfo[journalname]">$journalinfo[journalname] Journal <else />$journalinfo[journalist]'s Journal</if></if>
</td>
</tr>
</thead>
<tbody id="collapseobj_quickreply" style="$vbcollapse[collapseobj_quickreply]">
<tr>
<td class="panelsurround" align="center">
<div class="panel">
<table cellpadding="0" cellspacing="0" border="0" align="center">
<tr>
<td align="$stylevar[left]">
Title: <input type="text" name="title" value="$commenttitle" maxlength="100" size="70" /></td>
</tr>
<tr>
<td class="smallfont" align="$stylevar[left]">Comment:</td>
</tr>
<tr>
<td id="vBulletin_editor" align="$stylevar[left]">
<!-- <<<< indent back for ease of reading -->

<if condition="$WYSIWYG == 2">
<!-- wysiwyg quick reply -->

<div id="controlbar">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td><div class="imagebutton" id="cmd_removeformat"><img src="$stylevar[imgdir_editor]/removeformat.gif" alt="$vbphrase[remove_text_formatting]" width="21" height="20" /></div></td>
<td><img src="$stylevar[imgdir_editor]/separator.gif" alt="" width="6" height="20" /></td>
<if condition="$vboptions[allowedbbcodes] & ALLOW_BBCODE_BASIC">
<td><div class="imagebutton" id="cmd_bold"><img src="$stylevar[imgdir_editor]/bold.gif" alt="$vbphrase[bold]" width="21" height="20" /></div></td>
<td><div class="imagebutton" id="cmd_italic"><img src="$stylevar[imgdir_editor]/italic.gif" alt="$vbphrase[italic]" width="21" height="20" /></div></td>
<td><div class="imagebutton" id="cmd_underline"><img src="$stylevar[imgdir_editor]/underline.gif" alt="$vbphrase[underline]" width="21" height="20" /></div></td>
<td><img src="$stylevar[imgdir_editor]/separator.gif" alt="" width="6" height="20" /></td>
</if>
<td><div class="imagebutton" id="cmd_wrap0_quote"><img src="$stylevar[imgdir_editor]/quote.gif" alt="$vbphrase[wrap_quote_tags]" width="21" height="20" /></div></td>
</tr>
</table>
</div>

<div class="controlbar">
<if condition="is_browser('ie')">
<div id="htmlbox" class="wysiwyg" style="width:600px; height:100px; padding:8px" tabindex="1"><p></p></div>
<else />
<iframe id="htmlbox" style="width:600px; height:100px" tabindex="1"></iframe>
</if>
<input type="hidden" name="message" id="qr_message" value="" />
<input type="hidden" name="WYSIWYG_HTML" value="" />
</div>

<script type="text/javascript" src="clientscript/vbulletin_editor.js"></script>
<script type="text/javascript" src="clientscript/vbulletin_wysiwyg.js"></script>
<if condition="!is_browser('ie')"><script type="text/javascript" src="clientscript/vbulletin_moziwyg.js"></script></if>

<!-- / wysiwyg quick reply -->
</if>


<if condition="$WYSIWYG == 1">
<!-- standard quick reply -->

<div id="controlbar">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<if condition="$vboptions[allowedbbcodes] & ALLOW_BBCODE_BASIC">
<td><div class="imagebutton"><a href="#" onclick="return vbcode('B', '')"><img src="$stylevar[imgdir_editor]/bold.gif" alt="$vbphrase[bold]" width="21" height="20" border="0" /></a></div></td>
<td><div class="imagebutton"><a href="#" onclick="return vbcode('I', '')"><img src="$stylevar[imgdir_editor]/italic.gif" alt="$vbphrase[italic]" width="21" height="20" border="0" /></a></div></td>
<td><div class="imagebutton"><a href="#" onclick="return vbcode('U', '')"><img src="$stylevar[imgdir_editor]/underline.gif" alt="$vbphrase[underline]" width="21" height="20" border="0" /></a></div></td>
<td><img src="$stylevar[imgdir_editor]/separator.gif" alt="" width="6" height="20" /></td>
</if>
<td><div class="imagebutton"><a href="#" onclick="return vbcode('QUOTE', '')"><img src="$stylevar[imgdir_editor]/quote.gif" alt="$vbphrase[wrap_quote_tags]" title="$vbphrase[wrap_quote_tags]" width="21" height="21" border="0" /></a></div></td>
</tr>
</table>
</div>

<div class="controlbar">
<textarea name="message" id="qr_message" class="bginput" style="width:600px; height:100px" cols="60" rows="5" tabindex="1"></textarea>
</div>

<script type="text/javascript" src="clientscript/vbulletin_editor.js"></script>
<script type="text/javascript" src="clientscript/vbulletin_stdedit.js"></script>

<!-- / standard quick reply -->
</if>


<if condition="$WYSIWYG == 0">
<!-- no-toolbar quick reply -->

<div class="controlbar">
<textarea name="message" id="qr_message" class="bginput" style="width:600px; height:100px;" rows="5" cols="60" tabindex="1"></textarea>
</div>

<!-- / no-toolbar quick reply -->
</if>


<!-- >>>> outdent back to normal -->
</td>
</tr>
<label for="qr_quickreply"><input type="hidden" name="quickreply" value="1" id="qr_quickreply" accesskey="w" tabindex="4" />$vbphrase[quote_message_in_reply]</label>

</table>
</div>

<div style="margin-top:$stylevar[cellpadding]px">
<input type="submit" value="Submit Comment" class="button" />
</div>
</td>
</tr>
</tbody>
</table>

</form>
<br />

<if condition="!is_browser('ie') AND $WYSIWYG == 2">
<!-- Mozilla work around for focusing on QR in WYSIWYG mode -->
<div id="qr_scroll"></div>
</if>

<script type="text/javascript" src="clientscript/vbulletin_quickreply.js"></script>
<!-- END WYSWIWYG QUICK REPLY -->

my php:

require_once('./includes/functions_editor.php');
$WYSIWYG = is_wysiwyg_compatible();
$istyles_js = construct_editor_styles_js();
$showsig=0;
$threadedmode = 0;
$qrpostid = 'who cares';
$QRrequireclick = 0;
if (!$QRrequireclick AND $WYSIWYG >= 1)
{
$onload .= " editInit();";
}

$headinclude .= "
<!-- set up CSS for the editor -->
<link rel=\"stylesheet\" type=\"text/css\" href=\"clientscript/vbulletin_editor.css\" />
<style type=\"text/css\">
<!--
#vBulletin_editor {
background: {$istyles[pi_button_normal][0]};
padding: $stylevar[cellpadding]px;
}
#controlbar, .controlbar {
background: {$istyles[pi_button_normal][0]};
}
.imagebutton {
background: {$istyles[pi_button_normal][0]};
color: {$istyles[pi_button_normal][1]};
padding: {$istyles[pi_button_normal][2]};
border: {$istyles[pi_button_normal][3]};
}
-->
</style>
";
eval('$addcommentform .= "' . fetch_template('journal_addcomment') . '";');


and my receiving php:

if($_POST['do'] == "insertcomment")
{
globalize($_POST, array(
'journalid' => INT,
'entryid' => INT,
'message' => STR,
'title' => STR_NOHTML
));

if($can['comment'])
{
if(empty($journalid) AND empty($entryid))
{
eval(print_standard_error('journalnotexist'));
}
else
{
$vbjoutput= new output();
if(empty($journalid) AND !empty($entryid))
{
$entry= $vbjoutput->fetch_info($entryid, 'entry');
$journal= array();
$journal['journal_id']= $entry['journal_id'];
}
else
{
$journal= $vbjoutput->fetch_info($journalid, 'journal');
if(!empty($entryid))
{
$entry= $vbjoutput->fetch_info($entryid, 'entry');
}
}
$floodcheck= $DB_site->query_first("SELECT comment_date AS lastcomdate FROM ".TABLE_PREFIX."journal_comments WHERE commenter_id=".$bbuserinfo['userid']." ORDER BY comment_date DESC");
if((TIMENOW - $floodcheck['lastcomdate'])<= $setting['floodint'])
{
eval(print_standard_error(construct_phrase($vbphra se['journalfloodcheck'], $setting['floodint'],' commenting'), 0));
}
else
{
if(isset($_POST['WYSIWYG_HTML']))
{
echo "WYSIWYG!";
require_once('./includes/functions_wysiwyg.php');
$message = trim(htmlspecialchars_uni(convert_wysiwyg_html_to_ bbcode($_POST['WYSIWYG_HTML'], 0)));
echo "Message:".$message;
}
$comment= array();
$comment['title']= trim($title);
$comment['message']= trim($message);

$vbjcreate= new create();
$vbjcreate->build_new_comment($comment, $journal, $entry, true);

$url="journal.php?do=showcomments&j=".$journal['journal_id']."";
eval(print_standard_redirect('redirect_journalcomm entinserted'));
}
$DB_site->free_result($floodcheck);
}
}
else
{
print_no_permission();
}
}

AN-net
11-28-2005, 10:59 PM
anyone have a suggestion or some input?

AN-net
12-01-2005, 08:05 PM
bumpt it real good:)

sabret00the
12-01-2005, 10:46 PM
erm i managed to make it work on an old 3.0.x file, i can pastebin it if you'd like, alternatively check out the GRPS hack in my profile, the editgroup.php is one of a few files that features it successfully, the templates are with it also :)

AN-net
12-02-2005, 12:03 AM
could you post yours, please?

sabret00the
12-02-2005, 05:12 PM
wait just saw you were referring to the quick reply, i do beleive i never got that to work properly and thus forced it to be the enhanced editor as opposed to the WYSIWYG.

oops should've read it more carefully.

AN-net
12-03-2005, 02:21 AM
well i got it work in standard/enhanced but no wysiwyg so i must be on the right track.

AN-net
12-07-2005, 07:34 PM
please someone :(

Andreas
12-07-2005, 07:42 PM
Watch out for JS errors, most likely there are some that cause the problems.

AN-net
12-10-2005, 01:25 PM
i got two errors relating to wysiwyg i think:

Error: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMNSHTMLDocument.queryCommandState]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: http://www.xxxxxx.com/xxxxxxx/xxxxxxxvbulletin_wysiwyg.js :: set_context :: line 440" data: no]
Source File: http://www.xxxxxxx.com/xxxxxx/xxxxx/vbulletin_wysiwyg.js
Line: 440


and

Error: fetch_object("qr_postid") has no properties
Source File: http://www.xxxxxxxx.com/xxxxxxxx/xxxxxxx/vbulletin_quickreply.js
Line: 115

AN-net
12-14-2005, 11:02 PM
bump!!!

AN-net
12-17-2005, 02:13 PM
anyone? please help!

AN-net
12-20-2005, 03:25 PM
any suggestions? i still really need help on this!

nevermind i finally figured it out, if any one wants to know how feel free to pm me.

sabret00the
12-21-2005, 03:59 PM
it does work normally and properly in all other modes right?


if so on 3.5 if $threadedmode isn't set the WYSIWYG quickreply don't work
var threadedmode = $threadedmode;

AN-net
12-21-2005, 07:38 PM
yes it does, i got it working i had to add two fields back to the form and fill them in properly.

alster
03-12-2007, 09:49 PM
Can?t get rid of javascript errors... :(
The quick reply button doesn?t work in the forum we?re making where it shows more than one thread in the same page.:eek:

Marco van Herwaarden
03-13-2007, 10:18 AM
This thread is about vB 3.0, i doubt you have problems with that version.

Also please do not post the same in 2 threads.

alster
03-30-2007, 05:47 PM
You did not get it. It´s not the version I have installed I´m having a problem. The thing is we were trying to make a php isolated page not a mod and it doen´t work because of javascript errors. And I just posted again because nobody answered my question.

Again, we´re trying to make a forum where the threads and the posts bellow are shown so everybody in a forum doesn´t have to click everytime to open a thread since in that forum all the posts are important and must be viewed. The forum is very quick this way without the clicking.