var dgJS = {

	init: function() {
		
		//alert('dgJS is ready');
	
	},
	
	ajaxError: function(request, status, error) {
		console.error('Status: [' + status + ']   Error: [' + error + ']   Text: [' + request.responseText + ']');
	},

	// Handles login functionality
	login: {
		hookLogin: null,
		hookLogout: null,
		
		init: function(hookLogin, hookLogout) {
			$('#dg_login').submit(dgJS.login.login);
			
			dgJS.login.hookLogin = hookLogin ? hookLogin : dgJS.login.loginSuccess;
			dgJS.login.hookLogout = hookLogout ? hookLogout : dgJS.login.logoutSuccess;
		},
		
		login: function() {
			var username = $('#username').val();
			var password = $('#password').val();

			if (!username || !password) {
				alert('please enter username and password');
				return false;
			}
			
			$.ajax({
				type: 'POST',
				url: '/default/login',
				data: ({
					username: username,
					password: password
				}),
				success: dgJS.login.hookLogin,
				error: dgJS.ajaxError,
				dataType: 'json'
			});
			
			return false;
		},
		
		loginSuccess: function(data) {
			if (data.success) {
				$.cookie('oo_success', 1);
				$.cookie('oo_message', 'You have logged in.');
			} else {
				$.cookie('oo_success', 0);
				$.cookie('oo_message', 'You could not be logged in.');
			}
			location.reload();
		},
		
		logout: function() {
			$.ajax({
				type: 'POST',
				url: '/default/logout',
				success: dgJS.login.hookLogout,
				error: dgJS.ajaxError,
				dataType: 'json'
			});
			
			return false;
		},
		
		logoutSuccess: function(data) {
			$.cookie('oo_success', 1);
			$.cookie('oo_message', 'You have logged out.');	
			location.reload();
		}
		
		
	

	
	
	},
	
	// Handles success/failure messaging
	message: {
		init: function(message, success) {
			if (!message) {
				return;
			}
			
			if (success) {
				dgJS.message.success(message);
			} else {
				dgJS.message.failure(message);
			}
		},
			
		clear: function() {
			$('#dg_success').hide();
			$('#dg_success_msg').html('');
			$('#dg_failure').hide();
			$('#dg_failure_msg').html('');
		},
		
		success: function(message) {
			dgJS.message.clear();
			$('#dg_success_msg').html(message);
			$('#dg_success').show();
		},
			
		failure: function(message) {
			dgJS.message.clear();
			$('#dg_failure_msg').html(message);
			$('#dg_failure').show();
		}
			
		
		
		
	},
	
	
	imageUpload: function(success, found, image_id, message) {
		alert("success: " + success);
		alert("found: " + found);
		alert("image: " + image_id);
		alert("message: " + message);
		

	}
	






};
