]> git.joonet.de Git - adminer.git/commitdiff
Download externals from HTTPS
authorjakubvrana <jakubvrana@7c3ca157-0c34-0410-bff1-cbf682f78f5c>
Wed, 29 Jul 2009 15:01:47 +0000 (15:01 +0000)
committerjakubvrana <jakubvrana@7c3ca157-0c34-0410-bff1-cbf682f78f5c>
Wed, 29 Jul 2009 15:01:47 +0000 (15:01 +0000)
git-svn-id: https://adminer.svn.sourceforge.net/svnroot/adminer/trunk@940 7c3ca157-0c34-0410-bff1-cbf682f78f5c

adminer/editing.js
adminer/functions.js
changes.txt
compile.php
released.js [new file with mode: 0644]
todo.txt

index 589ecf8f885fb01c2397cf55ffc2d8421c821afc..6da99a99e01243e5aad1c0272bdb0f0bc632183a 100644 (file)
@@ -1,19 +1,12 @@
 // Adminer specific functions
 
 function body_load() {
-       var script = document.createElement('script');
-       script.src = '../externals/jush/jush.js';
-       script.onload = function () {
-               jush.style('../externals/jush/jush.css');
+       var jush_root = '../externals/jush/';
+       load_script(jush_root + 'jush.js', function () {
+               jush.style(jush_root + 'jush.css');
                jush.highlight_tag('pre');
                jush.highlight_tag('code');
-       }
-       script.onreadystatechange = function () {
-               if (script.readyState == 'loaded' || script.readyState == 'complete') {
-                       script.onload();
-               }
-       }
-       document.body.appendChild(script);
+       });
 }
 
 
index 9c2e62f0ea639f9118be0cf72d800dbd7e984b65..fa80a9efca8938729402880f5719b61de4d4d6e3 100644 (file)
@@ -6,13 +6,35 @@ function toggle(id) {
        return true;
 }
 
-function verify_version(version) {
-       document.cookie = 'adminer_version=0';
+function load_script(src, onload) {
        var script = document.createElement('script');
-       script.src = 'http://www.adminer.org/version.php?version=' + version;
+       script.src = src;
+       script.onload = onload;
+       script.onreadystatechange = function () {
+               if (script.readyState == 'loaded' || script.readyState == 'complete') {
+                       onload();
+               }
+       }
        document.body.appendChild(script);
 }
 
+function verify_version(version) {
+       document.cookie = 'adminer_version=0';
+       load_script('https://adminer.svn.sourceforge.net/svnroot/adminer/released.js', function () {
+               document.cookie = 'adminer_version=' + released;
+               var re = /^([0-9]+)\.([0-9]+)\.([0-9]+)(.*)/;
+               var v1 = re.exec(version);
+               var v2 = re.exec(released);
+               if (v1 && v2 && (+v1[1] < +v2[1]
+                       || (v1[1] == v2[1] && (+v1[2] < +v2[2]
+                       || (v1[2] == v2[2] && (+v1[3] < +v2[3]
+                       || (v1[3] == v2[3] && v1[4]
+               ))))))) {
+                       document.getElementById('version').innerHTML = released;
+               }
+       });
+}
+
 function form_check(el, name) {
        var elems = el.form.elements;
        for (var i=0; i < elems.length; i++) {
index d64680a3fcdb2868d4dba835cdc4cb59c03638ea..a77d993ee05b74fb49d2c1637dfc00036b52fcf2 100644 (file)
@@ -15,6 +15,7 @@ Clear history (thanks to paranoiq)
 Remove Delete button from Edit page - use mass operation for it
 Faster multiple update, clone and delete
 Faster table list in navigation
+Download version checker and syntax highlighting from HTTPS
 Use HTML Strict instead of XHTML
 Remove function minification for performance and customization
 Fix grant ALL PRIVILEGES with GRANT OPTION
index 8c3f46286b50620d1f357cd6592eb9ad878d5daf..7a3704124d3d04ebe11ed0a6b425fcd1ff91b2f9 100644 (file)
@@ -180,7 +180,7 @@ $file = preg_replace_callback("~compile_file\\('([^']+)', '([^']+)'\\);~", 'comp
 $replace = 'h(preg_replace("~\\\\\\\\?.*~", "", $_SERVER["REQUEST_URI"])) . "?file=\\1&amp;version=' . $VERSION;
 $file = preg_replace('~\\.\\./adminer/(default\\.css|functions\\.js|favicon\\.ico)~', '<?php echo ' . $replace . '"; ?>', $file);
 $file = preg_replace('~\\.\\./adminer/((plus|cross|up|down|arrow)\\.gif)~', '" . ' . $replace, $file);
-$file = str_replace("../externals/jush/", "http://jush.sourceforge.net/", $file);
+$file = str_replace("../externals/jush/", "https://jush.svn.sourceforge.net/svnroot/jush/trunk/", $file); // mixed-content warning if Adminer runs on HTTPS and external files on HTTP
 $file = preg_replace("~<\\?php\\s*\\?>\n?|\\?>\n?<\\?php~", '', $file);
 $file = php_shrink($file);
 
diff --git a/released.js b/released.js
new file mode 100644 (file)
index 0000000..ed09e0d
--- /dev/null
@@ -0,0 +1 @@
+var released = '1.11.1';
index 47d246602ee8c3188386c96b41e13427dfa62e2c..3f4e12571374befd5ed9700e3961f4b6b5fbea62 100644 (file)
--- a/todo.txt
+++ b/todo.txt
@@ -13,7 +13,6 @@ Edit default values directly in table creation
 Offer enum and set items in search - whisperer
 Use event $intervals + microseconds in relative date functions
 Table status cache - SHOW TABLE STATUS is slow with big InnoDB tables
-Download external files (version checker and JUSH) from trusted HTTPS if Adminer runs in HTTPS (mixed-content warning)
 ? Ability to select external style - list downloaded by JavaScript
 ? Column and table names auto-completition in SQL textarea
 ? Save uploaded files after error to session variable instead of hidden field