﻿var printBar = "<table width='100%' cellpadding='0' cellspacing='0' border='0'><tr>"+
                "<td valign='middle'><input type='button' value='列印本頁' onclick='self.print();'>&nbsp;"+
                "<input type='button' value='回上一頁' onclick='location.reload();'></td>"+
                "</tr></table>";
var blocker = "<table width='100%' cellpadding='0' cellspacing='0' border='0'><tr>"+
                "<td valign='middle'></td></tr></table>";
                
jQuery( function(){
  PreloadPrintBar();
  });

function enablePrintStyle(printAreaId, columId){ //Main stylesheet switcher function. Second parameter if defined causes a random alternate stylesheet (including none) to be enabled

var targetNode = document.getElementById(printAreaId);
if(targetNode != null){

    targetNode.style.margin = "0px auto";
    targetNode.style.width = "600px";
    targetNode.style.padding = "0px";
    
    
    //debugger;
    if(targetNode.childNodes.length>0)
    {  for(var i=0;i<targetNode.childNodes.length;i++)
        {
            if( targetNode.childNodes[i] != null && targetNode.childNodes[i].className == "viewer_cmd"){
                    targetNode.childNodes[i].style.display = "none";
                    targetNode.childNodes[i].style.width = "0px";
            }
        }
    }
    
    
    DisableOtherBranch(targetNode);
    var bar = createDiv("newPrintBar",printBar, 'print_bar');
    bar.style.display="";
    targetNode.parentNode.insertBefore(bar, targetNode);
    
    var bar = createDiv("blocker",blocker, 'print_bar_blocker');
    bar.style.display="";
    targetNode.parentNode.insertBefore(bar, targetNode);
    
    var col = document.getElementById(columId);
    if( col )
    {
        col.style.width = '800px';
        col.style.margin = "0px auto";
        
        var wrapper = document.getElementById('wrapper');
        if(wrapper){
            wrapper.style.width = '800px';
            wrapper.style.margin = "0px auto";
        }
    }
}
else
{
    alert('print area was not found!');
}
//var i, cacheobj
//for(i=0; (cacheobj=document.getElementsByTagName("link")[i]); i++) {
//var media;
//    if(cacheobj.getAttribute("media") != null)
//        media = cacheobj.getAttribute("media").toLowerCase();
//    else
//        media = "";
//switch(media){
//    case 'screen':
//        cacheobj.disabled = false;
//        break;
//    case 'print':
//        cacheobj.disabled = false;
//        var el = document.createElement("link");
//        el.href= cacheobj.href;
//        el.rel = 'stylesheet';
//        el.media = 'screen';
//        el.type='text/css';        
//        document.body.appendChild(el)
//        break;
//    default:
//        cacheobj.disabled = true;
//}
//}
}

function DisableOtherBranch(node)
{
   if( node != null && node.id == "")
     node.id = createTempID();
   if(node.parentNode != null )
  {
     var parent = node.parentNode;
     if(parent.childNodes.length > 1 ){
    //alert(parent.childNodes.length);
         for(var i=0;i<parent.childNodes.length;i++)
        {
            if(!(parent.childNodes[i] != null &&  parent.childNodes[i].id == node.id)){
                if(parent.childNodes[i].style != null){
                    parent.childNodes[i].style.display = "none";
                    parent.childNodes[i].style.width = "0px";
                }
            }
        }
    }
    DisableOtherBranch(parent);
  } 
}
function createTempID()
{
  var vNum
  vNum = Math.random()
  vNum = Math.round(vNum*10000)
  return "printTempId"+ vNum;
}
function createDiv(barId,  innerHTML, classname)
{
    var el = document.createElement('div');
    el.id = barId;
    el.className = classname;
    el.style.display = 'none';
    el.innerHTML = innerHTML;
    return el;
}

function PreloadPrintBar(){
try{
    var el = createDiv('print_bar_div', printBar, 'print_bar');
    document.body.appendChild(el);
}
catch(ex)
{
    alert('cannot load print bar!');
}
}