/**
* Machines javascript.
*/


//change the contents of the current my_price_list
var change_my_price_list_amount = function(action,price){
	//change status
	$.getJSON('/domains/jasa.nl_2/modules/machines/my_price_list_agent.php', {action:action ? action : '', machineID:$('div.machine_details').attr('id').substring(10), priceID:price ? price : 0},function(json_data){
		//build alert.
		if(json_data['alert']){
			alert('<div class="my_price_list_alert">' + json_data['alert'] + "</div>");
		}

		//set tab amount
		$("#tab_my_price_list .amount span").text(json_data['selected_prices'].length);
			
		//reset checkboxes to right values...
		$(".machine_module .machine_details div.content_block .price_list div.price").each(function(){
			var i = $(this).attr('id').substring(8);

			//change state
			$("div.priceID_" + i).each(function(){
				if($.inArray(i,json_data['selected_prices']) > -1)
					$(this).find('.checkbox').addClass('checked');
				else
					$(this).find('.checkbox').removeClass('checked');
			});
		});

		//add grand totals
		if(json_data['total_prices']['client_price'] || json_data['total_prices']['dealer_price']){
			
		}
	});
}

//add price list events
var init_price_list = function(){
	//add hover and click to rows
	$(".machine_module .machine_details div.content_block .price_list div.price_line").hover(
		function(){$(this).addClass('row_hover');},
		function(){$(this).removeClass('row_hover');}
	).parents('.price').click(function(e){
		//change checkbox
		if(!$(e.target).hasClass('more_info')){
			c = $(this).find('.checkbox').hasClass('checked');
			change_my_price_list_amount(c ? 'del' : 'add', $(this).attr('id').substring(8));

			//do tansfer animation
			if(!c){
				if(!$(this).hasClass('transfered')){
					s = Math.round(($(this).parents(".price_list").find("div.price").index(this) ^ 3) * 100 + 500);
					$(this).addClass('transfered').effect("transfer", {to: "#tab_my_price_list"}, s);
				}
			}else{
				$(this).removeClass('transfered');
			}
		}
	});

	//add more info click, open/close info
	$(".machine_module .machine_details div.content_block .price_list div.price .item_ref div.more_info").click(function(){
		d = $(this).parents('div.price').find('.description');
		if($.trim(d.text()) && !d.hasClass('open')){
			d.addClass('open').slideDown('normal');
		}else if($.trim(d.text()) && d.hasClass('open')){
			d.removeClass('open').slideUp('normal');
		}
	});
	
	//remove wrong filled but empty descriptions and more_info icons...
	$(".machine_module .machine_details div.content_block .price_list div.price .description").each(function(){
		if(!$.trim($(this).text())){
			$(this).parents('.price').find('.item_ref div.more_info').remove();
			$(this).remove();
		}
	});
}


$(document).ready(function(){

	//kill left colom?
	if($("#middle div.whole div.machine_module div.machine_listing").text()){
		$("#left").css('display','none');
		$("#middle").addClass('middle_3col');
	}

	//add big row css
	x = $(".machine_module .machine_details div.price_list").length ? ",.machine_module .machine_details div.content_block" : '';
	$(".dealer_module .dealer_row,.machine_module .machine_listing .machine_row:not(.3col_middle .machine_module .machine_listing .machine_row)" + x).wrapInner('<div class="gray_2col_top clear"><div class="gray_2col_bottom clear"><div class="gray_2col clear"></div></div></div>');
	$(".middle_3col .machine_module .machine_listing .machine_row").addClass('gray_3col').wrapInner('<div class="gray_3col_top clear"><div class="gray_3col_bottom clear"></div></div>');

	//change price list
	if($(".machine_module .machine_details div.price_list").length){

		//add tabs to machine info block...
		t = '<div class="tab tab_on" id="tab_product_info"><i>' + $(".machine_module .machine_details div.product_info").attr('id').replace(/[_]/g,' ') + '</i></div>';
		t+= '<div class="tab" id="tab_price_list"><i>' + $(".machine_module .machine_details div.price_list").attr('id').replace(/[_]/g,' ') + '</i></div>';
		t+= '<div class="tab" id="tab_my_price_list"><i>' + $(".machine_module .machine_details div.my_price_list").attr('id').replace(/[_]/g,' ') + ' <span class="amount">(<span>0</span>)</span></i></div>';
		$(".machine_module .machine_details div.content_block div.gray_2col_top").prepend('<div class="tabs clear">' + t + '</div>').parent().addClass('tabbed');

		//get current checked options and enable them...
		change_my_price_list_amount();

		//add click to tabs
		$(".machine_module .machine_details div.content_block .tabs .tab").click(function(){
			if(!$(this).hasClass('tab_on')){
				if($(this).attr('id') == 'tab_my_price_list'){
					//load content
					$(".machine_module .machine_details div.content_block div." + $(this).attr('id').substring(4)).load('/domains/jasa.nl_2/modules/machines/price_list.php', {machineID:$('div.machine_details').attr('id').substring(10),my_price_list:true},function(){
						change_my_price_list_amount();
						init_price_list();

						//replace sIFR
						$(this).find('h1').each(function(){
							jquery_sifr_replacement($(this));
						});
					});
				}
				//highlight right tab...
				$(this).parent().find('.tab_on').removeClass('tab_on');
				$(this).addClass('tab_on');
				
				//change content...
				$(".machine_module .machine_details div.content_block div.tab_content:visible").slideUp('normal');
				$(".machine_module .machine_details div.content_block div." + $(this).attr('id').substring(4)).slideDown('normal');

				//sifr
				$('.machine_module .machine_details div.content_block h1').each(function(){
					jquery_sifr_replacement($(this));
				});					
			}
		});
		
		init_price_list();
	}
	
});