﻿var OutputMode = true
var OutputWindow
var OutputCounter
var SelectedMainMenu
var ActiveMenu
var Browser, IE, Firefox, Opera, NS6, Mac
var ValidationError
var Title = "Enocta Akademi"
var TextList = new Array("Ana Sayfa")
var UrlList = new Array(".")
var SelectedRate

//Output
function Output(Text){
	if (OutputMode){
		if (!OutputWindow || OutputWindow.closed){
			if (!OutputWindow){
				resizeTo(screen.availWidth, parseInt(screen.availHeight*80/100))
				moveTo(0, 0)
			}
			OutputWindow = open("about:blank", "OutputWindow", "left=0, resizable=yes, scrollbars=yes")
			OutputWindow.resizeTo(screen.availWidth, parseInt(screen.availHeight*20/100))
			OutputWindow.moveTo(0, parseInt(screen.availHeight*80/100))
			OutputWindow.document.writeln("<body></body>")//Dummy. Dokuman objelerine müdahale edebilmek(title, style vs.) için anlamlı birşeyler olması gerekiyor.
			OutputWindow.document.title = "Javascript Output"
			OutputWindow.document.body.style.fontFamily = "Courier New"
			OutputWindow.document.body.style.fontSize = "11"
			OutputCounter = 1
		}
		OutputWindow.focus()
		OutputId = "O" + OutputCounter
		OutputWindow.document.writeln("<div id=" + OutputId + ">" + Text + "</div>")
		OutputRow = OutputWindow.document.getElementById(OutputId)
		OutputRow.scrollIntoView(true)
		OutputCounter ++
		onunload = function (){
			if (!OutputWindow.closed){
				OutputWindow.close()
			}
		}
	}
}

//DetectBrowser
function DetectBrowser() {
	if(navigator.appVersion.indexOf('Win') != -1) {
		if(navigator.userAgent.indexOf('IE') != -1) {
			Browser = "IE"
		}
		if(navigator.userAgent.indexOf('Firefox') != -1) {
			Browser = "Firefox"
		}
		if(navigator.userAgent.indexOf('Opera') != -1) {
			Browser = "Opera"
		}
		if(navigator.userAgent.indexOf('Gecko') != -1) {
			Browser = "NS6"
		}
	}
	if(navigator.appVersion.indexOf("Mac") != -1) {
		Browser = "Mac"
	}
	eval(Browser + " = true")
}
DetectBrowser()

//CancelEvent
function CancelEvent(){
	SrcElement = GetSrcElement(event)
	switch (SrcElement.tagName){
		case "INPUT":
			break
		default:
			return false
			break
	}
}

//Pause
function Pause(Delay){
	var FirstTime = new Date()
	while (1){
		var SecondTime = new Date()
		TimeDifference = SecondTime - FirstTime
		if (TimeDifference > Delay){
			break
		}
	}
}

//GetSrcElement
function GetSrcElement(event){
	if (!event){
		event = window.event
	}
	SrcElement = event.srcElement || event.target //IE - Firefox/Netscape
	return SrcElement
}

//InitMouseEvents
function InitMouseEvents(){
	document.onmousedown = function (){
		ClearMenu()
		if (this != top){
			top.ClearMenu()
		}
	}
	//ContentFrame.document.onmousedown = function (){
	//	ClearMenu()
	//}
}
InitMouseEvents()

//SelectMainMenu
function SelectMainMenu(Item){
	if (SelectedMainMenu){
		SetMouseEventStyle(SelectedMainMenu)
	}
	SetMouseEventStyle(Item, "Down")
	SelectedMainMenu = Item
}

function SelectMainMenuItem(Id){
	SelectMainMenu(document.getElementById(Id))
}

//InitMenu
function InitMenu(Item){
	ClearMenu()
	var ItemMenu = eval(Item.id + "_Menu")
	var e = Item
	var MenuLeft = 0
	var MenuTop = 0
	while (e)
	{
		MenuLeft += e.offsetLeft
		MenuTop += e.offsetTop
		e = e.offsetParent
	}
	ItemMenu.style.top = (MenuTop + Item.offsetHeight) + "px"
	ItemMenu.style.left = MenuLeft + "px"
	ItemMenu.style.visibility = "visible"
	ActiveMenu = Item
	ItemMenu.onmouseover = function (){
		Item.OverMenu = true
	}
	ItemMenu.onmouseout = function (){
		Item.OverMenu = false
	}
	ItemMenu.onclick = function (){
		Item.OverMenu = false
		ClearMenu()
	}
}

function MainMenuOver(Item){
	if (!SelectedMainMenu){
		SelectedMainMenu = TempDiv
	}
	if (Item.id != SelectedMainMenu.id){
		SetMouseEventStyle(Item, "Over")
	}
}

function MainMenuOut(Item){
	if (Item.id != SelectedMainMenu.id){
		SetMouseEventStyle(Item)
	}
}

function MainMenuDown(Item){
	if (Item.id != SelectedMainMenu.id){
		SetMouseEventStyle(Item, "Down")
	}
}

function MainMenuClick(Item){
	if (Item.id != SelectedMainMenu.id){
		SelectMainMenu(Item)
	}
}

function GetMenuContent(Item){
	var MenuContent = document.getElementById(Item.id + "_Menu")
	return MenuContent
}

function ButtonOver(Item){
	if (!GetMenuContent(Item) || !ActiveMenu || ActiveMenu != Item){
		if (Item.className == "GridTableHeaderDown"){
			Item.SortColumn = true
		}
		SetMouseEventStyle(Item, "Over")
		Item.OverMenu = true
	}
}

function ButtonOut(Item){
	if (!GetMenuContent(Item) || !ActiveMenu || ActiveMenu != Item){
		SetMouseEventStyle(Item)
		if (Item.SortColumn){
			SetMouseEventStyle(Item, "Down")
		}
	}
	else{
		Item.OverMenu = false
	}
}

function ButtonDown(Item){
	SetMouseEventStyle(Item, "Down")
	if (GetMenuContent(Item)){
		InitMenu(Item)
	}
}

function ButtonClick(Item){
	if (!GetMenuContent(Item)){
		SetMouseEventStyle(Item, "Over")
	}
}

function ClearMenu(){
	if (ActiveMenu && !ActiveMenu.OverMenu){
		var ActiveMenuContent = eval(ActiveMenu.id + "_Menu")
		ActiveMenu.className = ActiveMenu.className.replace("Down", "")
		ActiveMenuContent.style.visibility = "hidden"
		ActiveMenu = null
	}
}

function SetMouseEventStyle(Item, Event){
	var DefaultClassName = Item.className.replace("Over", "")
	DefaultClassName = DefaultClassName.replace("Down", "")
	if (Event){
		Item.className = DefaultClassName + Event
	}
	else{
		Item.className = DefaultClassName
	}
}

function Go(Url){
	location.href = Url
}

function GetCheckboxCount(Type){
	var ItemCount = 0
	var CheckedItemCount = 0
	for (i = 0; i < EnoctaAkademi.elements.length; i++){
		var Item = EnoctaAkademi.elements[i]
		if (Item.name != "CheckAllTop" && Item.name != "CheckAllBottom" && Item.type == "checkbox" && !Item.disabled){
			if (Item.checked){
				CheckedItemCount ++
			}
			ItemCount ++
		}
	}
	if (Type == "CheckedItem"){
		return CheckedItemCount
	}
	else{
		return ItemCount
	}
}

function IsAllChecked(){
	try{
		var CheckedItemCount = GetCheckboxCount("CheckedItem")
		var TotalItemCount = GetCheckboxCount()
		if (CheckedItemCount == TotalItemCount){
			InitCheckAllItems(true)
		}
		else{
			InitCheckAllItems(false)
		}
		SetSelectedProductsText()
	}
	catch (Error){
		//
	}
}

function CheckAll(){
	for (i = 0; i < EnoctaAkademi.elements.length; i++){
		var Item = EnoctaAkademi.elements[i]
		if (Item.name != "CheckAllTop" && Item.name != "CheckAllBottom" && Item.type == "checkbox" && !Item.disabled){
			if (event.srcElement.checked){
				Item.checked = true
				InitCheckAllItems(true)
			}
			else{
				Item.checked = false
				InitCheckAllItems(false)
			}
		}
	}
	SetSelectedProductsText()
}

function SetSelectedProductsText(){
	var CheckedItemCount = GetCheckboxCount("CheckedItem")
	SelectedProductsTop.innerText = CheckedItemCount
	SelectedProductsBottom.innerText = CheckedItemCount
}

function InitCheckAllItems(Checked){
	with (EnoctaAkademi){
		if (Checked){
			CheckAllTop.title = "Hiçbirini seçme"
			CheckAllBottom.title = "Hiçbirini seçme"
		}
		else{
			CheckAllTop.title = "Hepsini seç"
			CheckAllBottom.title = "Hepsini seç"
		}
		CheckAllTop.checked = Checked
		CheckAllBottom.checked = Checked
	}
}

function ValidationMessage(ControlToValidate, Message){
	if (ValidationError){
		alert(Message)
		if (ControlToValidate.type != "hidden"){
			ControlToValidate.focus()
		}
	}
}

function RequiredFieldValidator(ControlToValidate, ErrorMessage){
	var InputValue
	if (ControlToValidate.length && (ControlToValidate[0].type == "radio" || ControlToValidate[0].type == "checkbox")){
		for (i = 0; i < ControlToValidate.length; i ++){
			if (ControlToValidate[i].checked){
				InputValue = ControlToValidate[i].value
			}
		}
		ControlToValidate = ControlToValidate[0]
	}
	else if (ControlToValidate.type == "checkbox"){
		InputValue = ControlToValidate.checked
	}
	else{
		InputValue = ControlToValidate.value
	}
	if (!ValidationError && !InputValue){
		ValidationError = true
		ValidationMessage(ControlToValidate, ErrorMessage)
	}
}

function RangeValidator(ControlToValidate, Type, MaximumValue, MinimumValue, ErrorMessage){
	var InputValue = ControlToValidate.value
	if (!ValidationError && InputValue){
		switch (Type){
			case "Number":
				if (InputValue > MaximumValue || InputValue <= MinimumValue){
					ValidationError = true
				}
				break
			case "Date":
				break
			case "String":
				if (InputValue.length > MaximumValue || InputValue.length < MinimumValue){
					ValidationError = true
				}
				break
		}
		ValidationMessage(ControlToValidate, ErrorMessage)
	}	
}

function CharacterValidator(ControlToValidate, CharactersToValidate, Required, ErrorMessage){
	var InputValue = ControlToValidate.value
	if (!ValidationError){
		for (i = 0; i < InputValue.length && !ValidationError; i ++){
			if (!Required && CharactersToValidate.indexOf(InputValue.charAt(i), 0) != -1){
				ValidationError = true
			}
			else if (Required && CharactersToValidate.indexOf(InputValue.charAt(i), 0) == -1){
				ValidationError = true
			}
		}
		ValidationMessage(ControlToValidate, ErrorMessage)
	}
}

function CompareValidator(ControlToValidate, ControlToCompare, Operator, ErrorMessage){
	var InputValue = ControlToValidate.value
	if (!ValidationError){
		if (!eval("InputValue" + Operator + "ControlToCompare")){
			ValidationError = true
		}
		ValidationMessage(ControlToValidate, ErrorMessage)
	}
}

function EmailValidator(ControlToValidate, ErrorMessage){
	var InputValue = ControlToValidate.value
	if (!ValidationError && InputValue){
		if (!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(InputValue)){
			ValidationError = true
		}
		ValidationMessage(ControlToValidate, ErrorMessage)
	}
}

function SetTitle(){
	var PathHtml = new String()
	for (Item in TextList){
		PathHtml += "<a href=" + UrlList[Item] + ">" + TextList[Item] + "</a> \\ "
	}
	PathHtml = PathHtml.substr(0, PathHtml.length - 3)
	PageTitle.innerText = Title
	document.title = Title + " - Enocta Akademi"
	PagePath.innerHTML = PathHtml
}

function ShowDemo(WindowMode, Url){
	var Features = ""
	if (WindowMode){
		if (WindowMode == "fullscreen"){
			Features = WindowMode
		}
		else{
			var TempArray = WindowMode.split("x")
			Features = "width=" + TempArray[0] + ", height=" + TempArray[1]
		}
	}
	if (location.hostname !== "www.enoctaakademi.com" && Url.search("http://") == -1){
		Url = "http://www.enoctaakademi.com/" + Url
	}
	open(Url, "", Features)
}

function ShowInstalments(ProductId){
	if (ProductId){
		Url = "Instalments.asp?ProductId=" + ProductId
	}
	else{
		Url = "Instalments.asp"
	}
	Features = "width=271, height=192"
	InstalmentsWindow = open(Url, "Instalments", Features)
	InstalmentsWindow.focus()
}

function SwapImage(Item, Path){
	Item.src = Path
}

function SelectRate(Rate){
	if (!Rate){
		Rate = SelectedRate
	}
	SwapImage(ProductRate, "Images/Rate" + Rate + ".gif")
}

function RateProduct(Rate, ActionUrl){
	if (ActionUrl){
		Go(ActionUrl + Rate)
	}
	else{
		SelectedRate = Rate
		EnoctaAkademi.Rate.value = Rate
	}
	return false
}

function RandomImage(ImagePrefix){
	var ImageNumber = 4 ;
	var RandomNumber = Math.random();
	var RandomSet = Math.round((ImageNumber - 1) * RandomNumber) + 1;
	var ItemNumber = RandomSet;
	
	ImageName = ImagePrefix + ItemNumber + ".gif";
	ClassName = "Picture" + ItemNumber;
	SetPicture(ImageName, ClassName);
}

function EmailThisPage(){
	location.href = "mailto:?subject=Enocta Akademi Web Sitesinden Bir Link&body=Bu link Enocta Akademi sitesinden " + location;
}

function MakeHomePage(){
	with (document.body){
		style.behavior = "url(#default#homepage)"
		setHomePage("http://www.enoctaakademi.com")
	}
}

function AddToFavorites(){
	external.AddFavorite("http://www.enoctaakademi.com", "Enocta Akademi - Türkiye'nin Eğitim Portalı")
}