function objCollection(){
	var me = this;

	var items = new Array();
	me.onChange = null;
	
	me.add = function(obj){
		indx = items.length;
		items[indx] = obj;

		if (me.onChange != null){
			me.onChange();
		}
		return(indx);
	}

	me.get = function(indx){
		return (indx < items.length && indx > -1 ? items[indx] : null);
	}

	me.length = function(){
		return(items.length);
	}

	me.find = function(field, value, quotes){
		quotes += "";
		quotes = (quotes=="undefined"||quotes=="null" ? "" : quotes)
		for (var i=0;i<items.length;i++){
			if (eval("items[i]." + field + " == " + quotes + value + quotes)){
				return(i);
			}
		}
		return(-1);
	}

	me.sort = function(field){
		items.sort( function(a, b){
			if (eval("a." + field + " < b." + field)){
				return -1
			}else if (eval("a." + field + " > b." + field)){
				return 1
			}else{
				return 0
			}
		});
	}

	me.remove = function(indx){
		for (var i=(indx*1);i<items.length-1;i++){
			items[i] = items[i+1];
		}

		if (items.length>0){
			items = items.slice(0,-1);
		}else{
			items = new Array();
		}

		if (me.onChange != null){
			me.onChange();
		}
	}
}
