vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   Modification Requests/Questions (Unpaid) (https://vborg.vbsupport.ru/forumdisplay.php?f=112)
-   -   Need some help finishing a hack. (https://vborg.vbsupport.ru/showthread.php?t=27552)

JJR512 09-07-2001 06:50 AM

What I'm working on is changing the Forum Rules, in some places, from the actual list of rules, to a link that will pop up a window with the rules there. Sort of like the Get More link in the smilies box.

The specific problem I'm having is getting the forumid through the system, so it will be able to figure out just what exactly the rules are.

Here's what I have so far.

The link I am using to open the popup is this:
PHP Code:

<a href="javascript:showforumrules(420,512,'$session[sessionhash]')">Forum Rules</a

That operates a custom function that I've put in the vbcode.js file:
PHP Code:

function showforumrules(x,y,sessionhash) {
                
window.open("misc.php?action=showforumrules&forumid=$forum[forumid]&s="+sessionhash"smilies""toolbar=no,scrollbars=yes,resizable=yes,width="+x+",height="+y);


Which in turns works with some custom code I've put in the misc.php file:
PHP Code:

if ($action=="showforumrules") {
  
$templatesused ""// Only one template used so load it when called
  
include("./global.php");
  
$forumid=verifyid("forum",$forumid);
  
$foruminfo=getforuminfo($forumid);
  
$bbcodeon=iif($foruminfo[allowbbcode],$ontext,$offtext);
  
$imgcodeon=iif($foruminfo[allowimages],$ontext,$offtext);
  
$htmlcodeon=iif($foruminfo[allowhtml],$ontext,$offtext);
  
$smilieson=iif($foruminfo[allowsmilies],$ontext,$offtext);
  eval(
"dooutput(\"".gettemplate("showforumrules")."\");");


This uses a custom template I created, showforumrules: (I've removed most of the formatting for simplicity)
PHP Code:

<b>Forum Rules</b><br>
You <b>may $rules[postnew]</bpost new threads.<br>
You <b>may $rules[postreply]</bpost replies.<br>
You <b>may $rules[attachment]</bpost attachments.<br>
You <b>may $rules[edit]</bedit your posts.<br>
<
br>
<
b>Posting Rules</b><br>
HTML code is <b>$htmlcodeon</b>.<br>
<
a href="misc.php?s=$session[sessionhash]&action=showsmilies">Smilies</aare <b>$smilieson</b>.<br>
<
a href="misc.php?s=$session[sessionhash]&action=bbcode">vB code</ais <b>$bbcodeon</b>.<br>
[
IMGcode is <b>$imgcodeon</b>. 

I also had to add the following to the forumdisplay template, or else the link would not work:
Code:

<script language="Javascript" src="vbcode.js"></script>
The specific problem I am having is with the bit that I've put in the vbcode.js file. I've tried to use &forumid=$forum[forumid] to pass the forumid along to the code I put in misc.php, but it's not working. Now if I take out &forumid=$forum[forumid] and just hardcode a forumid number, like &forumid=1, then it works fine, but that's not the best way. It should be able to get the forumid through the variable, but it isn't working.

Can someone please help me with this?

Scott MacVicar 09-07-2001 07:28 AM

I'm pretty sure the forum array is not passed in to the vbcode.js file

just pass in the forum id the way you pass in the width, height and session hash. That should work.

JJR512 09-07-2001 07:36 AM

Ahh... could you please be a bit more specific on how to do that? You see, I don't actually know what I'm doing!

JJR512 09-07-2001 07:41 AM

I tried making the link like this:
PHP Code:

<a href="javascript:showforumrules(420,512,'$session[sessionhash]','$forum[forumid]')">Forum Rules</a

But I have two problems with that. The actual URL that the link becomes is now like javascript:showforumrules(420,512,'',''), rather than javascript:showforumrules(420,512,'') as it used to be. In other words, the forumid number is not showing up in the link. So that's the first thing to solve. The next thing I'm wondering about is will the code in the vbcode.js file know what to do with that extra info, or do I need to add to that part, too, and if so, how?

(Note: Of course the real links do not have the space in between java and script.)

Scott MacVicar 09-07-2001 07:54 AM

PHP Code:

<a href="javascript:showforumrules(420,512,'$session[sessionhash]','$foruminfo[forumid]')">Forum Rules</a

Code:

function showforumrules(x,y,sessionhash,forumid) {
                window.open("misc.php?action=showforumrules&forumid="+forumid+"&s="+sessionhash, "smilies", "toolbar=no,scrollbars=yes,resizable=yes,width="+x+",height="+y);
}

I ain't no javascript expert but that should hopefully work

JJR512 09-07-2001 08:11 AM

Well, the forumid number now shows up in the link, but when I click on it, it just says "Error on page" (at the bottom of IE).

Scott MacVicar 09-07-2001 08:30 AM

I'm right, i ain't not javascript expert =D

Code:

function showforumrules(x,y,sessionhash,forumid) {
                window.open("misc.php?action=showforumrules&forumid="+forumid+"&s="+sessionhash, "smilies", "toolbar=no,scrollbars=yes,resizable=yes,width="+x+",height="+y);
}

there is a problem in there, hopefully someone can helpyou with the function.

JJR512 09-07-2001 06:15 PM

Can someone please help?

ToraTora! 09-07-2001 06:24 PM

did you add the java in the styles area, such as in the header area>? Most of the java has to go in that area, or you get a error everytime. Just rite above the <meta blah blah blah>
info.

ToraTora! 09-07-2001 06:33 PM

basically, this part would go into your styles area...above the meta tag stuff...

<!-- Pop Up-->
<script language=javascript>
<!--
function showforumrules(newin) {
flyout=window.open(newin,"flyout","resizeable=no,s crollbars=no,toolbar=no,width= 400,height=360,top=50,left=190")
}
// -->

</script>

than, the next part would be something like this, added where you would want a form button basically.....(can use image to...not just a button, so it could go in your main menu of your forums)

<form>
<input type="button" name="Submit" value="Rules" onclick="showforumrules('misc.php?s=$session[sessionhash]&action=showforumrules&forumid=$forumid')">
</form>

Im thinking your missing something though, because getinfo uses a $userinfo[userid] at the end of the script, and $forumid by itself doesnt look rite....


All times are GMT. The time now is 11:17 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.01139 seconds
  • Memory Usage 1,770KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (3)bbcode_code_printable
  • (6)bbcode_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (1)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.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
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete