function _AbsPopupWindow(extraOptions) {
	
	var winObj = this;
	
	var options = new Object;
	options['lightBox'] = false;
	options['id'] = false;
	options['width'] = 500;
	options['height'] = '';
	options['top'] = false;
	options['left'] = false;
	options['bottom'] = false;
	options['right'] = false;
	options['header'] = 'Заголовок окна';
	options['content'] = 'Vasya <input type="text">';
	options['hideOnClose'] = true;
	options['reloadContent'] = false;
	options['resetPosition'] = true;
	options['dialog'] = false;
    options['close_image_path'] = '/webapp/services/absPopupWin/images/close.png';

	var wPos = new Object;
	wPos['top'] = false;
	wPos['bottom'] = false;
	wPos['left'] = false;
	wPos['right'] = false;

	var resetPosition = true;
	
	this.winId = '';
	
	this.init = function(){
		if(extraOptions){
			options = setOptions(options,extraOptions);
		}
		setWinId();  // вызов установки рандомного id в том случае, если id не передан
		if( options['lightBox'] ){
			createLightBoxWin();
		} else {
			createWin();
		}
	}

	var createLightBoxWin = function(){

	}

	var createWin = function(){
		var scrollTop = getScrollTop();
		if( !options['top']){
			options['top'] = 10;
		}
		wPos['top'] = parseInt(scrollTop+options['top']) + 'px';
		if( !options['left'] && !options['right']){
			wPos['left'] = '10px';
		} else {
			if( options['left'] ){
				wPos['left'] = options['left']+'px';
			} else {
				wPos['right'] = options['right']+'px';
			}
		}

		var bgBegin = '';
		var bgEnd = '';
		if(options['dialog']){
			var bgBegin = '<div class="modalOverlay">';
			var bgEnd = '</div>';
		}

		if( !$("#"+winObj.winId).length ){
			$("body").append(
				bgBegin+
				'<div class="ap-overlay" id="ap-overlay-'+options['id']+'">'+
					'<div class="ap-inner" id="ap-inner-'+options['id']+'">'+
						'<div class="ap-header" id="ap-header-'+options['id']+'">'+
							'<div class="ap-header-title" id="ap-header-title-'+options['id']+'">'+
								options['header']+
							'</div>'+
							'<a href="#" class="ap-close" id="ap-close-'+options['id']+'">'+
								'<img src="'+options['close_image_path']+'" border=0>'+
							'</a>'+
						'</div>'+
						'<div class="ap-content" id="ap-content-'+options['id']+'">'+
							options['content']+
						'</div>'+
					'</div>'+
					'<div class="clear"></div>'+
				'</div>'+
				bgEnd
			);
		} else {
			if( options['reloadContent'] ){
				$('#ap-content-'+options['id']).html(options['content']);
			}
			if(!options['resetPosition']){
				resetPosition = false;
			}
			$("#"+winObj.winId).show();
		}
			
		$(".ap-close").unbind().click(function(){
			if(options['hideOnClose']){
				$(this).parents('.ap-overlay').hide();
			} else {
				$(this).parents('.ap-overlay').remove();
			}

			return false;
		});

		if(resetPosition){
			for( var w_name in wPos ) {
				if (wPos[w_name]){
					$("#"+winObj.winId).css(w_name,wPos[w_name]);
				}
			}
		}

		$("#"+winObj.winId).css('width',options['width']+'px');

		$("#"+winObj.winId).draggable({
			handle:	'div.ap-header'
		});
		
	}
	
	var setTopPadding = function(){
		var st = parseInt(200);
 		var s = getScrollTop();
 		var sTop = parseInt(st+s) + 'px';
 		$('#ap-overlay-'+options['id']).css('top', sTop );
	}
	
	var getScrollTop = function(){
        var t;
        if (document.documentElement && document.documentElement.scrollTop)
                t = document.documentElement.scrollTop;
        else if (document.body)
                t = document.body.scrollTop;
        return t;
 	}	
	
	this.setContent = function(cont){
		$("#ap-content-"+options['id']).html(cont);
	}
	
	this.getWinId = function(){
		//console.warn('getWinId');
		return winObj.winId;
	}
	
	setWinId = function(){
		if(!options['id']){
			options['id'] = getrandom(999,999999);
		}
		winObj.winId = 'ap-overlay-'+options['id'];
	}

	this.init();

}


