[mapguide-commits] r5480 - trunk/MgDev/Server/src/Services/Resource
svn_mapguide at osgeo.org
svn_mapguide at osgeo.org
Tue Dec 21 17:43:01 EST 2010
Author: brucedechant
Date: 2010-12-21 14:43:00 -0800 (Tue, 21 Dec 2010)
New Revision: 5480
Modified:
trunk/MgDev/Server/src/Services/Resource/SiteResourceContentManager.cpp
Log:
Fix for trac ticket 1575 - Can't remove user from role or group
http://trac.osgeo.org/mapguide/ticket/1575
Submitted on behalf of Christine Bao
Notes:
- Updated XQueries
Modified: trunk/MgDev/Server/src/Services/Resource/SiteResourceContentManager.cpp
===================================================================
--- trunk/MgDev/Server/src/Services/Resource/SiteResourceContentManager.cpp 2010-12-20 03:10:10 UTC (rev 5479)
+++ trunk/MgDev/Server/src/Services/Resource/SiteResourceContentManager.cpp 2010-12-21 22:43:00 UTC (rev 5480)
@@ -2024,15 +2024,15 @@
// Set up an XQuery.
- string query = "delete nodes (collection('";
+ string query = "delete nodes collection('";
query += m_container.getName();
query += "')";
- query += "//";
- query += MgUtil::WideCharToMultiByte(groupRes->GetName());
- query += ")";
query += "/Group/Users/User[Name=\"";
query += MgUtil::WideCharToMultiByte(userId);
query += "\"]";
+ query += "/*[starts-with(dbxml:metadata('dbxml:name'),'Site://Groups/";
+ query += MgUtil::WideCharToMultiByte(groupRes->GetName());
+ query += ".Group')]/..";
// Execute the XQuery.
@@ -2138,15 +2138,15 @@
// Set up an XQuery.
- string query = "delete nodes (collection('";
+ string query = "delete nodes collection('";
query += m_container.getName();
query += "')";
- query += "//";
- query += MgUtil::WideCharToMultiByte(roleRes->GetName());
- query += ")";
query += "/Role/Users/User[Name=\"";
query += MgUtil::WideCharToMultiByte(userId);
query += "\"]";
+ query += "/*[starts-with(dbxml:metadata('dbxml:name'),'Site://Roles/";
+ query += MgUtil::WideCharToMultiByte(roleRes->GetName());
+ query += ".Role')]/..";
// Execute the XQuery.
@@ -2251,16 +2251,16 @@
XmlValue docValue(xmlDoc);
// Set up an XQuery.
-
- string query = "delete nodes (collection('";
+
+ string query = "delete nodes collection('";
query += m_container.getName();
query += "')";
- query += "//";
- query += MgUtil::WideCharToMultiByte(roleRes->GetName());
- query += ")";
- query += "/Roles/Groups/Group[Name=\"";
+ query += "/Role/Groups/Group[Name=\"";
query += MgUtil::WideCharToMultiByte(groupId);
query += "\"]";
+ query += "/*[starts-with(dbxml:metadata('dbxml:name'),'Site://Roles/";
+ query += MgUtil::WideCharToMultiByte(roleRes->GetName());
+ query += ".Role')]/..";
// Execute the XQuery.
More information about the mapguide-commits
mailing list