[Mapbender-commits] r8560 - in trunk/mapbender: http/img http/php http/plugins resources/db/pgsql/UTF-8/update
svn_mapbender at osgeo.org
svn_mapbender at osgeo.org
Thu Feb 14 02:19:14 PST 2013
Author: armin11
Date: 2013-02-14 02:19:14 -0800 (Thu, 14 Feb 2013)
New Revision: 8560
Added:
trunk/mapbender/http/img/od_80x15_blue.png
Modified:
trunk/mapbender/http/php/mod_getServiceDisclaimer.php
trunk/mapbender/http/plugins/mb_metadata_edit.js
trunk/mapbender/http/plugins/mb_metadata_edit.php
trunk/mapbender/http/plugins/mb_metadata_server.php
trunk/mapbender/http/plugins/mb_metadata_wfs_edit.js
trunk/mapbender/http/plugins/mb_metadata_wfs_edit.php
trunk/mapbender/http/plugins/mb_metadata_wfs_server.php
trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7.3_to_2.7.4_pgsql_UTF-8.sql
Log:
New possibility to distinguish between open licences and not open licences. It is needed to export data from the registry to e.g. a ckan (open data portal) instance.
Added: trunk/mapbender/http/img/od_80x15_blue.png
===================================================================
(Binary files differ)
Property changes on: trunk/mapbender/http/img/od_80x15_blue.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: trunk/mapbender/http/php/mod_getServiceDisclaimer.php
===================================================================
--- trunk/mapbender/http/php/mod_getServiceDisclaimer.php 2013-02-07 14:07:37 UTC (rev 8559)
+++ trunk/mapbender/http/php/mod_getServiceDisclaimer.php 2013-02-14 10:19:14 UTC (rev 8560)
@@ -173,13 +173,13 @@
//
if ($type == "wms") {
$sql = "SELECT wms_id, wms.accessconstraints, wms.fees, wms.wms_network_access , wms.wms_pricevolume, wms.wms_proxylog, termsofuse.name,";
- $sql .= " termsofuse.termsofuse_id, termsofuse.symbollink, termsofuse.description,termsofuse.descriptionlink from wms LEFT OUTER JOIN";
+ $sql .= " termsofuse.termsofuse_id, termsofuse.symbollink, termsofuse.description,termsofuse.descriptionlink, termsofuse.isopen from wms LEFT OUTER JOIN";
$sql .= " wms_termsofuse ON (wms.wms_id = wms_termsofuse.fkey_wms_id) LEFT OUTER JOIN termsofuse ON";
$sql .= " (wms_termsofuse.fkey_termsofuse_id=termsofuse.termsofuse_id) where wms.wms_id = $1";
}
if ($type == "wfs") {
$sql = "SELECT wfs_id, accessconstraints, fees, wfs_network_access , termsofuse.name,";
- $sql .= " termsofuse.termsofuse_id ,termsofuse.symbollink, termsofuse.description,termsofuse.descriptionlink from wfs LEFT OUTER JOIN";
+ $sql .= " termsofuse.termsofuse_id ,termsofuse.symbollink, termsofuse.description,termsofuse.descriptionlink, termsofuse.isopen from wfs LEFT OUTER JOIN";
$sql .= " wfs_termsofuse ON (wfs.wfs_id = wfs_termsofuse.fkey_wfs_id) LEFT OUTER JOIN termsofuse ON";
$sql .= " (wfs_termsofuse.fkey_termsofuse_id=termsofuse.termsofuse_id) where wfs.wfs_id = $1";
}
@@ -247,6 +247,10 @@
$fees = $htmlHeader['licences'];
#$fees .= $row['name']."<br>";
$fees .= "<a href='".$row['descriptionlink']."' target=_blank><img style='border: none;' src='".$row['symbollink']."' ".$row['name']."></a><br>";
+ if (isset($row['isopen']) && $row['isopen'] == "1") {
+ //show opendata symbol
+ $fees .= "<br><img src='../img/od_80x15_blue.png' /><br>";
+ }
$fees .= $row['description']."<br>";
$feesPart .= $fees;
} else {
@@ -291,6 +295,10 @@
$fees = $htmlHeader['licences'];
#$fees .= $row['name']."<br>";
$fees .= "<a href='".$row['descriptionlink']."' target=_blank><img src='".$row['symbollink']."' ".$row['name']."></a><br>";
+ if (isset($row['isopen']) && $row['isopen'] == "1") {
+ //show opendata symbol
+ $fees .= "<br><img src='../img/od_80x15_blue.png' /><br>";
+ }
$fees .= $row['description']."<br>";
echo $fees."<br>";
} else {
Modified: trunk/mapbender/http/plugins/mb_metadata_edit.js
===================================================================
--- trunk/mapbender/http/plugins/mb_metadata_edit.js 2013-02-07 14:07:37 UTC (rev 8559)
+++ trunk/mapbender/http/plugins/mb_metadata_edit.js 2013-02-14 10:19:14 UTC (rev 8560)
@@ -77,6 +77,8 @@
}
$metadataForm.easyform("reset");
$metadataForm.easyform("fill", obj);
+ //check if obj.wms_termsofuse not null
+ that.fillLicence(obj.wms_termsofuse);
that.valid();
}
});
@@ -105,6 +107,39 @@
});
req.send();
}
+ //Show more information about the licences
+ this.fillLicence = function(obj) {
+ // get licence information from server per termsofuse_id
+ var req = new Mapbender.Ajax.Request({
+ url: "../plugins/mb_metadata_server.php",
+ method: "getLicenceInformation",
+ parameters: {
+ "id": obj
+ },
+ callback: function (obj, result, message) {
+ if (!result) {
+ return;
+ }
+ if (obj.termsofuse_id) {
+ //alert(JSON.stringify(obj));
+ $('#licence_symbol').attr('src', obj.symbollink);
+ $('#licence_descriptionlink').text(obj.description);
+ $('#licence_descriptionlink').attr('href', obj.descriptionlink);
+ if (obj.isopen == 1) {
+ $('#open_symbol').attr('src', '../img/od_80x15_blue.png');
+ } else {
+ $('#open_symbol').attr('src', '');
+ }
+ } else {
+ $('#licence_symbol').attr('src', '');
+ $('#licence_descriptionlink').attr('href', '');
+ $('#licence_descriptionlink').text('');
+ $('#open_symbol').attr('src', '');
+ }
+ }
+ });
+ req.send();
+ }
this.fill = function (obj) {
$metadataForm.easyform("fill", obj);
Modified: trunk/mapbender/http/plugins/mb_metadata_edit.php
===================================================================
--- trunk/mapbender/http/plugins/mb_metadata_edit.php 2013-02-07 14:07:37 UTC (rev 8559)
+++ trunk/mapbender/http/plugins/mb_metadata_edit.php 2013-02-14 10:19:14 UTC (rev 8560)
@@ -48,17 +48,20 @@
?>
<p>
<label for="wms_termsofuse"><?php echo _mb("WMS Predefined Licence (Registry)");?>:</label>
- <select name="wms_termsofuse" id="wms_termsofuse">
- <option>...</option>
+ <select name="wms_termsofuse" id="wms_termsofuse" onChange="var chosenoption=this.options[this.selectedIndex];$('#mb_md_edit').mapbender().fillLicence(chosenoption.value);">
+ <option value='0'>...</option>
<?php
foreach ($termsofuse as $key => $value) {
echo "<option value='" . $key . "'>" . htmlentities($value, ENT_QUOTES, CHARSET) . "</option>";
}
?>
</select>
- <img class="help-dialog" title="<?php echo _mb("Help");?>" help="{text:'<?php echo _mb("Auswahl von vordefinierten Lizenzen hinsichtlich Gebühren und Zugriffsbeschränkungen.");?>'}" src="../img/questionmark.png" alt="" />
+ <img class="help-dialog" title="<?php echo _mb("Help");?>" help="{text:'<?php echo _mb("Selection of predefined licences.");?>'}" src="../img/questionmark.png" alt="" />
</p>
<p>
+ <img id="licence_symbol"> <a id='licence_descriptionlink' target='_blank'><a/> <img id="open_symbol">
+ </p>
+ <p>
<label for="wms_network_access"><?php echo _mb("Restricted Network Access (Registry)");?>:</label>
<input name="wms_network_access" id="wms_network_access" type="checkbox"/>
</p>
Modified: trunk/mapbender/http/plugins/mb_metadata_server.php
===================================================================
--- trunk/mapbender/http/plugins/mb_metadata_server.php 2013-02-07 14:07:37 UTC (rev 8559)
+++ trunk/mapbender/http/plugins/mb_metadata_server.php 2013-02-14 10:19:14 UTC (rev 8560)
@@ -451,7 +451,11 @@
"fkey_mb_group_id"
);
foreach ($columns as $c) {
- $value = $data->wms->$c;
+ if ($c == 'wms_termsofuse' && $data->wms->$c == "0") {
+ $value = null;
+ } else {
+ $value = $data->wms->$c;
+ }
if (!is_null($value)) {
$wms->$c = $value;
}
@@ -626,6 +630,33 @@
$ajaxResponse->setResult($resultObj);
$ajaxResponse->setSuccess(true);
break;
+
+ case "getLicenceInformation" :
+ $termsofuseId = $ajaxResponse->getParameter("id");
+ $sql = <<<SQL
+
+SELECT name, symbollink, description, descriptionlink, isopen FROM termsofuse WHERE termsofuse_id = $1
+
+SQL;
+ $v = array($termsofuseId);
+ $t = array('i');
+ $res = db_prep_query($sql,$v,$t);
+ $row = array();
+ if ($res) {
+ $row = db_fetch_assoc($res);
+ $resultObj["termsofuse_id"] = $termsofuseId;
+ $resultObj["name"] = $row["name"];
+ $resultObj["symbollink"] = $row["symbollink"];
+ $resultObj["description"] = $row["description"];
+ $resultObj["descriptionlink"] = $row["descriptionlink"];
+ $resultObj["isopen"] = $row["isopen"];
+ $ajaxResponse->setResult($resultObj);
+ $ajaxResponse->setSuccess(true);
+ } else {
+ $ajaxResponse->setSuccess(false);
+ }
+ break;
+
case "getWmsIdByLayerId" :
$layerId = $ajaxResponse->getParameter("layerId");
$sql = <<<SQL
Modified: trunk/mapbender/http/plugins/mb_metadata_wfs_edit.js
===================================================================
--- trunk/mapbender/http/plugins/mb_metadata_wfs_edit.js 2013-02-07 14:07:37 UTC (rev 8559)
+++ trunk/mapbender/http/plugins/mb_metadata_wfs_edit.js 2013-02-14 10:19:14 UTC (rev 8560)
@@ -78,6 +78,7 @@
}
$metadataForm.easyform("reset");
$metadataForm.easyform("fill", obj);
+ that.fillLicence(obj.wfs_termsofuse);
that.valid();
}
});
@@ -107,6 +108,40 @@
req.send();
}
+ //Show more information about the licences
+ this.fillLicence = function(obj) {
+ // get licence information from server per termsofuse_id
+ var req = new Mapbender.Ajax.Request({
+ url: "../plugins/mb_metadata_wfs_server.php",
+ method: "getLicenceInformation",
+ parameters: {
+ "id": obj
+ },
+ callback: function (obj, result, message) {
+ if (!result) {
+ return;
+ }
+ if (obj.termsofuse_id) {
+ //alert(JSON.stringify(obj));
+ $('#licence_symbol').attr('src', obj.symbollink);
+ $('#licence_descriptionlink').text(obj.description);
+ $('#licence_descriptionlink').attr('href', obj.descriptionlink);
+ if (obj.isopen == 1) {
+ $('#open_symbol').attr('src', '../img/od_80x15_blue.png');
+ } else {
+ $('#open_symbol').attr('src', '');
+ }
+ } else {
+ $('#licence_symbol').attr('src', '');
+ $('#licence_descriptionlink').attr('href', '');
+ $('#licence_descriptionlink').text('');
+ $('#open_symbol').attr('src', '');
+ }
+ }
+ });
+ req.send();
+ }
+
this.fill = function (obj) {
$metadataForm.easyform("fill", obj);
};
Modified: trunk/mapbender/http/plugins/mb_metadata_wfs_edit.php
===================================================================
--- trunk/mapbender/http/plugins/mb_metadata_wfs_edit.php 2013-02-07 14:07:37 UTC (rev 8559)
+++ trunk/mapbender/http/plugins/mb_metadata_wfs_edit.php 2013-02-14 10:19:14 UTC (rev 8560)
@@ -47,8 +47,8 @@
?>
<p>
<label for="wfs_termsofuse"><?php echo _mb("WFS Predefined Licence (Registry)");?>:</label>
- <select name="wfs_termsofuse" id="wfs_termsofuse">
- <option>...</option>
+ <select name="wfs_termsofuse" id="wfs_termsofuse" onChange="var chosenoption=this.options[this.selectedIndex];$('#mb_md_wfs_edit').mapbender().fillLicence(chosenoption.value);">
+ <option value="0">...</option>
<?php
foreach ($termsofuse as $key => $value) {
echo "<option value='" . $key . "'>" . htmlentities($value, ENT_QUOTES, CHARSET) . "</option>";
@@ -58,6 +58,9 @@
<img class="help-dialog" title="<?php echo _mb("Help");?>" help="{text:'<?php echo _mb("Selection of predefined licences.");?>'}" src="../img/questionmark.png" alt="" />
</p>
<p>
+ <img id="licence_symbol"> <a id='licence_descriptionlink' target='_blank'><a/> <img id="open_symbol">
+ </p>
+ <p>
<label for="wfs_network_access"><?php echo _mb("Restricted Network Access (Registry)");?>:</label>
<input name="wfs_network_access" id="wfs_network_access" type="checkbox"/>
</p>
Modified: trunk/mapbender/http/plugins/mb_metadata_wfs_server.php
===================================================================
--- trunk/mapbender/http/plugins/mb_metadata_wfs_server.php 2013-02-07 14:07:37 UTC (rev 8559)
+++ trunk/mapbender/http/plugins/mb_metadata_wfs_server.php 2013-02-14 10:19:14 UTC (rev 8560)
@@ -801,7 +801,11 @@
"uuid"
);
foreach ($columns as $c) {
- $value = $data->wfs->$c;
+ if ($c == 'wfs_termsofuse' && $data->wfs->$c == "0") {
+ $value = null;
+ } else {
+ $value = $data->wfs->$c;
+ }
if (!is_null($value)) {
$wfs->$c = $value;
}
@@ -910,6 +914,60 @@
$ajaxResponse->setSuccess(true);
break;
+
+ case "getContactMetadata" :
+ $mbGroupId = $ajaxResponse->getParameter("id");
+ $sql = <<<SQL
+
+SELECT mb_group_name, mb_group_title, mb_group_address, mb_group_email, mb_group_postcode, mb_group_city, mb_group_logo_path, mb_group_voicetelephone FROM mb_group WHERE mb_group_id = $1
+
+SQL;
+ $v = array($mbGroupId);
+ $t = array('i');
+ $res = db_prep_query($sql,$v,$t);
+ $row = array();
+ if ($res) {
+ $row = db_fetch_assoc($res);
+ $resultObj["fkey_mb_group_id"] = $mbGroupId;
+ $resultObj["mb_group_name"] = $row["mb_group_name"];
+ $resultObj["mb_group_title"] = $row["mb_group_title"];
+ $resultObj["mb_group_address"] = $row["mb_group_address"];
+ $resultObj["mb_group_email"] = $row["mb_group_email"];
+ $resultObj["mb_group_postcode"] = $row["mb_group_postcode"];
+ $resultObj["mb_group_city"] = $row["mb_group_city"];
+ $resultObj["mb_group_logo_path"] = $row["mb_group_logo_path"];
+ $resultObj["mb_group_voicetelephone"] = $row["mb_group_voicetelephone"];
+ }
+ $ajaxResponse->setResult($resultObj);
+ $ajaxResponse->setSuccess(true);
+ break;
+
+ case "getLicenceInformation" :
+ $termsofuseId = $ajaxResponse->getParameter("id");
+ $sql = <<<SQL
+
+SELECT name, symbollink, description, descriptionlink, isopen FROM termsofuse WHERE termsofuse_id = $1
+
+SQL;
+ $v = array($termsofuseId);
+ $t = array('i');
+ $res = db_prep_query($sql,$v,$t);
+ $row = array();
+ if ($res) {
+ $row = db_fetch_assoc($res);
+ $resultObj["termsofuse_id"] = $termsofuseId;
+ $resultObj["name"] = $row["name"];
+ $resultObj["symbollink"] = $row["symbollink"];
+ $resultObj["description"] = $row["description"];
+ $resultObj["descriptionlink"] = $row["descriptionlink"];
+ $resultObj["isopen"] = $row["isopen"];
+ $ajaxResponse->setResult($resultObj);
+ $ajaxResponse->setSuccess(true);
+ } else {
+ $ajaxResponse->setSuccess(false);
+ }
+ break;
+
default:
$ajaxResponse->setSuccess(false);
$ajaxResponse->setMessage(_mb("An unknown error occured."));
Modified: trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7.3_to_2.7.4_pgsql_UTF-8.sql
===================================================================
--- trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7.3_to_2.7.4_pgsql_UTF-8.sql 2013-02-07 14:07:37 UTC (rev 8559)
+++ trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7.3_to_2.7.4_pgsql_UTF-8.sql 2013-02-14 10:19:14 UTC (rev 8560)
@@ -24,8 +24,22 @@
--update css file of dataTables in body element
UPDATE gui_element_vars set var_value = '../extensions/dataTables-1.7.5/media/css/demo_table_jui.css' WHERE fkey_e_id = 'body' AND var_name = 'jq_datatables_css';
+--extent table termsofuse to allow classification if some licence is open or not!
+ALTER TABLE termsofuse ADD COLUMN isopen INTEGER DEFAULT 0;
+CREATE SEQUENCE termsofuse_id_seq;
+SELECT setval('termsofuse_id_seq', (SELECT max(termsofuse_id) FROM termsofuse));
+ALTER TABLE termsofuse ALTER COLUMN termsofuse_id SET DEFAULT
+nextval('termsofuse_id_seq'::regclass);
+--create some example entries for licences
+-- CC-BY
+--INSERT INTO termsofuse (name,symbollink,description,descriptionlink,isopen) VALUES ('cc-by', 'http://i.creativecommons.org/l/by/3.0/de/88x31.png','Creative Commons: Namensnennung 3.0 Deutschland','http://creativecommons.org/licenses/by/3.0/de/',1) ;
+-- CC BY-NC
+---INSERT INTO termsofuse (name,symbollink,description,descriptionlink,isopen) VALUES ('cc-by-nc', 'http://i.creativecommons.org/l/by-nc/3.0/de/88x31.png','Creative Commons: Namensnennung - Keine kommerzielle Nutzung 3.0 Deutschland','http://creativecommons.org/licenses/by-nc/3.0/de/',0);
+-- Datenlizenz Deutschland – Namensnennung – Version 1.0
+--INSERT INTO termsofuse (name,symbollink,description,descriptionlink,isopen) VALUES ('dl-de-by-1.0', 'http://i.creativecommons.org/l/by/3.0/de/88x31.png','Datenlizenz Deutschland – Namensnennung – Version 1.0','http://www.daten-deutschland.de/bibliothek/Datenlizenz_Deutschland/dl-de-by-1.0',1) ;
+-- Datenlizenz Deutschland – Namensnennung – nicht-kommerziell – Version 1.0
+--INSERT INTO termsofuse (name,symbollink,description,descriptionlink,isopen) VALUES ('dl-de-by-nc-1.0', 'http://i.creativecommons.org/l/by-nc/3.0/de/88x31.png','Datenlizenz Deutschland – Namensnennung – nicht-kommerziell – Version 1.0','http://www.daten-deutschland.de/bibliothek/Datenlizenz_Deutschland/dl-de-by-nc-1.0',0);
+UPDATE termsofuse SET name = 'cc-by-nc-nd' WHERE name = 'CC by-nc-nd';
-
-
More information about the Mapbender_commits
mailing list