[Mapbender-commits] r2983 - in branches/tree_dev: http/php lib
svn_mapbender at osgeo.org
svn_mapbender at osgeo.org
Thu Sep 18 10:38:30 EDT 2008
Author: christoph
Date: 2008-09-18 10:38:29 -0400 (Thu, 18 Sep 2008)
New Revision: 2983
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:
latest
Modified: branches/tree_dev/http/php/mod_customTree.php
===================================================================
--- branches/tree_dev/http/php/mod_customTree.php 2008-09-18 14:34:36 UTC (rev 2982)
+++ branches/tree_dev/http/php/mod_customTree.php 2008-09-18 14:38:29 UTC (rev 2983)
@@ -108,11 +108,14 @@
}
}
+ myTree.hasChanged = false;
+
displayMyTree = new customTreeController(myTree, {
contextMenu: true,
droppable: true,
id: "myTree"
});
+
});
};
@@ -167,6 +170,14 @@
$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();
+ }
+
+ }
selectApplication(this.options[this.selectedIndex].value);
});
@@ -186,6 +197,11 @@
type:"toggle"
},
updateDatabase : function (callback) {
+ if (!applicationId || applicationId == "...") {
+ callback();
+ return;
+ }
+
var data = {
"applicationId": applicationId,
"folderArray": myTree.exportNestedSets()
@@ -201,11 +217,45 @@
}, function (json, status) {
var replyObj = eval('(' + json + ')');
alert(replyObj.success);
+ myTree.hasChanged = false;
callback();
});
}
};
+
+ var Restart = {
+ buttonParameters : {
+ on:"../img/button_blink_red/exit_on.png",
+ over:"../img/button_blink_red/exit_over.png",
+ off:"../img/button_blink_red/exit_off.png",
+ type:"singular"
+ },
+ removeAllFolders: function(){
+ if (!applicationId || applicationId == "...") {
+ return;
+ }
+
+ var confirmDelete = confirm("You are about to delete your customized folder structure. Proceed?");
+
+ if (confirmDelete) {
+ var queryObj = {
+ command: "delete"
+ };
+ $.post("../php/mod_customTree_server.php", {
+ queryObj: $.toJSON(queryObj)
+ }, function(json, status){
+ myTree = new CustomTree();
+ var root = myTree.root;
+ root.name = "(" + applicationId + ")";
+
+ addMissingWmsToCustomTree(myTree, applicationId);
+ });
+
+ }
+ }
+ }
+
$(function () {
getApplications();
@@ -219,6 +269,15 @@
saveButton.registerPush(function () {
Save.updateDatabase(saveButton.triggerStop);
});
+
+ // restart tool
+ var restartButton = new Button(Restart.buttonParameters);
+ toolbox.add(restartButton);
+
+ restartButton.registerPush(function () {
+ Restart.removeAllFolders();
+ });
+
});
</script>
Modified: branches/tree_dev/http/php/mod_customTree_server.php
===================================================================
--- branches/tree_dev/http/php/mod_customTree_server.php 2008-09-18 14:34:36 UTC (rev 2982)
+++ branches/tree_dev/http/php/mod_customTree_server.php 2008-09-18 14:38:29 UTC (rev 2983)
@@ -26,6 +26,24 @@
switch($queryObj->command){
+ case 'delete':
+ $applicationId = $queryObj->parameters->applicationId;
+
+ // get all of the users applications
+ $allowedApplicationArray = $user->getApplicationsByPermission(0);
+
+ if (in_array($applicationId, $allowedApplicationArray)) {
+ $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.";
+ }
+ else {
+ $resultObj["error"] = "Acces denied to application " . $applicationId . ".";
+ }
+
+ break;
case 'getApplications':
// get all of the users applications
$allowedApplicationArray = $user->getApplicationsByPermission(0);
Modified: branches/tree_dev/lib/customTreeController.js
===================================================================
--- branches/tree_dev/lib/customTreeController.js 2008-09-18 14:34:36 UTC (rev 2982)
+++ branches/tree_dev/lib/customTreeController.js 2008-09-18 14:38:29 UTC (rev 2983)
@@ -1,9 +1,8 @@
-var currentlyDraggedNode;
-
var customTreeController = function (myTree, options) {
// this.myTree = new CustomTree();
// this.myTree.root.name = "My tree";
+ var currentlyDraggedNode;
this.options = options;
this.myTree = myTree;
@@ -26,7 +25,7 @@
makeNodeDraggable($domNode, treeNode);
treeNode.hasChanged = function () {
- console.log(that.myTree);
+ that.myTree.hasChanged = true;
};
};
@@ -57,7 +56,7 @@
}
treeNode.hasChanged = function () {
- console.log(that.myTree);
+ that.myTree.hasChanged = true;
};
};
@@ -67,14 +66,16 @@
};
var editNode = function ($domNode, treeNode) {
- var newName = prompt('Name');
+ var newName = prompt('Name:');
if (newName) {
treeNode.setName(newName);
}
};
var addNode = function ($domNode, treeNode) {
+ var newName = prompt('Name:');
var newChild = treeNode.addChild();
+ newChild.setName(newName);
};
//
Modified: branches/tree_dev/lib/customTreeModel.js
===================================================================
--- branches/tree_dev/lib/customTreeModel.js 2008-09-18 14:34:36 UTC (rev 2982)
+++ branches/tree_dev/lib/customTreeModel.js 2008-09-18 14:38:29 UTC (rev 2983)
@@ -121,6 +121,8 @@
var that = this;
+ this.hasChanged = false;
+
this.toNestedSets = function () {
var nodeArray = toNestedSetsNode.apply(this, [[], this.root, 1]);
return nodeArray;
@@ -217,6 +219,7 @@
//insert new node
var newNode = new CustomTreeNode(currentNode);
+ newNode.isFolder = true;
rights.push(nodeArray[i].right);
newNode.applyKeys(nodeArray[i]);
currentNode.append(newNode);
More information about the Mapbender_commits
mailing list