function toggle_forum(Id ,args_name ,args_value ,area ,child_area ,object ,icn_name ,src ,force ,refresh , after_onload_callmethod,open_all ,icon_src_open ,icon_src_close ){
	try{
		var icon        = document.getElementById(icn_name + Id);
		var area        = document.getElementById(area+ Id);							
		if('undefined' == typeof(force)  ){force   = false};
		if('undefined' == typeof(refresh)){refresh = false};		
		if('undefined' == typeof(open_all)){open_all = false};				
		if('undefined' == typeof(icon_src_open)){icon_src_open   = 'img/icons/minus_icon.gif'};									
		if('undefined' == typeof(icon_src_close)){icon_src_close = 'img/icons/plus_icon.gif'};	
		folder_state =  null != document.getElementById('state_folder'+Id)?document.getElementById('state_folder'+Id):false;
		if(!icon && 'none' == area.style.display) 	return false;
		if(icon && (icon.src.match(icon_src_close) && icon.src.match(icon_src_close) != null )) {	
	          	icon.src = icon_src_open;	
				area.style.display = 'block';           
				for(i=0;i<object.length;i++){
						document.getElementById(object[i] + Id).style.display = 'none';
				}	
				for(i=0;i<args_name.length;i++){
					document.getElementById(args_name[i]).value = 'undefined' != typeof(args_value[i])? args_value[i]:'';					
				}	
				force = (folder_state.value == icon.src)?false:true;
				syncRequest(src,args_name , child_area+Id , '<p align=center><font color=red size=3 align=center ><b>لطفا چند لحظه صبر کنید ...</b></font></p>', 'POST', force ,typeof(after_onload_callmethod)?after_onload_callmethod:false );		
	          	if(false !== folder_state){
	          		folder_state.value = icon.src;	
	          	}	
		}else{
			if(true === refresh){
				for(i=0;i<args_name.length;i++){
					document.getElementById(args_name[i]).value = 'undefined' != typeof(args_value[i])? args_value[i]:'';					
				}	
				if(folder_state && folder_state.value.match('folderOpen.gif')){
					after_onload_callmethod ='forum_onload(true)';
				}	
				syncRequest(src,args_name , child_area+Id , '<p align=center><font color=red size=3 align=center ><b>لطفا چند لحظه صبر کنید ...</b></font></p>', 'POST', true , typeof(after_onload_callmethod)?after_onload_callmethod:false);		
			}else{	
				icon.src = icon_src_close;					
				area.style.display = 'none';
				window.location = '#ref'+Id;				
				window.location = '#topic_top'+Id;
				for(i=0;i<object.length;i++)					                				
					document.getElementById(object[i] + Id).style.display = 'block';
			}		
		}
	}catch(e){alert(e.description)}
	return false;
}

function show(foo,f) {
	try{
		if(null === document.getElementById(foo))
			return;
		document.getElementById(foo).style.display = "block";
		if (f) { setCookie(foo, "o"); }
	}catch(e){alert(e.description)}
}
function hide(foo,f) {
	try{	
		if(null === document.getElementById(foo))
			return;
		document.getElementById(foo).style.display = "none";
		if (f) { setCookie(foo, "c"); }
	}catch(e){alert(e.description)}		
}
function is_marked(objId ,newClass ,forumId ,threadId ,area){
	try{
		document.getElementById(objId).setAttribute('className', newClass);
		setCookie(objId,'visited');
		if(area && document.getElementById(area).style.display == 'none'){		
			setCookie("comment"+forumId+"["+threadId+"]",'open');			
		}else{
			setCookie("comment"+forumId+"["+threadId+"]",'close');					
		}		
	}catch(e){alert(e.description)}	
}	

function area_public_set(action_area ,public_area ,state){
	try{
		var share_area = document.getElementById(public_area);
		var want_area  = document.getElementById(action_area);
		if("" == share_area.innerHTML){
			share_area.innerHTML = want_area.innerHTML;
			want_area.innerHTML ="";
			share_area.value = state;
	  		share_area.style.display='block';
	  	}else{
	  		if(share_area.value == state){
	  			share_area.style.display = 'none' == share_area.style.display ? 'block':'none';
	  		}else{
				var current_area = document.getElementById('area_' + share_area.value);	  			
				current_area.innerHTML = share_area.innerHTML;
				share_area.innerHTML = want_area.innerHTML;
				want_area.innerHTML ="";
				share_area.value = state;
	  			share_area.style.display='block';
	  		}	
	  	}	
	  	document.getElementById('action_type').value = state;
	}catch(e){alert(e.description)}	
	return false;
} 
function action_on_topics(form){
	try{
		if((form.elements['action_type'].value == 'move' && 0 == form.elements['select_forums_move'].selectedIndex) || 
		   (form.elements['action_type'].value == 'copy' && 0 == form.elements['select_forums_copy'].selectedIndex)){
			alert('! انجمن مقصد مشخص نشده است');
			return false;
		}
		if(form.elements['selected_topics[]'].length<1){
			alert('! عنوانی انتخاب نشده است');
			return false;
		}
		if(form.elements['action_type'].value == 'merge' &&  form.elements['merge_topics'].selectedIndex == -1){
			alert('! عنوانی انتخاب نشده است');
			return false;
		}	
		if(form.elements['action_type'].value == 'delete' && !form.elements['delete_type'][0].checked &&
			!form.elements['delete_type'][1].checked){
			alert('! نوع حذف باید انتخاب شود');
			return false;
		}		
		if(form.elements['action_type'].value == 'merge' && form.elements['merge_topics'].length<2){
			alert('! حداقل 2 عنوان باید انتخاب شود');
			return false;
		}	
		if((form.elements['action_type'].value == 'move' && form.elements['move_desc'].value.length<2) ||
			(form.elements['action_type'].value == 'merge' && form.elements['merge_desc'].value.length<3)||
			(form.elements['action_type'].value == 'delete' && form.elements['delete_desc'].value.length<3)){
			alert('! علت مناسب ذکر نشده است');
			return false;
		}	
		if(form.elements['action_type'].value == 'lock' && !form.elements['lock_state'][0].checked &&
			!form.elements['lock_state'][1].checked){
			alert('! وضعیت قفل مشخص نشده است');
			return false;
		}		
		if(form.elements['action_type'].value == 'exempt' && !form.elements['exempt_state'][0].checked &&
			!form.elements['exempt_state'][1].checked){
			alert('! وضعیت استثنا مشخص نشده است');
			return false;
		}		
		if(form.elements['action_type'].value == 'delete'){
			var topics_selected = "";
			for(var i=0;i<form.elements['selected_topics[]'].length;i++){
				topics_selected += form.elements['selected_topics[]'].options[i].text +'\n';
			}	
			confirmed = confirm('ایا از حذف پست های زیر مطمئن هستید ؟'+'\n'+	topics_selected);
			if(!confirmed){
				return false;								
			}	
		}	
		document.getElementById('public_message').style.display = 'block' ;		
		form.submit();
	}catch(e){alert(e.description)}
	return false;
}

function pre_thread_delete(Id ,source_area ,target_area ){
	try{
		target = document.getElementById(target_area+Id);
		source = document.getElementById(source_area);		
		var contentOfForm = source.innerHTML; 
		contentOfForm = contentOfForm.replace(/___id___/g,Id);	
		contentOfForm = contentOfForm.replace(/___area___/g,target_area);			
		target.innerHTML = contentOfForm;
		target.style.display='block';
	}catch(e){alert(e.description)}
	return false;	
}	
function thread_delete(area ,thread ,form){
	try{	
		ids =new Array('thread'+thread ,'post_action_type_delete');
		if('undefined' != typeof(form)){
			if('undefined' != typeof(form.elements['delete_type'])){
				if(!form.elements['delete_type'][0].checked &&	!form.elements['delete_type'][1].checked){			
					alert('! نوع حذف باید انتخاب شود');
					return false;
				}else{
					ids[ids.length] = form.elements['delete_type'][0].checked?form.elements['delete_type'][0].id:form.elements['delete_type'][1].id;
				}	
			}
			if(form.elements['delete_desc'].value.length<3){
				alert('! علت مناسب ذکر نشده است');
				return false;
			}else{
				ids[ids.length] = form.elements['delete_desc'].id ;
			}			
		}		
		confirmed = confirm('آیا مطمئن هستید که می خواهید این پست را حذف نمایید ؟');
		if(!confirmed){return false;}	
		document.getElementById(area).style.display = "block";
		syncRequest('mavara-view_forum_threads.php',ids , area , '<p align=center><font color=red size=3 align=center ><b>لطفا چند لحظه صبر کنید ...</b></font></p>', 'POST', true ,'iframe_onload_remove()');		
	}catch(e){alert(e.description)}
	return false;	
}	
function addItem(checkbox,menu,selected){
	try{
		if( true === checkbox.checked ) {
			menu.options[menu.length] = new Option(checkbox.text,checkbox.value ,selected ,selected);
			return true;
		}else{
			for(var i = 0;i< menu.options.length;i++){
				if(menu.options[i].value == checkbox.value ) {
					menu.options[i] = null;
					return true;
				}	
			}	
		}	
	}catch(e){alert(e.description)}	
	return false;	
}	
function actOncomment(src , area ,msg ,func){
	try{
			syncRequest(src,new Array() , area , msg, 'POST', true ,func);			
	}catch(e){alert(e.description)}
}	
function create_comment_tools(Id ,shareArea ,editor_type ,force){
	try{
		force = 'undefined' == typeof(force)?false:force;
		var object 	  = document.getElementById('newPost'+Id);
		if(true === force || !document.getElementById('form'+Id)){
			var shareArea = document.getElementById(shareArea);	
			contentOfForm = shareArea.innerHTML;
			contentOfForm = contentOfForm.replace(/___id___/g,Id);
			contentOfForm = contentOfForm.replace(/___areaId___/g,'newPost'+Id);	
			contentOfForm = contentOfForm.replace(/___typeOfpost___/g,editor_type);			
			object.style.display = 'block';
			object.innerHTML = '<a name=editor_'+Id+' />'+contentOfForm;	
			addEventHandlerToObject(new Array('password'), new Array(new Array('onkeypress', forceEnglishInput)));
			addEventHandlerToObject(new Array('text', 'textarea'), new Array(new Array('onkeypress', FKeyPress), new Array('onkeydown', FKeyDown), new Array('onkeyup', storeCaret), new Array('onclick', storeCaret), new Array('onselect', storeCaret), new Array('onbeforepaste', pasteCharConvert)));
			self.location = "#editor_"+Id;		
			return true;
		}else{
			object.style.display = 'block';		
			self.location = "#editor_"+Id;		
			return true;
		}	
	}catch(e){alert(e.description)}		
}	

function change_text_show(id ,set_all_id){
	try{
		if((typeof(id) != 'object')){
			var object = document.getElementById('body'+id);
			var img    = document.getElementById('img_state_text'+id);
			if(object.style.display == 'block'){
				img.src = 'img/icons/plus.gif';
				object.style.display = 'none';
			}else{
				img.src = 'img/icons/minus.gif';		
				object.style.display = 'block';
			}	
		}else{
			icon_all = document.getElementById(set_all_id);
			if(icon_all.show == 'n'){
				icon_all.show = 'y';
				icon_all.src = 'img/icons/minus.gif';
				for(var i=0;i<id.length;i++){
						var object = document.getElementById('body'+id[i].value);
						var img    = document.getElementById('img_state_text'+id[i].value);
						img.src = 'img/icons/minus.gif';
						object.style.display = 'block';
				}	
			}else{
				icon_all.show = 'n';
				icon_all.src = 'img/icons/plus.gif';		
				for(var i=0;i<id.length;i++){
						var object = document.getElementById('body'+id[i].value);
						var img    = document.getElementById('img_state_text'+id[i].value);
						img.src = 'img/icons/plus.gif';		
						object.style.display = 'none';
				}	
			}	
		}	
	}catch(e){alert(e.description)}	
}	

function newPost(Id ,shareArea ,threadId ,parentId ,ancestorId){
	try{
		if(create_comment_tools(Id ,shareArea,'newPost' ,false)){
			set_defalut_commentForm('form'+Id ,threadId ,parentId ,ancestorId ,'' ,'' ,'','','','n','n');	
		}	
	}catch(e){alert(e.description)}	
}	

function post_submit(form,area){
	try{
		var ids = new Array();
		var j = 0;
		for(i=0;i<form.length;i++){
			if(form.elements[i].id != '')
				ids[j++] = form.elements[i].id;
		}	
//		syncRequest(form.action,ids , area , '<p align=center><font color=red size=3 align=center ><b>لطفا چند لحظه صبر کنید ...</b></font></p>', 'POST', true ,false );		
		ajaxSyncRequest(form.action, ids, area, '<p align=center><font color=red size=3 align=center ><b>لطفا چند لحظه صبر کنید ...</b></font></p>', 'POST', true)
		if(document.getElementById('countOfqueue') && document.getElementById('countOfqueueTemp')){
			
			document.getElementById('countOfqueue').innerHTML = document.getElementById('countOfqueueTemp').value;
		}			
	}catch(e){alert(e.description)}	
	return false;	
}	

function editPost(src ,data_area ,Id ,shareArea ,threadId ,parentId,ancestorId,title ,summary ,type,smiley,lock_state,exempt_state){
	try{
		if(create_comment_tools(Id ,shareArea ,'editPost' ,true)){
			syncRequest(src,new Array() , data_area , '', 'POST', true ,'fill_textarea("'+data_area+'","'+Id+'")')
			set_defalut_commentForm('form'+Id ,threadId ,parentId,ancestorId,title ,summary ,'لطفا چند لحظه صبر کنید ...',type,smiley,lock_state,exempt_state);
		}	
	}catch(e){alert(e.description)}	
	return false;
}	
function set_defalut_commentForm(Id,threadId ,parentId,ancestorId,title ,summary ,data,type,smiley,lock_state,exempt_state){
		title 	='undefined' == typeof(title)?'':title;
		summary ='undefined' == typeof(summary)?'':summary;
		data 	='undefined' == typeof(data)?'':data;
		type 	='undefined' == typeof(type)?'n':type;
		smiley 	='undefined' == typeof(smiley)?'':smiley;
		lock_state 		='undefined' == typeof(lock_state)?'n':lock_state;
		exempt_state 	='undefined' == typeof(exempt_state)?'n':exempt_state;	
	try{
		form =document.getElementById(Id);
		if('undefined' != typeof(parentId))
			form.elements['parentId'].value 		=  parentId;
		if('undefined' != typeof(ancestorId))		
			form.elements['ancestorId'].value 		=  ancestorId;
		if('undefined' != typeof(threadId))				
			form.elements['threadId'].value 		=  threadId;		
		if(form.elements['comments_title'])
			form.elements['comments_title'].value	=  title;
		if(form.elements['comment_topicsummary'])
			form.elements['comment_topicsummary'].value	=summary;
		if(form.elements['comments_data'])
			form.elements['comments_data'].value	=data;
		for(var i=0;i<form.elements['comment_topictype'].length;i++){	
			if(form.elements['comment_topictype'].options[i].value == type ){
				form.elements['comment_topictype'].options[i].selected = true;
			}	
		}	
		if(form.elements['comment_topicsmiley']){
			for(var i=0;i<form.elements['comment_topicsmiley'].length;i++){	
				if(form.elements['comment_topicsmiley'].options[i].value == smiley ){
					form.elements['comment_topicsmiley'].options[i].selected = true;
				}	
			}	
		}	
		if(form.elements['lock_state'] && lock_state == 'y'){
			form.elements['lock_state'].checked =true;
		}		
		if(form.elements['exempt_state'] && exempt_state == 'y'){
			form.elements['exempt_state'].checked =true;
		}		
	}catch(e){alert(e.description)}	
}
	function set_hits(area_hits ,hits){
		try{
			if(parent.document.getElementById(area_hits)){
				parent.document.getElementById(area_hits).innerHTML = hits;
			}	
		}catch(e){alert(e.description)}		
	}	

	function showFastPreview(data, id, allowHTML ) {
		try{
				if(!document.getElementById(id)) {
					alert('Fast Preview area not defined!');
					return false;
				}
				if(false === allowHTML) {
					data = data.replace(/>/g, '&gt;').replace(/</g, '&lt;');
				}
				document.getElementById(id).innerHTML = '<div class="daneshnamehtext"><center><b><small>توجه: ممکن است بعضی از دستورات ماورا در نمایش سریع عمل نکنند. برای مشاهده آن ها از `پیش نمایش` استفاده کنید!</small></b></center><br><h2>پیش نمایش سریع: </h2>\n<br><br>\n' + parse_data(data) + '</div>';
				window.scrollTo(0,0);	
		}catch(e){alert(e.description)}			
	}
	function saveComment(contents) {
		try{
			contents ='<link rel="StyleSheet"  href="styles/roshdBlue.css" type="text/css" /> <link rel="StyleSheet"  href="styles/BiDi/BiDi.css" type="text/css" /><style>body{font-family:tahoma;font-size:10pt;}</style><body dir="rtl"><table><tr><td>'+contents+'</td></tr></table>';;
			contents = contents.replace(/<TABLE/g ,'<table border=1 ')
			var win = window.open('', '_blank', 'top=10000');
			win.document.open('text/html', '_blank');
			win.document.charset = 'UTF-8';
			win.document.writeln(contents);
			win.document.execCommand('SaveAs', false, '.html')
			win.close();
		}catch(e){alert(e.description)}	
	}
	function rightClicknotPermission(e) {
		if (navigator.appName == 'Netscape' && 	(e.which == 3 || e.which == 2)){
			return false;
		}else if (navigator.appName == 'Microsoft Internet Explorer' && (event.button == 2 || event.button == 3)) {
			alert("Sorry, you do not have permission to right click.");
			return false;
		}
		return true;
	}
	function hintClose(e){
		if (navigator.appName == 'Netscape' && 	(e.which == 3 || e.which == 2)){
			cClick();	
			return false;
		}else if (navigator.appName == 'Microsoft Internet Explorer' && (event.button == 2 || event.button == 3)) {
			cClick();	
			return false;
		}
		return true;
	}
	function escapeHint(e)	{
		var key = window.event ? event.keyCode : event.which;
		if( 27 == key) cClick();
		return key;
	}
	function decide4hint(){
		if(1 == show_hint){
			overlib(title_hint ,arg1 ,arg2 ,arg3 ,body_hint);		
		}
	}	
	function overlib_delay(title,s1,s2,s3,body){
		try{
			if (typeof show_hint != 'undefined'){
				show_hint = 1;			
				title_hint = title;
				body_hint  = body;
				arg1 = s1;
				arg2 = s2;
				arg3 = s3;									
				timer = setTimeout('decide4hint()',500);				
			}else{
				overlib(title,s1,s2,s3,body)
				if(timer) clearTimeout(timer);	
			}	
		}catch(e){alert(e.description)}	
	}	
	function nd_delay(){
		try{	
		if (typeof show_hint != 'undefined')	show_hint = 0;
			nd();	
		}catch(e){alert(e.description)}				
	}	
	function echo(id){
		alert(document.getElementById(id).innerHTML);
		
	}	
	/* example right click no permission
		document.onmousedown=rightClicknotPermission;
		document.onmouseup=rightClicknotPermission;
		if (document.layers) window.captureEvents(Event.MOUSEDOWN);
		if (document.layers) window.captureEvents(Event.MOUSEUP);
		document.onmousedown=rightClicknotPermission;
		document.onmouseup=rightClicknotPermission;
	*/
	
