
function printframe(frame)
{
        stampa(frame);
}

function stampa(frame)
{
print_msg="Per stampare è necessario user il tasto 'stampa' del browser";
win_to_print=(arguments.length==1 ? parent.frames[arguments[0]] : self);

    if (isMAC())
        alert(print_msg);
    else

        if (isIE())
                {
                if (IEVersion()<5.0)
                        stampa_ie4();
                else
                        {
                        win_to_print.focus();
                        win_to_print.print();
                        }
                }

	else
                {
                if (window.print)
                        {
                        setTimeout('win_to_print.focus();win_to_print.print();',200);
                        }

                        else alert(print_msg);
                }
}


function stampa_ie4()
{
		var OLECMDID_PRINT = 6;
		var OLECMDEXECOPT_DONTPROMPTUSER = 2;
                var OLECMDEXECOPT_PROMPTUSER = 1;
		var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>';
		document.body.insertAdjacentHTML('beforeEnd', WebBrowser);
                WebBrowser1.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER);
		WebBrowser1.outerHTML = "";
}

function isIE()
{
 return (navigator.appName=="Microsoft Internet Explorer");
}


function isNetscape()
{
 return (navigator.appName=="Netscape");
}

function isMAC()
{
        browser_ie = browser_nn = browser_nn6 = platform_win = platform_mac = false;
        navigator.appName == "Microsoft Internet Explorer" ? browser_ie = true : navigator.appName == "Netscape" ? parseInt(navigator.appVersion.charAt(0),10) >= 5 ? browser_nn6 = true : browser_nn = true : null;
        navigator.userAgent.indexOf('Win') == -1 ? platform_mac = true : platform_win = true;
        return platform_mac;
}

function IEVersion()
{
agent=navigator.userAgent;
ver=agent.replace(/(.*)MSIE (\d*.\d*);(.*)/gi,"$2");
return parseFloat(ver);
}


