[Mapbender-commits] r2990 - in branches/tree_dev: http/php lib
svn_mapbender at osgeo.org
svn_mapbender at osgeo.org
Fri Sep 19 05:05:11 EDT 2008
Author: christoph
Date: 2008-09-19 05:05:11 -0400 (Fri, 19 Sep 2008)
New Revision: 2990
Modified:
branches/tree_dev/http/php/mod_customTree.php
branches/tree_dev/http/php/mod_customTree_server.php
branches/tree_dev/lib/customTreeController.js
branches/tree_dev/lib/customTreeModel.js
Log:
* Es kann nun kein Ordner mit leerem Namen erzeugt werden
* Das L?\195?\182schen der Einstellungen in der Datenbank funktioniert nun
* Beim Wegnavigieren vom Iframe kommt die Frage, ob ?\195?\132nderungen gespeichert werden sollen (bisher nur beim Applikations-Select)
* Das L?\195?\182schen von Ordnern, die WMSe enthalten, ist nicht mehr m?\195?\182glich
Modified: branches/tree_dev/http/php/mod_customTree.php
===================================================================
--- branches/tree_dev/http/php/mod_customTree.php 2008-09-19 08:10:22 UTC (rev 2989)
+++ branches/tree_dev/http/php/mod_customTree.php 2008-09-19 09:05:11 UTC (rev 2990)
@@ -74,6 +74,18 @@
return wmsIdArray;
};
+ var saveTreeOnUnloadOrChange = function (myTree) {
+ if (myTree.hasChanged) {
+ var saveChanges = confirm("You have changed the tree. All changes will be lost. Save changes?");
+
+ if (saveChanges) {
+ Save.updateDatabase(function () {
+ });
+ }
+
+ }
+ };
+
var addMissingWmsToCustomTree = function (aTree, anApplicationId) {
// get available WMS ...
var queryObj = {
@@ -170,14 +182,7 @@
$select = $("#applicationSelect");
$select.change(function () {
- if (myTree.hasChanged) {
- var saveChanges = confirm("You have changed the tree. All changes will be lost. Save changes?");
-
- if (saveChanges) {
- Save.updateDatabase();
- }
-
- }
+ saveTreeOnUnloadOrChange(myTree);
selectApplication(this.options[this.selectedIndex].value);
});
@@ -239,7 +244,10 @@
if (confirmDelete) {
var queryObj = {
- command: "delete"
+ "command": "delete",
+ "parameters": {
+ "applicationId": applicationId
+ }
};
$.post("../php/mod_customTree_server.php", {
@@ -278,6 +286,10 @@
Restart.removeAllFolders();
});
+ // dialogue: save changes on unload
+ $(window).unload(function () {
+ saveTreeOnUnloadOrChange(myTree);
+ })
});
</script>
Modified: branches/tree_dev/http/php/mod_customTree_server.php
===================================================================
--- branches/tree_dev/http/php/mod_customTree_server.php 2008-09-19 08:10:22 UTC (rev 2989)
+++ branches/tree_dev/http/php/mod_customTree_server.php 2008-09-19 09:05:11 UTC (rev 2990)
@@ -36,11 +36,11 @@
$sql = "DELETE FROM gui_treegde WHERE fkey_gui_id = $1";
$v = array($applicationId);
$t = array("s");
- $res = db_prep_query($res, $v, $t);
- $resultObj["success"] = "Deletion successful.";
+ $res = db_prep_query($sql, $v, $t);
+ $resultObj["success"] = "Deletion successful. " . $sql . " (" . $applicationId . ")";
}
else {
- $resultObj["error"] = "Acces denied to application " . $applicationId . ".";
+ $resultObj["error"] = "Access denied to application " . $applicationId . ".";
}
break;
Modified: branches/tree_dev/lib/customTreeController.js
===================================================================
--- branches/tree_dev/lib/customTreeController.js 2008-09-19 08:10:22 UTC (rev 2989)
+++ branches/tree_dev/lib/customTreeController.js 2008-09-19 09:05:11 UTC (rev 2990)
@@ -62,11 +62,16 @@
var deleteNode = function (treeNode) {
- treeNode.remove();
+ if (treeNode.containsNonFolder()) {
+ alert("This folder contains a WMS. It may not be deleted. Move the WMS before deleting the folder.");
+ }
+ else {
+ treeNode.remove();
+ }
};
var editNode = function ($domNode, treeNode) {
- var newName = prompt('Name:');
+ var newName = prompt('Name:', treeNode.name);
if (newName) {
treeNode.setName(newName);
}
@@ -74,8 +79,10 @@
var addNode = function ($domNode, treeNode) {
var newName = prompt('Name:');
- var newChild = treeNode.addChild();
- newChild.setName(newName);
+ if (newName) {
+ var newChild = treeNode.addChild();
+ newChild.setName(newName);
+ }
};
//
Modified: branches/tree_dev/lib/customTreeModel.js
===================================================================
--- branches/tree_dev/lib/customTreeModel.js 2008-09-19 08:10:22 UTC (rev 2989)
+++ branches/tree_dev/lib/customTreeModel.js 2008-09-19 09:05:11 UTC (rev 2990)
@@ -390,4 +390,18 @@
}
return false;
};
+
+ this.containsNonFolder = function () {
+ var foundNonFolder = false;
+ for (var i = 0; i < this.childNodeList.count(); i++) {
+ var child = this.childNodeList.get(i);
+ if (!child.isFolder) {
+ return true;
+ }
+ else {
+ foundNonFolder = foundNonFolder || child.containsNonFolder();
+ }
+ }
+ return foundNonFolder;
+ };
};
\ No newline at end of file
More information about the Mapbender_commits
mailing list