function SetFocus( field ) {
  field.focus();
}

function Trim( str ) {
  var trimmed;
  trimmed = str.toString().replace( /^ */g, '' );
  trimmed = trimmed.toString().replace( / *$/g, '' );
  return( trimmed );
}

function CheckField( form, name, message, type, minlength, maxlength ) {
	var str;
	var success;
	var field;
	success = 1;
	field = form.elements(name);
	str = Trim( field.value );
	if ((minlength != null) && (str.length < minlength)) {
		success = 0;
	} else
	if (str == '') {
		return( true );
	}
	if ((maxlength != null) && (str.length > maxlength)) {
		success = 0;
	}
	//
	// TYPE description 
	// 0 - text
	// 1 - int
	// 2 - float
	// 3 - e-mail
	// 4 - AlphaNumeric
	
	switch (type){
		case 1:
			if (!IsInt(str)) {
				success = 0;
			}
		break;
		case 2:
			if (!IsFloat(str)) {
				success = 0;
			}
		break;
		case 3:
			if (!IsEmail(str)) {
				success = 0;
			}
		break;
		case 4:
			if (!IsAlphaNumeric(str)) {
				success = 0;
			}
		break;

	}
	if (success == 0) {
    	alert( message );
    	SetFocus( field );
    	return( false );
	} else {
    	return( true );
	}
}

function IsInt( val ) {
  var pattern = /^[0-9]+$/gi
  return( pattern.exec( val )!=null );
}

function IsFloat( val ) {
  var pattern = /^[0-9]*\.?[0-9]+$/gi
  return( pattern.exec( val )!=null );
}

function IsEmail( val ) {
  var pattern = /^[^\.@]+(\.[^\.@]+)*@([^\.@]+\.)+[^\.@]+$/gi
  return( pattern.exec( val )!=null );
}

function IsAlphaNumeric( val ) {
  var pattern = /^\w+$/gi
  return( pattern.exec( val )!=null );
}

function ConfirmWindow(question){
	return window.confirm(question);
}

function CheckDate(day, month, year, message) {
	month = month - 1;
	dt = new Date(year, month, day);
	result = (dt.getDate() == day) && (dt.getMonth() == month) && (dt.getFullYear() == year);
	if (result == false) {
		month = month * 1 + 1;
		alert(message + " Date: " + day + "-" + month + "-" + year);
	}
	return result;
}

var version = 6;
var flash = false;
if (navigator.plugins) {
	if(navigator.plugins["Shockwave Flash"])  {
		  plugin = navigator.plugins["Shockwave Flash"].description;
		  flash = parseInt(plugin.charAt(plugin.indexOf('.') - 1)) >= version;
	} else	{
		if ((navigator.userAgent.indexOf('MSIE') != -1)&&(navigator.userAgent.indexOf('Win') != -1)) {
		   	var vb = '<script language="vbscript">\n'
		            + '  on error resume next\n'
		            + '  flash = IsObject(CreateObject('
		            + '     "ShockwaveFlash.ShockwaveFlash.' + version + '"))\n'
		            + '<' + '/script>';
			document.write(vb);
		}
	}
}

function PrintFlash(path, width, height, params, border) {
	if (border) {
		border = ' style="border: 1px solid #FFFFFF"';
	}
	else {
		border = '';
	}
	document.write ('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=" + version + ",0,0,0" width="' + width + '" height="' + height + '" ' + border + '>');
	document.write ('<param name=movie value="' + path + '">');
	document.write ('<param name=quality value=high>');
	document.write ('<PARAM name=menu value=false>');
	document.write ('<PARAM name=FlashVars value="' + params + '">');
	document.write ('<embed wmode="opaque" src="' + path + '" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="' + width + '" height="' + height +'" FlashVars="' + params + '"></embed>');
  	document.write ('</object>');
}

  function loadYa2() {
             var map = new YMaps.Map(document.getElementById("map2"));
			map.addControl(new YMaps.TypeControl());
			map.addControl(new YMaps.ToolBar());
			map.addControl(new YMaps.Zoom());
			map.addControl(new YMaps.MiniMap());
			map.addControl(new YMaps.ScaleLine());
            map.setCenter(new YMaps.GeoPoint(31.261587, 58.534669), 14);
         
            var s = new YMaps.Style();
            s.iconStyle = new YMaps.IconStyle("example#customPointIcon");
            s.iconStyle.offset = new YMaps.Point(-22, -15);
            s.iconStyle.href = "/new/images/google.gif";
            s.iconStyle.size = new YMaps.Point(40, 38);
            YMaps.Styles.add("example#customPoint", s);
         
            var t = new YMaps.Template("<div><img alt=\"123\" style=\"height:$[style.iconStyle.size.y];width:$[style.iconStyle.size.x];\" src=\"$[style.iconStyle.href]\"\/><div class=\"CustomPointName\">$[name|0]</div></div>");
            YMaps.Templates.add("example#customPointIcon", t);

            var bounds = map.getBounds(),
                pointLb = bounds.getLeftBottom(),
                span = bounds.getSpan();
            
                var point = new YMaps.GeoPoint(31.261587, 58.534669);
                var placemark = new YMaps.Placemark(point, {style: "example#customPoint"});
                placemark.name = "";              
				placemark.description = '<h5>Великий Новгород,<br />ул. Германа, 29, 5 этаж</h5>';
 				map.addOverlay(placemark);    
				placemark.openBalloon();
				map.openBalloon(new YMaps.GeoPoint(31.261587, 58.534669), "<h5>Великий Новгород,<br />ул. Германа, 29, 5 этаж</h5>"); 

        }
  function loadYa() {
             var map = new YMaps.Map(document.getElementById("map"));
			map.addControl(new YMaps.TypeControl());
			map.addControl(new YMaps.ToolBar());
			map.addControl(new YMaps.Zoom());
			map.addControl(new YMaps.MiniMap());
			map.addControl(new YMaps.ScaleLine());
            map.setCenter(new YMaps.GeoPoint(30.378481,59.9439), 14);
         
            var s = new YMaps.Style();
            s.iconStyle = new YMaps.IconStyle("example#customPointIcon");
            s.iconStyle.offset = new YMaps.Point(-22, -15);
            s.iconStyle.href = "/new/images/google.gif";
            s.iconStyle.size = new YMaps.Point(40, 38);
            YMaps.Styles.add("example#customPoint", s);
         
            var t = new YMaps.Template("<div><img alt=\"123\" style=\"height:$[style.iconStyle.size.y];width:$[style.iconStyle.size.x];\" src=\"$[style.iconStyle.href]\"\/><div class=\"CustomPointName\">$[name|0]</div></div>");
            YMaps.Templates.add("example#customPointIcon", t);

            var bounds = map.getBounds(),
                pointLb = bounds.getLeftBottom(),
                span = bounds.getSpan();
            
                var point = new YMaps.GeoPoint(30.378481,59.9439);
                var placemark = new YMaps.Placemark(point, {style: "example#customPoint"});
                placemark.name = "";              
				placemark.description = '<h5>Санкт-Петербург,<br />ул. Таврическая 17, 4 этаж</h5>';
 				map.addOverlay(placemark);    
				placemark.openBalloon();
				map.openBalloon(new YMaps.GeoPoint(30.378481,59.9439), "<h5>Санкт-Петербург,<br />ул. Таврическая 17, 4 этаж</h5>"); 

        }

