
//$(document).ready(function(){
    //var win;
    /*
    var button = Ext.get('show-stock');

    button.on('click', function(){
        // Show a dialog using config options:
       
		Ext.Msg.show({
		   title:'Levertijd?',
		   msg: '<img src="/img/afuture/stock/icn_stock_instock.gif" with="23" height="16">&nbsp; Afuture eigen voorraad </br> <img src="/img/afuture/stock/icn_stock_lowstock.gif" with="23" height="16">&nbsp; Voorraad leverancier',
		   buttons: Ext.Msg.OK,
		   animEl: 'elId'
		});
    });
    */
 
//});
	//Do filter ding aan het begin
$(document).ready(function(){
	
	var i = 0;
	//Kijk of we objecten hebben
	$.each($.query.get(), function(key, value) {
		i++;
	});
	if(i > 0){
		Ext.fly('content').update('');					//Maak eerst leeg omdat we anders de homepage zien
		/*
		if($.query.get('cat') != ''){
			OpenAjaxCat('','cat', $.query.get('cat'), 'true');
		}else if ($.query.get('product') != ''){
			OpenAjaxPage('',$.query.get('product'));
		}
		*/
		SetValues();
		AjaxCatRequest();
	}
});

function AjaxCatRequest(e, name, value, scrollTop){
	$(document).ready(function(){
		
		if(!scrollTop){
			scrollTop = false;
		}
		//var el = Ext.get('supplierstock');
		//Uncheck altijd de checkbox
		//Ext.get('supplierstock').dom.checked = false;
			if(e){
				DoURlThing(e,name, value);
			}
			//el.on('click', function(){
		
			//Do loading thing
			//Ext.fly('product_overview-load-div').update('<img src="/img/ajax-loader_cat.gif">');
			if(document.getElementById('product_overview-load-div')){	//Als de load div gevonden is 
				document.getElementById('product_overview-load-div').style.display = 'block';	
			}else{
				return;		//Anders komen we via een andere pagina binnen. Zoekfunctie?
			}
			if(scrollTop == 'true'){
								    	$('html, body').animate({
											scrollTop: $("#Table_01").offset().top
										}, 300);
							    	}	
			var jsondata = Ext.util.JSON.encode( $.query.get() );
			
			Ext.Ajax.request({
							   	url: '/cat/ajax_index/1',
							   	method: 'GET',
							   	params: {
							   		cat_id: cat_id, filter: jsondata
								},
							   	success: function(response, opts) {
							   		
							   		data = Ext.util.JSON.decode(response.responseText);
							    	Ext.fly('product_overview-div').update(data.html);					//Update de product overview
							    	Ext.fly('product_overview-pagination-div1').update(data.paginationtop);		//Update de product_overview-pagination-div
							    	Ext.fly('product_overview-pagination-div2').update(data.paginationfooter);		//Update de product_overview-pagination-div
							    	Ext.fly('countproducts').update(data.aantal);						//Update het aantal
							    	
							    	document.getElementById('product_overview-load-div').style.display = 'none';	//Zet load ding uit
							    	
							    	
							    	
							   	},
							   	failure: function(response, opts) {
							     	Ext.fly('product_overview-div').update('Fout bij het ophalen van de gegevens...');
							   	}
					});
					
			//Ext.fly('product_overview-load-div').update('');	//Haal load leeg	
			
	
			//});

	});
}

function OpenAjaxCat(e, name, value, reload){
	Ext.fly('content').update('');
	//var test = $.query.empty();
	if(reload != 'true'){
		$.query.EMPTY();
		//$.query.SET('cat', value);
		//window.location='#cat='+value+''; 	//Gebruik gewoon de value
		window.location='#'+AddToUrl('cat', value); 	//Gebruik gewoon de value
	}
	cat_id = value.split('/');
	//console.log(cat_id);
	cat_id = cat_id[4];
	
	if(cat_id){
		if(document.getElementById('content-loader')){
			document.getElementById('content-loader').style.display = 'block';
		}
		var jsondata = Ext.util.JSON.encode( $.query.get() );
		
		Ext.Ajax.request({
								   	url: '/cat/ajax_index/2',
								   	method: 'GET',
								   	params: {
								   		cat_id: cat_id, filter: jsondata, OpenAjaxCat: true
									},
								   	success: function(response, opts) {
								   		
								   		data = Ext.util.JSON.decode(response.responseText);
								    	Ext.fly('content').update(data.html);					//Update de product overview
								    	SetValues();
								    	if(document.getElementById('content-loader')){
								    		document.getElementById('content-loader').style.display = 'none';	//Zet load ding uit
								    	}
								    	
								   	},
								   	failure: function(response, opts) {
								     	Ext.fly('content').update('Fout bij het ophalen van de gegevens...');
								   	}
						});
	}
}

function OpenAjaxPage(e, url){
	//console.log(url);
	$.query.empty();
	$.query.SET('product', url);
	window.location='#product='+url+''; 	//Gebruik gewoon de value
	
	Ext.Ajax.request({
								   	url: url,
								   	method: 'GET',
								   	params: {
								   		OpenAjaxCat: true
									},
								   	success: function(response, opts) {
								   		
								   		data = Ext.util.JSON.decode(response.responseText);
								    	Ext.fly('content').update(data.html);					//Update de product overview
								    	if(document.getElementById('content-loader')){
								    		document.getElementById('content-loader').style.display = 'none';	//Zet load ding uit
								    	}
								    	SetValues();
								    	
								   	},
								   	failure: function(response, opts) {
								     	Ext.fly('content').update('Fout bij het ophalen van de gegevens...');
								   	}
						});
}
   function LoadPage(url){
   	
   		$(document).ready(function(){
   			
   			var myDiv = Ext.get('main');
    		myDiv.getUpdateManager().update(url);
    		
    	});
    	
    	return false;
    }
    
   function toString(obj) {
          var o = [];
          if (obj == undefined) {
            o.push('undefined');
          } else if (obj === null) {
            o.push('null');
          } else if (obj === true) {
            o.push("true");
          } else if (obj === false) {
            o.push("false");
          } else if (obj.constructor == Object) {
            o.push("{");
            $.each(obj, function (key, value) {
              o.push("'");
              o.push(key);
              o.push("': ");
              o.push(toString(value));
              o.push(", ");
            });
            var last = o.pop();
            if (last == '{')
              o.push("{");
            o.push("}");
          } else if (obj.constructor == Array) {
            o.push("[");
            $.each(obj, function (key, value) {
              o.push(toString(value));
              o.push(", ");
            });
            o.pop();
            o.push("]");
          } else if (obj.constructor == String) {
            o.push('"');
            o.push(obj.replace('"', '\"'));
            o.push('"');
          } else {
            o.push(obj);
          }
          return o.join("");
        }
        
	function AddToUrl(key2, value2) {
		var test = $.query.empty();
		//var test = '';
		
		//console.log(value2);
		
		$.query.REMOVE(key2);
		
		exists = $.query.get(key2);
		if (exists == ''){
			//test += ''+key2+'='+value2+'';
			$.query.SET(key2, value2);
		}
		//test = '1=1';
		var i = 0;
		$.each($.query.get(), function(key, value) {
			if(i == 0){
				test += ''+key+'='+value;
			}else{
				test += '&'+key+'='+value;
			}
			
			i++;
			
		});
		
		return test;
	}
	
	function DoURlThing(e, name, value){
		//Als het een CheckBox is
		//console.log(name);
		
		if(name && value){
			//console.log('lala');
			if(name == 'orderField'){
				
				var orderSort = $.query.get('orderSort');
				if(!orderSort){
					orderSort = 'asc';	
				}else if(orderSort == 'asc'){
					orderSort = 'desc';	
				}else{
					orderSort = 'asc';	
				}
				AddToUrl(name,value);
				window.location='#'+AddToUrl('orderSort',orderSort); //Gebruik de checked value
			}else{
				window.location='#'+AddToUrl(name,value); //Gebruik de checked value
			}
		}else{
			if(e.type == 'checkbox'){
				window.location='#'+AddToUrl(e.id, e.checked); //Gebruik de checked value
			}else if(e.type == 'link'){
				window.location='#'+AddToUrl(e.id, e.name); 	//Gebruik gewoon de value
			}else if(e.type == 'text'){
				//console.log(e.value);
				window.location='#'+AddToUrl(e.id, e.value); 	//Gebruik gewoon de value
			}else if(name == 'cat'){	//Categorie click
				if(!value){
					value = '';	
				}
				window.location='#'+AddToUrl(name, value); 	//Gebruik gewoon de value
			}else{
				window.location='#'+AddToUrl(e.id, e.value); 	//Gebruik gewoon de value
			}
		}
	}
	
	function SetValues(){
		//Stock checkbox
		$.each($.query.get(), function(key, value) {
			//console.log(key);
			if(key != 'cat'){
				type = key.split("_");
				//console.log(type);
				
				if(type[0] == 'c'){	//For CheckBox
					if(value == 'true'){
						document.getElementById(key).checked = true ;
						//$.get("#128").checked == true 
					}else{
						document.getElementById(key).checked = false ;
					}
				}else if(type[0] == 't'){	//For Textbox
					document.getElementById(key).value = value ;	
				}
		}
		});
		

	}
	
	function scrollWin(){
		$('html, body').animate({
			scrollTop: $("#content").offset().top
		}, 2000);
}

