Skip to content

Commit

Permalink
Merge pull request #55 from ONLYOFFICE/develop
Browse files Browse the repository at this point in the history
Release/1.0.3
  • Loading branch information
LinneyS authored Apr 28, 2017
2 parents bd0d43c + 5293f25 commit c7aeefe
Show file tree
Hide file tree
Showing 7 changed files with 56 additions and 26 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# Change Log

## 1.0.3
- compatible with ownCloud 10

## 1.0.2
### Added
- logging
Expand Down
4 changes: 2 additions & 2 deletions appinfo/info.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<description>ONLYOFFICE integration app enables users to edit Office documents within ONLYOFFICE from OwnCloud. This will create a new Open in ONLYOFFICE action within the document library for Office documents. This allows multiple users to collaborate in real time and to save back those changes to OwnCloud.</description>
<licence>AGPL</licence>
<author>Ascensio System SIA</author>
<version>1.0.2</version>
<version>1.0.3</version>
<namespace>Onlyoffice</namespace>
<types>
<filesystem/>
Expand All @@ -28,7 +28,7 @@
<screenshot>https://raw.githubusercontent.com/ONLYOFFICE/onlyoffice-owncloud/master/screenshots/open.png</screenshot>
<screenshot>https://raw.githubusercontent.com/ONLYOFFICE/onlyoffice-owncloud/master/screenshots/settings.png</screenshot>
<dependencies>
<owncloud min-version="9.0" max-version="9.2" />
<owncloud min-version="9.0" max-version="10.0" />
<nextcloud min-version="11" max-version="11"/>
</dependencies>
<settings>
Expand Down
9 changes: 5 additions & 4 deletions controller/callbackcontroller.php
Original file line number Diff line number Diff line change
Expand Up @@ -158,9 +158,9 @@ public function __construct($AppName,
*/
public function download($doc) {

$hashData = $this->crypt->ReadHash($doc);
list ($hashData, $error) = $this->crypt->ReadHash($doc);
if ($hashData === NULL) {
$this->logger->info("Download with empty or not correct hash", array("app" => $this->appName));
$this->logger->info("Download with empty or not correct hash: " . $error, array("app" => $this->appName));
return new JSONResponse(["message" => $this->trans->t("Access deny")], Http::STATUS_FORBIDDEN);
}
if ($hashData->action !== "download") {
Expand Down Expand Up @@ -209,9 +209,9 @@ public function download($doc) {
*/
public function track($doc, $users, $key, $status, $url) {

$hashData = $this->crypt->ReadHash($doc);
list ($hashData, $error) = $this->crypt->ReadHash($doc);
if ($hashData === NULL) {
$this->logger->info("Track with empty or not correct hash", array("app" => $this->appName));
$this->logger->info("Track with empty or not correct hash: " . $error, array("app" => $this->appName));
return new JSONResponse(["message" => $this->trans->t("Access deny")], Http::STATUS_FORBIDDEN);
}
if ($hashData->action !== "track") {
Expand Down Expand Up @@ -269,6 +269,7 @@ public function track($doc, $users, $key, $status, $url) {
break;

case "Editing":
case "Closed":
$error = 0;
break;
}
Expand Down
4 changes: 4 additions & 0 deletions controller/settingscontroller.php
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,10 @@ private function checkDocServiceUrl() {

$this->logger->debug("CommandRequest on check: " . json_encode($commandResponse), array("app" => $this->appName));

if (empty($commandResponse)) {
throw new \Exception($this->trans->t("Error occurred in the document service"));
}

$version = floatval($commandResponse->version);
if ($version < 4.2) {
throw new \Exception($this->trans->t("Not supported version"));
Expand Down
22 changes: 20 additions & 2 deletions lib/adminsettings.php
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,25 @@ public function __construct() {
}

/**
* Print config section
* Print config section (ownCloud 10)
*
* @return TemplateResponse
*/
public function getPanel() {
return $this->getForm();
}

/**
* Get section ID (ownCloud 10)
*
* @return string
*/
public function getSectionID() {
return "general";
}

/**
* Print config section (Nextcloud)
*
* @return TemplateResponse
*/
Expand All @@ -51,7 +69,7 @@ public function getForm() {
}

/**
* Get section ID
* Get section ID (Nextcloud)
*
* @return string
*/
Expand Down
8 changes: 6 additions & 2 deletions lib/crypt.php
Original file line number Diff line number Diff line change
Expand Up @@ -71,8 +71,9 @@ public function GetHash($object) {
*/
public function ReadHash($hash) {
$result = NULL;
$error = NULL;
if ($hash === NULL) {
return $result;
return [$result, "hash is empty"];
}
try {
$payload = base64_decode($hash);
Expand All @@ -82,10 +83,13 @@ public function ReadHash($hash) {

if ($payloadParts[0] === $encode) {
$result = json_decode($payloadParts[1]);
} else {
$error = "hash not equal";
}
} catch (\Exception $e) {
$error = $e->getMessage();
}
return $result;
return [$result, $error];
}

/**
Expand Down
32 changes: 16 additions & 16 deletions lib/documentservice.php
Original file line number Diff line number Diff line change
Expand Up @@ -216,41 +216,41 @@ function SendRequestToConvertService($document_uri, $from_extension, $to_extensi
* @return null
*/
function ProcessConvServResponceError($errorCode) {
$errorMessageTemplate = $this->trans->t("Error occurred in the document service: ");
$errorMessageTemplate = $this->trans->t("Error occurred in the document service");
$errorMessage = "";

switch ($errorCode) {
case -20:
$errorMessage = $errorMessageTemplate . "Error encrypt signature";
$errorMessage = $errorMessageTemplate . ": Error encrypt signature";
break;
case -8:
$errorMessage = $errorMessageTemplate . "Invalid token";
$errorMessage = $errorMessageTemplate . ": Invalid token";
break;
case -7:
$errorMessage = $errorMessageTemplate . "Error document request";
$errorMessage = $errorMessageTemplate . ": Error document request";
break;
case -6:
$errorMessage = $errorMessageTemplate . "Error while accessing the conversion result database";
$errorMessage = $errorMessageTemplate . ": Error while accessing the conversion result database";
break;
case -5:
$errorMessage = $errorMessageTemplate . "Error unexpected guid";
$errorMessage = $errorMessageTemplate . ": Error unexpected guid";
break;
case -4:
$errorMessage = $errorMessageTemplate . "Error while downloading the document file to be converted.";
$errorMessage = $errorMessageTemplate . ": Error while downloading the document file to be converted.";
break;
case -3:
$errorMessage = $errorMessageTemplate . "Conversion error";
$errorMessage = $errorMessageTemplate . ": Conversion error";
break;
case -2:
$errorMessage = $errorMessageTemplate . "Timeout conversion error";
$errorMessage = $errorMessageTemplate . ": Timeout conversion error";
break;
case -1:
$errorMessage = $errorMessageTemplate . "Unknown error";
$errorMessage = $errorMessageTemplate . ": Unknown error";
break;
case 0:
break;
default:
$errorMessage = $errorMessageTemplate . "ErrorCode = " . $errorCode;
$errorMessage = $errorMessageTemplate . ": ErrorCode = " . $errorCode;
break;
}

Expand Down Expand Up @@ -321,23 +321,23 @@ function CommandRequest($method) {
* @return null
*/
function ProcessCommandServResponceError($errorCode) {
$errorMessageTemplate = $this->trans->t("Error occurred in the document service: ");
$errorMessageTemplate = $this->trans->t("Error occurred in the document service");
$errorMessage = "";

switch ($errorCode) {
case 6:
$errorMessage = $errorMessageTemplate . "Invalid token";
$errorMessage = $errorMessageTemplate . ": Invalid token";
break;
case 5:
$errorMessage = $errorMessageTemplate . "Command not correсt";
$errorMessage = $errorMessageTemplate . ": Command not correсt";
break;
case 3:
$errorMessage = $errorMessageTemplate . "Internal server error";
$errorMessage = $errorMessageTemplate . ": Internal server error";
break;
case 0:
return;
default:
$errorMessage = $errorMessageTemplate . "ErrorCode = " . $errorCode;
$errorMessage = $errorMessageTemplate . ": ErrorCode = " . $errorCode;
break;
}

Expand Down

0 comments on commit c7aeefe

Please sign in to comment.