$(document).ready(function(){ 
		// Disable All Checkboxes to start with
		$("#FMAFrame_Admin_ACL_permissionRead").attr('disabled', 'disabled');
		$("#FMAFrame_Admin_ACL_permissionUpdate").attr('disabled', 'disabled');
		$("#FMAFrame_Admin_ACL_permissionCreate").attr('disabled', 'disabled');
		$("#FMAFrame_Admin_ACL_permissionDelete").attr('disabled', 'disabled');
    
		$("#FMAFrame_Admin_ACL_groupId").change(function() { 
			// Uncheck all boxes before we load the proper values
			$("#FMAFrame_Admin_ACL_permissionRead").attr('checked', false);
			$("#FMAFrame_Admin_ACL_permissionUpdate").attr('checked', false);
			$("#FMAFrame_Admin_ACL_permissionCreate").attr('checked', false);
			$("#FMAFrame_Admin_ACL_permissionDelete").attr('checked', false);	
			// Check to see if its a valid selection
			if($("#FMAFrame_Admin_ACL_groupId").val() != 0) {

				// Re-enable the Checkboxes
				$("#FMAFrame_Admin_ACL_permissionRead").removeAttr('disabled');
				$("#FMAFrame_Admin_ACL_permissionUpdate").removeAttr('disabled');
				$("#FMAFrame_Admin_ACL_permissionCreate").removeAttr('disabled');
				$("#FMAFrame_Admin_ACL_permissionDelete").removeAttr('disabled');
				
				// Assign values to pass into the AJAX Call
				groupid = $("#FMAFrame_Admin_ACL_groupId").val();
				controller	= $("#FMAFrame_Admin_ACL_targetController").val();
				action 			= $("#FMAFrame_Admin_ACL_targetAction").val();
				module 			= $("#FMAFrame_Admin_ACL_targetModule").val();

				// Make the POST requesting a JSON object for Data
				$.post(
					"/json/fetch/type/acl/group/" + groupid + "/asset/" + module + ":" + controller + ":" + action + "",
					{},
					function(data)
					{
						// Assign the proper Checkboxes the proper values
						if(data.R == true) { $("#FMAFrame_Admin_ACL_permissionRead").attr('checked', true); } else { $("#FMAFrame_Admin_ACL_permissionRead").attr('checked', false); }
						if(data.C == true) { $("#FMAFrame_Admin_ACL_permissionCreate").attr('checked', true); } else { $("#FMAFrame_Admin_ACL_permissionCreate").attr('checked', false); }
						if(data.U == true) { $("#FMAFrame_Admin_ACL_permissionUpdate").attr('checked', true); } else { $("#FMAFrame_Admin_ACL_permissionUpdate").attr('checked', false); }
						if(data.D == true) { $("#FMAFrame_Admin_ACL_permissionDelete").attr('checked', true); } else { $("#FMAFrame_Admin_ACL_permissionDelete").attr('checked', false); }		 
					},'json'
					);
					return false;									
			} else {
				// This isn't a valid group, lets disable and uncheck everything
				$("#FMAFrame_Admin_ACL_permissionRead").attr('checked', false);
				$("#FMAFrame_Admin_ACL_permissionUpdate").attr('checked', false);
				$("#FMAFrame_Admin_ACL_permissionCreate").attr('checked', false);
				$("#FMAFrame_Admin_ACL_permissionDelete").attr('checked', false);		
				$("#FMAFrame_Admin_ACL_permissionRead").attr('disabled', 'disabled');
				$("#FMAFrame_Admin_ACL_permissionUpdate").attr('disabled', 'disabled');
				$("#FMAFrame_Admin_ACL_permissionCreate").attr('disabled', 'disabled');
				$("#FMAFrame_Admin_ACL_permissionDelete").attr('disabled', 'disabled');						
			}
    }); 
		$(".FMAFrame_Admin_ACL_Checkbox").click(function() {
			// Post Data to: /admin/control/module/acl
			PermissionCreate 	= $("#FMAFrame_Admin_ACL_permissionCreate").attr('checked')
			PermissionRead 		= $("#FMAFrame_Admin_ACL_permissionRead").attr('checked')
			PermissionUpdate 	= $("#FMAFrame_Admin_ACL_permissionUpdate").attr('checked');
			PermissionDelete 	= $("#FMAFrame_Admin_ACL_permissionDelete").attr('checked');
			groupid 					= $("#FMAFrame_Admin_ACL_groupId").val();
			controller				= $("#FMAFrame_Admin_ACL_targetController").val();
			action 						= $("#FMAFrame_Admin_ACL_targetAction").val();
			module 						= $("#FMAFrame_Admin_ACL_targetModule").val();			

			$.post(
				"/p/admin",
				{ 
					"admin"																: "FMAFrame_ACL_Update",
					"return"															: "/",
					"FMAFrame_Admin_ACL_groupId" 					: groupid,
					"FMAFrame_Admin_ACL_permissionRead"		: PermissionRead,
					"FMAFrame_Admin_ACL_permissionCreate" : PermissionCreate,
					"FMAFrame_Admin_ACL_permissionDelete" : PermissionDelete,
					"FMAFrame_Admin_ACL_permissionUpdate" : PermissionUpdate,
					"FMAFrame_Admin_ACL_targetController" : controller,
					"FMAFrame_Admin_ACL_targetAction" 		: action,
					"FMAFrame_Admin_ACL_targetModule"		 	: module
				},
				function(data)
				{
					alert($(this).attr('name') + "changed to " + $(this).attr('checked'));
				},'json');
		});
});