quick reply mod EasyPHPBB
PHPBB the quick and easy way.
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages    Log inLog in 
  GamesGames   

Refi

Bookmark this site!
quick reply mod

 
Post new topic   Reply to topic    EasyPHPBB Forum Index -> Mods and Mod Requests
View previous topic :: View next topic  
Author Message
Nightmare
EasyPHPBB Expert
EasyPHPBB Expert


Joined: 26 Mar 2005
Posts: 378
Location: Canada

PostPosted: Thu Jul 07, 2005 8:22 pm    Post subject: quick reply mod Reply with quote

quick reply mod would be nice; heres how to do it if easyPHPBB is phpBB2

Code:

##############################################################
## MOD Title: Quick Reply with Quote & BBCode
## MOD Author: Snowcone < sbgamescone@gmail.com > (Chris Rasco) http://www.snackbar-games.com
## MOD Description: This mod is based on Smartor's Quick Reply with Quote mod
##      and exands it to include BBCode buttons from the normal posting page.
## MOD Original Description: This will add a quick-reply form below every topics
##         It will only display when user has the Reply access
##         User have a option to quote the last message
## MOD Version: 1.1.3.1
##
## Installation Level: easy
## Installation Time: 5 Minutes
## Files To Edit: 3
##   viewtopic.php
##   language/lang_XX/lang_main.php
##   templates/template_XX/viewtopic_body.tpl
## Included Files: N/A
##############################################################
## Author Notes:
##
##############################################################
## This MOD is released under the GPL License.
## Intellectual Property is retained by the MOD Author(s) listed above
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
##############################################################

#
#-----[ OPEN ]------------------------------------------
#
viewtopic.php

#
#-----[ FIND ]------------------------------------------
#
$template->pparse('body');

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);

#
#-----[ BEFORE, ADD ]------------------------------------
#
//
// Quick Reply Mod
//
if ( ((!$is_auth['auth_reply']) or ($forum_topic_data['forum_status'] == FORUM_LOCKED) or ($forum_topic_data['topic_status'] == TOPIC_LOCKED)) and ($userdata['user_level'] != ADMIN) )
{
   $quick_reply_form = "";
}
else
{
   if ( $can_watch_topic && $is_watching_topic )
   {
      $notify = 1;
   }
   else
   {
      $notify = $userdata['user_notify'];
   }
   $bbcode_uid = $postrow[$total_posts - 1]['bbcode_uid'];
   $last_poster = $postrow[$total_posts - 1]['username'];
   $last_msg = $postrow[$total_posts - 1]['post_text'];
   $last_msg = str_replace(":1:$bbcode_uid", "", $last_msg);
   $last_msg = str_replace(":u:$bbcode_uid", "", $last_msg);
   $last_msg = str_replace(":o:$bbcode_uid", "", $last_msg);
   $last_msg = str_replace(":$bbcode_uid", "", $last_msg);
   $last_msg = str_replace("'", "'", $last_msg);
   $last_msg = "[QUOTE=\"$last_poster\"]" . $last_msg . "[/QUOTE]";
   $quick_reply_form = "
   <script language=\"JavaScript\" type=\"text/javascript\">
<!--
// bbCode control by
// subBlue design
// www.subBlue.com

// Startup variables
var imageTag = false;
var theSelection = false;

// Check for Browser & Platform for PC & IE specific bits
// More details from: http://www.mozilla.org/docs/web-developer/sniffer/browser_type.html
var clientPC = navigator.userAgent.toLowerCase(); // Get client info
var clientVer = parseInt(navigator.appVersion); // Get browser version

var is_ie = ((clientPC.indexOf(\"msie\") != -1) && (clientPC.indexOf(\"opera\") == -1));
var is_nav = ((clientPC.indexOf('mozilla')!=-1) && (clientPC.indexOf('spoofer')==-1)
                && (clientPC.indexOf('compatible') == -1) && (clientPC.indexOf('opera')==-1)
                && (clientPC.indexOf('webtv')==-1) && (clientPC.indexOf('hotjava')==-1));
var is_moz = 0;

var is_win = ((clientPC.indexOf(\"win\")!=-1) || (clientPC.indexOf(\"16bit\") != -1));
var is_mac = (clientPC.indexOf(\"mac\")!=-1);

// Helpline messages
b_help = \"Bold text: [b]text[/b] (alt+b)\";
i_help = \"Italic text: [i]text[/i] (alt+i)\";
u_help = \"Underline text: [u]text[/u] (alt+u)\";
q_help = \"Quote text: [quote]text[/quote] (alt+q)\";
c_help = \"Code display: [code]code[/code]  alt+c)\";
l_help = \"List: [list]text[/list] (alt+l)\";
o_help = \"Ordered list: [list=]text[/list] (alt+o)\";
p_help = \"Image: [img]http://imageurl[/img] (alt+p)\";
w_help = \"URL: [url]http://url[/url] or [url=http://url]Text[/url] (alt+w)\";
a_help = \"Close all open bbCode tags\";
s_help = \"Font color: [color=red]text[/color]  Tip: you can also use color=#FF0000\";
f_help = \"Font size: [size=x-small]small text[/size]\";

// Define the bbCode tags
bbcode = new Array();
bbtags = new Array('[b]','[/b]','[i]','[/i]','[u]','[/u]','[quote]','[/quote]','[code]','[/code]','[list]','[/list]','[list=]','[/list]','[img]','[/img]','[url]','[/url]');
imageTag = false;

// Shows the help messages in the helpline window
function helpline(help) {
   document.post.helpbox.value = eval(help + \"_help\");
}


// Replacement for arrayname.length property
function getarraysize(thearray) {
   for (i = 0; i < thearray.length; i++) {
      if ((thearray[i] == \"undefined\") || (thearray[i] == \"\") || (thearray[i] == null))
         return i;
      }
   return thearray.length;
}

// Replacement for arrayname.push(value) not implemented in IE until version 5.5
// Appends element to the array
function arraypush(thearray,value) {
   thearray[ getarraysize(thearray) ] = value;
}

// Replacement for arrayname.pop() not implemented in IE until version 5.5
// Removes and returns the last element of an array
function arraypop(thearray) {
   thearraysize = getarraysize(thearray);
   retval = thearray[thearraysize - 1];
   delete thearray[thearraysize - 1];
   return retval;
}


function checkForm() {
  formErrors = false;
  document.post.message.value = '';
   if (document.post.input.value.length < 2) {
      formErrors = '" . $lang['Empty_message'] . "';
   }
   if (formErrors) {
      alert(formErrors);
      return false;
   } else {
     if (document.post.quick_quote.checked) {
        document.post.message.value = document.post.last_msg.value + '\\r\\n';
     }
     document.post.message.value += document.post.input.value;
     return true;
   }
}

function bbstyle(bbnumber) {
   var txtarea = document.post.input;

   txtarea.focus();
   donotinsert = false;
   theSelection = false;
   bblast = 0;

   if (bbnumber == -1) { // Close all open tags & default button names
      while (bbcode[0]) {
         butnumber = arraypop(bbcode) - 1;
         txtarea.value += bbtags[butnumber + 1];
         buttext = eval('document.post.addbbcode' + butnumber + '.value');
         eval('document.post.addbbcode' + butnumber + '.value =\"' + buttext.substr(0,(buttext.length - 1)) + '\"');
      }
      imageTag = false; // All tags are closed including image tags :D
      txtarea.focus();
      return;
   }

   if ((clientVer >= 4) && is_ie && is_win)
   {
      theSelection = document.selection.createRange().text; // Get text selection
      if (theSelection) {
         // Add tags around selection
         document.selection.createRange().text = bbtags[bbnumber] + theSelection + bbtags[bbnumber+1];
         txtarea.focus();
         theSelection = '';
         return;
      }
   }
   else if (txtarea.selectionEnd && (txtarea.selectionEnd - txtarea.selectionStart > 0))
   {
      mozWrap(txtarea, bbtags[bbnumber], bbtags[bbnumber+1]);
      return;
   }

   // Find last occurance of an open tag the same as the one just clicked
   for (i = 0; i < bbcode.length; i++) {
      if (bbcode[i] == bbnumber+1) {
         bblast = i;
         donotinsert = true;
      }
   }

   if (donotinsert) {      // Close all open tags up to the one just clicked & default button names
      while (bbcode[bblast]) {
            butnumber = arraypop(bbcode) - 1;
            txtarea.value += bbtags[butnumber + 1];
            buttext = eval('document.post.addbbcode' + butnumber + '.value');
            eval('document.post.addbbcode' + butnumber + '.value =\"' + buttext.substr(0,(buttext.length - 1)) + '\"');
            imageTag = false;
         }
         txtarea.focus();
         return;
   } else { // Open tags

      if (imageTag && (bbnumber != 14)) {      // Close image tag before adding another
         txtarea.value += bbtags[15];
         lastValue = arraypop(bbcode) - 1;   // Remove the close image tag from the list
         document.post.addbbcode14.value = \"Img\";   // Return button back to normal state
         imageTag = false;
      }

      // Open tag
      txtarea.value += bbtags[bbnumber];
      if ((bbnumber == 14) && (imageTag == false)) imageTag = 1; // Check to stop additional tags after an unclosed image tag
      arraypush(bbcode,bbnumber+1);
      eval('document.post.addbbcode'+bbnumber+'.value += \"*\"');
      txtarea.focus();
      return;
   }
   storeCaret(txtarea);
}

// From http://www.massless.org/mozedit/
function mozWrap(txtarea, open, close)
{
   var selLength = txtarea.textLength;
   var selStart = txtarea.selectionStart;
   var selEnd = txtarea.selectionEnd;
   if (selEnd == 1 || selEnd == 2)
      selEnd = selLength;

   var s1 = (txtarea.value).substring(0,selStart);
   var s2 = (txtarea.value).substring(selStart, selEnd)
   var s3 = (txtarea.value).substring(selEnd, selLength);
   txtarea.value = s1 + open + s2 + close + s3;
   return;
}

// Insert at Claret position. Code from
// http://www.faqts.com/knowledge_base/view.phtml/aid/1052/fid/130
function storeCaret(textEl) {
   if (textEl.createTextRange) textEl.caretPos = document.selection.createRange().duplicate();
}

//-->
</script>
   <form action='".append_sid("posting.$phpEx")."' method='post' name='post' onsubmit='return checkForm(this)'>
   <span class='genmed'><b>".$lang["Quick_Reply"].":</b><br />\n
   <input type=\"button\" class=\"button\" accesskey=\"b\" name=\"addbbcode0\" value=\" B \" style=\"font-weight:bold; width: 30px\" onClick=\"bbstyle(0)\" onMouseOver=\"helpline('b')\" />&nbsp;\n
   <input type=\"button\" class=\"button\" accesskey=\"i\" name=\"addbbcode2\" value=\" i \" style=\"font-style:italic; width: 30px\" onClick=\"bbstyle(2)\" onMouseOver=\"helpline('i')\" />&nbsp;\n
   <input type=\"button\" class=\"button\" accesskey=\"u\" name=\"addbbcode4\" value=\" u \" style=\"text-decoration: underline; width: 30px\" onClick=\"bbstyle(4)\" onMouseOver=\"helpline('u')\" />&nbsp;\n
   <input type=\"button\" class=\"button\" accesskey=\"q\" name=\"addbbcode6\" value=\"Quote\" style=\"width: 50px\" onClick=\"bbstyle(6)\" onMouseOver=\"helpline('q')\" />&nbsp;\n
   <input type=\"button\" class=\"button\" accesskey=\"c\" name=\"addbbcode8\" value=\"Code\" style=\"width: 40px\" onClick=\"bbstyle(8)\" onMouseOver=\"helpline('c')\" />&nbsp;\n
   <input type=\"button\" class=\"button\" accesskey=\"w\" name=\"addbbcode16\" value=\"URL\" style=\"text-decoration: underline; width: 40px\" onClick=\"bbstyle(16)\" onMouseOver=\"helpline('w')\" />&nbsp;\n
   <input type=\"button\" class=\"button\" accesskey=\"p\" name=\"addbbcode14\" value=\"Img\" style=\"width: 40px\"  onClick=\"bbstyle(14)\" onMouseOver=\"helpline('p')\" /><br /></span>\n
   <span class=\"gensmall\"><input type=\"text\" name=\"helpbox\" size=\"45\" maxlength=\"100\" style=\"width:340px; font-size:10px; background-color:#".$theme['td_color2'].";\" class=\"helpline\" value=\"Tip: Styles can be applied quickly to selected text.\" /></span><br /><span class='genmed'>";

   if (!$userdata['session_logged_in'])
   {
      $quick_reply_form .= $lang['Username'] . ":&nbsp;<input class='post' type='text' name='username' size='25' maxlength='25' value='' /><br />";
   }

   $quick_reply_form .= "<textarea name='input' rows='10' cols='50' wrap='virtual' class='post''></textarea><br />
   <input type='checkbox' name='quick_quote' />".$lang["Quick_quote"]."<br />
   <input type='checkbox' name='attach_sig' checked='checked' />".$lang["Attach_signature"]."<br />
   <input type='hidden' name='mode' value='reply' />
   <input type='hidden' name='sid' value='" . $userdata['session_id'] . "' />
   <input type='hidden' name='t' value='" . $topic_id . "' />
   <input type='hidden' name='message' value='' />
   <input type='hidden' name='notify' value=" . $notify  . " />
   <input type='hidden' name='last_msg' value='" . $last_msg  . "' />
   <input type='submit' name='preview' class='liteoption' value='".$lang['Preview']."' />&nbsp;
   <input type='submit' name='post' class='mainoption' value='".$lang["Submit"]."' accesskey='s' />
   </form></span>";
}

$template->assign_vars(array(
   'QUICK_REPLY_FORM' => $quick_reply_form)
);
//
// END Quick Reply Mod
//

#
#-----[ OPEN ]------------------------------------------
#
lang_main.php

#
#-----[ FIND ]------------------------------------------
#
//
// That's all Folks!

#
#-----[ BEFORE, ADD ]------------------------------------
#
// Quick Reply Mod
$lang['Quick_Reply'] = 'Quick Reply';
$lang['Quick_quote'] = 'Quote the last message';

#
#-----[ OPEN ]------------------------------------------
#
viewtopic_body.tpl

#
#-----[ FIND ]------------------------------------------
#
{S_TOPIC_ADMIN}

#
#-----[ AFTER, ADD ]------------------------------------
#
{QUICK_REPLY_FORM}


#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM


EoM is the guy who made it I guess.

Nightmare
_________________
EasyPHPBB Support Mod from 07/07/05 to 01/14/07.

If you need help please contact EasyPHPBB with your problem.


Last edited by Nightmare on Sat Oct 22, 2005 11:09 pm; edited 1 time in total
Back to top
View user's profile Send private message
Nightmare
EasyPHPBB Expert
EasyPHPBB Expert


Joined: 26 Mar 2005
Posts: 378
Location: Canada

PostPosted: Thu Jul 07, 2005 8:28 pm    Post subject: Reply with quote

http://www.h2gaming.sheernox.net/forums/viewtopic.php?t=1


is a link to my other other other site that I added the quick reply mod.
_________________
EasyPHPBB Support Mod from 07/07/05 to 01/14/07.

If you need help please contact EasyPHPBB with your problem.
Back to top
View user's profile Send private message
jong
EasyPHPBB Poster
EasyPHPBB Poster


Joined: 30 Jul 2005
Posts: 26

PostPosted: Sun Jul 31, 2005 7:31 am    Post subject: Reply with quote

how can i use the code?

pls teach me.. tnx!
Back to top
View user's profile Send private message Visit poster's website
EasyPHPBB
EasyPHPPB Owner
EasyPHPPB Owner


Joined: 27 Feb 2005
Posts: 407

PostPosted: Sun Jul 31, 2005 11:15 am    Post subject: Reply with quote

Its mainly for me. To help me out when added a mod.

EasyPHPBB
Back to top
View user's profile Send private message Send e-mail
djpreshit
EasyPHPBB Poster
EasyPHPBB Poster


Joined: 16 Sep 2005
Posts: 42

PostPosted: Sat Sep 17, 2005 3:51 am    Post subject: Reply with quote

Can quick reply mod be added to my forum???

www.djpreshit.easyphpbb.com

Thanx in advance
_________________
The Most happenin Forum on the Planet
Back to top
View user's profile Send private message
djpreshit
EasyPHPBB Poster
EasyPHPBB Poster


Joined: 16 Sep 2005
Posts: 42

PostPosted: Fri Oct 21, 2005 6:35 pm    Post subject: Reply with quote

Why havent u implemented this mod yet??

M still waitin for this!!

Its so popular!!

Thnx
_________________
The Most happenin Forum on the Planet
Back to top
View user's profile Send private message
Nightmare
EasyPHPBB Expert
EasyPHPBB Expert


Joined: 26 Mar 2005
Posts: 378
Location: Canada

PostPosted: Fri Oct 21, 2005 7:58 pm    Post subject: Reply with quote

djpreshit wrote:
Why havent u implemented this mod yet??

M still waitin for this!!

Its so popular!!

Thnx

I have a better one yet! Shocked when I get time I will fine it and post it. Very Happy
_________________
EasyPHPBB Support Mod from 07/07/05 to 01/14/07.

If you need help please contact EasyPHPBB with your problem.
Back to top
View user's profile Send private message
Jesse
EasyPHPBB Addict
EasyPHPBB Addict


Joined: 07 Oct 2005
Posts: 173
Location: Australia-Brisbane

PostPosted: Fri Oct 21, 2005 9:57 pm    Post subject: Reply with quote

COOLIES!!!
_________________
My Forum:

http://www.krypton.co.nr
Back to top
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger MSN Messenger
Nightmare
EasyPHPBB Expert
EasyPHPBB Expert


Joined: 26 Mar 2005
Posts: 378
Location: Canada

PostPosted: Sat Oct 22, 2005 11:09 pm    Post subject: Reply with quote

just edited it, it should look like this;

_________________
EasyPHPBB Support Mod from 07/07/05 to 01/14/07.

If you need help please contact EasyPHPBB with your problem.
Back to top
View user's profile Send private message
Jesse
EasyPHPBB Addict
EasyPHPBB Addict


Joined: 07 Oct 2005
Posts: 173
Location: Australia-Brisbane

PostPosted: Sat Oct 22, 2005 11:30 pm    Post subject: Reply with quote

That looks awsome?
_________________
My Forum:

http://www.krypton.co.nr
Back to top
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger MSN Messenger
djpreshit
EasyPHPBB Poster
EasyPHPBB Poster


Joined: 16 Sep 2005
Posts: 42

PostPosted: Sun Oct 23, 2005 3:59 am    Post subject: Reply with quote

Wowe, that looks awesome man!!

Wens it gonna be implemented!!! ???

M so waitin for it!!
_________________
The Most happenin Forum on the Planet
Back to top
View user's profile Send private message

Display posts from previous:   
Post new topic   Reply to topic    EasyPHPBB Forum Index -> Mods and Mod Requests All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Create your own free forum now!
Terms of Service Purchase Ad Removal Forum Archive Report Abuse