Annoucements.USER = "a3northcalifornia"
Annoucements.TABLE = "annoucements.json";

function Annoucements()
{
}

function AnnoucementsAPI(){
	this.getAll = function(callbackMethod) 
	{
		Annoucements.callback = callbackMethod;
		// Retrieve the JSON feed.
		var script = document.createElement('script');
		var url = 'http://www.editgrid.com/user/'+Annoucements.USER
			+"/"+Annoucements.TABLE
			+"?callback=AnnoucementsAPI.getCallback";
		script.setAttribute('src', url );
		
		document.documentElement.firstChild.appendChild(script);
		var ret = new Array();
	}
	
	this.get = function(id, callbackMethod) {
		var ret = null;
		callback = function (items) {
			for(var i=0; i<items.length; i++) {
				var item = items[i];
				if (item.id == id) {
					ret = item;
					break;
				}
			}
			callbackMethod(ret);
		};
		var items = this.getAll(callback);
	}
	
	this.getActiveAnnoucement = function(callbackMethod) {
		var ret = null;
		callback = function (items) {
			for(var i=0; i<items.length; i++) {
				var item = items[i];
				if ("Y" == item.isActive.toUpperCase()) {
					ret = item;
					break;
				}
			}
			callbackMethod(ret);
		};
		var items = this.getAll(callback);
	}
	
	this.getActiveAnnoucements = function(callbackMethod) {
		var ret = new Array();
		callback = function (items) {
			var count = 0;
			for(var i=0; i<items.length; i++) {
				var item = items[i];
				if ("Y" == item.isActive.toUpperCase()) {
					ret[count] = item;
					count++;
				}
			}
			callbackMethod(ret);
		};
		var items = this.getAll(callback);
	}
}

AnnoucementsAPI.getCallback = function(json) 
{
	var data = onorex.jsonEditGridToData(json.sheet.Sheet1);
	Annoucements.callback(data);
}