Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.6 > vBulletin 3.6 Add-ons

Reply
 
Thread Tools
Add an Urdu Editor to your vBulletin forum - Urdu OpenPad integration Details »»
Add an Urdu Editor to your vBulletin forum - Urdu OpenPad integration
Version: 1.00, by simunaqv simunaqv is offline
Developer Last Online: May 2018 Show Printable Version Email this Page

Category: New Posting Features - Version: 3.6.8 Rating:
Released: 08-05-2007 Last Update: 08-07-2007 Installs: 21
Is in Beta Stage  
No support by the author.

Description:
This hack integrates Urdu OpenPad in your vBulletin forum. At the moment this hack is only available in the form of template modification instructions. These changes are aimed at converting specific edit areas into Urdu edit areas. You can use the same procedure to convert any other edit area into an Urdu edit area. Please note that this integration is available for textarea-mode i.e. it does not work for the wysiwyg mode.

NOTE: It has been brought to my notice that users on some forums are having problems logging in with Urdu user names. This is because of the way Unicode data is handled in a non-Unicode forum. I recommend skipping the modifications in the navbar, STANDARD_ERROR, STANDARD_ERROR_LITE, STANDARD_ERROR_LOGIN and the register templates on these forums.

Demo: Urdu Mehfil Forum

Upload files:
Upload the contents of the upload folder to your forum root.

Template Changes:

in the headinclude template
===========================
FIND:

HTML Code:
<if condition="$vboptions['externalrss']">
<link rel="alternate" type="application/rss+xml" title="$vboptions[bbtitle] RSS Feed" href="external.php?type=RSS2" />
<if condition="$show['foruminfo'] OR $show['threadinfo']">
<link rel="alternate" type="application/rss+xml" title="$vboptions[bbtitle] - $foruminfo[title_clean] - RSS Feed" href="external.php?type=RSS2&amp;forumids=$foruminfo[forumid]" />
</if>
</if>
AFTER ADD:

HTML Code:
<script type="text/javascript" src="clientscript/OpenPad.js"></script>
<script type="text/javascript">
initUrduEditor();
</script>
in the navbar template
======================

FIND:

HTML Code:
<td><input type="text" class="bginput" style="font-size: 11px" name="vb_login_username" id="navbar_username" size="10" accesskey="u" tabindex="101" value="$vbphrase[username]" onfocus="if (this.value == '$vbphrase[username]') this.value = '';" /></td>
<td class="smallfont" colspan="2" nowrap="nowrap"><label for="cb_cookieuser_navbar"><input type="checkbox" name="cookieuser" value="1" tabindex="103" id="cb_cookieuser_navbar" accesskey="c" />$vbphrase[remember_me]</label></td>
REPLACE WITH:

HTML Code:
<td colspan="3"><input type="text" class="bginput" style="font-size: 11px" name="vb_login_username" id="navbar_username" size="10" accesskey="u" tabindex="101" value="$vbphrase[username]" onfocus="if (this.value == '$vbphrase[username]') this.value = '';" /><br /><script language="javascript" type="text/javascript">writeToggleControl("vb_login_username");makeUrduEditor("vb_login_username", 11)</script></td>
 
<td class="smallfont" colspan="3" nowrap="nowrap"><label for="cb_cookieuser_navbar"><input type="checkbox" name="cookieuser" value="1" tabindex="103" id="cb_cookieuser_navbar" accesskey="c" />$vbphrase[remember_me]</label></td>
FIND:

HTML Code:
<div><input type="text" class="bginput" name="query" size="25" tabindex="1001" /><input type="submit" class="button" value="$vbphrase[go]" tabindex="1004" /></div>
REPLACE WITH:

HTML Code:
<div><input type="text" class="bginput" name="query" size="25" tabindex="1001" /><input type="submit" class="button" value="$vbphrase[go]" tabindex="1004" />
<script language="javascript" type="text/javascript">makeUrduEditor("query", 11)</script>
</div>
in the STANDARD_ERROR template
==============================

FIND:

HTML Code:
<td>$vbphrase[username]:<br /><input type="text" class="bginput" name="vb_login_username" size="50" accesskey="u" tabindex="1" /></td>
REPLACE WITH:

HTML Code:
<td>$vbphrase[username]:<br /><input type="text" class="bginput" name="vb_login_username" id="vb_login_username_2" size="50" accesskey="u" tabindex="1" />
<br /><script language="javascript" type="text/javascript">makeUrduEditorById("vb_login_username_2", 11);writeToggleControl("vb_login_username_2", true)</script>
</td>

in the STANDARD_ERROR_LITE template
===================================

FIND:

HTML Code:
<td>$vbphrase[username]:<br /><input type="text" class="bginput" name="vb_login_username" size="35" accesskey="u" tabindex="1" /></td>
REPLACE WITH:

HTML Code:
<td>$vbphrase[username]:<br /><input type="text" class="bginput" name="vb_login_username" id="vb_login_username_2" size="35" accesskey="u" tabindex="1" />
<br /><script language="javascript" type="text/javascript">makeUrduEditorById("vb_login_username_2", 11);writeToggleControl("vb_login_username_2", true)</script>
</td>

in the STANDARD_ERROR_LOGIN template
====================================

FIND:

HTML Code:
<td>$vbphrase[username]:<br /><input type="text" class="bginput" name="vb_login_username" size="50" accesskey="u" tabindex="1" /></td>

REPLACE WITH:

HTML Code:
<td>$vbphrase[username]:<br /><input type="text" class="bginput" name="vb_login_username" id="vb_login_username_2" size="50" accesskey="u" tabindex="1" />
<br /><script language="javascript" type="text/javascript">makeUrduEditorById("vb_login_username_2", 11);writeToggleControl("vb_login_username_2", true)</script>
</td>
in the register template
========================

FIND:

HTML Code:
<div class="smallfont" style="margin-bottom:$stylevar[formspacer]px">
<strong>$vbphrase[username]</strong>:<br />
<input type="text" class="bginput" name="username" size="50" maxlength="$vboptions[maxuserlength]" value="$username" />
</div>

REPLACE WITH:

HTML Code:
<div class="smallfont" style="margin-bottom:$stylevar[formspacer]px">
<strong>$vbphrase[username]</strong>:<br />
<input type="text" class="bginput" name="username" size="50" maxlength="$vboptions[maxuserlength]" value="$username" />
<br /><script language="javascript" type="text/javascript">writeToggleControl("username");makeUrduEditor("username", 11)</script></td>
</div>


FIND:

HTML Code:
<div id="referrerfield"><input id="referrerfield_txt" type="text" class="bginput" name="referrername" value="$referrername" size="50" maxlength="$vboptions[maxuserlength]" /></div>


REPLACE WITH:


HTML Code:
<div id="referrerfield"><input id="referrerfield_txt" type="text" class="bginput" name="referrername" value="$referrername" size="50" maxlength="$vboptions[maxuserlength]" />
<br /><script language="javascript" type="text/javascript">writeToggleControl("referrername");makeUrduEditor("referrername", 11)</script></td>
</div>

in the editor_toolbar_off template
=================================

FIND:

HTML Code:
<div style="text-align:$stylevar[left]" style="padding-right:8px">
<textarea name="message" id="{$editorid}_textarea" rows="10" cols="60" style="width:100%; height:{$editor_height}px" tabindex="1">$newpost[message]</textarea>
<!--width:$stylevar[messagewidth]-->
</div>
REPLACE WITH:

HTML Code:
<div style="text-align:$stylevar[left]" style="padding-right:8px">
<textarea name="message" id="{$editorid}_textarea" rows="10" cols="60" style="width:100%; height:{$editor_height}px" tabindex="1">$newpost[message]</textarea>
<!--width:$stylevar[messagewidth]-->
<br /><script language="JavaScript" type="text/javascript">writeToggleControl("{$editorid}_textarea", true);</script>
<br /><script language="JavaScript" type="text/javascript">writeKeyboard();</script>
</div>
FIND:

HTML Code:
<script type="text/javascript">
<!--
vB_Editor['$editorid'] = new vB_Text_Editor('$editorid', $editortype, '$forumid', '$parsesmilie');
//-->
</script>

REPALCE WITH:


HTML Code:
<script type="text/javascript">
<!--
vB_Editor['$editorid'] = new vB_Text_Editor('$editorid', $editortype, '$forumid', '$parsesmilie');
<if condition="$bbuserinfo['showvbcode'] != 2">
makeUrduEditorById('{$editorid}_textarea', 18);
</if>
//-->
</script>



in the editor_toolbar_on template
================================

FIND:

HTML Code:
<tr valign="top">
<td class="controlbar">
<textarea name="message" id="{$editorid}_textarea" rows="10" cols="60" style="display:block; width:$stylevar[messagewidth]; height:{$editor_height}px" tabindex="1" dir="$stylevar[textdirection]">$newpost[message]</textarea>
</td>
<if condition="$smiliebox"><td class="controlbar">$smiliebox</td></if>
</tr>
ADD AFTER:

HTML Code:
<if condition="$bbuserinfo['showvbcode'] != 2">
<tr>
<td>
<script language="JavaScript" type="text/javascript">
writeToggleControl("{$editorid}_textarea", true);
</script>
</td>
</tr>
<tr>
<td>
<script language="JavaScript" type="text/javascript">
writeKeyboard();
</script>
</td>
</tr>
</if>
FIND:

HTML Code:
<script type="text/javascript">
<!--
vB_Editor['$editorid'] = new vB_Text_Editor('$editorid', $editortype, '$forumid', '$parsesmilie', undefined, '$ajax_extra');
//-->
</script>
REPLACE WITH:

HTML Code:
<script type="text/javascript">
<!--
vB_Editor['$editorid'] = new vB_Text_Editor('$editorid', $editortype, '$forumid', '$parsesmilie', undefined, '$ajax_extra');
<if condition="$bbuserinfo['showvbcode'] != 2">
makeUrduEditorById('{$editorid}_textarea', 18);
</if>
//-->
</script>
in the newreply template
========================

FIND:

HTML Code:
<td><input type="text" class="bginput" name="title" value="$title" size="50" maxlength="$vboptions[titlemaxchars]" tabindex="1" title="$vbphrase[optional]" /><td>
REPLACE WITH:

<
HTML Code:
td><input type="text" class="bginput" name="title" value="$title" size="50" maxlength="$vboptions[titlemaxchars]" tabindex="1" title="$vbphrase[optional]" />
<br /><script language="javascript" type="text/javascript">writeToggleControl("title");makeUrduEditor("title", 14)</script>
</td>
in the newthread template
=========================

FIND:

HTML Code:
<td><input type="text" class="bginput" name="subject" value="$subject" size="40" maxlength="$vboptions[titlemaxchars]" tabindex="1" /></td>
REPLACE WITH:

HTML Code:
<tr>
<td><input type="text" class="bginput" name="subject" value="$subject" size="40" maxlength="$vboptions[titlemaxchars]" tabindex="1" />
<br />
<script language="javascript" type="text/javascript">writeToggleControl("subject");makeUrduEditor("subject", 14)</script>
</td>
in the showthread_quickreply template
=====================================

FIND:

HTML Code:
<textarea name="message" id="{$editorid}_textarea" rows="10" cols="60" style="width:100%; height:{$editor_height}px" tabindex="1" dir="$stylevar[textdirection]"></textarea>
</if>
</fieldset>
<!--width:$stylevar[messagewidth]-->
ADD AFTER:

HTML Code:
<if condition="$bbuserinfo['showvbcode'] != 2">
<br /><script language="JavaScript" type="text/javascript">writeToggleControl("{$editorid}_textarea", true);</script>
<br /><script language="JavaScript" type="text/javascript">writeKeyboard();</script>
</if> 
FIND:

HTML Code:
<script type="text/javascript">
<!--
vB_Editor['$editorid'] = new vB_Text_Editor('$editorid', $editortype, '$forumid', '$parsesmilie');
var QR_EditorID = '$editorid';
//-->
</script>
REAPLCE WITH:

HTML Code:
<script type="text/javascript">
<!--
vB_Editor['$editorid'] = new vB_Text_Editor('$editorid', $editortype, '$forumid', '$parsesmilie');
var QR_EditorID = '$editorid';
<if condition="$bbuserinfo['showvbcode'] != 2">
makeUrduEditorById('{$editorid}_textarea', 18);
</if>
//-->
</script>
in the pm_newpm template
========================

FIND:

HTML Code:
<div id="pmrecips"><textarea id="pmrecips_txt" name="recipients" rows="<if condition="is_browser('mozilla')">1<else />2</if>" cols="50" tabindex="1">$pm[recipients]</textarea></div>

REAPLCE WITH:


HTML Code:
<div id="pmrecips"><textarea id="pmrecips_txt" name="recipients" rows="<if condition="is_browser('mozilla')">1<else />2</if>" cols="50" tabindex="1">$pm[recipients]</textarea>
<br /><script language="javascript" type="text/javascript">makeUrduEditor("recipients", 14);writeToggleControl("recipients")</script>
</div>


FIND:

HTML Code:
<div id="bccpmrecips"><textarea id="bccpmrecips_txt" name="bccrecipients" rows="<if condition="is_browser('mozilla')">1<else />2</if>" cols="50" tabindex="1">$pm[bccrecipients]</textarea></div>
REAPLCE WITH:

HTML Code:
<div id="bccpmrecips"><textarea id="bccpmrecips_txt" name="bccrecipients" rows="<if condition="is_browser('mozilla')">1<else />2</if>" cols="50" tabindex="1">$pm[bccrecipients]</textarea>
<br /><script language="javascript" type="text/javascript">makeUrduEditor("bccrecipients", 14);writeToggleControl("bccrecipients")</script>
</div>
FIND:

HTML Code:
<td><input type="text" class="bginput" name="title" value="$pm[title]" size="50" maxlength="85" tabindex="1" /></td>
REPLACE WITH:

HTML Code:
<td><input type="text" class="bginput" name="title" value="$pm[title]" size="50" maxlength="85" tabindex="1" />
<br /><script language="javascript" type="text/javascript">makeUrduEditor("title", 14);writeToggleControl("title")</script>
</td>

Adding custom css classes:

Add the following css definitions to the additional css classes

HTML Code:
.btnFlat {
background: #ECECEC;
border: 1px solid #D3D3D3;
cursor: pointer;
cursor: hand;
text-align:center;
font-family:Urdu Naskh Asiatype;
font-size:12px;
}
.btnRaised, .btnFlat:hover {
background: #D3D3D3;
border: 1px outset;
cursor: pointer;
cursor: hand;
text-align:center;
font-family:Urdu Naskh Asiatype;
font-size:12px;
}
.btnLowered, .btnFlat:active {
background: #D3D3D3;
border: 1px inset;
cursor: pointer;
cursor: hand;
text-align:center;
font-family:Urdu Naskh Asiatype;
font-size:12px;
}
.hiddentext {display:none}
.outline {cursor:hand; text-decoration:underline}
 
a.switch
{
font-family: Times New Roman;
color:#0000FF;
font-size:xx-small;
direction:rtl;
text-decoration:none;
unicode-bidi:embed;
}
a.switch:hover
{
background-color:#FF6699;
}
Updates:

August 08, 2007: Added instructions for modifiying the register template

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #62  
Old 06-29-2008, 09:43 AM
simunaqv simunaqv is offline
 
Join Date: May 2007
Posts: 91
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by usmansabir View Post
I'm having the same problem .. and i'm newbie as well.. could you please tell me whre i'm wrong and could you please also tell me where exactly to go and change what .. your explanation so far has been really great. but this CSS thing is confusing for me ..

thankx in advance for your help.
Quote:
Originally Posted by usmansabir View Post
Another Problem ...


Cant find English Typing Option .. while using Search in the navbar .. only takes Urdu input.

You can switch the language mode using the CTRl+SPACE keyboard shortcut.
As for the the other problem, you need to set the default encoding of your forum to utf-8. You will find this setting in the language settings.
Reply With Quote
  #63  
Old 06-29-2008, 06:17 PM
urdu urdu is offline
 
Join Date: Apr 2007
Posts: 36
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by simunaqv View Post
The screenshot show that you are using editor in wysiwyg mode. The Urdu editor integration does not work in the wysiwyg mode. You need to switch to the text editor mode. If you want to switch the editor mode for all of your users, you will need to execute a database query for that.
please explain more about wysiwyg mode ?
how can i switch the editor mode ?
Reply With Quote
  #64  
Old 06-30-2008, 02:28 PM
simunaqv simunaqv is offline
 
Join Date: May 2007
Posts: 91
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

You will find this setting in your profile options at the bottom of the page.
Reply With Quote
  #65  
Old 06-30-2008, 09:39 PM
wWw.Fun2Wii.Com wWw.Fun2Wii.Com is offline
 
Join Date: May 2008
Posts: 31
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

جميا جداا يغالي

مكشور

thanks
Reply With Quote
  #66  
Old 07-02-2008, 04:21 PM
Megatr0n Megatr0n is offline
 
Join Date: Jul 2007
Posts: 455
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

simunaqv, you get my last PM? My Urdu editor looks like a Roman one, LOL.
Reply With Quote
  #67  
Old 07-29-2008, 05:31 PM
tanha tanha is offline
 
Join Date: Mar 2008
Posts: 35
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

plz dear no xml file plz attcah xml file for new vorsion .3.7.2 thanks
Reply With Quote
  #68  
Old 08-04-2008, 11:31 AM
simunaqv simunaqv is offline
 
Join Date: May 2007
Posts: 91
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by tanha View Post
plz dear no xml file plz attcah xml file for new vorsion .3.7.2 thanks
This mod consists of only template modifications, there is no XML file. This mod also works for 3.7.2.
Reply With Quote
  #69  
Old 10-10-2008, 10:26 AM
ever-fresh ever-fresh is offline
 
Join Date: Aug 2008
Posts: 11
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

will it work for 3.7.x ?
Reply With Quote
  #70  
Old 10-20-2008, 01:48 PM
simunaqv simunaqv is offline
 
Join Date: May 2007
Posts: 91
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by ever-fresh View Post
will it work for 3.7.x ?
Sorry for the late reply. Yes it does.
Reply With Quote
  #71  
Old 12-02-2008, 09:10 PM
Basit Basit is offline
 
Join Date: Apr 2004
Location: London
Posts: 61
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Asalam o Alaikum Nabeel,

Not sure if you are still providing support or not. I once again tried it on my forum but facing some strange behavior. When ever a user type Hay (Halway wali) whole message get messed up. For example view following page.

http://www.hallagulla.com/urdu/help-...ad-286039.html

Any idea how to fix this problem ?

Looking forward to hear from you soon.

Regards,
Reply With Quote
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 01:38 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04945 seconds
  • Memory Usage 2,393KB
  • Queries Executed 25 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (39)bbcode_html
  • (5)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete