updateFormElements = function(aParams, aForm)
{
	var elem;
	
	for(var elName in aParams)
	{
		elem = aForm[elName];
		if (!elem)
		{
			var doc = get.Doc(aForm);
			if (top.$.browser.msie)
				elem = doc.creatElement('<input type = "hidden" name="' + elName + '">')
			else
			{
				elem = doc.createElement('input');
				elem.type = "hidden" ;
				elem.name = elName;
			}
			aForm.appendChild(elem);
		}
		elem.value = aParams[elName];
	}
}
get = 
{
	Win: function(aObj)
	{
		if (aObj && aObj.isString)
			return top.frames[aObj];
		return (aObj = get.Doc(aObj)) && (aObj.defaultView || aObj.parentWindow || aObj);
	},
	Doc: function(aObj)
	{
		return aObj && (aObj.ownerDocument || aObj.document || aObj);
	},
	iDoc: function(aObj)
	{
		var e
		try {
			return aObj && typeof(aObj) != "undefined" && (aObj.contentDocument ? aObj.contentDocument : (aObj.contentWindow ? aObj.contentWindow.document : ((aObj = get.Win(aObj)) && (aObj = aObj.frames[aObj.name]) && aObj.document)));
		}catch (e){};
	}
}
function translTabLoaded()
{
	var translname = $("#translname"),
		transllanguage = $("#transllanguage"),
		translcomment = $("#translcomment"),
		translbookid = $("#translbookid"),
		translbookid = $("#translbookid"),
		translfile = $("#translfile"),
		translstatus = $("#translstatus"),
		rowid = $("#translid"),
		allFields = $([]).add(translname).add(transllanguage).add(translcomment).add(rowid).add(translfile).add(translstatus),
		tips = $("#translValidateTips");

	function updateTips(t) {
		tips.text(t).effect("highlight",{},1500);
	}

	function checkLength(o,n,min,max) {

		if ( o.val().length > max || o.val().length < min ) {
			o.addClass('ui-state-error');
			updateTips("Length of " + n + " must be between "+min+" and "+max+".");
			return false;
		} else {
			return true;
		}
	}

	function checkRegexp(o,regexp,n) {
		if ( !( regexp.test( o.val() ) ) ) {
			o.addClass('ui-state-error');
			updateTips(n);
			return false;
		} else {
			return true;
		}
	}
	$("#transldialog").dialog({
		bgiframe: true,
		autoOpen: false,
		height: 660,
		width: 1000,
		modal: true,
		overlay: {
			backgroundColor: '#7D82AA',
			opacity: 0.5
		},
		buttons: {
				'Зберегти': function() {
				var bValid = true;
				allFields.removeClass('ui-state-error');
				//bValid = bValid && checkLength(bookname,"назви твору",1,1000);
				var frm = document.getElementById("RTEFrame")
				
				frm = get.iDoc(frm).forms[0];
				if (!frm)
					return
				updateFormElements({
					bookid: translbookid.val(),
					name: translname.val(),
					language: transllanguage.val(),
					comment: translcomment.val(),
					translfile: translfile.val(),
					translstatus: translstatus.val(),
					tblId: "transl",
					rowid: rowid.val(),
					action: rowid.val() ? "edit" : "create"
				}, frm)
				
				get.Win(frm).setTimeout("document.forms[0].submit()", 1000);
	/*			if (bValid)
				{
					$.ajax({
						type: "POST",
						url: "service.php",
						cache: false,
						dataType: "json",
						data:
						{
							bookid: translbookid.val(),
							name: translname.val(),
							language: transllanguage.val(),
							comment: translcomment.val(),
							translfile: translfile.val(),
							translstatus: translstatus.val(),
							tblId: "transl",
							rowid: rowid.val(),
							action: rowid.val() ? "edit" : "create"
						},
						success: function(res)
						{
							if (res.result == "ok")
							{
								if(res.action=="edit")
								{
									$($('#' + res.translid + " TD")[2]).text(res.translname)
								}else
								{
									$('#' + res.container).append(res.text);
								}
								$("#transldialog").dialog('close');
							}else
							{
								$('#' + res.container).empty().append(res.text);
							}
						},
						error: function(html)
						{
							alert("Error appeared!")
						}
					})
				}*/
			},
			'Скасувати': function() {
				$(this).dialog('close');
			}
		},
		close: function() {
			allFields.val('').removeClass('ui-state-error');
		}
	});

}

function booksTabLoaded()
{
	var bookname = $("#bookname"),
		bookauthor = $("#bookauthor"),
		biblioagraphi = $("#biblioagraphi"),
		keyval = $("#keyval"),
		bookthemes = $("#bookthemes"),
		comment = $("#bookcomment"),
		rowid = $("#bookid"),
		bookstatus = $("#bookstatus")
		allFields = $([]).add(bookname).add(bookauthor).add(biblioagraphi).add(keyval).add(bookthemes).add(comment).add(rowid).add(bookstatus),
		tips = $("#booksValidateTips");

	function updateTips(t) {
		tips.text(t).effect("highlight",{},1500);
	}

	function checkLength(o,n,min,max) {

		if ( o.val().length > max || o.val().length < min ) {
			o.addClass('ui-state-error');
			updateTips("Length of " + n + " must be between "+min+" and "+max+".");
			return false;
		} else {
			return true;
		}
	}

	function checkRegexp(o,regexp,n) {

		if ( !( regexp.test( o.val() ) ) ) {
			o.addClass('ui-state-error');
			updateTips(n);
			return false;
		} else {
			return true;
		}
	}
	
	$("#bookdialog").dialog({
		bgiframe: true,
		autoOpen: false,
		height: 580,
		width: 500,
		modal: true,
		overlay: {
			backgroundColor: '#7D82AA',
			opacity: 0.5
		},
		buttons: {
			'Зберегти': function() {
				var bValid = true;
				allFields.removeClass('ui-state-error');

				bValid = bValid && checkLength(bookname,"назви твору",1,1000);
				var data = {
							bookname: bookname.val(),
							bookauthor: bookauthor.val(),
							biblioagraphi: biblioagraphi.val(),
							bookthemes: bookthemes.val(),
							bookstatus: bookstatus.val(),
							tblId: "books",
							rowid: rowid.val(),
							comment: comment.val(),
							action: rowid.val() ? "edit" : "create"
				}
				var obj;
				if ((obj = $("#bookkeywords")) && (obj = obj.val()))
					data.bookwords = obj.join(",")
				if (bValid)
				{
					$.ajax({
						type: "POST",
						url: "service.php",
						cache: false,
						dataType: "json",
						data: data,

						success: function(res)
						{
							if (res.result == "ok")
							{
								if(res.action=="edit")
								{
//									$(res.authorid).cells[2].text(res.authorname)
								}else
								{
									$('#' + res.container).append(res.text);
								}
								$('#bookdialog').dialog('close');
							}else
							{
								$('#' + res.container).empty().append(res.text);
							}
						},
						error: function(html)
						{
							alert("Error appeared!")
						}
					})
				}
			},
			'Скасувати': function() {
				$(this).dialog('close');
			}
		},
		close: function() {
			allFields.val('').removeClass('ui-state-error');
		}
	});

	$('#create-book').click(function() {
		$("#translations").empty();
		loadKeyValues();
		$('#bookdialog').dialog('open');
	})
	.hover(
		function(){ 
			$(this).addClass("ui-state-hover"); 
		},
		function(){ 
			$(this).removeClass("ui-state-hover"); 
		}
	).mousedown(function(){
		$(this).addClass("ui-state-active"); 
	})
	.mouseup(function(){
			$(this).removeClass("ui-state-active");
	});
}
$(booksTabLoaded);
$(translTabLoaded);
fileChange = function(aObj, aStatus)
{
	$(aObj).parent().parent().hide('slow');
	$(aStatus ? '#uploadedfile' : '#fileupploading').show('slow');
	$('#translfile').val(aStatus);
}
function translButtons()
{
	$('#create-transl').click(function() {
		$('#translbookid').val($('#bookid').val());

		$("#translfile").val(0);
		$("#fileupploading").show();
		$("#uploadedfile").hide();


		$('#hidefileupl').hide() 
//		fileChange($('#hidefileupl'), 0)

		$('#transldialog').dialog('open');
	}).hover(
		function(){ 
			$(this).addClass("ui-state-hover"); 
		},
		function(){ 
			$(this).removeClass("ui-state-hover"); 
		}
	).mousedown(function(){
		$(this).addClass("ui-state-active"); 
	})
	.mouseup(function(){
			$(this).removeClass("ui-state-active");
	}).type="button";
}
