The Arcive of vBulletin Modifications Site. |
|
Compose External Javascript Details »»
|
|||||||||||||||||||||||||
vB Compose External v. 1.0.3 (Updated)
This hack provides an easy way to generate JS-Code for the Javascript syndication system on vB 3. It has been tested with VB 3.0.0 RC 1 and higher. Features:
Insert the phrases using the XML-files. There are phrases for some languages. You can of course translate them to other languages using the phrase-system. If you do so, please send me the XML-files for these translations. I will add them to this ZIP. Right now there are:
Step 2: Upload the file composeexternal.php in the root of your forum. Upload the files in the folder /images/composeexternal/ on the server. Step 3: Add a new template with the name "composeexternal" and add the content of composeexternal_template.txt (in this zip) to it. Step 4: Search for the following code on template forumdisplay: Code:
<div><img class="inlineimg" src="$stylevar[imgdir_button]/subscribe.gif" alt="$vbphrase[view_parent_forum]" vspace="1" /> <a href="forumdisplay.php?$session[sessionurl]f=$foruminfo[parentid]">$vbphrase[view_parent_forum]</a></div> </div> </td> <!-- / forum tools --> Code:
<div><img class="inlineimg" src="$stylevar[imgdir_button]/subscribe.gif" alt="$vbphrase[view_parent_forum]" vspace="1" /> <a href="forumdisplay.php?$session[sessionurl]f=$foruminfo[parentid]">$vbphrase[view_parent_forum]</a></div> </div> <div><img class="inlineimg" src="$stylevar[imgdir_button]/subscribe.gif" alt="$vbphrase[composeexternal_categorystrip]" vspace="1" /> <a href="composeexternal.php?$session[sessionurl]do=composecode&f=$foruminfo[forumid]">$vbphrase[composeexternal_categorystrip]</a></div> </td> <!-- / forum tools --> Search for: Code:
<if condition="$show['adminoptions']"> Code:
<tr><td class="vbmenu_option"><a href="composeexternal.php?$session[sessionurl]do=composecode&f=$foruminfo[forumid]">$vbphrase[composeexternal_categorystrip]</a></td></tr> Step 5: Search for the following code on template navbar: Code:
<if condition="$show['wollink']"><tr><td class="vbmenu_option"><a href="online.php?$session[sessionurl]">$vbphrase[whos_online]</a></td></tr></if> Add below: Code:
<tr><td class="vbmenu_option"><a href="composeexternal.php?$session[sessionurl]">$vbphrase[composeexternal_categorystrip]</a></td></tr> Credits go to Ypsfanpage.de - a user of our forum. He coded the initial php-file. I ported it to the VB-system and created the php-file and the template. See the screen-shots below, how it works, or visit our testsite. Version-History v. 1.0.0 - Initial release v. 1.0.1 - Added character-limitation v. 1.0.2 - Got rid of a small bug, occuring in MSIE, happened when there where too less threads, genereal optimization of the code v. 1.0.3 - Added three pre-made templates v. 1.0.4 - Added support for forumdisplay-template and navbar-template Please click on install, when you choose to use this hack ![]() Show Your Support
|
|||||||||||||||||||||||||
| Comments |
|
#2
|
||||
|
||||
|
This is a great idea, might use it on my site when I get to vB3.
|
|
#3
|
|||
|
|||
|
Very nice.. Do you think you can add some type of option to limit the amount of characters to show.. something like:
<script type="text/javascript"src="http://www.cogumelosmagicos.org/forum/external.php?forumids=30,31,32,38,40&type=js"> </script> <script type="text/javascript"> <!-- for (i = 0; i < 1; i++) var titleAsString = new String(threads[i].title); if (titleAsString.length > 27) { var newTitle = titleAsString.substring(0,27); document.write("Tópico: <a href=\"http://www.cogumelosmagicos.org/forum/showthread.php?threadid="+threads[i].threadid+"\">"+newTitle + "..."+"</a><br />Autor: <a href=\"http://www.cogumelosmagicos.org/forum/member.php?u="+threads[i].poster+"\">"+threads[i].poster+"</a> - "+threads[i].threadtime+"<br />"); } else { document.write("Tópico: <a href=\"http://www.cogumelosmagicos.org/forum/showthread.php?threadid="+threads[i].threadid+"\">"+titleAsString+"</a><br />Autor: <a href=\"http://www.cogumelosmagicos.org/forum/member.php?u="+threads[i].poster+"\">"+threads[i].poster+"</a> - "+threads[i].threadtime+"<br />"); } //--> </script> Thank You |
|
#4
|
||||
|
||||
|
I am incorparating that at this moment, will soon post the new file
Plus, I already have some new ideas. Will post them also soon
|
|
#5
|
||||
|
||||
|
Ok, here we go, just updated the file. The old version - if someone doesn't need the character-limitation - is still available for download.
Two more phrases have been updated with the new release: - composeexternal_charlimit - composeexternal_charlimitdescription |
|
#6
|
|||
|
|||
|
Got it.. It works fine.. Thanks a lot.. I hope you'll add more feature to it on future releases... features such as pulling polls, etc..
Also a link to the poster would be nice.. [high]* gldtn clicks install [/high]
|
|
#7
|
||||
|
||||
|
Quote:
![]() And if by then it is foreseeable, that Jelsoft is not going to extend the external.php, we will look into that. I would love to see some more things to appear there too. Polls, postings, poster. They are all not covered right now. |
|
#8
|
|||
|
|||
|
Awesome, I'm looking forward to this, If my scripting knowledge was any good I would've be willing to help you guys out.
Thanks once again for this great hack
|
|
#9
|
||||
|
||||
|
nice script you got there
![]() seems what ever is generated when used on a web site generates a javascript error in IE 6.0.2800.1106 Code:
Error: 'threads[...].title' null or not an object Code: 0 |
|
#10
|
||||
|
||||
|
okay so that error is due to having less than 15 threads in the forum being called
![]() i got it working with this code thanks to your generator saved the below code in a file named last15.php Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>Example code</TITLE>
</HEAD>
<BODY>
<script type="text/javascript" src="http://forumdomain.com/external.php?forumids=<?php echo($fid); ?>&type=js"></script>
<b>Last 15 threads :</b>
<ul>
<script type="text/javascript">
<!--
for (i = 0; i < 15; i++)
{
if (threads[i].title.length > 60)
{ threads[i].title = threads[i].title.substring(0,60) + '...'; }
document.writeln("<li><a href=\"http://forumdomain.com/showthread.php?t=" + threads[i].threadid + "\">" + threads[i].title + "</a> (" + threads[i].poster + " : " + threads[i].threaddate + " : " + threads[i].threadtime + ") </li>");
}
//-->
</script>
</ul>
</BODY>
</HTML>
where fid is the forumid i want to call |
![]() |
|
|
| X vBulletin 3.8.12 by vBS Debug Information | |
|---|---|
|
|
More Information |
|
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|