﻿// 
function getElement(id) {
    if(document.getElementById)
        obj = document.getElementById(id);
    else if(document.all)
        obj = document.all[id];
    else if(document.layers)
        obj = document.layers[id];
        
    return obj;
}

function toggleDIV(id){
    var O=getElement(id);
    O.className=(O.className=='slide-show')?'slide-hide':'slide-show';
    return false;
}

function toggleDIV2(sender,id){
    var chk = getElement(sender);
    var div = getElement(id);
    if (chk.checked && (div.className=='slide-hide')) {
        div.className='slide-show';
    } else {
        div.className='slide-hide';
    }
    return false;
}

function expand(id){
    var O=getElement(id);
    O.innerHTML=(O.innerHTML=='+')?'-':'+';
    return false;
}

// Querystring
function queryst(key) {
    i = window.location.search.substring(1);
    j = i.split("&");
    for (x=0;x<j.length;x++) {
        y = j[x].split("=");
        if (y[0] == key) {return y[1];}
    }
}

// Misc functions
function ToBinary(dec) {
    var bits = [];
    var dividend = dec;
    var remainder = 0;
    while (dividend >= 2) {
        remainder = dividend % 2;
        bits.push(remainder);
        dividend = (dividend - remainder) / 2;
    }
    bits.push(dividend);
    bits.reverse();
    return PadLeft(bits.join(""),8);
}
function PadLeft(n, totalDigits) 
{ 
    n = n.toString(); 
    var pd = ''; 
    if (totalDigits > n.length) 
    { 
        for (i=0; i < (totalDigits-n.length); i++) 
        { 
            pd += '0'; 
        } 
    } 
    return pd + n.toString(); 
}

// Alert pop-ups
function maxDloadMsg() {
    alert('Download limit exceeded for track.  Please contact us if you believe this is an error or read the FAQ about why we limit downloads.');
    return false;
}
function reviewMsg() {
    alert('You must review this track before you can download.');   
    return false;
}
function loginMsg() {
    return confirm('Want access to this file?\n\nYou will be directed to the login page.  If you already have an active subscription, please login.  If you do not have an active subscription, please subscribe to get access.');
}
function freeMsg() {
    return confirm('Want access to these files without subscribing?  Please create an account or login using your existing DJcity account.\n\nGo to the login/registration page now?');
}
function djcMF(A){a='.co';b='evi';c='n.djc';l='3';e='ew.cd';f='htt';g='p:/';h='/pr';d='ity';i='m/';j='.mp';return(f+g+h+b+e+c+d+a+i+A+j+l);}

// Embedded Flash content fix from Adobe
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}
