Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 2.x > vBulletin 2.x Full Releases
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Details »»

Version: 1.00, by TWTCommish TWTCommish is offline
Developer Last Online: Dec 2022 Show Printable Version Email this Page

Version: 2.2.x Rating:
Released: 01-22-2002 Last Update: Never Installs: 34
 
No support by the author.

I must pay homage to user/moderator wluke for this idea. I must also thank him for allowing me to run with it, and release it publicly. Thanks Wayne!

What's it do?
Simple: creates a glossary of terms. They're sorted alphabetically much in the same way the Memberlist is. I find this is extremely useful for most forums, which surely have a lot of their own lingo. For my site, it's a few acronyms and goofy phrases. My members get a kick out of referring newbies to the glossary to learn about the phrases. It's really helped the whole place seem less like a clique...because others can catch up easily with a reference like this.

Here's a live demo


What's it take?
This hack involves a MySQL command, the uploading of two files, the modification of one, and the creation of five templates. It also requires the modification of a second file, and of two templates, if you want to display a random glossary term on the New Reply/New Thread pages. It'll require a bit more still if you want to add the Glossary to your forum jump menu.

First off, run the following query in MySQL. This is the table that will store the glossary data.

Code:
CREATE TABLE `glossary` (
  `glossaryid` int(11) NOT NULL auto_increment,
  `text` text NOT NULL,
  `description` text NOT NULL,
  PRIMARY KEY  (`glossaryid`)
) TYPE=MyISAM;
Attched to the post right after this one is an archive: files.zip. This archive contains two files: glossary.php and admin_glossary.php. The first goes in your main forums directory. The second should be uploaded into your /admin/ directory.

Next, you'll need to create five templates. I've attached a text file containing all five to this post. Should be pretty straightforward. Mess with the formatting as you see fit, of course.

After that, you'll probably want to open (back it up!!!) your /admin/index.php file. Find the code below (around line 340):

Code:
makenavselect("Templates");
// ***
Right after that, add this:

Code:
makenavoption("Add", "admin_glossary.php?action=add", "|");
makenavoption("Edit", "admin_glossary.php?action=edit", "|");
makenavoption("Delete", "admin_glossary.php?action=delete");
makenavselect("Glossary", "<hr><br>");
There, it should work now! Now, on to the extras (well worth installing, in my opinion):

Display a random glossary term on new thread/new reply pages
Open newreply.php and find the following code (around line 468...it should be right near the end of the file):
Code:
getforumrules($foruminfo,$permissions);
Right after it, add this:

Code:
  $rand_term = $DB_site->query_first("SELECT text AS term_text, description AS term_description FROM glossary ORDER BY RAND()");
  extract($rand_term);
  $term_description = str_replace("'", "\\'", htmlspecialchars(strip_tags($term_description)));
Yeah, that last line is a little messy -- I like saving space, though.

Save and upload. Next, open newthread.php and find the same bit of code (duplicated below) around line 368 or so:

Code:
getforumrules($foruminfo,$permissions);
After that, add the same bit of code above.

Next: the templates. Find the below in both templates...

Code:
$vbcode_smilies</td>
...and in both templates, replace it with this:

Code:
	$vbcode_smilies<br><center><smallfont><b>Random Term: <a href="#" onclick="alert('$term_description'); return false;">$term_text</a></b></smallfont><br>

	<smallfont><a href="$bburl/glossary.php" target="_blank">More Glossary Terms!</a></smallfont><br></td>
There, you're done!


Add vBGlossary to the forum jump menu
Open forumdisplay.php in your main forums directory. Find this, near the top of the file (line 13 or so):

Code:
	case 'cp': $goto = 'usercp'; break;
Right after it, add this:

Code:
	case 'gl': $goto = 'glossary'; break;
Next (and last) step: open the forumjump template and add this bit of code somewhere amongst the other options...where you put it depends on where you want it in the menu.

Code:
		<option value="gl" $frmjmpsel[glossary]>The Glossary</option>
That's it! All done. Enjoy.

I hope you all enjoy this hack. It didn't take nearly as much time/effort as I thought it would...I really love it, though.

Show Your Support

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

Comments
  #212  
Old 08-05-2002, 08:41 PM
hypedave's Avatar
hypedave hypedave is offline
 
Join Date: Nov 2001
Location: Dallas, Tx
Posts: 320
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

when I click on more glossary terms I get a blank page :alien:
Reply With Quote
  #213  
Old 08-28-2002, 12:03 PM
Dockaych Dockaych is offline
 
Join Date: Nov 2001
Posts: 31
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Would it be possible to have the Glossary.php file show 'all' words in the glossary, and then allow users to filter if necessary (much like the members list page)??

Right now it looks as though the glossary is empty because I don't have any items in the '#' numerical category.
Reply With Quote
  #214  
Old 08-28-2002, 12:29 PM
Dockaych Dockaych is offline
 
Join Date: Nov 2001
Posts: 31
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Another idea...

Would it be possible to make a custom tag such as [glossary]Avatar[/glossary] which makes the word a hyperlink to an information box (just like on the New Thread page)? This would be really useful.
Reply With Quote
  #215  
Old 08-28-2002, 01:33 PM
Dockaych Dockaych is offline
 
Join Date: Nov 2001
Posts: 31
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Strange...

When I try to edit an entry, it gives me an SQL error.
However, I can add and delete entries with no problem.
What is the problem?
Reply With Quote
  #216  
Old 01-13-2003, 01:56 AM
drownedspirit drownedspirit is offline
 
Join Date: Oct 2002
Posts: 29
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I get the "Sorry, there are no matching glossary terms available." on the glossary page. I already inputted some terms, why won't they display?


HELP!!! gre:
Reply With Quote
  #217  
Old 01-13-2003, 02:43 AM
drownedspirit drownedspirit is offline
 
Join Date: Oct 2002
Posts: 29
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

i get this error too..

Database error in vBulletin Control Panel 2.2.7:

Invalid SQL: INSERT INTO glossary (text, description) VALUES ('Who's Online', 'A page displaying the list of users currently on the forums, as well as their current action/location.')
mysql error: You have an error in your SQL syntax near 's Online', 'A page displaying the list of users currently on the forums, as well' at line 1

mysql error number: 1064

what do i do? please please HELP
Reply With Quote
  #218  
Old 01-17-2003, 03:41 AM
Geographic Geographic is offline
 
Join Date: Jan 2003
Posts: 6
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It appears as though if the definition of the Glossary term is too long, the alert box will not pop when clicking the random term.

Any fix for dat?

Nice Hack BTW! Good Work.

~Geo~
Reply With Quote
  #219  
Old 01-17-2003, 03:42 AM
Geographic Geographic is offline
 
Join Date: Jan 2003
Posts: 6
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
The third planet from the sun, having a sidereal period of revolution about the sun of 365.26 days at a mean distance of approximately 149 million kilometers (92.96 million miles), an axial rotation period of 23 hours 56.07 minutes, an average radius of 6,378 kilometers (3,963 miles), and a mass of approximately 5.974 ? 1024 kilograms (1.317 ? 1025 pounds).
Oh yeah, with this definition.
Reply With Quote
  #220  
Old 01-20-2003, 11:16 AM
drownedspirit drownedspirit is offline
 
Join Date: Oct 2002
Posts: 29
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by drownedspirit
i get this error too..

Database error in vBulletin Control Panel 2.2.7:

Invalid SQL: INSERT INTO glossary (text, description) VALUES ('Who's Online', 'A page displaying the list of users currently on the forums, as well as their current action/location.')
mysql error: You have an error in your SQL syntax near 's Online', 'A page displaying the list of users currently on the forums, as well' at line 1

mysql error number: 1064

what do i do? please please HELP
I found out why it gives me error.. I tried Who Is Online and it added. The table doesn't accept ' in Who's.

Btw, I still get the "Sorry, there are no matching glossary terms available." HELP!
Reply With Quote
  #221  
Old 02-08-2003, 06:52 PM
.:.NetStartz.:. .:.NetStartz.:. is offline
 
Join Date: Jan 2003
Posts: 39
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Could you upload a new .zip to the first page with all the changes and corrections. I love this idea and would love to install it, but going through all the post to see the fixes/updates is time consuming.
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 09:12 PM.


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.04785 seconds
  • Memory Usage 2,320KB
  • 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
  • (11)bbcode_code
  • (2)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
  • (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