[Ils-source] r1335 - trunk/webapp/api/group/put

scribe at crosswire.org scribe at crosswire.org
Thu Jun 25 16:44:30 MST 2015


Author: scribe
Date: 2015-06-25 16:44:30 -0700 (Thu, 25 Jun 2015)
New Revision: 1335

Modified:
   trunk/webapp/api/group/put/index.jsp
Log:
fixed logic for determining action if not passed


Modified: trunk/webapp/api/group/put/index.jsp
===================================================================
--- trunk/webapp/api/group/put/index.jsp	2015-06-25 23:11:54 UTC (rev 1334)
+++ trunk/webapp/api/group/put/index.jsp	2015-06-25 23:44:30 UTC (rev 1335)
@@ -52,30 +52,36 @@
 
 	++errCode;
 	if ((adminUser.getUserProfileAccessLevel() > UserProfile.ACCESS_MANAGER) || (adminUser.hasAccess(UserProfile.ACCESS_MODE_USERPR_ADD_USER)) || (adminUser.hasAccess(UserProfile.ACCESS_MODE_USERPR_MODIFY_USER))) {
-		if (!createMode) {
-			if (groupID != -1) {
-				current = Group.getGroup(ilsSession, groupID);
+		Group lookup = null;
+		if (groupID != -1) {
+			lookup = Group.getGroup(ilsSession, groupID);
+			if (lookup == null) {
+				out.print("<error code=\""+errCode+"\" message=\"Group not found.\"/>");
+				return;
 			}
-			else if (userData != null) {
-				current = Group.getGroupByUserData(ilsSession, groupTypeID, userData);
+		}
+		else if (userData != null) {
+			lookup = Group.getGroupByUserData(ilsSession, groupTypeID, userData);
+		}
+		if (createMode) {
+			if (lookup != null) {
+				++errCode;
+				out.print("<error code=\""+errCode+"\" message=\"Group exists.\"/>");
+				return;
 			}
 		}
+		else {
+			createMode = lookup == null;
+		}
+		if (lookup != null) current = lookup;
 	}
 	else {
+		errCode += 2;
 		out.print("<error code=\""+errCode+"\" message=\"Permission denied.\"/>");
 		return;
 	}
 
-	++errCode;
-	if (current == null) {
-		out.print("<error code=\""+errCode+"\" message=\"Group not found.\"/>");
-		return;
-	}
-	++errCode;
-	if (createMode && current.getGroupID() > 0) {
-		out.print("<error code=\""+errCode+"\" message=\"Group exists.\"/>");
-		return;
-	}
+	errCode += 3;
 	if (current.getGroupID() > 0 && adminUser.getUserProfileAccessLevel() <= UserProfile.ACCESS_MANAGER && !adminUser.hasAccess(UserProfile.ACCESS_MODE_USERPR_MODIFY_USER)) {
 		out.print("<error code=\""+errCode+"\" message=\"Permission denied to edit group.\"/>");
 		return;




More information about the Ils-source mailing list