You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@vcl.apache.org by jf...@apache.org on 2011/10/24 20:52:52 UTC

svn commit: r1188289 - in /incubator/vcl/trunk/web: .ht-inc/blockallocations.php js/blockallocations.js

Author: jfthomps
Date: Mon Oct 24 18:52:52 2011
New Revision: 1188289

URL: http://svn.apache.org/viewvc?rev=1188289&view=rev
Log:
VCL-513
allow block allocation control per affiliation
VCL-427
for block allocations, setting the managing user group to none means no one can edit it if a normal user created it

blockallocations.php:
removed any references to the managing user group from these functions:
-blockAllocationForm
-AJblockAllocationSubmit
-getCurrentBlockHTML
-getPendingBlockHTML
-AJdeleteBlockAllocationConfirm
-AJacceptBlockAllocationSubmit
-processBlockAllocationInput
-getBlockAllocationData

blockallocations.js:
removed any references to the managing user group from these functions:
-blockFormVerifyWeekly
-blockFormSubmitWeekly
-blockFormVerifyMonthly
-blockFormSubmitMonthly
-blockFormVerifyList
-blockFormSubmitList
-clearHideConfirmForm
-clearHideConfirmDelete
-clearHideConfirmAccept
-deleteBlockConfirmCB
-acceptBlockSubmit
-rejectBlockSubmit

Modified:
    incubator/vcl/trunk/web/.ht-inc/blockallocations.php
    incubator/vcl/trunk/web/js/blockallocations.js

Modified: incubator/vcl/trunk/web/.ht-inc/blockallocations.php
URL: http://svn.apache.org/viewvc/incubator/vcl/trunk/web/.ht-inc/blockallocations.php?rev=1188289&r1=1188288&r2=1188289&view=diff
==============================================================================
--- incubator/vcl/trunk/web/.ht-inc/blockallocations.php (original)
+++ incubator/vcl/trunk/web/.ht-inc/blockallocations.php Mon Oct 24 18:52:52 2011
@@ -184,35 +184,6 @@ function blockAllocationForm() {
 	print "      <img src=\"images/helpicon.png\" id=\"grouphelp\" />\n";
 	print "    </td>\n";
 	print "  </tr>\n";
-	if($mode != 'requestBlockAllocation') {
-		if(! empty($data['admingroupid']) && ! array_key_exists($data['admingroupid'], $groups)) {
-			$groups[$data['admingroupid']] = array('name' => getUserGroupName($data['admingroupid'], 1));
-			$extragroups[$data['admingroupid']] = array('name' => getUserGroupName($data['admingroupid'], 1));
-			uasort($groups, "sortKeepIndex");
-		}
-		print "  <tr>\n";
-		print "    <th align=right>Managing User Group</th>\n";
-		print "    <td>\n";
-		if(USEFILTERINGSELECT && count($groups) < FILTERINGSELECTTHRESHOLD) {
-			print "      <select dojoType=\"dijit.form.FilteringSelect\" id=admingroupsel style=\"width: 300px\" ";
-			print "queryExpr=\"*\${0}*\" highlightMatch=\"all\" autoComplete=\"false\">\n";
-		}
-		else
-			print "      <select id=admingroupsel>\n";
-		print "        <option value=\"0\">None (owner only)</option>\n";
-		foreach($groups as $id => $group) {
-			if($group['name'] == ' None@')
-				continue;
-			if($id == $data['admingroupid'])
-				print "        <option value=\"$id\" selected>{$group['name']}</option>\n";
-			else
-				print "        <option value=\"$id\">{$group['name']}</option>\n";
-		}
-		print "      </select>\n";
-		print "      <img src=\"images/helpicon.png\" id=\"admingrouphelp\" />\n";
-		print "    </td>\n";
-		print "  </tr>\n";
-	}
 	print "  <tr>\n";
 	print "    <th align=right>Number of seats:</th>\n";
 	print "    <td>\n";
@@ -450,10 +421,6 @@ function blockAllocationForm() {
 	print "    <td><span id=\"confgroup\"></span></td>\n";
 	print "  </tr>\n";
 	print "  <tr>\n";
-	print "    <th align=\"right\"><span id=\"confadmintitle\"></span></th>\n";
-	print "    <td><span id=\"confadmingroup\"></span></td>\n";
-	print "  </tr>\n";
-	print "  <tr>\n";
 	print "    <th align=\"right\">Seats:</th>\n";
 	print "    <td><span id=\"confseats\"></span></td>\n";
 	print "  </tr>\n";
@@ -619,7 +586,6 @@ function AJblockAllocationSubmit() {
 		       .        "groupid, "
 		       .        "repeating, "
 		       .        "ownerid, "
-		       .        "admingroupid, "
 		       .        "managementnodeid, "
 		       .        "expireTime, "
 		       .        "status) "
@@ -630,7 +596,6 @@ function AJblockAllocationSubmit() {
 		       .        "{$data['groupid']}, "
 		       .        "'{$data['type']}', "
 		       .        "{$data['ownerid']}, "
-		       .        "{$data['admingroupid']}, "
 		       .        "$mnid, "
 		       .        "'{$data['expiretime']}', "
 		       .        "'accepted')";
@@ -674,7 +639,6 @@ function AJblockAllocationSubmit() {
 		       .     "numMachines = {$data['seats']}, "
 		       .     "groupid = {$data['groupid']}, "
 		       .     "ownerid = {$data['ownerid']}, "
-		       .     "admingroupid = {$data['admingroupid']}, "
 		       .     "repeating = '{$data['type']}', "
 		       .     "expireTime = '{$data['expiretime']}' "
 		       . "WHERE  id = $blockreqid";
@@ -703,7 +667,6 @@ function AJblockAllocationSubmit() {
 		       .        "groupid, "
 		       .        "repeating, "
 		       .        "ownerid, "
-		       .        "admingroupid, "
 		       .        "expireTime, "
 		       .        "status, "
 		       .        "comments) "
@@ -714,7 +677,6 @@ function AJblockAllocationSubmit() {
 		       .        "{$data['groupid']}, "
 		       .        "'{$data['type']}', "
 		       .        "{$user['id']}, "
-		       .        "0, "
 		       .        "'{$data['expiretime']}', "
 		       .        "'requested', "
 		       .        "'$esccomments')";
@@ -1101,21 +1063,15 @@ function getCurrentBlockHTML($listonly=0
 	       .        "b.numMachines AS machinecnt, "
 	       .        "b.groupid as usergroupid, "
 	       .        "CONCAT(g.name, '@', a.name) AS `group`, "
-	       .        "b.admingroupid as admingroupid, "
-	       .        "CONCAT(ga.name, '@', aa.name) AS `admingroup`, "
 	       .        "b.repeating AS available "
 	       . "FROM image i, "
 	       .      "blockRequest b "
 	       . "LEFT JOIN usergroup g ON (b.groupid = g.id) "
 	       . "LEFT JOIN affiliation a ON (g.affiliationid = a.id) "
-	       . "LEFT JOIN usergroup ga ON (b.admingroupid = ga.id) "
-	       . "LEFT JOIN affiliation aa ON (ga.affiliationid = aa.id) "
 	       . "LEFT JOIN user u ON (b.ownerid = u.id) "
 	       . "LEFT JOIN affiliation ua ON (u.affiliationid = ua.id) "
-	       . "WHERE (b.ownerid = {$user['id']} ";
-	if(! empty($groupids))
-		$query .=   "OR b.admingroupid IN ($groupids) ";
-	$query .=      ") AND b.imageid = i.id AND "
+	       . "WHERE b.ownerid = {$user['id']} AND "
+	       .       "b.imageid = i.id AND "
 	       .       "b.status = 'accepted' "
 	       . "ORDER BY b.name";
 	$allblockids = array();
@@ -1265,7 +1221,6 @@ function getCurrentBlockHTML($listonly=0
 	$rt .= "    <TH>Environment</TH>\n";
 	$rt .= "    <TH>Reserved<br>Machines</TH>\n";
 	$rt .= "    <TH>Reserved<br>For</TH>\n";
-	$rt .= "    <TH>Manageable<br>By</TH>\n";
 	$rt .= "    <TH>Repeating</TH>\n";
 	$rt .= "    <TH>Next Start Time</TH>\n";
 	$rt .= "  </TR>\n";
@@ -1302,10 +1257,6 @@ function getCurrentBlockHTML($listonly=0
 		$rt .= "    <TD>{$block['image']}</TD>\n";
 		$rt .= "    <TD>{$block['machinecnt']}</TD>\n";
 		$rt .= "    <TD>{$block['group']}</TD>\n";
-		if(empty($block['admingroup']))
-			$rt .= "    <TD>None (owner only)</TD>\n";
-		else
-			$rt .= "    <TD>{$block['admingroup']}</TD>\n";
 		$rt .= "    <TD>{$block['available']}</TD>\n";
 		if($block['nextstartactive']) {
 			$cont = addContinuationsEntry('viewBlockStatus', array('id' => $block['id']));
@@ -1341,10 +1292,6 @@ function getCurrentBlockHTML($listonly=0
 	$rt .= "    <td><span id=\"confgroup\"></span></td>\n";
 	$rt .= "  </tr>\n";
 	$rt .= "  <tr>\n";
-	$rt .= "    <th align=\"right\">Managing User Group:</th>\n";
-	$rt .= "    <td><span id=\"confadmingroup\"></span></td>\n";
-	$rt .= "  </tr>\n";
-	$rt .= "  <tr>\n";
 	$rt .= "    <th align=\"right\">Seats:</th>\n";
 	$rt .= "    <td><span id=\"confseats\"></span></td>\n";
 	$rt .= "  </tr>\n";
@@ -1972,24 +1919,6 @@ function getPendingBlockHTML($listonly=0
 	$rt .= "regExp=\"^([-a-zA-Z0-9\. ]){3,80}$\">\n";
 	$rt .= "    </td>\n";
 	$rt .= "  </tr>\n";
-	$rt .= "  <tr>\n";
-	$rt .= "    <th align=right>Managing User Group:</th>\n";
-	$rt .= "    <td>\n";
-	if(USEFILTERINGSELECT && count($groups) < FILTERINGSELECTTHRESHOLD) {
-		$rt .= "      <select dojoType=\"dijit.form.FilteringSelect\" id=admingroupsel ";
-		$rt .= "queryExpr=\"*\${0}*\" highlightMatch=\"none\" autoComplete=\"false\">\n";
-	}
-	else
-		$rt .= "      <select id=admingroupsel>\n";
-	$rt .= "        <option value=\"0\">None (owner only)</option>\n";
-	foreach($groups as $id => $group) {
-		if($group['name'] == ' None@')
-			continue;
-		$rt .= "        <option value=\"$id\">{$group['name']}</option>\n";
-	}
-	$rt .= "      </select>\n";
-	$rt .= "    </td>\n";
-	$rt .= "  </tr>\n";
 	$rt .= "</table><br>\n";
 	$rt .= "<div id=\"acceptemailblock\">\n";
 	$rt .= "The following text will be emailed to <span id=\"acceptemailuser\"></span>:<br>\n";
@@ -2104,7 +2033,6 @@ function AJdeleteBlockAllocationConfirm(
 		            'image' => $data['image'],
 		            'seats' => $data['machinecnt'],
 		            'usergroup' => $data['group'],
-		            'admingroup' => $data['admingroup'],
 		            'repeating' => $data['available'],
 		            'startdate' => $data['swdate'],
 		            'lastdate' => $data['ewdate'],
@@ -2124,7 +2052,6 @@ function AJdeleteBlockAllocationConfirm(
 		            'image' => $data['image'],
 		            'seats' => $data['machinecnt'],
 		            'usergroup' => $data['group'],
-		            'admingroup' => $data['admingroup'],
 		            'repeating' => $data['available'],
 		            'startdate' => $data['smdate'],
 		            'lastdate' => $data['emdate']);
@@ -2149,7 +2076,6 @@ function AJdeleteBlockAllocationConfirm(
 		            'image' => $data['image'],
 		            'seats' => $data['machinecnt'],
 		            'usergroup' => $data['group'],
-		            'admingroup' => $data['admingroup'],
 		            'repeating' => $data['available']);
 		$slots = array();
 		foreach($data['date'] as $key => $val) {
@@ -2160,8 +2086,6 @@ function AJdeleteBlockAllocationConfirm(
 		}
 		$rt['slots'] = $slots;
 	}
-	if($data['admingroupid'] == 0)
-		$rt['admingroup'] = 'None (owner only)';
 	$cont = addContinuationsEntry('AJdeleteBlockAllocationSubmit', array('blockid' => $data['id']), SECINDAY, 0, 0);
 	$rt['cont'] = $cont;
 	sendJSON($rt);
@@ -2387,7 +2311,6 @@ function AJacceptBlockAllocationSubmit()
 	if($setusergroup)
 		$usergroupid = processInputVar('groupid', ARG_NUMERIC);
 	$name = processInputVar('brname', ARG_STRING);
-	$admingroupid = processInputVar('admingroupid', ARG_NUMERIC);
 	$emailtext = processInputVar('emailtext', ARG_STRING);
 
 	$err = 0;
@@ -2408,10 +2331,6 @@ function AJacceptBlockAllocationSubmit()
 		}
 	}
 	$groups = getUserGroups(0, $user['affiliationid']);
-	if(! $err && $admingroupid != 0 && ! array_key_exists($admingroupid, $groups)) {
-		$errmsg = "Invalid managing user group submitted.";
-		$err = 1;
-	}
 	if(! $err && $setusergroup && ! array_key_exists($usergroupid, $groups)) {
 		$errmsg = "Invalid user group submitted.";
 		$err = 1;
@@ -2431,8 +2350,7 @@ function AJacceptBlockAllocationSubmit()
 		else
 			$esccomments = mysql_real_escape_string("COMMENTS: $comments|USER NOT EMAILED");
 		$query = "UPDATE blockRequest "
-				 . "SET name = '$name', "
-				 .     "admingroupid = $admingroupid, ";
+				 . "SET name = '$name', ";
 		if($setusergroup)
 			$query .= "groupid = $usergroupid, ";
 		$query .=    "status = 'accepted', "
@@ -2940,7 +2858,6 @@ function AJupdateBlockStatus() {
 /// \b imageid - selected image id\n
 /// \b seats - number of machines to allocate\n
 /// \b groupid - user group id for selected user group\n
-/// \b admingroupid - user group id for selected admin user group\n
 /// \b type - 'weekly', 'monthly', or 'list'\n
 /// \b slots - array of date/time slots in 'YYYY-MM-DD|HH:MM|HH:MM' format (date|start|end)\n
 /// \b times - array of times in HH:MM|HH:MM format (start|end)\n
@@ -2967,7 +2884,6 @@ function processBlockAllocationInput() {
 	$return['imageid'] = processInputVar('imageid', ARG_NUMERIC);
 	$return['seats'] = processInputVar('seats', ARG_NUMERIC);
 	$return['groupid'] = processInputVar('groupid', ARG_NUMERIC);
-	$return['admingroupid'] = processInputVar('admingroupid', ARG_NUMERIC);
 	$type = processInputVar('type', ARG_STRING);
 	$err = 0;
 	if($method != 'request' && ! preg_match('/^([-a-zA-Z0-9\. \(\)]){3,80}$/', $return['name'])) {
@@ -2994,10 +2910,6 @@ function processBlockAllocationInput() {
 		$errmsg = 'The submitted user group is invalid.';
 		$err = 1;
 	}
-	if(! $err && $method != 'request' && ! array_key_exists($return['admingroupid'], $groups) && $return['admingroupid'] != 0) {
-		$errmsg = 'The submitted admin user group is invalid.';
-		$err = 1;
-	}
 	if(! $err && ($return['seats'] < MIN_BLOCK_MACHINES || $return['seats'] > MAX_BLOCK_MACHINES)) {
 		$errmsg = 'The submitted number of seats must be between ' . MIN_BLOCK_MACHINES
 		        . ' and ' . MAX_BLOCK_MACHINES . '.';
@@ -3245,7 +3157,6 @@ function getBlockAllocationStatus($id) {
 /// \b ownerid - id from user table of block allocation owner\n
 /// \b owner - block allocation owner\n
 /// \b usergroupid - id of group associated with block allocation\n
-/// \b admingroupid - id of admin group associated with block allocation\n
 /// \b repeating - weekly, monthly, or list\n
 /// \b type - array with weekly, monthly, or list set to 'checked' and the
 ///    others set to an empty string\n
@@ -3271,7 +3182,6 @@ function getBlockAllocationData($blockid
 	            'ownerid' => '',
 	            'owner' => '',
 	            'usergroupid' => '',
-	            'admingroupid' => '',
 	            'repeating' => '',
 	            'swdate' => '',
 	            'ewdate' => '',
@@ -3296,7 +3206,6 @@ function getBlockAllocationData($blockid
 	       .        "b.ownerid, "
 	       .        "CONCAT(u.unityid, '@', a.name) AS owner, "
 	       .        "b.groupid AS usergroupid, "
-	       .        "b.admingroupid, "
 	       .        "b.repeating, "
 	       .        "d.start AS swdate, "
 	       .        "d.end AS ewdate, "

Modified: incubator/vcl/trunk/web/js/blockallocations.js
URL: http://svn.apache.org/viewvc/incubator/vcl/trunk/web/js/blockallocations.js?rev=1188289&r1=1188288&r2=1188289&view=diff
==============================================================================
--- incubator/vcl/trunk/web/js/blockallocations.js (original)
+++ incubator/vcl/trunk/web/js/blockallocations.js Mon Oct 24 18:52:52 2011
@@ -480,10 +480,6 @@ function blockFormVerifyWeekly(mode) {
 		dojo.byId('confgroup').innerHTML = 'specified in comments';
 	else
 		dojo.byId('confgroup').innerHTML = getSelectText('groupsel');
-	if(mode != 'request') {
-		dojo.byId('confadmintitle').innerHTML = 'Managing User Group:';
-		dojo.byId('confadmingroup').innerHTML = getSelectText('admingroupsel');
-	}
 	dojo.byId('confrepeat').innerHTML = 'Weekly';
 	dojo.byId('conftitle1').innerHTML = 'First Date:';
 	dojo.byId('confvalue1').innerHTML = dijit.byId('wkfirstdate').getDisplayedValue();
@@ -565,7 +561,6 @@ function blockFormSubmitWeekly(mode) {
 	if(mode != 'request') {
 		data.name = dijit.byId('brname').value;
 		data.owner = dijit.byId('browner').value;
-		data.admingroupid = getSelectValue('admingroupsel');
 	}
 	else
 		data.comments = dijit.byId('comments').value;
@@ -629,10 +624,6 @@ function blockFormVerifyMonthly(mode) {
 		dojo.byId('confgroup').innerHTML = 'specified in comments';
 	else
 		dojo.byId('confgroup').innerHTML = getSelectText('groupsel');
-	if(mode != 'request') {
-		dojo.byId('confadmintitle').innerHTML = 'Managing User Group:';
-		dojo.byId('confadmingroup').innerHTML = getSelectText('admingroupsel');
-	}
 	dojo.byId('confrepeat').innerHTML = 'Monthly';
 	dojo.byId('conftitle1').innerHTML = 'First Date:';
 	dojo.byId('confvalue1').innerHTML = dijit.byId('mnfirstdate').getDisplayedValue();
@@ -705,7 +696,6 @@ function blockFormSubmitMonthly(mode) {
 	if(mode != 'request') {
 		data.name = dijit.byId('brname').value;
 		data.owner = dijit.byId('browner').value;
-		data.admingroupid = getSelectValue('admingroupsel');
 	}
 	else
 		data.comments = dijit.byId('comments').value;
@@ -739,10 +729,6 @@ function blockFormVerifyList(mode) {
 		dojo.byId('confgroup').innerHTML = 'specified in comments';
 	else
 		dojo.byId('confgroup').innerHTML = getSelectText('groupsel');
-	if(mode != 'request') {
-		dojo.byId('confadmintitle').innerHTML = 'Managing User Group:';
-		dojo.byId('confadmingroup').innerHTML = getSelectText('admingroupsel');
-	}
 	dojo.byId('confrepeat').innerHTML = 'List of Dates/Times';
 	dojo.byId('conftitle1').innerHTML = 'Repeat on:';
 	var slots = new Array();
@@ -795,7 +781,6 @@ function blockFormSubmitList(mode) {
 	if(mode != 'request') {
 		data.name = dijit.byId('brname').value;
 		data.owner = dijit.byId('browner').value;
-		data.admingroupid = getSelectValue('admingroupsel');
 	}
 	else
 		data.comments = dijit.byId('comments').value;
@@ -811,8 +796,6 @@ function clearHideConfirmForm() {
 	dojo.byId('confimage').innerHTML = '';
 	dojo.byId('confseats').innerHTML = '';
 	dojo.byId('confgroup').innerHTML = '';
-	dojo.byId('confadmintitle').innerHTML = '';
-	dojo.byId('confadmingroup').innerHTML = '';
 	dojo.byId('confrepeat').innerHTML = '';
 	dojo.byId('conftitle1').innerHTML = '';
 	dojo.byId('confvalue1').innerHTML = '';
@@ -832,7 +815,6 @@ function clearHideConfirmDelete() {
 	dojo.byId('confimage').innerHTML = '';
 	dojo.byId('confseats').innerHTML = '';
 	dojo.byId('confgroup').innerHTML = '';
-	dojo.byId('confadmingroup').innerHTML = '';
 	dojo.byId('confrepeat').innerHTML = '';
 	dojo.byId('conftitle1').innerHTML = '';
 	dojo.byId('confvalue1').innerHTML = '';
@@ -883,10 +865,6 @@ function clearHideConfirmAccept() {
 	else
 		dojo.byId('groupsel').value = 0;
 	dojo.byId('brname').value = '';
-	if(dijit.byId('admingroupsel'))
-		dijit.byId('admingroupsel').attr('displayedValue', 'None (owner only)');
-	else
-		dojo.byId('admingroupsel').value = 0;
 	dojo.byId('acceptemailuser').innerHTML = '';
 	dijit.byId('acceptemailtext').attr('value', '');
 }
@@ -924,7 +902,6 @@ function deleteBlockConfirmCB(data, ioAr
 		dojo.byId('confimage').innerHTML = data.items.image;
 		dojo.byId('confseats').innerHTML = data.items.seats;
 		dojo.byId('confgroup').innerHTML = data.items.usergroup;
-		dojo.byId('confadmingroup').innerHTML = data.items.admingroup;
 		dojo.byId('confrepeat').innerHTML = 'Weekly';
 		dojo.byId('conftitle1').innerHTML = 'First Date:';
 		dojo.byId('confvalue1').innerHTML = data.items.startdate;
@@ -941,7 +918,6 @@ function deleteBlockConfirmCB(data, ioAr
 		dojo.byId('confimage').innerHTML = data.items.image;
 		dojo.byId('confseats').innerHTML = data.items.seats;
 		dojo.byId('confgroup').innerHTML = data.items.usergroup;
-		dojo.byId('confadmingroup').innerHTML = data.items.admingroup;
 		dojo.byId('confrepeat').innerHTML = 'Monthly';
 		dojo.byId('conftitle1').innerHTML = 'First Date:';
 		dojo.byId('confvalue1').innerHTML = data.items.startdate;
@@ -958,7 +934,6 @@ function deleteBlockConfirmCB(data, ioAr
 		dojo.byId('confimage').innerHTML = data.items.image;
 		dojo.byId('confseats').innerHTML = data.items.seats;
 		dojo.byId('confgroup').innerHTML = data.items.usergroup;
-		dojo.byId('confadmingroup').innerHTML = data.items.admingroup;
 		dojo.byId('confrepeat').innerHTML = 'List of Dates/Times';
 		dojo.byId('conftitle1').innerHTML = 'Repeat on:';
 		dojo.byId('confvalue1').innerHTML = data.items.slots.join('<br>');
@@ -1099,7 +1074,6 @@ function acceptBlockSubmit() {
 	var data = {continuation: cont,
 	            groupid: getSelectValue('groupsel'),
 	            brname: dijit.byId('brname').value,
-	            admingroupid: getSelectValue('admingroupsel'),
 	            emailtext: dijit.byId('acceptemailtext').attr('value')};
    document.body.style.cursor = 'wait';
 	RPCwrapper(data, generalReqCB);
@@ -1173,7 +1147,6 @@ function rejectBlockSubmit() {
 	var data = {continuation: cont,
 	            groupid: getSelectValue('groupsel'),
 	            brname: dijit.byId('brname').value,
-	            admingroupid: getSelectValue('admingroupsel'),
 	            emailtext: dijit.byId('rejectemailtext').attr('value')};
    document.body.style.cursor = 'wait';
 	RPCwrapper(data, generalReqCB);