var TCNWN = TCNWN || {};
		
(function(){
	if(typeof window["webkitNotifications"] === "object") {
		TCNWN.myNotifications = window.webkitNotifications;
		TCNWN.notificationStatus = "Unknown, click to <a href='javascript:TCNWN.myNotifications.requestPermission(TCNWN.setup);'>enable web notifications</a>.";
		TCNWN.notification;
		
		TCNWN.gotMail = function() {
			if(TCNWN.myNotifications.checkPermission() === 0) {
				TCNWN.notification = TCNWN.myNotifications.createNotification("http://www.thecssninja.com/demo/web_notifications/icon.png","You've got mail","The CSS Ninja has sent you an email");
				TCNWN.notification.ondisplay = function() {
					var audio = new Audio("youvegotmail.mp3");
					audio.play();
					window.setTimeout("TCNWN.notification.cancel()", 10000);
				}
				TCNWN.notification.show();
			} else {
				alert("You need to allow web notifications for this to work");
			}
		};
		
		TCNWN.loadTweet = function() {
			if(TCNWN.myNotifications.checkPermission() === 0) {
				TCNWN.notification = TCNWN.myNotifications.createHTMLNotification('http://www.thecssninja.com/demo/web_notifications/tweet.html');
				TCNWN.notification.show();
			} else {
				alert("You need to allow web notifications for this to work");
			}
		};
		
		TCNWN.setup = function() {
			if(TCNWN.myNotifications.checkPermission() === 1) { // 1 = PERMISSION_UNKNOWN
				TCNWN.myNotifications.requestPermission();
				TCNWN.notificationStatus = "Unknown, click the link to enable web notifications.";
			} else if(TCNWN.myNotifications.checkPermission() === 0) { // 0 = PERMISSION_ALLOWED
				TCNWN.notificationStatus = "Allowed, notifications are on you can now test the demos out! <a href='javascript:TCNWN.myNotifications.requestPermission(TCNWN.setup);'>Disable web notifications?</a>";
			} else {  // 2 = PERMISSION_DENIED
				TCNWN.notificationStatus = "Denied, well you're no fun. If you want to see this working <a href='javascript:TCNWN.myNotifications.requestPermission(TCNWN.setup);'>enable web notifications</a>.";
			}
			
			if(!!document.getElementById("nStatus"))
				document.getElementById("nStatus").innerHTML = TCNWN.notificationStatus;
		};
		
		window.onload = TCNWN.setup;
	} else {
		alert("You're browser doesn't support notifications.");
	}
})();
