var DataEditPage = Class.create(Component, {
	onLoad: function(){
		for (var i = 0; i < this.components.length; i++)
			if (this.components[i].getClass() == "EditBox")
				if (this.components[i].setFocus())
					break;
	},

	edit: function(){
		this.setEditMode(true, true);
		return this.setButtons();
	},

	doSave: function(){
		if(xajax.request({xjxfun: this.name + "AxSave"}, {parameters: [xajax.getFormValues(this.name)], mode: "synchronous"}))
		{
			this.setEditMode(false, true);
			this.setButtons();
			return true;
		}
		else
		{
			this.hidePopupMessage();
			return false;
		}
	},

	save: function(){
		this.popupMessage("Please Wait", "Saving Changes - Please Wait...", null, null);
		setTimeout(this.getComponentPath() + ".doSave()", 300);
	},

	cancel: function()	{
		if (xajax.request({xjxfun: this.name + "AxCancel"}, {mode: "synchronous"}))
		{
			this.setEditMode(false, false);
			return this.setButtons();
		}
		else return false;
	},

	setButtons: function(){
		var edit = this.getComponent("Edit");
		var save = this.getComponent("Save");
		var cancel = this.getComponent("Cancel");
		var clear = this.getComponent("Clear");

		if (this.editMode)
		{
			if (edit != null)
				edit.hide();

			if (save != null)
				save.show();

			if (cancel != null)
				cancel.show();

			if (clear != null)
				clear.show();
		}
		else
		{
			if (edit != null)
				edit.show();

			if (save != null)
				save.hide();

			if (cancel != null)
				cancel.hide();

			if (clear != null)
				clear.hide();
		}

		return true;
	}
});

