﻿if (window.XMLHttpRequest) req = new XMLHttpRequest();
else if (window.ActiveXObject) req = new ActiveXObject("Microsoft.XMLHTTP");

function fav(type, id)
{
	var url = '/favori/';
	if (req) 
	{
		req.open('POST', url, true);
		req.onreadystatechange = function() 
		{
			if (req.readyState == 4) 
			{
				if (req.status == '200')
				{
					if (req.responseText=='-1')
					{
						document.getElementById('login_box').style.display = 'block';
					}
					else 
					{
						star = document.getElementById('fav_star');
						if(req.responseText=='1')
						{
							if (type == 'album') msg = 'Favori albümlerimden çıkart';
							else if (type == 'artist') msg = 'Favori sanatçılarımdan çıkart';
							else if (type == 'track') msg = 'Favori parçalarımdan çıkart';
							else if (type == 'user') msg = 'Kankilerimden çıkart';
							star.src = 'http://static.turkpop.com/star1.gif';
						}
						else if(req.responseText=='0')
						{
							if (type == 'album') msg = 'Favori albümlerime ekle';
							else if (type == 'artist') msg = 'Favori sanatçılarıma ekle';
							else if (type == 'track') msg = 'Favori parçalarıma ekle';
							else if (type == 'user') msg = 'Kankilerime ekle';
							star.src = 'http://static.turkpop.com/star0.gif';
						}
						star.alt = msg;
						star.title = msg;
					}
				}
			}
		}
		req.setRequestHeader("Connection", "close");
		req.send('type=' + type + '&id=' + id);
	}
	else 
	{
		document.location = ('/browser/');
	}
}

function login()
{
	but = document.getElementById("popup_submit_button");
	but.disabled = true;
	var url = '/uyelik/login/';
	if (req) 
	{
		req.open('POST', url, true);
		req.onreadystatechange = function() 
		{
			if (req.readyState == 4) 
			{
				but.disabled = false;
				if (req.status == '200')
				{
					if (req.responseText=='0')
					{
						document.getElementById('popup_msg').innerHTML = 'Hatalı kullanıcı adı veya şifre';
					}
					else if(req.responseText=='1')
					{
						window.location.reload();
					}
				}
			}
		}
		req.setRequestHeader("Connection", "close");
		req.send('u=' + document.getElementById('username').value + '&p=' + document.getElementById('password').value);
	}
	else 
	{
		document.location = ('/browser');
	}
}

function send_email_hash()
{
	email = document.getElementById('email').value;
	if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email)))
	{
		document.getElementById('popup_msg').innerHTML = '"' + email + '" geçerli bir adres değil';
	}
	else
	{
		but = document.getElementById("popup_submit_button");
		but.disabled = true;

		var url = '/uyelik/kayit/';
		if (req) 
		{
			req.open('POST', url, true);
			req.onreadystatechange = function() 
			{
				if (req.readyState == 4) 
				{
					but.disabled = false;
					if (req.status == '200')
					{
						if (req.responseText=='1')
						{
							document.getElementById('popup_msg').innerHTML = 'İşlem neredeyse tamam!';
							document.getElementById('popup_body').innerHTML = 'Birkaç dakika içerisinde onay mesajı e-postana gelmiş olacak. Mesajdaki linke tıklayarak işlemi tamamla.';
						}
						else if (req.responseText=='0')
						{
							document.getElementById('popup_msg').innerHTML = 'Bir hata oldu!';
							document.getElementById('popup_body').innerHTML = 'Tekrar denemen lazım.';
						}
					}
				}
			}
			req.setRequestHeader("Connection", "close");
			req.send('email=' + document.getElementById('email').value);
		}
		else 
		{
			document.location = ('/browser/');
		}
	}
}

function shoutbox_post()
{
	but = document.getElementById("shoutbox_submit_button");
	msg = document.getElementById("shoutbox_message");
	if (msg.value != '')
	{
		but.disabled = true;
		var url = '/mesaj/post/';
		if (req) 
		{
			req.open('POST', url, true);
			req.onreadystatechange = function() 
			{
				if (req.readyState == 4 || req.readyState=="complete")
				{
					but.disabled = false;
					msg.value = '';
					msg.focus();
					update_shoutbox();
					return false;
				}
				else
				{
					return false;
				}
			}
			req.setRequestHeader("Connection", "close");
			req.send('message=' + msg.value);
		}
		else 
		{
			alert('Tarayıcın bu özelliği desteklemiyor!');
		}
	}
}

function loadXML(url) {

   // This function accepts a file name and returns an XML document.
   // Note we're doing no error checking.

   if (window.ActiveXObject){
      // Since IE has so much trouble with responseXML
      // we'll load the XML with the XMLDOM activeX object
      var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
      // Handle ready state changes ( ignore them until readyState = 4 )
      xmlDoc.onreadystatechange= function() { if (xmlDoc.readyState!=4) return false; }
      // This is a synchronous call!   The script will stall until the document
      // has been loaded.
      xmlDoc.async="false";
      xmlDoc.load(url);
      return xmlDoc;
   }
  
   // Initialize the AJAX object.
   var AJAX=new XMLHttpRequest();  

   // we're passing false so this is a syncronous request.
   // The script will stall until the document has been loaded.
   AJAX.open("GET", url, false);

// Handle ready state changes ( ignore them until readyState = 4 )
   AJAX.onreadystatechange= function() { if (AJAX.readyState!=4) return false; }

   AJAX.send(null);

   return AJAX.responseXML;
}

refresh_interval = 20;
last_update = new Date();

function refresh_shoutbox()
{
	var now = new Date();
	if (now.getTime() - last_update.getTime() > 1000 * refresh_interval)
	{
		last_update = new Date();
		update_shoutbox();
	}
}

function update_shoutbox()
{
	response = loadXML('/mesaj/yeni/' + last_id + '/');
	if (response)
	{
		var messages = response.getElementsByTagName("message");
		var shoutbox_container = document.getElementById("shoutbox_container");
		if (messages.length > 0)
		{
			for (i=0; i<messages.length; i++)
			{
				node = document.createElement("div");
				node.innerHTML = '<div class="sb_new_msg"><b><a href="/uye/' + messages[i].getAttribute("user") + '/">' + messages[i].getAttribute("user") + '</a></b> <span class="sb_msg_time">(' + messages[i].getAttribute("posted") + ')</span><b>:</b> ' + messages[i].childNodes[0].nodeValue + '</div>';
				shoutbox_container.insertBefore(node, shoutbox_container.firstChild);
			}
			last_id = messages[messages.length - 1].getAttribute("id");
			shoutbox_container.scrollTop = 0;
		}
	}
	if (!newMsg)
	{
		setTimeout(refresh_shoutbox, 1000 * refresh_interval);
	}
}

function update_messages_link()
{
	$.get('/mesajlar/ajax/new/', function(data)
	{
		if (data != 0)
		{
			$('#messages_link').empty().append('<span style="color:#ff0000">yeni mesajın var!</span>');
		}
	});
}

function popup(box)
{
	if (box == '')
	{
		$('#popup_box').hide('slow');
	}
	else if(box == 'login' || box == 'invite')
	{
		if (box == 'invite')
			$('#popup_msg').empty().append('Giriş yap da seni tanıyalım!');
		else
			$('#popup_msg').empty().append('Üye girişi');
		$('#popup_body').empty().append($('#login_popup_body').html());
		$('#popup_box').show('slow');
		$('#username').focus();
	}
	else if(box == 'register')
	{
		$('#popup_msg').empty().append('Yeni kayıt');
		$('#popup_body').empty().append($('#register_email_popup_body').html());
		$('#popup_box').show('slow');
		$('#email').focus();
	}
	else if(box == 'password')
	{
		$('#popup_msg').empty().append('Şifre yenileme');
		$('#popup_body').empty().append($('#password_popup_body').html());
		$('#popup_box').show('slow');
		$('#email').focus();
	}
}

