[Mapbender-commits] r4946 - in trunk/mapbender/http: classes javascripts

svn_mapbender at osgeo.org svn_mapbender at osgeo.org
Thu Nov 5 09:41:30 EST 2009


Author: kmq
Date: 2009-11-05 09:41:29 -0500 (Thu, 05 Nov 2009)
New Revision: 4946

Modified:
   trunk/mapbender/http/classes/class_wmc.php
   trunk/mapbender/http/javascripts/mod_loadwmc.js
Log:
small fixes and users can see all publich WMCs

Modified: trunk/mapbender/http/classes/class_wmc.php
===================================================================
--- trunk/mapbender/http/classes/class_wmc.php	2009-11-05 14:14:25 UTC (rev 4945)
+++ trunk/mapbender/http/classes/class_wmc.php	2009-11-05 14:41:29 UTC (rev 4946)
@@ -226,10 +226,10 @@
 	// ---------------------------------------------------------------------------
 	// DATABASE FUNCTIONS
 	// ---------------------------------------------------------------------------
-	public function getOtherUsersPublicWmcIds () {
+	public function getOtherUsersPublicWmcIds ($userId) {
 		$sql = "SELECT wmc_id FROM mb_user_wmc ";
 		$sql .= "WHERE fkey_user_id <> $1 AND wmc_public = 1 GROUP BY wmc_id";
-		$v = array($this->id);
+		$v = array($userId);
 		$t = array("i");
 		$res_wmc = db_prep_query($sql, $v, $t);
 
@@ -246,9 +246,10 @@
 		// get WMC ids 
 		$wmcIdArray = $user->getWmcByOwner();
 		
-		$publicWmcIdArray = $this->getOtherUsersPublicWmcIds();
+		$publicWmcIdArray = $this->getOtherUsersPublicWmcIds($user->id);
 		
 		$wmcIdArray = array_merge($wmcIdArray, $publicWmcIdArray);
+
 		// get WMC data
 		$v = array();
 		$t = array();
@@ -275,7 +276,7 @@
 				$currentResult["title"] = administration::convertIncomingString($row["wmc_title"]);
 				$currentResult["timestamp"] = date("M d Y H:i:s", $row["wmc_timestamp"]); 
 				$currentResult["timestamp_create"] = date("M d Y H:i:s", $row["wmc_timestamp_create"]); 
-				$currentResult["public"] = $row["wmc_public"] == 1? true: false;
+				$currentResult["isPublic"] = $row["wmc_public"] == 1? true: false;
 				$currentResult["disabled"] = (in_array($currentResult["id"], $publicWmcIdArray)) ?
 					true : false;
 				array_push($wmcArray, $currentResult);
@@ -491,18 +492,18 @@
 	}
 
     /*
-    * sets the WMC's publich flag
+    * sets the WMC's public flag
     * @param $public boolean wether access should be public
     */
     public function setPublic($public)
     {
-		$currentUser = new User(Mapbender::session()->get("mb_user_id"));
+	  $currentUser = new User(Mapbender::session()->get("mb_user_id"));
 	  if ($currentUser->isPublic()) {
 			return false;
 	  }
       $wmcId = $this->wmc_Id;
       $public = $public ? 1 :0;
-      $sql = "UPDATE mb_user_wmc SET wmc_public = $1 WHERE wmc_id = $2 AND fkey_user_id = $2;";
+      $sql = "UPDATE mb_user_wmc SET wmc_public = $1 WHERE wmc_id = $2 AND fkey_user_id = $3;";
       $v = array($public,$wmcId, $currentUser->id);
       $t = array("i","s","i");
       $res = db_prep_query($sql,$v,$t);

Modified: trunk/mapbender/http/javascripts/mod_loadwmc.js
===================================================================
--- trunk/mapbender/http/javascripts/mod_loadwmc.js	2009-11-05 14:14:25 UTC (rev 4945)
+++ trunk/mapbender/http/javascripts/mod_loadwmc.js	2009-11-05 14:41:29 UTC (rev 4946)
@@ -153,6 +153,7 @@
             //WMC is Public
 			var $publicTd = appendBoolTableCell({
                 isPublic:  wmcObj.wmc[i].isPublic,
+                disabled:  wmcObj.wmc[i].disabled,
 				method: "setWMCPublic",
 				parameters:{
 					id:currentId
@@ -310,8 +311,9 @@
 }
 
 function appendBoolTableCell (args){
-  var checked = args.isPublic == true ? 'checked="checked"':'' ;
-  var checkbox = $('<input type="checkbox" '+  checked  +' />');
+  var checked = args.isPublic == true ? 'checked="checked" ':'' ;
+  var disabled = args.disabled == true ? 'disabled="disabled" ':'' ;
+  var checkbox = $('<input type="checkbox" '+  checked  + disabled + ' />');
   checkbox.change(function(){
     args.parameters.isPublic = $(this).attr('checked') ? 1 : 0;
     args.callback(args);



More information about the Mapbender_commits mailing list