function Element(element_id){
	return document.getElementById(element_id);
}




 
function $_GET(variable) {

	var query = window.location.search.substring(1);

	var vars = query.split("&");

	for (var i=0;i<vars.length;i++) {

		var pair = vars[i].split("=");

		if (pair[0] == variable) {

			return pair[1];

		}
	}

}




function get_multiSelectBox_value(box_id, separator){
	if(!separator) separator=',';
	
	var val = '';
	var box = document.getElementById(box_id);
	var len = box.options.length;
	
	for(var i=0; i<len; i++){
		if(box.options[i].selected){
			if(val != '') val += separator;
			val += box.options[i].value;
		}
	}
	
	return val;
}

function insertOptionBeforeSelected(selectBox_id, value,text)
{
  var elSel = document.getElementById(selectBox_id);
  if (elSel.selectedIndex >= 0) {
    var elOptNew = document.createElement('option');
    elOptNew.text = text;
    elOptNew.value = value;
    var elOptOld = elSel.options[elSel.selectedIndex];  
    try {
      elSel.add(elOptNew, elOptOld); // standards compliant; doesn't work in IE
    }
    catch(ex) {
      elSel.add(elOptNew, elSel.selectedIndex); // IE only
    }
  }
}

function removeSelectedOption(selectBox_id)
{
  var elSel = document.getElementById(selectBox_id);
  var i;
  for (i = elSel.length - 1; i>=0; i--) {
    if (elSel.options[i].selected) {
      elSel.remove(i);
    }
  }
}

function appendOptionLast(selectBox_id, value,text)
{
  var elOptNew = document.createElement('option');
  elOptNew.text = text;
  elOptNew.value = value;
  var elSel = document.getElementById(selectBox_id);

  try {
    elSel.add(elOptNew, null); // standards compliant; doesn't work in IE
  }
  catch(ex) {
    elSel.add(elOptNew); // IE only
  }
}

function removeLastOption(selectBox_id)
{
  var elSel = document.getElementById(selectBox_id);
  if (elSel.length > 0)
  {
    elSel.remove(elSel.length - 1);
    return true;
  }
  else{
  	return false;
  }
}

function removeAllOptions(selectBox_id){
	while(removeLastOption(selectBox_id)){}
}


function checkKeyPressed(evt, func, params)
{
  evt = (evt) ? evt : (window.event) ? event : null;
  if (evt)
  {
    var charCode = (evt.charCode) ? evt.charCode :
                   ((evt.keyCode) ? evt.keyCode :
                   ((evt.which) ? evt.which : 0));
    if (charCode == 13) func(params);
  }    
}

////////

function removeSpaces(string) {
	var tstring = "";
	string = '' + string;
	splitstring = string.split(" ");
	for(i = 0; i < splitstring.length; i++)
	tstring += splitstring[i];
	return tstring;
}

///////////////////////////////


function isArray(obj) {
   if(!obj)	
	  return false;
	  
   if (obj.constructor.toString().indexOf("Array") == -1)
      return false;
   else
      return true;
}


function in_array(needle, haystack, strict) {
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // *     example 1: in_array('van', ['Kevin', 'van', 'Zonneveld']);
    // *     returns 1: true
 
    var found = false, key, strict = !!strict;
 
    for (key in haystack) {
        if ((strict && haystack[key] === needle) || (!strict && haystack[key] == needle)) {
            found = true;
            break;
        }
    }
 
    return found;
}//end function in_array()

/**
* email kontrol eder. doğru bir girişse true, yanlışsa false döner
*/

function isValidEmail(emailAdayi){
	
	var reg_email = /^[a-zA-Z0-9]+[_a-zA-Z0-9-]*(\.[_a-z0-9-]+)*@.+\..+$/;
	
	if(emailAdayi.value == ''){
		return false;
	}
	
	if(!reg_email.test(emailAdayi)){
		return false;
	}
	
	if(emailAdayi.charAt(emailAdayi.length-1)=='.'){
		return false;
	}
	
	return true;
}//

/**
* bir stringin bir string parçacığını barındırıp barındırmadığını kontrol eder
* @PARAMS;
* needle :  aranacak olan string
* haystack : içerisinde arama yapılacak olan string
* @RETURN;
* varsa boolean true, yoksa false döner
*/
function str_contains(needle, haystack){
	if(haystack.indexOf(needle) == -1) return false;
	else return true;
}//end function str_contains()

/** bir stringin, bir dizi içerisindeki bütün string parçalarını barındırıp barındırmadığını kontrol eder
* @PARAMS;
* needleArray : içerisindeki string parçaları aranacak olan array
* haystack : içerisinde aram yapılacak olan string
*
* @RETURN;
*  needleArray bir dizi değilse 1 döner.
*  needleArray'in eleman sayısı 0 ise 2 döner
*  needleArray içindeki parçalardan biri yoksa boolean false, hepsi varsa true döner
*/

function str_containsAll(needleArray, haystack){
	if(!isArray(needleArray)) return 1;
	
	var arrLen = needleArray.length;
	if(arrLen == 0) return 2;
	
	var i=0;
	
	for(i=0; i<arrLen; i++){
		if(haystack.indexOf(needleArray[i]) == -1) return false;
	}//end for
	
	return true;
}//end function str_containsAll()

/**
* bir dizinin içindeki herhangi bir elemanın bir stringde geçip geçmediğini kontrol eder
* @PARAMS;
* needleArray : içerisindeki string parçaları aranacak olan array
* haystack : içerisinde aram yapılacak olan string
*
* @RETURN;
*  needleArray bir dizi değilse 1 döner.
*  needleArray'in eleman sayısı 0 ise 2 döner
*  needleArray içindeki parçalardan herhangi biri varsa boolean false, hiçbiri yoksa true döner
*/

function str_containsNone(needleArray, haystack){
	if(!isArray(needleArray)) return 1;
	
	var arrLen = needleArray.length;
	if(arrLen == 0) return 2;
	
	var i=0;
	
	for(i=0; i<arrLen; i++){
		if(haystack.indexOf(needleArray[i]) != -1) return false;
	}//end for
	
	return true;
}//end function str_containsNone()


/**
*
* Javascript trim, ltrim, rtrim
* http://www.webtoolkit.info/
*
*
**/

function trim(str, chars) {
    return ltrim(rtrim(str, chars), chars);
}

function ltrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

function resetForm(form_id){
	var form = document.getElementById(form_id);
	var len = form.length;
	var i=0;
	
	for(i=0; i<len; i++){
		if(form[i].type != 'submit'){
			form[i].value = '';
		}
	}
}

/**
form elemanlarını disabled yapar
*/
function disableForm(form_id){
	var form = document.getElementById(form_id);
	var i=0;
	
	for(i = 0; i<form.length; i++){
		
		form[i].disabled = true;
	}
}//end function disableForm()

/**
form elemanlarını enabled yapar
*/
function enableForm(form_id){
	var form = document.getElementById(form_id);
	var i=0;
	
	for(i = 0; i<form.length; i++){
		
		form[i].disabled = false;
	}
}//end function enableForm()





/** form doğrulama fonksiyonları  **/
function box_isEmpty(box_id,message){
	var box = document.getElementById(box_id);
	if(trim(box.value) == ''){
		alert(message);
		box.focus();
		return true;
	}
	
	return false;
}//end function box_isEmpty();

function box_isNumeric(box_id,message_ifempty,message_ifnotnumeric){
	var box = document.getElementById(box_id);
	
	if(box.value == ''){
		alert(message_ifempty);
		box.focus();
		return false;
	}
	
	if(box.value.replace(/0/g,'') != parseInt(box.value.replace(/0/g,''))){
		alert(message_ifnotnumeric);
		box.focus();
		return false;
	}
	
	return true;
}//end function box_isNumeric();

function box_isNumericIdentity(box_id,message, defaultLength, defaultLength_message){
	var box = document.getElementById(box_id);
	
	if(box.value.replace(/0/g,'') != parseInt(box.value.replace(/0/g,''))){
		alert(message);
		box.focus();
		return false;
	}
	
	if(defaultLength){
		if(trim(box.value).length != defaultLength){
			alert(defaultLength_message);
			box.focus();
			return false;
		}
	}
	
	return true;
}//end function box_isNumericIdentity()


function box_isValidPassword(passBox_id, passRepeatBox_id, message_1, message_2){
	var box1 = document.getElementById(passBox_id);
	
	if(trim(box1.value) == ''){
		alert(message_1);
		box1.focus();
		return false;
	}
	
	if(box1.value != document.getElementById(passRepeatBox_id).value){
		alert(message_2);
		document.getElementById(passRepeatBox_id).focus();
		return false;
	}
	
	return true;
}//end function box_isValidPassword()


function box_isEmail(box_id, message){
	var box = document.getElementById(box_id);
	
	if(!isValidEmail(box.value)){
		alert(message);
		box.focus();
		return false;
	}
	
	return true;
}//end function box_isEmail();

