﻿function controlSelectedDate() {

    var cStartDateYear = getObjectByPrefix("StartStopDate1_ddlYil1").value;
    var cStartDateMonth = getObjectByPrefix("StartStopDate1_ddlAy1").value - 1;
    var cStartDateDay = getObjectByPrefix("StartStopDate1_ddlGun1").value;
    var cStartDateString = cStartDateYear + "-" + cStartDateMonth + "-" + cStartDateDay;

    var cFinishDateYear = getObjectByPrefix("StartStopDate1_ddlSene2").value;
    var cFinishDateMonth = getObjectByPrefix("StartStopDate1_ddlAy2").value - 1;
    var cFinishDateDay = getObjectByPrefix("StartStopDate1_ddlGun2").value;
    var cFinishDateString = cFinishDateYear + "-" + cFinishDateMonth + "-" + cFinishDateDay;


   /* var alertmsg = "";
    if (cStartDateYear == cFinishDateYear && cStartDateMonth == cFinishDateMonth) {
        return true;
    } else {
        alert("Baslangic ve Bitis tarihi icin ayni ayi secmeniz gerekmektedir.");
        return false;
    }*/
    
}



/*function controlSelectedDate(){

    try{
    var deneme=document.getElementById("ctl00_ContentPlaceHolder1_StartStopDate1_ddlAy1");
    }catch(e){
    return true;
    }


    var ek="";
	var dateErr=false;
	var dateErrMsg="";

	//var currentDate = new Date(2010,02,07);
	var currentDate = new Date();
	var MaxAvailableDate=new Date();
	
	ek+="currentDate: " + currentDate + "\n";



	var MevlutDate = new Date();
	var PeriyodBaslangicAyi=0;
	var PeriyodBitisAyi=0;
	
    //var currentPeriodFirstDate=new Date(2010,02,07);
	var currentPeriodFirstDate=new Date();
    currentPeriodFirstDate=currentPeriodFirstDate.dateAdd("m", -6);
	currentPeriodFirstDate=new Date(currentPeriodFirstDate.getFullYear(),currentPeriodFirstDate.getMonth(),1);
	
	ek+="=> currentPeriodFirstDate: " + currentPeriodFirstDate + "\n";



	var cStartDateYear=getObjectByPrefix("StartStopDate1_ddlYil1").value;
	var cStartDateMonth=getObjectByPrefix("StartStopDate1_ddlAy1").value-1;
	var cStartDateDay=getObjectByPrefix("StartStopDate1_ddlGun1").value;
	var cStartDateString=cStartDateYear + "-" + cStartDateMonth + "-" + cStartDateDay;

	var cFinishDateYear=getObjectByPrefix("StartStopDate1_ddlSene2").value;
	var cFinishDateMonth=getObjectByPrefix("StartStopDate1_ddlAy2").value-1;
	var cFinishDateDay=getObjectByPrefix("StartStopDate1_ddlGun2").value;
	var cFinishDateString=cFinishDateYear + "-" + cFinishDateMonth + "-" + cFinishDateDay;

	var CStartDate=new Date(cStartDateYear,cStartDateMonth,cStartDateDay);
	var CFinishDate=new Date(cFinishDateYear,cFinishDateMonth,cFinishDateDay);

	if(CFinishDate<CStartDate){
		alert(CTRL_END_DATE_SHOULD_BE_GREATER_THAN_START_DATE);
		return false;
	}
	
//////////////////////////////////////

var alertmsg="CFinishDate: " + CFinishDate + "\nCStartDate:" + CStartDate;

            var dbName = "DS";


            if (CStartDate.getFullYear() < 2009)
            {
                var nPeriod = parseInt((CStartDate.getMonth() / 6)) + 1;
                dbName = "DS_" + CStartDate.getFullYear() + "_" + nPeriod;
				//alert("1");
                MaxAvailableDate = new Date(CStartDate.getFullYear(), (nPeriod * 6)-1, 29 + nPeriod);
                currentPeriodFirstDate = new Date(CStartDate.getFullYear(), 0, 1);
            }
            else if (CStartDate.getFullYear() == 2009 && CStartDate.getMonth() <= 6 && currentDate.getMonth() <= 6 && currentDate.getFullYear()==2009)
            {
			    //alert("2");
                MaxAvailableDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDay());

                alertmsg+="\nMaxAvailableDate: " + MaxAvailableDate;
                
                currentPeriodFirstDate = new Date(CStartDate.getFullYear(), 0, 1);                
                //şuan dsde
            }
            else
            {
	

                //alert(currentDate.dateAdd("m",-6).getFullYear() + "-" + currentDate.dateAdd("m",-6).getMonth() + "-1");

                //currentPeriodFirstDate = new Date(currentDate.dateAdd("m",-6).getFullYear(), currentDate.dateAdd("m",-6).getMonth(), 1);
                currentPeriodFirstDate = new Date(new Date().dateAdd("m",-6).getFullYear(), new Date().dateAdd("m",-6).getMonth(), 1);
                
                
                //alert("currentPeriodFirstDate: " + currentPeriodFirstDate);
                alertmsg+="\ncurrentPeriodFirstDate:" + currentPeriodFirstDate;

                if (CStartDate < currentPeriodFirstDate)
                {
                    nPeriod = (CStartDate.getMonth() / 6) + 1;
                    dbName += "_" + CStartDate.getFullYear() + "_" + nPeriod;
                }


                
                if (CStartDate > currentPeriodFirstDate && CStartDate < currentDate)
                {
				    //alert("3");
                    MaxAvailableDate = currentDate;
                }
                else
                {
				    //alert("4");
			    
                    MaxAvailableDate = new Date(new Date(new Date().dateAdd("m",-6).getFullYear(), new Date().dateAdd("m",-6).getMonth(), 1).dateAdd("m",-1).getFullYear(), new Date(new Date().dateAdd("m",-6).getFullYear(), new Date().dateAdd("m",-6).getMonth(), 1).dateAdd("m",-1).getMonth(), 1);
                    MaxAvailableDate=MaxAvailableDate.dateAdd("d",-1).dateAdd("m",1);
                    
                    //MaxAvailableDate = new Date(currentPeriodFirstDate.dateAdd("m",-1).getFullYear(), currentPeriodFirstDate.dateAdd("m",-1).getMonth(), currentPeriodFirstDate.dateAdd("d",-1).getDay());
                    //MaxAvailableDate = new DateTime(CurrentPeriodStart.AddMonths(-1).Year, CurrentPeriodStart.AddMonths(-1).Month, CurrentPeriodStart.AddDays(-1).Day);                    
                    //MaxAvailableDate = new Date(currentPeriodFirstDate.dateAdd("m",-1).getFullYear(), (currentPeriodFirstDate.dateAdd("m",-1).getMonth()-1), currentPeriodFirstDate.dateAdd("d",-1).getDay());
                    
                    alertmsg+="\nMaxAvailableDate:" + MaxAvailableDate;
                    //alert(alertmsg);
                }



            }

				if (CFinishDate > MaxAvailableDate)
                {
					//alert(CStartDate + " tarihini kapsayan raporlamarda bitiş tarihi maksimum " + MaxAvailableDate + " olabilir. ");
					
					var theyear=MaxAvailableDate.getFullYear();
                    var themonth=MaxAvailableDate.getMonth()+1;
                    var thetoday=MaxAvailableDate.getDate();

					alert(CTRL_MAXIMUM_FINISH_DATE_YOU_CAN_CHOOSE_IS + theyear + "-" + themonth +"-" + thetoday);
					return false;
				}
		
alertmsg+="\nMaxAvailableDate: " + MaxAvailableDate;

//alert(alertmsg);



return true;


//////////////////////////////////////
}
*/





function getObjectByPrefix(id){
	var ourPrefix="ctl00_ContentPlaceHolder1_";
	
	var objem;
	try{
		objem = document.getElementById(ourPrefix + id);
	}catch(e){
		alert("Nesne bulunamadı: " + id);
	}
	return objem;
}



function dateAddExtention(p_Interval, p_Number){

   var thing = new String();

   p_Interval = p_Interval.toLowerCase();
   
   if(isNaN(p_Number)){
   
      throw "Error";
      return false;
   }

   p_Number = new Number(p_Number);
   switch(p_Interval.toLowerCase()){
      case "yyyy": {// yil
         this.setFullYear(this.getFullYear() + p_Number);
         break;
      }
      case "q": {      // 3 ay
         this.setMonth(this.getMonth() + (p_Number*3));
         break;
      }
      case "m": {      // ay
         this.setMonth(this.getMonth() + p_Number);
         break;
      }
      case "y":      // gun
      case "d":      // gun
      case "w": {      // gun
         this.setDate(this.getDate() + p_Number);
         break;
      }
      case "ww": {   // hafta
         this.setDate(this.getDate() + (p_Number*7));
         break;
      }
      case "h": {      // saat
         this.setHours(this.getHours() + p_Number);
         break;
      }
      case "n": {      // dakika
         this.setMinutes(this.getMinutes() + p_Number);
         break;
      }
      case "s": {      // saniye
         this.setSeconds(this.getSeconds() + p_Number);
         break;
      }
      case "ms": {      // milisaniye
         this.setMilliseconds(this.getMilliseconds() + p_Number);
         break;
      }
      default: {
         throw "Hata";
         return false;
      }
   }
   return this;
}
Date.prototype.dateAdd = dateAddExtention;

////////////////////////////////////////////////////////////////////////////////////////


function makeCarListSelectedIfNoGroup(){
    var toplamGroupSayi=0;
    try{
        toplamGroupSayi=document.getElementById("ctl00_ContentPlaceHolder1_lstGrup").length
    }catch(e){}

    
    if(toplamGroupSayi==0){
    
            try{
                document.getElementById("ctl00_ContentPlaceHolder1_rndGrup").checked=false;
                document.getElementById("ctl00_ContentPlaceHolder1_rndPlaka").checked=true;
            }catch(e){}

    }
    
}



function makeTitleForListPlaka()
{
	try{
		var formumuz=document.getElementById("ctl00_ContentPlaceHolder1_ListPlaka");
		for(var i=0;i<=formumuz.options.length;i++){
			formumuz.options[i].title=formumuz.options[i].text;
		}
	}catch(err){}
}


var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			   string: navigator.userAgent,
			   subString: "iPhone",
			   identity: "iPhone/iPod"
	    },
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();


function ValidateForDDL(sender,args)
{
    if(args.Value == "0")   
     args.IsValid=false;
    else
     args.IsValid=true;    
}   

function ValidateForDDL2(sender,args)
{
    if(args.Value == "0|0")   
     args.IsValid=false;
    else
     args.IsValid=true;    
} 





function getID(id)
{
	return document.getElementById(id);
}

// Determine browser and version.

function Browser() {

  var ua, s, i;

  this.isIE    = false;
  this.isNS    = false;
  this.version = null;

  ua = navigator.userAgent;

  s = "MSIE";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isIE = true;
    return;
  }

  s = "Netscape6/";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isNS = true;
    return;
  }

  s = "Gecko";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isNS = true;
    return;
  }
}
var browser = new Browser();

/////////////////////////////////////////////////////////////////////////////////////

// Coded by Waseem Khan
// Developer at PakCoders
// Downloaded from http://blog.pakcoders.com

/////////////////////////////////////////////////////////////////////////////////////
// Dragging Function Starts Here
/////////////////////////////////////////////////////////////////////////////////////

// Global object to hold drag information.

var dragObj = new Object();
function dragStart(event, id) {
  var x, y;
  dragObj.elNode = getID(id);
  // Get cursor position with respect to the page.

  if (browser.isIE) {
    x = window.event.clientX + document.documentElement.scrollLeft
      + document.body.scrollLeft;
    y = window.event.clientY + document.documentElement.scrollTop
      + document.body.scrollTop;
  }
  if (browser.isNS) {
    x = event.clientX + window.scrollX;
    y = event.clientY + window.scrollY;
  }

  // Save starting positions of cursor and element.

  dragObj.cursorStartX = x;
  dragObj.cursorStartY = y;
  dragObj.elStartLeft  = parseInt(dragObj.elNode.style.left, 10);
  dragObj.elStartTop   = parseInt(dragObj.elNode.style.top,  10);

  if (isNaN(dragObj.elStartLeft)) dragObj.elStartLeft = 0;
  if (isNaN(dragObj.elStartTop))  dragObj.elStartTop  = 0;

  // Capture mousemove and mouseup events on the page.

  if (browser.isIE) {
    document.attachEvent("onmousemove", dragGo);
    document.attachEvent("onmouseup",   dragStop);
    window.event.cancelBubble = true;
    window.event.returnValue = false;
  }
  if (browser.isNS) {
    document.addEventListener("mousemove", dragGo,   true);
    document.addEventListener("mouseup",   dragStop, true);
    event.preventDefault();
  }
}

function dragGo(event) {

  var x, y;

  // Get cursor position with respect to the page.

  if (browser.isIE) {
    x = window.event.clientX + document.documentElement.scrollLeft
      + document.body.scrollLeft;
    y = window.event.clientY + document.documentElement.scrollTop
      + document.body.scrollTop;
  }
  if (browser.isNS) {
    x = event.clientX + window.scrollX;
    y = event.clientY + window.scrollY;
  }

  // Move drag element by the same amount the cursor has moved.

  dragObj.elNode.style.left = (dragObj.elStartLeft + x - dragObj.cursorStartX) + "px";
  dragObj.elNode.style.top  = (dragObj.elStartTop  + y - dragObj.cursorStartY) + "px";

  if (browser.isIE) {
    window.event.cancelBubble = true;
    window.event.returnValue = false;
  }
  if (browser.isNS)
    event.preventDefault();
}

function dragStop(event) {

  // Stop capturing mousemove and mouseup events.

  if (browser.isIE) {
    document.detachEvent("onmousemove", dragGo);
    document.detachEvent("onmouseup",   dragStop);
  }
  if (browser.isNS) {
    document.removeEventListener("mousemove", dragGo,   true);
    document.removeEventListener("mouseup",   dragStop, true);
  }
}




function CheckSelectList(tagID,chkObjID,separator,ind )
{
//debugger;
   var selectCount=0;
   var collection = document.getElementById(tagID).getElementsByTagName('INPUT');
   var SelectedList ='';   
    for (var i=0; i<collection.length; i++) {
        if (collection[i].type.toUpperCase()=='CHECKBOX')
        {
            if(collection[i].id != chkObjID)
            {
                if(collection[i].checked)
                {
                    if(collection[i].value != '')
                    {
                        if(separator == '')
                        {
                            SelectedList += (SelectedList =='')?'':',';
                            SelectedList +=collection[i].value;
                        }else
                        {
                            var dz = collection[i].value.split(separator);
                            SelectedList += (SelectedList =='')?'':',';
                            SelectedList +=dz[ind];
                        }
                    }
                    
                }
            }
        }
    }    
     return SelectedList;   
}



function ValidateDateTime(sender,args)
{
    var reDate = /^(([1-9]|[0-2]\d|[3][0-1])\.([1-9]|[0]\d|[1][0-2])\.[2][0]\d{2})$|^(([1-9]|[0-2]\d|[3][0-1])\.([1-9]|[0]\d|[1][0-2])\.[2][0]\d{2}\s([1-9]|[0-1]\d|[2][0-3])\:[0-5]\d)$/;
    args.IsValid=reDate.test(args.Value);    
}
function CheckSelect(tagID,chkObj)
{
   var collection = document.getElementById(tagID).getElementsByTagName('INPUT');
      
    for (var i=0; i<collection.length; i++) {
        if (collection[i].type.toUpperCase()=='CHECKBOX')
        {
            if(collection[i].id != chkObj.id)
            {
                collection[i].checked=chkObj.checked;
            }
        }
    }
}

function IsCheckSelect(tagID, chkObjID, Limit)
{
   var selectCount=0;
   var collection = document.getElementById(tagID).getElementsByTagName('INPUT');
      
    for (var i=0; i<collection.length; i++) {
        if (collection[i].type.toUpperCase()=='CHECKBOX')
        {
            if(collection[i].id != chkObjID)
            {
                if(collection[i].checked)
                    selectCount++;
            }
        }
    }
    if(selectCount == 0 )
    {
        //alert('En az ' + ((Limit == 0)?1:Limit) + ' adet seçmelisiniz...');
        alert( String.format(V_SELECT_MINIMUM_ITEM, ((Limit == 0) ? 1 : Limit)) ) ;
        return false;
    }
    
    //limit 0 ise istediği kadar seçebilir
    if(Limit == 0 )
        return selectCount >0;
    else        
        if(selectCount > Limit)
        {
            //alert('En fazla ' + Limit + ' adet seçebilirsiniz...');
            alert(String.format(V_SELECT_MAX_ITEM, Limit));
            return false;
        }
        else if(selectCount < Limit)
        {
            //alert('En az ' + Limit + ' adet seçmelisiniz...');
            alert(String.format(V_SELECT_MINIMUM_ITEM, Limit));
            return false;    
        }
        else
            return true;
        
}

function ClientFind(tagID,ObjID)
{
   var collection = document.getElementById(tagID).getElementsByTagName('SELECT');
      
    for (var i=0; i<collection.length; i++) {
        if(collection[i].id.indexOf("_"+ ObjID) != -1)
        { 
            return collection[i];
        }
    }
    
    collection = document.getElementById(tagID).getElementsByTagName('INPUT');
      
    for (var i=0; i<collection.length; i++) {
        if(collection[i].id.indexOf("_"+ ObjID) != -1)
        { 
            return collection[i];
        }
    }
    
    return null;
}

function Confirm(confirmURL) {
  if (confirm(confirmURL)) 
       return true;
  else
    return false;      
}

function ConfirmValidate(confirmURL)
{
    var yes=Confirm(confirmURL);
    if(yes)
    {
        Page_ClientValidate();
        return Page_IsValid;
    }
    return false;
}

function Trim(str)
{
    return str.replace(/^\s+|\s+$/g,"");
}
function CenterScreen(win)
   {
   
         var leftprop, topprop, screenX, screenY, cursorX, cursorY, padAmt;
		if(navigator.appName == "Microsoft Internet Explorer") {
			//screenY = document.body.offsetHeight;
			screenY = window.screen.availHeight;
			screenX = window.screen.availWidth;
		}
		else {
			screenY = window.outerHeight
			screenX = window.outerWidth
		}
        var leftvar = (screenX - 100) / 2;
	    var rightvar = (screenY - 100) / 2;
	
	    if(navigator.appName == "Microsoft Internet Explorer") {
	    leftprop = leftvar;
	    topprop = rightvar;
	    }
	    else {
	    leftprop = (leftvar - pageXOffset);
	    topprop = (rightvar - pageYOffset);
        }
        
        
        obj.style.left=leftprop + 'px';
        obj.style.top=topprop + 'px';
        
   } 
 
function Popup(Url)
{
    var win = window.open(Url, "Alarmnet", "width=400,height=500,left=0, top=0, menubar=no, status=no, location=no, toolbar=no, scrollbars=yes, resizable=no");
    
}

function Popup2(Url)
{
    var win = window.open(Url, "Alarmnet", "width=600,height=500,left=0, top=0, menubar=no, status=no, location=no, toolbar=no, scrollbars=yes, resizable=no");
    
}

function Popup3(Url,tit)
{
    var win = window.open(Url, tit, "width=600,height=500,left=0, top=0, menubar=no, status=no, location=no, toolbar=no, scrollbars=yes, resizable=no");
    
}


function popupHelp(Url,tit,width,height)
{
    try{
    window.open(Url, "help", "width=" + width + ",height="  +height + ",left=0, top=0, menubar=no, status=no, location=no, toolbar=no, scrollbars=yes, resizable=no");
    }catch(err){
    }
    
}

//raporlarda tarih seçimi için
function SelectedValue(objID,Value)
{//debugger;
    var obj=document.getElementById(objID);
   for(var i=0;obj.options.length;i++)
   {
        if(obj.options[i].value == Value)
        {
            obj.options[i].selected=true;return;
        }
   }
}

function UpperOnKeyPressIE()
{
var k;
var n;
n = window.event;

k = n.keyCode;

if(k==305)k=73;
else if(k==105)k=304;
else if(k==287)k=286;
else if(k==252)k=220;
else if(k==351)k=350;
else if(k==246)k=214;
else if(k==231)k=199;
else if( k>=97 && k<=122)k = 65 + k-97;
n.keyCode = k;
}
function UpperOnKeyPressMZ(event)
{
var k;
var n;
n = event;
if(n.ctrlKey==true)return;
k = n.charCode;

if(k==305)k=73;
else if(k==105)k=304;
else if(k==287)k=286;
else if(k==252)k=220;
else if(k==351)k=350;
else if(k==246)k=214;
else if(k==231)k=199;
else if( k>=97 && k<=122)k = 65 + k-97;
if(k!=n.charCode)
{
event.preventDefault();
var ne = document.createEvent("KeyEvents");
ne.initKeyEvent("keypress",false,true,window,false ,false,false,false,k,k);
event.target.dispatchEvent(ne);
}
}

String.format = function() {
    if (arguments.length == 0)
        return null;
    var str = arguments[0];
    for (var i = 1; i < arguments.length; i++) {
        var re = new RegExp('\\{' + (i - 1) + '\\}', 'gm');
        str = str.replace(re, arguments[i]);
    }
    return str;
}








