	function setPostDate(dateStr, date) {
		if (date!=null) {
			window.document.getElementById("date.a").innerHTML = dateStr;
			window.document.getElementById("form.date").value = date;
			window.document.getElementById("nodate").style.display = "none";
			window.document.getElementById("hasdate").style.display = "block";
		} else {
			window.document.getElementById("date.a").innerHTML = '';
			window.document.getElementById("form.date").value = '';
			window.document.getElementById("hasdate").style.display = "none";
			window.document.getElementById("nodate").style.display = "block";
		}
	}
	function showCalendar2(obj) {
		displayCalendar(setDate, window.document.getElementById("date.a").innerHTML, 'yyyy-mm-dd',obj);
	}
	
	submitEnabled = false;
	function submitPostForm() {
		// alert("submit");
		return submitEnabled;
	}
	function enableSubmit() {
		// alert("click");
		submitEnabled = true;
	}
	function addTagsField(field_id) {
		var field = window.document.getElementById(field_id);
		field.onkeyup=suggest_tag;
		addEvent(field, "blur", cleanSuggestion);
	}
	function cleanSuggestion() {
		var ts = window.document.getElementById("tag_suggestion");
		ts.innerHTML = "";
		ts.style.visibility = "hidden";
		// ts.style.display = "none";
	}
	function select_suggestion(e) {
		if (e.keyCode=="38") {
			// move Up
			if (selectedTag>0) setTagSelected(availableTags[selectedTag-1]);
			// alert(selectedTag);
			// alert(availableTags[selectedTag-1]);
		} else if (e.keyCode=="40") {
			// move down
			if (selectedTag<availableTags.length-1) setTagSelected(availableTags[selectedTag+1]);
		} else if (e.keyCode=="32") {
			alert("NO!");
			return false;
		}
	}
	function suggest_tag(event, inputObj) {
		if (!inputObj) inputObj = this;
		var s = inputObj.value;
		var tags = s.split(",");
		var prefix = tags[tags.length-1];
		if (prefix.length<3) {
			cleanSuggestion();
			return;
		}
		var ts = window.document.getElementById("tag_suggestion");
		// window.document.getElementById("noop").innerHTML = findPos(obj)[0] + ", " + findPos(obj)[1];
		pos = findPos(inputObj);
		ts.style.left = pos[0] + "px";
		ts.style.top = (pos[1]+20) + "px";
		req.sendRequest("index.php?load=ajax_tag_suggestion&prefix=" + prefix);
	}
	function replaceLastTagPrefix(event, inputObj) {
		if (!inputObj) inputObj = this;
		var tags = window.document.getElementById("tags");
		var str = tags.value;
		var i = str.lastIndexOf(",");
		if (i==-1) str = "";
		else str = str.substr(0, i+1) + " ";
		str += inputObj.innerHTML;
		
		tags.value = str;
		cleanSuggestion();
		tags.focus();
	}
	function onTagOver(event, inputObj) {
		if (!inputObj) inputObj = this;
		setTagSelected(inputObj);
	}

	selectedTag = -1;
	availableTags = new Array();

	function setTagSelected(o) {
		if (selectedTag!=-1) {
			availableTags[selectedTag].className = "";
		}
		o.className = "selected";
		selectedTag = arrayIndexOf(availableTags, o);
	}
	function showSuggestionDiv(content) {
		content = content.replace(/^\s+|\s+$/g, '') ;
		if (content=="") return;
		var tags = content.split(",");
		var ts = window.document.getElementById("tag_suggestion");
		var div;
		var i;
		cleanSuggestion();
		availableTags = new Array();
		for(i=0; i<tags.length; i++) {
			div = window.document.createElement("A");
			div.onclick=replaceLastTagPrefix;
			div.onmouseover=onTagOver;
			div.innerHTML = tags[i];
			ts.appendChild(div);
			availableTags.push(div);
		}
		setTagSelected(availableTags[0]);
		ts.style.visibility = "visible";
		// ts.style.display = "block";
	}
	var req = new MyHttpRequest();
	req.setProcessorFunc(showSuggestionDiv);
