// Donothing

function donothing() {
}

// Get states

function getStates ( n, set_selected ) {
	
	// Show image
	document.getElementById('loading_image').style.display='';
		
	var myargs = new Array();
	myargs['country_id'] = n;
	
	// Request start
				
	var req = new JsHttpRequest();
	req.onreadystatechange = function() {
		if ( req.readyState == 4 ) {
			
			//// Set models
			
			// Hide image
			document.getElementById('loading_image').style.display='none';
			
			// Clear select
			var oList = document.getElementById ('data[state]');
		  var oListOptionsCnt = oList.options.length;
		  oList.length = 0; // удаляем все элементы из списка моделей
		  
		  // Get selected state
		  
		  var selected_state = document.getElementById('_state').value;
		  
			if ( req.responseJS ) {
				
				// Get array with rows
				data_array = req.responseJS['states'];		 
				data_array_size = data_array.length;
				
				if ( data_array_size > 0 ) {
				
					// Get values
					for ( i=0; i < data_array_size; i++ ) {
										
						// Add elements
						
						if ( document.createElement ) {
		            
		            var newListOption = document.createElement("OPTION");
		          	newListOption.value = data_array[i]['n'];
		          	newListOption.text = data_array[i]['name'];
		          	
		          	if ( data_array[i]['n'] == selected_state )
		          		var selected_index = i;
		          	
		          	//
		            (oList.options.add) ? oList.options.add(newListOption) : oList.add(newListOption, null);
		        
		        } else {
		          // для NN3.x-4.x
		          oList.options[i] = new Option( data_array[i]['n'], data_array[i]['name'], false, false );
		        }
						
						//
						
					}
					
					if ( set_selected )
						if ( selected_index )
							oList.selectedIndex = selected_index;
					
				}
			}
			
			////
			
		}
	}
	
	// Request
	req.open( "POST", "_getparams.php", true );
	req.send( myargs );

}

function Submit ( confirm_text ) {
	
	if ( confirm_text == undefined )
		var confirm_text = "Are you sure?";
		
	if( confirm( confirm_text ) )
		return true;
	else
		return false;

}

function hideOpenElement ( id ) {
	
	var _item = document.getElementById( id );
	
	if ( _item.className=="hidden" ) { // Show
		_item.className="visible";
	}
	else { // Hide
		_item.className="hidden";
	}
	
}

// Password generate functions

function getRandomNum(lbound, ubound) {
	return (Math.floor(Math.random() * (ubound - lbound)) + lbound);
}

function getRandomChar(number, lower, upper, other, extra) {
	var numberChars = "0123456789";
	var lowerChars = "abcdefghijklmnopqrstuvwxyz";
	var upperChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	var otherChars = "`~!@#$%^&*()-_=+[{]}\\|;:'\",<.>/? ";
	var charSet = extra;
	if (number == true)
	charSet += numberChars;
	if (lower == true)
	charSet += lowerChars;
	if (upper == true)
	charSet += upperChars;
	if (other == true)
	charSet += otherChars;
	return charSet.charAt(getRandomNum(0, charSet.length));
}

function getPassword(length, extraChars, firstNumber, firstLower, firstUpper, firstOther,	latterNumber, latterLower, latterUpper, latterOther) {
	var rc = "";
	if (length > 0)
		rc = rc + getRandomChar(firstNumber, firstLower, firstUpper, firstOther, extraChars);
	for (var idx = 1; idx < length; ++idx) {
		rc = rc + getRandomChar(latterNumber, latterLower, latterUpper, latterOther, extraChars);
	}
	return rc;
}

//

