/**
 * ProofHQ plugins
 * 
 * @author Kamil Szafranek
 *
 */
var checkboxs_selected = [];
var checkboxs_selected_type = '';


$.proofPOST = function(link, params, callback){
	var container = '.page_content';
	$.post(link, params, function(data){
		if ((data.reload)&&(data.reload == 1)){
			location.reload(true);
			return false;
		}
		if (data.error == 0){
			if ((data.container)&&(data.container.length > 0))
				container = data.container;
			$(container +" *").remove();
			$(container).html(data.content);	
			//refresing dom_vars
			if ((data.refresh_dom)&&(data.refresh_dom.length > 0)){
				$.each(data.refresh_dom, function(i, item){
					$(item.container).html(item.content)
				});
			}
			//refresing js_vars
			if ((data.refresh_vars)&&(data.refresh_vars.length > 0)){
				$.each(data.refresh_vars, function(i, item){
					eval( " "+item.name+"="+item.value+";")
				});
			}
			//php callback
			if ((data.callback)&&((data.callback.length > 0))){
				eval( data.callback );
			}
		} else {
			
		}
		callback(data);
	},'json')
	
}
$.fn.ajaxContentLoad = function(options) {
	opts = $.extend({}, options);
	
	var allTh = $(this)
	
	$(this).live('click', function(){
		var th = $(this)
		var container = '.page_content';
		var rel = $(this).attr('rel');
		if (rel.length > 0){
			rel = eval('('+rel+')');;
		} else {
			rel = {};
		}
		var current_link  = $(this).attr('href');
		if (current_link){
			if (th.hasClass('message_confirm')){
				var buttons = {};
				buttons[_('Cancel')] = function(){
					$(this).dialog('close');
					$(this).dialog('destroy');				
				};
				buttons[_('Confirm')] = function(){
					$.proofPOST(current_link, rel, function(data){
					}, 'json')
					$(this).dialog('close');
					$(this).dialog('destroy');
				};
				var dialog = $('<div />').attr('title', rel.title).html(rel.content)
				dialog.phqDialog({
					'draggable' : false,
					'modal' : true,
					'resizable' : false,
					buttons : buttons
				});
			} else {
				$.proofPOST(current_link, rel, function(data){
				}, 'json')
			}
			$(".context_menu_proof").removeClass('visible')
											.css('display', 'none');
											
			$(".context_menu").removeClass('selected')
		}
		return false;
	})
};

$.proofPageChekboxes = function(){
	var firstItem = $("input[name='members_only']:checkbox");
	if (!firstItem.attr('checked')){
		$('#subscriptions').removeAttr('disabled');
	} else {
		$('#subscriptions').attr('disabled','disabled');
	}
	firstItem.click(function(){
		if (!$(this).attr('checked')){
			$('#subscriptions').removeAttr('disabled');
		} else {
			$('#subscriptions').attr('disabled','disabled');
		}
	})
		
	var secoundItem = $("input[name='subscriptions']:checkbox");
	if (!secoundItem.attr('checked')){
		$(".subscibers_tr").hide();
		$('#members_only').removeAttr('disabled');
	} else {
		$(".subscibers_tr").show();
		$('#members_only').attr('disabled','disabled');
	}
	secoundItem.click(function(){
		$(".subscibers_tr").css('display', 'block')
		if (!$(this).attr('checked')){
			$("tr.subscibers_tr").css('display', 'none')
			$('#members_only').removeAttr('disabled');
		} else {
			$(".subscibers_tr").show();
			$('#members_only').attr('disabled','disabled');
		}
		updatePage();
	})
	
	$("input#one_approval[name='one_approval']:checkbox").live('click', function(){
		if ($(this).attr('checked')){
			$("#selfclose").attr('checked', true); // when disabled it doesnt send value and it's always disbaled
		}
	})
	
}

var filesCounter = 1;
var captureLinks = new Array();
var captureLinksCounter = 0;

$.uploadFiles = function(){
	
 	
	$(".add_file_button .file").remove();
	$(".add_file_button").append('<input type="file" name="uploads[]" class="file" id="uploads"/>');
	
	$(".buttons div input.file").css('left', -30);
	if (navigator.userAgent.indexOf('Firefox') > 0){
		$(".buttons div input.file").css('left', -310);
	}
	
	//$(".select_file_button .file").remove();
	//$(".select_file_button").append('<input type="file" name="uploads[]" class="file_dropbox" />');
	
	$(".file").livequery('change', function(event){
		
		var th = $(this)
		var curr_num__of_files = NUMBER_OF_FILES - ($("div.file_item[itemid]").length - 1);
		if (curr_num__of_files > 0){
			var val = th.val();
			if (($(".dropbox #version").length == 1)&&($("div.file_item[itemid]").length > 1)){
				$(".dropbox #version").attr('disabled', true)
			}
			
			
			if (navigator.appName == 'Microsoft Internet Explorer'){
				//IE
				val = val.split('\\').pop()
			}
			if (val.length > 95){
				val = val.substr(0, 90)+'...';
			}
			var html = addFile(captureLinksCounter++,val);
			if ($("div.file_item").length == 1){
					$("div.file_item[itemid='-1']").css('display', 'none'); 
					$(".add_files").html(_('Add another file'));
				}
			$(".file_container").append(html);
			/*
			*/
			//setTimeout("$('.file_item').animate( { backgroundColor: 'white' }, 2000);", 10);
			
			$('.file_item:last').animate( { backgroundColor: 'white' }, 2000);
			var file = $("<input />").attr('type', 'file')
									.addClass('file')
									.attr('name', 'uploads['+ (filesCounter++) +']')
									.css('left', -30);
			
			if (navigator.userAgent.indexOf('Firefox') > 0){
				file.css('left', -630);
			}
			
			$(".add_file_button").append(file);
			$(".file_box_arrow").removeClass("capture");
			th.css('left', '200px')
				.attr('itemid', (captureLinksCounter - 1))
				
			if ((curr_num__of_files == 1)||($(".dropbox #version").length == 1)&&($(".dropbox #version").attr('checked'))){
				$(".subcontent .buttons").css('display', 'none')
				$(".file_container").css('margin-top', '20px');
				$(".file_container .file_box_arrow").css('display', 'none');
				$("#proof_limit_reached").fadeIn();
			}
			updatePage();
		} 
	})
	var nodups = '';
	$(".file_dropbox").livequery('change', function(event){
		var th = $(this);
		var curr_num__of_files = NUMBER_OF_FILES - $(".files_container table tr").length;
		if (curr_num__of_files > 0){
			
			var val = th.val();
			
			if(nodups && nodups == val) {
				return;
			}
			
			nodups = val;
			
			
			
			if (($(".dropbox_container #version").length == 1)&&($(".files_container table tr").length > 0)){
				$(".dropbox_container #version").attr('disabled', true)
			}
			
			if (navigator.appName == 'Microsoft Internet Explorer'){
				//IE
				val = val.split('\\').pop()
			}
			if (val.length > 60){
				val = val.substr(0, 55)+'...';
			}
			var html = addDropboxFile(captureLinksCounter++,val, false, ($(".files_container table tr").length == 0));
			$(".files_container table tr").removeClass('first')
			$(".files_container table").prepend(html);
			$(".files_container").css('display', 'block');
			var file = $("<input />").attr('type', 'file')
									.addClass('file_dropbox')
									
									.attr('name', 'uploads['+ (filesCounter++) +']');
			
			
			$(".select_file_button").append(file);
			$(".file_box_arrow").removeClass("capture");
			th.css({
		 		'top': '-200px',
				'display' : 'none'
		 	})
				.attr('itemid', (captureLinksCounter - 1))
				
			if ((curr_num__of_files == 1)||($(".dropbox_container #version").length == 1)&&($(".dropbox_container #version").attr('checked'))){
				$(".dropbox_container .upload_buttons").addClass('disabled')
				$(".file_container").css('margin-top', '20px');
				$("#proof_limit_reached").fadeIn();
			}
			
			updatePage();
			checkDropboxUploadLabels();
		} 
	})
	
	
	
	$(".dropbox #version").live('click', function(){
		var curr_num__of_files = ($("div.file_item[itemid]").length - 1);
		if ((curr_num__of_files == 1)&&($(this).attr('checked'))){
			$(".subcontent .buttons").css('display', 'none')
			$(".file_container").css('margin-top', '20px');
			$(".file_container .file_box_arrow").css('display', 'none');
			$("#proof_limit_reached").fadeIn();
		} else if (curr_num__of_files == 1){
			$(".subcontent .buttons").css('display', 'block')
			$(".file_container").css('margin-top', '0px');
			$(".file_container .file_box_arrow").css('display', 'block');
		}
			
	})
	$(".dropbox_container #version").live('click', function(){
		var curr_num__of_files = ($(".files_container table tr").length);
		if ((curr_num__of_files == 1)&&($(this).attr('checked'))){
			$(".dropbox_container .upload_buttons").addClass('disabled')
			$(".files_container").css('padding', 0);
			$("#proof_limit_reached").fadeIn();
		} else if (curr_num__of_files == 1){
			$(".dropbox_container .upload_buttons").removeClass('disabled')
			$(".files_container").css('padding-top', 18);
		}
		$('.capture_box').css('display', 'none')
		$(".select_wp_button").removeClass('visible')
	})
	
	$(".capture_web_button").click(function(){
		if (!$(this).hasClass('visible')){
			var positions = $(".capture_web_button").position();
			$('.capture_box').css({'left': positions.left - 160 + 'px', 'top' : positions.top + 20 + 'px'})
			$('.capture_box').css('display', 'block')
			$(this).addClass('visible')
		} else {
			$(this).removeClass('visible')
			$('.capture_box').css('display', 'none')
		}
		return false;
	})
	
	$(".select_wp_button").click(function(){
		if (!$(this).hasClass('visible')){
			var positions = {
				'left' 	: 189,
				'top' 	: 61
			};
			
			$('.capture_box').css({'left': positions.left - 173 + 'px', 'top' : positions.top + 170 + 'px'})
			$('.capture_box').css('display', 'block')
			$(this).addClass('visible')
		} else {
			$(this).removeClass('visible')
			$('.capture_box').css('display', 'none')
		}
		return false;
	})
	$(".capture_box img.add_wp").click(function(){
		var link = $("input[name='capture_url']").val()
		var curr_num__of_files = NUMBER_OF_FILES - $(".files_container table tr").length;
		if (curr_num__of_files == 0){
			return false;
		}
		if ((link.indexOf('.') >= 0)&&(curr_num__of_files > 0)){
			captureLinks[captureLinksCounter++] = link;
			
			var html = addDropboxFile(captureLinksCounter++,link, true, ($(".files_container table tr").length == 0));
			$(".files_container table tr").removeClass('first')
			$(".files_container table").prepend(html);
			$(".files_container").css('display', 'block');
			updatePage();
		} else {
			return false;
		}
		$(".capture_box").css('display', 'none')
		$(".select_wp_button").removeClass('visible')
		$("input[name='capture_url']").val('') 	
		$("input[name='capture_url']").focus();
		$("input[name='capture_url']").blur();
		
		if (($(".dropbox_container #version").length == 1)&&($(".files_container table tr").length > 1)){
			$(".dropbox_container #version").attr('disabled', true)
		}
			
		if ((curr_num__of_files == 1)||($(".dropbox #version").length == 1)&&($(".dropbox #version").attr('checked'))){
			$(".dropbox_container .upload_buttons").addClass('disabled')
			$("#proof_limit_reached").fadeIn();
		}
		if (($(".dropbox #version").length == 1)&&($(".files_container table tr").length > 2)){
			$(".dropbox #version").attr('disabled', true)
		}
		$("#workspace").focus();
		checkDropboxUploadLabels();
		return false;
	})


	$(".capture_box .cancel_button").click(function(){
		 $("input[name='capture_url']").val('')
		 $("input[name='capture_url']").focus()
		 $(".capture_box").css('display', 'none')
		 $(".capture_web_button").removeClass('visible')
	    return false;
	})
	$(".capture_box .save_button").click(function(){
		var link = $("input[name='capture_url']").val()
		var curr_num__of_files = NUMBER_OF_FILES - ($("div.file_item[itemid]").length - 1);
		if (link.indexOf('.') >= 0){
			
			captureLinks[captureLinksCounter++] = link;
			var html = addFile((captureLinksCounter - 1),link, false, true);
			if ($("div.file_item").length == 1){
				$("div.file_item[itemid='-1']").css('display', 'none'); 
			}
			$(".file_container").append(html);
			$(".file_item").animate( { backgroundColor: 'white' }, 2000); 
			$(".file_box_arrow").addClass("capture");
			updatePage();
			if ((curr_num__of_files == 1)){
				$(".subcontent .buttons").css('display', 'none')
				$(".file_container").css('margin-top', '20px');
				$(".file_container .file_box_arrow").css('display', 'none');
				$("#proof_limit_reached").fadeIn();
			}
		}
		$(".capture_box").css('display', 'none')
		$(".capture_web_button").removeClass('visible')
		$("input[name='capture_url']").val('') 	
		$("input[name='capture_url']").blur();
		
		if (($(".dropbox #version").length == 1)&&($("div.file_item[itemid]").length > 2)){
			$(".dropbox #version").attr('disabled', true)
		}
		$("#workspace").focus();
		checkUploadLabels();
		return false;
	})
	$(".capture_url").focus(function(){
		$(this).addClass('color_black')
	})
	$(".capture_url").keypress(function(e){
		if (e.keyCode == 13){
			$(".capture_box .save_button").click();
			$(".capture_box img.add_wp").click();
			return false;
		}
	})
	
	
	$(".delete_file").live('click',function(){
		var th = $(this)
		$("div.file_item[itemid='" + th.attr('itemid') + "']").fadeOut('fast', function(){
			$(this).remove();
			$("input[itemid='"+ th.attr('itemid') +"']").remove();
			delete captureLinks[th.attr('itemid')];
			if ($("div.file_item").length == 1){
				$("div.file_item[itemid='-1']").css('display', 'block'); 
			}
			var curr_num__of_files = NUMBER_OF_FILES - ($("div.file_item[itemid]").length - 1);
			if ((curr_num__of_files > 0)&&($(".subcontent .buttons").css('display') == 'none')){
				$(".subcontent .buttons").css('display', 'block')
				$(".file_container").css('margin-top', '0px');
				$(".file_container .file_box_arrow").css('display', 'block');
			}
			if (($(".dropbox #version").length == 1)&&($("div.file_item[itemid]").length == 2)){
				$(".dropbox #version").attr('disabled', false)
			}
			checkUploadLabels();
		})
		return false;	
	})
	$(".delete_dropbox_file").live('click',function(){
		var th = $(this)
		var itemid = th.attr('itemid');
		th.parents('tr').remove();
		$(".select_file_button input[itemid='"+itemid+"']").remove();
		$(".files_container table tr:first").addClass('first')
		$(".files_container table tr:last").addClass('last')
		if ($(".files_container table tr").length <= 1){
			$(".dropbox_container .upload_buttons").removeClass('disabled')
			$(".dropbox_container #version").attr('disabled', false)
		}
		if ($(".files_container table tr").length == 0) {
	  		$(".files_container").css('display','none');
	   }
		checkDropboxUploadLabels();
		return false;	
	})
	function checkDropboxUploadLabels(){
		var rel = $('.select_file_button span').attr('rel')
		rel = eval('(' + rel + ')');
		var rel_wp = $('.select_wp_button span').attr('rel')
		rel_wp = eval('(' + rel_wp + ')');
		if ($(".files_container table tr").length == 0){
			$('.select_wp_button span').html(rel_wp.on_file)
			$('.select_file_button span').html(rel.on_file)
		} else {
			if ($(".files_container table tr.is_url").length > 0){
				$('.select_wp_button span').html(rel_wp.more_files)
			} else {
				$('.select_wp_button span').html(rel_wp.on_file)
			}
			if ($(".files_container table tr:not(.is_url)").length > 0){
				$('.select_file_button span').html(rel.more_files)
			} else {
				$('.select_file_button span').html(rel.on_file)
			}
		}
	}
	function checkUploadLabels(){
		var rel = $('.add_file_button span.add_files').attr('rel')
		rel = eval('(' + rel + ')');
		var rel_wp = $('div.capture_web_button').attr('rel')
		rel_wp = eval('(' + rel_wp + ')');
		if ($(".file_item[itemid!=-1]").length == 0){
			$('div.capture_web_button').html(rel_wp.on_file)
			$('.add_file_button span.add_files').html(rel.on_file)
		} else {
			if ($("input[name='urls[]']").length > 0){
				$('div.capture_web_button').html(rel_wp.more_files)
			} else {
				$('div.capture_web_button').html(rel_wp.on_file)
			}
			
			if (($(".file_item[itemid!=-1]").length - $("input[name='urls[]']").length) > 0){
				$('.add_file_button span.add_files').html(rel.more_files)
			} else {
				$('.add_file_button span.add_files').html(rel.on_file)
			}
		}
	}
	
}
$.fn.toolbarMenu = function() {
	$(this).find("span a").hover(function(){
		$(this).parent().parent().addClass('menu_rollover');
	},function(){
		$(this).parent().parent().removeClass('menu_rollover');
	})
	$(this).find("li a:not(.movem, .deletem,.save_button, .cancel_button)").click(function(){
		if (!$(this).parent().parent().hasClass('selected')){
			$("#toolbar ul li").removeClass('selected has_submenu')
			$(".header_submenu").css('display', 'none')
			if ($(this).parent().parent().children("div.header_submenu").length > 0){
				$(this).parent().parent().children("div.header_submenu").css('display', 'block')
				$(this).parent().parent().addClass('has_submenu');
			}
			$(this).parent().parent().addClass('selected');
		} else {
			$(this).parent().parent().children("div.header_submenu").css('display', 'none')
			$(this).parent().parent().removeClass('selected has_submenu');
		}
		if ($(this).hasClass('newm')||($(this).hasClass('share_dropbox')))
			return false;
	});
	$.toolbarDelete();
	$.toolbarMoveTo();
	$.toolbarMore();
	$(this).find("li a.movem").click(function(){
		$(".buttons .error").css('display', 'none');
		if (!$(this).parent().parent().hasClass('selected')){
			var th = $(this);
			var cont_selector = $(".workspaces_submenu")
			var checkboxs_selected = $.getSelected();
			
			if (checkboxs_selected.length == 0){
				//check if ws
				if ($("#workspace_details").length == 1){
					checkboxs_selected[0] = $("#workspace_details");
				} else if ($("#item_details").length == 1){
					checkboxs_selected[0] = $("#item_details").attr('rel');
				}			
			}
			$(".curr_selected").html(checkboxs_selected.length);
			
			$.post(links['workspaces_tree'], {'dropbox' : 1}, function(data){
				cont_selector.html(data)
				cont_selector.workspacesTreeview();
				cont_selector.find("a.item[level=1]").parent().show();
				
				cont_selector.find(".triangle").click(function(){
				
					var current_item = $(this).next('a.item');
					if (!$(this).hasClass('open')){
						$(this).addClass('open');
						current_item.addClass('open')
						$(cont_selector).find("a.item[parentid="+ current_item.attr('itemid') +"]").parent().css('display', 'block')
					} else {
						$(this).removeClass('open');
						current_item.removeClass('open')
						$(cont_selector).find("a.item[parentid="+ current_item.attr('itemid') +"]").parent().css('display', 'none')
						hideWorkspace(current_item.attr('itemid'), $("div.workspaces_submenu"));
					}
					return false;
				})
				
				$("#toolbar ul li").removeClass('selected has_submenu')
				$(".header_submenu").css('display', 'none')
				if (th.parent().parent().children("div.header_submenu").length > 0){
					th.parent().parent().children("div.header_submenu").fadeIn('normal');
					th.parent().parent().addClass('has_submenu');
				}
				th.parent().parent().addClass('selected');
				
			})
		} else {
			$(this).parent().parent().children("div.header_submenu").css('display', 'none')
			$(this).parent().parent().removeClass('selected has_submenu');
		}
		
		
		return false;
	})
	//workspace header box
	$(this).find("li div.header_submenu.header_workspace").resizable({
		'minHeight' : 200, 
		'minWidth' : 250, 
		alsoResize: "#toolbar ul li div.header_submenu.header_workspace .workspace_container",
		resize: function(event, ui){
		  $("#toolbar ul li div.header_submenu.header_workspace .buttons").css('width', ( ui.size.width - 30 )+ 'px')
	}});
};

$.newWsOnNewProof = function(){
	$(".new_item_table.share_table .new_workspace").live('click', function(){
		$("select[name='workspace_parent']").val($("select[name='workspace']").val());
		$("select[name='workspace']").parents('tr').fadeOut('fast', function(){
			$('.bs_box.new_workspace_box').css('display', 'block');
		});
		return false;
	})
	
	$(".button_new_workspace").click(function(){
		var th = $(this);
		var params = {
			'client' : $("#client").val(),	
			'personal' : $("#personal").val(),
			'project' : $("#project").val(),
			'workspace_name' : $("#workspace_name").val(),
			'workspace_parent' : $("#workspace_parent").val()
		};
		//c(params);
		$(".buttons_new_workspace .save_button, .buttons_new_workspace .cancel_button").css('display', 'none');
		$(".buttons_new_workspace .login_loader").css('display', 'block');
		$.post(links['new_ajaxworkspace'],params, function(data){
			if (data.error == 1){
				if ($(".workspace_name_row .error").length > 0){
					$(".workspace_name_row .error").html(data.content);
				} else {
					$("input[name='workspace_name']").before('<p class="error">'+ data.content +'</p>')
				}
			} else if (data.error == 0){
				$("select[name='workspace']").text('');
				$.setSelectOptions($("select[name='workspace']"), data.select_tree);
				$("select[name='workspace']").val(data.id);
				$(".bs_box.new_workspace_box").css('display', 'none');
				$("select[name='workspace']").parents('tr').fadeIn('fast')
				$(".new_workspace_box .error").remove();
				$("#client").val('');	
				$("#personal").val(false);
				$("#project").val('');
				$("#workspace_name").val('');
				$("select[name='workspace_parent']").text('');
				$.setSelectOptions($("select[name='workspace_parent']"), data.select_tree);
			}
			$(".buttons_new_workspace .save_button, .buttons_new_workspace .cancel_button").fadeIn('fast');
			$(".buttons_new_workspace .login_loader").css('display', 'none');
		},'json')
		return false;
	})
	$(".bs_box.new_workspace_box .basecamp_close, .bs_box.new_workspace_box  .cancel_button").live('click', function(){
		$(this).parents(".bs_box.new_workspace_box").css('display', 'none');
		$("select[name='workspace']").parents('tr').fadeIn('fast')
		return false;
	})
	
}

$.fn.ajaxSearchLoad= function() {
	$(this).click(function(){
		var search_val = $(this).parent().children('input').val();
		if (search_val != 'Enter phrase to search'){
			search_val = search_val.replace(/\/|\\|%/g, '_')
			
			var current_link = links['search'] + search_val;

			location.href = current_link;
		} else {
			location.href = links['search'];
		}
	})
	$("input[name='search_value']").keypress(function(e){
		var search_val = $(this).parent().children('input').val();
		if ((e.which == 13)&&(search_val.length > 0)){
			$(this).next().click()
		}
	})
		
};

$.fn.enterEvent = function() {
	$(this).keydown(function(e){
		if( e.keyCode == 13 ) {
			$("#toolbar .search img").trigger('click');
		}
	});
}

function hideWorkspace(parentId, items){
	var items = $(items).find("a.item[parentid="+ parentId +"]");
	if (items.length > 0){
		$.each(items, function(i, item){
			$(item).parent().css('display', 'none');
			$(item).removeClass('open');
			$(item).prev('.triangle').removeClass('open');
			hideWorkspace($(item).attr('itemid'));	
		})
	}
}

$.fn.treeviewLoadWorkspaces = function() {
	var selected_ws = new Array();
	var sel_ws = getcookie('sel_ws');
	if (sel_ws.length > 0){
		selected_ws = sel_ws.split(',');
	}
	var th = $(this);
	$("#page .left_sidebar .menu_item.workspaces div.submenu a.triangle").live('click', function(){
		var current_item = $(this).next('a');
		if (!$(this).hasClass('open')){
			$(this).addClass('open');
			current_item.addClass('open')
			$("#page .left_sidebar .menu_item.workspaces div.submenu a.item[parentid="+ current_item.attr('itemid') +"]").parent().css('display', 'block')
			if(!inArray(selected_ws, current_item.attr('itemid'))) {
				selected_ws.push(current_item.attr('itemid'))
				setCookie('sel_ws', selected_ws.join(','))
			}
		} else {
			$("#page .left_sidebar .menu_item.workspaces div.submenu a.item[parentid="+ current_item.attr('itemid') +"]").parent().css('display', 'none')
			hideWorkspace(current_item.attr('itemid'), $("#page .left_sidebar .menu_item.workspaces div.submenu"));
			$(this).removeClass('open');
			current_item.removeClass('open')
			selected_ws = deleteFromArray(current_item.attr('itemid'),selected_ws)
			setCookie('sel_ws', selected_ws.join(','))
		}
		$(".left_sidebar").css('height', 'auto')
		checkWindow();
		return false;
	})
	$(this).click(function(){
		var th = $(this);
		var cont_selector = $("#page .left_sidebar .menu_item.workspaces .submenu");
		if (th.hasClass('open')){
			cont_selector.fadeOut('normal', function(){
				th.removeClass('open')
				th.prev().addClass('open')
				setTimeout("updatePage();", 500);
			})
			setCookie('tree_expand', 0, 0)
			$(".left_sidebar").css('height', 'auto')
			checkWindow();
		} else {
			var loader = $("<div />").addClass('workspace_loader').html('Loading...').css('display', 'block')
			cont_selector.html(loader);
			cont_selector.css('display', 'block')
			$.post(links['workspaces_tree'], {'type': 'html'}, function(data){
				$(".workspace_loader").fadeOut('fast', function(){
					cont_selector.html(data)
					cont_selector.workspacesTreeview();
					$("#page .left_sidebar .menu_item.workspaces div.submenu a.item[level=1]").parent().show();
					cont_selector.fadeIn('normal', function(){
						th.addClass('open')
						th.prev().addClass('open')
						updatePage();
					})
					setCookie('tree_expand', 1, 1)
					var curr_rel = $(".workspace-dropp").attr('rel');
					
					
					if ((curr_rel)&&(curr_rel.length > 0)){
						curr_rel = eval('(' + curr_rel + ')');
						$(".menu_item.workspaces .submenu a.item[itemid='"+curr_rel.workspace_id+"']").addClass('selected')
					}
					var sel_ws = getcookie('sel_ws')
					if (sel_ws.length > 0){
						sel_ws = sel_ws.split(',')
						$.each(sel_ws, function(i, item){
							$("#page .left_sidebar .menu_item.workspaces a[itemid='"+item+"']").prev().click();
						})
						$.each($("#page .left_sidebar .menu_item.workspaces a[itemid]"), function(i, item){
							var itemid = $(item).attr('itemid')
							if (checkParents(itemid) == false){
								$("#page .left_sidebar .menu_item.workspaces a[parentid='"+itemid+"']").parent().css('display', 'none')
								$("#page .left_sidebar .menu_item.workspaces a[parentid='"+itemid+"']").removeClass('open')
								$("#page .left_sidebar .menu_item.workspaces a[parentid='"+itemid+"']").prev('a').removeClass('open')
								$("#page .left_sidebar .menu_item.workspaces a[itemid='"+itemid+"']").parent().css('display', 'none')
								$("#page .left_sidebar .menu_item.workspaces a[itemid='"+itemid+"']").removeClass('open')
								$("#page .left_sidebar .menu_item.workspaces a[itemid='"+itemid+"']").prev('a').removeClass('open')
							}
						})
					}
					$(".left_sidebar").css('height', 'auto')
					function checkParents(item){
						var parentid = $("#page .left_sidebar .menu_item.workspaces a[itemid='"+item+"']").attr('parentid');
						parentid = parseInt(parentid);
						//c($("#page .left_sidebar .menu_item.workspaces a[itemid='"+parentid+"']").parent());
						//c('dd:'+parentid)
						if ($("#page .left_sidebar .menu_item.workspaces a[itemid='"+parentid+"']").parent().length == 0){
							return true;
						}
						if (( $("#page .left_sidebar .menu_item.workspaces a[itemid='"+parentid+"']").parent().css('display') == 'none')){
							return false;
						} else if (parentid == 0){
							return true;
						} else if (parentid > 0){
							checkParents(parentid);
						}  
						
					}
					
				})
			})
		}
		return false;
	});
};

$.fn.treeviewLoadWorkspacesShared = function() {
	var selected_ws = new Array();
	var sel_ws = getcookie('sel_s_ws');
	if (sel_ws.length > 0){
		selected_ws = sel_ws.split(',');
	}
	var th = $(this);
	$("#page .left_sidebar .menu_item.shared_workspaces div.submenu a.triangle").live('click', function(){
		var current_item = $(this).next('a');
		if (!$(this).hasClass('open')){
			$(this).addClass('open');
			current_item.addClass('open')
			$("#page .left_sidebar .menu_item.shared_workspaces div.submenu a.item[parentid="+ current_item.attr('itemid') +"]").parent().css('display', 'block')
			if (selected_ws.indexOf(current_item.attr('itemid')) == -1){
				selected_ws.push(current_item.attr('itemid'))
				setCookie('sel_s_ws', selected_ws.join(','))
			}
		} else {
			$("#page .left_sidebar .menu_item.shared_workspaces div.submenu a.item[parentid="+ current_item.attr('itemid') +"]").parent().css('display', 'none')
			hideWorkspace(current_item.attr('itemid'), $("#page .left_sidebar .menu_item.shared_workspaces div.submenu"));
			$(this).removeClass('open');
			current_item.removeClass('open')
			selected_ws = deleteFromArray(current_item.attr('itemid'),selected_ws)
			setCookie('sel_s_ws', selected_ws.join(','))
		}
		return false;
	})
	$(this).click(function(){
		var th = $(this);
		var cont_selector = $("#page .left_sidebar .menu_item.shared_workspaces .submenu");
		//c(th);
		if (th.hasClass('open')){
			cont_selector.css('display', 'none');
			th.removeClass('open')
			th.prev().addClass('open')
			updatePage();
			setCookie('shared_tree_expand', 0, 0)
		} else {
			var loader = $("<div />").addClass('workspace_loader').html('Loading...').css('display', 'block')
			cont_selector.html(loader);
			cont_selector.css('display', 'block')
			//c(links['shared_workspaces_tree']);
			$.post(links['shared_workspaces_tree'], {'type': 'html'}, function(data){
				$(".workspace_loader").fadeOut('fast', function(){
					cont_selector.html(data)
					cont_selector.workspacesTreeview();
					$("#page .left_sidebar .menu_item.shared_workspaces div.submenu a.item[level=1]").parent().show();
					cont_selector.fadeIn('normal', function(){
						th.addClass('open')
						th.prev().addClass('open')
						updatePage();
					})
					setCookie('shared_tree_expand', 1, 1)
					var curr_rel = $(".workspace-dropp").attr('rel');
					
					
					if ((curr_rel)&&(curr_rel.length > 0)){
						curr_rel = eval('(' + curr_rel + ')');
						$(".menu_item.shared_workspaces .submenu a.item[itemid='"+curr_rel.workspace_id+"']").addClass('selected')
					}
					var sel_ws = getcookie('sel_s_ws')
					if (sel_ws.length > 0){
						sel_ws = sel_ws.split(',')
						$.each(sel_ws, function(i, item){
							$("#page .left_sidebar .menu_item.shared_workspaces a[itemid='"+item+"']").prev().click();
						})
						$.each($("#page .left_sidebar .menu_item.shared_workspaces a[itemid]"), function(i, item){
							var itemid = $(item).attr('itemid')
							if (checkParents(itemid) == false){
								$("#page .left_sidebar .menu_item.shared_workspaces a[parentid='"+itemid+"']").parent().css('display', 'none')
								$("#page .left_sidebar .menu_item.shared_workspaces a[parentid='"+itemid+"']").removeClass('open')
								$("#page .left_sidebar .menu_item.shared_workspaces a[parentid='"+itemid+"']").prev('a').removeClass('open')
								$("#page .left_sidebar .menu_item.shared_workspaces a[itemid='"+itemid+"']").parent().css('display', 'none')
								$("#page .left_sidebar .menu_item.shared_workspaces a[itemid='"+itemid+"']").removeClass('open')
								$("#page .left_sidebar .menu_item.shared_workspaces a[itemid='"+itemid+"']").prev('a').removeClass('open')
							}
						})
					}
					$(".left_sidebar").css('height', 'auto')
					function checkParents(item){
						var parentid = $("#page .left_sidebar .menu_item.shared_workspaces a[itemid='"+item+"']").attr('parentid');
						parentid = parseInt(parentid);
						//c($("#page .left_sidebar .menu_item.workspaces a[itemid='"+parentid+"']").parent());
						//c('dd:'+parentid)
						if ($("#page .left_sidebar .menu_item.shared_workspaces a[itemid='"+parentid+"']").parent().length == 0){
							return true;
						}
						if (( $("#page .left_sidebar .menu_item.shared_workspaces a[itemid='"+parentid+"']").parent().css('display') == 'none')){
							return false;
						} else if (parentid == 0){
							return true;
						} else if (parentid > 0){
							checkParents(parentid);
						}  
						
					}
					
				})
			})
		}
		return false;
	});
};



$.fn.welcomeWindowClose = function() {
	$(this).live('click', function(){
		var current_link = links[$(this).attr('rel')];
		var th = $(this);
		if (current_link){
			$.post(current_link, {}, function(data){
				th.parent().parent().fadeOut('normal', function(){
					$(".resize_elem").height(elem);
					th.parent().parent().remove();
				});
			})
		}
		return false;
	})
};

$.fn.contextItemMenu = function() {
	var cMenus = $(".context_menu");
	if (cMenus.length > 0){
		$.each(cMenus, function(i, item){
			var randRef = Math.floor(Math.random()*15000000)
			$(item).attr('rel', randRef)
			$(item).next().attr('rel', randRef)
		})
	}
	$(this).live('click', function(event){ 
		var th = $(this)
		var menu_box = '';//$(this).next();
		var rel = th.attr('rel');
		if (rel.length == 0){
			var randRef = Math.floor(Math.random()*15000000)
			th.attr('rel', randRef)
			th.next().attr('rel', randRef)
			rel = randRef.toString();
		}
		if (menu_box.length == 0){
			if (rel.length > 0){
				menu_box = $(".context_menu_proof[rel='"+rel+"']")
			}
		}
		$("body").append(menu_box)
		var menu_box_pos = {
			'top': event.pageY + 10,
			'left': event.pageX - 215
		};
		if (th.parent().hasClass('proof_item')){
			menu_box_pos.left += 20; 
		}
		menu_box.css({
			'left': menu_box_pos.left+"px",
			'top': menu_box_pos.top+"px"
		});
		
		if (menu_box.hasClass('visible')){
			menu_box.css('display', 'none')
			menu_box.removeClass('visible')
			th.removeClass('selected');
		} else{
			$(".context_menu_proof").css('display', 'none')
			$(".context_menu").removeClass('selected');
			$(".context_menu_proof").removeClass('visible')
			menu_box.css('display', 'block')
			menu_box.addClass('visible')
			th.addClass('selected')
		}
		return false;
	})
};

$.fn.updateListView = function() { 
	$(this).click(function(){
		var submenu  = $(".menu_item.all_items .submenu");
		if ($(this).hasClass('selected')){
			submenu.fadeOut('normal', function(){
				setTimeout("updatePage();", 500);
			})
			setCookie('view_expand', 0, 0)
			$(this).removeClass('selected')
		} else {
			var loader = $("<div />").addClass('workspace_loader').html('Loading...').css('display', 'block')
			submenu.html(loader);
			submenu.css('display', 'block')
			$.post(links['all_items_filters'],{'action': 'main_all_proofs'},function(data){
				submenu.html('');
				if (data.standards.length > 0){
					submenu.append($('<div />').html(_('Standard views')).addClass('submenu_separator'));
					
					$.each(data.standards, function(i, item){
						var link = $('<a />').css({'width' : '100%', 'padding-right' : '100%', 'position' : 'relative'});
						link.attr('href', item.link).html(item.label)
							.attr('itemid', item.id)
						link = $("<div />").prepend(link)
						link.css({'width' : '100%', 'float' : 'left', 'position' : 'relative'});
						submenu.append(link)
					})
				}
				if (data.customs.length > 0){
					submenu.append($('<div />').html(_('Custom views')).addClass('submenu_separator'));
					
					$.each(data.customs, function(i, item){
						var link = $('<a />').attr('href', item.link).html(item.label);
						submenu.append(link)
					})
				}
				$(".menu_item.all_items .submenu a[itemid="+$("#__filter").val()+"]").addClass('selected')
			},'json')
			submenu.fadeIn('normal', function(){
				updatePage();
			});
			setCookie('view_expand', 1, 1)
			$(this).addClass('selected')
		}
		return false;
	})
};

$.fn.workspacesTreeview = function() {
	var wi_padding = 52;
	var wi_padding_delta = 14;
	var wi_bposition = 33;
	var wi_bposition_delta = 14;
	var tr_padding = 18;
	var tr_padding_delta = 14;
	$.each($(this).children().children('a.item'),function(i, item){
		var level = $(item).attr('level');
		if ($(item).attr("haschildren") == 1){
			var tr = $("<a />").attr('href', 'javascript:void(0);').addClass('triangle').css({
				'left': tr_padding + tr_padding_delta * (level - 1),
				'top': 5
			})
			$(item).parent().prepend(tr)
			//level++;
		}
		$(item).css({
			'padding-left': wi_padding + (level - 1) * wi_padding_delta,
			'background-position' : (wi_bposition + (level - 1) * wi_bposition_delta) + 'px 6px'
			
		}); 
				
	})
	
};
var imgDetailsLoader  = $("<img />").attr('src', '/images/details-loader.gif').addClass('details_loader')

$.fn.simpleEditAjax = function() {
	$(this).livequery(function(){
		$(this).click(function(){
			var th = $(this);
			var params = eval('(' + th.attr('rel') + ')');
			var prv = th.parent().prev('div.details');
			
			if ((params.container)&&(params.container.length > 0)){
				prv = $(params.container)
			}
			
				if (!((params.container)&&(params.container.length > 0))){
					prv.html(imgDetailsLoader)
				}
				prv.fadeIn(function(){
					$.post(links['ajax_edit_details'], params, function(data){
						prv.fadeOut('normal', function(){
							prv.html(data.content)
							prv.css('display', 'block')
							th.css('display', 'none')
							$(".ajax_field:not(.datetime_picker)").focus();
						})
					}, 'json')
				});

			return false;
		})
	});
};
$.fn.simpleSaveAjax = function() {
	$(this).livequery(function(){
		$(this).click(function(){
			var th = $(this);
			if (th.attr('rel').length == 0){
				return false;
			}
			/*
			c('dupa;')
			var dialog = $('<div />').attr('title', 'fdsa').html('fdsa')
			var buttons = {};
			buttons['Confirm'] = function(){
				$(this).dialog('close');
				$(this).dialog('destroy');				
			};
			buttons['Cancel'] = function(){
				$(this).dialog('close');
				$(this).dialog('destroy');		
				return false;		
			};
			dialog.phqDialog({
				'draggable' : false,
				'modal' : true,
				'resizable' : false,
				buttons : buttons
			});
			*/
			var params = eval('(' + th.attr('rel') + ')');
			var fields = $(th).parents('.details').find('.ajax_field');
			if (params.type == 'radio'){
				var field = $("input[name='ajax_"+ params.field +"']:checked")	;
				params["ajax_"+ params.field] = field.val();
			} else if ((params.type.match('textarearich'))&&(params.type.match('textarearich').length > 0)){
			  	params["ajax_"+ params.field] = tinyMCE.get("ajax_"+ params.field).getContent();
			} else {
				if (fields.length > 0){
					$.each(fields, function (i, item){
						if ($(item).attr('name').indexOf('picker') == -1){
							params[$(item).attr('name')] = $(item).val();
						} else {
							params[$(item).attr('name')] = '';
						}
					})
				}
			}
			var prv = th.parents('.details')
			var cont_ws_selector = $("#page .left_sidebar .menu_item.workspaces .submenu");
			prv.fadeOut('normal', function(){
				prv.html(imgDetailsLoader);
				prv.fadeIn('fast', function(){
					$.post(links['ajax_save_details'], params, function(data){
					 	if( data.indexOf('{') == 0 && data.lastIndexOf('}') == data.length - 1 ) {
							data = eval('('+data+')');
							if(data.reload) {
								location.reload(true);
								return false;
							}
							prv.fadeOut('fast', function(){
								prv.html(data.content);
								if (data.tree){
									cont_ws_selector.html(data.tree)
									cont_ws_selector.workspacesTreeview();
									$("#page .left_sidebar .menu_item.workspaces div.submenu a.item[level=1]").parent().show();
								}
								prv.fadeIn('fast', function(){
									if ((data.content.indexOf('class="error"') == -1)||(data.content.indexOf('class="ajax_save_details"') == -1)){
										prv.next('.action').find('a').fadeIn();
									}  
								});
							})
						}
						else {
							prv.fadeOut('fast', function(){
								prv.html(data).css('display', 'block')
								prv.next('.action').find('a').css('display', 'block')
							})
						}
					});
				});
			})
			return false;
		})
	});
};
$.fn.simpleCancelAjax = function() {
	$(this).livequery(function(){
		$(this).click(function(){
			var th = $(this);
			
			var params = eval('(' + th.attr('rel') + ')');
			var prv = th.parents('.details')
			
			prv.fadeOut('normal', function(){
				prv.html(imgDetailsLoader)
				prv.fadeIn('fast', function(){
					$.post(links['ajax_cancel_details'], params, function(data){
						prv.fadeOut('normal', function(){
							prv.html(data.content)
							prv.fadeIn('fast', function(){
								prv.next('.action').find('a').css('display', 'block')
							});
						})
					}, 'json')
				});
			})
			return false;
		})
	});
};
$.fn.dialogConfirm = function() {
	$(this).livequery(function(){
		$(this).click(function(){
			var th = $(this);
			var params = eval('(' + th.attr('rel') + ')');
			var dialog = $('<div />').attr('title', params.title).html(params.content)
			var buttons = {};
			buttons[params.submit] = function(){
				$.post(th.attr('href'),{},function(data){
					if (data.error == 0){
						if (!data.container){
							data.container = '.page_content';
						}
						$(data.container).html(data.content)
					} else{
						var d = $('<div />').attr('title', data.title ).html(data.content)
						d.dialogInfo();
					}
					dialog.dialog('close');
					dialog.dialog('destroy');
				},'json')
			};
			buttons[params.cancel] = function(){
				$(this).dialog('close');
				$(this).dialog('destroy');				
			};
			dialog.phqDialog({
				'draggable' : false,
				'modal' : true,
				'resizable' : false,
				buttons : buttons
			});
			return false;
		})
	});
};



$.fn.dialogInfo = function() {
	var th = $(this);
	var th = $(this);
	var params = eval('(' + th.attr('rel') + ')');
	th.attr('title', params.title).html(params.content)
	var buttons = {};
	buttons[_('OK')] = function(){
		$(this).dialog('close');
		$(this).dialog('destroy');
		$(this).remove();
	};
	$(this).dialog({
		'draggable' : false,
		'modal' : true,
		'resizable' : false,
		buttons : buttons
	});
	return false;
};
$.fn.proofAjaxForm = function() {
	var bTypeChanged = false;
	$("form.ajax_form #Type").livequery(function(){
		$(this).change(function(){
			bTypeChanged = true;
		})
	})
	$(this).livequery(function(){
		var th = $(this)
		var container = '.page_content';
		$(this).ajaxForm({
			
			success: function(data){
//				alert(data );
			//	data = eval('(' + data + ')');
				
				if ((data.reload)&&(data.reload == 1)){
					location.reload(true);
					return false;
				}
				if (data.error == 0){
					if ((data.container)&&(data.container.length > 0))
						container = data.container;
					$(container +" *").remove();
					$(container).html(data.content);	
					//refresing dom_vars
					if ((data.refresh_dom)&&(data.refresh_dom.length > 0)){
						$.each(data.refresh_dom, function(i, item){
							$(item.container).html(item.content)
						});
					}
					//refresing js_vars
					if ((data.refresh_vars)&&(data.refresh_vars.length > 0)){
						$.each(data.refresh_vars, function(i, item){
							eval( " "+item.name+"="+item.value+";")
						});
					}
					//php callback
					if ((data.callback)&&((data.callback.length > 0))){
						eval( data.callback );
					}
					$(".left_sidebar").css('height', 'auto')
				} else {
					
				}
		},
			beforeSubmit : function(){
				var button = th.find('.submit_save_button.confirm_dialog');
				if (button.length > 0){
					var rel = button.attr('rel')
					if (rel.length > 0){
						rel = eval('(' + rel + ')');
						var current_type = $("#current_type").val();
						var allowed_types = $("#allowed_option_types").val();
						
						if (allowed_types.length > 0){
							allowed_types = allowed_types.split(',');
							if ((inArray(allowed_types, current_type))&&(rel.field_selector)&&(inArray(allowed_types, $(rel.field_selector).val()))){
								rel.show_dialog = 0;
							}
						}

						if (rel.show_dialog == 1){
							var d = $('<div />').attr('title', rel.title ).html(rel.content)
							var buttons = {};
							buttons[_('Cancel')] = function(){
								$(this).dialog('close');
								$(this).dialog('destroy');
								$(this).remove();
							};
							buttons[_('Confirm')] = function(){
								button.removeClass('confirm_dialog');
								$(this).remove();
								th.submit();
							};
							d.phqDialog({
								'draggable' : false,
								'modal' : true,
								'resizable' : false,
								buttons : buttons
							});
							return false;
						}
					}
				} else if (( th.find('.submit_form.confirm_dialog').length > 0) && (bTypeChanged)){
					button = th.find('.submit_form.confirm_dialog')
					var rel = eval('(' + button.attr('rel') + ')');
					var d = $('<div />').attr('title', rel.title ).html(rel.content)
					var buttons = {};
					buttons[_('Cancel')] = function(){
						$(this).dialog('close');
						$(this).dialog('destroy');
						$(this).remove();
						bTypeChanged = false;
						th.find('.ajax_cancel_details').click();
					};
					buttons[_('Confirm')] = function(){
						button.removeClass('confirm_dialog');
						$(this).remove();
						bTypeChanged = false;
						th.submit();
					};
					d.phqDialog({
						'draggable' : false,
						'modal' : true,
						'resizable' : false,
						buttons : buttons
					});
					return false;
				}
			}
		,
		dataType : 'json'
		})
	});
};

function installFilters(){
	$(".show_filters").live('click', function(){
		var th = $(this);
		if ($(".filters_box").hasClass('visible')){
			$(".filters_box").fadeOut('normal', function(){
				$(this).removeClass('visible');
				th.html(_('Show filters'));
			});
		} else {
			$(".filters_box").fadeIn('normal', function(){
				$(this).addClass('visible');
				th.html(_('Hide filters'));
			});
		}
		return false;			
	})
	$('.close_filter').live('click', function(){
		var par = $(this).parent();
		if ($(this).parent().hasClass('visible')){
			
			$(this).parent().fadeOut('normal', function(){
				par.removeClass('visible');
				$(".show_filters").html(_('Show filters'));
			})
		} else {
			$(this).parent().fadeIn('normal', function(){
				par.addClass('visible');
				$(".show_filters").html(_('Hide filters'));
			})
		}
		$(".left_sidebar").css('height', 'auto')
		updatePage();
	})
}

$.fn.ajaxChooser = function() {
	$(this).live('click', function(){
		var th = $(this)
		var link = th.attr('rel');
		if (link){
			$.post(link,{},function(data){
				if (data.checked == 1){
					th.attr('checked', true)
				} else {
					th.attr('checked', false); 
				}
			}, 'json')
		}
	})
};

$.setSelectOptions = function(selector, options){
	var ret = '';
	$.each(options, function(i, item){
		var op = $('<option/>').attr('value', i).html(item);
		selector.append(op)
	})
};

var tl;
var output = new Array();
var oIndex = 0;
var tIndex = null;
var a_completer = null;
$.fn.emailsAutocomplete = function() {
	var input = null;
	var th = $(this);
	$(".ac_results ul li").livequery(function(){
		$(this).click(function(){
			$(".reviewers_error").css('display', 'none')
			//$('.save_emails').click();
			th.val('')
			//setTimeout("$('.reviewers_error').css('display', 'none')", 300)
			$(".group_error").css('display', 'none')
		})
	})
	
	$(".save_emails").live('click', function(){
		var currentItem = null;
		var itemsToAdd = new Array();
		var input_val = null;
		if (input){
			input_val = input.val();
		}
		if(!input_val || input_val == 'null') {
			return false;
		}
		if (indexes[input_val]){
			currentItem = indexes[input_val];

							
		} else if ((groupsIndexes)&&(groupsIndexes[input_val])){
			var contacts = groupsIndexes[input_val].contacts;

			itemsToAdd = contacts;
		} else {
			 var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
			 
		    var address = trim(input_val);
				//c(input);
		    if((reg.test(address) == false)&&input) {
		    	if (input.val() != ''){
		    		$(".reviewers_error").css('display', 'block');
		    	}
		    	//input.val('');
	 	       return false;
	        }
				var params = {};
				params.email = address;
				$.post(links['check_user_email'],params, function(data){
					var selector = $(".email_item.nonuser_item:contains("+address+") select.users_roles");
					if (selector.length > 0){
						selector.html('')
						$.setSelectOptions(selector, data)
						if(($('#default_role').length > 0)&&($("#subscriptions").attr('checked'))) {
							selector.val($('#default_role').val());
						}
					}
				}, 'json')
		    if (input){
		    	currentItem = {'index' : input.val(), 'email' : input.val()}
		    }
			 
		}
				
		var itemExists = false;
		if (currentItem) {
			$.each(output, function(i, item){
				if ((item) && (item.index == currentItem.index)) {
					input.val('');
					itemExists = true;
				}
			});
			if ((!itemExists)&&((currentItem.is_user)||(! $('#members_only').attr('checked') ))) {
				addItemToDOM(currentItem);
			}
			if ((!currentItem.is_user)&&( $('#members_only').attr('checked') )){
				$(".error.members_only_notice").fadeIn();
			}
		}
		if (itemsToAdd.length > 0){
			$.each(itemsToAdd, function(i, item){
				itemExists = false;
				$.each(output, function(i, item2){
					if ((item2)&&(item2.index == item.index)){
						itemExists = true;		
						//remove from list of indexes
					}
				});
				if (!itemExists){
					addItemToDOM(item);
				}
			});
		}
		return false;
			
	})
	function addItemToDOM(item){
		output[oIndex++] = item;
		var html = addEmail((oIndex - 1), item.index, item.email, item.id, item.role>0?item.role:3 ); 
		$("div.email_item[itemid='-1']").css('display', 'none'); 
	
		$(".emails_container").append(html);
		
		setTimeout("updatePage();", 500);

		if (item['is_user'] == true||item['is_user'] == 'true') {
			$.setSelectOptions($(".emails_container").find("select[itemid='" + (oIndex - 1) + "']"), userRoles);
		}
		else {
			$.setSelectOptions($(".emails_container").find("select[itemid='" + (oIndex - 1) + "']"), nonUserRoles);
			$('.emails_container .email_item[itemid=' + (oIndex - 1) + ']').addClass('nonuser_item');
			if( $('#members_only').attr('checked') ) {
				$('.emails_container .email_item[itemid=' + (oIndex - 1) + ']').addClass('errored_emails_item');
			}
		}
		if (item['role']) {
			var role = item['role'];
			if ((!item['is_user'] )&&(item['role'] == 6)){
				role = 3;
			}
			$("select[itemid='" + (oIndex - 1) + "']").val(role);
			$("input.role_input[itemid='" + (oIndex - 1) + "']").val(role);
		}
		else {
			if ($("input[name='subscriptions']:checkbox").attr('checked') == true) {
				$("select[itemid='" + (oIndex - 1) + "']").val($("select[name='default_role']").val());
				$("input.role_input[itemid='" + (oIndex - 1) + "']").val($("select[name='default_role']").val());
			}
			else {
				$("select[itemid='" + (oIndex - 1) + "']").val(3);
			}
		}
		$(".email_item:last").animate( { backgroundColor: 'white' }, 500); 
		input.val('');
		checkWindow();
	}
		
	$("select.users_roles").livequery(function(){
		$(this).change(function(){
			var itemid = $(this).attr('itemid')
			var val = $(this).val();
			$("input.role_input[itemid='" + itemid + "']").val(val);
		})
	})
	$(".delete_email").livequery('click', function(){
		var th = $(this)
		
		$("div.email_item[itemid='" + th.attr('itemid') + "']").fadeOut('fast',function(){
			
			//removing from basecamp
			var bc_attr = th.attr('bc');
			if (bc_attr){
				$("input[value='" + bc_attr + "']").attr('checked', false);
			}
			
			var content = $(this).find('span:first').html();
			$(this).remove();
			updatePage();
			output.splice(th.attr('itemid'),1, null)
			if ($("div.email_item").length == 1){
				$("div.email_item[itemid='-1']").css('display', 'block'); 
			}
		});
		return false;
	})
	
	var data 			= new Array();
	var fakedata		= new Array();
	var indexes 		= new Array();
	var groupsIndexes 	= groups;
	
	$('.members_only_notice').css({'display': 'none'});
	$('.emails_container .nonuser_item').removeClass('errored_emails_item');
	if(this.checked){
	 	$('.members_only_notice').css({'display': 'block'});
		$('.emails_container .nonuser_item').addClass('errored_emails_item');
	}
	$('#members_only').click(function(){

		$('.members_only_notice').css({'display': 'none'});
		$('.emails_container .nonuser_item').removeClass('errored_emails_item');
		if(this.checked){
		 	$('.members_only_notice').css({'display': 'block'});
			$('.emails_container .nonuser_item').addClass('errored_emails_item');
		}
	})
	
	$(this).live('click', function(){
		input = $(this);
		
		if (contacts){
			data = new Array();
			$.each(contacts, function(i, item){
				data.push( item.index );
				indexes[item.index] = item;
			});
			$.each(groups, function(i, item){
				data.push( item.index );
				groupsIndexes[item.index] = item;
			});
		}
		tIndex = data;
		a_completer = $(this).autocomplete(data,{
			'matchContains': true,
			'max' : 30
		})
	});
	/**
	 * enter press support
	 */
//	$(this).live('click', function(){
		$(this).keypress(function (e) {
			$(".reviewers_error").css('display','none')
			$(".error").css('display','none')
			if (e.which == 13){
				input.next('a.save_emails').click();
				return false;			
			}
		});
		$(this).keyup(function(e){
			var vis_results = null;
			$(".group_error").css('display', 'none')
			if ($(".ac_results").length > 0){
				//c('--' + $(".ac_results").length)
				$.each($(".ac_results"), function(i, item){
					if ($(item).css('display') == 'block'){
						vis_results = $(item);
					}
				})
			}
			if (vis_results){
				var sameNameCounter = 0;
				$.each(vis_results.find('li'), function(i, item){
					var tmpText = $(item).text().toLowerCase();
					if (tmpText.indexOf(th.val() + ' (') == 0){
						sameNameCounter++;
					}
				})
				if (sameNameCounter > 2){
					$(".group_error").css('display', 'block')
				} else {
					$(".group_error").css('display', 'none')
				}
			}
		})
//	})
	$(this).live('change', function(){
		var itemid = $(this).attr('itemid');
		var val = $(this).val(); 
		$(".role_input[itemid="+itemid+"]").val(val)
	})
	
	$(this).blur(function(event){
		var vis_res = null;
		$(".group_error").css('display', 'none')
		if ($(".ac_results").length > 0){
			$.each($(".ac_results"), function(i, item){
				if ($(item).css('display') == 'block'){
					vis_res = $(item);
				}
			})
		}
		if (vis_res == null){
			
			$(".save_emails").click();
		}
	})
};

/*
$.fn.dropboxEmailsAutocomplete = function() {
	return false;
	var input = null;
	$(".dsave_emails").live('click', function(){
		var currentItem = null;
		var itemsToAdd = new Array();
		var input_val = null;
		$(".input_row.add_users.users_table").css('display','block')
		
		if (input){
			input_val = input.val();
		}
		if (indexes[input_val]){
			currentItem = indexes[input_val];				
		} else if ((groupsIndexes)&&(groupsIndexes[input_val])){
			var contacts = groupsIndexes[input_val].contacts;

			itemsToAdd = contacts;
		} else {
			 var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
			 var address = trim(input_val);
			 
		    if((reg.test(address) == false)&&input) {
		       input.val('');
				 input.focus();
				 $(".reviewers_error").css('display', 'block');
	 	       return false;
	        }
		    if (input){
		    	currentItem = {'index' : input.val(), 'email' : input.val()}
		    }
		}
		
		var itemExists = false;
		if (currentItem) {
			$.each(output, function(i, item){
				if ((item) && (item.index == currentItem.index)) {
					input.val('');
					itemExists = true;
				}
			});
			if ((!itemExists)&&((currentItem.is_user)||(! $('#members_only').attr('checked') ))) {
				dropboxAddItemToDOM(currentItem);
			}
			if ((!currentItem.is_user)&&( $('#members_only').attr('checked') )){
				$(".error.members_only_notice").fadeIn();
			}
		}
		if (itemsToAdd.length > 0){
			$.each(itemsToAdd, function(i, item){
				itemExists = false;
				$.each(output, function(i, item2){
					if ((item2)&&(item2.index == item.index)){
						itemExists = true;		
						//remove from list of indexes
					}
				});
				if (!itemExists){
					dropboxAddItemToDOM(item);
				}
			});
		}
		checkClasses();
		if (input){
			input.val('');
			input.focus();
			input.blur();
		}
		return false;
	})
	
	function checkClasses(){
		$.each($(".add_users table tr[itemid]"), function(i, item){
			$(item).removeClass('first')
			$(item).removeClass('last')
			if (i == 0 ){
				$(item).addClass('first')
			}
			if ((i + 1)== $(".add_users table tr[itemid]").length ){
				$(item).addClass('last')
			}
		})
	}
	function dropboxAddItemToDOM(item){
		output[oIndex++] = item;
		var html = addDropboxEmail((oIndex - 1), item.index, item.email, item.id, item.role>0?item.role:3 ); 

		$(".input_row.add_users table").prepend(html);
		
		setTimeout("updatePage();", 500);

		if (item['is_user'] == true||item['is_user'] == 'true') {
			$.setSelectOptions($(".input_row.add_users table tr").find("select[itemid='" + (oIndex - 1) + "']"), userRoles);
		}
		else {
			$.setSelectOptions($(".input_row.add_users table tr").find("select[itemid='" + (oIndex - 1) + "']"), nonUserRoles);
			$('.input_row.add_users table tr .email_item[itemid=' + (oIndex - 1) + ']').addClass('nonuser_item');
			if( $('#members_only').attr('checked') ) {
				$('.emails_container .email_item[itemid=' + (oIndex - 1) + ']').addClass('errored_emails_item');
			}
		}
		
		if (item['role']) {
			var role = item['role'];
			if ((!item['is_user'] )&&(item['role'] == 6)){
				role = 3;
			}
			$("select[itemid='" + (oIndex - 1) + "']").val(role);
			$("input.role_input[itemid='" + (oIndex - 1) + "']").val(role);
		}
		else {
			if ($("input[name='subscriptions']:checkbox").attr('checked') == true) {
				$("select[itemid='" + (oIndex - 1) + "']").val($("select[name='default_role']").val());
				$("input.role_input[itemid='" + (oIndex - 1) + "']").val($("select[name='default_role']").val());
			}
			else {
				$("select[itemid='" + (oIndex - 1) + "']").val(3);
			}
		}
		$(".email_item").animate( { backgroundColor: 'white' }, 2000); 
		input.val('');
		checkWindow();
	}
		
	$("select.users_roles").livequery(function(){
		$(this).change(function(){
			var itemid = $(this).attr('itemid')
			var val = $(this).val();
			$("input.role_input[itemid='" + itemid + "']").val(val);
		})
	})
	$(".ddelete_email").live('click', function(){
		var th = $(this)
		$(".add_users table tr[itemid='" + th.attr('itemid') + "']").fadeOut('fast',function(){
			
			//removing from basecamp
			var bc_attr = th.attr('bc');
			if (bc_attr){
				$("input[value='" + bc_attr + "']").attr('checked', false);
			}
			
			var content = $(this).find('span:first').html();
			$(this).remove();
			updatePage();
			output.splice(th.attr('itemid'),1, null)
			checkClasses();
		});
		return false;
	})
	
	var data 			= new Array();
	var fakedata		= new Array();
	var indexes 		= new Array();
	var groupsIndexes 	= groups;
	
	$('.members_only_notice').css({'display': 'none'});
	$('.emails_container .nonuser_item').removeClass('errored_emails_item');
	if(this.checked){
	 	$('.members_only_notice').css({'display': 'block'});
		$('.emails_container .nonuser_item').addClass('errored_emails_item');
	}
	$('#members_only').click(function(){

		$('.members_only_notice').css({'display': 'none'});
		$('.emails_container .nonuser_item').removeClass('errored_emails_item');
		if(this.checked){
		 	$('.members_only_notice').css({'display': 'block'});
			$('.emails_container .nonuser_item').addClass('errored_emails_item');
		}
	})
	
	$(this).live('click', function(){
		input = $(this);
		if (contacts){
			data = new Array();
			$.each(contacts, function(i, item){
				data.push( item.index );
				indexes[item.index] = item;
			});
			$.each(groups, function(i, item){
				data.push( item.index );
				groupsIndexes[item.index] = item;
			});
		}
		tIndex = data;
		a_completer = $(this).autocomplete(data,{
			'matchContains': true,
			'max' : 30
		})
	});
	/**
	 * enter press support
	 */
	/*
	$(this).keypress(function (e) {
		$(".reviewers_error").css('display','none')
		if (e.which == 13){
			input.next('a.save_emails').click();
			input.next('img.dsave_emails').click();
			return false;			
		}
	});
	$(this).live('change', function(){
		var itemid = $(this).attr('itemid');
		var val = $(this).val(); 
		$(".role_input[itemid="+itemid+"]").val(val)
	})
	$(".ac_results ul li").livequery(function(){
		$(this).click(function(){
			setTimeout("$('.save_emails').click();$('.reviewers_error').css('display', 'none')", 200)
			setTimeout("$('.reviewers_error').css('display', 'none')", 300)
			$(".group_error").css('display', 'none')
			$(".reviewers_error").css('display', 'none')
		})
	})
	$(".email_item").livequery(function(){
		$(this).animate( { backgroundColor: 'white' }, 2000);
	})
	
};
*/
function addEmail(ind, name, email, id, role, bc){
	var input = ''; 
	if (id > 0)
		input = "<input type=\"hidden\" name=\"people[" + email+ "][id] \" value=\""+id+ " \"/>";

	if (role<1) {
		role = 3;
		if ($("input[name='subscriptions']:checkbox").attr('checked') == true) {
			role = $("select[name='default_role']").val();
		}
	} 
	if (name.length > 35){
		name = name.substr(0, 35)+'...';
	}
	var input2 = "<input type=\"hidden\" class=\"role_input\" itemid=\"" + ind + "\"  name=\"people[" + email+ "][role]\" value=\""+role+"\"/>";
	var input3 = "<input type=\"hidden\" class=\"recipient_email_input\" id=\""+name+"\" itemid=\"" + ind + "\"  name=\"people[" + email+ "][email]\" value=\""+email+ "\"/>";
	return "<div itemid=\"" + ind + "\" class=\"email_item\" style=\"background-color: #e4f3ff;\"><table width=\"100%\">	<tr><td>"+ input + input2 + input3 +"<span>" + name + "</span></td><td width=\"300\" align=\"center\" class=\"role_align\"><select itemid=\"" + ind + "\" class=\"users_roles normal_input\"></select></td><td width=\"25\" align=\"right\"><a class=\"delete_email\" itemid=\"" + ind + "\" " + ((bc)?"bc=\"" + bc +"\"":'')+ " href=\"\"><img src=\"/images/delete_ico.gif\"/></a></td></tr></table>";
}
function addDropboxEmail(ind, name, email, id, role, bc){
	var input = ''; 
	if (id > 0)
		input = "<input type=\"hidden\" name=\"people[" + email+ "][id] \" value=\""+id+ " \"/>";

	if (role<1) {
		role = 3;
		if ($("input[name='subscriptions']:checkbox").attr('checked') == true) {
			role = $("select[name='default_role']").val();
		}
	} 
	var input2 = "<input type=\"hidden\" class=\"role_input\" itemid=\"" + ind + "\"  name=\"people[" + email+ "][role]\" value=\""+role+"\"/>";
	var input3 = "<input type=\"hidden\" class=\"recipient_email_input\" id=\""+name+"\" itemid=\"" + ind + "\"  name=\"people[" + email+ "][email]\" value=\""+email+ "\"/>";
	return "<tr itemid=\"" + ind + "\" ><td>"+ input + input2 + input3 +"<span>" + name + "</span></td><td width=\"150\" align=\"center\" class=\"role_align\">"+ ((iReviewerRolesEnabled == 1)?"<select itemid=\"" + ind + "\" class=\"users_roles normal_input\"></select>":'&nbsp;') +"</td><td width=\"20\" align=\"right\"><a class=\"ddelete_email\" itemid=\"" + ind + "\" " + ((bc)?"bc=\"" + bc +"\"":'')+ " href=\"\"><img src=\"/images/delete2_ico.gif\"/></a></td></tr>";
}
function addFile(ind, name, bc, isurl){
	var truncName = name;
	if (name.length > 80){
		truncName = name.substr(0,80)+'...';
	}
	return "<div itemid=\"" + ind + "\" class=\"file_item\" style=\"background-color: #e4f3ff;\"><table width=\"100%\">	<tr><td>" + ( isurl ? "<input type=\"hidden\" name=\"urls[]\" value=\""+name+"\" />" : "" ) + "<span>" + truncName + "</span></td><td width=\"31\" align=\"right\"><a class=\"delete_file\" itemid=\"" + ind + "\" href=\"\"><img src=\"/images/delete_ico.gif\"/></a></td></tr></table>";
}
function addDropboxFile(ind, name, isurl, first){
	var aClass = ''
	if (first){
		aClass = 'last'; 
	}
	return '<tr class="first '+aClass+' '+( isurl ?'is_url': '') + '">'+
				'<td>'+
					'<span>'+name+'</span>'+
				 ( isurl ? "<input type=\"hidden\" name=\"urls[]\" value=\""+name+"\" />" : "" ) +
				'</td>'+
				'<td width="31" align="right">'+
					'<a class="delete_dropbox_file" itemid="'+ind+'" href="">'+
					'<img src="/images/delete2_ico.gif"/></a>'+
				'</td>'+
			'</tr>';
}

/**
 * basecamp intergration
 */
$.fn.bascampIntegration = function(){
	
	$("#Integration_1").live('click', function(){
		var th = $(this)
		if (th.attr('checked')) {
			$.post(links['basecamp_data_provider'], {}, function(data){
				$(".basecamp_projects").html(data);
				$(".basecamp:not(.not_added)").fadeIn('fast', function(){
					th.addClass('selected')
				})
				$(".basecamp_box.bs_box").css('display', 'block')
			})
		} else {
			$(".basecamp_box.bs_box").fadeOut('fast', function(){
				th.removeClass('selected')
			})
		}
		updatePage();
	})
	
	$("#Integration_2").live('click', function(){
		var th = $(this)
		if (th.attr('checked')) {
			$(".huddle_box.bs_box").css('display', 'block')
		} else {
			$(".huddle_box.bs_box").fadeOut('fast', function(){
				th.removeClass('selected')
			})
		}
		updatePage();
	})
	$(".huddle_box.bs_box .basecamp_close").live('click', function(){
		$(this).parents(".bs_box").fadeOut('fast', function(){
			$("#Integration_2").attr('checked', false);
		})
		updatePage();
	})
	
	$(".basecamp_box.bs_box .basecamp_close").live('click', function(){
		$(this).parents(".bs_box").fadeOut('fast', function(){
			$("#Integration_1").attr('checked', false);
		})
		updatePage();
	})
	$(".refresh_basecamp").live('click',function(){
		var th = $(this)
		$.post(links['basecamp_data_provider_refresh'], {}, function(data){
			$(".basecamp_projects").html(data);
			$(".basecamp").fadeIn('fast', function(){
				th.addClass('selected')
			})
		})     
	})
	$("#basecamp_project").livequery('change', function(){
		var th = $(this);
		$.get(links['basecamp_data_provider_categories'], {'project' : th.val()}, function(data){
			$("td.basecamp_categories").html(data);
			$("tr.basecamp_categories").show()
			$("tr.basecamp_categories").removeClass('not_added')
			checkWindow();
			$.get(links['basecamp_data_provider_people'], {'project' : th.val()}, function(data){
				$("tr.basecamp_people").remove();
				$("tr.basecamp_categories").after(data)
				$(".basecamp_people").show()
				checkWindow();
			})
		})
	})
	$("input[name='basecamp_people[]']").live('click', function(){
		var th = $(this)
		if (th.attr('checked')) {
			var attr = $(this).attr('json');
			attr = eval('(' + attr + ')');
			
			var contact = '';
			$.each(contacts, function(i,el) {
				if(el.email == attr.email) {
					contact = el;
					return;
				}
			});
			
			var html = addEmail((oIndex++), contact != '' && contact.index ? contact.index : attr.email, attr.email, 0, 0, th.val() );
			$('#emails').val(attr.email);
			if ($("div.email_item").length == 1) {
				$("div.email_item[itemid='-1']").css('display', 'none');
			}
			$(".emails_container").append(html);

			$.setSelectOptions($(".emails_container").find("select[itemid='" + (oIndex - 1) + "']"), contact != '' && contact.is_user ? userRoles : nonUserRoles);
			
			if(contact != '' && contact.role) {
				$(".emails_container").find("select[itemid='" + (oIndex - 1) + "']").val(contact.role);
			}
			else if($('#default_role').length > 0) {
				$(".emails_container").find("select[itemid='" + (oIndex - 1) + "']").val($('#default_role').val());
			}
			else {
				$(".emails_container").find("select[itemid='" + (oIndex - 1) + "']").val(3);
			}
			
			//$(".email_item").animate( { backgroundColor: 'white' }, 2000); 
		} else {
			var bc_attr = th.val();
			if (bc_attr){
				$("a.delete_email[bc='" + bc_attr + "']").click();
			}
		}
	})
}  

$.detailsBascampIntegration = function(){
	
	$("input[name='toggle_BC']:checkbox").live('click', function(){
		
		var th = $(this)
		if (th.attr('checked') == true) {
			$(".ToggleBy-BC:not(.basecamp_people)").show();
			$.post(links['basecamp_data_provider'], {}, function(data){
				$(".basecamp_projects").html(data);
				//$(".basecamp_projects").css('display', 'block')
				$(".basecamp:not(.not_added)").fadeIn('fast', function(){
					th.addClass('selected')
				})
				$(".bs_box").css('display', 'block')
				checkWindow();
				updatePage();
			})
		} else {
			$(".bs_box").fadeOut('fast', function(){
				th.removeClass('selected')
			})
			$(".ToggleBy-BC").fadeOut();
		}
	})
	$(".refresh_basecamp").click(function(){
		var th = $(this)
		$.post(links['basecamp_data_provider_refresh'], {}, function(data){
			$(".basecamp_projects").html(data);
			$(".basecamp").fadeIn('fast', function(){
				checkWindow();
				th.addClass('selected')
				updatePage();
			})
		})     
	})
 }  


$.showContent = function(data){
	if (data.error == 0){
		var container = ".page_content";
		if (data.container){
			container = data.container;
		}
		$(container).fadeOut('fast', function(){
			$(container).html(data.content);
			$(container).fadeIn('fast', function(){
				updatePage();
				setTimeout("updatePage();", 500);
			});
		})
	} else{
		if ((data.error == 3)&&(data.moveto)&&(data.moveto == 1)){
			$(".header_submenu.header_workspace .error").html(data.content)
														.fadeIn('fast');
		} else {
			var d = $("<div />").attr('rel', '{"title" : "Info", "content" : "<p>'+ data.content + '</p>"}');
			d.dialogInfo();
		}
	}  
}
$.toolbarDelete = function(){
	$("#toolbar ul li a.deletem").click(function(){
		var checkboxs_selected = $.getSelected();
		if ($(".account_confirm[name='delete_selected']").length > 0) {
	  
			  	var items = $("input[name='profiles[]']:checkbox:checked");
			  	
			  	var th = $(".account_confirm[name='delete_selected']");
			  	if (items.length > 0) {
			  		var rel = th.attr('rel');
			  		if (rel.length > 0) {
			  			rel = eval('(' + rel + ')')
			  			var d = $('<div />').attr('title', rel.title).html(rel.content)
			  			var buttons = {};
			  			buttons[_('Cancel')] = function(){
			  				$(this).dialog('destroy');
			  				$(this).remove();
			  			};
			  			buttons[_('Confirm')] = function(){
			  			
			  				th.attr('checked', 1);
			  				th.parents('form').prepend('<input name="' + th.attr('name') + '" type="hidden" value="' + th.val() + '"/>');
			  				th.parents('form').submit();
			  				$(this).dialog('destroy');
			  				$(this).remove();
			  				return false;
			  			};
			  			d.phqDialog({
			  				'draggable': false,
			  				'modal': true,
			  				'resizable': false,
			  				buttons: buttons
			  			});
			  		}
			  		return false;
			  	}
	  }
		if (checkboxs_selected.length == 0){
			//check if ws

			if ($("#workspace_details").length == 1){
				checkboxs_selected[0] = $("#workspace_details").attr('rel');
				checkboxs_selected_type = 'workspace';
			} else if ($("#item_details").length == 1){
				checkboxs_selected[0] = $("#item_details").attr('rel');
				checkboxs_selected_type = 'file';
			} else if ($("#contact_details").length == 1){
				checkboxs_selected[0] = $("#contact_details").attr('rel');
				checkboxs_selected_type = 'contact';
			} else if ($("#group_details").length == 1){
				if ($('.items_checkboxes:checked').length > 0){
					var rel = $("input[name='delete_selected']").attr('rel');
					if (rel.length > 0){
						rel = eval('(' + rel + ')')
						var d = $('<div />').attr('title', rel.title ).html(rel.content)
						var buttons = {};
						buttons[_('Cancel')] = function(){
							$(this).dialog('destroy');
							$(this).remove();
						};
						buttons[_('Confirm')] = function(){
							$("form#usersform").submit();
							$(this).dialog('destroy');
							$(this).remove();
							return false;
						};
						d.phqDialog({
							'draggable' : false,
							'modal' : true,
							'resizable' : false,
							buttons : buttons
						});
					}
					return false;
				} else{
					checkboxs_selected[0] = $("#group_details").attr('rel');
					checkboxs_selected_type = 'group';
				}
			} else {
				if (checkboxs_selected.length > 0){
					if (checkboxs_selected[0].indexOf('{') == 0){
						var currentRel = eval('(' + checkboxs_selected[0] + ')');
						if (currentRel && (currentRel.type)){
							checkboxs_selected_type = currentRel.type;
						}
					}	
				}
			}
				
		}
		if($("#type") && $("#type").val() == 'trash'){
			checkboxs_selected_type = 'trash';
		}
		//c(checkboxs_selected.length);
		if ((checkboxs_selected.length > 0)&&(links[checkboxs_selected_type + '_toolbar_delete'])){
			$.post(links[checkboxs_selected_type + '_toolbar_delete'],{
					'items[]': checkboxs_selected,
					'type' : checkboxs_selected_type
				}, function(data){
					if(data && data.reload) {
						document.location = document.location.href;
					}
					else {
						$.showContent(data);
					}
				}, 'json');
		} else {
			var d = $("<div />").attr('rel', '{"title" : "Info", "content" : "<p>Please select items to delete.</p>"}');
			d.dialogInfo();
		}
		return false;
	})
}

$.toolbarMore = function(){
	$("#toolbar ul li div.header_submenu.toolbar_more a").live('click', function(){
		var th = $(this);
		var checkboxs_selected = $.getSelected();
		if (checkboxs_selected.length == 0){
			//check if ws
			if ($("#item_details").length == 1){
				checkboxs_selected[0] = $("#item_details").attr('rel');
				checkboxs_selected_type = 'file';
			}
		}
		
		if ((checkboxs_selected_type == 'file')&&(checkboxs_selected.length > 0)){
			if (th.attr('rel') == 'more_change_owner'){
				$.post(links[th.attr('rel')],{
					'items[]': checkboxs_selected,
					'type' : checkboxs_selected_type,
					'reload' : 1
				}, function(data){
					
					if (data.error == 1){
						var d = $('<div />').attr('title', _('Information') ).html(data.content)
						var button = {};
						button[_('Ok')] = function(){
							$(this).dialog('close');
							$(this).dialog('destroy');		
							location.reload(true);		
						};
						d.phqDialog({
							'draggable' : false,
							'modal' : true,
							'resizable' : false,
							buttons : button
						});
					} else {
						var d = $("<div />").attr('rel', 
							"{ 'title' : '"+_('Change owner')+"','submit':'Submit',  'cancel' : '"+ _('Cancel')+"'}"
						);
						d.dialogForm(links[th.attr('rel')+'_submit'], data.content);
					}
				}, 'json');				
			} else {
				$.post(links[th.attr('rel')],{
					'items[]': checkboxs_selected,
					'type' : checkboxs_selected_type,
					'reload' : 1
				}, function(data){
					if (data.error == 0){
						if (data.reload == 1){
							location.reload(true);
						}
					} else {
						$.showInfoDialog(data.content);
					}
				}, 'json');
			}
		}
		return false;
	})
}

$.fn.dialogForm = function(action, content) {
		var th = $(this);
		var params = eval('(' + th.attr('rel') + ')');
		var dialog = $('<div />').attr('title', params.title).html(content)
		var buttons2 = {};
		buttons2[params.cancel] = function(){
			$(this).dialog('close');
			$(this).dialog('destroy');				
		};
		buttons2[params.submit] = function(){
			var checkboxs_selected = $.getSelected();
			if (checkboxs_selected.length == 0){
				//check if ws
				if ($("#item_details").length == 1){
					checkboxs_selected[0] = $("#item_details").attr('rel');
					checkboxs_selected_type = 'file';
				}
			}
				dialog.dialog('close');
				dialog.dialog('destroy');	
			$.post(action,{
				'items[]': checkboxs_selected,
				'type' : checkboxs_selected_type,
				'user' : $("#new_owner").val()
			},function(data){
					
				var button = {};
				var d = $('<div />').attr('title', _('Information') ).html(data.content)
				button[_('Ok')] = function(){
					$(this).dialog('close');
					$(this).dialog('destroy');		
					location.reload(true);		
				};
				d.phqDialog({
					'draggable' : false,
					'modal' : true,
					'resizable' : false,
					buttons : button
				});
			}, 'json')
		};
		
		dialog.phqDialog({
			'draggable' : false,
			'modal' : true,
			'resizable' : false,
			buttons : buttons2
		});
		return false;
};

$.showInfoDialog = function(content){
	
	var d = $('<div />').attr('title', 'Information' ).html(content);
	var buttons = {};
	buttons[_('OK')] = function(){
		$(this).dialog('close');
		$(this).dialog('destroy');
		$(this).remove();
	};
	d .dialog({
		'draggable' : false,
		'modal' : true,
		'resizable' : false,
		buttons : buttons
	});
	
}

$.checkboxSelecting = function(){
	$("input.all_items:checkbox").live('click', function(){
		if ($(this).attr('checked')){
			var items = $(this).parents('table').find('input.items_checkboxes');
			$.each(items,function(i, item){
				$(item).attr('checked','on')
			});
		} else {
			$.each($("input.items_checkboxes"),function(i, item){
				$(item).attr('checked',false)
			});
		}
	})
}
$.getSelected = function(){
	var items = $("input.items_checkboxes[type='checkbox'][rel]:checked");
	var retItems = [];
	if (items.length > 0){
		var rel =  $(items[0]).attr('rel');
		if (rel) {
			var relOb = eval('(' + rel + ')');
			checkboxs_selected_type = relOb.type;
			
			$.each(items, function(i, item){
				if ($(item).attr('rel')) 
					retItems.unshift($(item).attr('rel'))
			})
		}
	}
	return retItems;
}
$.toolbarMoveTo = function(){
	$("#toolbar ul li div.header_submenu a.item").live('click', function(){
		var allTh = $("#toolbar ul li div.header_submenu a.item")
		allTh.removeClass('selected');
		$(this).addClass('selected');
		var destiny = "{'new_workspace_id' : " + $(this).attr('itemid') + "}";
		$("#toolbar ul li div.buttons a.save_button").attr('rel', destiny)
		return false;
	}) 
	$("#toolbar ul li div.header_submenu .buttons .move_to_save_button").click(function(){
		var th = $(this);
		var checkboxs_selected = $.getSelected();
		if (checkboxs_selected.length == 0){
			//check if ws
			if ($("#workspace_details").length == 1){
				checkboxs_selected[0] = $("#workspace_details").attr('rel');
				checkboxs_selected_type = 'workspace';
			} else if ($("#item_details").length == 1){
				checkboxs_selected[0] = $("#item_details").attr('rel');
				checkboxs_selected_type = 'file';
			} else {
				$(".buttons .error").css('display', 'block')
				return false;
			}				
		}
		var rel = $(this).attr('rel')
		if (rel){
			rel = eval('(' + rel + ')');
		} 
		
		if ((rel)&&((rel.new_workspace_id > 0)||(rel.new_workspace_id == -1))){

			if (checkboxs_selected.length > 0){
				$.post(links[checkboxs_selected_type+ '_toolbar_moveto'],{
					'items[]': checkboxs_selected,
					'new_workspace_id' : rel.new_workspace_id,
					'type' : checkboxs_selected_type
				}, function(data){
					data['moveto'] = 1;
					$.showContent(data);
					if (data.error != 3){
						th.parents('.header_workspace').css('display', 'none')
						th.parents('li.has_submenu').removeClass('has_submenu selected')
					}
				}, 'json');
				$(this).parents('.header_workspace').css('display', 'none')
				$(this).parents('li.has_submenu').removeClass('has_submenu selected')
			} else {
				$(this).parents('.header_workspace').css('display', 'none')
				$(this).parents('li.has_submenu').removeClass('has_submenu selected')
			}
			 
		} else {
			$(".buttons .error").css('display', 'block')
			return false;
			/*
			*/
		}
		//$(this).parents('.header_workspace').css('display', 'none')
		//$(this).parents('li.has_submenu').removeClass('has_submenu selected')
		return false;
	})
	$("#toolbar ul li div.header_workspace .buttons .cancel_button").click(function(){
		$(this).parents('.header_workspace').css('display', 'none')
		$(".buttons .error").css('display', 'none')
		$(this).parents('li.has_submenu').removeClass('has_submenu selected')
		return false;
	})
};

$.workspacesDropToWorkspaces = function(){
	$("table.workspaces_table tr td img.drag_handle").livequery(function(){
		$(this).draggable({
			helper: function(event) {
				//dodac id, oraz
				return $('<div class="item-draggable-header"></div>');
			},cursor: 'move',
			cursorAt: { top: 0, left: 0},
			start : function(event, ui){
				var th = $(this);
				var rel =  th.attr('rel');
				if (rel){
					rel = eval('(' + rel + ')');
					var item = $("<div />").addClass('dragg-helper').html(rel.name)
					$("body").prepend(item)
				}
			},
			drag: function(event, ui) { 
				$('.dragg-helper').css({'top' : (event.pageY) , 'left' : (event.pageX + 20) })
			},
			stop: function (event, ui){
				$('.dragg-helper').remove();
			}  
		})
	});
}
$.proofMiniDetails = function(){
	var current_tr_content = {};
	$("table.proofs_table tr td a.mini_details").live('click', function(event){
		var th = $(this);
		var itemid = th.attr('itemid');
		var expand = (th.hasClass('expand')?1:0);
		var prevElem = $("tr[itemid='"+itemid+"']").prev()
		//c("tr[rel][itemid='"+itemid+"']");
		//c(prevElem);
		//c($(".tr_"+itemid+".no_border").prev('[item'));
		//prevElem.after('<tr><td>dupa</td></tr>')
		//return false;
		var isChecked = $("input.items_checkboxes[value='"+ itemid +"']").attr('checked')?1:0;
		$(".context_menu").removeClass('selected')
		$(".context_menu_proof").removeClass('visible')
								.css('display', 'none');
		th.toggleClass('expand');
		//current_tr_content[itemid] = {}
		$.post(links['proof_item_ajax_details'], {
			'action': 'item_details',
			'id': itemid,
			'checked' : isChecked,
			'expand' : expand,
			'view_id' : ($("#__filter").val())?$("#__filter").val():0
		}, function(data){
			
			if (expand){
				$(".tr_"+itemid).remove();
			} else {
				prevElem.next().remove();	
			}
			prevElem.after(data);
			return false;
			updatePage();
		})
		updatePage();
	});
}
$.filesDropToWorkspaces = function(){
	$("table.proofs_table tr td img.drag_handle, div.proof_item").livequery(function(){
		$(this).draggable({
			helper: function(event) {
				return $('<div class="item-draggable-header"></div>');
			},cursor: 'move'
			,
			cursorAt: { top: 0, left: 0},
			start : function(event, ui){
				var th = $(this);
				var rel =  th.attr('rel');
				if (rel){
					rel = eval('(' + rel + ')');
					var item = $("<div />").addClass('dragg-helper').html(rel.name)
					$("body").prepend(item)
				}
			},
			drag: function(event, ui) { 
				$('.dragg-helper').css({'top' : (event.pageY ) , 'left' : (event.pageX + 20) })
			},
			stop: function (event, ui){
				$('.dragg-helper').remove();
			}  
		});
	});
		
	var cont_ws_selector = $("#page .left_sidebar .menu_item.workspaces .submenu");
	
	$(".workspaces .submenu a.item, .menu_item.dropbox").livequery(function(){
		$(this).droppable({
			hoverClass: 'bold',
			drop: function(event, ui){
				var itemid = ui.draggable.attr('itemid');
				var type = 'file';
				if (ui.draggable.attr('type')){
					type = ui.draggable.attr('type');
				}
				var type_id = type + '_id';
				var new_workspace_id = $(event.target).attr('itemid');
				
				if ((type == 'workspace') && (new_workspace_id == -1)){
					return false;
				}
				if ((itemid > 0)&&(new_workspace_id != 0)){
					var params = {'new_workspace_id': new_workspace_id};
					params[type_id] = itemid; 
					$.post(links[type+'_drop_workspace'], params, function(data){
						if (data.reload == 1){
							location.reload(true);
							return false;
						}	
						$.showContent(data);
						if (data.tree){
							cont_ws_selector.html(data.tree)
							cont_ws_selector.workspacesTreeview();
							$("#page .left_sidebar .menu_item.workspaces div.submenu a.item[level=1]").parent().show();
						}
					},'json')
				}
			}
		});
		$(this).draggable({
			helper: function(event) {
				return $('<div class="item-draggable-header"></div>');
			},cursor: 'move'
			,
			start : function(event, ui){
				var th = $(this);
				var item = $("<div />").addClass('dragg-helper').html(th.html())
				$("body").prepend(item)
			},
			drag: function(event, ui) { 
				$('.dragg-helper').css({'top' : (event.pageY) , 'left' : (event.pageX + 20) })
			},
			stop: function (event, ui){
				$('.dragg-helper').remove();
			}
		});
	})
	/*
	$(".workspace-dropp").livequery(function(){
		$(this).droppable({
			drop : function(event, ui){
				var rel = $(this).attr('rel');
				if ((rel)&&(!$(ui.draggable).hasClass("resize_elem") )){
					rel = eval('(' + rel + ')');
					var itemid = $(ui.draggable).attr('itemid')
					var params = {'new_workspace_id' : rel.workspace_id, 'workspace_id' : itemid};
					$.post(links['workspace_drop_workspace'], params, function(data){
						if (data.reload == 1){
							location.reload(true);
							return false;
						}	
						$.showContent(data);
						
						if (data.tree){
							cont_ws_selector.html(data.tree)
							cont_ws_selector.workspacesTreeview();
							$("#page .left_sidebar .menu_item.workspaces div.submenu a.item[level=1]").parent().show();
						}
					},'json')
				}
			} 
		})
	})
	*/
	//dropp in ws details beetween subwss
	$(".workspace_subworkspaces table tr, .workspace_subworkspaces .ws_item ").livequery(function(){
		$(this).droppable({
			drop : function(event, ui){
				var rel = $(this).attr('rel');
				if (( rel )&&( rel.length > 0 )){
					rel = eval('(' + rel + ')');
					var itemid = $(ui.draggable).attr('itemid')
					var params = {'new_workspace_id' : rel.itemid, 'file_id' : itemid, 'reload' : 1};
						
					$.post(links['file_drop_workspace'], params, function(data){
						
						if (data.error == 0){
							if (data.reload == 1){
								location.reload(true);
							}
						}
					},'json')
				}
			} 
		})
	})
	
	$(".menu_item.workspaces .main").livequery(function(){
		$(this).droppable({
			hoverClass: 'bold',
			drop : function(event, ui){
				var itemid = $(ui.draggable).attr('itemid')
				var type = 'file';
				if (ui.draggable.attr('type')){
					type = ui.draggable.attr('type');
				}
				var type_id = type + '_id';
				var params = {'new_workspace_id' : 0};
				params[type_id] = itemid;
				$.post(links['workspace_drop_workspace'], params, function(data){
					if (data.reload == 1){
						location.reload(true);
						return false;
					}					
					$.showContent(data);
					if (data.tree){
						cont_ws_selector.html(data.tree)
						cont_ws_selector.workspacesTreeview();
						$("#page .left_sidebar .menu_item.workspaces div.submenu a.item[level=1]").parent().show();
					}
				},'json')
			}	 
		})
	})
}

$.fn.sharingWorkspaceItems = function() {
	$(this).live('click', function(event) {
		event.preventDefault();
		
		$('.ajax_loader').html('&nbsp;');
		
		var selected_shared_form = $('<form />')
			.appendTo($('.ajax_loader'))
			.css('visibility', 'visible')
			.attr('id', 'dupa')
			.attr('action', $(this).attr('href'))
			.attr('method', 'post');
		
		$.each($('.wsitems input.items_checkboxes[type=checkbox]'), function(i, el){
			if(el.checked) {
				$('<input />')
					.attr('name', 'files[]')
					.attr('type', 'hidden')
					.appendTo(selected_shared_form)
					.val($(el).val());
			}
		});
		
		selected_shared_form.submit();
	});
}

$.fn.confirmDialog = function(){
	$(this).live('click', function(){
		var th = $(this);
		var rel = $(this).attr('rel');
		if (rel.length > 0){
			rel = eval('(' + rel + ')');
			var d = $('<div />').attr('title', rel.title ).html(rel.content)
			var buttons = {};
			buttons[_('Cancel')] = function(){
				$(this).dialog('close');
				$(this).dialog('destroy');
				$(this).remove();
			};
			buttons[_('Confirm')] = function(){
				location.href = th.attr('href');
				$(this).remove();
			};
			d .phqDialog({
				'draggable' : false,
				'modal' : true,
				'resizable' : false,
				buttons : buttons
			});
		}
		return false;
	})
}
$.fn.infoDialog = function(){
	$(this).live('click', function(){
		var th = $(this);
		var rel = $(this).attr('rel');
		if (rel.length > 0){
			rel = eval('(' + rel + ')');
			var d = $('<div />').attr('title', rel.title ).html(rel.content)
			var buttons = {};
			buttons[_('OK')] = function(){
				$(this).dialog('close');
				$(this).dialog('destroy');
				$(this).remove();
			};
			d .dialog({
				'draggable' : false,
				'modal' : true,
				'resizable' : false,
				buttons : buttons
			});
		}
		return false;
	})
}
$.fn.changeOwnerDialog = function(){
	$(this).live('click', function(){
		var th = $(this);
		var rel = $(this).attr('rel');
		if (rel.length > 0){
			rel = eval('(' + rel + ')');
			var content_html = '<form > </form>'
			var d = $('<div />').attr('title', rel.change_title ).html(rel.change_content)
			var buttons = {};
			buttons[_('Cancel')] = function(){
				$(this).dialog('close');
				$(this).dialog('destroy');
				$(this).remove();
			};
			buttons[_('Change owner')] = function(){
				//location.href = rel.link_to_file;
				$(this).remove();
			};
			d.phqDialog({
				'draggable' : false,
				'modal' : true,
				'resizable' : false,
				buttons : buttons
			});
		}
		return false;
	})
}
$.fn.updateCells = function(){
	var th = $(this);
	var tab = $(this).parents('table').css('width')
	$(this).css('width', (parseInt(tab) / 5 ) +'px');
} 
$.fn.phqDialog = function(options){
	var defaults = 
	{
		open : function(){
			$("button:contains("+_('Cancel')+")").css({
				'background' : '#FAFAFA url(/css/images/ui-bg_flat_100_fafafa_40x100.png) repeat-x scroll 50% 50%',
				'border'	 : '1px solid transparent',
				'color'		 : '#FB503E'
			})
			$(".context_menu_proof").removeClass('visible')
									.css('display', 'none')
			$(".context_menu").removeClass('selected')
			$(".ui-dialog-buttonpane button:last").focus();
		}
	}
	var defaults = $.extend(defaults, options);
	
	return $(this).dialog(defaults);
}

$.fn.pickList = function(){
	var counter = ($(".pick_list_table tr[itemid]").length + 1);
	checkArrows();
	$("#add_pick_list").livequery(function(){
		$(this).keypress(function(e){
			if (e.keyCode == 13){
				$(".add_to_pick_list").click();
				return false;
			}
		})
	})
	$(this).live('click', function(){
		var sPickListVal = $("#add_pick_list").val()
		
		counter = ($(".pick_list_table tr[itemid]").length + 1);

		if (sPickListVal){
			addField(sPickListVal);
			$("#add_pick_list").val('');
			checkArrows()
			updatePage();
		}
		return false;
	})
	var itemList = '';
	var defValue = ''
	$(".new_custom_field_table select#custom_type").livequery(function(){
		$(this).change(function(){
			var th = $(this);

			if ($('.pick_list_table tr[itemid]').length > 0){
				itemList = $('.pick_list_table').html();
				defValue = $("#default_value").html()
			}
			$.proofPOST(links['new_field_changetype'], {'custom_type' : th.val(), 'container' : '.new_custom_field_table'}, function(data){
				updateDefValField()
				$("#default_value").focus();
				if (( $('.pick_list_table').length == 1) && (itemList.length > 10)){
					$('.pick_list_table').html(itemList)	
					$("#default_value").html(defValue)
					itemList = '';
					defValue = '';
				}
			}, 'json');
		})
	})
	function addField(value){
		var html = '<tr itemid="'+ (counter) +'"><td class="left"><img rel="{\'id\' : '+(counter)+'}" class="cfo_drag_handle ui-draggable" src="/images/move_ico.gif"/> '+ (counter) +'</td><td><input type="text" class="normal_input" value="'+value+'" name="new_pick_list[]"/>&nbsp;&nbsp;<input type="hidden" name="order[]" value="-1"/> <a class="up">&nbsp;</a> <a class="down">&nbsp;</a> <a href="" class="delete_field"><img src="/images/delete_ico.gif"/></a></td></tr>';
		counter++;
		$(".pick_list_table tr.new_pick_list_row").before(html);
		updateDefValField()
	}
	function updateDefValField(){
		
		if ($(".new_custom_field_table #default_value").length == 1){
			var options = [];
			options[0] = $(".new_custom_field_table #default_value option[value='0']").html();
			$.each($("input[name='new_pick_list[]']"), function(i, item){
				options[i + 1] = $(item).val()
			})
			var currentVal = $(".new_custom_field_table #default_value").val();
			$(".new_custom_field_table #default_value").html('');

			$.setSelectOptions($(".new_custom_field_table select#default_value"), options)
			
			if (currentVal == null){
				currentVal = 1;
			}  
			if (options.length == 1){
			
				$(".new_custom_field_table select#default_value").val(0)
			} else {
				
				$(".new_custom_field_table #default_value").val(currentVal);
			}
			
		}
	}
	
	
	function updateIds(){
		var tmp_counter = 1;
		$.each($(".pick_list_table tr[itemid]"),function (i, item){
			$(item).attr('itemid', tmp_counter);
			$(item).children('td.left').html('<img src="/images/move_ico.gif" class="cfo_drag_handle ui-draggable" rel="{\'id\' : '+tmp_counter+'}"/> '+tmp_counter)
			tmp_counter++;
		});
	}
	$(".delete_field").live('click', function(){
		var itemid = $(this).parents('tr').attr('itemid');
		$(".pick_list_table tr[itemid='"+itemid+"']").remove();
		updateIds();
		counter--;
		checkArrows();
		updateDefValField()
		return false;
	})
	$('.pick_list_table .up:not(.disable)').live("click", function(){
		var itemid = $(this).parents('tr').attr('itemid');
		var html = $("tr[itemid='"+itemid+"']").html();
		var prev_elem = $("tr[itemid='"+itemid+"']").prev('[itemid]');
		if (!prev_elem.hasClass('header')){
			$("tr[itemid='"+itemid+"']").remove();
			prev_elem.before('<tr itemid="'+itemid+'">'+html+'</tr>');
			$("tr[itemid='"+itemid+"']").children('td.left').html(itemid - 1)
			$("tr[itemid='"+itemid+"']").attr('itemid', itemid - 1);
			prev_elem.children('td.left').html(itemid)
			prev_elem.attr('itemid', itemid);
			updateIds();
			checkArrows();
			updateDefValField();
		}
		return false;
	})
	$('.pick_list_table .down:not(.disable)').live("click", function(){
		var itemid = parseInt($(this).parents('tr').attr('itemid'));
		var html = $("tr[itemid='"+itemid+"']").html();
		var next_elem = $("tr[itemid='"+itemid+"']").next('[itemid]');
		if (!next_elem.hasClass('new_pick_list_row')){
			$("tr[itemid='"+itemid+"']").remove();
			next_elem.after('<tr itemid="'+itemid+'">'+html+'</tr>');
			$("tr[itemid='"+itemid+"']").children('td.left').html(itemid + 1)
			$("tr[itemid='"+itemid+"']").attr('itemid', itemid + 1);
			next_elem.children('td.left').html(itemid)
			next_elem.attr('itemid', itemid);
			updateIds();
			checkArrows();
			updateDefValField()
		}
		return false;
	})
	var fields_changed = false;
	$("input[name^='new_pick_list']").livequery(function(){
		$(this).keypress(function(){
			if ($(this).next().val() != -1){
				fields_changed = true;
			}
		})
	})
	$(".pick_list_table").livequery(function(){
		fields_changed = false
	})
	$(".check_fields").live('click', function(){
		var th = $(this);
		$('#container').val('.field_type');
		if (fields_changed){
			rel = eval('(' + th.attr('rel') + ')');
			var d = $('<div />').attr('title', rel.title ).html(rel.content)
			var buttons = {};
			buttons[_('No')] = function(){
				$(this).dialog('close');
				$(this).dialog('destroy');
				$(this).remove();
				th.parents('form.ajax_form').submit();
			};
			buttons[_('Yes')] = function(){
				$(this).remove();
				$("#update").val(1)
				th.parents('form.ajax_form').submit();
			};
			d.phqDialog({
				'draggable' : false,
				'modal' : true,
				'resizable' : false,
				buttons : buttons
			});
			return false;
		}
	})
	
	/**
	 * cf options sort
	 */
	$('.sort_asc').live('click', function(){
		//var aValues = takeValues();
		$("#sorting").val(1);
		$("#container").val('.pick_list_container')
		$(this).parents('form.ajax_form').submit();
		return false;
	})
	$('.sort_desc').live('click', function(){
		$("#sorting").val(2);
		$("#container").val('.pick_list_container')
		$(this).parents('form.ajax_form').submit();
		return false;
	})
	
	function takeValues(){
		var aReturn = new Array();
		var aItems = $(".pick_list_table input[name='new_pick_list[]']")
		if (aItems.length > 0){
			$.each(aItems, function(i, item){
				var sItem = 
				aReturn.push($(item).val() +':'+i)	
			})
		}
		return aReturn;
	}
	function putValues(aValues){
		var html = $("<table />").addClass('pick_list_table').attr('cellspacing', 0).attr('cellpadding', 0)
		if (aValues.length > 0){
			html.append($('<tr />').addClass('header').html($("table.pick_list_table tr.header").html()))
			$.each(aValues, function(i, item){
				var currRow = $('<tr />').attr('itemid', i + 1);
				var lastPos = parseInt(item.substring(item.lastIndexOf(':')+1)) + 1
				currRow.html($("table.pick_list_table tr[itemid='"+lastPos+"']").html())
				html.append(currRow);
			})
			html.append($('<tr />').addClass('new_pick_list_row').html($("table.pick_list_table tr.new_pick_list_row").html()))
			html.append($('<tr />').html($("table.pick_list_table tr .buttons_sc").parent().parent().html()))
			
			var handle = $("table.pick_list_table").parent();
			$("table.pick_list_table").remove();
			handle.prepend(html);
			updateIds();
			checkArrows();
		}
	}

	/**
	 * drag & drop handle
	 */
	$(".cfo_drag_handle").livequery(function(){
		var dragging = false;
		$(this).draggable({
			helper: function(event) {
				return $('<div class="item-draggable-header" style="display: none;"></div>');
			},cursor: 'move'
			,
			start : function(event, ui){
				dragging = true;
				var th = $(this);
				var rel =  th.attr('rel');
				if (rel){
					rel = eval('(' + rel + ')');
					var name = $(this).parent().next().find('input').val();
					var item = $("<div />").addClass('dragg-helper').html(name)
					$("body").prepend(item)
				}
			},
			drag: function(event, ui) { 
				$('.dragg-helper').css({'top' : (event.pageY ) , 'left' : (event.pageX + 20) })
			},
			stop: function (event, ui){
				$('.dragg-helper').remove();
			}  
		});
		$('.pick_list_table tr[itemid] td, .pick_list_table tr.header td').droppable({
			over : function(event, ui){
				$(".tr_drag_shadow").css('display', 'none')
				$(".tr_drag_shadow").addClass('to_delete')
				$(this).parents('tr:first').after("<tr class=\"tr_drag_shadow\"><td>&nbsp;</td><td>&nbsp;</td></tr>")
			},
			out : function(event, ui){
				$(this).parents('tr:first').next(".tr_drag_shadow").css('display', 'none')
				$(this).parents('tr:first').next(".tr_drag_shadow").addClass('to_delete')
			},
			drop : function(event, ui){
				$(".to_delete").remove()
				$('body').css('cursor', 'default');//DE1550
				var dragElRel = $(ui.draggable).attr('rel');
				if (dragElRel.length > 0){
					dragElRel = eval('(' + dragElRel + ')');
					var relOb = $(".pick_list_table tr[itemid="+ dragElRel.id +"]");
					var dropOb = $(".pick_list_table tr.tr_drag_shadow:not(.to_delete)");
					if(dropOb.length > 0){
						dropOb.html(relOb.html())
						relOb.find('td:last').html('')
						relOb.removeAttr('itemid').css('display', 'none')
					}
					dropOb.removeClass('tr_drag_shadow').attr('itemid', dragElRel.id);

					setTimeout("$('.pick_list_table tr:not([itemid]):not(.header):not(.new_pick_list_row):not(.pick_list_buttons)').remove()", 100); 
					checkArrows();
					updateIds();
				}
			}
		})
	});
}

function checkArrows(){
	$.each($(".pick_list_table tr[itemid]"),function (i, item){
		if (i == 0){
			$(item).find('a.up').addClass('disable');
		} else {
			$(item).find('a.up').removeClass('disable');
		}
		if (i == ($(".pick_list_table tr[itemid]").length - 1))
			$(item).find('a.down').addClass('disable')
		else
			$(item).find('a.down').removeClass('disable');
	});
}
$.fn.dateTimePicker = function(){
	$(this).livequery(function(){
		var th = $(this)
		var fieldName = th.attr('name');
		//var format = getcookie('s');
		//th.after($('<input type="hidden" name="' + fieldName.replace( 'picker', '' ) + 'date" />'))
		//dateForm.toString();
		//if(format.length > 0) {
			//format.dateformat = format.dateformat.replace('+', '-')
		//	format.dateformat = format.dateformat.replace('+', '-')
		//}
		
		//c(format);
		//c("input[name='"+fieldName.replace( 'picker', 'date' )+"']")
		//c(fieldName);
		//c("input[name='"+fieldName.replace( 'picker', 'date' )+"']");
		th.datepicker({
			dateFormat : getcookie('s').dateformat ? getcookie('s').dateformat.replace(/\+/g, ' ') : 'yy-mm-dd',
			changeMonth	: true,
			changeYear	: true,
			altField 	: "input[name='"+fieldName.replace( 'picker', 'date' )+"']", 
			altFormat 	:  'yy-mm-dd',
			onSelect 	: function(dataText, inst){
				if ((timeSelector.length == 1)&&(timeSelector.val() == 'hh:mm')){
					timeSelector.val('23:59');
				} else if ((timeSelector.length == 1)&&(timeSelector.val() != '')){
					var parts = timeSelector.val().split(':')
					if (parts.length != 2)
						timeSelector.val('23:59');
				}
			},
			beforeShow 	: function(input, inst){
			}
		});
		$("input[name='"+fieldName.replace( 'picker', 'date' )+"']").datepicker({
			dateFormat : 'yy-mm-dd'
		})
		if ($("input[name='"+fieldName.replace( 'picker', 'date' )+"']").val().length > 0){
			th.datepicker('setDate', $("input[name='"+fieldName.replace( 'picker', 'date' )+"']").datepicker('getDate'))
		} else {
			th.val(phrases['Click to select a date'])
		}
		var timeSelector = $("input[name='"+fieldName.replace( '[picker]', '[time]' )+"']") // $("input[name='"+fieldName.replace( 'picker', '' )+"time']")
		if (timeSelector.length == 1){
			if (timeSelector.val() == ''){
				timeSelector.val('hh:mm')
			}
			timeSelector.focus(function(){
				if ($(this).val() == 'hh:mm'){
					$(this).val('')
				}
			})
			timeSelector.blur(function(){
				if ($(this).val() == ''){
					$(this).val('hh:mm')
				}
			})
		}
		$(this).blur(function(){
			if (($(this).val() == '') || ($(this).val() == phrases['Click to select a date'])){
				$("input[name='"+fieldName.replace( 'picker', 'date' )+"']").val(phrases['Click to select a date']);		
			}
		})
	})
}
$.parentSelectInProofDetailsPage = function(){
	$(".select_parent_table .cancel_button").live('click', function(){
		$(".parent_field").parent().parent().addClass('hidden')
		$(".select_parent_row").find('.parent_edit_class').css('display', 'block')
		return false;
	})
	$(".select_parent_table tr td table tr td").live('click', function(){
		$(".select_parent_table tr td table tr").removeClass('selected')
		$(this).parent('tr').addClass('selected')
		$("#parent_id").val($(this).parent('tr').attr('id'));
		return false;
	})
	$(".parent_edit_class").click(function(){
		//$(this).addClass('ajax_edit_details');
		//$(this).removeClass('parent_edit_class');
		var th = $(this);
		var params = eval('(' + th.attr('rel') + ')');
		var prv = th.parent().prev('div.details');
		
		if ((params.container)&&(params.container.length > 0)){
			prv = $(params.container)
		}
		
			if (!((params.container)&&(params.container.length > 0))){
				prv.html(imgDetailsLoader)
			}
			prv.fadeIn(function(){
				$.post(links['ajax_edit_details'], params, function(data){
					prv.fadeOut('normal', function(){
						prv.html(data.content)
						prv.css('display', 'block')
						th.css('display', 'none')
						$(".parent_field").parent().parent().removeClass('hidden')
					})
				}, 'json')
			});
		return false;
	})
	$(".select_parent_table .submit_save_button").live('click', function(){
		$(this).parents('form').submit();
		return false;
	})
	$(".select_parent_table .search_ico").live('click', function(){
		$(this).parents('form').submit()
		return false;
	});
}
$.fn.validateDropbox = function(){
	$(this).click(function(){
		var th = $(this);
		if ($('.delete_dropbox_file[itemid]').length > 0){
			$(".no_file_error").css('display', 'none');
			var params = {'captcha' : $("#captcha").val()}
			params['email'] = $("#email").val();
			params['fixedEmail'] = 1;
			if ($("#email").length == 1){
				params['fixedEmail'] = 0;
			}
			$.post(links['dropbox_validate'], params,function(data){
				if (data.has_errors){
					if (data.errors.email){
						if ($("#email").parent().find('.error').length == 0){
							$("#email").prev().after('<div class="error">'+data.errors.email+'</div>');
							//$("#email").parent().find('label').insertAfter('<div class="error">'+data.errors.email+'</div>')
						}
					} else {
						$("#email").parent().find('.error').remove();
					}
					if (data.errors.captcha){
						if ($("#captcha").parent().find('.error').length == 0){
							$("#captcha").prev().after('<div class="error">'+data.errors.captcha+'</div>')
						}
					} else {
						$("#captcha").parent().find('.error').remove();
					}
					setTimeout("$('.buttons_process').remove();$('.buttons_sc.progress').removeClass('progress');",100)
					$(".refresh_captcha").click();
				} else {
					th.parents('form').submit();
				}
			},'json')
		} else {
			$(".no_file_error").css('display', 'block');
			setTimeout("$('.buttons_process').remove();$('.buttons_sc.progress').removeClass('progress');",100)
		}
		return false;
	})
}

$.fn.validateNewProof = function(){
	$(this).click(function(){
		
		
		var fields = $("[name^='customfields']");
		var params = {};
		if (fields.length > 0){
			$.each(fields, function(i, item){
				params[$(item).attr('name')] = $(item).val();
			})
		}
		params['deadline_time'] = $("input[name='deadline_time']").val();
		
		$.post(links['new_proof_validate'], params, function(data){
			
			fields.parent().find('p.error').remove();
			if (data.has_errors){
				$.each(data.errors, function(i, item){
				
					if(i.indexOf('_date') > 0) {
						var error = "<p class=\"error\">" + item + "</p>"
							var field = $("[name='customfields[" + i.replace('customfield_error_','').replace('_date','][picker') + "]']");
							if (field.parent().find('p.error').length == 0)
								field.parent().prepend(error)
					}
					else {
						var error = "<p class=\"error\">" + item + "</p>"
						var field = $("[name='customfields[" + i.replace('customfield_error_','') + "]']");
						if (field.parent().find('p.error').length == 0)
							field.parent().prepend(error)
					}
				});
				if (data.errors.Hour){
					if ($("td.date_picker .error").length == 0){
						$("td.date_picker").prepend('<p class="error">'+data.errors.Hour+'</p>');
					}
				}
			} else {
				if ($(".error.reviewers_error").css('display') == 'none'){
					$("form.new_proof_form").submit();
					$("form.version").submit();
				}
			}
			/**
			 * IE7 fix
			 */
			$(".add_file_button").css('width', $('.add_files').innerWidth())
		}, 'json')
		return false;
	})
}
$.fn.cfDropboxValidate = function(){
	$(this).click(function(){
		var th = $(this);
		var fields = $("[name^='customfields']");
		var params = {};
		if (fields.length > 0){
			$.each(fields, function(i, item){
				params[$(item).attr('name')] = $(item).val();
			})
		}
		$.post(links['dropbox_submission_validate'], params, function(data){
			fields.parent().find('div.error').remove();
			if (data.has_errors){
				$.each(data.errors, function(i, item){
					var error = "<div class=\"error\">" + item + "</div>"
					var field = $("[name='customfields[" + i.replace('customfield_error_','') + "]']");
					if (field.parent().find('p.error').length == 0)
						field.parent().prepend(error)
						
					setTimeout("$('.buttons_process').remove();$('.buttons_sc.progress').removeClass('progress');",100)
				});
			} else {
				th.parents('form').submit();
			}
		}, 'json')
		return false;
	})
}

$.newVisibilityRule = function(){
	
	$("#new_visibility_rule select[name='module_id']").change(function(){
		var th = $(this);
		params = {'module_id' : $(this).val(), 'rule_type' : $('#rule_type').val()};
		$.post(links['ajax_visibility_rule'], params, function(data){
			$(".crt_field").addClass('disabled')
			$(".crt_val").addClass('disabled')
			$("#new_visibility_rule select[name='dependent_field_id']").html('');
			$.setSelectOptions($("#new_visibility_rule select[name='dependent_field_id']"), data.dependentfields)
		}, 'json')
	})
	$("#new_visibility_rule select[name='dependent_field_id']").change(function(){
		var th = $(this);
		params = {'dependent_field_id' : $(this).val(), 'rule_type' : $('#rule_type').val()};
		$.post(links['ajax_visibility_rule'], params, function(data){
			$(".crt_field").removeClass('disabled')
			$(".crt_val").addClass('disabled')
			$("#new_visibility_rule select[name='controlling_field_id']").html('');
			$.setSelectOptions($("#new_visibility_rule select[name='controlling_field_id']"), data.controllingfields)
			
		}, 'json')
	})
	$("#new_visibility_rule select[name='controlling_field_id']").change(function(){
		var th = $(this);
		params = {'controlling_field_id' : $(this).val(), 'rule_type' : $('#rule_type').val()};
		$.post(links['ajax_visibility_rule'], params, function(data){
			$(".crt_val").removeClass('disabled')
			if (data.controllingoptions){
				var dep_values = '';
				$.each(data.controllingoptions, function(i, item){
					dep_values += '<div class="crt_value"><input type="checkbox" value="' + i + '" id="controlling_values_' + i + '" name="controlling_values[]"/> <label for="controlling_values_' + i + '">' + item + '</label><div class="cl"/></div>';
				})
				$("#new_visibility_rule .controling_values").html(dep_values)
			}
		}, 'json')
	})
	$("#new_visibility_rule .controling_values div.crt_value input").live('click', function(){
		if ($(this).parent().hasClass('selected')){
			$(this).parent().removeClass('selected')
		} else {
			$(this).parent().addClass('selected')
		}
	})
}
$.dependencyRules = function(){
	$(".dependency_rule div.crt_value *").live('click', function(event){
		if ($(this).parent().hasClass('selected')){
			$(this).parent().find('input').attr('checked', false);
			$(this).parent().removeClass('selected')
		} else {
			$(this).parent().find('input').attr('checked', true);
			$(this).parent().addClass('selected')
		}
	})
	
	$("#new_dependency_rule select[name='module_id']").change(function(){
		var th = $(this);
		params = {'module_id' : $(this).val()};
		$.post(links['ajax_dependency_rule'], params, function(data){
			$(".crt_field").addClass('disabled')
			$(".dependency_values_container").css('display', 'none')
			$("#new_dependency_rule select[name='dependent_field_id']").html('');
			$.setSelectOptions($("#new_dependency_rule select[name='dependent_field_id']"), data.dependentfields)
		}, 'json')
	})
	$("#new_dependency_rule select[name='dependent_field_id']").change(function(){
		var th = $(this);
		params = {'dependent_field_id' : $(this).val()};
		$.post(links['ajax_dependency_rule'], params, function(data){
			if (data.error == 1){
				$(".crt_field").addClass('disabled')
				$(".dependency_values_container").css('display', 'none')
				return;
			}
			$(".crt_field").removeClass('disabled')
			$(".dependency_values_container").css('display', 'none')
			$("#new_dependency_rule select[name='controlling_field_id']").html('');
			$.setSelectOptions($("#new_dependency_rule select[name='controlling_field_id']"), data.controllingfields)
			
		}, 'json')
	})
	$("#new_dependency_rule select[name='controlling_field_id']").change(function(){
		var th = $(this);
		params = {'controlling_field_id' : $(this).val(), 'dependent_field_id' : $("#new_dependency_rule select[name='dependent_field_id']").val(), 'module_id' : $("#new_dependency_rule select[name='module_id']").val()};
		$.post(links['ajax_dependency_rule'], params, function(data){
			if (data.error == 1){
				$(".dependency_values_container").css('display', 'none')
				return;
			}
			if (data.dependency_values_container && (data.dependency_values_container.length > 0)){
				$(".dependency_values_container").fadeOut('fast')
												.html(data.dependency_values_container)
												.fadeIn('fast')
				$(".dependency_rule tr td:not(.hidden):last").css('border-right', '1px solid #E6E6E6');
			}
		}, 'json')
	})
	
	$('.dependency_rule tr th.next').live('click', function(){
		var columns = $(".dependency_rule tr th.column")
		var visibleCol = columns.filter(':not(.hidden)')
		var hiddenColRight = columns.filter('.hidden:not(.left)')
		
		$(visibleCol[0]).addClass('hidden left')
		if (hiddenColRight.length > 0)
			$(hiddenColRight[0]).removeClass('hidden')
		if (hiddenColRight.length == 1)
			$(this).addClass('hidden')
			
		if ($(".dependency_rule tr th.column").filter('.hidden.left').length > 0)
			$('.dependency_rule tr th.prev').removeClass('hidden')
	
		var columns = $(".dependency_rule tr td.column")
		var visibleCol = columns.filter(':not(.hidden)')
		var hiddenColRight = columns.filter('.hidden:not(.left)')

		$(visibleCol[0]).addClass('hidden left')
		if (hiddenColRight.length > 0)
			$(hiddenColRight[0]).removeClass('hidden')
		if (hiddenColRight.length == 1)
			$('.dependency_rule tr td.next').addClass('hidden')
			
		if ($(".dependency_rule tr td.column").filter('.hidden.left').length > 0)
			$('.dependency_rule tr td.prev').removeClass('hidden')
	
		$(".dependency_rule tr td:not(.hidden):last").css('border-right', '1px solid #E6E6E6');
		
		return false;
	})
	$('.dependency_rule tr th.prev').live('click', function(){
		var columns = $(".dependency_rule tr th.column")
		var visibleCol = columns.filter(':not(.hidden)')
		var hiddenColLeft = columns.filter('.hidden.left')
		
		$(visibleCol[visibleCol.length - 1]).addClass('hidden')
		if (hiddenColLeft.length > 0)
			$(hiddenColLeft[hiddenColLeft.length - 1]).removeClass('hidden left')
		if (hiddenColLeft.length == 1)
			$(this).addClass('hidden')
			
		if ($(".dependency_rule tr th.column").filter('.hidden:not(.left)').length > 0)
			$('.dependency_rule tr th.next').removeClass('hidden')
			
		var columns = $(".dependency_rule tr td.column")
		var visibleCol = columns.filter(':not(.hidden)')
		var hiddenColLeft = columns.filter('.hidden.left')
		
		$(visibleCol[visibleCol.length - 1]).addClass('hidden')
		if (hiddenColLeft.length > 0)
			$(hiddenColLeft[hiddenColLeft.length - 1]).removeClass('hidden left')
		if (hiddenColLeft.length == 1)
			$('.dependency_rule tr td.prev').addClass('hidden')
			
		if ($(".dependency_rule tr td.column").filter('.hidden:not(.left)').length > 0)
			$('.dependency_rule tr td.next').removeClass('hidden')
		return false;
	})
	$("#change_column").livequery('change', function(){
		var cur_val = $(this).val();
		if (cur_val == 0)
			return false;
		
		var columns = $(".dependency_rule tr th.column")
		var visibleCol = columns.filter(':not(.hidden)')
		var hiddenColLeft = columns.filter('.hidden.left')
		
		var changeIndex = 1;
		var contLoop = true;
		$.each(columns, function(i, item){
			if ((!$(item).hasClass('column'+cur_val))&&(contLoop)){
				changeIndex++;
			} else {
				
				contLoop = false;
			}
			
		})
		if (changeIndex > (columns.length - 3))
			changeIndex = columns.length - 3;
		
		var counter = 1;
		columns.addClass('hidden left');
		if (changeIndex > 1){
			$('.dependency_rule tr th.prev,.dependency_rule tr td.prev').removeClass('hidden')
		} else if (changeIndex == 1){
			$('.dependency_rule tr th.prev,.dependency_rule tr td.prev').addClass('hidden')
		}
			
		var hasHiddenRight = false;
		$(".dependency_rule tr td.column").addClass('hidden left');
		columns.each(function(i, item){
			var clases = $(item).attr('class').split(' ')
			var mainClass = clases[1];
			if (counter >= changeIndex){
				$(item).removeClass('hidden')
						.removeClass('left')
				$("." + mainClass).removeClass('hidden')
									.removeClass('left')
			}
			if (counter > (changeIndex + 3)){
				$(item).addClass('hidden')
				$("." + mainClass).addClass('hidden')
				hasHiddenRight = true;
			}
			counter++;
		})
		if (!hasHiddenRight){
			$('.dependency_rule tr th.next,.dependency_rule tr td.next').addClass('hidden')
		} else {
			$('.dependency_rule tr th.next,.dependency_rule tr td.next').removeClass('hidden')
		}
	})
	
}

$.fn.applyRules = function(){
	$(this).livequery('change', function cfUpdater(el){
		var custom_fields = $('[name^=customfields][type!=checkbox][type!=radio]:not([multiple])');
		var cf_params = {};
		if (custom_fields.length > 0){
			$.each(custom_fields, function(i, item){
					cf_params[$(item).attr('name')] = $(item).val()
					//cf_params["_"+$(item).attr('name')] = $(item).val()
			})
		}
		var custom_checkboxes = $('[name^=customfields]:checked');
		var custom_multiselects = $('select[multiple]');
		

		if (custom_checkboxes.length > 0){
			$.each(custom_checkboxes, function(i, item){
				var key = "_"+$(item).attr('name');
				key = key.replace('[]','['+$(item).val()+']')
				cf_params[key] = $(item).val()
			})
		}
		if (custom_multiselects.length > 0){
			$.each(custom_multiselects, function(i, item){
				var key = "_"+$(item).attr('name');
				key = key.replace('[]','');
				if (($(item).val())&&(($(item).val()).length > 0)){
					$.each($(item).val(), function(i, it){
						var currKey = key+'['+ it +']'
						cf_params[currKey] = it;
					})
				}
			})
		}
		
		cf_params['referer'] = location.pathname;
		cf_params['container'] = '.custom_fields_box'; 
		cf_params['component'] = $(cf_params['container']).hasClass('form') ? 'form' : 'display';
		$.proofPOST(links['refresh_custom_fields'], cf_params, function(data){
			
		}, 'json')
	});
}

$.customViews = function(){
	$(".custom_view_box .column_item").click(function(){
		if ($(this).hasClass('selected')){
			$(this).removeClass('selected')
		} else {
			$(this).addClass('selected');
		}
	})
	$(".add_column_button").click(function(){
		var items_to_add = $(".custom_view_box .column_item.selected")
		var currentQuant = $(".custom_view_box.selected_columns .selected_item")
		if ((currentQuant.length <= 20)&&(currentQuant.length + items_to_add.length >=  20)){
			var maxQuant = 20 - currentQuant.length;
			items_to_add = items_to_add.slice(0, maxQuant);
			if (maxQuant > 0){
				$(".cv_columns").removeClass('disabled')
				$(this).addClass('grey')
			}
		}
		if ((items_to_add.length > 0)&&(currentQuant.length <= 20)){
			
			$.each(items_to_add, function(i, item){
				var rel = $(item).attr('rel');
				rel = eval('(' + rel + ')');
				var newItem = addItem(rel.id, $(item).html());
				var newItem2 = addSortingItem(rel.id, $(item).html());
				$(".custom_view_box.selected_columns").append(newItem);
				$("#sortby").append(newItem2);
				$(item).addClass('hidden');
			})
			$(".custom_view_box .column_item").removeClass('selected')
		}
		checkCVArrows();
		checkSort();
		return false;
	});

	function addItem(id, label){
		
		var html = '<div class="selected_item" '+
						'rel="{\'id\' : '+ id +', \'label\' : \''+label+'\'}"><div class="cv_column_label">'
                  		+ label +
                  		'</div><div style="float: right;">'+
                  			'<img class="down" src="/images/move-down.png"/>'+
                  			'<img class="up" src="/images/move-up.png"/>'+
                  			'<img class="delete_item" src="/images/delete_ico2.gif"/>'+
                  			'<div class="cl"></div>'+
                  		'</div>'+
                  		'<input type="hidden" name="selected_columns[]" value="'+id+'" />'+
                  		'<div class="cl"></div>'+
                  	'</div>';
		return html;
	}
	function addSortingItem(id, label){
		return '<option value="'+id+'">'+label+'</option>';
	}
	$(".custom_view_box.selected_columns .delete_item").live('click', function(){
		var th = $(this);
		var rel = th.parents('.selected_item').attr('rel');
		rel = eval('(' + rel + ')');
		var items = $(".custom_view_box .column_item:contains("+rel.label+")")
		var columnItem = null;
		if (items.length > 0){
			$.each(items, function(i, item){
				var currentRel = $(item).attr('rel')
				if ((currentRel)&&(currentRel.length > 0)){
					currentRel = eval('(' + currentRel + ')');
					if (rel.id == currentRel.id){
						columnItem = $(item);
					}
				}
			})
		}
		if (columnItem){
			columnItem.removeClass('hidden')
			
		}
		th.parents('.selected_item').remove();
		$('#sortby option[value='+rel.id+']').remove();
		checkCVArrows()
		if ($(".custom_view_box.selected_columns .selected_item").length < 20){
			$(".add_column_button").removeClass('grey');
			$(".cv_columns").addClass('disabled')
		}
		return false;
	})
	$(".custom_view_box.selected_columns .up").live('click', function(){
		var th = $(this);
		var element = th.parents('.selected_item');
		var prev = $(element).prev();
		var rel = $(element).attr('rel');
		rel = eval('(' + rel + ')');
		var newItem = addItem(rel.id, rel.label );

		prev.before(newItem);
		$(element).remove();
		checkCVArrows();
	});
	$(".custom_view_box.selected_columns .down").live('click', function(){
		var th = $(this);
		var element = th.parents('.selected_item');
		var next = $(element).next();
		var rel = $(element).attr('rel');
		rel = eval('(' + rel + ')');
		var newItem = addItem(rel.id, rel.label );

		next.after(newItem);
		$(element).remove();
		checkCVArrows();
	});
	
	
	function checkSort(){
		var sortItems = $("#sortby option")
		var first = null; 
		var aValues = new Array();
		var aAssocValues = {};
		var sReturn = '';
		$.each(sortItems, function(i, item){
			if ($(item).val() == 0){
				first = $(item);
			} else {
				var value = $(item).html()
				value = value.substr(0,1).toUpperCase() + value.substr(1) 
				aValues.unshift(value);
				aAssocValues[value] = $(item).val();
			}
		})	
		
		aValues.sort()
		sReturn =  addSortingItem(first.val(), first.html());
		$.each(aValues, function(i, item){
			sReturn += addSortingItem(aAssocValues[item.substr(0,1).toUpperCase() + item.substr(1) ], item)
		})
		$("#sortby").html(sReturn)
	}

	$('#sortby').livequery('change', function(){
		if(parseInt($(this).val()) != 0) {
			$('.views_sorting_order').fadeIn();
		}
		else {
			$('.views_sorting_order').fadeOut();
		}
	});
	$(".ajax_tabs a.subheader_tab").click(function(){
		var rel = $(this).attr('href');
		$(".ajax_tabs_content").css( 'display', 'none');
		$(".ajax_tabs_content[rel='"+rel+"']").css('display', 'block')
		$(".ajax_tabs a.subheader_tab").removeClass('selected');
		$(this).addClass('selected');
		$(".left_sidebar").css('height', 'auto')
		updatePage();
		return false;
	})
	var cv_hash = location.hash;
	if (!cv_hash){
		cv_hash = '#columns';
	}
	$(".ajax_tabs a.subheader_tab[href='"+location.hash+"']").click();

	$(".view_sharing_container tr td").click(function(){
		if ($(this).parents('tr').hasClass('selected')){
			$(this).parents('tr').removeClass('selected')
			$(this).parent('tr').find('input').attr('checked', false)
		} else {
			$(this).parents('tr').addClass('selected')
			$(this).parent('tr').find('input').attr('checked', true)
		}
	})
	$(".view_sharing_container tr th .all_items_sharing").click(function(){
		var aItems = null
		var currentValue = $(this).attr('checked');
		if (currentValue){
			aItems = $(".view_sharing_container tr td .items_checkboxes_sharing:not(:checked)");
		} else {
			aItems = $(".view_sharing_container tr td .items_checkboxes_sharing:checked");
		}
		if (aItems.length > 0){
			$.each(aItems, function (i, item){
				$(item).click();
			})
		}
	})
	
	$("#field_id, #operator").livequery('change', function(){
		var params = {};
		params['container'] 	= '#new_custom_view_filter_container';
		params['field_id'] 		= $("#field_id").val();
		params['operator']		= $("#operator").val();
		$.proofPOST(links['custom_views_filter_change'],params,function(){
			
		})
	})
	$(".delete_filter").live('click', function(){
		$(this).parents('tr').remove();
		$(".filters_middle_column .add_filter_button").removeClass('grey');
		$(".cv_filters").addClass('disabled');
	});
	
	var hidden_fields_iteration = 0;
	
	function addFilter(params){
		
		hidden_fields_iteration++;
		
		var hiddenFields = '';
		hiddenFields = hiddenFields + '<input type="hidden" name="filters['+hidden_fields_iteration+'][field_id]" value="'+params['field_id']+'" />';
		hiddenFields = hiddenFields + '<input type="hidden" name="filters['+hidden_fields_iteration+'][operator]" value="'+params['operator_id']+'" />';
		hiddenFields = hiddenFields + '<input type="hidden" name="filters['+hidden_fields_iteration+'][value1]" value="'+params['value1']+'" />';
		hiddenFields = hiddenFields + '<input type="hidden" name="filters['+hidden_fields_iteration+'][value2]" value="'+params['value2']+'" />';

		var html = '<tr>'+
				   		'<td>&nbsp;</td>'+
				   		'<td>'+params['field_name']+'</td>'+
				   		'<td>'+params['operator']+'</td>'+
				   		'<td>'+(params['value1_label'] ? params['value1_label'] : '-')+'</td>'+
				   		'<td>'+(params['value2'] ? params['value2'] : '-')+'</td>'+
				   		'<td>'+ hiddenFields +
				   		'<img src="/images/delete_ico.gif" class="delete_filter cursor_p"/></td>'+
				   	'</tr>';
		return html;
	}
	$(".filters_middle_column .add_filter_button").live('click', function(){
		if($(this).hasClass('grey')){
			return false;
		}
		//DE1525 -> validation on filters
		if($("#filter_type").val() == 'numeric') {
			var reg = /^[0-9]+$/;
		   var number = trim($("#value1").val());
			var bHasError = false;
	 		if($("#value1") && !reg.test(number)) {
				if($("#value1").parent().find('.error_value1').length == 0) {
					var error = $("<div />").addClass('error error_value1').html(_('Invalid value.'))
					$("#value1").parent().prepend(error)	
				}
				bHasError = true;
			}
			else {
				$(".error_value1").remove();
				bHasError = false;
			}
			if($("#value2").length == 1) {
				number = trim($("#value2").val());
				if(!reg.test(number)) {
					if($("#value2").parent().find('.error_value2').length == 0) {
						var error = $("<div />").addClass('error error_value2').html(_('Invalid value.'));
						$("#value2").parent().prepend(error);
					}
					bHasError = true;
				}
				else {
					$(".error_value2").remove();
				}
			}
			if(bHasError) {
				return false;
			}
		}
		$.post(links['custom_views_validate_filters'],{'field_id' : $("#field_id").val(), 'operator' : $("#operator").val(), 'value' :$("#operator option[value='"+$("#operator").val()+"']").html() }, function(data){
			if (data.has_error == 0){
				var cont = false;
				var params = {};
				params['value2'] = '';
				
				if ((($("#field_id").val() > 0 || $("#field_id").val() < 0)&&($("#operator").val() > 0)&&($("#value1").length > 0 && $("#value1").val().length > 0 || $(".value1_date").length > 0 && $(".value1_date").val().length > 0) && ($(".value1_date").val() != _('Click to select a date'))) || $('input[name="operator[]"]').length > 0){
					cont = true;
				}
				
				if (($("#value2").length == 1 || $(".value2_date").length == 1)&&($("#value2").length > 0 && $("#value2").val().length == 0 && $(".value2_date").val().length || ($(".value2_date").val() == _('Click to select a date')))){
					cont = false;
				} else if (($("#value2").length == 1 || $(".value2_date").length == 1)){
					params['value2'] 	= $(".value2_date").length == 1 ? $(".value2_date").val() : $("#value2").val();
				}
				if (($("#value1").attr('type') == 'text') && (!$("#value1").hasClass('datetime_picker'))){
					cont = true;
				} 
				
				if (cont){
					params['field_name']	= $("#field_id option[value='"+ $("#field_id").val() +"']").html();
					params['field_id']		= $("#field_id").val();
					
					if($('input[name="operator[]"]').length > 0) {
						
						$.each($('input[name="operator[]"]'), function(i, el){
							if(el.checked == true) {
								params['operator']		= $(el).attr('title');
								params['operator_id']	= $(el).val();
							}
						});
						
					}
					else {
						params['operator']		= $("#operator option[value='"+ $("#operator").val() +"']").html();
						params['operator_id']	= $("#operator").val();
					}
					
					var val1select = $("#value1").length > 0 && $("#value1").get(0).tagName == 'SELECT' ? $("#value1 option[value='"+ $("#value1").val() +"']").html() : null;
					var val1date = $(".value1_date").length > 0 ? $(".value1_date").val() : null;
					var val1text = $("#value1").length > 0 && $("#value1").val() ? $("#value1").val() : null;
					
					params['value1_label']		= val1date != null ? val1date : (val1select != null ? val1select : val1text);
					params['value1']		= val1date != null ? val1date : val1text;
					
					var postParams = {};
					postParams['container'] = '#new_custom_view_filter_container';
					postParams['field_id'] = $("#field_id").val();
					$.proofPOST(links['custom_views_filter_change'],postParams,function(){
						var filter = addFilter(params);
						$(".cv_filter_details table").append(filter);
						if ($(".cv_filter_details table tr").length > 10){
							$(".filters_middle_column .add_filter_button").addClass('grey');
							$(".cv_filters").removeClass('disabled');
						}
					});
					
				}
			} 
		}, 'json')
		
		return false;
	})
	$(".cv_buttons .next_button, .cv_buttons .cancel_button").click(function(){
		var href = $(this).attr('href');
		if (!$(this).hasClass('cv_validate'))
			$(".ajax_tabs a.subheader_tab[href='"+href+"']").click();
	})
	$(".cv_validate").click(function(){
		var th = $(this);
		var params = {
			'name' : $("div[rel='#columns'] input[name='name']").val(),
			'selected_columns' : ($(".custom_view_box.selected_columns .selected_item").length )
		};
		$.post(links['custom_views_validate_submit'], params, function(data){
	 		if (data.has_errors == 1){
				if ((data.errors['name'])){
					if ($("div[rel='#columns'] input[name='name']").prev('.error').length == 0){
						$("div[rel='#columns'] input[name='name']").before('<div class="error">'+data.errors['name']+'</div>');
					} 
				} else {
						$("div[rel='#columns'] input[name='name']").prev('.error').remove();
					}
				if (data.errors['selected_columns']){
					if ($(".selected_columns_error").length == 0){
						$("div[rel='#columns'] .cv_columns").parent().after('<tr class="selected_columns_error" ><td style="text-align: center;" colspan="4"><span class="error">'+
						 data.errors['selected_columns'] +
						'</span></td></tr>')
					}
				} else {
					$(".selected_columns_error").remove();
				} 	
				$(".ajax_tabs a.subheader_tab[href='#columns']").click();
			} else {
				if ((th.attr('href'))&&(th.attr('href').length > 0)){
					$(".ajax_tabs a.subheader_tab[href='"+th.attr('href')+"']").click();
					$(".selected_columns_error").remove();
					$("div[rel='#columns'] input[name='name']").prev('.error').remove();
					return false;
				} else
					th.parents('form').submit();
			}
			return false;
		},'json')
		return false;
	})
	
}

function checkCVArrows(){
	var aItems = $(".custom_view_box.selected_columns .selected_item");
	aItems.find('img.up, img.down').removeClass('hidden')
	if (aItems.length == 1){
		aItems.find('img.up, img.down').addClass('hidden')
	} else if (aItems.length > 1){
		$.each(aItems, function(i, item){
			if (i == 0){
				$(item).find('img.up').addClass('hidden')
			}
			if (i == (aItems.length - 1)){
				$(item).find('img.down').addClass('hidden')
			}
		})
	}
}

$.rolloverOnDropbox = function(){
	$(".dropbox_container .buttons_sc .submit_save_button, .select_file_button span, .select_wp_button span").hover(function(){
		$(this).addClass('hover')
	}, function(){
		$(this).removeClass('hover');
	})
	$(".file_dropbox").livequery(function(){
		$(this).hover(function(){
			$(this).parent().find('span').addClass('hover')
		}, function(){
			$(this).parent().find('span').removeClass('hover');
		})
	})
	
}

$.integrations = function(){
	$('.integration_header input').click(function(){
		var sInName = $(this).val();
		var link = links['integration_link'].replace('%25VAR%25', sInName);
		if ($(this).attr('checked')){
			$.post(link, {}, function(data){
				$(".integrations_" + sInName).html(data);
				$(".integrations_" + sInName).fadeIn();
				$(".integrations_" + sInName + " .bs_box").fadeIn();
				
			})
		} else {
			$(".integrations_" + sInName).hide();
		}
	})
	function getParams(parentClases){
		cl = '.';
		$.each(parentClases.split(' '), function(i, item){
			cl += "."+item; 
		})
		var params = {};
		
		if ($(cl+" select").length > 0){
			$.each($(cl+" select"), function(i, item){
				params[$(item).attr('name')] = $(item).val();
			})
		}
		if ($(cl+" input").length > 0){
			$.each($(cl+" input"), function(i, item){
				if ($(item).attr('name').indexOf('contactid') == -1){
					params[$(item).attr('name')] = item.type != 'checkbox' || item.checked ? $(item).val() : '';
				}
			})
		}
		return params;
	}
	$(".newproof_integrations select").livequery(function(){
		$(this).change(function(){
			var clasess = $(this).parents('.newproof_integrations').attr('class');
			var params 	= getParams(clasess);
			var link 	= links['integration_link'].replace('%25VAR%25', $(this).parents(".newproof_integrations").attr('rel'))
			changeIntegrationContent( params, $(this).parents(".newproof_integrations").attr('rel'))
		
		})
	})
	$(".newproof_integrations input").livequery(function(){
		$(this).click(function(){
			if ($(this).attr('name') != 'integrations[basecamp][contactid][]') {
		 	//	var clasess = $(this).parents('.newproof_integrations').attr('class');
			// 	var params = getParams(clasess);
			 //	changeIntegrationContent(params, $(this).parents(".newproof_integrations").attr('rel'))
		 	}
		})
	})
	$("a.integration-refresh").livequery(function(){
		$(this).click(function(){
		
			var sInName = $(this).parents(".newproof_integrations").attr('rel');
			var link = links['integration_link'].replace('%25VAR%25', sInName) + '/refresh/true';
			$.post(link, {}, function(data){
				$(".integrations_" + sInName).html(data);
				$(".integrations_" + sInName).fadeIn();
				$(".integrations_" + sInName + " .bs_box").fadeIn();
			})
		})
	})
	function changeIntegrationContent( params, sInName){
		var link 	= links['integration_link'].replace('%25VAR%25', sInName)
		$.post(link, params, function(data){
			$(".integrations_" + sInName).html(data);
			$(".integrations_" + sInName).fadeIn();
			$(".integrations_" + sInName + " .bs_box").fadeIn();
			if (($(".integration_recipients").length > 0)&&($(".email_item span").length > 0)){
				$.each($(".email_item span"), function(i, item){
					$.each($(".integration_recipients"), function(i, subItem){
						if ($(subItem).attr('json').indexOf($(item).text()) > -1){
							$(subItem).attr('checked', 'true')
						}
					})
					
				})
			}
		})
	}

	$("input.integration_recipients:checkbox").live('click', function(){
		var th = $(this)
		var attr = $(this).attr('json');
		attr = eval('(' + attr + ')');
		if (th.attr('checked') && ($(".emails_container").length > 0) && ($(".email_item span:contains('" + attr.email + "')").length == 0)) {
			//c(th);
			//c(contacts)
			
			if (($("#members_only").length > 0) && ($("#members_only").attr('checked') && attr && !attr.is_user)){
				return false;
			}
			
			var contact = '';
			$.each(contacts, function(i,el) {
				if(el.email == attr.email) {
					contact = el;
					return;
				}
			});
			
			var html = addEmail((oIndex++), contact != '' && contact.index ? contact.index : attr.email, attr.email, 0, 0, th.val() );
			$('#emails').val(attr.email);
			if ($("div.email_item").length == 1) {
				$("div.email_item[itemid='-1']").css('display', 'none');
			}
			$(".emails_container").append(html);

			$.setSelectOptions($(".emails_container").find("select[itemid='" + (oIndex - 1) + "']"), contact != '' && contact.is_user ? userRoles : nonUserRoles);
			
			if(contact && contact.role < 1) {
				contact.role = $('#default_role').val();
			}

			if(contact != '' && contact.role > 0) {
				$(".emails_container").find("select[itemid='" + (oIndex - 1) + "']").val(contact.role);
				$(".emails_container").find("input.role_input[itemid='" + (oIndex - 1) + "']").val(contact.role);
			}
			else if($('#default_role')) {
				$(".emails_container").find("select[itemid='" + (oIndex - 1) + "']").val($('#default_role').val());
				$(".emails_container").find("input.role_input[itemid='" + (oIndex - 1) + "']").val($('#default_role').val());
			}
			else {
				$(".emails_container").find("select[itemid='" + (oIndex - 1) + "']").val(3);
				$(".emails_container").find("input.role_input[itemid='" + (oIndex - 1) + "']").val(3);
			}
			
			$(".email_item:last").animate( { backgroundColor: 'white' }, 500);
			if (!attr.is_user){
				$(".delete_email[bc='"+th.val()+"']").parents(".email_item").addClass('nonuser_item') 
			}
			$("#emails").val('');
		} else if (($(".email_item span:contains('" + attr.email + "')").length > 0) &&  (!th.attr('checked'))){
				
			$(".email_item span:contains('" + attr.email + "')").parents('.email_item').remove();
			
			//c(	$(".email_item span:contains('" + attr.email + "')").parents('.email_item'));
		} else if (!th.attr('checked')){

			var bc_attr = th.val();
			if (bc_attr){
				$("a.delete_email[bc='" + bc_attr + "']").click();
				//c($("a.delete_email[bc='" + bc_attr + "']"));
			}
		} 
	})

	if ($(".newproof_integrations input[name='integration_parameters']").length > 0){
		$.each($(".newproof_integrations input[name='integration_parameters']"), function(i, item){
			if ($(item).val().length > 0){
				var sInName = $(item).parent().attr('rel');
				var link = links['integration_link'].replace('%25VAR%25', sInName);
				var params = eval('(' + $(item).val() + ')');
				
				var new_params = {};
				$.each(params, function(i, item){
					
					if ((i == 'contactid') || (i == 'privateid')){
						new_params['integrations['+sInName+'][' + i + '][]'] = item;
					} else {
						new_params['integrations['+sInName+'][' + i + ']'] = item;	
					}
										//new_params['integrations['+sInName+'][' + i + '][]'] = item;  
				})
				$.post(link, new_params, function(data){
					$(".integrations_" + sInName).html(data);
					$(".integrations_" + sInName).fadeIn();
					$(".integrations_" + sInName + " .bs_box").fadeIn();
					if (params.contactid && (params.contactid.length > 0)){
						$.each(params.contactid, function(item, i){
							$("input[name='integrations["+sInName+"][contactid][]'][value='"+ i +"']").attr('checked', false);
							$("input[name='integrations["+sInName+"][contactid][]'][value='"+ i +"']").click()
						//	$("input[name='integrations["+sInName+"][contactid][]'][value='"+ i +"']").click()
						})
					}
				})
			}
		})
	}
	$(".basecamp_close").live('click', function(){
		$(this).parents(".newproof_integrations").fadeOut('fast', function(){
			$("#integration_"+$(this).attr('rel')).attr('checked', false);
		})
		updatePage();
	})
	
}

$.popupInactivity = function(){
	if (!links || !isLogged){
		return false;
	}
	//return false;
	$.post(links['timeout_popup'], {}, function(data){
		popupTimeout = data.popupTimeout;
		popupLogin 	 = data.popupLogin;
		login 		 = data.login;
		checkTime();
	}, 'json')
	
	$(".popup_login").livequery('click', function(){
		//c(location);
		//return false;
		var p = $('<p />').append($("#show_proc_dropbox").html()).addClass('buttons_process')
		$(this).parent('.buttons_sc').prepend(p);
		$(this).parent('.buttons_sc').addClass('progress')
		$.post('/login', {
			'password'  : $('#timeout_container #password').val(), 
			'login'  	: login,
			'ajax'		: true
		}, function(data){
			if (data.success == 0){
				$("#login_error").html(data.error)
				$("#login_error").css('display', 'block')
				$(".buttons_process").css('display', 'none')
				$(".buttons_process").parents('.buttons_sc').removeClass('progress')
			} else if (data.success == 1){
				$("#popup_inactivity").remove();
				$(".ui-widget-overlay").remove();
				location.reload();
			}
		}, 'json')
		return false;
	})
	$(".popup_conntinue").live('click', function(){
			location.reload();
	})

	$("#password").live('keypress', function(e){
		if (e.keyCode == 13){
				$(".popup_login").click();
			}
	})
}

function initScreen(interval) {
	
			
	setTimeout("if(($('.items_table.proofs_table').width() + $('.left_sidebar').width() + 5) >= $(window).width()) {$('body').width($('.items_table.proofs_table').width() + $('.left_sidebar').width() + 30);}", interval)
}

function decreseTime(){
	var time = $("#inactivity_counter").html();
	if (time.length > 0){
		time = time.split(':')
	}
	var minutes = parseInt(time[0])
	var secounds = time[1]
	if (secounds.indexOf('0') == 0){
		secounds  = parseInt(secounds.substr(1))
	}
	if ((minutes == 0) && (secounds == 1)){
			setTimeout("checkTime();", 2000);
			return false;
	} else if (secounds == 0){
		secounds = 59;
		minutes--;
	} else {
		secounds--;
		if (secounds < 10){
			secounds = secounds.toString();
			secounds = "0"+secounds;
		}
	}
	time[0] = minutes;
	time[1] = secounds;
	$("#inactivity_counter").html(time.join(':'))
	setTimeout("decreseTime()", 1000);
}

function checkTime(){
	var params = {'sid' : getcookie('psess')} 
	$.post('/checksession.php?'+ Math.random(), params, function(data){
	//	alert(data.remaining);
		if (data && data.remaining > 300){
			$("#popup_inactivity").remove();
			$(".ui-widget-overlay").remove();
			setTimeout("checkTime()", 20000);
			return false;
		}
		$("#popup_inactivity").remove();
		$(".ui-widget-overlay").remove();
		var overlay = $("<div />").addClass('ui-widget-overlay popup-overlay').css({
				width: $('body').width(),
				height: $(document).height(),
				'z-index' : 1001
			})
		overlay.appendTo($('body'))
		var popup = $("<div />").attr('id', 'popup_inactivity').css('display', 'none')
		popup.appendTo($('body'))
		
		
		if (data && data.remaining == 0){
			$('#popup_inactivity').html(popupLogin);
		} else if (data && data.remaining <= 300){
			var min = Math.floor(data.remaining /60)
			var sec = (parseInt(data.remaining) - min * 60) % 60;
			if (sec < 0){
				sec = '00'
			} else if (sec < 10){
				sec = '0' + sec;
			}
			$('#popup_inactivity').html(popupTimeout);
			$("#continue_working").focus();
			$("#inactivity_counter").html(min+":" + sec);
			decreseTime()
		} 
		
		var width 	  = $(window).width();
		var height 	  = $(window).height();
		var popupLeft = parseInt((width - $('#popup_inactivity').width())/2)
		var popupTop  = parseInt((height - $('#popup_inactivity').innerHeight())/2)
		$('#popup_inactivity').css({
	   	'left': popupLeft,
			'top': popupTop,
			'display' : 'block'
	   });
	}, 'json')
	
	return false;
}

/**
 * inline on liste view
 */
$.fn.inlineList = function(){
	if (navigator.appVersion.indexOf('MSIE 7.0') == -1) {
		//	DE1563 -> only IE7		
   	$(".list_inline").css('position', 'relative');
   }
	th = $(this)
	$(this).livequery(function(){
		$(this).dblclick(function(){
			var thDblC = $(this);
			var rel = $(this).attr('rel');
			if (rel && (rel.length > 0)){
				rel = eval('(' + rel + ')');
			}
			$(this).html('<img src="/images/details-loader.gif" class="details_loader"/>');
			$.proofPOST(links['list_inline_edit'], rel, function(data){
				$(data.container)
						.addClass('opened')
						.removeClass('hover_name')						
			})
		})
	})
	$(this).find('select').livequery(function(){
		$(this).change(function(){
			$("#"+$(this).parents('.list_inline').attr('id'))
				.addClass('hover_name')
				.removeClass('opened')
				.find('form').submit()
				.html('<img src="/images/details-loader.gif" class="details_loader"/>')
		})
	})
	$(this).hover(function(){
		if (!$(this).hasClass('opened')){
			$(this).prepend('<img class="hover_image" rel="'+_('Double click to edit')+'" src="/images/pen-edit-icon.png" />')
			if (navigator.appVersion.indexOf('MSIE 7.0') > -1){
				//	DE1563 ->only IE7				
				$(".hover_image").css({
			 		'top': parseInt($(".hover_image").parents('td').height() / 2 - 5)
			 	});
			}
		}
	}, function(){
		$(this).find('.hover_image').remove();
	})
}


function updateHeader() {
	$.post(links['update_header'], {}, function(data){
		$(".headerlogo").fadeIn(function(){
			$(".headerlogo").html(data).fadeOut();
		});
	});
}
function updatePage(){
	checkWindow()
	setTimeout("updatePageTO();checkWindow();", 500);
}
function updatePageTO(){
	var left_sb = $(".left_sidebar").height();
	var cont = $(".container").height() + 20;
	if (left_sb > cont)
		elem = left_sb
	else 
		elem = cont;		
	$(".resize_elem").height(elem);
	$(".left_sidebar").height($("#page").height() - 1);
}

function getcookies() {
	
	var document_cookies = document.cookie.split(' ').join('').split(';')
	var cookies = new Object();
	
	$.each( document_cookies, function(t, cookie_string) {
		var cookie_string_array = cookie_string.split('=');
		var cookie_name = cookie_string_array[0];
		var cookie_value = cookie_string_array[1];
		cookies[cookie_name] = unescape(cookie_value);
		cookie_value = cookies[cookie_name];
	
		if( cookie_value.substring(0,1) == '{' && cookie_value.substring(cookie_value.length-1, cookie_value.length) == '}' ) {
			cookies[cookie_name] = eval('('+cookie_value+')');
		}
	});
	
	return cookies;
}
function deleteFromArray(item, array){
	var rob = array.join(',')
	rob = rob.replace(item+',', '');
	rob = rob.replace(item+'', '')
	rob = rob.split(',');
	var returnArray = '';
	$.each(rob, function(i, item){
		if (item){
			returnArray += item+',';
		}
	})
	returnArray = returnArray.split(',');
	returnArray.pop();
	return returnArray;
}
function getcookie( cookie_name ) {
	var cookies = getcookies();

	if( cookies[cookie_name] ) {
		return cookies[cookie_name];
	}
	
	return new Object();
}

function setCookie(cookieName,cookieValue,nDays) {
	 var today = new Date();
	 var expire = new Date();
	 if (nDays==null || nDays==0) nDays=1;
	 expire.setTime(today.getTime() + 3600000*24*nDays);
	 document.cookie = cookieName+"="+escape(cookieValue)
	                 + "; path=/;expires="+expire.toGMTString();
}

var refreshQuant = 0;
function checkPages(id){
	$.post("/file/ajax", {'id' : id, 'get' : 'pages'}, function(data){
		if (data.pages == 0){
			if (refreshQuant < 15){
				setTimeout("checkPages("+id+");", 1000 * 60 * 2);//2 mins
				refreshQuant++;
			}
		} else {
			location.reload();
		}
	},'json');
}
	
function _(expr){ 
	if(phrases && phrases[expr]) {
		return phrases[expr];
	}
	return expr;
}

function inArray(pArray, value) {
   pArray = pArray || [];
   for(var i=0, all=pArray.length; i < all; i++) {
      if (pArray[i] == value) {
          return true;
      }
   }
   return false
}

function checkWindow(){
	if ($(".resize_elem").length){
		var delta  = 192 - $(".resize_elem").position().left;
		var cont_width = $("#page").width() - 24 - $(".resize_elem").position().left;
		$("#page .container").width(cont_width);
		$(".resize_elem").height($("#page").height());
	}
}

// Removes leading and ending whitespaces
function trim( value ) {
	
	if (!value){
		return '';
	}
	var rev_array = value.split('').reverse();
	
	var rev_pos = 0;
	if (rev_array.length > 0){
		var cont = true
		$.each(rev_array, function(i, item){
			var char_code = item.charCodeAt();
			if (char_code != 32){
				cont = false
			} 
			if ((char_code == 32)&&(cont)){
				rev_pos++;
			}
		})
	}
	value = value.substr(0,value.length - rev_pos);
	
	var n_array = value.split('');
	
	var pos = 0;
	if (n_array.length > 0){
		var cont = true
		$.each(n_array, function(i, item){
			var char_code = item.charCodeAt();
			if (char_code != 32){
				cont = false
			} 
			if ((char_code == 32)&&(cont)){
				pos++;
			}
		})
	}
	
	return value.substr(pos);
}
document.getElementsByClassName = function(className)
{
	var hasClassName = new RegExp("(?:^|\\s)" + className + "(?:$|\\s)");
	var allElements = document.getElementsByTagName("*");
	var results = [];

	var element;
	for (var i = 0; (element = allElements[i]) != null; i++) {
		var elementClass = element.className;
		if (elementClass && elementClass.indexOf(className) != -1 && hasClassName.test(elementClass))
			results.push(element);
	}
	return results;
}
function applyRules(){
	var el = document.getElementsByClassName("dropbox_page");
	var http = getHTTPObject(); 
	var params = getParams();
	
	http.open("POST", links['refresh_custom_fields'], true); 
	//Send the proper header information along with the request
	http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http.setRequestHeader("Content-length", params.length);
	http.setRequestHeader("Connection", "close");
	
	http.onreadystatechange = function() { 
		if (http.readyState == 4) { 
			var jRespData = eval('(' + http.responseText + ')')
			if (jRespData.error == 0){
				el[0].innerHTML = jRespData.content;
			}
		} 
	} 
	http.send(params);
}
function getParams(){
		var custom_fields = $('[name^=customfields][type!=checkbox][type!=radio]:not([multiple])');
		var cf_params = {};
		if (custom_fields.length > 0){
			$.each(custom_fields, function(i, item){
				if($(item).attr('type') == 'text') {
					cf_params[$(item).attr('name')] = $(item).val()
				}
				else {
					cf_params["_"+$(item).attr('name')] = $(item).val()
				}
			})
		}
		var custom_checkboxes = $('[name^=customfields]:checked');
		var custom_multiselects = $('select[multiple]');
		

		if (custom_checkboxes.length > 0){
			$.each(custom_checkboxes, function(i, item){
				var key = "_"+$(item).attr('name');
				key = key.replace('[]','['+$(item).val()+']')
				cf_params[key] = $(item).val()
			})
		}
		if (custom_multiselects.length > 0){
			$.each(custom_multiselects, function(i, item){
				var key = "_"+$(item).attr('name');
				key = key.replace('[]','');
				if (($(item).val())&&(($(item).val()).length > 0)){
					$.each($(item).val(), function(i, it){
						var currKey = key+'['+ it +']'
						cf_params[currKey] = it;
					})
				}
			})
		}
		
		cf_params['referer'] = location.pathname;
		cf_params['container'] = '.custom_fields_box'; 
		cf_params['component'] = $(cf_params['container']).hasClass('form') ? 'form' : 'display';
		
		var params = '';
		$.each(cf_params, function(i, item){
			if (params.length > 0){
				params += '&'
			}
			params += i + '=' + item
		})
		return params;
}
function getHTTPObject() { 
	if (typeof XMLHttpRequest != 'undefined') { 
		return new XMLHttpRequest(); 
	} try { 
		return new ActiveXObject("Msxml2.XMLHTTP"); 
	} catch (e) { 
		try { 
			return new ActiveXObject("Microsoft.XMLHTTP"); 
		} catch (e) {} 
	} 
	return false; 
}