mirror of
https://git.code.sf.net/p/seeddms/code
synced 2025-05-14 05:31:42 +00:00
added check for duplicate folder and document names if turned on
This commit is contained in:
parent
ad86df5fc5
commit
38413b671f
|
@ -374,7 +374,7 @@ function getFolderChildren($request, $response, $args) { /* {{{ */
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
function createFolder($request, $response, $args) { /* {{{ */
|
function createFolder($request, $response, $args) { /* {{{ */
|
||||||
global $dms, $userobj;
|
global $dms, $userobj, $settings;
|
||||||
|
|
||||||
if(!$userobj) {
|
if(!$userobj) {
|
||||||
return $response->withJson(array('success'=>false, 'message'=>'Not logged in', 'data'=>''), 403);
|
return $response->withJson(array('success'=>false, 'message'=>'Not logged in', 'data'=>''), 403);
|
||||||
|
@ -410,6 +410,12 @@ function createFolder($request, $response, $args) { /* {{{ */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/* Check if name already exists in the folder */
|
||||||
|
if(!$settings->_enableDuplicateSubFolderNames) {
|
||||||
|
if($folder->hasSubFolderByName($params['name'])) {
|
||||||
|
return $response->withJson(array('success'=>false, 'message'=>getMLText("subfolder_duplicate_name"), 'data'=>''), 400);
|
||||||
|
}
|
||||||
|
}
|
||||||
if($folder = $parent->addSubFolder($params['name'], $comment, $userobj, $sequence, $newattrs)) {
|
if($folder = $parent->addSubFolder($params['name'], $comment, $userobj, $sequence, $newattrs)) {
|
||||||
|
|
||||||
$rec = __getFolderData($folder);
|
$rec = __getFolderData($folder);
|
||||||
|
@ -506,7 +512,7 @@ function deleteFolder($request, $response, $args) { /* {{{ */
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
function uploadDocument($request, $response, $args) { /* {{{ */
|
function uploadDocument($request, $response, $args) { /* {{{ */
|
||||||
global $dms, $userobj;
|
global $dms, $userobj, $settings;
|
||||||
|
|
||||||
if(!$userobj) {
|
if(!$userobj) {
|
||||||
return $response->withJson(array('success'=>false, 'message'=>'Not logged in', 'data'=>''), 403);
|
return $response->withJson(array('success'=>false, 'message'=>'Not logged in', 'data'=>''), 403);
|
||||||
|
@ -571,6 +577,12 @@ function uploadDocument($request, $response, $args) { /* {{{ */
|
||||||
$origfilename = $file_info->getClientFilename();
|
$origfilename = $file_info->getClientFilename();
|
||||||
if (trim($docname) == '')
|
if (trim($docname) == '')
|
||||||
$docname = $origfilename;
|
$docname = $origfilename;
|
||||||
|
/* Check if name already exists in the folder */
|
||||||
|
if(!$settings->_enableDuplicateDocNames) {
|
||||||
|
if($mfolder->hasDocumentByName($docname)) {
|
||||||
|
return $response->withJson(array('success'=>false, 'message'=>getMLText("document_duplicate_name"), 'data'=>''), 400);
|
||||||
|
}
|
||||||
|
}
|
||||||
$temp = $file_info->file;
|
$temp = $file_info->file;
|
||||||
$finfo = finfo_open(FILEINFO_MIME_TYPE);
|
$finfo = finfo_open(FILEINFO_MIME_TYPE);
|
||||||
$userfiletype = finfo_file($finfo, $temp);
|
$userfiletype = finfo_file($finfo, $temp);
|
||||||
|
@ -662,7 +674,7 @@ function updateDocument($request, $response, $args) { /* {{{ */
|
||||||
* Old upload method which uses put instead of post
|
* Old upload method which uses put instead of post
|
||||||
*/
|
*/
|
||||||
function uploadDocumentPut($request, $response, $args) { /* {{{ */
|
function uploadDocumentPut($request, $response, $args) { /* {{{ */
|
||||||
global $dms, $userobj;
|
global $dms, $userobj, $settings;
|
||||||
|
|
||||||
if(!$userobj) {
|
if(!$userobj) {
|
||||||
return $response->withJson(array('success'=>false, 'message'=>'Not logged in', 'data'=>''), 403);
|
return $response->withJson(array('success'=>false, 'message'=>'Not logged in', 'data'=>''), 403);
|
||||||
|
@ -687,6 +699,12 @@ function uploadDocumentPut($request, $response, $args) { /* {{{ */
|
||||||
$userfiletype = finfo_file($finfo, $temp);
|
$userfiletype = finfo_file($finfo, $temp);
|
||||||
$fileType = ".".pathinfo($origfilename, PATHINFO_EXTENSION);
|
$fileType = ".".pathinfo($origfilename, PATHINFO_EXTENSION);
|
||||||
finfo_close($finfo);
|
finfo_close($finfo);
|
||||||
|
/* Check if name already exists in the folder */
|
||||||
|
if(!$settings->_enableDuplicateDocNames) {
|
||||||
|
if($mfolder->hasDocumentByName($docname)) {
|
||||||
|
return $response->withJson(array('success'=>false, 'message'=>getMLText("document_duplicate_name"), 'data'=>''), 400);
|
||||||
|
}
|
||||||
|
}
|
||||||
$res = $mfolder->addDocument($docname, '', 0, $userobj, '', array(), $temp, $origfilename ? $origfilename : basename($temp), $fileType, $userfiletype, 0);
|
$res = $mfolder->addDocument($docname, '', 0, $userobj, '', array(), $temp, $origfilename ? $origfilename : basename($temp), $fileType, $userfiletype, 0);
|
||||||
unlink($temp);
|
unlink($temp);
|
||||||
if($res) {
|
if($res) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user