
var showAjaxWindow = {  // showAjaxWindow.PageSize()

  filter_div : function(show){     
     if(show == 1){
	 var loader = new Element('div', {id: 'loader'}).setOpacity(0.4);
	 document.body.appendChild(loader);
     } else {
     $('loader').remove();
     }
  },
  
  show : function (title, url, width){ //showModalwin
  
     if ($('showModalwin')){
	  //var showModalwin = new Element('div', {id: 'loader'}).setOpacity(0.5);
	  var PageSize   = getPageSize();
	  var PageScroll = getPageScroll();
	  var authTable  = '<div id="authTable"> \
		 <table class="authTableTemp" align="center" width=""> \
		  <tr> \
	       <td class="tr_tl"><td class="tr_t"><td class="tr_tr"> \
		  <tr> \
		   <td class="tr_l"> \
		   <td class="tr_c"> \
			 <span id="titleAuthTable"></span> \
			 <div id="authTableContent"></div> \
		   <td class="tr_r"> \
		  <tr> \
		   <td class="tr_bl"><td class="tr_b"><td class="tr_br"> \
		</table> \
		</div>';
     	
	  $('showModalwin').setStyle({'height': PageSize[1] + 'px'}).update(authTable); //appear() 
      $('authTable').setStyle({'top': PageScroll[1] + ((PageSize[3] - 218) / 2)});
	  $('titleAuthTable').update('<h5>'+title+'</h5>');
			
	  $$('object').each(function(objects){
          objects.hide(); 
      });
			
	  $$('embed').each(function(embedItems){
          embedItems.hide(); 
      });
		
      this.filter_div(1);		
	  new Ajax.Updater({success: 'authTableContent'}, url, {
	     onComplete: function(){$('showModalwin').show();},
	     onFailure:  function(){},
         insertion:  Insertion.Top,
	     evalScripts: true
	  }); 
    }
  }, //////////////////
  
  hide : function(){
   if($('showModalwin')) 
     $('showModalwin').hide();
	 $$('object').each(function(objects){objects.show()});			
	 $$('embed').each(function(embedItems){embedItems.show()});
	 this.filter_div(0);
  }
  
}

function makeText(layer){
  if ($(layer).visible())
    $(layer).fade({duration: 0.5});
  else
	$(layer).appear({duration: 0.5});
} 

function OpenTab(obj, n){ // open tabs  
	
	$$('div#tabs span').each(function(tabs){
		  tabs.setStyle({background: '#A0D38A', padding: '4px 18px'}); 
    });

	$$('div#tabs span')[n].setStyle({background: 'white', padding: '5px 18px'});          
	$$('.tab').each(function(Tab){
		  $(Tab).hide();
    });   $(obj).show();	
 } 

/*
    вавав*/

function getPageScroll(){

	var yScroll;

	if (self.pageYOffset) {
		yScroll = self.pageYOffset;
	} else if (document.documentElement && document.documentElement.scrollTop){	 // Explorer 6 Strict
		yScroll = document.documentElement.scrollTop;
	} else if (document.body) {// all other Explorers
		yScroll = document.body.scrollTop;
	}   arrayPageScroll = new Array('',yScroll) 
	    return arrayPageScroll;
}


// Returns array with page width, height and window width, height Core code from - quirksmode.org
function getPageSize(){
	
	var xScroll, yScroll;
	
	if (window.innerHeight && window.scrollMaxY) {	
		xScroll = document.body.scrollWidth;
		yScroll = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}
	
	var windowWidth, windowHeight;
	if (self.innerHeight) {	// all except Explorer
		windowWidth = self.innerWidth;
		windowHeight = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	} else if (document.body) { // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}	
	
	if(yScroll < windowHeight){ // for small pages with total height less then height of the viewport
		pageHeight = windowHeight;
	} else { 
		pageHeight = yScroll;
	}

	if(xScroll < windowWidth){ // for small pages with total width less then width of the viewport
		pageWidth = windowWidth;
	} else {
		pageWidth = xScroll;
	}

	arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 
	return arrayPageSize;
}


function New_Window(url){
      window.open(url, 'Windows', 'top=15, left=20, menubar=0, toolbar=0, location=0, directories=0, status=0, scrollbars=0, resizable=0, width=550, height=450');
}


Event.observe(window, 'load', function(){ //tooltip	
    var titles = $A(document.all || document.getElementsByTagName('*'));
    titles.find(function(node){
    	if (node.tagName == 'IMG' && node.alt && !node.title)
    	    node.title = node.alt;

    	if (node.tagName == 'A' && node.target == '_blank')
    	    node.title += (node.title ? ' ' : '') + 'откроется в новом окне';

        if (node.title){
			var div = new Element('div', {id:'tooltip'}); 
        	var title = node.title;
            var object = Try.these(function(){
            	return eval(node.title);
            });

            Element.extend(div);
            document.body.appendChild(div);
            div.setStyle({'position': 'absolute', 'z-index': 9999}).hide();
            node.removeAttribute('title');

            Event.observe(node, 'mousemove', function(event){
                 if (object){
                      div.appendChild(object);
                      object.show();
                 } else {
                      div.update(title.gsub(/\\n/, '<br />'));
                 }
                      div.setStyle({'left': Event.pointerX(event), 'top': Event.pointerY(event)}).show();
            })
                      Event.observe(node, 'mouseout', function(event){
                             div.hide();
                     })
        }
    })
})
