﻿// Begin: Prototype & default javascript modifications/addons
Prototype.Browser.IE6 = (Prototype.Browser.IE && (typeof window.XMLHttpRequest == 'undefined'));

Array.prototype.add = function( item ) {
  this[ this.length ] = item;
}
Array.prototype.contains = function( item ){
  return this.indexOf( item ) >= 0;
}
Array.prototype.remove = function( val ){
  var result = null;
  for(var i = 0; i < this.length; i++){
    if( this[ i ] === val ){
      result = this[ i ];
      this.splice( i, 1 );
      break;
    }
  }
  return result;
}
Hash.prototype.add = function( key, value ){
  this[key] = value;
}
Hash.prototype.contains = function( key ) {
  var obj = this[ key ];
  return obj != null && typeof obj != 'undefined';
}
PeriodicalExecuter.prototype.start = function( ) {
  this.registerCallback( );
}
String.prototype.isEmail = function(){
  return new RegExp("^([a-zA-Z0-9_.-]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9-]+\\.)+))([a-zA-Z]{2,8}|[0-9]{1,3})(\\]?)$", "i").test(this);
}
// End: Prototype & default javascript modifications/addons

function getE(id){
    return document.getElementById(id);
}
function trim(str){
    if(str == null || str == ''){
        return str;
    }
    return str.replace(/^\s*|\s*$/g, '');
}
function validEmail(str){
    return new RegExp("^([a-zA-Z0-9_.-]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9-]+\\.)+))([a-zA-Z]{2,8}|[0-9]{1,3})(\\]?)$", "i").test(str);
}
function checkLength(element, maxlength, alertmsg){
	if(element.value.length>maxlength){
		element.value = element.value.slice(0,maxlength);
		alert(alertmsg);
		element.focus();
	}
}
function formatNumber(number){
  if(number == null || number == ''){
    return number;
  }
  number += '';
  var regex = new RegExp('(\\d+)(\\d{3})');
	while (regex.test(number)) {
		number = number.replace(regex, '$1' + '.' + '$2');
	}
	return number;
}
function sleep( milliseconds ){
  var now = new Date();
  var exitTime = now.getTime() + milliseconds;
  while(true){
    now = new Date();
    if(now.getTime() >= exitTime) {
      return;
    }
  }
}

function getParam(key){
  key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+key+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null ) return "";
  else return results[1];
}

var Vix = {
	Banner: {
		_getScriptElm: function(url){
			return new Element('script', {type: 'text/javascript', src: url});
		},

		InsertScriptFile: function(url, container){		
			if(container){
				$(container).update(Vix._getScriptElm(url));
			}
			else{
				document.write('<scr' + 'ipt type="text/javascript" src="' + url + '"></scr' + 'ipt>');
			}
		},

		LoadAdIFrameSrc: function(id, src){
			Event.observe(window, 'load', function() {
				var date = new Date().getTime();
				src = src.replace("{nocache}", date);
				$(id).src = src;
			});
		}
	}
};