/* This script and many more are available free online at The JavaScript Source!! http://javascript.internet.com Created by: Carl Leiby | http://leibys-place.com/ */

//<![CDATA[


	var makeSubCat = {

		ajaxObj : null,
		nomeCat : null,
		valueCat : null,
		subCatBox : null,

		getXmlHttpRequest : function () {

			if (window.XMLHttpRequest) {
				xmlHttpObj = new XMLHttpRequest();
				//xmlHttpObj.overrideMimeType('xml');

				if (xmlHttpObj.overrideMimeType) {
					xmlHttpObj.overrideMimeType('text/xml');
				}
			}
			else {
				try {
					xmlHttpObj = new ActiveXObject("Msxml2.XMLHTTP");
				}
				catch (e) {
					try  {
						xmlHttpObj = new ActiveXObject("Microsoft.XMLHTTP");
					}
					catch (e) {
						xmlHttpObj = false;
					}
				}
			}

			return xmlHttpObj;
		},

		randomString : function () {

			var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz-~_+";
			var string_length = 8;
			var randomstring = '';

			for (var i=0; i < string_length; i++) {

				var rnum = Math.floor(Math.random() * chars.length);
				randomstring += chars.substring(rnum,rnum+1);
			}

			return randomstring;
		},

		checkChange : function (option) {

			//var option = evnt.target ? evnt.target : evnt.srcElement;
 
			if (option.id == 'catMenu') {

				// Inizia caricamento gif
				document.getElementById('loader').style.display = 'block';

				// Destinazione
				makeSubCat.subCatBox = document.getElementById("subcat");

				// Svuoto la select
				makeSubCat.subCatBox.options.length = 0;

				makeSubCat.nomeCat = document.getElementById('catMenu').options[option.selectedIndex].text;

				makeSubCat.valueCat = option.value;

				// Oggetto ajax
				makeSubCat.ajaxObj = makeSubCat.getXmlHttpRequest();

				if (makeSubCat.ajaxObj) {

					var id = document.getElementById('catMenu').options[document.getElementById('catMenu').options.selectedIndex].value;

					var indirizzo = location.href;

					if (indirizzo.indexOf('_admin') != -1) {
						var admin = '';
					}
					else {
						var admin = '_admin';
					}

					if (indirizzo.indexOf('www') == -1) {
						var www = '';
					}
					else {
						var www = 'www.';
					}

					extension = document.domain.split('.');

					for (i = 0; i < extension.length; i++) {

						if (extension[i] != 'www' && extension[i] != 'vitrinevintage') {
							extension = extension[i];
							break;
						}
					}

					var url = 'http://' + www + 'vitrinevintage.' + extension + '/_admin/js/subCat.php?catID=' + id + '&rand=' + makeSubCat.randomString();

					makeSubCat.ajaxObj.open('GET', url, true);
					makeSubCat.ajaxObj.onreadystatechange = makeSubCat.creaOpzioni;
					makeSubCat.ajaxObj.send(null);
				}
			}
		},

		creaOpzioni : function () {

			if (makeSubCat.ajaxObj.readyState == 4 && makeSubCat.ajaxObj.status == 200) {

				try {

					if(window.ActiveXObject) { // If IE Windows
						var subCat = new ActiveXObject("Microsoft.XMLDOM");
						subCat.loadXML(makeSubCat.ajaxObj.responseText);
					}
					else {
						var subCat = makeSubCat.ajaxObj.responseXML;
					}

					var numSubCat = subCat.getElementsByTagName('subcat').length;

					if (numSubCat < 1) {

						// Sottocategoria inesistente quindi il prodotto viene associato alla categoria stessa

						var elOptNew = document.createElement('option');
						elOptNew.text = makeSubCat.nomeCat;
						elOptNew.value = makeSubCat.valueCat;
						elOptNew.selected = true;

						try {
							makeSubCat.subCatBox.add(elOptNew, null); // standards compliant; doesn't work in IE
						}
						catch(ex) {
							makeSubCat.subCatBox.add(elOptNew); // IE only
						}
					}
					else {

						subCatElement = subCat.getElementsByTagName('subcat');

						for (var i = 0; i < numSubCat; i++) {

							for (var j = 0; j < subCatElement[i].childNodes.length; j++) {

								if (subCatElement[i].childNodes[j].nodeName == 'id') {

									var id = subCatElement[i].childNodes[j].firstChild.nodeValue;
								}
								else if (subCatElement[i].childNodes[j].nodeName == 'codice') {

									var codice = subCatElement[i].childNodes[j].firstChild.nodeValue;
								}
								else if (subCatElement[i].childNodes[j].nodeName == 'nome') {

									var nome = subCatElement[i].childNodes[j].firstChild.nodeValue;
								}
							}

							var elOptNew = document.createElement('option');
							elOptNew.text = nome;
							elOptNew.value = id;
							elOptNew.setAttribute('id', codice);

							try {
								makeSubCat.subCatBox.add(elOptNew, null); // standards compliant; doesn't work in IE
							}
							catch(ex) {
								makeSubCat.subCatBox.add(elOptNew); // IE only
							}
						}
					}

					// Fine caricamento gif
					document.getElementById('loader').style.display = 'none';
				}
				catch (e) {
					alert(e.message);
				}
			}
		}
	}

//]]/