var xmlHttp
var ajaxaction
var pref
var global_transitions=[ //array of IE transition strings
   "progid:DXImageTransform.Microsoft.Barn()",
   "progid:DXImageTransform.Microsoft.Blinds()",
   "progid:DXImageTransform.Microsoft.CheckerBoard()",
   "progid:DXImageTransform.Microsoft.Fade()",
   "progid:DXImageTransform.Microsoft.GradientWipe()",
   "progid:DXImageTransform.Microsoft.Inset()",
   "progid:DXImageTransform.Microsoft.Iris()",
   "progid:DXImageTransform.Microsoft.Pixelate()",
   "progid:DXImageTransform.Microsoft.RadialWipe()",
   "progid:DXImageTransform.Microsoft.RandomBars()",
   "progid:DXImageTransform.Microsoft.RandomDissolve()",
   "progid:DXImageTransform.Microsoft.Slide()",
   "progid:DXImageTransform.Microsoft.Spiral()",
   "progid:DXImageTransform.Microsoft.Stretch()",
   "progid:DXImageTransform.Microsoft.Strips()",
   "progid:DXImageTransform.Microsoft.Wheel()",
   "progid:DXImageTransform.Microsoft.Zigzag()"
]

function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
return xmlHttp;
}

function flashyslideshow(setting){
   this.wrapperid=setting.wrapperid
   this.imagearray=setting.imagearray
   this.pause=setting.pause
   this.transduration=setting.transduration/1000 //convert from miliseconds to seconds unit to pass into el.filters.play()
   this.currentimg=0
   var preloadimages=[] //temp array to preload images
   for (var i=0; i<this.imagearray.length; i++){
      preloadimages[i]=new Image()
      preloadimages[i].src=this.imagearray[i][0]
   }
   document.write('<div id="'+this.wrapperid+'" class="'+setting.wrapperclass+'" style="border-style:none">'+this.getSlideHTML(this.currentimg)+'</div>')
   var effectindex=Math.floor(Math.random()*global_transitions.length) //randomly pick a transition to utilize
   var wrapperdiv=document.getElementById(this.wrapperid)
   if (wrapperdiv.filters){ //if the filters[] collection is defined on element (only in IE)
      wrapperdiv.style.filter=global_transitions[effectindex] //define transition on element
      this.pause+=setting.transduration //add transition time to pause
   }
   this.filtersupport=(wrapperdiv.filters && wrapperdiv.filters.length>0)? true : false //test if element supports transitions and has one defined
   var slideshow=this
   setInterval(function(){slideshow.rotate()}, this.pause)
}

flashyslideshow.prototype.getSlideHTML=function(index){
   var slideHTML=(this.imagearray[index][1])? '<a href="'+this.imagearray[index][1]+'" target="'+this.imagearray[index][1]+'">\n' : '' //hyperlink slide?
   slideHTML+='<img src="'+this.imagearray[index][0]+'" / style="float:right; padding-left: 2px; margin-top: 15px; width:250px">'
   slideHTML+=(this.imagearray[index][1])? '</a><br />' : '<br />'
   slideHTML+=(this.imagearray[index][3])? this.imagearray[index][3] : '' //text description?
   return slideHTML //return HTML for the slide at the specified index
}

flashyslideshow.prototype.rotate=function(){
   var wrapperdiv=document.getElementById(this.wrapperid)
   this.currentimg=(this.currentimg<this.imagearray.length-1)? this.currentimg+1 : 0
   if (this.filtersupport)
      wrapperdiv.filters[0].apply()
   wrapperdiv.innerHTML=this.getSlideHTML(this.currentimg)
   if (this.filtersupport)
      wrapperdiv.filters[0].play(this.transduration)  
}

function rotate(maxb,divid)
{
document.getElementById(divid+"0").style.display = "block";
   var cTicks = 5 //parseInt(e.innerHTML);
   var bdiv = 0

   var timer = setInterval(function()
   {
      if( cTicks )
      {
         cTicks = --cTicks;
      }
      else
      {
      document.getElementById(divid+bdiv).style.display = "none";
       if (bdiv == maxb){
         bdiv = -1
         }
       bdiv = ++bdiv;
       document.getElementById(divid+bdiv).style.display = "block";
       cTicks = 5
      }
   }, 200);
}

function rotate2(maxb,divid)
{
document.getElementById(divid+"0").style.display = "block";
   var cTicks = 5 //parseInt(e.innerHTML);
   var bdiv = 0

   var timer = setInterval(function()
   {
      if( cTicks )
      {
         cTicks = --cTicks;
      }
      else
      {
      document.getElementById(divid+bdiv).style.display = "none";
       if (bdiv == maxb){
         bdiv = -1
         }
       bdiv = ++bdiv;
       document.getElementById(divid+bdiv).style.display = "block";
       cTicks = 5
      }
   }, 200);
}

function show(t, id) {
var tags = document.getElementsByTagName(t);
for (var i = 0; i < tags.length; i++)
{
if (tags[i].id == 'pp' + id || tags[i].id == 'pc' + id ||  tags[i].id == 'ps' + id ||  tags[i].id == 'pi' + id)
{ tags[i].style.display = 'BLOCK';}
else if (tags[i].id.substr(0,2) == "pp" || tags[i].id.substr(0,2) == "pc" || tags[i].id.substr(0,2) == "ps" || tags[i].id.substr(0,2) == "pi" )
{tags[i].style.display= 'none' ;}
}}

function tabshow(t, id) {
var tags = document.getElementsByTagName(t);
for (var i = 0; i < tags.length; i++)
{
if (tags[i].id == 'TAB' + id)
{ tags[i].style.display = 'BLOCK';}
else if (tags[i].id.substr(0,3) == "TAB")
{tags[i].style.display= 'none' ;}
}}


function showmenu(menuname) {
var tags = document.getElementsByTagName('DIV');
var el = document.getElementById(menuname);


if (menuname != 'mbnone')
   {
    var elstat = document.getElementById(menuname).style.visibility;

   if ( elstat != 'hidden' ) {
      el.style.visibility = 'hidden';
      }
      else {
         el.style.visibility = 'visible';
      }
   }
for (var i = 0; i < tags.length; i++)
{
if ((tags[i].id.substr(0,2) == "mb") && (tags[i].id != menuname))
{tags[i].style.visibility= "hidden" ;}
}


}

function tradfunc(action, ref, packqty, qty)
{
var countloop = 0;
var exitloop = 0
ajaxaction = action;
pref = ref;
pqty = packqty;
n = qty;

if (pqty == 0)
   { pqty = 1 }

if (ajaxaction == "ordadd" || ajaxaction == "qtyedt")
{

   if (parseInt(n/pqty) == n/pqty)
      {
      exitloop = 1
      }
   else
   {
      n = parseInt(n/pqty)*pqty
      if (n == 0)
         {n = pqty
        // alert(n+":"+pqty);
         }

   }
}
else
{
   exitloop = 1
}

if (exitloop == 1)
   {
   n = parseInt(n/pqty)*pqty
   if (n==0)
      {n==pqty}
   //alert("Quantity has been set to a Pack Size multiple of:"+n);

   }
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }

if (n == 0)
var url="";
url="trade_func.asp?action="+ajaxaction+"&ref="+ref+"&pqty="+pqty+"&qty="+n;

xmlHttp.onreadystatechange=tradefuncaction;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function tradefuncaction()
{ if (xmlHttp.readyState==4)
   {divtoupdate = ajaxaction.substr(0,3) + pref;
//   alert(divtoupdate);
   document.getElementById(divtoupdate).innerHTML=xmlHttp.responseText;}
}

function filterfav(fForm)
{
var filtertext   = fForm.filtertext.value;
var filterselect = fForm.filterselect.value;
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }
var url="trade_func.asp";
url=url+"?action=filterfav&text="+filtertext+"&select="+filterselect;

//alert(url);
xmlHttp.onreadystatechange=tradebodyupdate;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function sendorder()
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }
var url="trade_func.asp";
url=url+"?action=sendorder";

xmlHttp.onreadystatechange=tradebodyupdate;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function submitorder(Form)
{
var orderno   = Form.custon.value;
var deldate   = Form.deldate.value;
var clearbasket = Form.clearbasket.checked;

xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }
var url="trade_func.asp";
url=url+"?action=submitorder&custorderno="+orderno+"&deldate="+deldate+"&clearbasket="+clearbasket;

xmlHttp.onreadystatechange=tradebodyupdate;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);

}

function filterord(fForm)
{
var filtertext   = fForm.filtertext.value;
var filterselect = fForm.filterselect.value;
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }
var url="trade_func.asp";
url=url+"?action=filterord&text="+filtertext+"&select="+filterselect;

//alert(url);
xmlHttp.onreadystatechange=tradebodyupdate;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function recentorderlist(orderno)
{


xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }
var url="trade_func.asp";
url=url+"?action=recentorder&orderno="+orderno;

xmlHttp.onreadystatechange=tradebodyupdate;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);

}

function tradebodyupdate ()
{ if (xmlHttp.readyState==4)
   {document.getElementById('tradebody').innerHTML=xmlHttp.responseText;}
}

function omailme(pid)
{
var prodid = pid;
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }
var url="trade_func.asp";
url=url+"?action=omailme&ref="+prodid;

xmlHttp.onreadystatechange=tradebodyupdate;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function fmailme(pid)
{
var prodid = pid;
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }
var url="trade_func.asp";
url=url+"?action=fmailme&ref="+prodid;

xmlHttp.onreadystatechange=tradebodyupdate;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function fieldfocus(focusfield)
{
var mytext = document.getElementById(focusfield);

mytext.focus();
mytext.value = "";
mytext.select();
}

function fieldfocusnc(focusfield)
{
var mytext = document.getElementById(focusfield);

mytext.focus();
mytext.select();
}


function changeColor(id, ncolor) {
   document.getElementById(id).style.color = ncolor;
}

function editqty (pref, qty, pack)
{
   alert(pref+"/"+qty+"/"+pack);
}


function editpost(myFieldName, myFieldValue){

//   alert(myFieldName+":"+myFieldValue);
 var ajaxRequest;  // The variable that makes Ajax possible!

   try{
      // Opera 8.0+, Firefox, Safari
      ajaxRequest = new XMLHttpRequest();
   } catch (e){
      // Internet Explorer Browsers
      try{
         ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
      } catch (e) {
         try{
            ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
         } catch (e){
            // Something went wrong
            alert("Your browser broke!");
            return false;
         }
      }
   }
   // Create a function that will receive data sent from the server
   ajaxRequest.onreadystatechange = function(){
      if(ajaxRequest.readyState == 4){
         document.getElementById('updated').innerHTML=ajaxRequest.responseText;
      }
   }
   ajaxRequest.open("GET", "editpost.asp?field="+myFieldName+"&value="+myFieldValue, true);
   ajaxRequest.send(null);


}


var xmlHttp
var updatefield

function datashow()
{ if (xmlHttp.readyState==4)
   {divtoupdate = updatefield;
   document.getElementById(divtoupdate).innerHTML=xmlHttp.responseText;}
}

function datafile(str,ufield,scriptname)
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {  alert ("Your browser does not support AJAX!");
  return;  }
var urlbase=scriptname;
updatefield=ufield;
field=ufield;

url=urlbase+"?qsprod="+str+"&field="+field;
xmlHttp.onreadystatechange=datashow;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function datashowappend()
{ if (xmlHttp.readyState==4)
   {divtoupdate = updatefield;
   document.getElementById(divtoupdate).innerHTML +=xmlHttp.responseText;}
}

function datafileappend(str,ufield,scriptname)
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {  alert ("Your browser does not support AJAX!");
  return;  }
var urlbase=scriptname;
updatefield=ufield;
field=ufield;

url=urlbase+"?qsprod="+str+"&field="+field;
xmlHttp.onreadystatechange=datashowappend;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function clearbasket()
{
   xmlHttp=GetXmlHttpObject();
   if (xmlHttp==null)
     {
     alert ("Your browser does not support AJAX!");
     return;
     }

var r=confirm('Clear the Basket?');

if (r==true)
{

   var url="trade_func.asp";
   url=url+"?action=clearbasket";

   xmlHttp.onreadystatechange=tradebodyupdate;
   xmlHttp.open("GET",url,true);
   xmlHttp.send(null);
}
}




