diff --git a/CHANGELOG b/CHANGELOG index ffaec1fed..01e1d0631 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -265,6 +265,8 @@ -------------------------------------------------------------------------------- Changes in version 5.1.32 -------------------------------------------------------------------------------- +- check error msg after calling AddDocument and UpdateDocument controller + in webdav module -------------------------------------------------------------------------------- Changes in version 5.1.31 diff --git a/op/op.Ajax.php b/op/op.Ajax.php index 6ca6ac2a4..1c59fb37c 100644 --- a/op/op.Ajax.php +++ b/op/op.Ajax.php @@ -859,8 +859,16 @@ switch($command) { $controller->setParam('defaultaccessdocs', $settings->_defaultAccessDocs); if(!$document = $controller()) { + $err = $controller->getErrorMsg(); + if(is_string($err)) + $errmsg = getMLText($err); + elseif(is_array($err)) { + $errmsg = getMLText($err[0], $err[1]); + } else { + $errmsg = $err; + } header('Content-Type: application/json'); - echo json_encode(array('success'=>false, 'message'=>getMLText($controller->getErrorMsg()))); + echo json_encode(array('success'=>false, 'message'=>$errmsg)); exit; } else { // Send notification to subscribers of folder. diff --git a/op/op.UpdateDocument.php b/op/op.UpdateDocument.php index 74d33ac6c..b9c0e1d2d 100644 --- a/op/op.UpdateDocument.php +++ b/op/op.UpdateDocument.php @@ -382,7 +382,15 @@ default: $controller->setParam('initialdocumentstatus', $settings->_initialDocumentStatus); if(!$content = $controller()) { - UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText($controller->getErrorMsg())); + $err = $controller->getErrorMsg(); + if(is_string($err)) + $errmsg = getMLText($err); + elseif(is_array($err)) { + $errmsg = getMLText($err[0], $err[1]); + } else { + $errmsg = $err; + } + UI::exitError(getMLText("document_title", array("documentname" => $document->getName())), $errmsg); } else { if($controller->hasHook('cleanUpDocument')) { $controller->callHook('cleanUpDocument', $document, $file); diff --git a/views/bootstrap/class.ViewDocument.php b/views/bootstrap/class.ViewDocument.php index c96d231d7..3fc8aa7d9 100644 --- a/views/bootstrap/class.ViewDocument.php +++ b/views/bootstrap/class.ViewDocument.php @@ -155,7 +155,7 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Theme_Style { $jsondata = array(); if($user->isAdmin()) { - $data = $document->getTimeline(); + if($data = $document->getTimeline()) { foreach($data as $i=>$item) { switch($item['type']) { @@ -185,6 +185,7 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Theme_Style { $d = makeTsFromLongDate($item['date']); $jsondata[] = array('start'=>date('c', $d)/*$item['date']*/, 'content'=>$item['msg'], 'className'=>$classname); } + } } header('Content-Type: application/json'); echo json_encode($jsondata); diff --git a/views/bootstrap4/class.Bootstrap4.php b/views/bootstrap4/class.Bootstrap4.php index 623af6168..c5689e1cf 100644 --- a/views/bootstrap4/class.Bootstrap4.php +++ b/views/bootstrap4/class.Bootstrap4.php @@ -967,11 +967,11 @@ background-image: linear-gradient(to bottom, #882222, #111111);; if($accessobject->check_view_access(array('Hooks', 'NotificationServices'))) { $menuitems['debug'] = array('link'=>"#", 'label'=>getMLText('debug')); if ($accessobject->check_view_access('Hooks')) - $menuitems['debug']['children']['hooks'] = array('link'=>"../out/out.Hooks.php", 'label'=>getMLText('list_hooks')); + $menuitems['debug']['children']['hooks'] = array('link'=>$this->params['settings']->_httpRoot."out/out.Hooks.php", 'label'=>getMLText('list_hooks')); if ($accessobject->check_view_access('NotificationServices')) - $menuitems['debug']['children']['notification_services'] = array('link'=>"../out/out.NotificationServices.php", 'label'=>getMLText('list_notification_services')); + $menuitems['debug']['children']['notification_services'] = array('link'=>$this->params['settings']->_httpRoot."out/out.NotificationServices.php", 'label'=>getMLText('list_notification_services')); if ($accessobject->check_view_access('ConversionServices')) - $menuitems['debug']['children']['conversion_services'] = array('link'=>"../out/out.ConversionServices.php", 'label'=>getMLText('list_conversion_services')); + $menuitems['debug']['children']['conversion_services'] = array('link'=>$this->params['settings']->_httpRoot."out/out.ConversionServices.php", 'label'=>getMLText('list_conversion_services')); } } diff --git a/webdav/webdav.php b/webdav/webdav.php index fac3b38ad..e2d547329 100644 --- a/webdav/webdav.php +++ b/webdav/webdav.php @@ -175,6 +175,8 @@ class HTTP_WebDAV_Server_SeedDMS extends HTTP_WebDAV_Server $controller->setParam('authenticator', $this->authenticator); $controller->setParam('login', $user); $controller->setParam('pwd', $pass); + $controller->setParam('lang', $this->settings->_language); + $controller->setParam('sesstheme', $this->settings->_theme); $controller->setParam('source', 'webdav'); if(!$controller()) { if($this->logger) { @@ -754,10 +756,18 @@ class HTTP_WebDAV_Server_SeedDMS extends HTTP_WebDAV_Server $controller->setParam('workflow', $workflow); if(!$content = $controller()) { - if($this->logger) - $this->logger->log('PUT: error adding new version', PEAR_LOG_ERR); unlink($tmpFile); - return "409 Conflict"; + $err = $controller->getErrorMsg(); + if(is_string($err)) + $errmsg = getMLText($err); + elseif(is_array($err)) { + $errmsg = getMLText($err[0], $err[1]); + } else { + $errmsg = $err; + } + if($this->logger) + $this->logger->log('PUT: error adding new version: '.$errmsg, PEAR_LOG_ERR); + return "409 Conflict ".$errmsg; } } if($this->notifier) { @@ -834,11 +844,18 @@ class HTTP_WebDAV_Server_SeedDMS extends HTTP_WebDAV_Server $controller->setParam('maxsizeforfulltext', $this->settings->_maxSizeForFullText); $controller->setParam('defaultaccessdocs', $this->settings->_defaultAccessDocs); if(!$document = $controller()) { -// if(!$res = $folder->addDocument($name, '', 0, $this->user, '', array(), $tmpFile, $name, $fileType, $mimetype, 0, array(), array(), 0, "")) { unlink($tmpFile); + $err = $controller->getErrorMsg(); + if(is_string($err)) + $errmsg = getMLText($err); + elseif(is_array($err)) { + $errmsg = getMLText($err[0], $err[1]); + } else { + $errmsg = $err; + } if($this->logger) - $this->logger->log('PUT: error adding object: '.$controller->getErrorMsg(), PEAR_LOG_ERR); - return "409 Conflict ".$controller->getErrorMsg(); + $this->logger->log('PUT: error adding document: '.$errmsg, PEAR_LOG_ERR); + return "409 Conflict ".$errmsg; } if($this->notifier) { if($this->logger) @@ -1304,9 +1321,17 @@ class HTTP_WebDAV_Server_SeedDMS extends HTTP_WebDAV_Server $controller->setParam('maxsizeforfulltext', $this->settings->_maxSizeForFullText); $controller->setParam('defaultaccessdocs', $this->settings->_defaultAccessDocs); if(!$document = $controller()) { + $err = $controller->getErrorMsg(); + if(is_string($err)) + $errmsg = getMLText($err); + elseif(is_array($err)) { + $errmsg = getMLText($err[0], $err[1]); + } else { + $errmsg = $err; + } if($this->logger) - $this->logger->log('COPY: error copying object', PEAR_LOG_ERR); - return "409 Conflict"; + $this->logger->log('COPY: error copying object: '.$errmsg, PEAR_LOG_ERR); + return "409 Conflict ".$errmsg; } if($this->notifier) {