/*

	Serkan Koyuncu <serkan@koyuncu.org>
	EKOL Online
	Yeni Pencere sürümü

*/


var _ekol_online_cerez_ismi = 'ekol_online_cerez_19',
	etkList = null,
	_ekol_online_etkinlik_cerez_ismi = 'ekol_online_etkinlik_cerez_19',
	_ekol_online_kontrol_suresi = 6, //saniye olarak
	ekol_online_window_handler,
	url_ekol_online_mesaj_varmi = '/ekol_online/mesaj_varmi.cfm',
	url_ekol_online_pencere = 'http://sistem.ekol.biz/index.cfm?fuseaction=objects.emptypopup_ekol_online#',
	_orj_title = '',
	_kaydirma_func_handler,
	_simdiki_harf_sirasi = 0,
	_kayacak_karakter_adedi,
	_kayma_basladi = false,
	_hareket_kontrol_handler,
	_ekol_online_kontrol_suresi_sonra = 15, //15sn sonra eğer mesaj yine okunmamış ise uyarı versin.
	_title_mesaji = 'Mesajınız var! - EKOL Online';
var _ekol_cerez_ismi = 'ekol_cerez_kontrol_15',
	_kimlik = Math.random();
var _ekol_cerez_suresi = 5; //saniye olarak

/*
function hareketi_kontrol_et() {
	if (!$('#ekol_online_uyari').dialog('isOpen') && 'EKOL' != getCookie(_ekol_online_cerez_ismi)) {
		deleteCookie(_ekol_online_cerez_ismi);
		setCookie(_ekol_online_cerez_ismi, "EKOL", _ekol_online_kontrol_suresi);
		$.getJSON(url_ekol_online_mesaj_varmi, { "noc": Math.random() }, function(json){
			if (json.okunmamis_mesaj_adedi > 0) {
				clearInterval(_hareket_kontrol_handler);
				var wind = windowopen(url_ekol_online_pencere, 'ekol_online', 'popup_ekol_online');
				if (!wind) {
					$('#ekol_online_mesaj_uyari_adet').text(json.okunmamis_mesaj_adedi);
					$('#ekol_online_mesaj_uyari_kisi').text(json.mesaj_gonderen_kisi_adedi);
					$('#ekol_online_uyari').dialog('open');
					UyariyiTitledaKaydir();
					alert("EKOL Online Popup-Blocker'a takıldı! Mesajınız var, lütfen açınız.");
				} else {
					wind.focus();
					_hareket_kontrol_handler = setInterval('hareketi_kontrol_et()', _ekol_online_kontrol_suresi_sonra * 1000);
				}
			}
		});
	}
}
*/

/* yeni */
function hareketi_kontrol_et() {
	var c = getCookie(_ekol_cerez_ismi);
	if (c == "" || c == null) {// kimse kontrol etmiyorsa, ben alıyorum sorumluluğu.
		deleteCookie(_ekol_cerez_ismi);
		setCookie(_ekol_cerez_ismi, _kimlik, _ekol_cerez_suresi);
		c = _kimlik;
	}
	
	// uyarı penceresi kapalı ise ve kontrol eden ben isem,
	if (!$('#ekol_online_uyari').dialog('isOpen') && _kimlik == c) {
		if ('EKOL' != getCookie(_ekol_online_cerez_ismi)) { // EKOL Online kapalı ise,
			$.getJSON(url_ekol_online_mesaj_varmi, { "noc": Math.random() }, function(json){
					if (json.okunmamis_mesaj_adedi > 0) {
						mesaj_geldi_uyandir(json);
					}
				}
			);
		}
	}
}

var mesaj_geldi_uyandir = function(json) {
	clearInterval(_hareket_kontrol_handler);
	var wind = windowopen(url_ekol_online_pencere, 'ekol_online', 'popup_ekol_online');
	if (!wind) {
		//eo_mesajvar_uyariver(json.okunmamis_mesaj_adedi);
		$('#ekol_online_mesaj_uyari_adet').text(json.okunmamis_mesaj_adedi);
		$('#ekol_online_mesaj_uyari_kisi').text(json.mesaj_gonderen_kisi_adedi);
		$('#ekol_online_uyari').dialog('open');
		UyariyiTitledaKaydir();
		//alert("EKOL Online Popup-Blocker'a takıldı! Mesajınız var, lütfen açınız.");
	} else {
		wind.focus();
		_hareket_kontrol_handler = setInterval('hareketi_kontrol_et()', _ekol_online_kontrol_suresi_sonra * 1000);
	}
}


var kaydirmayiIptalEt = function() {
	clearInterval(_kaydirma_func_handler);
	document.title = _orj_title;
	_kayma_basladi = false;
}
var UyariyiTitledaKaydir = function() {
	if (!_kayma_basladi){
		_kayma_basladi = true;
		_kayacak_karakter_adedi = _title_mesaji.length - 20;
		_kaydirma_func_handler = setInterval("harfHarfKaydir()", 300);
	}
}
var harfHarfKaydir = function() {
	document.title = _title_mesaji.substr(_simdiki_harf_sirasi, 20);
	
	if (++_simdiki_harf_sirasi > _kayacak_karakter_adedi) {
		_simdiki_harf_sirasi = 0;
	}
}

$(function(){
  _kayacak_karakter_adedi = _title_mesaji.length;
  for(i=0;i<20;i++) {
	  _title_mesaji =  '_' + _title_mesaji + '_';
  }
  deleteCookie(_ekol_online_cerez_ismi);
  _hareket_kontrol_handler = setInterval('hareketi_kontrol_et()', _ekol_online_kontrol_suresi * 1000);
  _orj_title = document.title;
  
  $('#kimlikDeneme').live('click', function(){
	 // alert(etkList.hepsi());
		etkList.sil(_kimlik);
		if (etkList.hepsiKapali()) {
			// EKOL Online'ı da kapatalım şimdi 
			
		}

  });
  
	$('#ekol_online_uyari').dialog({
		modal: true,
		autoOpen: false,
		height: '250px',
		closeOnEscape: true,
		buttons: {
			Tamam: function() {
				eopa();
				_hareket_kontrol_handler = setInterval('hareketi_kontrol_et()', _ekol_online_kontrol_suresi_sonra * 1000);
				$(this).dialog('close');
			},
			Sonra: function() {
				kaydirmayiIptalEt();
				_hareket_kontrol_handler = setInterval('hareketi_kontrol_et()', _ekol_online_kontrol_suresi_sonra * 1000);
				$(this).dialog('close');
			}
		}
	});

	/*
	if (serkan)
		setTimeout(eoacikmi, 1000);
	*/
  
  //etkList = new etkinlikKontrol(_ekol_online_etkinlik_cerez_ismi);
  //etkList.bosalt();
  // bu pencerenin kimliğini listeye kaydet
  //etkList.ekle(_kimlik);
});


function eoacikmi() {
  var dd = getCookie(_ekol_online_cerez_ismi);
  if ('EKOL' != dd) {
	if (confirm('EKOL Online penceresi kapalı gözüküyor, açmak istermisiniz? \r\n'+dd)) {
	  eopa();
	}
  }
}
/*

browserlar, çerezdeki bir değişkeni 3 sn. de bir arttırsın,
ekol online da 3.5 saniyede bir kontrol ederek, eğer bu değer önceki değer ile aynı ise,
ozaman açıkta browser yok demektir ?

F5 sırasında ?
bazen sayfa yüklemesi 20 - 30 sn sürüyor. ozaman yüklenene kadar ..

Yada browser kapanınca silinen çerezler ?

*/

// açık olan pencerelerin kimlik listesini çerezde tutacağız.
// sonra eğer hiç açık pencere kalmamışsa, EKOL online'ı kapatacağız.
//
var etkinlikKontrol = function(cerezAdi) {
	var cerez = getCookie(cerezAdi);
	var kimlikListesi = cerez ? cerez.split(',') : new Array();
	return {
		"ekle": function(d) {
			kimlikListesi.push(d);
			setCookie(cerezAdi, kimlikListesi.join(','), 1000 * 60 * 60 * 6); // 6 saat kalsın
			setCookie(d, "var");
			return d;
		},
		"sil": function(d) {
			var sirasi = $.inArray(d, kimlikListesi);
			if (sirasi != -1) {
				kimlikListesi.splice(sirasi, 1);
				setCookie(cerezAdi, kimlikListesi.join(','), 1000 * 60 * 60 * 6); // 6 saat kalsın
				deleteCookie(d);
			}
			return d;
		},
		"bosalt": function() {
			$.each(kimlikListesi, function(i, d){
				deleteCookie(d);
			});
			kimlikListesi = new Array();
			deleteCookie(cerezAdi);
		},
		"kontrol": function() {
			var j = 0;
			$.each(kimlikListesi, function(i, d){
				if ("var" == getCookie(d)) 
					j++;
			});
			return j;
		},
		"hepsi": function() {
			return kimlikListesi;
		},
		"hepsiKapali": function() {
			return kimlikListesi.length < 1;
		}
	}
}

function eopa(){
	var ekol_online_window_handler = windowopen('index.cfm?fuseaction=objects.emptypopup_ekol_online#', 'ekol_online', 'popup_ekol_online');
	ekol_online_window_handler.focus();
	kaydirmayiIptalEt();
}


(function($)
		{
			$.fn.blink = function(options)
			{
				var defaults = { delay:500 };
				var options = $.extend(defaults, options);
				
				return this.each(function()
				{
					var obj = $(this);
					setInterval(function()
					{
						if($(obj).css("visibility") == "visible")
						{
							$(obj).css('visibility','hidden');
						}
						else
						{
							$(obj).css('visibility','visible');
						}
					}, options.delay);
				});
			}
		}(jQuery))

