﻿//loadGroups();
var cpt, dt, grpID;

function changeIndent(drpObj, oldText, newText) { 
	for (var i = 0; i < drpObj.length; i++) {
		drpObj.options[i].text = drpObj.options[i].text.replace(oldText, newText);
	}
}

function GetQueryVariable(variable) {
  var query = window.location.search.substring(1);
  var vars = query.split("&");
  for (var i=0;i<vars.length;i++) {
    var pair = vars[i].split("=");
    if (pair[0] == variable) {
      return pair[1];
    }
  } 
  return "";
}

function loadGroups(){
    var dropdowns = getElementsByClass("qbselect");
    var qbstore = dropdowns[0];
    
    if (qbstore) {
	    qbstore.options[grpIndexStore].selected = true;
	    loadGenres(qbstore.options[grpIndexStore].value,false);	
	}
}
function loadGenres(grpValue, cptIndexChange){
    var dropdowns = getElementsByClass("qbselect");
    var qbgenres = dropdowns[1];	
    removeOptions(qbgenres); 
	d2 = myObj("qbprice");
	removeOptions(d2);
	dix = 0;
	ix =0;
	pix = 0;
	pvalue ="";
	
	for (var i = 0; i < gdp.length; i++) {
		s = gdp[i].split(',');
		if (s[0]==grpValue){
			insertOption(qbgenres,s[2],s[1]);    //object, value, text			
			if (qbgenres.length == 1)
			{   dix=ix;
			    dt = s[3];
			    cpt = s[4]; 
			    pvalue = prgr[s[5]];
			}    
			ix+=1;    
		}
	}
	changeIndent(qbgenres, /_/g, "   ");   //"   ");
 	qbgenres.options[dix].selected = true;    //set default selection
	
    p = pvalue.split(',');
    for (var j = 0; j < p.length; j++)  {
        var pname = "";
        if (p[j] == -1){ pname = "All"; }
        else if (p[j] == 0){ pname = "Free"; }
        else if (p[j] > 0) { pname = "$" + p[j] + " Or Less";  }
        insertOption(d2,p[j],pname);    //object, value, text
    }
     if (cptIndexChange){	    
     }else {pix=0}
     d2.options[pix].selected = true; 
}
function loadPriceGroupings(index){
	drp = myObj('qbprice');
	removeOptions(drp);
	for (var i = 0; i < gdp.length; i++) {
	    s = gdp[i].split(',');
	    if (s[2]==index){
	        dt = s[3];
	        cpt = s[4];
		    p = prgr[s[5]].split(',');
		    for (var j = 0; j < p.length; j++)  {
		        var pname = "";
	            if (p[j] == -1){ pname = "All"; }
	            else if (p[j] == 0){ pname = "Free"; }
	            else if (p[j] > 0) { pname = "$" + p[j] + " Or Less";  }
		        insertOption(drp,p[j],pname);    //object, value, text
		    }
		    drp.options[0].selected = true;
	    }
	}	
}

function insertOption(obj,value, text){    
	var opt = new Option(text,value);
	obj.options[obj.length] = opt;
}
function removeOptions(obj){
    if (obj) {
	    for (var i = obj.length-1; i >= 0; i--) {
		    obj.remove(i);
	    }
	}
}

function gv(obj){return obj.options[obj.selectedIndex].value;}
function gvd(obj){return obj.options[obj.selectedIndex].value;}
function ChangeStore(obj){grpIndexStore = obj.selectedIndex; loadGenres(gv(obj), false);}
function ChangeGenre(obj){grpIndexGenre = obj.selectedIndex; loadPriceGroupings(gvd(obj));}

function viewResults(){
var url ="";
g = myObj('qbstore');
g = g.options[g.selectedIndex].value;
url += '?grpID=' +  g;
url += '&device=' +  dt; 
url += '&cpt=' + cpt;
p = myObj('qbprice');
pr = p.options[p.selectedIndex].value;
url += '&prgr=' + pr;
url += '&noExpand=1';
url += '&page=1';

window.location.href = url;
}

function viewResultsAJAX(){
    var dropdowns = getElementsByClass("qbselect");
    var qbstore = dropdowns[0];
    var qbgenres = dropdowns[1];
    st = qbstore.options[qbstore.selectedIndex].value;
    gn= qbgenres.options[qbgenres.selectedIndex].value;
    grpID = gn;
    p = myObj('qbprice');
    pr = p.options[p.selectedIndex].value;
    var sortby = getElementsByClass("a11");    
    var qbsortby = sortby[0];
    sby = qbsortby.options[qbsortby.selectedIndex].value;
    
    var myInner = "<img src=\"theme/std2/img/ajax-loader.gif\" style=\"padding:9px 0px 9px 0px;\" />";
    var loader = document.getElementById("loading");
    //if (loader) { alert(loader.innerHTML);}
    loader.innerHTML = myInner;
    
    BASE_URL = basePath;    
    
	return new AJAXRequest("GET", BASE_URL + "Handler/QBTitles.ashx", "store=" + st + "&grpID=" + gn + "&prgr=" + pr + "&device=" + dt + "&cpt=" + cpt + "&sortby=" + sby, processQBTitlesXML);	
}

function processQBTitlesXML( myAJAX ) {


//    alert('myAJAX.readyState = ' + myAJAX.readyState);
      if (myAJAX.readyState == 4) { 
    //      alert('myAJAX.status = ' + myAJAX.status);
        if (myAJAX.status == 200) {
          logger(myAJAX.responseText);
          xml = myAJAX.responseXML;

          if (xml.documentElement) {
                var titleTable = document.getElementById("qbresults"); 
                titleTable.innerHTML = "";
                var titleCollection = xml.getElementsByTagName("TitleCollection")[0];
                var titleElements = titleCollection.getElementsByTagName("Title");
                
                var myHTML = "";
                for (var i=0; i<titleElements.length; i++) {
       
			        var titleID = titleElements[i].getElementsByTagName("titleID")[0].firstChild.nodeValue;
			        var titleName = titleElements[i].getElementsByTagName("name")[0].firstChild.nodeValue;
    				
                   if (titleID != "") {
 			            myHTML += "<div id=\"qblist" + titleID + "\" class=\"qblistclosed\">"; 
                        myHTML += "<a class=\"qblistn\" onclick=\"getTitleListView(" + titleID + ", " + cpt + ", " + dt + ", " + grpID + ", " + sby + ")\"><b>&#x25ba;</b><u>&#x25bc;</u> " + titleName + "</a>";
	                    myHTML += "</div>";}
                }
                if (titleElements.length == 0) {
                    myHTML += "No Titles Found";}
                if (titleTable) { titleTable.innerHTML += myHTML;}
          }
        } 
        else {
            alert("There was a problem retrieving the XML data:\n" + myAJAX.statusText);
        }
          //  alert("turning off loader");
          var loader = document.getElementById("loading");
          loader.innerHTML = " ";
      }

}

function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		{ node = document; }
	if ( tag == null )
		{ tag = '*'; }
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp('(^|\\s)'+searchClass+'(\\s|$)');
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

//toggles quick-browse list open and closed
function qbtog(thisid) {
	if (document.getElementById("qblist"+thisid).className=="qblistclosed") {
		document.getElementById("qblist"+thisid).className="qblistopen"
	} else {
		document.getElementById("qblist"+thisid).className="qblistclosed"
	}
}