﻿/*********************************************************
		This Free Script was downloaded at			
				Free-php-Scripts.net	
	This script is produced under the GPL license		
		You can do or modify this script as you like.			
Note 1: Administrator copyright notice CAN NOT be removed					
Note 2: User front Powered by Notices can be removed ONLY
if you change the site design/look so it won't reflect
				www.HotFile.us looks
*********************************************************/


// xp_progressbar
// Copyright 2004 Brian Gosselin of ScriptAsylum.com
//
// v1.0 - Initial release
// v1.1 - Added ability to pause the scrolling action (requires you to assign
//        the bar to a unique arbitrary variable).
//      - Added ability to specify an action to perform after a x amount of
//      - bar scrolls. This requires two added arguments.
// v1.2 - Added ability to hide/show each bar (requires you to assign the bar
//        to a unique arbitrary variable).

// var xyz = createBar(
// total_width,
// total_height,
// background_color,
// border_width,
// border_color,
// block_color,
// scroll_speed,
// block_count,
// scroll_count,
// action_to_perform_after_scrolled_n_times
// )

var w3c=(document.getElementById)?true:false;
var ie=(document.all)?true:false;
var N=-1;

function createBar(w,h,bgc,brdW,brdC,blkC,speed,blocks,count,action)
{
  if(ie||w3c)
  {
    var t='<div id="_xpbar'+(++N)+'" style="visibility:visible; position:relative; overflow:hidden; width:'+w+'px; height:'+h+'px; background-color:'+bgc+'; border-color:'+brdC+'; border-width:'+brdW+'px; border-style:solid; font-size:1px;">';
    t+='<span id="blocks'+N+'" style="left:-'+(h*2+1)+'px; position:absolute; font-size:1px">';
    for(i=0;i<blocks;i++)
    {
      t+='<span style="background-color:'+blkC+'; left:-'+((h*i)+i)+'px; font-size:1px; position:absolute; width:'+h+'px; height:'+h+'px; '
      t+=(ie)?'filter:alpha(opacity='+(100-i*(100/blocks))+')':'-Moz-opacity:'+((100-i*(100/blocks))/100);
      t+='"></span>';
    }
    t+='</span></div>';
    document.write(t);
    var bA=(ie)?document.all['blocks'+N]:document.getElementById('blocks'+N);
    bA.bar=(ie)?document.all['_xpbar'+N]:document.getElementById('_xpbar'+N);
    bA.blocks=blocks;
    bA.N=N;
    bA.w=w;
    bA.h=h;
    bA.speed=speed;
    bA.ctr=0;
    bA.count=count;
    bA.action=action;
    bA.togglePause=togglePause;
    bA.showBar=function()
    {
      this.bar.style.visibility="visible";
    }
    bA.hideBar=function()
    {
      this.bar.style.visibility="hidden";
    }
    bA.tid=setInterval('startBar('+N+')',speed);
    return bA;
  }
}

function startBar(bn)
{
  var t=(ie)?document.all['blocks'+bn]:document.getElementById('blocks'+bn);
  if(parseInt(t.style.left)+t.h+1-(t.blocks*t.h+t.blocks)>t.w)
  {
    t.style.left=-(t.h*2+1)+'px';
    t.ctr++;
    if(t.ctr>=t.count)
    {
      eval(t.action);
      t.ctr=0;
    }
  }
  else
    t.style.left=(parseInt(t.style.left)+t.h+1)+'px';
}

function togglePause()
{
  if(this.tid==0)
  {
    this.tid=setInterval('startBar('+this.N+')',this.speed);
  }
  else
  {
    clearInterval(this.tid);
    this.tid=0;
  }
}

function togglePause()
{
  if(this.tid==0)
  {
    this.tid=setInterval('startBar('+this.N+')',this.speed);
  }
  else
  {
    clearInterval(this.tid);
    this.tid=0;
  }
}