var gors = {
    messages: {
        info: function(message) {
            $.jGrowl(message, {header: 'operational-research.gov.uk' });
        }
    },
    civilservice: {
    	init: function() {
			var options = {
			};
			$('#contact_form').validate(options);
    	}
    },
    committees: {
        init: function() {
           $('#committee_admin_form').submit(function(event){
                event.preventDefault();
                var memberIdToRemove = $(this).find('select[name=remove] option:selected').val();
                var memberIdToAdd = $(this).find('select[name=add] option:selected').val();
                var committeeId = $('input[name=committee_id]').val();
                if (memberIdToRemove) gors.committees.removeMember(memberIdToRemove, committeeId);
                if (memberIdToAdd) gors.committees.addMember(memberIdToAdd, committeeId);
            })
        },
        addMember: function(memberId, committeeId) {
            $.post(
                '/members/committees/add_member/', 
                {person_id: memberId, committee_id: committeeId},
                function(response){
                    $('option[value='+memberId+']').remove();   
                    $('#member_list').load('/members/committees/load_member_list/', {'committee_id': committeeId});
                    gors.messages.info('member #'+memberId+' added to committee');             
                }, 
                'html'
            )
        },
        removeMember: function(memberId, committeeId) {
            $.post(
                '/members/committees/remove_member/', 
                {person_id: memberId, committee_id: committeeId},
                function(response){
                    $('option[value='+memberId+']').remove();   
                    $('#member_list').load('/members/committees/load_member_list/', {'committee_id': committeeId}); 
                    gors.messages.info('member #'+memberId+' removed from committee');                 
                }, 
                'html'
            )
        }
    },
    library:  {
    	init: function() {
    	    $('#topic').val('0');
	    	$('#topic').blur(function(){
	            $.post(
	                '/members/library/load_subtopics/', 
	                {"parent_id": $(this).val()},
	                function(responseHtml){
	                	$('#subtopic').html(responseHtml).show();
	                }, 
	                'html'
	            );
	        });
    	}
    },
    directory: {
    	getSelectedEmails: function() {
    		var inputs = $('table.display input:checked').next('input.email')
        	 										      .filter(function(){return $(this).val() != '';});
    		return $.map(inputs, function(ele){return $(ele).val();});	    
    	},
    	displaySelected: function() {
    	    var emails = gors.directory.getSelectedEmails();                            
    		$('#email_addresses').val(emails.join(";\n"));
    	},
    	openMailTo: function() {
    		var emails = gors.directory.getSelectedEmails();  
    		if (!emails.length) {
    			alert("Please make a selection")
    		} else {
    			window.location = "mailto:"+emails.join(",");
    		}
    	}
    }
}
