var CJAjax = new Class({
	
	initialize: function(URL, Options){
		this.URL = URL;
		
		this.ParamCount = 0;
		this.Params = {};
		try{
			this.Options = Options
		}
		catch(e){
			this.Options = null;
		}
	},
	
	AddParameter: function(Name, Value){
		//alert(Name + ":" + Value);
		this.Params[this.ParamCount] = new Array(Name, Value);
		this.ParamCount++;
	},
	
	EditParameter: function(Name, Value){
		for(var i=0; i<this.ParamCount; i++){
			if(this.Params[i][0] == Name){
				this.Params[i][1] = Value;
				break;
			}
		}
	},
	
	/* BEGIN CALLS */
	
	CallFull: function(){
		try{
			var url = this.GetURL();
			Options = this.Options;
			
			// AJAX
			var myAjax = new Ajax(
				url, 
				{
					method: 'get', 
					onComplete: function(Content){
						if(Options != null){
							if(Options.OnComplete!=null){
								Options.OnComplete(Content);
							}
						}
					}
				}
			);
			myAjax.request();
		}
		catch(e){
			if(Options.OnFailure!=null){
				Options.OnFailure(Content);
			}
		}
	},
	
	CallTrueFalse: function(){
		try{
			var url = this.GetURL();
			Options = this.Options;
			
			// AJAX
			var myAjax = new Ajax(
				url, 
				{
					method: 'get', 
					onComplete: function(Content){
						if(Options != null){
							if(Options.OnComplete!=null){
								Options.OnComplete(Content);
							}
							if(Content == '1' || Content == 'true' || Content == 'True' || Content == 'TRUE'){
								if(Options.OnTrue != null){
									Options.OnTrue(Content);
								}
							}else{
								
								if(Options.OnFalse != null){
									Options.OnFalse(Content);
								}
							}
						}
					}
				}
			);
			myAjax.request();
		}
		catch(e){
			if(Options.OnFailure!=null){
				Options.OnFailure(Content);
			}
		}
	},
	
	/* END CALL */

	/* PRIVATES */
	
	GetURL: function(){
		var url = '';
		for(var i = 0; i<this.ParamCount; i++){
			url = url + '[' + this.Params[i][0] + ':' + this.Params[i][1] + ']/'; 
		}
		
		return this.URL + url;
	}

	
});


/*

var CJAjax = new Class({
		
	initialize: function(URL, ElementID){
		this.URL = URL;
		this.Element = ElementID;
		this.Parameters = {};
		this.ParamCount = 0;
		this.ReturnContainer = null;
	},

	AddParameter: function(Name, Value){
		this.Parameters[this.ParamCount] = new Array(Name, Value);
		this.ParamCount++;
	},
	
	CallYesOrNo: function(Yes, No){
		var url = this.GetURL();
		var ElementID = this.Element;
		var ReturnContainer = this.ReturnContainer;
		window.addEvent('domready', function(){			
			var myAjax = new Ajax(url, {method: 'post', onComplete: function(kram){
				if(ReturnContainer != null){
					$(ReturnContainer).value = kram;
				}
				if(kram=='true' || kram=='1'){
					$(ElementID).innerHTML=Yes;
				}else{
					$(ElementID).innerHTML=No;
				}
			}});
			myAjax.request();
		});
	},
	
	GetURL: function(){
		var url = '';
		for(var i = 0; i<this.ParamCount; i++){
			url = url + '[' + this.Parameters[i][0] + ':' + this.Parameters[i][1] + ']/'; 
		}
		
		return this.URL + url;
	},
	
	EditParameter: function(Name, Value){
		for(var i=0; i<this.ParamCount; i++){
			if(this.Parameters[i][0] == Name){
				this.Parameters[i][1] = Value;
				break;
			}
		}
	},
	
	SetReturnContainer: function(ID){
		this.ReturnContainer = ID;
	}
	
	

	
});

*/
	





