less naive implementation of common LDT platform URL
authorRaphael Velt <raph.velt@gmail.com>
Fri, 24 Aug 2012 13:07:29 +0200
changeset 684 f59daf0830d2
parent 683 cd315f8c70e8
child 685 b48fe0f2d5b1
less naive implementation of common LDT platform URL
web/common.php
web/player_embed.php
web/polemicaltimeline.php
--- a/web/common.php	Thu Aug 23 15:16:26 2012 +0200
+++ b/web/common.php	Fri Aug 24 13:07:29 2012 +0200
@@ -362,4 +362,20 @@
 	}
 }
 
+function get_metadata_url($metadata) {
+    global $ldt_platform, $project_url_base;
+    if (preg_match('/^https?:\/\//', $metadata)) {
+        return $metadata;
+    } else {
+        return $ldt_platform.$project_url_base.$metadata;
+    }
+}
 
+function get_metadata_json_url($metadata) {
+    if (is_array($metadata)) {
+        $metadata["url"] = get_metadata_url($metadata["url"]);
+        return $metadata;
+    } else {
+        return get_metadata_url($metadata);
+    }
+}
--- a/web/player_embed.php	Thu Aug 23 15:16:26 2012 +0200
+++ b/web/player_embed.php	Fri Aug 24 13:07:29 2012 +0200
@@ -52,7 +52,7 @@
     IriSP.language = "<?php echo($actual) ?>";
     
     var _metadata = {
-        url: '<?php echo $ldt_platform.$project_url_base.$metadata_url ?>?callback=?',
+        url: '<?php echo get_metadata_url($metadata_url) ?>?callback=?',
         format: 'ldt'
     };
     var _config = {            
--- a/web/polemicaltimeline.php	Thu Aug 23 15:16:26 2012 +0200
+++ b/web/polemicaltimeline.php	Fri Aug 24 13:07:29 2012 +0200
@@ -90,17 +90,18 @@
     }
     <?php
           if(is_array($translate->_('config__metadata'))):
-            reset($translate->_('config__metadata'));
-            $first_key = key($translate->_('config__metadata'));
+            $metadataurls = array_map("get_metadata_json_url",$translate->_('config__metadata'));
+            reset($metadataurls);
+            $first_key = key($metadataurls);
     ?>
-    var metadatas = jQuery.parseJSON('<?php echo(json_encode($translate->_('config__metadata'))); ?>');
+    var metadatas = jQuery.parseJSON('<?php echo(json_encode($metadataurls)); ?>');
     var url = jQuery.url();
     var metadata_key = url.fparam('metadata');
     if(typeof metadata_key === "undefined" || metadata_key.length === 0) {
         metadata_key = "<?php echo($first_key);?>";
     }
     <?php else: ?>
-    var metadatas = { metadata: {url: "<?php echo($translate->_('config__metadata'));?>"} };
+    var metadatas = { metadata: {url: "<?php echo(get_metadata_url($translate->_('config__metadata')));?>"} };
     var metadata_key = "metadata";
     <?php endif;?>
     var _protocol_level = _protocol_level,
@@ -125,7 +126,7 @@
     IriSP.language = "<?php echo($actual) ?>";
     
     var _metadata = {
-        url: "<?php echo $ldt_platform.$project_url_base; ?>" + metadatas[metadata_key].url + '?callback=?',
+        url: metadatas[metadata_key].url + '?callback=?',
         format: 'ldt'
     };
     var _config = {