﻿// JScript File
<!--

var plugins = {
    hayAcrobat:function() {
        if (!window.ActiveXObject) return false;
        try { if (new ActiveXObject('AcroPDF.PDF')) return true;}
        catch (e) {}
        try { if (new ActiveXObject('PDF.PdfCtrl')) return true;}
        catch (e) {}
        return false;
    },
    hayFlash: function() {
        if (!window.ActiveXObject) return false;
        try {if (new ActiveXObject('ShockwaveFlash.ShockwaveFlash')) return true;}
            catch (e) { return false;}
    },
    hayJava: function() {
        //esto es para detectar la posibilidad de cargar applets
//        return (navigator.javaEnabled());
        //alert(navigator.pluins);
        var Deteccion = new JPlug();
        Deteccion.detect();
        return Deteccion.isEnabled;
        //alert(Deteccion.output());
    },
    hayQuickTime: function() {
        if (!window.ActiveXObject) return false;
        try { if (new ActiveXObject('QuickTime.QuickTime')) return true;}
        catch (e) {}
        try {if(new ActiveXObject('QuickTimeCheckObject.QuickTimeCheck')) return true;}
        catch (e) {};
        return false;
    },
    hayRealPlayer: function() {
        if (!window.ActiveXObject) return false;
            var definedControls = [
            'rmocx.RealPlayer G2 Control',
            'rmocx.RealPlayer G2 Control.1',
            'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)',
            'RealVideo.RealVideo(tm) ActiveX Control (32-bit)',
            'RealPlayer'
        ];
        for (var i = 0; i <definedControls.length; i++) {
            try {if(new ActiveXObject(definedControls[i])) return true;}
            catch (e) {continue;}
        }
        return false;
    },
    hayShockwave: function() {
        if (!window.ActiveXObject) return false;
            try {if(new ActiveXObject('SWCtl.SWCtl')) return true;}
        catch (e) {return false;}
    },
    hayWMP: function() {
        if (!window.ActiveXObject) return false;
        try {if(new ActiveXObject('WMPlayer.OCX')) return true;}
        catch (e) { return false;}
    },

    hayIE7: function() {
	try{
	        var browser=navigator.appName;
		var b_version=navigator.appVersion;
		var version=parseFloat(b_version);
		if(version <= 3)
			return false;
		else
			return true;

	}
	catch (e) {return false;}}    
}


function validar_Plug_Ins()
{
    var FaltanPlugins=false;
    
    if(!plugins.hayIE7())
        FaltanPlugins= true;
        
    if(!plugins.hayFlash())
        FaltanPlugins= true;
        
    if(!plugins.hayAcrobat())
        FaltanPlugins= true;
        
        
//    if(!plugins.hayShockwave())
//        FaltanPlugins= true;
        
    if(!plugins.hayJava())
        FaltanPlugins= true;
        
        
    if(FaltanPlugins){        
        document.write("");        
        GB_showCenter("Plug - Ins Pendientes de Instalación","/general/plugins.html",parseInt(500),parseInt(700));
        //SimularClick('PendientePlug');
    }
}


function SimularClick(idObjete){
    try
    {
        var nouEvent = document.createEvent("MouseEvents");
    
        nouEvent.initMouseEvent("click", true, true, window,0, 0, 0, 0, 0, false, false, false, false, 0, null);
        var objecte = document.getElementById(idObjete);
        var canceled = !objecte.dispatchEvent(nouEvent);
    }
    catch(e)
    {
        document.getElementById(idObjete).click();
    }
    
}


function Mensajes_Plug()
{        
    if(!plugins.hayIE7())
        document.getElementById('Contenido').innerHTML +='<p>La versión de Internet Explorer No corresponde a la esperada. De clic en el siguiente vinculo para descargar la versiòn actualizada:<a href="http://www.microsoft.com/spain/windows/internet-explorer/download-ie.aspx"> Internet Explorer 7</a></p>';;
        
    if(!plugins.hayFlash())
        document.getElementById('Contenido').innerHTML +='<p>No se encontro Flash Player. De clic en el siguiente vinculo para descargar la versiòn actualizada:<a href="http://get.adobe.com/es/shockwave/"> Flash Player</a></p>';;
        
    if(!plugins.hayAcrobat())
        document.getElementById('Contenido').innerHTML +='<p>No se encontro instalado Adobe Reader. De clic en el siguiente vinculo para descargar la versiòn actualizada:<a href="http:www.google.com"> Adobe Reader</a></p>';;
        
        
//    if(!plugins.hayShockwave())
//        document.getElementById('Contenido').innerHTML +='<p>No se encontro Shockwave. De clic en el siguiente vinculo para descargar la versiòn actualizada:<a href="http://get.adobe.com/es/shockwave/">Shockwave</a></p>';;
        
    if(!plugins.hayJava())
        document.getElementById('Contenido').innerHTML +='<p>No se encontro instalada la Maquina Virtual de Java. De clic en el siguiente vinculo para descargar la versiòn actualizada:<a href="http://www.java.com/es/download/"> Maquina Virtual Java</a></p>';;
    
}



function detectar_plug_ins(){
    //detecta el flash player
    var MM_contentVersion = 6;
    var strContenido = "";
    var strLista = "";
    
    var plugin = (navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"]) ? navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin : 0;
    
    
    
    if ( plugin ) {
	    var words = navigator.plugins["Shockwave Flash Object"].description.split(" ");        
        for (var i = 0; i < words.length; ++i)
        {
	        if (isNaN(parseInt(words[i])))
	            continue;
	        var MM_PluginVersion = words[i]; 
        }
	    var MM_FlashCanPlay = MM_PluginVersion >= MM_contentVersion;
    }
    
    else //En caso de IExplorer 
    {
        if (!window.ActiveXObject) 
            MM_FlashCanPlay=false;
        try {if (new ActiveXObject('ShockwaveFlash.ShockwaveFlash')) MM_FlashCanPlay = true;}
            catch (e) { MM_FlashCanPlay = false;}
    }
    
    if ( MM_FlashCanPlay ) {
	    //window.location.replace("http://www.kirupa.com/flash.htm");
	    //alert("Si tiene flash player");
    } else{
	    //window.location.replace("http://www.kirupa.com/noflash.htm");
	    //alert("No tiene flash player");
	    strContenido += "No tiene flash player\n";
    }
    //fin detecta flash player
    if(!verificarAcrobat())
        strContenido += "AR:  No tiene instalado Acrobat Reader";
    
    //strContenido += "SW: " + validarShockwave();
    if(strContenido!='')
        alert(strContenido);
}
function verificarAcrobat()
{
    if (!window.ActiveXObject) return false;
        try { if (new ActiveXObject('AcroPDF.PDF')) return true;}
        catch (e) {}
        try { if (new ActiveXObject('PDF.PdfCtrl')) return true;}
        catch (e) {}
        return false;
}
function validarShockwave(){
  var tMajorVersion = 10; 
  var tMinorVersion = 1; 
  var tShockwaveFound = 0; 
  if (navigator.mimeTypes && navigator.mimeTypes["application/x-director"]&& navigator.mimeTypes["application/x-director"].enabledPlugin) {   
    if (navigator.plugins && navigator.plugins["Shockwave for Director"]&& (tVersionIndex = navigator.plugins["Shockwave for Director"].description.indexOf(".")) != - 1) {
         var tMajorVersionString = navigator.plugins["Shockwave for Director"].description.substring(tVersionIndex-2, tVersionIndex);    
         var tMinorVersionString = navigator.plugins["Shockwave for Director"].description.substring(tVersionIndex+1, tVersionIndex+2);    
         if (parseInt(tMajorVersionString) >= tMajorVersion) {
            if (tMinorVersion > 0) {
               if (parseInt(tMinorVersionString) >= tMinorVersion) {
                  tShockwaveFound = 1;     
               }      
            } else {
               tShockwaveFound = 1;      
            }     
         }
     }
  } else if (navigator.userAgent && navigator.userAgent.indexOf("MSIE")>=0 && (navigator.userAgent.indexOf("Windows 95")>=0 || navigator.userAgent.indexOf("Windows 98")>=0 || navigator.userAgent.indexOf("Windows NT")>=0 )) {
     var tVersionString = "";   
//     document.write('<SCRIPT LANGUAGE=VBScript\> \n');   
//     document.write('on error resume next \n');   
//     document.write('set tSWControl = CreateObject("SWCtl.SWCtl") \n');   
//     document.write('if IsObject(tSWControl) then \n');   
//     document.write('tVersionString = tSWControl.ShockwaveVersion("") \n');   
//     document.write('end if');   
//     document.write('</SCRIPT\> \n');   
//     if (tVersionString != "") {
//          tVersionIndex = tVersionString.indexOf(".")    
//          var tMajorVersionString = tVersionString.substring(tVersionIndex-2, tVersionIndex);    
//          var tMinorVersionString = tVersionString.substring(tVersionIndex+1, tVersionIndex+2);    
//          if (parseInt(tMajorVersionString) >= tMajorVersion) {
//            if (tMinorVersion > 0) {
//                if (parseInt(tMinorVersionString) >= tMinorVersion) {
//                    tShockwaveFound = 1;
//                }      
//            } else {
//                tShockwaveFound = 1;      
//            }    
//          }   
//     } 
  } 
  if ( tShockwaveFound ) {
     return 'Tiene el shockwave\n';
  } else {
     return 'No tiene el shockwave\n';
  } 
}
function detectIE(ClassID,name) { 
    result = false; 
    document.write('<SCRIPT LANGUAGE=VBScript>\n on error resume next \n result = IsObject(CreateObject("' + ClassID + '"))\n</SCRIPT>\n'); 
    if (result) 
        return name+','; 
    else 
        return ''; 
}
function detectNS(ClassID,name) { 
    n = ""; 
    if (nse.indexOf(ClassID) != -1) 
        if (navigator.mimeTypes[ClassID].enabledPlugin != null) 
            n = name+","; 
    return n; 
}

function JPlug(){
    var that=this;
    window['MMSS_PLUGIN']=null;
    var MICROSOFT_VBCODE_HEAD="<"+'script language="VBscript"'+">"+'\n on error resume next'+'\n VBScriptEngine = False'+'\n If ScriptEngineMajorVersion >= 2 then'+'\n VBScriptEngine = True'+'\n End If'+'\n'+"<"+'/scr'+'ipt'+">";
    var MICROSOFT_VBCODE_BODY="<"+'script language="VBscript"'+">"+'\n If VBScriptEngine Then'+'\n on error resume next'+'\n CreateObject("JavaPlugin")'+'\n If Err.Number <> 0 Then'+'\n MMSS_PLUGIN = false'+'\n Else'+'\n MMSS_PLUGIN = true'+'\n End If'+'\n End If'+"<"+'/scr'+'ipt'+">";
    var PLUGINS_NAME='Java';
    var MIMETYPES_NAME='application/x-java-applet';
    function getPluginsJava(){
        if(navigator.plugins&&navigator.plugins.length&&navigator.plugins.length>1){
            var plugs=navigator.plugins;
            for(var i=0;i<plugs.length;i++){
                if(plugs[i].name.toLowerCase().indexOf(PLUGINS_NAME.toLowerCase())!=-1){
                    return true;
                }
            }
            return false;
        }
        return null;
    }
    function getMimeTypesJava(){
        if(navigator.mimeTypes&&navigator.mimeTypes.length&&navigator.mimeTypes.length>0){
            for(var i=0;i<navigator.mimeTypes.length;i++){
                if(navigator.mimeTypes[i].description.toLowerCase().indexOf('java')!=-1){
                    if(navigator.mimeTypes[i].type.toLowerCase().indexOf(MIMETYPES_NAME)!=-1){that.pluginMimeInfo.name=navigator.mimeTypes[i].enabledPlugin.name;that.pluginMimeInfo.description=navigator.mimeTypes[i].enabledPlugin.description;that.pluginMimeInfo.filename=navigator.mimeTypes[i].enabledPlugin.filename;that.pluginMimeInfo.length=navigator.mimeTypes[i].enabledPlugin.length;
                        for(var m=0;m<that.pluginMimeInfo.length;m++){
                            for(y in navigator.mimeTypes[i].enabledPlugin[m]){
                                if(y=='type'){
                                    that.pluginMimeInfo.typeStrings+=navigator.mimeTypes[i].enabledPlugin[m][y]+', ';
                                }
                            }
                        }
                        that.isMimeListed=true;
                        return;
                    }
                }
            }
        }
        that.isMimeListed=false;
    }
    function get(){
        if(getPluginsJava()!=null&&navigator.javaEnabled){
            that.isEnabled=navigator.javaEnabled();
            return navigator.javaEnabled();
        }
        return null;
    }
    function init(){
        if(navigator.userAgent.toLowerCase().indexOf('mac')==-1&&window.ActiveXObject){
            document.write(MICROSOFT_VBCODE_HEAD);
        }
    }
    function exec(){
        that.isPluginsListed=(getPluginsJava()!=null)?getPluginsJava():false;
        getMimeTypesJava();
        get();
    }
    function detectMicrosoft(){
        if(typeof VBScriptEngine!='undefined'){
            document.write(MICROSOFT_VBCODE_BODY);
        }
        if(window['MMSS_PLUGIN']!=null){
            that.isEnabled=window['MMSS_PLUGIN'];
        }
    }
    this.detect=function(){
        init();
        exec();
        detectMicrosoft();
        return that.isEnabled;
    };
    this.output=function(){
        var jPluginStr='<p><b>Java Plugin Detection [JPlug Class]</b></p>';
        if(that.isPluginsListed!=null&&that.isMimeListed!=null){
            jPluginStr+='<p>Listed in navigator.plugins: '+
            that.isPluginsListed+'<br />\n'+'Listed as a mime-type: '+
            that.isMimeListed+'<br />\n'+'<b>This browser is Java-enabled</b>: <font color="red">'+that.isEnabled+'</font><br /></p>\n';
            if(that.pluginMimeInfo.typeStrings!=''){
                jPluginStr+='<p>Additional information provided by the browser (first entry found only): '+'<br />Name: '+'<i>'+that.pluginMimeInfo.name+'</i>'+'<br />Description: '+'<i>'+that.pluginMimeInfo.description+'</i>'+'<br />Filename: '+'<i>'+that.pluginMimeInfo.filename+'</i>'+'<br />Listed mime-type strings: '+'<i>'+that.pluginMimeInfo.typeStrings+'</i>'+'</p>';
            }
        }else{
            jPluginStr+='<p>Nothing to output. You must instantiate and call the detect() method on the JPlug class before doing any output:</p>'+'<code>MyJPlugin.detect();</code>';
        }
        document.write(jPluginStr);
    };
    this.isPluginsListed=null;
    this.isMimeListed=null;
    this.pluginMimeInfo={name:null,length:0,description:null,filename:null,typeStrings:''};
    this.isEnabled=null;
    if(typeof _instance=='undefined'){
        _instance=this;
    }
    return _instance;
}
//-->

