
//update center block when applied sorting, viewing etc.
function update_center() {	
 	$.ajax({
 		  type: "get",
 		  async: true,
 		  url: ajax_url+"/true",
 		  beforeSend: function() {
 			$("#center_frame_block").html('');
 			$("#center_loader").show();
 		  },	  		  	  		  
 		  success: function(msg){ 			
 			$("#center_loader").hide();  
 			//$("#center_frame_block").html(msg);
 			//if ($("#center_frame_block").html() == ''){
 				document.getElementById("center_frame_block").innerHTML = msg;
 			//}
 			$("#center_frame_block").show(); 			
 		  },
 		  complete: function() {
 			  $("#center_loader").hide();
 		  },
 		  error: function() {alert('error');}
 	});		
}
//end function update_center

//chek to enable portlet for user
function check_enable_portlet(sender) {
	var obj = $(sender); 
	if (obj.closest(".portlet_content").hasClass("locked")) {
		mes = $('#message').parent();
		mes_html = $('#message');		    
	    offset = obj.offset();
	    			
		mes_html.html(obj.closest(".portlet_content").find(".locked_portlet_msg").html());	            
        mes.css('left',offset.left-114);
        mes.css('top',offset.top-40-mes.height());
        mes.show();
        
		return false;
	}
	return true;	
}
//end check_enable_portlet


function update_bookmarks_count(type){
	$.getJSON(base_url+"bookmarks/get_typecount/"+type,function(data){		
		$('.portlet_content').find('.book_count_'+type).text(data.count);
		$('.book_count_'+type).val(data.count);
		$('#book_count').text(data.total);
	});
}

function clear_bookmarks(sender) {
	var obj = $(sender);
	var book_type = obj.attr('tag');
	$.ajax({
			type: 'post',
			async: true,
			url: base_url+'/bookmarks/clear',
			data: 'bookmark_type='+book_type,
			beforeSend: function() {
				obj.parent().find('.ajax_loader').show();
			},
			success: function(msg) {
				if (msg == '1') {
					update_bookmarks_count(book_type);					
					update_center();
				}
			},
			complete: function() {
				obj.parent().find('.ajax_loader').hide();
			},
			error: function() {
				alert('error');
			}
	});
}

function show_comment_block(type_id,id) {
	$("#comment_block_"+type_id).load(base_url+"bookmarks/show_comment_block",{'id': id});
	$("#comment_block_"+type_id).show();
}

function rate_bookmark(id,rate,sender) {
	var obj = $(sender);
	if (!obj.parent().hasClass('rate_cube_s')) {
		$.ajax({
			type: 'post',
			async: true,
			url: base_url+"bookmarks/set_rate",
			data: {'id':id,'rate':rate},
			beforeSend: function() {
				obj.closest('.comment_block').find('.on_rate_ajax').show();
			},
			success: function(msg) {
				if (msg != '0') {
					obj.closest('.rate_book').find('.rate_cube_s').addClass('rate_cube').removeClass('rate_cube_s');
					obj.parent().removeClass('rate_cube').addClass('rate_cube_s');
				}
			},
			complete: function() {
				obj.closest('.comment_block').find('.on_rate_ajax').hide();
			}			
		});
	}
}

function add_comment_date(sender){
	var obj = $(sender);
	var d = new Date();
	var t_date = d.getDate();      // Returns the day of the month
	var t_mon = d.getMonth()+1;      // Returns the month as a digit
	var t_year = d.getFullYear();  // Returns 4 digit year
	var t_hour = d.getHours();     // Returns hours
	var t_min = d.getMinutes();    // Returns minutes
	if (t_min<10) t_min = '0'+t_min;
	if (t_mon<10) t_mon = '0'+t_mon;
	//var t_sec = d.getSeconds();    // Returns seocnds
	var comment = obj.closest(".comment_block").find('.comment_field');
	comment.val(comment.val()+" "+t_date+"/"+t_mon+"/"+t_year+" "+t_hour+":"+t_min+" ");
}

function save_book_comment(sender){
	var obj = $(sender);
 	if (!obj.attr('disabled')){
 		var form_obj = obj.closest('form');		
		
		$.ajax({
		  type: "post",
		  async: true,
		  data: {'id':form_obj.find('input:hidden[@name=bookmark_id]').val(),'comment': form_obj.find('.comment_field').val()},
		  url: base_url+"bookmarks/save_comment",
		  beforeSend: function() {
			obj.attr('disabled','disabled');
			form_obj.find('.ajax_loader').show();	
		  },
		  success: function(msg){
			
		  },
		  complete: function() {
			obj.removeAttr('disabled');
			form_obj.find('.ajax_loader').hide();
			obj.removeClass('but_red9');
		  }
		});
	}
 }

function delete_bookmark(sender) {
	var obj = $(sender);
	
 	if (!obj.attr('disabled')){
 		var bookmark_button = obj.closest('.item_frame_block').find("a.bookmark[class*='marked_yes']:last");						
			obj.attr('disabled','disabled');
			bookmark_button.click();
			obj.removeAttr('disabled');
	}
}

function confirm_dialog(sender) {
	
	/*var obj = $(sender);	
	var mes = $('#message').parent();
	var mes_html = $('#message');
	var offset = obj.offset();
	
	mes_html.html('Видалити?<p><input type="button" value="Так" onclick="alert(\'ok\'); obj.attr(\'confirmed\',\'yes\'); mes.hide();" /><input type="button" value="Ні" class="confirm_button butt_no" /></p>');
	mes.css('left',offset.left-114);
	mes.css('top',offset.top-40-mes.height());
	mes.show();*/
	return false;
}



$(document).ready(function(){
	
	var TimeoutID = 0;
	
	//show-hide portlet
	$(".portlet_block").find(".hide_portlet").click(function(){
		 var obj = $(this);
		 var portlet_act = 'show_portlet';
		 var portlet_name = obj.attr('tag');
		 var portlet_content = $(this).closest(".portlet_block").find(".portlet_content");	 
		 if(portlet_content.is(':visible')) {
			 portlet_act = 'hide_portlet';
		 } else {
			 portlet_act = 'show_portlet';
		 }
		 
		 $(this).closest(".portlet_block").find(".portlet_content").slideToggle('fast',function(){
				$.ajax({
					type: "post",
					url: base_url+"proposition_settings/upd_settings/",
					data: 'company_id='+id_company+'&'+portlet_act+'='+portlet_name,
					success: function(msg) {
						//alert(msg);					
					}
				});
			 });
	});
	
	$(".p2_link").live('click',function(){
		var obj = $(this);
						
		if ($(obj).hasClass('p2_active')) {
			return false;
		}
		
		if (!check_enable_portlet(obj)) {
			return false;
		}

		var field_val = obj.attr('tag');
		var field_name = obj.attr('field');
			
		$.ajax({
		  type: "post",
		  async: true,
		  url: base_url+"proposition_settings/upd_settings/",
		  data: 'company_id='+id_company+'&'+field_name+'='+field_val,	  
		  	  
		  beforeSend: function(msg){
			$(obj).closest('.link_group').find('.ajax_loader').show(); 
		  },
		  
		  success: function(msg){
			//alert(msg);  
			//if (msg == '1') {			 
			  $(obj).closest('.link_group').find('.p2_link').removeClass('p2_active');
			  $(obj).addClass('p2_active');		  										
			//} else {
			//	alert('Error');
			//}
			  update_center();
		  },
		  complete: function(msg){		  
			  $(obj).closest('.link_group').find('.ajax_loader').hide();		  		  
		  }
		});	
	 });
	
	$(".bookmark").live('hover',function(ev){
		if (ev.type == 'mouseenter') {
			var mes = $('#message').parent();
			var mes_html = $('#message');
	        var obj = $(this);
	        var offset = obj.offset();
	        var msg = '';
	        if (obj.hasClass('marked_yes')){
	        	msg = bookmark_del_msg;
	        } else {
	        	msg = bookmark_add_msg;
	        }
	        mes_html.html(msg);
            mes.css('left',offset.left-114);
            mes.css('top',offset.top-40-mes.height());
            mes.css('width', '245px');
            mes.show();
		} else {
			$('#message').parent().hide();
		}
	});
	
	$(".with_hover_info").live('hover',function(ev){
			if (ev.type == 'mouseenter') {
				var mes = $('#message').parent();
				var mes_html = $('#message');
				var obj = $(this);
				var offset = obj.offset();			        
				var msg = obj.attr('title');
				//alert(msg);
				mes_html.html(msg);
				mes.css('left',offset.left-114);
				mes.css('top',offset.top-40-mes.height());
				mes.css('width', '245px');
				mes.show();
			} else {
				$('#message').parent().hide();
			}
		});		
	
	//add bookmark
	
	$("a.bookmark").live('click', function(){
		var obj = $(this);
		
		var mes = $('#message').parent();
		var mes_html = $('#message');
		var offset = obj.offset();
		
		if (obj.hasClass('mark_disabled')) {
			mes_html.html('Дана функція доступна лише для залогованих!');
			mes.css('left',offset.left-114);
			mes.css('top',offset.top-40-mes.height());
			mes.show();
			return false;
		}
		
		var marked = 0;
		if (obj.hasClass('marked_yes')){
			marked = 1;
		}
		
		if (!obj.hasClass('mark_ajax')){			
			
			if (marked == 1) {
				if (!confirm('Увага будуть видалені Ваші нотатки для цієї помітки! Ви дійсно бажаєте видалити помітку?')) {
					return false;
				}
				/*if (obj.attr('confirmed') !== 'yes') {
					confirm_dialog(obj);
					return false;
				}*/
			}
			
			if (TimeoutID) window.clearTimeout(TimeoutID);
			
			$.ajax({
			  type: "post", 
			  async: true, 
			  url: base_url+'bookmarks/set_mark',
			  data: 'type='+obj.attr('tag_type')+'&type_id='+obj.attr('tag_id')+'&marked='+marked,
			  beforeSend: function() {
				obj.addClass('mark_ajax');
				mes.hide();
				$("#bookmark_oper_result").val('');
				$("#bookmark_insert_id").val('');
			  },
			  success: function(msg){
					update_bookmarks_count(obj.attr('tag_type'));
					mes_html.html(msg);
					mes.css('left',offset.left-114);
					mes.css('top',offset.top-40-mes.height());
					mes.show();
					
					var result = $("#bookmark_oper_result").val();
					var txt_book = obj.closest('.item_frame_block').find("a.bookmark[class*=book_with_txt]");
					            
		            if (result == 'deleted') {
		            	//if (all_book_link.hasClass('book_with_txt')) {
		            	//	obj.text(obj.attr('tag_txt_add'));
		            	//}		            	
		            	if(txt_book) {
		            		txt_book.text(txt_book.attr('tag_txt_add'));
		            	}
		            	//all_book_links.is("class*='book_with_txt'")
		            	//obj.removeClass('marked_yes');
		            	//obj.addClass('marked_no');
		            	obj.closest('.item_frame_block').find("a.bookmark").removeClass('marked_yes').addClass('marked_no');
		            	
		            	$("#comment_block_"+obj.attr('tag_id')).hide();
		            	if (obj.attr('tag_del') == '1') {
		            		obj.closest('.item_frame_block').fadeOut();
		            	}
		            } else if(result == 'added' || result == 'exist') {
		            	if(txt_book) {
		            		txt_book.text(txt_book.attr('tag_txt_del'));
		            	}
		            	//obj.removeClass('marked_no');
		            	//obj.addClass('marked_yes');
		            	obj.closest('.item_frame_block').find("a.bookmark").removeClass('marked_no').addClass('marked_yes');		            	
		            	show_comment_block(obj.attr('tag_id'), $("#bookmark_insert_id").val());		            	
		            }
			  },
			  complete: function() {				  
				obj.removeClass('mark_ajax');				
				TimeoutID = window.setTimeout('$("#message").parent().hide();', 10000);
			  }
			});
		}
	});
});