
function makeRequest(mode){
	if ( mode == "newType" ) var postData = "mode=newType&name="+document.product.TypeSname.value+"&Fname="+document.product.TypeFname.value+"&sectionName="+document.product.sectionName.value+"&noUrl="+document.product.noUrl.value;
	if ( mode == "delType" ) var postData = "mode=delType&name="+document.product.delTypeName.value+"&sectionName="+document.product.sectionName.value+"&noUrl="+document.product.noUrl.value;
	if ( mode == "editType" ) var postData = "mode=editType&name="+document.product.typeName.value+"&newName="+document.product.Sname.value+"&Fname="+document.product.Fname.value+"&sectionName="+document.product.sectionName.value+"&noUrl="+document.product.noUrl.value;
	if ( mode == "newProduct" ) var postData = "mode=newProduct&name="+document.product.Sname.value+"&Fname="+document.product.Fname.value+"&typeName="+document.product.typeName.value+"&sectionName="+document.product.sectionName.value+"&noUrl="+document.product.noUrl.value;
	if ( mode == "delProduct" ) var postData = "mode=delProduct&name="+document.product.productName.value+"&sectionName="+document.product.sectionName.value+"&noUrl="+document.product.noUrl.value;
	if ( mode == "redrawMenu" ) var postData = "mode=redrawMenu&name="+document.product.typeName.value+"&sectionName="+document.product.sectionName.value+"&noUrl="+document.product.noUrl.value;
	if ( mode == "editProduct" ) var postData = "mode=editProduct&name="+document.product.productName.value+"&newName="+document.product.Sname.value+"&Fname="+document.product.Fname.value+"&sectionName="+document.product.sectionName.value+"&noUrl="+document.product.noUrl.value;
	if ( mode == "updateMeta" ) var postData = "mode=updateMeta&name="+document.metaform.pageId.value+"&key="+document.metaform.metaKeywords.value+"&descr="+document.metaform.metaDescription.value+"&pageType="+document.metaform.pageType.value+"&title="+document.metaform.pageTitle.value+"&noUrl="+document.product.noUrl.value;
	if ( mode == "managerUpdate" ) {
		var phone = document.managerForm.mPhone.value;
		phone = phone.replace(/\+/, '_plus_');
		var postData = "mode=updateManager&pageId="+document.metaform.pageId.value+"&mName="+document.managerForm.mName.value+"&mPhone="+phone+"&mEmail="+document.managerForm.mEmail.value+"&noUrl="+document.product.noUrl.value;
	}
	if ( mode == "deletePdf" ) var postData = "mode=pdfDelete&name="+document.metaform.pageId.value+"&pageType="+document.metaform.pageType.value+"&pdfId="+document.metaform.pdfId.value+"&noUrl="+document.product.noUrl.value;
	if ( mode == "updatePDF" ) YAHOO.util.Connect.setForm(document.getElementById('pdfForm'), true, false);
	if ( mode == "managerImg" ) YAHOO.util.Connect.setForm(document.getElementById('managerForm'), true, false);
	var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback, postData);
}

function showTypeForm(){
	c = document.getElementById('typeForm').style;	c.display = (c.display == 'block') ? 'none' : 'block';
	formName = "typeForm";
	formDiv = document.getElementById(eval("'"+formName+"'"));	
	formDiv.innerHTML = "	url: <br /><input type=\"text\" name = \"TypeSname\" value=\"\" /><br />";
	formDiv.innerHTML += "   название: <input type=\"text\" name = \"TypeFname\" value=\"\" /><br />";
	formDiv.innerHTML += "<input type=\"button\" value=\"сохранить\" onclick=\"makeRequest('newType')\" />";
	formDiv.innerHTML += "<input type=\"button\" value=\"отмена\" onclick=\"document.getElementById('typeForm').style.display='none';\" />";
}

function delType(type){
	if ( confirm("Вы уверены?")){
		document.product.delTypeName.value=type;
		makeRequest("delType");
	}
}

function editType(typeId){
	formName = "editType"+typeId;
	formDiv = document.getElementById(eval("'"+formName+"'"));
	formDiv.innerHTML = "	url:<br /><input type=\"text\" name = 'Sname' value=\""+typeId+"\" /><br />";
	typeName = document.getElementById(eval("'"+typeId+"'"));
	formDiv.innerHTML += "	название: <input type=\"text\" name = \"Fname\" value=\""+typeName.innerHTML+"\" /><br />";
	formDiv.innerHTML += "	<input type=\"button\" value=\"сохранить\" onclick=\"makeRequest('editType');\" />&nbsp&nbsp;<input type=\"button\" value=\"отмена\" onclick=\"redraw('"+typeId+"');\" />";
	//formDiv.innerHTML += "	<input type=\"hidden\" name=\"sectionName\" value=\"\">";
	formDiv.innerHTML += "	<input type=\"hidden\" name=\"typeName\" value=\""+typeId+"\" />";
	style = formDiv.style; style.color = "#fff";style.padding= "7px";
	if ( style.display == 'block' ) makeRequest("redrawMenu");
	
	//style.display = (style.display == 'block') ? 'none' : 'block';
	//makeRequest("editType");
}

function redraw(typeId)
{
	formName = "editType"+typeId;
	formDiv = document.getElementById(eval("'"+formName+"'"));
	formDiv.innerHTML = "	<input type=\"hidden\" name=\"typeName\" value=\""+typeId+"\" />";

	makeRequest("redrawMenu");
}


function showProductForm(typeId){
	formName = "productForm"+typeId;
	formDiv = document.getElementById(eval("'"+formName+"'"));
	if ( document.product.noUrl.value == '1' ) formDiv.innerHTML = "	<input type=\"hidden\" name = 'Sname' value=\"url2change\" /><br />";
	else formDiv.innerHTML = "	url:<br /><input type=\"text\" name = 'Sname' value=\"\" /><br />";
	formDiv.innerHTML += "	название: <input type=\"text\" name = \"Fname\" value=\"\" /><br />";
	formDiv.innerHTML += "	<input type=\"button\" value=\"сохранить\" onclick=\"makeRequest('newProduct');\" />";
	formDiv.innerHTML += "	<input type=\"button\" value=\"отмена\" onclick=\"document.getElementById('productForm"+typeId+"').style.display='none';\" />";
	//formDiv.innerHTML += "	<input type=\"hidden\" name=\"sectionName\" value=\"\">";
	formDiv.innerHTML += "	<input type=\"hidden\" name=\"typeName\" value=\""+typeId+"\" />";
	style = formDiv.style;	style.display = (style.display == 'block') ? 'none' : 'block';
}

function delProduct(product, type){
	if ( confirm("Вы уверены?")){
		formName = "productForm"+type;
		formDiv = document.getElementById(eval("'"+formName+"'"));
		formDiv.innerHTML = "	<input type=\"hidden\" name=\"productName\" value=\""+product+"\" />";
		makeRequest("delProduct");
	}
}

function editProduct(product, type){
	formName = product+"_"+type;
	formDiv = document.getElementById(eval("'"+formName+"'"));
	if ( document.product.noUrl.value == '1' ) formDiv.innerHTML ="<input type=\"hidden\" name = 'Sname' value=\""+product+"\"  /><br />";
	else formDiv.innerHTML ="url:<br /><input type=\"text\" name = 'Sname' value=\""+product+"\" style=\"margin: 5px 0px;\" /><br />";
	productName = document.getElementById(eval("'"+product+"'"));
	formDiv.innerHTML += "название:<input type=\"text\" name = \"Fname\" value=\""+productName.innerHTML+"\" style=\"margin: 5px 0px;\" />";
	formDiv.innerHTML += "	<input type=\"button\" value=\"сохранить\" onclick=\"makeRequest('editProduct');\" />&nbsp&nbsp;<input type=\"button\" value=\"отмена\" onclick=\"productCancel('"+type+"', '"+product+"')\" />";
	//formDiv.innerHTML += "	<input type=\"hidden\" name=\"sectionName\" value=\"\">";
	formDiv.innerHTML += "	<input type=\"hidden\" name=\"typeName\" value=\""+type+"\" />";
	formDiv.innerHTML += "	<input type=\"hidden\" name=\"productName\" value=\""+product+"\" />";
	style = formDiv.style; style.color = "#fff";//style.display="block";//formDiv.className="types";style.padding= "7px";
}

function productCancel(type, product){
	//formName = "productForm"+type;
	formName = product+"_"+type;
	formDiv = document.getElementById(eval("'"+formName+"'"));
	//formDiv.className="menuEdit";
	formDiv.innerHTML = "<a class=\"adminIcons\" href=\"javascript:delProduct('"+product+"', '"+type+"')\">удалить</a>|<a class=\"adminIcons\" href=\"javascript:editProduct('"+product+"', '"+type+"')\">изменить</a>";
	//style = formDiv.style; style.display = 'none';
}

function editPage()
{
	editor = document.getElementById("editor");
	style = editor.style;
	style.display = (style.display == 'block') ? 'none' : 'block';
}

function disablePage(page)
{
	var postData = "mode=swapVisibilityPage&name="+page;
	if ( eval("document.mapForm."+page+".checked") ) postData += "&action=enable";
	else postData += "&action=disable";
	var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback, postData);
}

function rightMenuSelect(menu)
{
	myRef = window.open('/updater.php?map=1&type='+menu,'mywin', 'left=300, top=100,width=650,height=680,toolbar=0,resizable=1,scrollbars=1')
}

function rightMenuEdit(id, lnk)
{
	var editLink = document.getElementById(id);
	var oldHTML = editLink.innerHTML;
	editLink.innerHTML = "<br />название ссылки<br /><input type='text' name='right_link' value='"+lnk+"' /><input type='button' value=' сохранить ' onclick='rightMenuLinkEdit("+id+")' /><input type='button' value=' отмена ' onclick='rightMenuLinkCancel("+id+", \""+oldHTML.replace(/([\\"'])/g, "\\$1").replace(/\0/g, "\\0")+"\")' /><br />";
}

function rightMenuLinkEdit(id)
{
	var postData = "mode=rightMenuLinkUpdate&name="+document.rightMenu.right_link.value+"&pid="+id;
	request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback, postData);
}

function rightMenuLinkCancel(id, html)
{
	var editLink = document.getElementById(id);
	editLink.innerHTML = html;
}

function managerImgForm(srrc, tp)
{
	imgDiv = document.getElementById("imgSrc");
	imgDiv.innerHTML = 'Изображение в формате jpeg, gif, png, ширина не больше 160px<br /><input type="file" name="mImg" value="" /><input class="save" type="button" value="&nbsp;" onclick="document.managerForm.pageId.value=document.metaform.pageId.value;makeRequest(\'managerImg\');" />'; 
	imgDiv.innerHTML += '<input class="cancel" type="button" value="&nbsp;" onclick="managerImgForm(\''+srrc+'\', \'cancel\');" /><input type="hidden" name="mode" value="managerImg" />';
	imgDiv.innerHTML += '<input type="hidden" name="pageId" value="" />';
	//alert(imgDiv.innerHTML);
	if ( tp == 'cancel' ) imgDiv.innerHTML = '<img src="/images/managers/'+srrc+'" alt="Менеджер направления" onclick="managerImgForm(\''+srrc+'\', 0)" />';
}

function editPDFForm(name, id, url, size)
{
	pdf = document.getElementById("pdf"+id);
	if ( document.metaform.pdfId.value == '' ){
		pdf.innerHTML = 'Название ссылки на PDF-файл:<br /><input type="text" name="PDFNAME" value = "'+name+'"/ ><br />';
		pdf.innerHTML += '	<p><input class="save" type="button" value="&nbsp;" onclick="makeRequest(\'updatePDF\');" /><input class="cancel" type="button" value="&nbsp;" onclick="editPDFForm(\''+name+'\', '+id+', \''+url+'\', \''+size+'\');" /></p>';
		document.metaform.pdfId.value = id;
	}
	else {
		pdf.innerHTML =  '<div id="pdf'+id+'"><a class="pdf" href="'+url+'">'+name+'<br />в формате Adobe Acrobat ('+size+'Kb)</a>';
		pdf.innerHTML +=  '<p><input class="edit" type="button" value="&nbsp;" onclick="editPDFForm(\''+name+'\', '+id+', \''+url+'\', \''+size+'\');" /><input class="delete" type="button" value="&nbsp;" onclick="deletePDF('+id+')" /></p></div>';
		document.metaform.pdfId.value = '';
	}
}

function showPDFForm(name, id)
{
	pdf = document.getElementById("pdfUpload");
	if ( !pdf.innerHTML.length ) {
		pdf.innerHTML = 'Название ссылки на PDF-файл:<br /><input type="text" name="PDFNAME" value = "'+name+'"/ ><br />';
		pdf.innerHTML += 'Выберите PDF (макс. размер 2Мб):<br /><input type="file" name="PDFURL" value = ""/ >';
		pdf.innerHTML += '	<p><input class="save" type="button" value="&nbsp;" onclick="makeRequest(\'updatePDF\');" /><input class="cancel" type="button" value="&nbsp;" onclick="showPDFForm()" /></p>';
		document.metaform.pdfId.value = id;
	}
	else pdf.innerHTML = '';
}

function deletePDF(id)
{
	if ( confirm("Вы уверены?")){
		document.metaform.pdfId.value = id;
		makeRequest("deletePdf");
	}
}

function linkFixer(lnk1, lnk2, lnk3)
{
	var wannaBeBrowser = /*@cc_on!@*/false;
	var str = escape(lnk1);
    if ( !wannaBeBrowser ) re = new RegExp("^\/"+str+"$", "i");
    else re = new RegExp("^"+str+"$", "i");
    if ( lnk2.length ) str += "_"+lnk2;
    if ( !wannaBeBrowser ) re1 = new RegExp("^\/"+str+"$", "i");
    else re1 = new RegExp("^"+str+"$", "i");
    if ( lnk3.length ) str += "_"+lnk3+"$";
    if ( !wannaBeBrowser ) re2 = new RegExp("^\/"+str+"$", "i");
    else re2 = new RegExp("^"+str+"$", "i");
    var links = document.getElementsByTagName("a");
    for(var i=0; i<links.length; i++) {
        var cLnk = links[i];
        var href = cLnk.getAttribute("href");
		if (!href) {
			return;
		}
        href = href.replace(/\/(ru)|(en)\//, "");
        if ( wannaBeBrowser ){
        	href = href.replace(new RegExp("^.+\/", "i"), "").toLowerCase();
        	href = href.toLowerCase();
        	href = unescape(href); 
        	if( cLnk.getAttribute("className") ){
            	var clss = cLnk.getAttribute("className");
            	if ( clss ) clss = clss.replace(/\d/, '');
            	if ( (clss == "chapter") && (re.test(href) || re1.test(href) ) ) cLnk.setAttribute("className", "chapter current");
            	if ( (clss == "sm") && re.test(href)  ) cLnk.parentNode.setAttribute("className", "current");
            	if ( (clss == "m") && re.test(href) ) cLnk.parentNode.setAttribute("className", "current");
            } else {
            	if ( (re.test(href)) ) cLnk.setAttribute("className", "current");
            	if ( (re2.test(href)) ) cLnk.setAttribute("className", "current");
            }
        }
        else {
        	if ( cLnk.getAttribute("class") ){
        		var clss = cLnk.getAttribute("class");
        		if ( clss ) clss = clss.replace(/\d/, ''); 
        		if ( (clss == "chapter") && (re.test(href) || re1.test(href) ) ) cLnk.setAttribute("class", "chapter current");
        		if ( (clss == "sm") && re.test(href)  ) cLnk.parentNode.setAttribute("class", "current");
        		if ( (clss == "m") && re.test(href) ) cLnk.parentNode.setAttribute("class", "current");
        	}
        	else {
	        	if ( (re.test(href)) ) cLnk.setAttribute("class", "current");
	        	if ( (re2.test(href)) ) cLnk.setAttribute("class", "current");
	        }
       }
	}
    changeMailLink();
}

function changeMailLink()
{
	var domain = "markogroup.com";
	var link   = document.getElementsByTagName('a');
	for (i = 0; i < link.length; i++)
	{
		if (link[i].href.match('mail:') && link[i].href != "mail:")
		{
			link[i].innerHTML = link[i].href.replace('mail:', '') + '@' + domain;
			link[i].title = link[i].href.replace('mail', 'mailto') + '@' + domain;
			link[i].href = link[i].href.replace('mail', 'mailto') + '@' + domain;
		}
	}
}

function srchSubmit()
{
	if ( document.search.squery.value.length > 1 ) document.search.submit();
	else {/*alert('Введите критерий для поиска');*/return false;} 
}

var handleSuccess = function(o){
	if(o.responseText !== undefined){
		var div = document.getElementById('menu_div');
		if ( o.responseText == "[Meta]" ) alert("Мета тэги изменены.");
		else if ( o.responseText == "[pdf]" ) alert("Pdf файл удален, перегрузите страницу.");
		else if ( o.responseText == "[visibility]" ) document.location.href=document.location.href;
		else div.innerHTML = o.responseText;
		//div.innerHTML += "<li>Argument object: Array ([0] => " + o.argument[0] + " [1] => " + o.argument[1] + " )</li>";
	}
	return false;
};

var handleFailure = function(o){
	var div = document.getElementById('menu_div');
	if(o.responseText !== undefined){
		div.innerHTML = "Can't connect or update database, call developers...";
	}
};

var handleUpload = function(o){
	var div = document.getElementById('pdfUpload');
	if(o.responseText !== undefined){
		if ( o.responseText == "[manImg-1]" ) alert("Загружаемый файл не является изображением, загрузка прервана.");
		else if ( o.responseText == "[manImg-2]" ) alert("Ошибка загрузки файла.");
		else if ( o.responseText == "[visibility]" ) document.location.href=document.location.href;
		else div.innerHTML = o.responseText;
	}
};

var callback =
{
  success:handleSuccess,
  upload:handleUpload,
  failure:handleFailure
  //argument:['resp','par1']
};

var sUrl = "/updater.php";
