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 89 );
90 90 $sName = $this->oValidator->validateString($_REQUEST['unit_name'], $aOptions);
91 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 94 $iFolderId = KTUtil::arrayGet($_REQUEST, 'fFolderId', 1);
95 95 $_REQUEST['fFolderId'] = $iFolderId;
... ... @@ -163,7 +163,7 @@ class KTUnitAdminDispatcher extends KTAdminDispatcher {
163 163 );
164 164 $sName = $this->oValidator->validateString($_REQUEST['unit_name'], $aOptions);
165 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 168 $oFolder = KTFolderUtil::add($oParentFolder, $sName, $this->oUser);
169 169 $aOptions = array(
... ... @@ -198,7 +198,14 @@ class KTUnitAdminDispatcher extends KTAdminDispatcher {
198 198  
199 199 function do_saveUnit() {
200 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 209 $oUnit->setName($sName);
203 210 $res = $oUnit->update();
204 211 if (($res == false) || (PEAR::isError($res))) {
... ...