var b_color=new Array('#ffffff', '#eeeeee');
function ajax_start_send_test_mail(mail_id) {
	var query = '' + mail_id;
	var obj=document.getElementById('tmails');
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {
		var s;
		var d=document;
		var tab=d.getElementById("tlog");
		var tb=tab.getElementsByTagName('TBODY')[0];
		if(req.readyState == 4) {
			if(req.responseJS) {
				// очистить таблицу
				tab.removeChild(tb);
				tb=d.createElement("TBODY");
				tab.appendChild(tb);
				var row=d.createElement("TR");
				row.style.background="#00ffff";
				tb.appendChild(row);
				var td = d.createElement("TD");
				row.appendChild(td);
				td.style.height='20px';
				td.innerHTML='E-mail';
				td = d.createElement("TD");
				row.appendChild(td);
				td.innerHTML='Статус';
				td.style.textAlign='center';
				if(req.responseJS.countz<1) {
					row=d.createElement("TR");
					tb.appendChild(row);
					td = d.createElement("TD");
					row.appendChild(td);
					td.style.height="20px";
					td.setAttribute('colSpan', '2');
					td.style.textAlign='center';
					td.innerHTML="Письма не отправлены. Код ошибки "+req.responseJS.err;
				} else {
					var bc=0;
					for(var x=0;x<req.responseJS.countz;x++) {
						row=d.createElement("TR");
						row.style.background=b_color[bc];
						tb.appendChild(row);
						td = d.createElement("TD"); 
						row.appendChild(td);
						td.style.height='20px';
						td.innerHTML=eval('req.responseJS.mail_'+x);
						td = d.createElement("TD");
						row.appendChild(td);
						td.innerHTML=eval('req.responseJS.state_'+x)+'&nbsp;';
						td.style.textAlign='right';
						bc=1-bc;
					}
				}
			}
		}
	}
	req.caching = false;
	req.open('POST', '../ajax/php_fun.php?type=send_test_mail', true);
	req.send({ q: query, tm: obj.value});
}
function ajax_start_send_mass_mail(mail_id) {
	var query = '' + mail_id;
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {
		if(req.readyState == 4) {
			if(req.responseJS) {
				if(req.responseJS.err==-1) alert('Такая рассылка не найдена. Попробуйте перезайти в рассылки');
				else if(req.responseJS.err==-2) alert('Эта рассылка ещё отправляется. Нужно подождать окончания');
				ajax_get_mail_state(req.responseJS.mail_id);
			}
		}
	}
	req.caching = false;
	req.open('POST', '../ajax/php_fun.php?type=send_mail', true);
	req.send({ q: query});
}
function ajax_get_mail_state(mail_id) {
	var query = '' + mail_id;
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {
		if(req.readyState == 4) {
			if(req.responseJS) {
				if(req.responseJS.err==-1) alert('Такая рассылка не найдена. Попробуйте перезайти в рассылки');
				else {
					var d=document;
					d.getElementById('smail_status').innerHTML=req.responseJS.smail_status;
					d.getElementById('total_mails').innerHTML=req.responseJS.total_mails;
					d.getElementById('start_datetime').innerHTML=req.responseJS.start_datetime;
					d.getElementById('send_mails').innerHTML=req.responseJS.send_mails;
					d.getElementById('broken_mails').innerHTML=req.responseJS.broken_mails;
					d.getElementById('end_datetime').innerHTML=req.responseJS.end_datetime;
					win_send_log.show();
				}
			}
		}
	}
	req.caching = false;
	req.open('POST', '../ajax/php_fun.php?type=get_mail_state', true);
	req.send({ q: query});
}
function ajax_gallery_load(item_id) {
	var query = '' + item_id;
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {
		var s;
		var d=document;
		var tab=d.getElementById("gallery");
		var tb=tab.getElementsByTagName('TBODY')[0];
		if(req.readyState == 4) {
			if(req.responseJS) {
				// обновим поле кол-во
				var tc=d.getElementById("total_ph_count");
				var str='';
				if(req.responseJS.countz<1) str="Фото ещё не загружены";
				else str='<a href="#" onclick="open_photo_gallery('+item_id+'); return false" class="error">Всего '+req.responseJS.countz+' шт';
				tc.innerHTML="<i>"+str+"</i>";
				// очистить таблицу
				tab.removeChild(tb);
				tb=d.createElement("TBODY");
				tab.appendChild(tb);
				var rows=Math.ceil(req.responseJS.countz/4);
				for(var x=0;x<rows;x++) {
					var row=d.createElement("TR");
					tb.appendChild(row);
					for(var y=0;y<4;y++) {
						var td = d.createElement("TD"); 
						row.appendChild(td);
						var id=x*4+y;
						if(id<req.responseJS.countz) {
							s='<a href="#" onclick="popup_photo('+eval('req.responseJS.ph_id_'+id)+');return false" title="Открыть фото в новом окне"><img src="../loader.php?sid=2&img='+eval('req.responseJS.ph_file_'+id)+'" width="128" height="128" alt="'+eval('req.responseJS.ph_file_'+id)+'" border="0"></a><br>';
							s+='<a href="#" onclick="d_photo('+eval('req.responseJS.ph_id_'+id)+'); return false"><img src="../img/delBt.gif" border="0" width="15" height="15" alt="Удалить фото"></a>';
						} else s='&nbsp;';
						td.innerHTML=s;
					}
				}
			}
		}
	}
	req.caching = false;
	req.open('POST', '../ajax/php_fun.php?type=gallery', true);
	req.send({ q: query });
}
function sa_photo() {
	var d=document;
	var item_id=d.getElementById('item_id').value;
	var upl=d.getElementById('ffu');
	var req = new JsHttpRequest();

	req.onreadystatechange = function() {
		if (req.readyState == 4) {
			if (req.responseJS) {
				if(req.responseJS.result==0) {
					win_add_photo.hide();
					d.getElementById('ffu').value="";
					ajax_gallery_load(item_id);
				} else if(req.responseJS.result==-1) alert("Загружать можно только JPG, GIF, PNG файлы");
				else if(req.responseJS.result==-2) alert("Размер выгружаемых файлов ограничен 1Мб. Пожалуйста, уменьшите и повторите попытку снова.");
				else alert("Ошибка загрузки файла. Попробуйте повторить выгрузку чуть позже.");
			}
		}
	}

	req.caching = false;
	req.open('POST', '../ajax/php_fun.php?type=add_photo', true);
	req.send({ i_id: item_id, uf: upl});
}
function d_photo(pid) {
	if(confirm("Удалить фотографию из галереи?")) {
		var d=document;
		var item_id=d.getElementById('item_id').value;
		var req = new JsHttpRequest();
		req.onreadystatechange = function() {
			if (req.readyState == 4) {
				if (req.responseJS) {
					if(req.responseJS.result==-1) alert('У вас нет прав чтоб удалить эту фотографию');
					else if(req.responseJS.result==-2) alert('Ошибка удаления - нет такой фотографии..');
					ajax_gallery_load(item_id);
				}
			}
		}
		req.caching = false;
		req.open('POST', '../ajax/php_fun.php?type=del_photo', true);
		req.send({q: pid});
	}
}
function getBodyScrollTop() {
  return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
}
function getBodyScrollLeft() {
  return self.pageXOffset || (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);
}
function getClientWidth() {
  return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientWidth:document.body.clientWidth;
}
function getClientHeight() {
  return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientHeight:document.body.clientHeight;
}
function ajax_load_event_calendar() {
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {
		var s;
		var d=document;
		var tab=d.getElementById("event_calendar");
		var tb=tab.getElementsByTagName('TBODY')[0];
		if(req.readyState == 4) {
			if(req.responseJS) {
				var val='';
				var c=0;
				var cd2=0;
				// очистить таблицу
				tab.removeChild(tb);
				tb=d.createElement("TBODY");
				tab.appendChild(tb);
				var row=d.createElement("TR");
				tb.appendChild(row);
				var td = d.createElement("TD"); row.appendChild(td); td.innerHTML='Пн';
				td = d.createElement("TD"); row.appendChild(td); td.innerHTML='Вт';
				td = d.createElement("TD"); row.appendChild(td); td.innerHTML='Ср';
				td = d.createElement("TD"); row.appendChild(td); td.innerHTML='Чт';
				td = d.createElement("TD"); row.appendChild(td); td.innerHTML='Пт';
				td = d.createElement("TD"); row.appendChild(td); td.innerHTML='Сб'; td.style.color='#be3451';
				td = d.createElement("TD"); row.appendChild(td); td.innerHTML='Вс'; td.style.color='#be3451';
				for(y=1;y<req.responseJS.rows;y++) {
					row=d.createElement("TR");
					tb.appendChild(row);
					for(x=0;x<7;x++) {
						td = d.createElement("TD");
						row.appendChild(td);
						val=eval('req.responseJS.rd_'+c);
						if(val=='') val='&nbsp;'
						else {
							cd2++;
							if(cd2==cd_day) td.style.backgroundImage='url(img/cal_bg_a.png)';
							else td.style.backgroundImage='url(img/cal_bg.png)';
						}
						td.id='cal_'+cd2;
						td.innerHTML=val;
						if(x>4) td.style.color='#be3451';
						c++;
					}
				}
				show_event(cd_day);
			}
		}
	}
	req.caching = false;
	req.open('POST', 'ajax/php_fun.php?type=load_event_calendar', true);
	req.send();
}
function ajax_set_new_calendar() {
	var month=document.getElementById('cal_month').value;
	var year=document.getElementById('cal_year').value;
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {
		if (req.readyState == 4) {
			ajax_load_event_calendar();
		}
	}
	req.caching = false;
	req.open('POST', 'ajax/php_fun.php?type=set_new_calendar', true);
	req.send({q: year, m: month});
}
function ajax_random_block_reload() {
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {
		if (req.readyState == 4) {
			if(req.responseJS) {
				var o;
				var i=1;
				total=req.responseJS.total;
				if(total>0) {
					for(i=1;i<=total;i++) {
						o=document.getElementById('rand'+i);
						o.innerHTML='<a href="'+eval('req.responseJS.link_'+i)+'"><img src="'+eval('req.responseJS.img_'+i)+'" width="128" height="128" alt="'+eval('req.responseJS.alt_'+i)+'" border="0"></a>';
					}
				}
				if(total<9) {
					for(var y=i;y<=9;y++) {
						o=document.getElementById('rand'+y);
						o.innerHTML='<img src="img/no_photo_s.gif" width="128" height="128" alt=":-(">';
					}
				}
			}
		}
	}
	req.caching = false;
	req.open('POST', 'ajax/php_fun.php?type=random_block_reload', true);
	req.send({});
}
function load_comments(item_id) {
	var query = '' + item_id;
	var req = new JsHttpRequest();
	MX=5;
	req.onreadystatechange = function() {
		var s;
		var d=document;
		var tab=d.getElementById("acmt");
		var tb=tab.getElementsByTagName('TBODY')[0];
		if(req.readyState == 4) {
			if(req.responseJS) {
				// очистить таблицу
				tab.removeChild(tb);
				tb=d.createElement("TBODY");
				tab.appendChild(tb);
				if(req.responseJS.v_count<1) {
					var row=d.createElement("TR");
					tb.appendChild(row);
					var td = d.createElement("TD"); 
					row.appendChild(td);
					td.style.height="20px";
					td.innerHTML="Пока нет отзывов";
					document.getElementById('c_navy_body').innerHTML='';
					document.getElementById('c_navy').style.display='none';
				} else {
					var bc=0;
					for(var x=0;x<req.responseJS.v_count;x++) {
						var cm_id=eval('req.responseJS.cmt_id_'+x);
						if(!cm_id) break;
						var row=d.createElement("TR");
						tb.appendChild(row);
						var td = d.createElement("TD"); 
						row.appendChild(td);
						s='<table class="CmsMainText" cellspacing="5" cellpadding="0" border="0" bgcolor="'+b_color[bc]+'" width="100%">';
						s+='<tr><td class="cmsHeader">';
						s+=eval('req.responseJS.cmt_subj_'+x)+'</td></tr>';
						s+='<tr><td>'+eval('req.responseJS.cmt_tbody_'+x)+'</td></tr>';
						s+='<tr><td height="20" class="sf">';
						var ml=eval('req.responseJS.cmt_mail_'+x);
						if(emode && check_email(ml)) s+='<a href="mailto:'+ml+'" style="color: #0000ff">';
						s+=eval('req.responseJS.cmt_fio_'+x);
						if(emode && check_email(ml)) s+='</a>';
						s+=' от '+eval('req.responseJS.cmt_tdate_'+x);
						if(emode) s+=' &nbsp; ip='+eval('req.responseJS.cmt_ip_'+x)+'&nbsp;&nbsp;<a href="#" onclick="ajax_del_cmt('+cm_id+'); return false" title="Удалить"><img align="absmiddle" src="img/delBt.gif" border="0" width="15" height="15" alt=""></a>';
						s+='</td></tr></table>';
						td.innerHTML=s;
						bc=1-bc;
					}
					if(req.responseJS.v_count>MX) {
						document.getElementById('c_navy_body').innerHTML=navigation(req.responseJS.v_count, MX);
						document.getElementById('c_navy').style.display='';
					} else {
						document.getElementById('c_navy_body').innerHTML='';
						document.getElementById('c_navy').style.display='none';
					}
				}
			}
		}
	}
	req.caching = false;
	req.open('POST', 'ajax/php_fun.php?type=comments', true);
	req.send({ q: query, page: cpage, mmx: 5 });
}
function ajax_add_cmt() {
	var frm=document.mess;
	if(frm.email.value=="") {
		var name=frm.name.value;
		var uml=frm.uml.value;
		var ph=frm.phone.value;
		var title=frm.title.value;
		var comment=frm.comment.value;
		var item_id=frm.item_id.value;
		var req = new JsHttpRequest();
		req.onreadystatechange = function() {
			if (req.readyState == 4) {
				if (req.responseJS) {
					if(req.responseJS.ret==-1) alert('Ошибка добавления отзыва..');
					load_comments(document.mess.item_id.value);
					if(win_add_cmt) win_add_cmt.hide();
				}
			}
		}
		req.caching = false;
		req.open('POST', 'ajax/php_fun.php?type=add_cmt', true);
		req.send({ nm: name, ml: uml, phn: ph, tl: title, cm: comment, q: item_id});
	} else document.location.href="index.php";
}
function ajax_del_cmt(mid) {
	var frm=document.mess;
	var item_id=document.mess.item_id.value;
	var req = new JsHttpRequest();
	if(frm.email.value=="" && confirm('Удалить отзыв?')) {
		req.onreadystatechange = function() {
			if (req.readyState == 4) {
				load_comments(document.mess.item_id.value);
			}
		}
		req.caching = false;
		req.open('POST', 'ajax/php_fun.php?type=del_cmt', true);
		req.send({ q: mid, c: item_id});
	}
}
function navigation(tot, m) {
	var totPages=Math.ceil(tot/m);
	var s='';
	if(cpage<1) cpage=1;
	else if(cpage>totPages) cpage=totPages;
	if(totPages>1) {
		s='<table border=0 width="100%" class="navy"><tr><td height="30" width="75" valign="middle">&nbsp;';
		if(cpage!=1) s+='<a href="#" onclick="return show_cmt_page('+(cpage-1)+')" class="navy">Предыдущие</a>';
		else s+='<font color="#777777">Предыдущие</font>';
		s+='</td><td align="center" class="activeNavy">&nbsp;';
		for(var i=0;i<totPages;i++)
			if((i+1)==cpage) s+=(i+1)+' ';
			else s+='<a href="#" onclick="return show_cmt_page('+(i+1)+')" class="navy">'+(i+1)+'</a> ';
		s+='&nbsp;</td><td align="right" width="75" valign="middle">';
		if(cpage<totPages) s+='<a href="#" onclick="return show_cmt_page('+(cpage+1)+')" class="navy">Следующие</a>';
		else s+='<font color="#777777">Следующие</font>';
		s+='&nbsp;</td></tr></table>';
	}
	return s;
}
function show_cmt_page(pg) {
	cpage=pg;
	load_comments(document.mess.item_id.value);
	return false;
}
function ajax_format_number(num, obj) {
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {
		if (req.readyState == 4) {
			if (req.responseJS) {
				var ret='0.00';
				if(req.responseJS.ret==0) ret=req.responseJS.num;
				obj.innerHTML=ret;
			}
		}
	}
	req.caching = false;
	req.open('POST', 'ajax/php_fun.php?type=format_number', true);
	req.send({ q: num});
}
function ajax_send_callme_request() {
	var frm=document.request;
	if(frm.email.value=="") {
		var name=frm.cname.value;
		var ph=frm.cphone.value;
		var comment=frm.comment.value;
		var item_id=frm.item_id.value;
		var req = new JsHttpRequest();
		req.onreadystatechange = function() {
			if (req.readyState == 4) {
				if (req.responseJS) {
					if(win_call_me) win_call_me.hide();
					if(req.responseJS.ret==-1) alert('К сожалению, ниодного менеджера в онлайн сейчас нет. Попробуйте повторить запрос позже.');
					else alert('Ваш запрос успешно отослан, в ближайшее время наш менеджер перезвонит Вам.');
				}
			}
		}
		req.caching = false;
		req.open('POST', 'ajax/php_fun.php?type=send_callme_request', true);
		req.send({ nm: name, phn: ph, cm: comment, q: item_id});
	} else document.location.href="index.php";
}
function ajax_get_delivery_cost(method) {
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {
		if (req.readyState == 4) {
			if (req.responseJS) {
				document.getElementById('order_total').innerHTML=req.responseJS.total_sum;
				document.getElementById('order_delivery').innerHTML=req.responseJS.delivery_cost;
			}
		}
	}
	req.caching = false;
	req.open('POST', 'ajax/php_fun.php?type=calc_delivery_cost', true);
	req.send({mid: method});
}