diff --git a/op/op.Ajax.php b/op/op.Ajax.php index 604b9a8b3..9e85f33c1 100644 --- a/op/op.Ajax.php +++ b/op/op.Ajax.php @@ -684,6 +684,44 @@ switch($command) { } break; /* }}} */ + case 'setoriginalname': /* {{{ */ + if($user && $user->isAdmin()) { + if(checkFormKey('setoriginalname')) { + $content = $dms->getDocumentContent($_REQUEST['contentid']); + if($content) { + $document = $content->getDocument(); + if ($document->getAccessMode($user) >= M_READWRITE) { + $oldname = $content->getOriginalFileName(); + if (!$content->setOriginalFilename($_REQUEST['name'])) { + header('Content-Type: application/json'); + echo json_encode(array('success'=>false, 'message'=>'Error setting original file name', 'data'=>'')); + } else { + if($fulltextservice && ($index = $fulltextservice->Indexer())) { + $lucenesearch = $fulltextservice->Search(); + if($hit = $lucenesearch->getDocument($document->getId())) { + $index->reindexDocument($hit->id); + $index->commit(); + } + } + header('Content-Type: application/json'); + echo json_encode(array('success'=>true, 'message'=>getMLText('splash_orig_filename_changed'), 'data'=>'')); + add_log_line("set original filename '".$_REQUEST['name']."' of document ".$document->getId().":".$content->getVersion()); + } + } else { + header('Content-Type: application/json'); + echo json_encode(array('success'=>false, 'message'=>getMLText('access_denied'), 'data'=>'')); + } + } else { + header('Content-Type: application/json'); + echo json_encode(array('success'=>false, 'message'=>getMLText('invalid_doc_id'), 'data'=>'')); + } + } else { + header('Content-Type: application/json'); + echo json_encode(array('success'=>false, 'message'=>getMLText('invalid_request_token'), 'data'=>'')); + } + } + break; /* }}} */ + case 'setmimetype': /* {{{ */ if($user && $user->isAdmin()) { if(checkFormKey('setmimetype', 'GET')) {