  Position.Window = {
        //extended prototypes position to return
        //the scrolled window deltas
        getDeltas: function() {
            var deltaX =  window.pageXOffset
                || document.documentElement.scrollLeft
                || document.body.scrollLeft
                || 0;
            var deltaY =  window.pageYOffset
                || document.documentElement.scrollTop
                || document.body.scrollTop
                || 0;
            return [deltaX, deltaY];
        },
        //extended prototypes position to
        //return working window's size, 
        //copied this code from the 
        size: function() {
            var winWidth, winHeight, d=document;
            if (typeof window.innerWidth!='undefined') {
                winWidth = window.innerWidth;
                winHeight = window.innerHeight;
            } else {
                if (d.documentElement && typeof d.documentElement.clientWidth!='undefined' && d.documentElement.clientWidth!=0) {
                    winWidth = d.documentElement.clientWidth
                    winHeight = d.documentElement.clientHeight
                } else {
                    if (d.body && typeof d.body.clientWidth!='undefined') {
                        winWidth = d.body.clientWidth
                        winHeight = d.body.clientHeight
                    }
                }
            }
            return [winWidth, winHeight];
        }
    }
    //my own custom effect that basically
    //calls the Effect.Move Scriptaculous
    //effect with the correct window offsets
    Effect.KeepFixed = function(element, offsetx, offsety) {
        var _scroll = Position.Window.getDeltas();
        var _window = Position.Window.size();
        var elementDimensions = Element.getDimensions(element);
        var eWidth = elementDimensions.width;
        var eHeight = elementDimensions.height;
        var moveX = _window[0] - eWidth + _scroll[0] + offsetx;
        var moveY = _window[1] - eHeight + _scroll[1] + offsety;
        return new Effect.Move(element, { x: moveX, y: moveY, mode: 'absolute' });
    	
		//document.getElementById(element).style.top = moveY+'px';
		//document.getElementById(element).style.left = moveX+'px';
	
	}
    //a javascript requested pop up function
    
    
    //the function that calls the KeepFixed effect.
    //It accepts the id, and offsets from bottom left
    function feedback() {
	   var _window = Position.Window.size();
		var ixi = eval(0-_window[0]+138);
		var iyi = eval(0-_window[1]+366); // 276
		var ixib = eval(0-_window[0]+420);
		var ixic = eval(0-_window[0]+220);
		var iyib = eval(0-_window[1]+138);
		//alert(ixi);
        new Effect.KeepFixed('logu', 0,iyi);
		new Effect.KeepFixed('helpbar',ixic, -10);
		//new Effect.KeepFixed('helpw_0',ixib, -40);
    }
   
    //when mouseover, highlight, mouseout, lowlight
    //Event.observe('hypv-feedback', 'mouseover', highlight);
   	//Event.observe('hypv-feedback', 'mouseout', lowlight);
	//Event.observe(document, 'click', feedback);
    //when clicked, kick off the pop up
    //Event.observe('hypv-feedback', 'click', feedbackPopUpForm);
    //and endless loop that continually places the
    //fixed element in the bottom right corner of the window
     
    
    
     if (navigator.appName == 'Microsoft Internet Explorer'){
  		
  			
     new PeriodicalExecuter(feedback, 1);
    
    
  		}else{
  		
  		// document.getElementById('logu').style.position = "fixed";
  		//document.getElementById('logu').style.top = "0px";
  		//document.getElementById('logu').style.right = "0px";
  		
  		//document.getElementById('helpbar').style.position = "fixed";
  		
  		}
    
    
    //document.onmousemove = feedback;
    
    //initially, when the element appears,
    //i want it to come up slowly and gracefully
   // Effect.Appear('hypv-feedback', { duration: 4.0, from: 0.0, to: 0.5 });