function c(obj){
	console.log(obj)
}

$(document).ready(function(){
	
	//ajax indicator
	$(".ajax_loader").ajaxStart(function(){
		$(this).css('display', 'block')
		$(".context_menu").removeClass('selected')
		$(".context_menu_proof").css('display', 'none')
										.removeClass('visible')
	})
	$(".ajax_loader").ajaxStop(function(){
		$(this).fadeOut('fast');
		updatePage();
	})
	/**
	 * login page
	 */
	$(".login_button, .loader_button").click(function(){
		$(".login_loader").css('display', 'block')
		$(this).css('display', 'none')
		$(".loader_button").css('display', 'none')
	})
	/**
	 * form submitters
	 */
	$("form").submit(function(){
		$(".processing_icon").css('display', 'inline');
		$(".show_processing").css('display', 'none');
	})
	/**
	 * sidebar menu
	 */
	$("#toolbar ul.main_menu").toolbarMenu();
 
	/**
	 * page left menu
	 */
	var current_position = 210;
	$(".left_sidebar .resize_elem").draggable({
		axis: 'x',
		containment: '#page',
		grid : [5, 5],
		drag: function(event, ui){
			$(".left_sidebar").css({
				'width': ui.position.left + 8
			})

			if(($('.items_table.proofs_table').width() + $(".left_sidebar").width() + 5) >= $(window).width()) {
				$("body").width($('.items_table.proofs_table').width() + $(".left_sidebar").width() + 10)
			}
			else {
				$("body").width($(window).width())
			}
			$("#page .container").width( $("body").width() - $(".left_sidebar").width())
			
		}
		
	});
	
	$("div#object").click(function(event){
		if (!$(event.target).hasClass('context_menu')){
			$(".context_menu").removeClass('selected')
			$(".context_menu_proof").css('display', 'none')
											.removeClass('visible')
			//$(".context_menu_proof").remove();
		}
	})
	$(window).resize(function(){
		checkWindow();
		$("#object").css('width', 'auto')
	});
	
	$('.ajax_link').ajaxContentLoad();
	
	$("#page .left_sidebar .menu_item.workspaces span.triangle:first").treeviewLoadWorkspaces();
	$("#page .left_sidebar .menu_item.shared_workspaces span.triangle:first").treeviewLoadWorkspacesShared();
	
	$("#emails").emailsAutocomplete();
	//$("#dropbox_users").dropboxEmailsAutocomplete();

	$.proofPageChekboxes();
	
	$.uploadFiles();
	
	$(".container").css('width', parseInt($("#page").width()) - 224 )
	
	
	$.newWsOnNewProof();
	
	$.detailsBascampIntegration();
	
	/**
	 * search action
	 */
	$("#toolbar .search img").ajaxSearchLoad();
	
	/**
	 * dynamic height for textareas
	 */
	//$("textarea").heightBalancer(); 

	
	$(".ajax_switcher").livequery(function(){
		var th = $(this);
		var relOb = '';
		relOb = eval("("+th.attr('rel')+")");
		
		$(this).attr('href', relOb.link)
		$(this).click(function(){
			location.href = relOb.link;
		})
	})
	
	/**
	 * rozwijane menu list view
	 */
	$("#page .left_sidebar .menu_item.all_items .triangle").updateListView();
	
	/**
	 * context menu
	 */
	$(".context_menu").contextItemMenu();
	
	var tree_expand = getcookie('tree_expand')
	if (tree_expand == 1){
		$("#page .left_sidebar .menu_item.workspaces .triangle:first").click();
	}
	
	var tree_expand = getcookie('view_expand')
	if (tree_expand == 1){
		$("#page .left_sidebar .menu_item.all_items .triangle:first").click();
	}
	
	var tree_expand = getcookie('shared_tree_expand')
	if (tree_expand == 1){
		$("#page .left_sidebar .menu_item.shared_workspaces .triangle:first").click();
	}
	
	
	
	/**
	 * header menu
	 */
	$(".help_header_menu").hover(function(event){
		var th = $(this);
		$("#top .header_submenu").css({
			'display' : 'block', 
			'top' : (event.clientY + 2) + 'px', 
			'left' : (event.pageX- 200) + 'px'
		});
	}, function(event){
		if ($(event.relatedTarget).hasClass('header_submenu')){
			
		} else {
			$("#top .header_submenu").css('display', 'none')
		}
	})
	$("#top .header_submenu").mouseleave(function(){
		$("#top .header_submenu").css('display', 'none')
	})
	 
	/**
	 * item mini details
	 */
	$.proofMiniDetails();
	/** 
	 * edit details
	 */
	$(".right .action a.ajax_edit_details").simpleEditAjax();
	$(".right .details a.ajax_save_details").simpleSaveAjax();
	$(".right .details a.ajax_cancel_details").simpleCancelAjax();
	
	//$(".confirm_dialog").dialogConfirm();
	
	/**
	 * filters
	 */
	installFilters();
	$("form.ajax_form").proofAjaxForm();
	
	$(".context_menu_proof a").livequery(function(){
		if( !$(this).hasClass('download') && !$(this).hasClass('regular') ) { // it will wont make .download and .regular links ajaxable - irek
			$(this).ajaxContentLoad({def_link : true});
		}
	})

	$('.share_ws_items').sharingWorkspaceItems();

	//$(this).bascampIntegration();
	/**
	 * double update slidebar
	 */
	updatePage();
	
	/**
	 * selecting items
	 */
	$.checkboxSelecting()
	/**
	 * drag&drop item to workspaces
	 */
	$.workspacesDropToWorkspaces();
	
	$.filesDropToWorkspaces();
	
	/**
	 * filters -> submiting without submit button
	 */
	$("form.filters select, form.filters input:radio").live('change', function(){
		$(this).parents('form.filters').submit();
	})
	$(".help_link").live('click', function(event) {
		if (!helpboxes){
		 	//var helpboxes = [];
		}
		var th = $(this);
		var content = '';
		if (helpboxes&&(helpboxes[th.attr('rel')])){
			content = helpboxes[th.attr('rel')]
		} else {
			content = helpboxes['default'];
		}
		var box = $('<div />').addClass('helpbox')
					.append(
						$('<div />').addClass('helpbox_top')
							.prepend(
								$('<div />').addClass('helpbox_content').prepend(
									content
								)
							) 
							.append($('<img />').addClass('helpbox_close').attr('src', '/images/signup/helpbox_close.gif'))
					) 
					.append($('<div />').addClass('helpbox_bottom'))
		
		box.css({
			'top' : event.pageY - 35, 
			'left' : event.pageX + 20
		})
		if ($(".dropbox_container").length > 0){
			box.css({
				'top' : event.pageY - 45, 
				'left' : event.pageX + 13
			})
		}
		$(".helpbox").fadeOut('fast', function(){
			$(this).remove();
		})
		//$(".page_content").append(box);
		$("body").append(box);
	})
	$(".helpbox_close").livequery(function(){
		$(this).click(function(){
			$(this).parents('div.helpbox').fadeOut('fast', function(){
				$(this).remove();
			})
		})
	})
	
	/* date picker */
	$(".dp").livequery(function(){
		$(this).attr('readOnly', 'readOnly');
		var th = $(this)
		var dp = $(this).datepicker({
					minDate : new Date(),
					showOn : 'both',
					buttonImage : '/images/dp_image.gif',
					buttonImageOnly : true,
					'dateFormat' : getcookie('s').dateformat ? getcookie('s').dateformat.replace(/\+/g, ' ') : 'yy-mm-dd',
					onClose : function() {
						if ($('input[name=deadline_time]').val() == '' || $('input[name=deadline_time]').val() == 'hh:mm') {
							$('input[name=deadline_time]').val('23:59');
						}
					},
					onSelect : function(){
						th.addClass('hasDate')
						$('input[name=deadline_time]').val('23:59');
						
					},
					beforeShow: function(input, inst) { 
							
						setTimeout("$('#ui-datepicker-div').append('<div id=\"clear_datepicker\" class=\"ui-datepicker-header ui-widget-header ui-helper-clearfix ui-corner-all\" style=\"float: right;margin-bottom: 2px;font-weight: normal;padding: 3px;cursor: pointer;\">Clear</div>')", 100);
						
					}, 
					onChangeMonthYear : function(){
						setTimeout("$('#ui-datepicker-div').append('<div id=\"clear_datepicker\" class=\"ui-datepicker-header ui-widget-header ui-helper-clearfix ui-corner-all\" style=\"float: right;margin-bottom: 2px;font-weight: normal;padding: 3px;cursor: pointer;\">Clear</div>')", 100);
					}
		});
		$("#clear_datepicker").live('click', function(){
			th
				.val('')
				.blur()
				.datepicker('hide')
				.val(_('Click to select a date'))
				
		})
	});
	$('input[name=deadline_time]').blur(function(){
		var date = new Date();
		var cHour =  parseInt(date.getHours());
		var cMin = parseInt(date.getMinutes());
		date.setSeconds(0);
		date.setMinutes(0);
		date.setMilliseconds(0);
		date.setHours(0);
		var cMinutes = cHour * 60 + cMin;
		//c(cMin);
		//c(cHour);
		if ($(".dp").datepicker( 'getDate' ).getTime() == date.getTime() && ($(".dp").hasClass('hasDate'))){
			var hourSel = $(this).val();
			hourSel = hourSel.split(":")
			if (hourSel.length != 2) {
				$('input[name=deadline_time]').val('23:59');
			} else {
				var sHour = parseInt(hourSel[0])
				var sMin = parseInt(hourSel[1])
				var sMinutes = sHour * 60 + sMin;
				if ((cMinutes >= sMinutes)||(sMinutes >= (23 * 60 + 59))){
					$('input[name=deadline_time]').val('23:59');
				}
			}
		}
	});
	function toggleCheck(elem){
			var toggleName = $(elem).attr('name').substring(7);

			$.each($(".ToggleBy-"+toggleName), function(i,el){
				//alert(el);
				if (toggleName != "BC"){
					if(toggleName && toggleName.length > 0) {
						var toggler = $("input[name='toggle_"+toggleName+"']");

						if(toggler.length > 0) {
							if(($(toggler).attr('type') != 'checkbox' && toggler.val() > 0 ) || ($(toggler).attr('type') == 'checkbox' && $(toggler).attr('checked') )) {
								$(el).fadeIn();
								
								if($.browser.msie) {
							 		$(el).removeAttr('style');
							 	}
							}
							else {
								$(el).fadeOut();
							}
						}
					}
				}
			})
		}

	$("input[name^='toggle_']").livequery(function(){
		toggleCheck(this);
		$(this).click(function(){
			toggleCheck(this);
		})
	});
	
	$(".change_owner").changeOwnerDialog();
	$(".message_confirm").confirmDialog();
	$(".message_info").infoDialog();
	
	$(".hover_name").live('mouseover', function(event){
		var rel = $(this).attr('rel');
		if (!rel){
			rel = $(this).parent().attr('rel');	
		}
		if ($(this).hasClass('hover_json')){
			rel = eval('(' + rel + ')')
			rel = rel.hover_label;
		}
		if ((rel)&&($("span.hover_label").length == 0)){
			var pageY = event.pageY + 20;
			$('body').prepend("<span id=\""+rel+"\" class=\"hover_label\" style=\"display: none;left: "+event.pageX+"px;top: "+pageY+"px;\">"+rel+"</span>")
			$(".hover_label").fadeIn();
		}
		
	})
	$(".hover_name").live('mouseout',function(){
		$("span.hover_label").remove();
	})
	
	$("a.welcome_close").welcomeWindowClose();
	
	$("input.submit_save_button").click(function(){
		if ($(".save_emails")){
			$(".save_emails").click();
		}
	})
	$(".account_confirm").live('click', function(){
		if ($(this).hasClass('groups')){
			var items = $("input[name='contacts[]']:checkbox:checked");
		} else {
			var items = $("input[name='profiles[]']:checkbox:checked");
		}
		var th = $(this);
		if  (items.length > 0){
			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('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;
		}
		return false;
	})
	
	$(".section_cont .mini_details").click(function(){
		var rel = $(this).attr('rel')
		rel = eval('('+ rel +')')
		if ($(this).hasClass('closed')){
			$(".subs"+rel.itemid).fadeOut();
		} else {
			$(".subs"+rel.itemid).show();
		}
		$(this).toggleClass('closed');
	})
	
	
	$(".add_to_pick_list").pickList();
	
	$(".datetime_picker").dateTimePicker();
	
	$.parentSelectInProofDetailsPage();
	
	/**
	 * dropbox
	 */
	$(".dropbox_proofs_table tr td .select_version").click(function(event){
		if($('#parent_file_id')) {
			$('#parent_file_id').val($(this).parents('tr').attr('id'));
		}
		var form = $(this).parents('form');
		/*
		$("#show_proc_dropbox").css({
			'display' 	: 'block',
			'left'		: event.pageX - 40,
			'top'		: event.pageY
		});
		*/
		$("#show_proc_dropbox").css({
		  	'display': 'block'
		})
		$(this).parent().html($("#show_proc_dropbox"))
		form.submit();
		//$(this).remove();
		return false;
	})
	$(".dropbox_proofs_table tr td").hover(function(){
		$(this).parent().addClass('hover')
	}, function(){
		$(this).parent().removeClass('hover')
	})
	$(".dropbox_validate").validateDropbox();
	
	$(".dropbox_submission_validate").cfDropboxValidate();
	
	
	$(".dropbox_process").live('click', function(){
		var p = $('<p />').append($("#show_proc_dropbox").html()).addClass('buttons_process')
		$(this).parent('.buttons_sc').prepend(p);
		$(this).parent('.buttons_sc').addClass('progress')
	})
	/**
	 * new proof page validation
	 */
	$(".new_proof_validate").validateNewProof();
	
	/**
	 * REQUEST ACCOUNT
	 */
	$("#user_type_1").click(function(){
		$('.internal').addClass('hidden')
		$(".external").removeClass('hidden')
	})
	$("#user_type_2").click(function(){
		$('.external').addClass('hidden')
		$(".internal").removeClass('hidden')
	})
	if ($("#user_type_2:checked").length == 1){
		$('.external').addClass('hidden')
		$(".internal").removeClass('hidden')
	}
	
	/**
	 * color picker
	 */
	$("input.color_picker").livequery(function(){
		$(this).ColorPicker({
				onSubmit: function(hsb, hex, rgb, el) {
				$(el).val(hex);
				$(el).ColorPickerHide();
			},
			onBeforeShow: function () {
				$(this).ColorPickerSetColor(this.value);
			}
		})
	})
	$("[name='header_color']").livequery('focus',function(){
		$("[name='branding_type'][value='1']").attr('checked', true);
	})
	$("[name='branding_type'][value='0']").live('click',function(){
		$("[name='header_color']").val('');
		$("[name='header_color']").css('display', 'none');
		$(".background_repeat").css('display', 'none');
	})
	$("[name='branding_type'][value='1']").live('click',function(){
		$("[name='header_color']").css('display', 'block');
		$(".background_repeat").css('display', 'none');
	})
	$("[name='branding_type'][value='0']").livequery(function(){
		if ($("[name='branding_type'][value='1']").attr('checked')){
			$("[name='header_color']").css('display', 'block');
		}
		if ($("[name='branding_type'][value='2']").attr('checked')){
			$("[name='header_color']").css('display', 'none');
			$(".background_repeat").css('display', 'block');
			$(this).parent().parent().find('.submit_save_button').addClass('validate_image');
		}
	})
	$("[name='branding_type'][value='2']").live('click',function(){
		$("[name='header_color']").css('display', 'none');
		$(".background_repeat").css('display', 'block');
		$(this).parent().parent().find('.submit_save_button').addClass('validate_image');
	})
	
	$(".validate_image").live('click', function(){
		var options =  eval('(' + $(this).attr('rel') + ')')
		var file = $(this).parent().parent().find(options.element);

		var ext = $(file).val().slice($(file).val().lastIndexOf('.')+1).toLowerCase();
		var arrayExtensions = ['jpg', 'jpeg', 'png', 'gif'];
		if ((ext.length == 0)&&(options.empty_validation)){
			var error = $(this).parent().find('.error2');
			if (error.length > 0){
				$(error).show();
				return false;
			}
		} else {
			if (!inArray(arrayExtensions, ext)){
				var error = $(this).parent().parent().find('.error1');
				if (error.length > 0){
					$(this).parent().find('.error2').hide();
					$(error).show();
				}
				return false;
			}
		}
	})
	$(".validate_icon").live('click', function(){
		var options =  eval('(' + $(this).attr('rel') + ')')
		var file = $(this).parent().parent().find(options.element);

		var ext = $(file).val().slice($(file).val().lastIndexOf('.')+1).toLowerCase();
		var arrayExtensions = ['jpg', 'jpeg', 'png', 'gif', 'ico'];
		if ((ext.length == 0)&&(options.empty_validation)){
			var error = $(this).parent().find('.error2');
			if (error.length > 0){
				$(error).show();
				return false;
			}
		} else {
			if (!inArray(arrayExtensions, ext)){
				var error = $(this).parent().parent().find('.error1');
				if (error.length > 0){
					$(this).parent().find('.error2').hide();
					$(error).show();
				}
				return false;
			}
		}
	})
	/**
	 * new visibility rules ajax actions
	 */
	$.newVisibilityRule();
	$.dependencyRules();
	$.customViews();
	$.rolloverOnDropbox();
	
	if (!($(".dropbox_page") && ($(".dropbox_page").length > 0))) {
		$('.cfrules [name^=customfields]').applyRules();
	}
	
	/**
	 * all items page
	 */
	if (($("#__filter").length == 1)&&($(".view_rd.views"))&&(!$(".view_rd.views").hasClass('hover'))){
		initScreen(1200);	 
	}
	
	$.integrations();
	if (preselect && (preselect.contacts)&&(preselect.contacts.length > 0)){
		//contacts from bascamp
		$.each(preselect.contacts, function(i, item){
			var html = addEmail((oIndex++), item.email, item.email, 0, item.role);
			if ($("div.email_item").length == 1) {
				$("div.email_item[itemid='-1']").css('display', 'none');
			}
			$(".emails_container").prepend(html);
			var usersArray = nonUserRoles;
			if (item.is_user)
				usersArray = userRoles;
			$.setSelectOptions($(".emails_container").find("select[itemid='" + (oIndex - 1) + "']"), usersArray);
			$(".emails_container").find("select[itemid='" + (oIndex - 1) + "']").val(item.role);
		}); 
	}

	$("#forward_team_url:checkbox, #forward_download_url:checkbox").click(function(){
		if ($("#forward_team_url:checkbox:checked, #forward_download_url:checkbox:checked").length == 0){
			return false;  
		}
	})
	
	
	$.popupInactivity()
	
	$('.list_inline').inlineList();
});
