Commit 888d57f4fd09f7504f889bcf4c39eea186af009d

Authored by Neil Blakey-Milner
1 parent 099e4ed9

Make sure the new name in an edited unit is not a name of an existing

unit.


git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@5079 c91229c3-7414-0410-bfa2-8a42b809f60b
plugins/ktcore/admin/unitManagement.php
@@ -89,7 +89,7 @@ class KTUnitAdminDispatcher extends KTAdminDispatcher { @@ -89,7 +89,7 @@ class KTUnitAdminDispatcher extends KTAdminDispatcher {
89 ); 89 );
90 $sName = $this->oValidator->validateString($_REQUEST['unit_name'], $aOptions); 90 $sName = $this->oValidator->validateString($_REQUEST['unit_name'], $aOptions);
91 $aOptions['message'] = _('A unit with that name already exists.'); 91 $aOptions['message'] = _('A unit with that name already exists.');
92 - $sName = $this->oValidator->validateDuplicateName('Unit', _('Unit'), $sName, $aOptions); 92 + $sName = $this->oValidator->validateDuplicateName2('Unit', $sName, $aOptions);
93 93
94 $iFolderId = KTUtil::arrayGet($_REQUEST, 'fFolderId', 1); 94 $iFolderId = KTUtil::arrayGet($_REQUEST, 'fFolderId', 1);
95 $_REQUEST['fFolderId'] = $iFolderId; 95 $_REQUEST['fFolderId'] = $iFolderId;
@@ -163,7 +163,7 @@ class KTUnitAdminDispatcher extends KTAdminDispatcher { @@ -163,7 +163,7 @@ class KTUnitAdminDispatcher extends KTAdminDispatcher {
163 ); 163 );
164 $sName = $this->oValidator->validateString($_REQUEST['unit_name'], $aOptions); 164 $sName = $this->oValidator->validateString($_REQUEST['unit_name'], $aOptions);
165 $aOptions['message'] = _('A unit with that name already exists.'); 165 $aOptions['message'] = _('A unit with that name already exists.');
166 - $sName = $this->oValidator->validateDuplicateName('Unit', _('Unit'), $sName, $aOptions); 166 + $sName = $this->oValidator->validateDuplicateName2('Unit', $sName, $aOptions);
167 167
168 $oFolder = KTFolderUtil::add($oParentFolder, $sName, $this->oUser); 168 $oFolder = KTFolderUtil::add($oParentFolder, $sName, $this->oUser);
169 $aOptions = array( 169 $aOptions = array(
@@ -198,7 +198,14 @@ class KTUnitAdminDispatcher extends KTAdminDispatcher { @@ -198,7 +198,14 @@ class KTUnitAdminDispatcher extends KTAdminDispatcher {
198 198
199 function do_saveUnit() { 199 function do_saveUnit() {
200 $oUnit =& $this->oValidator->validateUnit($_REQUEST['unit_id']); 200 $oUnit =& $this->oValidator->validateUnit($_REQUEST['unit_id']);
201 - $sName =& $this->oValidator->validateString($_REQUEST['unit_name']); 201 + $aOptions = array(
  202 + 'redirect_to' => array('editUnit', sprintf('unit_id=%d', $oUnit->getId())),
  203 + 'message' => _('No name given'),
  204 + );
  205 + $sName = $this->oValidator->validateString($_REQUEST['unit_name'], $aOptions);
  206 + $aOptions['message'] = _('A unit with that name already exists.');
  207 + $aOptions['rename'] = $oUnit->getId();
  208 + $sName = $this->oValidator->validateDuplicateName2('Unit', $sName, $aOptions);
202 $oUnit->setName($sName); 209 $oUnit->setName($sName);
203 $res = $oUnit->update(); 210 $res = $oUnit->update();
204 if (($res == false) || (PEAR::isError($res))) { 211 if (($res == false) || (PEAR::isError($res))) {