]> gitweb.fluxo.info Git - lorea/elgg.git/commitdiff
Refs #2538: Renamed elgg.extendUrl to elgg.normalize_url
authorewinslow <ewinslow@36083f99-b078-4883-b0ff-0f9b5a30f544>
Tue, 2 Nov 2010 15:24:35 +0000 (15:24 +0000)
committerewinslow <ewinslow@36083f99-b078-4883-b0ff-0f9b5a30f544>
Tue, 2 Nov 2010 15:24:35 +0000 (15:24 +0000)
git-svn-id: http://code.elgg.org/elgg/trunk@7188 36083f99-b078-4883-b0ff-0f9b5a30f544

engine/js/lib/ajax.js
engine/js/lib/elgglib.js
engine/js/tests/ElggLibTest.js
engine/lib/entities.php

index bce0d31d3755b6e5d22a7ef473e369cc81eeb2e6..184fd0da3868736f4f82bd27f776658fc8e4624f 100644 (file)
@@ -18,7 +18,7 @@ elgg.provide('elgg.ajax');
 elgg.ajax = function(url, options) {\r
        options = elgg.ajax.handleOptions(url, options);\r
        \r
-       options.url = elgg.extendUrl(options.url);\r
+       options.url = elgg.normalize_url(options.url);\r
        return $.ajax(options);\r
 };\r
 /**\r
index a91def2b9463b7d2d0f3c4bc0596f98a15ee4c5c..32dbb1ec3754c7bc6442eaf80db84102bce8020e 100644 (file)
@@ -55,6 +55,10 @@ elgg.require = function(pkg) {
  * elgg.package = elgg.package || {};\r
  * elgg.package.subpackage = elgg.package.subpackage || {};\r
  * </pre>\r
+ * \r
+ * @example elgg.provide('elgg.config.translations')\r
+ * \r
+ * @param {string} pkg The package name.\r
  */\r
 elgg.provide = function(pkg) {\r
        elgg.assertTypeOf('string', pkg);\r
@@ -105,13 +109,15 @@ elgg.inherit = function(Child, Parent) {
  * @return {String} The extended url\r
  * @private\r
  */\r
-elgg.extendUrl = function(url) {\r
+elgg.normalize_url = function(url) {\r
        url = url || '';\r
-       if(url.indexOf(elgg.config.wwwroot) == -1) {\r
-               url = elgg.config.wwwroot + url;\r
+       elgg.assertTypeOf('string', url);\r
+       \r
+       if(/(^(https?:)?\/\/)/.test(url)) {\r
+               return url;\r
        }\r
        \r
-       return url;\r
+       return elgg.config.wwwroot + url;\r
 };\r
 \r
 /**\r
@@ -177,5 +183,5 @@ elgg.register_error = function(errors, delay) {
  * @param {String} url The url to forward to\r
  */\r
 elgg.forward = function(url) {\r
-       location.href = elgg.extendUrl(url);\r
+       location.href = elgg.normalize_url(url);\r
 };
\ No newline at end of file
index ed4db24e13790cd616e71296b9810b62c26dffe2..035b60325c1533876725e863a6d4378e7899a0cf 100644 (file)
@@ -73,12 +73,16 @@ ElggLibTest.prototype.testInherit = function() {
 };\r
 \r
 ElggLibTest.prototype.testExtendUrl = function() {\r
-       var url;\r
-       elgg.config.wwwroot = "http://www.elgg.org/";\r
+       elgg.config.wwwroot = "http://elgg.org/";\r
        \r
-       url = '';\r
-       assertEquals(elgg.config.wwwroot, elgg.extendUrl(url));\r
-       \r
-       url = 'pg/test';\r
-       assertEquals('http://www.elgg.org/pg/test', elgg.extendUrl(url));\r
+       var inputs = [\r
+           [elgg.config.wwwroot, ''],\r
+           [elgg.config.wwwroot + 'pg/test', 'pg/test'],\r
+           ['http://google.com', 'http://google.com'],\r
+           ['//example.com', '//example.com'],\r
+       ];\r
+\r
+       for (var i in inputs) {\r
+               assertEquals(inputs[i][0], elgg.normalize_url(inputs[i][1]));\r
+       }\r
 };
\ No newline at end of file
index 91593992229a47a6b8f1c9930ea5f94828e55b60..1c8db655bd925bf92ebe3de3bb354aaa96c02a41 100644 (file)
@@ -629,6 +629,7 @@ function entity_row_to_elggstar($row) {
        }
 
        if (!$new_entity) {
+               //@todo Make this into a function
                switch ($row->type) {
                        case 'object' :
                                $new_entity = new ElggObject($row);