///////////////////////////////////////////////////////////
// CS Direct Monitor v.1.5 +++ - добавлена обработка баннеров от CARNAGE.RU
// Client-side Javascript Part
// http://www.controlstyle.ru/
///////////////////////////////////////////////////////////
function dmMain() {
	if (typeof window.addEventListener != "undefined") {	// NN6
	  window.addEventListener("click", dmLogClick, false);
	  }
	else if (typeof document.attachEvent != "undefined") {	// IE5+
		document.attachEvent("onclick", dmLogClick);
		}
	}

function dmFindLink(element) {
	while(element.parentNode) {
		if (element.href) return element;
		element = element.parentNode;
		}
	return false;
	}

function dmPrepareSpan(s) {
	String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, ''); };
	var re = /<[^<>]+>/gi;
	var re2 = /[^a-z\.\-\d]+/g;
	var re3 = /\s/g;
	var re4 = /\s[a-z]+\s/g;
	s = s.replace(re, '');
	s = s.replace(re2, ' ');
	s = ' ' + s.replace(re3, '  ') + ' ';
	s = s.replace(re4, ' ');
	return s.trim();
	}

// Код ячейки объявы ЯД:
//	<TD class=y5_item><DIV class=y5_ad>
//	  <DIV class=ad-link><A href="http://an.yandex.ru/count/###" target=_blank>Таунхаусы "Маленькая Шотландия"</A></DIV>
//	  <DIV>Собственный дом по цене двухкомнатной квартиры в Москве!</DIV>
//	  <SPAN class=url>www.sm-sc.ru</SPAN></DIV></TD>

// Код ячейки объявы BEGUN:
//	<LI class=bgulli88l>
//	  <DIV class=bgbanner>
//		<DIV style="FONT-SIZE: 10pt"><A class=begun onmouseover="status='http://www.nsmaster.ru/';return true" title=www.nsmaster.ru style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; CURSOR: pointer; COLOR: #008b8b" onmouseout="status='';return true" href="http://click01.begun.ru/click.jsp?url=###" target=_blank>Жилая <B>недвижимость</B> Новосибирск</A></DIV>
//		<DIV style="MARGIN-TOP: 3px; FONT-SIZE: 10pt"><A class=begun onmouseover="status='http://www.nsmaster.ru/';return true" title=www.nsmaster.ru style="FONT-SIZE: 10pt; COLOR: #9f5310; TEXT-DECORATION: none" onmouseout="status='';return true" href="http://click01.begun.ru/click.jsp?url=###" target=_blank>Продажа <B>недвижимости</B> от застройщика. Доступные цены, рассрочка,ипотека</A></DIV>
//		<DIV style="MARGIN-TOP: 2px; FONT-SIZE: 10pt"><A class=begun onmouseover="status='http://www.nsmaster.ru/';return true" title=www.nsmaster.ru style="FONT-SIZE: 10pt; COLOR: #700000; TEXT-DECORATION: none" onmouseout="status='';return true" href="http://click01.begun.ru/click.jsp?url=###" target=_blank>www.nsmaster.ru - Новосибирск</A> </DIV>
//	  </DIV>
//	</LI>

// Код объявы ADSENCE - в IFRAME, поэтому ловить нечего :(
//  <IFRAME name=google_ads_frame marginWidth=0 marginHeight=0 src="http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-0347222029890517&dt=1221456045347&lmt=1221456045&output=html&slotname=6225761683&correlator=1221456045266&url=http%3A%2F%2Fwww.vposelke.ru%2F&frm=0&cc=100&ga_vid=3752465864811159500.1221456045&ga_sid=1221456045&ga_hid=1907813001&flash=9.0.124.0&u_h=1024&u_w=1280&u_ah=1024&u_aw=1280&u_cd=32&u_tz=420&u_his=4&u_java=true" frameBorder=0 width=728 scrolling=no height=90 allowTransparency></IFRAME>

// Код баннера www.carnage.ru
/*  <a href="http://www.carnage.ru/?p=10671"><script type="text/javascript" src="http://media.carnage.ru/b/70-640x90.js?10671"></script></a> */
function dmLogClick(e) {
	var obj = (e.target)?e.target:event.srcElement;
	var spanUrl = 'n/a';											// Url Рекламодателя
	var	adv = 'u';													// Чья реклама (Y, G, B, C, u -undefined)
	var block = "";													// Весь рекламный блок
	obj = dmFindLink(obj);
	if (!obj) return true;
//	if (obj.href.indexOf('.yandex.ru/count')==-1) return true;		// <- было

//	if (obj.name('google_ads_frame')!=-1) alert("Google");

	if (obj.href.indexOf('.yandex.ru/count')!=-1) adv = 'Y';		// Это ЯД
	else if (obj.href.indexOf('.begun.ru/click')!=-1) adv = 'B';	// Это Begun
//		else if (obj.href.indexOf('.carnage.ru')!=-1) adv = 'C';	// Это баннер с www.media.carnage.ru
		else if (obj.href.indexOf('70-640x90.gif')!=-1) adv = 'C';	// Это наша прозрачная картинка поверх баннера от www.media.carnage.ru
			else return true;										// Не фиксируем, тк не опознан
	if (dmXmlDoc) {
		switch (adv) {
		  case "Y":													// ЯД
			if (obj.parentNode.parentNode) {						// Это <DIV class=y5_ad>
			  var spanParent = obj.parentNode.parentNode;
			  for (var i=0; i<spanParent.childNodes.length; i++) {	// По всему, что вложено между <DIV class=y5_ad> ... </div>
				var tmp = spanParent.childNodes[i];
				if (!tmp.className) continue;						// Этот ТЭГ без класса - пропустить
				if (tmp.className.toLowerCase()=='url'&&tmp.tagName.toLowerCase()=='span') {	// Это тег SPAN с названием класса URL
				  spanUrl = dmPrepareSpan(tmp.innerHTML);
				  }
				}
			  }

/*			var i = 0;
			while (obj.parentNode) {								// Ищем верхний "<UL class=bgul88 id=begunRoot>"
			  obj = obj.parentNode;
			  if (obj.tagName.toLowerCase()=='table') {
				tmp = obj.parentNode.parentNode;					// Наружный DIV
				block = '<div class="' +tmp.className+ '" id="' +tmp.id+ '">' +tmp.innerHTML+ '</div>';		// Рекламный блок ЯД
				break;
				}
			  i = i +1;
			  if (i>20) break;										// От зацикливания
			  }
*/
			break;
		  case "B":													// BEGUN
			if (obj.title) spanUrl = dmPrepareSpan(obj.title);		// У Бегуна домен рекламодателя сразу в Title к каждой ссылке
/*
			var i = 0;
			while (obj.parentNode) {								// Ищем верхний "<UL class=bgul88 id=begunRoot>"
			  obj = obj.parentNode;
			  if (obj.tagName.toLowerCase()=='ul'&&obj.id.toLowerCase()=='begunroot') {
				obj = obj.parentNode;								// Наружный DIV
				block = '<div>' + obj.innerHTML + '</div>';			// Рекламный блок Бегуна
				break;
				}
			  i = i +1;
			  if (i>20) break;										// От зацикливания
			  }
*/
			break;
		  case "C":													// CARNAGE
			spanUrl = "www.carnage.ru/?p=10671";					// Других вариантов - нет
			break;
		  default: return true;
		  }

		if (typeof bType == "undefined") bType = "--";				// Переменная не определена на сайте
//		var data = encodeURIComponent(adv+';'+obj.innerHTML+';'+spanUrl+';'+location.href+';'+document.referrer+';'+bType+';'+block);
		var data;
		if (adv == 'C')												// Для CARNAGE obj.innerHTML слишком большой
		  data = encodeURIComponent(adv+';'+'баннер'+';'+spanUrl+';'+location.href+';'+document.referrer+';'+bType+';'+location.host);
		else data = encodeURIComponent(adv+';'+obj.innerHTML+';'+spanUrl+';'+location.href+';'+document.referrer+';'+bType+';'+location.host);
		dmXmlDoc.open("GET", 'http://' + location.host + '/dmonitor.php?data=' + data, true);
		dmXmlDoc.send(null);
		}
	return true;
	}

function dmCreateXmlDoc() {
	var dmXmlDoc = null;
	/*@cc_on @*/
	/*@if (@_jscript_version >= 5)
	// JScript gives us Conditional compilation, we can cope with old IE versions.
	// and security blocked creation of the objects.
	 try {
	  dmXmlDoc = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
	  try {
	   dmXmlDoc = new ActiveXObject("Microsoft.XMLHTTP");
	  } catch (E) {
	   dmXmlDoc = false;
	  }
	 }
	@end @*/
	if (!dmXmlDoc && typeof XMLHttpRequest!='undefined') {
		try {
			dmXmlDoc = new XMLHttpRequest();
			} catch (e) {
				dmXmlDoc=false;
				}
		}
	if (!dmXmlDoc && window.createRequest) {
		try {
			dmXmlDoc = window.createRequest();
			} catch (e) {
				dmXmlDoc=false;
				}
		}
	return dmXmlDoc;
	}

var dmXmlDoc = dmCreateXmlDoc();
dmMain();
///////////////////////////////////////////////////////////
// End Of CS Direct Monitor
///////////////////////////////////////////////////////////