﻿
var GUIDE_URL = "/TvGuide.aspx";
var SETTINGS_URL = "/MyPreferences.aspx";
var LOGIN_URL    = "/Users/Login.aspx"
var FORUM_SUBJECTS_URL = "/Forum/Subjects.aspx";
var FORUM_MESSAGES_URL = "/Forum/Messages.aspx";

var MESSAGE_MAX_LENGTH = 2000;

function detail(programId)
{
    window.open(
        baseUrl + "/SessionDetail.aspx?sid=" + programId, 
        "SessionDetail" + programId,
        "toolbar=0,location=0,directories=0,status=1,menubar=0,resizable=1,scrollbars=1,width=490,height=500");
}

function channelInfo(channelId)
{
    window.open(
        baseUrl + "/ChannelInfo.aspx?cid=" + channelId, 
        "ChannelInfo" + channelId,
        "toolbar=0,location=0,directories=0,status=1,menubar=0,resizable=1,scrollbars=1,width=490,height=500");
}

function DoLogin(obj)
{
    obj.form.action =  baseUrl + LOGIN_URL; 
    obj.form.__VIEWSTATE.value = "";
    obj.form.submit();
}

function SubmitSearchForm()
{
    var url = baseUrl + GUIDE_URL + "?guide=8";
    
    
    if (element = findElementById2("txtCalendar"))
    {
        if (0 == element.value.length)
        {
            alert("Lütfen bir tarih belirtiniz.");
            return false;
        }
        else if (!validateDate(element))
        {
            return false;
        }
        else
        {
            url += "&date=" + element.value;
        }
    }
    if (element = findElementById2("cboChannels"))
    {
        url += "&channel=" + element.value;
    }
    if (element = findElementById2("cboProgramGenres"))
    {
        url += "&genre=" + element.value;
    }
    if (element = findElementById2("cboBroadcastZones"))
    {
        url += "&zone=" + element.value;
    }

    window.location = url;
    return false;
}



function SubmitAdvancedSearchForm()
{
    var url = baseUrl + GUIDE_URL + "?guide=9";
    
    if (element = findElementById2("txtCalendar"))
    {
        if (0 == element.value.length)
        {
            alert("Lütfen bir tarih belirtiniz.");
            return false;
        }
        else if (!validateDate(element))
        {
            return false;
        }
        else
        {
            url += "&date=" + element.value;
        }
    }

    url += "&zone=" + getCheckedValues("zones");
    url += "&channel=" + getCheckedValues("channels");
    url += "&genre=" + getCheckedValues("genres");

    window.location = url;
    return false;
}



function SubmitNavigation(direction)
{
    var url = baseUrl + GUIDE_URL + "?guide=" + getHiddenValue("hdnSearchType");
    
    url += "&date=" + getHiddenValue("hdnDate");
    url += "&channel=" + getHiddenValue("hdnChannel");
    url += "&genre=" + getHiddenValue("hdnGenre");
    url += "&zone=" + getHiddenValue("hdnZone");
    url += "&dir=" + (("next" == direction) ? "1" : "0");
    
    window.location = url;
    return false;
}



function SaveSettings()
{
    var url = baseUrl + SETTINGS_URL + "?action=SaveSettings";
    var channels = getCheckedValues("channels");
    var genres = getCheckedValues("genres");
    var zone = getCheckedValues("zones");

    if (0 == channels.length && 0 == genres.length && 0 == zone.length)
    {
        alert("Lütfen tercihlerinizi belirtiniz.");
        return false;
    }
    
    url += "&channel=" + channels;
    url += "&genre=" + genres;
    url += "&zone=" + zone;

    window.location = url;
    return false;
}


function RemovePrograms()
{
    alert("Not implemented!");
}


function getHiddenValue(id)
{
    var elementArray = document.getElementsByTagName("input");
    var element;
    
    for (var i = 0, n = elementArray.length; i < n; i++)
    {
        if (-1 < elementArray[i].id.indexOf(id))
        {
            element = elementArray[i];
            break;
        }
    }
    
    return element.value;
}


function getCheckedValues(groupName)
{
    var elements = document.getElementsByName(groupName);
    var elementValueArray = new Array();

    for (var i = 0, n = elements.length; i < n; i++)
    {
        var element = elements[i];
        if ("input" == element.tagName.toLowerCase() && element.checked && 0 < element.value.length)
        {
            elementValueArray[elementValueArray.length] = element.value;
        }
    }
    
    return elementValueArray.join(",");
}


function findElementById2(id)
{
    var elementArray = document.forms[0].elements;
    var element;
    for (var i = 0, n = elementArray.length; i < n; i++)
    {
        if (-1 < elementArray[i].id.indexOf(id))
        {
            element = elementArray[i];
            break;
        }
    }
    
    return element;
}

function displayNews(newsId)
{
    window.open(
        baseUrl + "/News.aspx?newsId=" + newsId, 
        "News",
        "toolbar=0,location=0,directories=0,status=1,menubar=0,resizable=1,width=400,height=400");
}

function displayAllNews()
{
    window.open(
        baseUrl + "/NewsList.aspx",
        "News",
        "toolbar=0,location=0,directories=0,status=1,menubar=0,resizable=1,width=400,height=400");
}

/* Forum scripts */

function displayMessageEntry()
{
    var display = document.getElementById("pnlMessageEntry").style.display;
    
    document.getElementById("pnlMessageEntry").style.display = (("block" == display) ? "none" : "block");
}

function cboSubjectTypes_changed()
{
    findElementById2("txtSubjectKeyword").value = "";
}


function submitForumParameters(type, subject, start, sortIndex, sortDir, navigateTo)
{
    var url = baseUrl + FORUM_SUBJECTS_URL;
    
    url += "?type=" + type;
    url += "&subject=" + subject;
    url += "&start=" + start;
    url += "&sortIndex=" + sortIndex;
    url += "&sortDir=" + sortDir;
    url += "&nav=" + navigateTo;

    window.location = url;
    return false;
}


function submitForumMessage()
{
    if (0 == document.getElementById("txtMessage").value.length)
    {
        alert("Boş mesaj gönderilemez.");
        return false;
    }

    if (MESSAGE_MAX_LENGTH < document.getElementById("txtMessage").value.length)
    {
        alert("Mesaj uzunluğu " + MESSAGE_MAX_LENGTH + " karakterden fazla olamaz.");
        return false;
    }

    document.forms[0].action = baseUrl + FORUM_MESSAGES_URL + 
        "?subject=" + findElementById2("hdnSubjectId").value + 
        "&subjectType=" + findElementById2("hdnSubjectTypeId").value + 
        "&item=" + findElementById2("hdnItemId").value + 
        "&action=createMessage";
    document.forms[0].submit();
}


function listForumSubjects()
{
    submitForumParameters(
        findElementById2("cboSubjectTypes").value, 
        findElementById2("txtSubjectKeyword").value, 
        "", "", "", "");
}


function sortMouseOver(source, index, direction)
{
    
    source.src = baseUrl + ((0 == direction) ? "/images/sortAsc_b.gif" : "/images/sortDesc_b.gif");
}


function sortMouseOut(source, index, direction)
{
    source.src = baseUrl + ((0 == direction) ? "/images/sortAsc.gif" : "/images/sortDesc.gif");
}


function sortClick(source, index, direction)
{
    submitForumParameters(
        findElementById2("hdnSubjectType").value, 
        findElementById2("hdnSubjectKeyword").value, 
        "",
        index, 
        direction,
        "");
}


function navigateForumSubjects(direction)
{
    submitForumParameters(
        findElementById2("hdnSubjectType").value, 
        findElementById2("hdnSubjectKeyword").value, 
        findElementById2("hdnStartRowIndex").value, 
        findElementById2("hdnSortField").value, 
        findElementById2("hdnDirection").value,
        direction);
}


function navigateForumMessages(direction)
{
    var url = baseUrl + FORUM_MESSAGES_URL;
    url += "?subject=" + findElementById2("hdnSubjectId").value;
    url += "&start=" + findElementById2("hdnStartRowIndex").value;
    url += "&nav=" + direction

    window.location = url;
    return false;
}


function openMessages(subjectId)
{
    window.open(
        baseUrl + FORUM_MESSAGES_URL + "?subject=" + subjectId,
        "Messages" + subjectId,
        "toolbar=0,location=0,directories=0,status=1,menubar=0,resizable=1,scrollbars=1,width=660,height=500");
}

function openMessagesByType(subjectTypeId, itemId)
{
    window.open(
        baseUrl + FORUM_MESSAGES_URL + "?subjectType=" + subjectTypeId + "&item=" + itemId,
        "Messages" + subjectTypeId + "_" + itemId,
        "toolbar=0,location=0,directories=0,status=1,menubar=0,resizable=1,scrollbars=1,width=660,height=500");
}

function checkLength(e)
{
	var isValid = true;
	
	if (MESSAGE_MAX_LENGTH <= document.getElementById("txtMessage").value.length)
	{
        if (window.event)
	    {
	        keynum = event.keyCode;
	    }
        else if (e.which)
	    {
	        keynum = e.which;
	    }

        keychar = String.fromCharCode(keynum);
        controlChar = /[^\s\w]/;

	    if (!controlChar.test(keychar))
	    {
	        isValid = false;
	    }
	}

    if (!isValid)
    {
        if (window.event)
        {
            event.returnValue = false;
        }
        else if (e.which)
        {
            e.preventDefault();
        }
    }

	return isValid;
}

function displayRemainingChars()
{
	var charCount = MESSAGE_MAX_LENGTH;
	charCount -= document.getElementById("txtMessage").value.length
	document.getElementById("txtRemainingChars").value = charCount;
}


/////////////////////
////  YENILER   ////
///////////////////

function sortTable(idx,direction){
	document.all.SortFieldIdx.value = idx;
	document.all.SortDirection.value = direction;
	document.all.SortCommand.value = "1";	
	document.forms[0].submit();
}

function openWin(strURL, arg1, arg2, arg3)
{
		var argLen = arguments.length;
		var intX,intY,strUrl;
		if(argLen < 3){
			intX = '780';
			intY = '550';
		}else{
			intX = arg2;
			intY = arg3;
		}
		if(strURL.indexOf('?') != -1)
			strURL += "&popUp=1";
		else
			strURL += "?popUp=1";

	//	strURL += "&l="+ _LID;
		oWin = window.open (_APP_PATH + strURL, '', "toolbar=no, menubar=no, location=no, status=no, width=" + intX + ", height=" + intY + ",left=0, top=0, scrollbars=yes, resizable=yes");
		oWin.focus();
}

var dateValid
var OK = "1"
function isDate(inStr) {
	Tarih = inStr;
	// Bosh Ise
	if (Tarih.length == 0) 
	{
		return false;
	}
	// "/" "-" "."	
	if (Tarih.indexOf("/") < 0 && Tarih.indexOf("-") < 0 && Tarih.indexOf(".") < 0)
	{
		return false;
	}
	// Ayirac
	if (Tarih.indexOf("/") > 0 )
	{
		Ayirach = "/"
	}	
	else if (Tarih.indexOf("-") > 0 )
	{
		Ayirach = "-"
	}
	else
	{
		Ayirach = "."
	}		
	// Gun Ay Yil
	FirstPart = Tarih.substring(0,Tarih.indexOf(Ayirach))
	Tarih = Tarih.substring(Tarih.indexOf(Ayirach) +1,Tarih.length)
	SecondPart = Tarih.substring(0,Tarih.indexOf(Ayirach))
	ThirdPart = Tarih.substring(Tarih.indexOf(Ayirach) +1,Tarih.length)
	
	OK = "1"
	validateNum(FirstPart)
	validateNum(SecondPart)
	validateNum(ThirdPart)
	if (OK == "0")
	{
		return false;
	}	
	
	//Ay
	if (SecondPart < 1 || SecondPart > 12)
	{
		return false;
	}
	//Yil
	if (ThirdPart.length != 2 && ThirdPart.length != 4)
	{
		return false;
	}
	
	if (ThirdPart.length == 2)
	{
		if (ThirdPart == '00')
		{
			ThirdPart = '2000'
		}
		else
		{
			var BugunTarih = new Date()
			var BuYil = BugunTarih.getFullYear()
			var BuYilStr = String(BuYil) 
			ThirdPart = BuYilStr.substring(0,2) + ThirdPart
		}
		datefld.value = FirstPart + Ayirach + SecondPart + Ayirach + ThirdPart		
	}
	//Gun
	var days
	month = SecondPart	
	if (month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12)  days=31
	else if (month==4 || month==6 || month==9 || month==11) days=30
	else if (month==2)  
	{
		if (isLeapYear(ThirdPart)) days=29
		else days = 28
	}

	if (FirstPart < 1 || FirstPart > days)
	{
		return false;
	}
	//Ben Tarihmishim Baba
	return true;
}


function validateNum(Num) {
	var CharSet = "0123456789"
	var temp = ""
	for (var i=0; i<Num.length; i++) {
			temp = "" + Num.substring(i, i+1)
			if (CharSet.indexOf(temp) == "-1") OK = "0"
	}
}

function isLeapYear (Year)
{
	if (((Year % 4)==0) && ((Year % 100)!=0) || ((Year % 400)==0)) 
	{
		return (true);
	} 
	else 
	{ 
		return (false)
	}
}
	
var whitespace = " \t\n\r";
	
function trim(sString) 
{
	while (sString.substring(0,1) == ' ')
	{
		sString = sString.substring(1, sString.length);
	}
	while (sString.substring(sString.length-1, sString.length) == ' ')
	{
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
}

function isEmpty(s)
	{ return ((s == null) || (s.length == 0)) }


function check_email(e) {
	ok = "1234567890qwertyuiop[]asdfghjklzxcvbnm.@-_QWERTYUIOPASDFGHJKLZXCVBNM";

	for(i=0; i < e.length ;i++){
		if(ok.indexOf(e.charAt(i))<0){ 
			return (false);
		}	
	} 

	if (document.images) {
		re = /(@.*@)|(\.\.)|(^\.)|(^@)|(@$)|(\.$)|(@\.)/;
		re_two = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
		if (!e.match(re) && e.match(re_two)) {
			return (-1);		
		} 
	}

}

/////////////////////////
////  END YENILER  /////
///////////////////////
