function dropFile(btn){if(document.getElementById){tr=btn;while(tr.tagName!='TR')tr=tr.parentNode;tr.parentNode.removeChild(tr);checkForLast();}}
function addFile(btn){if(document.getElementById){tr=btn;while(tr.tagName!='TR')tr=tr.parentNode;var newTr=tr.parentNode.insertBefore(tr.cloneNode(true),tr.nextSibling);thisChilds=newTr.getElementsByTagName('td');for(var i=0;i<thisChilds.length;i++){if(thisChilds[i].className=='header')thisChilds[i].innerHTML='';}checkForLast();}}
function checkForLast(){btns=document.getElementsByName('drop');for(i=0;i<btns.length;i++){btns[i].disabled=(btns.length==1)?true:false;}}
function MM_openBrWindow(theURL,winName,features){if(typeof(win_obj) == "undefined"){var win_obj = window.open(theURL,winName,features);win_obj.focus();}else{try{win_obj.location.href = theURL;win_obj.focus();}catch(e){delete win_obj;var win_obj = window.open(theURL,winName,features);win_obj.focus();}}}
function panel_handle(panel_number,tab_name,panel_name)
{
	var tabElm = $(tab_name+panel_number);
	var panelElm = $(panel_name+panel_number);
	var tabContainerElm = tabElm ? tabElm.parentNode : null;
	if (tabElm && tabContainerElm) {
		var nodes = tabContainerElm.childNodes;
		for (var i=0; i<nodes.length; i++) {
			if (nodes[i].nodeName == "LI")
			{
				nodes[i].className = '';
				var tab_id = nodes[i].id;
				var re = eval('/'+tab_name+'/');
				var tab_number = tab_id.replace(re,"");
				var tmppanelElm = $(panel_name+tab_number);
				if(tmppanelElm) tmppanelElm.style.display = "none";
			}
		}
		tabElm.className = 'current';
		if(panelElm) panelElm.style.display = '';
	}
	return false;
}
function set_focus(obj_id){
	$(obj_id).focus(true);
}
function add_tab(tabs_container,panels_container,tab_name,panel_name,tab_value,tab_id)
{
	var tabs_container_obj = $(tabs_container);
	var panels_container_obj = $(panels_container);
	var li_number = 0;
	for(i=0;i<tabs_container_obj.childNodes.length;i++)
		if(tabs_container_obj.childNodes[i].nodeName == 'LI') li_number += 1;
	if(li_number > 11)
	{
		alert("You can't open more than 10 tabs");
		return false;
	}
	if(!$(tab_name+tab_id))
	{
		var li_obj = document.createElement("LI");
		var span_obj = document.createElement("SPAN");
		var a_obj = document.createElement("A");
		var a_text = document.createTextNode(tab_value);
		li_obj.id = tab_name+tab_id;
		a_obj.href = '#';
		a_obj.onmousedown = function(){ return false; };
		a_obj.onclick = function(){ panel_handle(tab_id,tab_name,panel_name); return false; };
		a_obj.appendChild(a_text);
		var a_close_obj = document.createElement("A");
		var a_close_text = document.createTextNode(' X');
		a_close_obj.href = '#';
		a_close_obj.onclick = function(){ close_tab(tab_id,tab_name,panel_name); return false; };
		a_close_obj.appendChild(a_close_text);
		span_obj.appendChild(a_obj);
		span_obj.appendChild(a_close_obj);
		li_obj.appendChild(span_obj);
		tabs_container_obj.appendChild(li_obj);
		var panel_obj = document.createElement("DIV");
		panel_obj.id = panel_name+tab_id;
		panel_obj.style.display = 'none';
		panels_container_obj.appendChild(panel_obj);
		panel_handle(tab_id,tab_name,panel_name);
		return true;
	}else if($(tab_name+tab_id))
	{
		panel_handle(tab_id,tab_name,panel_name);
		return true;
	}
}
function close_tab(panel_number,tab_name,panel_name)
{
	var tabElm = $(tab_name+panel_number);
	var panelElm = $(panel_name+panel_number);
	var tab_parent = tabElm.parentNode;
	if(tabElm && panelElm && tab_parent)
	{
		tab_parent.removeChild(tabElm);
		panelElm.parentNode.removeChild(panelElm);
		for(i=0;i<tab_parent.childNodes.length;i++)
		{
			if(tab_parent.childNodes[i].nodeName == 'LI')
			{
				var first_child_id = tab_parent.childNodes[i].id;
				break;
			}
		}
		var re = eval('/'+tab_name+'/');
		var tab_number = first_child_id.replace(re,"");
		panel_handle(tab_number,tab_name,panel_name);
	}
}
//#####################################################################################
//additional ajax functions
//#####################################################################################
var ErrorBoxTimeOut = new Object;
var mb_number = '';
var oFCKeditor = null;
var	FCKeditorAPI = null;
var timeout = null;
var FCKeditorLoaded = false;
var EmailMessageLoaded = false;
var get_dbimport_func,get_reportbyfe_func,get_bulkunsubscribe_func,get_rbc_func,get_unsubscribe_func;
function showErrorBox(box,messagebox,message)
{
	var box_obj = $(box);
	var messagebox_obj = $(messagebox);
	box_obj.style.display = "";
	if(message.indexOf('%2') !== false) message = decodeURIComponent(message);
	messagebox_obj.innerHTML = message;
	document.getElementsByTagName("body").item(0).scrollIntoView(true);
	if(ErrorBoxTimeOut[box]) clearTimeout(ErrorBoxTimeOut[box]);
	ErrorBoxTimeOut[box] = setTimeout(function(){box_obj.style.display = "none";},6000);
}
function form_results_handler(obj){
	try	{ 
			eval("var inputObject = "+obj.responseText);	// we're expecting a JSON object, eval it to inputObject
			if(inputObject && typeof(inputObject) == 'object'){
				if(inputObject['system_message'] && !inputObject['box']) showErrorBox('messages_box','system_message',inputObject['system_message']);
				else if(inputObject['system_message'] && inputObject['box']) showErrorBox(inputObject['box'],inputObject['message_box'],inputObject['system_message']);
				if(inputObject['call_function'] && inputObject['call_function'] != "")
				{
					var call_function = eval(inputObject['call_function']);
					setTimeout(function(){ call_function(inputObject['function_params']) },100);
				}else if(inputObject['call_functions'])
				{
					for(i in inputObject['call_functions'])
					{
						var args = inputObject['call_functions'][i]['function_params'];
						var func = eval(inputObject['call_functions'][i]['call_function']);
//						alert(inputObject['call_functions'][i]['call_function']+' '+inputObject['call_functions'][i]['function_params']);
						func(args);
					}
				}
				if(inputObject['reset_form'] && inputObject['reset_form'] != "")
				{
					var form_obj = $(inputObject['reset_form']);
					setTimeout(function(){ form_obj.reset(); },100);
					clear_hot_text(form_obj);
				}
				if(inputObject['required_fields']){
					for(tdid in inputObject['required_fields']){
						var tdid_obj = $(tdid);
//						if(inputObject['required_fields'][tdid] === true) tdid_obj.style.color = '#0099FF';
//						else tdid_obj.style.color = '#CEA639';
						if(inputObject['required_fields'][tdid] === true) tdid_obj.className = 'defaultLabel';
						else tdid_obj.className = 'errorLabel';
					}
				}
			}
			LoadDataEnd();
	} catch (e) { alert('There was an error processing: '+obj.responseText); } // in case of an error
}

function load_interface(in_code)
{
//	alert('test5');	
//	if(in_code.jscode && in_code.jscode != '') eval(in_code.jscode);
	if(in_code.htmlcode && in_code.htmlcode != '') $('body').innerHTML = in_code.htmlcode;
	if(lightbox_browser == 'Internet Explorer') global_lightbox.hideSelects('hidden');
	callRemoteFunction(current_script,{'func':'init_interface'});
}

function init_interface(jscode)
{
	//if(jscode && jscode != '') setTimeout(function(){ eval(jscode); },6000);
	eval(jscode);
}

function quick_reset_form(form_name)
{
	if(form_name != "")
	{
		var form_obj = $(form_name);
		if(form_obj)
		{
			form_obj.reset();
			clear_hot_text(form_obj);
		}
	}
	return true;
}

function redirect(destination)
{
	if(destination != "") window.location.href = destination;
}
function LoadDataStart()
{
	try	{ 
		var obj = $('data_preloader');
		if(obj) setDivVisibility(obj,1);
	} catch (e) { return false; }
}
function LoadDataEnd()
{
	try	{ 
		var obj = $('data_preloader');
		if(obj) setDivVisibility(obj,0);
	} catch (e) { return false; }
}
function LightBoxActivate()
{
	global_lightbox.activate();
}
function LightBoxDeactivate(hidetime)
{
	if(parseInt(hidetime, 10) > 0) setTimeout(function(){ global_lightbox.deactivate(); },parseInt(hidetime, 10));
	else global_lightbox.deactivate();
}
function fill_form(form_data)
{
	var form_obj = $(form_data['form']);

	if(form_obj)
	{
		k = '';
		for(i=0;i<form_obj.elements.length;i++)
		{
			if(form_obj.elements[i].tagName == 'INPUT')
			{
				if(form_obj.elements[i].type == 'text' || form_obj.elements[i].type == 'password' || form_obj.elements[i].type == 'hidden')
				{
					if(form_data['content'][form_obj.elements[i].id]) form_obj.elements[i].value = form_data['content'][form_obj.elements[i].id];
					else if(form_obj.elements[i].type != 'hidden') form_obj.elements[i].value = '';
				}else if(form_obj.elements[i].type == 'checkbox')
				{
					if(typeof(form_data['content'][form_obj.elements[i].id]) == 'object' && typeof(form_data['content'][form_obj.elements[i].id].length) != 'undefined' && form_data['content'][form_obj.elements[i].id].length > 0)
					{
						var checkbox_values = form_data['content'][form_obj.elements[i].id];
						for(k in checkbox_values)
						{
							if(form_obj.elements[i].value == checkbox_values[k])
							{
								form_obj.elements[i].checked = true;
								break;
							}else form_obj.elements[i].checked = false;
						}
					}else if(typeof(form_data['content'][form_obj.elements[i].id]) == 'string')
					{
						if(form_obj.elements[i].value == form_data['content'][form_obj.elements[i].id]) form_obj.elements[i].checked = true;
						else form_obj.elements[i].checked = false;
					}
				}else if(form_obj.elements[i].type == 'radio')
				{
					if(form_obj.elements[i].value == form_data['content'][form_obj.elements[i].id]) form_obj.elements[i].checked = true;
					else form_obj.elements[i].checked = false;
				}
			}else if(form_obj.elements[i].tagName == 'SELECT')
			{
				if(form_obj.elements[i].options.length > 0)
				{
					for(j=0;j<form_obj.elements[i].options.length;j++)
					{
						if(form_obj.elements[i].multiple === false)
						{
							//alert(form_obj.elements[i].id+':'+form_data['content'][form_obj.elements[i].id]+' - ' +form_obj.elements[i].options[j].value);
							if(form_data['content'][form_obj.elements[i].id] && form_obj.elements[i].options[j].value == form_data['content'][form_obj.elements[i].id]) form_obj.elements[i].options[j].selected = true;
							else form_obj.elements[i].options[j].selected = false;
						}else
						{
							if(typeof(form_data['content'][form_obj.elements[i].id]) == 'object' && typeof(form_data['content'][form_obj.elements[i].id].length) != 'undefined' && form_data['content'][form_obj.elements[i].id].length > 0)
							{
								var selectbox_values = form_data['content'][form_obj.elements[i].id];
								for(k in selectbox_values)
								{
									if(form_obj.elements[i].options[j].value == selectbox_values[k])
									{
										form_obj.elements[i].options[j].selected = true;
										break;
									}else form_obj.elements[i].options[j].selected = false;
								}
							}
						}
					}
				}
			}else if(form_obj.elements[i].tagName == 'TEXTAREA')
			{
				if(typeof(form_data['content'][form_obj.elements[i].id]) == "string")
				{
					form_obj.elements[i].value = form_data['content'][form_obj.elements[i].id];
					if(typeof(FCKeditorAPI) == 'object')
					{
						try	{ 
							var oEditor = FCKeditorAPI.GetInstance(form_obj.elements[i].id);
							//alert(form_data['content'][form_obj.elements[i].id]);
							if(typeof(oEditor) == 'object')
								if(form_data['content'][form_obj.elements[i].id] != "")
								{
									oEditor.SetHTML(form_data['content'][form_obj.elements[i].id]);
									var form_elm_id = form_obj.elements[i].id;
									setTimeout(function(){ var oEditor = FCKeditorAPI.GetInstance(form_elm_id); oEditor.SwitchEditMode(); oEditor.SwitchEditMode(); }, 1500);
								}
						} catch (e) { continue; }
					}
				}else
				{
					form_obj.elements[i].value = '';
					if(typeof(FCKeditorAPI) == 'object')
					{
						try	{
							var oEditor = FCKeditorAPI.GetInstance(form_obj.elements[i].id);
							if(typeof(oEditor) == 'object') oEditor.SetHTML(' ');
						} catch (e) { continue; }
					}
				}
			}
		}
	}
	return true;
}
function loadBlock(block)
{
	if(block)
	{
		for(i in block)
		{
			var tmpobj = $(i);
			if(tmpobj && typeof(tmpobj) == 'object')
			{
				tmpobj.innerHTML = block[i];
				block_loading_flag = 0;
			}
		}
	}
}
function fillBox(id, classname, content)
{
	var box = $(id);
	box.className = classname;
	if(content != "") box.innerHTML = content;
	setDivVisibility(box,0);
}
function getNumRows(id,index)
{
	if(index == "" || typeof(index) == "undefined") index = 0;
	var obj = $(id);
	var num_rows = obj.options[obj.selectedIndex].value;
	return num_rows;
}
function createWin(parent_obj, id, classname, top, left, content)
{
	this.new_win = document.createElement("DIV");
	this.new_win.className = classname;
	this.new_win.id = id;
	moveDivTo(this.new_win,left,top);
	if(content != "") this.new_win.innerHTML = content;
	setDivVisibility(this.new_win,0);
	parent_obj.appendChild(this.new_win);
}
function clear_hot_text(tmpobj)
{
	var nodes = tmpobj.childNodes;
	for (var i=0; i<nodes.length; i++) {
		if (nodes[i].nodeName == "SPAN" && nodes[i].id.indexOf('cell_')>=0) { nodes[i].className = 'defaultLabel'; }
		else clear_hot_text(nodes[i]);
	}
}
function set_cookie(params)
{
	if (params['days']) {
			var date = new Date();
			date.setTime(date.getTime()+(params['days']*24*60*60*1000));
			var expires = "; expires="+date.toGMTString();
		}
		else var expires = "";
		//alert(params['name']+"="+params['value']+expires+"; path=/");
		document.cookie = params['name']+"="+params['value']+expires+"; path=/";
}
function initEditor(textarea_name)
{
	if(oFCKeditor == null && FCKeditorAPI == null)
	{
		oFCKeditor = new FCKeditor(textarea_name);
		oFCKeditor.BasePath = "scripts/FCKeditor/";
		oFCKeditor.Height = 290;
		oFCKeditor.ReplaceTextarea();
	}else
	{
		if(!document.all && typeof(FCKeditorAPI) == 'object')
		{
			var oEditor = FCKeditorAPI.GetInstance(textarea_name);
			if (oEditor && oEditor.EditorDocument && oEditor.EditMode == FCK_EDITMODE_WYSIWYG)
			{
				oEditor.SwitchEditMode();
				oEditor.SwitchEditMode();
			}
		}
	}
}
function FCKeditor_OnComplete(editorInstance) {
  FCKeditorLoaded = true;
}
function EmailMessage_OnComplete() {
  EmailMessageLoaded = true;
}
function loadContentToEditor(id) {
  if(!FCKeditorLoaded) {
    setTimeout(function(){ loadContentToEditor(id); }, 500);
    return;
  }
  callRemoteFunction(current_script,{'func':'get_email_message','params':{'id':id}});
  ReloadTreeOnCompleteEmailMessage();
}
function ReloadTreeOnCompleteEmailMessage() {
  if(!EmailMessageLoaded) {
    setTimeout(function(){ ReloadTreeOnCompleteEmailMessage(); }, 500);
    return;
  }
  reloadTree("treeloader.php");
  EmailMessageLoaded = false;
}
function changeDisplayStatus(blocks, show_status)
{
	if(typeof(blocks) == 'object')
		for(i in blocks) $(blocks[i]).style.display = show_status;
}
function LogoutStart()
{
	LightBoxActivate();
	callRemoteFunction('logout.php',{'func':'logout'});
}
function LogoutFinish(htmlcode)
{
	oFCKeditor = null;
	FCKeditorAPI = null;
	FCKeditorLoaded = false;
	EmailMessageLoaded = false;
	$('body').innerHTML = htmlcode;
	setTimeout(function(){ set_focus('login'); LightBoxDeactivate(); },2000);
}
function CallFunctionByTimer(params)
{
	var call_function = eval(params['call_function']);
	setTimeout(function(){ call_function(params['function_params']) },parseInt(params['timeout'],10));
}
function show_forms(status)
{
	if(status == undefined)
	{
		if($('forms').style.display == "none")
		{
			$('panel20_3').style.display = "none";
			$('panel20_3').innerHTML = "";
			$('forms').style.display = "block";
			if($('panel20_1').style.display == "none") $('panel20_1').style.display = "block";
		}
	}else if(status == "hide")
	{
		$('forms').style.display = 'none';
		$('forms').innerHTML = "";
		$('panel20_3').innerHTML = "";
		$('panel20_3').style.display = 'block';
	}
}
function call_reportbyfe_page_functions(args)
{
	if(get_reportbyfe_func) clearInterval(get_reportbyfe_func);
	if(args && args["refresh_status"] == 1) get_reportbyfe_func = setInterval(function(){ callRemoteFunction('report_by_filtered_emails.php',{'func':'get_table_data','params':{'get_xml':'1'}}); },15000);
}
function call_bulk_unsubscribe_page_functions(args)
{
	if(get_bulkunsubscribe_func) clearInterval(get_bulkunsubscribe_func);
	if(args && args["refresh_status"] == 1) get_bulkunsubscribe_func = setInterval(function(){ callRemoteFunction('bulk_unsubscribe.php',{'func':'get_table_data','params':{'get_xml':'1'}}); },15000);
}
function show_unsubscribing_table(args)
{
	if(get_unsubscribe_func) clearInterval(get_unsubscribe_func);
	if(args && args["refresh_status"] == 1)
	{
		panel_handle('1_2','pan','panel');
		callRemoteFunction('unsubscribe.php',{'func':'get_table_data','params':{'info_type':'1'}});
		get_unsubscribe_func = setInterval(function(){ callRemoteFunction('unsubscribe.php',{'func':'get_table_data','params':{'info_type':'2'}}); },15000);
	}
}
function getTasksParams(obj)
{
	if(obj["updated_cells"])
	{
		var table_obj = $('unsubscribing_table');
		//alert(table_obj.rows.length);
		for(i in obj["updated_cells"])
		{
			var id = 0;
			for(j in obj["updated_cells"][i])
			{
				if(j == "id") id = obj["updated_cells"][i][j];
				if(id > 0) var tmp_obj = $(j+'_'+id);
				else tmp_obj = null;
				if(j != "id" && tmp_obj != null) tmp_obj.innerHTML = obj["updated_cells"][i][j];
			}
		}
	}
}
function new_freecap(cap_id)
{
	if(document.getElementById)
	{
		thesrc = document.getElementById(cap_id).src;
		thesrc = thesrc.substring(0,thesrc.lastIndexOf(".")+4);
		document.getElementById(cap_id).src = thesrc+"?"+Math.round(Math.random()*100000);
	} else {
		alert("Sorry, cannot autoreload Captcha image\n");
	}
}
function selectedForDropDownListData(cal)
{
	var p = cal.params;
	var update = (cal.dateClicked || p.electric);
	if (update && p.inputField) {
		var total_name = p.inputField.id.split('[');
		var month_box = document.getElementById(total_name[0]+'[month]');
		var day_box = document.getElementById(total_name[0]+'[day]');
		var year_box = document.getElementById(total_name[0]+'[year]');
		var m = parseInt(cal.date.print("%m"),10);
		var d = parseInt(cal.date.print("%d"),10);
		var y = parseInt(cal.date.print("%Y"),10);
		if(month_box.options.length > 0)
			for(j=0;j<month_box.options.length;j++)
			{
				if(month_box.options[j].value == m) month_box.options[j].selected = true;
				else month_box.options[j].selected = false;
			}
		if(day_box.options.length > 0)
			for(j=0;j<day_box.options.length;j++)
			{
				if(day_box.options[j].value == d) day_box.options[j].selected = true;
				else day_box.options[j].selected = false;
			}
		year_box.value = y;
	}
	if (update && p.singleClick && cal.dateClicked)
		cal.callCloseHandler();
}
