Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.5 > vBulletin 3.5 Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
vB Spell :: Spell Checker in WYSIWYG and Standard Modes Details »»
vB Spell :: Spell Checker in WYSIWYG and Standard Modes
Version: 0.9.12, by tamarian tamarian is offline
Developer Last Online: Nov 2023 Show Printable Version Email this Page

Version: 3.5.3 Rating:
Released: 07-13-2005 Last Update: 12-25-2005 Installs: 262
Template Edits
Additional Files  
No support by the author.

A 3.6 version by cynix2 is posted here:
https://vborg.vbsupport.ru/showthread.php?t=124578

What this does: vB Spell allows you to install a dictionary (English dictionary included) into your MysQL database, and provide a spell checking window that works in both of vB's editor modes, standard and WYSIWYG.

Background: Many of you liked PungoSpell, but didn't like recompiling PHP for it. Many liked PHPSpell, but didn't like the lack of WYSIWYG support and browser compatibility. vB Spell solved both problems, I hope, by combining the best of each.

Features:
o Supports most recent versions of browsers. Tested on IE, Firefox, Mozilla/Netsacpe, Opera and Konqueror (Konqueror implies Safari, but please confirm Mac folks)
o Learn Feature uses cookies, so it won't increase the database size
o Admin panel options
o Works in WYSIWYG toolbar, Standard toolbar, and no toolbar
o Can be added in full edit mode, quick edit and quick reply.
o Skips quoted text and other tags (PHP, code, etc.)
o Usergroup permisisons
o Template based interface, and uses your default style.
o Link buttons (Thesarus and Lookup) with links to Merriam Webster's online thesarus and dictionary links with the suggestion for misspelled words.

Installation:
Note: There is a french version of vB Spell, by cclaerhout posted here

1. Upload files and run vbspell_install.php
2. Go to AdminCP > vBulletin Options > vB Spell and edit your usergroup permisisons.
3. Template edits: (see alternative method, if you don't mind removing the ieSpell button made by vB : https://vborg.vbsupport.ru/showpost....9&postcount=48)

For each template where you would like to add a vB Spell, do the following edits (Example: editpost, newreply, newthread, etc.)

A. Find:
HTML Code:
</head>
Add before:
HTML Code:
<script src="vbspell.js"></script>
B. Find: (or anywhere in the body)
HTML Code:
$navbar
Add after:
HTML Code:
<form name="spell_form" id="spell_form" method="POST" target="spellWindow" action="vbspell.php">
        <input type="hidden" name="spell_formname" value="">
        <input type="hidden" name="spell_fieldname" value="">
        <input type="hidden" name="spellstring" value="">
</form>
C. Find the submit and preview buttons:
HTML Code:
		<input type="submit" class="button" name="sbutton" value="$vbphrase[save_changes]" accesskey="s" tabindex="1" />
		<input type="submit" class="button" name="preview" value="$vbphrase[preview_changes]" accesskey="p" tabindex="1" />
Add below:
HTML Code:
<input type="button" class="button" value="Spell Check" onClick="spellCheck('vbform', '$editorid', '2');" />

Other templates:

Optional: Other Templates that contain edit boxes are:
USERCP_SHELL just add A before the </head section and B after it. Required for pm_newpm and modifysignature.
editpost
Calendar Templates: calendar_edit
New Posting Templates: newreply, newthread

Quick reply: . Put change A and B in showthread, as the rest, and use this for step C:
HTML Code:
<input type="button" class="button" value="Spell Check" onClick="spellCheck('qrform', '$editorid', '2');" />
Right after this (also in showthread):
HTML Code:
			<input type="submit" class="button" value="$vbphrase[go_advanced]" accesskey="x" title="(Alt + X)" name="preview" tabindex="3" id="qr_preview" onclick="this.form.clickedelm.value = this.value" />
For quick edit in postbit_quickedit, use this for step C (A and B are in showthread):
HTML Code:
		<input type="button" class="button" value="Spell Check" onClick="spellCheck('vbform', '$editorid', '2');" />
After this:
HTML Code:
		<input type="button" class="button" tabindex="1" accesskey="p" value="$vbphrase[go_advanced]" id="{$editorid}_adv" />

History:
December 25, 2005: Security fix for cases where you allow HTML posts and they contain malicious code (Credit goes to Brendan Donahue for finding the issue and alerting TechGuy, and to TechGuy for alerting me to it)
November 2nd. 2005: Fixes a bug with slashes in text.
October 17. 2005: Check for primary and secondary group for permission. Bug fix for quoted words.
September 13, 2005: v0.9.9 Bugfix for JS on IE with RC3
July 15, 2005: v0.9.8 Bugfix for JS code mismatch with template.
July 14, 2005: v0.9.7 Initial release for vB 3.5 beta-4

Please click Install if you have installed this mod.

Scrrenshots: (from the 3.0.7, but it's identical)

Show Your Support

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

Comments
  #152  
Old 10-09-2005, 05:38 PM
TosaInu's Avatar
TosaInu TosaInu is offline
 
Join Date: Jul 2004
Posts: 256
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for the hack/port tamarian. A problem with the install script: when loading the dictionary it checks ./admincp/dictionary.dic , it doesn't work when the admincp has a different foldername as specified in config.php.

It seems that any user who can use the spellchecker, can also add words to the dictionary?
Reply With Quote
  #153  
Old 10-09-2005, 05:41 PM
Lea Verou Lea Verou is offline
 
Join Date: Jul 2005
Location: Greece
Posts: 1,856
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by TosaInu
Thanks for the hack/port tamarian. A problem with the install script: when loading the dictionary it checks ./admincp/dictionary.dic , it doesn't work when the admincp has a different foldername as specified in config.php.

It seems that any user who can use the spellchecker, can also add words to the dictionary?
Both of your questions have been answered in previous posts. Read the thread (aka RTFM )
Reply With Quote
  #154  
Old 10-09-2005, 08:01 PM
tamarian tamarian is offline
 
Join Date: Oct 2001
Location: Canada
Posts: 1,205
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by TosaInu
Thanks for the hack/port tamarian. A problem with the install script: when loading the dictionary it checks ./admincp/dictionary.dic , it doesn't work when the admincp has a different foldername as specified in config.php.

It seems that any user who can use the spellchecker, can also add words to the dictionary?
Yes, I'll update the install scripts in the next version. In the mean time, if oyou haven't done so, just rename the directory in the script.

The "learn" button relies on cookies. So if one user clicks "learn", it will not be added to your database, and it will no affect other uses, each's learned words are stored in their own cookies.
Reply With Quote
  #155  
Old 10-09-2005, 08:12 PM
TosaInu's Avatar
TosaInu TosaInu is offline
 
Join Date: Jul 2004
Posts: 256
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I must have messed up the renaming, used another trick to get there (I hope

Nice about those cookies for learn.

The quick-edit worked in 3.5.0 (iirc) but now it's giving a Java error.

Line: 25
Char: 17
Error: 'document.forms[...].message' is null or not an object
Code: 0
URL: http:// and so on.
Reply With Quote
  #156  
Old 10-09-2005, 08:16 PM
tamarian tamarian is offline
 
Join Date: Oct 2001
Location: Canada
Posts: 1,205
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by TosaInu
I must have messed up the renaming, used another trick to get there (I hope

Nice about those cookies for learn.

The quick-edit worked in 3.5.0 (iirc) but now it's giving a Java error.

Line: 25
Char: 17
Error: 'document.forms[...].message' is null or not an object
Code: 0
URL: http:// and so on.
Are you using the latest version?
Reply With Quote
  #157  
Old 10-10-2005, 08:44 AM
TosaInu's Avatar
TosaInu TosaInu is offline
 
Join Date: Jul 2004
Posts: 256
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Downloaded it yesterday tamarian and followed the install instructions in the first post.
Reply With Quote
  #158  
Old 10-10-2005, 01:01 PM
tamarian tamarian is offline
 
Join Date: Oct 2001
Location: Canada
Posts: 1,205
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by TosaInu
Downloaded it yesterday tamarian and followed the install instructions in the first post.
O.k., have you tried it in different templates? Quick Edit seems not to work, try it in new reply or new thread templates.
Reply With Quote
  #159  
Old 10-10-2005, 02:48 PM
TosaInu's Avatar
TosaInu TosaInu is offline
 
Join Date: Jul 2004
Posts: 256
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It works in all other templates.
Reply With Quote
  #160  
Old 10-13-2005, 12:04 AM
dsmcd01 dsmcd01 is offline
 
Join Date: Sep 2003
Posts: 30
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It seems to have trouble recognizing words beginning or ending with single quotes. For instance: 'word' is detected as a misspelling, but "word" is ok.

Still a fine hack. Thanks,
D.
Reply With Quote
  #161  
Old 10-13-2005, 02:05 AM
tamarian tamarian is offline
 
Join Date: Oct 2001
Location: Canada
Posts: 1,205
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by dsmcd01
It seems to have trouble recognizing words beginning or ending with single quotes. For instance: 'word' is detected as a misspelling, but "word" is ok.

Still a fine hack. Thanks,
D.
Try this: open vbspell.php, find:

PHP Code:
preg_match_all "/" $ignore_sets "\[[^\]]+\]|[[:alpha:]']+|<[^>]+>|&[^;\ ]+;/im"$mystr$alphasPREG_OFFSET_CAPTURE|PREG_PATTERN_ORDER); 
Replace with:
PHP Code:
preg_match_all "/" $ignore_sets "\[[^\]]+\]|[[:alpha:]]+|<[^>]+>|&[^;\ ]+;/im"$mystr$alphasPREG_OFFSET_CAPTURE|PREG_PATTERN_ORDER); 
Reply With Quote
  #162  
Old 10-13-2005, 02:43 AM
Mr Chad's Avatar
Mr Chad Mr Chad is offline
 
Join Date: Jul 2005
Posts: 911
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

This is amaizing! Only problem was adding the dictionary to the database. I host with 1and1 and their DB konks out if i send to much at a time. so i had to add it until it gave me the error then find out how far it added and take all the stuff it added from the Dict.TXT and re add it. Worked perfectly.
Reply With Quote
  #163  
Old 10-13-2005, 01:50 PM
dsmcd01 dsmcd01 is offline
 
Join Date: Sep 2003
Posts: 30
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by tamarian
Try this: open vbspell.php, find:

PHP Code:
preg_match_all "/" $ignore_sets "\[[^\]]+\]|[[:alpha:]']+|<[^>]+>|&[^;\ ]+;/im"$mystr$alphasPREG_OFFSET_CAPTURE|PREG_PATTERN_ORDER); 
Replace with:
PHP Code:
preg_match_all "/" $ignore_sets "\[[^\]]+\]|[[:alpha:]]+|<[^>]+>|&[^;\ ]+;/im"$mystr$alphasPREG_OFFSET_CAPTURE|PREG_PATTERN_ORDER); 
No, sorry. No difference. Spell checking:
word 'word' "word"
still finds 'word' misspelled.

Thx,
D.
Reply With Quote
  #164  
Old 10-14-2005, 12:54 PM
AaronBBrown AaronBBrown is offline
 
Join Date: Sep 2005
Location: Waltham, MA
Posts: 4
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I've followed the instructions, put A and B in SHOWTHREAD and followed the special instructions and put
Code:
<input type="button" class="button" value="Spell Check" onClick="spellCheck('qeform', '$editorid', '2');" />
in postbit_quickedit, but my quickedit spellcheck button does nothing. Suggestions?
Reply With Quote
  #165  
Old 10-14-2005, 01:26 PM
tamarian tamarian is offline
 
Join Date: Oct 2001
Location: Canada
Posts: 1,205
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by AaronBBrown
I've followed the instructions, put A and B in SHOWTHREAD and followed the special instructions and put
Code:
<input type="button" class="button" value="Spell Check" onClick="spellCheck('qeform', '$editorid', '2');" />
in postbit_quickedit, but my quickedit spellcheck button does nothing. Suggestions?
There is a problem with Quick edit that has yet to be resolved. For now, just click advanced to use the spell checker.
Reply With Quote
  #166  
Old 11-01-2005, 05:18 PM
AaronBBrown AaronBBrown is offline
 
Join Date: Sep 2005
Location: Waltham, MA
Posts: 4
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

This mod strips out all backslashes from a post.

If I type "C:\Mypath\Foo"

vBSpell immediately strips it to "C:MypathFoo" when it comes up.
Reply With Quote
Reply


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 07:27 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.06404 seconds
  • Memory Usage 2,397KB
  • Queries Executed 30 (?)
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
  • (2)bbcode_code
  • (10)bbcode_html
  • (4)bbcode_php
  • (7)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
  • (1)pagenav_pagelinkrel
  • (16)post_thanks_box
  • (16)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (16)post_thanks_postbit_info
  • (15)postbit
  • (16)postbit_onlinestatus
  • (16)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