/**********************************
 ****** Стандартные функции *******
 **********************************
 *
 * Public
 ** Показывает/скрывает элемент [ __toggle(string|object id) ]
 ** Показывает элемент          [ __show(string|object id) ]
 ** Скрывает элемент            [ __hide(string|object id) ]
 ** Открывает стандартное окно  [ __windowOpen(  ) ]
 *
 * Private
 ** Выбирает элемент  [ __selElement(string|object id) ]
 *
 * Code By Parfyonov Dima (Berkut)
***********************************/

/**
 * Public Показывает элемент;
 * 
 * @param 
 *   id - id элемента или сам елемент;
 * @return bool;
**/
function __show( id ) {
	if ( !(id = __selElement(id)) )
		return false;

	id.style.display = 'block';
	return true;
}

/**
 * Public Скрывает элемент;
 *
 * @param 
 *   id - id элемента или сам элемент;
 * @return bool;
**/
function __hide( id ) {
	if ( !(id = __selElement(id)) )
		return false;

	id.style.display = 'none';
	return true;
}

/**
 * Public Показывает/скрывает элемент в зависимости от статуса;
 *
 * @param 
 *   id - id элемента или сам элемент;
 * @return bool;
**/
function __toggle( id ) {
	if ( !(id = __selElement(id)) )
		return false;

	if ( id.style.display == 'block' ) {
		__hide(id);
	}
	else {
		__show(id);
	}
	return true;
}

/**
 * Public Открывает стандартное окно;
 *
 * @param
 * 	 url    - адрес документа (не обязательный);
 *   name   - название окна;
 *   width  - ширина окна;
 *   height - высота окна;
 *   top    - положение окна от верхнего края (не обязательный);
 *   left    - положение окна от левого края (не обязательный);
 * @return window;
**/
function __windowOpen( url, name, width, height, top, left ) {
	if ( !name )
		return false;

	if ( !width )
		width = 400;
	if ( !height )
		height = 300;

	param = 'location,width='+width+',height='+height+',toolbar=no,maximize=no,resizable=no,menubar=no,status=no';
	if ( top != '' )
		param += ',top='+top;
	if ( left != '' )
		param += ',left='+left;

	_window = window.open( url, name, param );
	_window.focus();

	return _window;
}

/**
 * Private Выбирает элемент;
 *
 * @param 
 *   id - id элемента или сам элемент;
 * @return object;
**/
function __selElement( id ) {
	if ( !id )
		return false;

	if ( typeof id == 'string' ) {
		if ( document.getElementById(id) ) {
			id = document.getElementById(id);
		}
		else {
			return false;
		}
	}

	return id;
}