MyBB Community Forums

Full Version: Include a script into the forums
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Well, I don't know if this topic is right posted here... but anyway I need to make a little question... I want to add a snow script to my forums but when I modify the templates it doesn't work... so I need help to put the script in the correct piece of code...

The script is the following:

Quote:<SCRIPT type="text/javascript">
/*
Snow Fall 1 - no images - Java Script
Visit http://rainbow.arch.scriptmania.com/scripts/
for this script and many more
*/

// Set the number of snowflakes (more than 30 - 40 not recommended)
var snowmax=35

// Set the colors for the snow. Add as many colors as you like
var snowcolor=new Array("#AAAACC","#DDDDFF","#CCCCDD","#F3F3F3","#F0FFFF")

// Set the fonts, that create the snowflakes. Add as many fonts as you like
var snowtype=new Array("Arial Black","Arial Narrow","Times","Comic Sans MS")

// Set the letter that creates your snowflake (recommended: * )
var snowletter="*"

// Set the speed of sinking (recommended values range from 0.3 to 2)
var sinkspeed=0.9

// Set the maximum-size of your snowflakes
var snowmaxsize=22

// Set the minimal-size of your snowflakes
var snowminsize=8

// Set the snowing-zone
// Set 1 for all-over-snowing, set 2 for left-side-snowing
// Set 3 for center-snowing, set 4 for right-side-snowing
var snowingzone=1

/*
// * NO CONFIGURATION BELOW HERE *
*/

// Do not edit below this line
var snow=new Array()
var marginbottom
var marginright
var timer
var i_snow=0
var x_mv=new Array();
var crds=new Array();
var lftrght=new Array();
var browserinfos=navigator.userAgent
var ie5=document.all&&document.getElementById&&!browserinfos.match(/Opera/)
var ns6=document.getElementById&&!document.all
var opera=browserinfos.match(/Opera/)
var browserok=ie5||ns6||opera

function randommaker(range) {
rand=Math.floor(range*Math.random())
return rand
}

function initsnow() {
if (ie5 || opera) {
marginbottom = document.body.clientHeight
marginright = document.body.clientWidth
}
else if (ns6) {
marginbottom = window.innerHeight
marginright = window.innerWidth
}
var snowsizerange=snowmaxsize-snowminsize
for (i=0;i<=snowmax;i++) {
crds[i] = 0;
lftrght[i] = Math.random()*15;
x_mv[i] = 0.03 + Math.random()/10;
snow[i]=document.getElementById("s"+i)
snow[i].style.fontFamily=snowtype[randommaker(snowtype.length)]
snow[i].size=randommaker(snowsizerange)+snowminsize
snow[i].style.fontSize=snow[i].size
snow[i].style.color=snowcolor[randommaker(snowcolor.length)]
snow[i].sink=sinkspeed*snow[i].size/5
if (snowingzone==1) {snow[i].posx=randommaker(marginright-snow[i].size)}
if (snowingzone==2) {snow[i].posx=randommaker(marginright/2-snow[i].size)}
if (snowingzone==3) {snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/4}
if (snowingzone==4) {snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/2}
snow[i].posy=randommaker(2*marginbottom-marginbottom-2*snow[i].size)
snow[i].style.left=snow[i].posx
snow[i].style.top=snow[i].posy
}
movesnow()
}

function movesnow() {
for (i=0;i<=snowmax;i++) {
crds[i] += x_mv[i];
snow[i].posy+=snow[i].sink
snow[i].style.left=snow[i].posx+lftrght[i]*Math.sin(crds[i]);
snow[i].style.top=snow[i].posy

if (snow[i].posy>=marginbottom-2*snow[i].size || parseInt(snow[i].style.left)>(marginright-3*lftrght[i])){
if (snowingzone==1) {snow[i].posx=randommaker(marginright-snow[i].size)}
if (snowingzone==2) {snow[i].posx=randommaker(marginright/2-snow[i].size)}
if (snowingzone==3) {snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/4}
if (snowingzone==4) {snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/2}
snow[i].posy=0
}
}
var timer=setTimeout("movesnow()",50)
}

for (i=0;i<=snowmax;i++) {
document.write("<span id='s"+i+"' style='position:absolute;top:-"+snowmaxsize+"'>"+snowletter+"</span>")
}
if (browserok) {
window.onload=initsnow
}
</SCRIPT>

Where should it go? Thanks in advance! Smile
Ooo thats what im using on my site at the moment. Big Grin I'd say add it to the header_include template.
No, there is a better way to do it.
If you don't have any html tool (like dreamweaver) just use notepad.
You can create a new javascript file. Just add all the code you just posted without the <SCRIPT type="text/javascript"> at the beginning and the </SCRIPT> at the end.
Then save the file as snow.js and upload it to your forum/jscripts directory.
Open the template header_include and find
<script type="text/javascript" src="jscripts/general.js"></script>
After it, just add
<script type="text/javascript" src="jscripts/snow.js"></script>

This way, you don't have to copy so much code in the template.
read this post Smile I think they made it a plug-in Smile

http://community.mybboard.net/showthread.php?tid=5046
Smethead Wrote:No, there is a better way to do it.
If you don't have any html tool (like dreamweaver) just use notepad.
You can create a new javascript file. Just add all the code you just posted without the <SCRIPT type="text/javascript"> at the beginning and the </SCRIPT> at the end.
Then save the file as snow.js and upload it to your forum/jscripts directory.
Open the template header_include and find
<script type="text/javascript" src="jscripts/general.js"></script>
After it, just add
<script type="text/javascript" src="jscripts/snow.js"></script>

This way, you don't have to copy so much code in the template.

It doesn't work... I don't know the reason but when I put the script all the "*" appears in the left side of the page (static)... any solution to this problem? Sad

And regarding the plugin it's nice but I don't want the snow with images (takes more time to load the forums)... thanks in advance! Smile
btw your code isn't compatable with FF
nitemare Wrote:btw your code isn't compatable with FF

If you put the code between the <body> and </body> tags form a HTML document the script works... but if you put the code into the forums template it doesn't work with Firefox, but it works with IE...

Anyone have a code, or can modify the previous code to use snow effect without images in Firefox and IE? Thanks in advance! Smile
I based the snow effect plugin on that JavaScript you posted here. In works in Fx 1.0+ and IE 6+ (untested on other browsers). Since it outputs <div> tags, it should be placed between <body> and </body>; my plugin adds it right before </body>
Matx Wrote:
Smethead Wrote:No, there is a better way to do it.
If you don't have any html tool (like dreamweaver) just use notepad.
You can create a new javascript file. Just add all the code you just posted without the <SCRIPT type="text/javascript"> at the beginning and the </SCRIPT> at the end.
Then save the file as snow.js and upload it to your forum/jscripts directory.
Open the template header_include and find
<script type="text/javascript" src="jscripts/general.js"></script>
After it, just add
<script type="text/javascript" src="jscripts/snow.js"></script>

This way, you don't have to copy so much code in the template.

It doesn't work... I don't know the reason but when I put the script all the "*" appears in the left side of the page (static)... any solution to this problem? Sad

And regarding the plugin it's nice but I don't want the snow with images (takes more time to load the forums)... thanks in advance! Smile
Oh, sorry. You need to add
<script type="text/javascript" src="jscripts/snow.js"></script>
in the header template, not in headerinclude.