]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
put Javascript files under SSL
authorEvan Prodromou <evan@status.net>
Thu, 11 Feb 2010 21:59:39 +0000 (16:59 -0500)
committerEvan Prodromou <evan@status.net>
Thu, 11 Feb 2010 21:59:39 +0000 (16:59 -0500)
README
lib/default.php
lib/htmloutputter.php

diff --git a/README b/README
index 9843ab89bc995a6647ea498c8ab5e99136aa8533..7531df997101751d02b377ff65a8f60e7226fcf8 100644 (file)
--- a/README
+++ b/README
@@ -1226,6 +1226,17 @@ path:    Path part of theme URLs, before the theme name. Relative to the
 ssl:   Whether to use SSL for theme elements. Default is null, which means
        guess based on site SSL settings.
 
+javascript
+----------
+
+server: You can speed up page loading by pointing the
+       theme file lookup to another server (virtual or real).
+       Defaults to NULL, meaning to use the site server.
+path:  Path part of Javascript URLs. Defaults to null,
+       which means to use the site path + '/js/'.
+ssl:   Whether to use SSL for JavaScript files. Default is null, which means
+       guess based on site SSL settings.
+
 xmpp
 ----
 
index d19e0403671df86a101d312aaa0a769034e48999..8a21271b8f90c4c0fac1443dc04a20737c24b904 100644 (file)
@@ -128,7 +128,8 @@ $default =
               'ssl' => null),
         'javascript' =>
         array('server' => null,
-              'path'=> null),
+              'path'=> null,
+              'ssl' => null),
         'throttle' =>
         array('enabled' => false, // whether to throttle edits; false by default
               'count' => 20, // number of allowed messages in timespan
index 317f5ea612a79b486488875120188583a10d1e01..47e56fc8f8ba6041c63821c3f534ed2ddaf072a1 100644 (file)
@@ -376,9 +376,20 @@ class HTMLOutputter extends XMLOutputter
                     $server = common_config('site', 'server');
                 }
 
-                // XXX: protocol
+                $ssl = common_config('javascript', 'ssl');
+
+                if (is_null($ssl)) { // null -> guess
+                    if (common_config('site', 'ssl') == 'always' &&
+                        !common_config('javascript', 'server')) {
+                        $ssl = true;
+                    } else {
+                        $ssl = false;
+                    }
+                }
+
+                $protocol = ($ssl) ? 'https' : 'http';
 
-                $src = 'http://'.$server.$path.$src . '?version=' . STATUSNET_VERSION;
+                $src = $protocol.'://'.$server.$path.$src . '?version=' . STATUSNET_VERSION;
             }
 
             $this->element('script', array('type' => $type,