Просмотр исходного кода

Merging manually latest changes by herodoto in the index and userportal.php

Julio Montoya 13 лет назад
Родитель
Сommit
e309b7f47a
2 измененных файлов с 176 добавлено и 0 удалено
  1. 15 0
      index.php
  2. 161 0
      user_portal.php

+ 15 - 0
index.php

@@ -158,6 +158,21 @@ $index = new IndexManager($header_title, false);
 
 echo '<div id="content" class="maincontent">';
 
+//check if javascript is enabled
+echo '<noscript>';
+echo Display::display_error_message(get_lang("NoJavascript"));
+echo '</noscript>';
+
+//check if cookies are enabled
+?>
+<script language="JavaScript">
+if(navigator.cookieEnabled==false){
+        document.writeln('<?php Display::display_error_message(get_lang("NoCookies")); ?>');
+}
+</script>
+<?php
+
+
 // Plugins for loginpage_main AND campushomepage_main.
 if (!api_get_user_id()) {
     api_plugin('loginpage_main');

+ 161 - 0
user_portal.php

@@ -185,6 +185,167 @@ if ($load_dirs) {
 
 Display :: display_header($nameTools);
 
+/* Sniffing system */
+//by Juan Carlos Raña Trabado
+?>
+
+<script LANGUAGE="JavaScript">
+var nav ="";
+var screen_size_w;
+var screen_size_h;
+var java="";
+var type_mimetypes="";
+var suffixes_mimetypes="";
+var list_plugins="";
+var check_some_activex="";
+var check_some_plugins="";
+var java_sun_ver="";
+
+<!-- check Microsoft Internet Explorer -->
+if (navigator.userAgent.indexOf("MSIE") != -1) { var nav="ie";}
+
+<!-- check Screen Size -->
+screen_size_w=screen.width;
+screen_size_h=screen.height;
+
+<!-- list mimetypes types, suffixes and plugins (no for IE) -->
+if (nav!="ie"){
+        
+        if (navigator.mimeTypes && navigator.mimeTypes.length > 0) {
+        
+                for (i=0; i < navigator.mimeTypes.length; i++) {
+                        type_mimetypes=type_mimetypes+" "+navigator.mimeTypes[i].type;
+                        suffixes_mimetypes=suffixes_mimetypes+" "+navigator.mimeTypes[i].suffixes;
+                        if (navigator.mimeTypes[i].enabledPlugin!=null) {
+                                list_plugins=list_plugins+" "+navigator.mimeTypes[i].enabledPlugin.name;
+                        }               
+                }
+        }
+}
+<!-- check some activex for IE -->
+if (nav=="ie"){
+        //TODO:check wmediaplayer are too aggressive. Then we can assume that if there Windows, there Wmediaplayer?
+        
+        var check_some_activex = 
+        DetectActiveXObject("ShockwaveFlash.ShockwaveFlash.1", "flash_yes")+
+        DetectActiveXObject("QuickTime.QTElementBehavior", "quicktime_yes")+
+        //DetectActiveXObject("MediaPlayer.MediaPlayer.1","wmediaplayer_yes")+
+        DetectActiveXObject("acroPDF.PDF.1","acrobatreader_yes");
+        
+        function DetectActiveXObject(ObjectName, name) { 
+                result = false;
+                        document.write('<SCRIPT LANGUAGE=VBScript\> \n');
+                        document.write('on error resume next \n');
+                        document.write('result = IsObject(CreateObject("' + ObjectName + '")) \n');
+                        document.write('</SCRIPT\> \n');
+                if (result) return name+' , '; else return '';
+        }
+}
+<!-- check some plugins for not IE -->
+if (nav!="ie"){
+
+        if (list_plugins.indexOf("Shockwave Flash")!=-1){
+                check_some_plugins=check_some_plugins+', flash_yes';
+        }
+        if (list_plugins.indexOf("QuickTime")!=-1){
+                check_some_plugins=check_some_plugins+', quicktime_yes';
+        }
+        if (list_plugins.indexOf("Windows Media Player")!=-1){
+                check_some_plugins=check_some_plugins+', wmediaplayer_yes';
+        }
+        if (list_plugins.indexOf("Adobe Acrobat")!=-1){
+                check_some_plugins=check_some_plugins+',acrobatreader_yes';
+        }
+}
+<!-- java -->
+if(navigator.javaEnabled()==true){java="java_yes";}else{java="java_no";}
+
+<!-- check java Sun ver -->
+//for not IE
+if (nav!="ie"){
+        if (navigator.mimeTypes["application/x-java-applet"]){ java_sun_ver="javasun_yes";}
+        if (navigator.mimeTypes["application/x-java-applet;jpi-version=1.6.0_24"]){ java_sun_ver=java_sun_ver+" , javasun_ver_1.6_24_yes"; }//This java version 1.6.0_24 is problematic, the user should be updated
+
+}
+//for IE
+if (nav=="ie"){
+        //1.5->end nov 2009
+        //TODO:extract minor version
+        var java_sun_ver =
+        DetectActiveXObject("JavaWebStart.isInstalled","javasun_yes")+
+        DetectActiveXObject("JavaWebStart.isInstalled.1.4.2.0","javasun_ver_1.4_yes")+
+        DetectActiveXObject("JavaWebStart.isInstalled.1.5.0.0","javasun_ver_1.5_yes")+
+        DetectActiveXObject("JavaWebStart.isInstalled.1.6.0.0","javasun_ver_1.6_yes")+
+        DetectActiveXObject("JavaWebStart.isInstalled.1.7.0.0","javasun_ver_1.7_yes");
+        
+        function DetectActiveXObject(ObjectName, name) { 
+                result = false;
+                        document.write('<SCRIPT LANGUAGE=VBScript\> \n');
+                        document.write('on error resume next \n');
+                        document.write('result = IsObject(CreateObject("' + ObjectName + '")) \n');
+                        document.write('</SCRIPT\> \n');
+                if (result) return name+' , '; else return '';
+        }
+}
+
+<!-- Send to server -->
+function sendSniff(){
+        document.forms.sniff_nav_form.sniff_navigator.value="checked";
+        document.forms.sniff_nav_form.sniff_navigator_screen_size_w.value=screen_size_w;
+        document.forms.sniff_nav_form.sniff_navigator_screen_size_h.value=screen_size_h;
+        document.forms.sniff_nav_form.sniff_navigator_type_mimetypes.value=type_mimetypes;
+        document.forms.sniff_nav_form.sniff_navigator_suffixes_mimetypes.value=suffixes_mimetypes;
+        document.forms.sniff_nav_form.sniff_navigator_list_plugins.value=list_plugins;
+        document.forms.sniff_nav_form.sniff_navigator_check_some_activex.value=check_some_activex;
+        document.forms.sniff_nav_form.sniff_navigator_check_some_plugins.value=check_some_plugins;
+        document.forms.sniff_nav_form.sniff_navigator_java.value=java;
+        document.forms.sniff_nav_form.sniff_navigator_java_sun_ver.value=java_sun_ver;
+        document.sniff_nav_form.submit(); 
+} 
+
+</script>
+<form name="sniff_nav_form" method="POST">
+<input type="hidden" name="sniff_navigator">
+<input type="hidden" name="sniff_navigator_screen_size_w">
+<input type="hidden" name="sniff_navigator_screen_size_h">
+<input type="hidden" name="sniff_navigator_type_mimetypes">
+<input type="hidden" name="sniff_navigator_suffixes_mimetypes">
+<input type="hidden" name="sniff_navigator_list_plugins">
+<input type="hidden" name="sniff_navigator_check_some_activex">
+<input type="hidden" name="sniff_navigator_check_some_plugins">
+<input type="hidden" name="sniff_navigator_java">
+<input type="hidden" name="sniff_navigator_java_sun_ver">
+</form>
+
+<?php
+if (empty($_POST['sniff_navigator'])){
+        echo '<script>';
+        echo 'sendSniff();';
+        echo '</script>';
+}
+
+//store posts to sessions
+$_SESSION['sniff_screen_size_w']=Security::remove_XSS($_POST['sniff_navigator_screen_size_w']);
+$_SESSION['sniff__screen_size_h']=Security::remove_XSS($_POST['sniff_navigator_screen_size_h']);
+$_SESSION['sniff_type_mimetypes']=Security::remove_XSS($_POST['sniff_navigator_type_mimetypes']);
+$_SESSION['sniff_suffixes_mimetypes']=Security::remove_XSS($_POST['sniff_navigator_suffixes_mimetypes']);
+$_SESSION['sniff_list_plugins']=Security::remove_XSS($_POST['sniff_navigator_list_plugins']);
+$_SESSION['sniff_check_some_activex']=Security::remove_XSS($_POST['sniff_navigator_check_some_activex']);
+$_SESSION['sniff_check_some_plugins']=Security::remove_XSS($_POST['sniff_navigator_check_some_plugins']);
+$_SESSION['sniff_java']=Security::remove_XSS($_POST['sniff_navigator_java']);
+$_SESSION['sniff_java_sun_ver']=Security::remove_XSS($_POST['sniff_navigator_java_sun_ver']);
+
+//var_dump($_SESSION);
+
+// end sniffing system
+
+//check for flash and message
+if (stripos("flash_yes", $_SESSION['sniff_check_some_activex'])===0 || stripos("flash_yes", $_SESSION['sniff_check_some_plugins'])===0){
+        
+        Display::display_warning_message(get_lang('NoFlash'),false);
+}
+
+
 /* MAIN CODE */
 
 $index = new IndexManager($nameTools, false);