/**
 * Function : dump()
 * Arguments: The data - array,hash(associative array),object
 *    The level - OPTIONAL
 * Returns  : The textual representation of the array.
 * This function was inspired by the print_r function of PHP.
 * This will accept some data as the argument and return a
 * text that will be a more readable version of the
 * array/hash/object that is given.
 * Docs: http://www.openjs.com/scripts/others/dump_function_php_print_r.php
 */
function dump(arr,level) {
    var dumped_text = "";
    if(!level) level = 0;
    
    //The padding given at the beginning of the line.
    var level_padding = "";
    for(var j=0;j<level+1;j++) level_padding += "    ";
    
    if(typeof(arr) == 'object') { //Array/Hashes/Objects 
	for(var item in arr) {
	    var value = arr[item];
	    
	    if(typeof(value) == 'object') { //If it is an array,
		dumped_text += level_padding + "'" + item + "' ...\n";
		dumped_text += dump(value,level+1);
	    } else {
		dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n";
	    }
	}
    } else { //Stings/Chars/Numbers etc.
	dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
    }
    return dumped_text;
}
function DisplayFlash(path, width, height, wmode){

    text = "<object type=\"application/x-shockwave-flash\" data=\""+path+"\" width=\""+width+"\" height=\""+height+"\" wmode=\""+wmode+"\" quality=\"high\">\r\n";
    text += "<param name=\"movie\"	value=\""+path+"\" />\r\n";
    text += "<param name=\"wmode\" value=\""+wmode+"\" />\r\n";
    text += "<param name=\"quality\" value=\"high\" />\r\n";
    text += "<param name=\"width\" value=\""+width+"\" />\r\n";
    text += "<param name=\"height\" value=\""+height+"\" />\r\n";
    text += "</object>";
    document.write(text);
}
function GetOrder(action) {

	var req = new JsHttpRequest();
        var items = "";
        
	if(action=="0")
		action = "recalc";

	var delitems = "";
        var inputs = document.item.getElementsByTagName('input');
        for (var i = 0; i < inputs.length; i++){
        	if(parseInt(inputs[i].value)){
                	items = items+inputs[i].name+"-"+inputs[i].value+" ";
                }
                else if(inputs[i].checked)
                        delitems = delitems+" "+inputs[i].name.replace("delete_", "");

        }

	req.onreadystatechange = function() {
	if (req.readyState == 4) {
           	document.getElementById("orderdiv").innerHTML = "";
		document.getElementById("orderdiv").innerHTML = req.responseJS.order;
                document.getElementById("new_basket_td").innerHTML = req.responseJS.basket;
	}
        }

	req.open(null, "/jslib/getorder.php", true);
	req.send( {items: items, delitems: delitems, action: action} );
}


function VoteForItem(item,vote) {
 if(!item) return;
 //alert('called with '+item+" and "+vote);
 if (document.getElementById('vote_note').value == '') {
  alert("Вы не аргументировали");
 } else {
  note = document.getElementById('vote_note').value;
  var req = new JsHttpRequest();
  req.onreadystatechange = function() {
 // alert(req.readyState);
   if (req.readyState == 4) {
 //  alert("Baba duba");
//   alert(dump(req.responseJS));
    alert(req.responseJS.basket);
    document.getElementById("voteresult").innerHTML = req.responseJS.basket;
   //alert("Cabayaba");
   }
  }
  req.open(null, "/jslib/vote.php", true);
  req.send( {item: item, vote: vote, note: note} );
 }
}
function AddToOrder2(item,qtty) {
 /* stolen from AddToOrder above */
// alert('Йа креведко! '+size);
 var req = new JsHttpRequest();
 if(!item) return;
 var divid = "ord"+item;
 req.onreadystatechange = function() {
//  alert(req.readyState);
  if (req.readyState == 4) {
   document.getElementById("new_basket_td").innerHTML = req.responseJS.basket;
   document.getElementById("new_cart").innerHTML = req.responseJS.basket;
  }
 }
 req.open(null, "/jslib/order_with_qtty.php", true);
 req.send( {item: item, qtty: qtty} );
}

function SendFeedBack(item,from,mail,plus,minus,text,rating) {
 var err = false;
 //alert("item is "+item+" From is "+from);
 if (!item.match(/^[0-9]{1,7}$/gi)) {alert('Not item'); return;}
 if (from == "") {alert("Вы не представились"); err = true;}
 //if (!mail.match(/^([a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4})$/gi)) { alert("Неправильный email"); err = true; }
 if (text == "") { alert("Вы ничего не сказали!"); err = true;}
 if ((rating != 0 ) && (rating != 1) && (rating != 2) && (rating != 3) && (rating != 4) && (rating != 5)) {
  alert("Wrong rating!"); err = true;
 }
 if (!err) {
  var req = new JsHttpRequest();

  req.onreadystatechange = function() {
//  alert(req.readyState);
   if (req.readyState == 4) {
    //document.getElementById("new_basket_td").innerHTML = req.responseJS.basket;
    alert("Ваше сообщение отправлено!");
//    document.getElementById('feedback').style.display = 'none';
    document.getElementById('feedbacks').innerHTML = req.responseJS.basket;
    ShowHide('feedback');	
   }
  }
  req.open(null, "/jslib/goods_feedback.php", true);
  req.send( {item: item, from: from, mail: mail, text: text, plus: plus, minus: minus, rating: rating} );

 }
}

function SendDescr(item,from,mail,text) {
 var err = false;
 //alert("item is "+item+" From is "+from);
 if (!item.match(/^[0-9]{1,7}$/gi)) {alert('Not item'); return;}
 if (from == "") {alert("Вы не представились"); err = true;}
 //if (!mail.match(/^([a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4})$/gi)) { alert("Неправильный email"); err = true; }
 if (text == "") { alert("Вы ничего не сказали!"); err = true;}
 if (!err) {
  var req = new JsHttpRequest();

  req.onreadystatechange = function() {
//  alert(req.readyState);
   if (req.readyState == 4) {
    //document.getElementById("new_basket_td").innerHTML = req.responseJS.basket;
    alert("Ваше сообщение отправлено!");
//    document.getElementById('feedback').style.display = 'none';
//    document.getElementById('feedbacks').innerHTML = req.responseJS.basket;
//    ShowHide('feedback');	
   }
  }
  req.open(null, "/jslib/goods_descr.php", true);
  req.send( {item: item, from: from, mail: mail, text: text} );

 }
}


function SendQuestion(item,from,goods,mail,text) {
 var err = false;
// alert("item is "+item+" From is "+from);
 if (!item.match(/^[0-9]{1,7}$/gi)) {alert('Not item'); return;}
 if (from == "") {alert("Вы не представились"); err = true;}
 if (!mail.match(/^([a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4})$/gi)) { alert("Неправильный email"); err = true; }
 if (text == "") { alert("Вы ничего не сказали!"); err = true;}
 if (!err) {
 // alert('yabbadooba');
  var req = new JsHttpRequest();

  req.onreadystatechange = function() {
  //alert(req.readyState);
   if (req.readyState == 4) {
//    alert(dump(req.responseJS));
//    document.getElementById("new_basket_td").innerHTML = req.responseJS.basket;
    alert(req.responseJS.basket);
//    document.getElementById('feedback').style.display = 'none';
//    document.getElementById('feedback_list').innerHTML = req.responseJS.basket;
   }
  }
  req.open(null, "/jslib/goods_question.php", true);
  req.send( {item: item, from: from,goods: goods, mail: mail, text: text} );

 }
}


function AddToOrder(item) {
	var req = new JsHttpRequest();
	

	if(!item)
		return;

	var divid = "ord"+item;
	

	req.onreadystatechange = function() {
	if (req.readyState == 4) {
			
			document.getElementById("new_basket_td").innerHTML = req.responseJS.basket;
			//document.getElementById(divid).innerHTML = "Отложено";
			
			//document.getElementById("orderinfo").style.display = "block";
			
	}
	}

	req.open(null, "/jslib/order.php", true);
	req.send( {item: item} );
}


function AttemptAuth(login,password) {
	var req = new JsHttpRequest();
	

//if(!item)
//return;

//	var divid = "ord"+item;
	

	req.onreadystatechange = function() {
	if (req.readyState == 4) {
			
//    alert(req.responseJS.msg);
	    if (req.responseJS.msg == "") {
	     alert("Введенные данные неверны");
	    } else {
		document.location.href="/personal/";
		//document.getElementById("loginform").innerHTML = req.responseJS.msg+"<br><a href=\"#\" onclick=\"javascript:logout(); return false;\">Выход</a>";
	    }
	}
	}

	req.open(null, "/jslib/login.php", true);
	req.send( {login: login, password: password} );
}

function logout() {
	
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {
	if (req.readyState == 4) {
			
//    alert(req.responseJS.msg);
	        document.location.href="/";
		//document.getElementById("loginform").innerHTML =  "<div id=\"loginform\" style=\"width:200px;\"><form onSubmit=\"if ((document.getElementById('login').value != '') && (document.getElementById('login').password != '') ) { AttemptAuth(document.getElementById('login').value,document.getElementById('password').value);}return false;\"><table><tr><td>Логин:</td><td> <input type=text id=\"login\" style=\"width:100px;margin-top:0px;\"></td></tr><tr><td>Пароль:</td><td> <input type=password style=\"width:100px;\" id=\"password\"></td></tr></table><input type=submit value=\"Войти в кабинет\"></form><a href=\"/register/\">Регистрация</a></div>";
	}
	}

	req.open(null, "/jslib/logout.php", true);
	req.send( {} );
}



function HideInfo(){
		document.getElementById("notepaddiv").style.display = "none";
}

function openWind(url,width,height) {
        number = Math.round(Math.random() * 100000000);
        auxWnd = window.open(url, 'newWindow_' + number,'width=' + width + ',height=' + height + ',resizable=yes,scrollbars=yes,toolbar=no,menubar=no,location=no,status=no,directories=no,copyhistory=no,left=0,top=0');
}

function RedirectIop(){
	
	var dochref = document.getElementById('url').value+'iop_'+document.getElementById('iop').value+'/'; 
	
	document.location = dochref;
}

function ShowPhoto(photo) {

	var req = new JsHttpRequest();
	var preview_div = "prev"+photo;
	

	req.onreadystatechange = function() {
	if (req.readyState == 4) {
          	document.getElementById("folderphoto").innerHTML = req.responseJS.photo;

                 document.getElementById(preview_div).innerHTML = req.responseJS.preview;
		}
        }

	req.open(null, "/jslib/photo.php", true);
	req.send( {photo: photo} );
}

function SwapImage(target, fname) {
	document[target].src = fname;
	var q = "/files/photos/shop_items/"+fname.slice(33,fname.length);
	$("#big_size").get(0).href=q;
	/*$("#fullsize").unbind('mouseover');
	$("#fullsize").bind("mouseover",function(event){
        oHlpr(q);
	});*/
}

function ShowPicture(picture) {
	//var picture = document["bigphoto"].src;
	//openWind('/images/?picture='+picture, 800, 800);
}


function ShowHide(id){
	var q = $("#"+id+"").get(0);
	if(q.style.display == "none"){
	//q.style.display = "block";
	$("#"+id+"").fadeIn();
	}else{
	//q.style.display="none"
	$("#"+id+"").fadeOut();
	}
	
}
	
function ShowHideCharacters(id1,id2){
	var q1 = $("#"+id1+"").get(0);
	var q2 = $("#"+id2+"").get(0);
	
	if(q1.style.display == "none"){
	
	$("#"+id2+"").hide();
	$("#"+id1+"").fadeIn();
	$("#show_"+id2+"").removeClass("showned");
	$("#show_"+id1+"").addClass("showned");
	}else{
	//q.style.display="none"
	//$("#"+id2+"").fadeOut();
	;}
	
}

function oHlpr(src, x,y){
     var newDiv = document.createElement("div");
     newDiv.id="popup_div";
     document.getElementById("body").appendChild(newDiv);
     toDeleteDiv = document.getElementById("popup_div");
     var image=new Image();
     $(".fullsize").bind("mouseout",function(event){
    	if(toDeleteDiv)	toDeleteDiv.parentNode.removeChild(toDeleteDiv);
	
	//toDeleteImg = document.getElementById("popup_image");
	//toDeleteImg.parentNode.removeChild(toDeleteImg);
	
	//if($("#popup_image")) $("#popup_image").remove();
	
	//if($("#popup_div")) $("#popup_div").remove();
    	});
     function transforming(){
		
		if(toDeleteDiv){
		
		document.body.appendChild(image);
		image.style.visibility = 'visible';
		image.style.position = 'absolute';
		image.top = "-5000px"; 
		image.left = 0;
		image.id ="test";
		var imSize = { 'width':image.clientWidth,'height':image.clientHeight }
		document.body.removeChild(image);
		imSize=calculate(imSize)
		createDiv(src,imSize, x, y);
			}
		}
	
    function createDiv(src, size, left, top) {
    	
	
	newImage = document.createElement("img");
    	newDiv.appendChild(newImage);
	newImage.style.visibility = "visible";
    	newImage.style.position = "absolute";
    	newImage.style.top = top+10+'px'; 
    	newImage.style.left = left+20+'px';
	//newImage.style.marginTop =getBodyScrollTop()-size.height/2+'px';
	/*newImage.style.marginLeft =-size.width/2+'px';*/
	newImage.style.zIndex =50;
    	newImage.src = src;
	newImage.id="popup_image";
	//newDiv.id="popup_div";
	newImage.width = size.width; 
    	newImage.height = size.height;
    	//document.body.appendChild(newImage);
	$("#popup_image").addClass("img_border");
	//$("#popup_div").addClass("div_border");
	
	}
function calculate(wh){
	if(wh.width > 400 || wh.height > 400){
		wh.width = wh.width*0.3;
		wh.height = wh.height*0.3;
	}
	return wh;
}

image.onload = function(){
 if(toDeleteDiv) {

transforming();

}
}

image.src = src;
}

function getBodyScrollTop()
{
  return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
}

function getBodyScrollLeft()
{
  return self.pageXOffset || (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);
}



