function getPageScroll(){
var xScroll, yScroll;
if (self.pageYOffset) {
yScroll = self.pageYOffset;
xScroll = self.pageXOffset;
} else if (document.documentElement && document.documentElement.scrollTop){ // Explorer 6 Strict
yScroll = document.documentElement.scrollTop;
xScroll = document.documentElement.scrollLeft;
} else if (document.body) {// all other Explorers
yScroll = document.body.scrollTop;
xScroll = document.body.scrollLeft;
}
arrayPageScroll = new Array(xScroll,yScroll)
return arrayPageScroll;
}
function getPageSize(){
var xScroll, yScroll;
if (window.innerHeight && window.scrollMaxY) {
xScroll = window.innerWidth + window.scrollMaxX;
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;
// console.log(self.innerWidth);
// console.log(document.documentElement.clientWidth);
if (self.innerHeight) { // all except Explorer
if(document.documentElement.clientWidth){
windowWidth = document.documentElement.clientWidth;
} else {
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;
}
// for small pages with total height less then height of the viewport
if(yScroll < windowHeight){
pageHeight = windowHeight;
} else {
pageHeight = yScroll;
}
// console.log("xScroll " + xScroll)
// console.log("windowWidth " + windowWidth)
// for small pages with total width less then width of the viewport
if(xScroll < windowWidth){
pageWidth = xScroll;
} else {
pageWidth = windowWidth;
}
// console.log("pageWidth " + pageWidth)
arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight)
return arrayPageSize;
}
function getScrollCenter()
{
scroll_info = getPageScroll();
page_info = getPageSize();
viewable_width = page_info[2];
viewable_height = page_info[3];
scroll_x = scroll_info[0];
scroll_y = scroll_info[1];
x_center = (scroll_x + (viewable_width/2))-(220/2);
y_center = (scroll_y + (viewable_height/2))-(140/2);
return [x_center, y_center];
}
function show_popup2(ev ,id, name, popup_div){
var innerVal =
"Are you sure you want to send today's schedule to [tech name]?
"+
""+
""+
"Comments:
"+
" "+
"";
if(ev!=null)
var e = ev;
else //for ie
var e = event;
thePos = getScrollCenter();
var x = thePos[0];
var y = thePos[1];
$('emailPopUp').innerHTML = innerVal;
$('tech_name_span').innerHTML = name;
$('hidden_tech_name').value = name;
$('hidden_tech_id').value = id;
positionAndShowPopUp(x,y,100,popup_div);
}
function sendTechEmail(){
name= $('hidden_tech_name').value;
id = $('hidden_tech_id').value;
var comment = $('emailComment').value;
theSelectedDate = $('date').value;
new Ajax.Updater(
"emailPopUp",
"/index.php/scheduler/sendEmail?comment="+comment+"&tech_id="+id+"&date="+theSelectedDate,
{
method: "GET",
evalScripts: false,
onComplete: function(){
}
}
);
}
function positionAndShowPopUp(x,y,width,popup_div)
{
var a = document.getElementById(popup_div);
a.style.position = "absolute";
a.style.left = x + 'px';
a.style.top = y + 'px';
a.style.display = "block";
}