Browse Source
move versions webui over to the dav api
move versions webui over to the dav api
Signed-off-by: Robin Appelman <robin@icewind.nl>pull/11778/head
No known key found for this signature in database
GPG Key ID: 42B69D8A64526EFB
11 changed files with 118 additions and 529 deletions
-
56apps/files_versions/ajax/getVersions.php
-
41apps/files_versions/ajax/rollbackVersion.php
-
59apps/files_versions/download.php
-
4apps/files_versions/js/templates.js
-
2apps/files_versions/js/templates/item.handlebars
-
86apps/files_versions/js/versioncollection.js
-
63apps/files_versions/js/versionmodel.js
-
74apps/files_versions/js/versionstabview.js
-
141apps/files_versions/tests/js/versioncollectionSpec.js
-
59apps/files_versions/tests/js/versionmodelSpec.js
-
62apps/files_versions/tests/js/versionstabviewSpec.js
@ -1,56 +0,0 @@ |
|||
<?php |
|||
/** |
|||
* @copyright Copyright (c) 2016, ownCloud, Inc. |
|||
* |
|||
* @author Bart Visscher <bartv@thisnet.nl> |
|||
* @author Björn Schießle <bjoern@schiessle.org> |
|||
* @author Frank Karlitschek <frank@karlitschek.de> |
|||
* @author Lukas Reschke <lukas@statuscode.ch> |
|||
* @author Sam Tuke <mail@samtuke.com> |
|||
* @author Vincent Petry <pvince81@owncloud.com> |
|||
* |
|||
* @license AGPL-3.0 |
|||
* |
|||
* This code is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU Affero General Public License, version 3, |
|||
* as published by the Free Software Foundation. |
|||
* |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU Affero General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU Affero General Public License, version 3, |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/> |
|||
* |
|||
*/ |
|||
\OC_JSON::checkLoggedIn(); |
|||
\OC_JSON::callCheck(); |
|||
\OC_JSON::checkAppEnabled('files_versions'); |
|||
|
|||
$source = (string)$_GET['source']; |
|||
$start = (int)$_GET['start']; |
|||
list ($uid, $filename) = OCA\Files_Versions\Storage::getUidAndFilename($source); |
|||
$count = 5; //show the newest revisions
|
|||
$versions = OCA\Files_Versions\Storage::getVersions($uid, $filename, $source); |
|||
if( $versions ) { |
|||
|
|||
$endReached = false; |
|||
if (count($versions) <= $start+$count) { |
|||
$endReached = true; |
|||
} |
|||
|
|||
$versions = array_slice($versions, $start, $count); |
|||
|
|||
// remove owner path from request to not disclose it to the recipient
|
|||
foreach ($versions as $version) { |
|||
unset($version['path']); |
|||
} |
|||
|
|||
\OC_JSON::success(array('data' => array('versions' => $versions, 'endReached' => $endReached))); |
|||
|
|||
} else { |
|||
|
|||
\OC_JSON::success(array('data' => array('versions' => [], 'endReached' => true))); |
|||
|
|||
} |
|||
@ -1,41 +0,0 @@ |
|||
<?php |
|||
/** |
|||
* @copyright Copyright (c) 2016, ownCloud, Inc. |
|||
* |
|||
* @author Bart Visscher <bartv@thisnet.nl> |
|||
* @author Björn Schießle <bjoern@schiessle.org> |
|||
* @author Frank Karlitschek <frank@karlitschek.de> |
|||
* @author Lukas Reschke <lukas@statuscode.ch> |
|||
* @author Robin Appelman <robin@icewind.nl> |
|||
* @author Sam Tuke <mail@samtuke.com> |
|||
* @author Thomas Müller <thomas.mueller@tmit.eu> |
|||
* @author Thomas Tanghus <thomas@tanghus.net> |
|||
* |
|||
* @license AGPL-3.0 |
|||
* |
|||
* This code is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU Affero General Public License, version 3, |
|||
* as published by the Free Software Foundation. |
|||
* |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU Affero General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU Affero General Public License, version 3, |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/> |
|||
* |
|||
*/ |
|||
\OC_JSON::checkLoggedIn(); |
|||
\OC_JSON::checkAppEnabled('files_versions'); |
|||
\OC_JSON::callCheck(); |
|||
|
|||
$file = (string)$_GET['file']; |
|||
$revision=(int)$_GET['revision']; |
|||
|
|||
if(OCA\Files_Versions\Storage::rollback( $file, $revision )) { |
|||
\OC_JSON::success(array("data" => array( "revision" => $revision, "file" => $file ))); |
|||
}else{ |
|||
$l = \OC::$server->getL10N('files_versions'); |
|||
\OC_JSON::error(array("data" => array( "message" => $l->t("Could not revert: %s", array($file) )))); |
|||
} |
|||
@ -1,59 +0,0 @@ |
|||
<?php |
|||
/** |
|||
* @copyright Copyright (c) 2016, ownCloud, Inc. |
|||
* |
|||
* @author Andreas Fischer <bantu@owncloud.com> |
|||
* @author Björn Schießle <bjoern@schiessle.org> |
|||
* @author Lukas Reschke <lukas@statuscode.ch> |
|||
* @author Morris Jobke <hey@morrisjobke.de> |
|||
* @author Roeland Jago Douma <roeland@famdouma.nl> |
|||
* @author Vincent Petry <pvince81@owncloud.com> |
|||
* |
|||
* @license AGPL-3.0 |
|||
* |
|||
* This code is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU Affero General Public License, version 3, |
|||
* as published by the Free Software Foundation. |
|||
* |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU Affero General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU Affero General Public License, version 3, |
|||
* along with this program. If not, see <http://www.gnu.org/licenses/> |
|||
* |
|||
*/ |
|||
|
|||
\OC_JSON::checkAppEnabled('files_versions'); |
|||
\OC_JSON::checkLoggedIn(); |
|||
|
|||
$file = $_GET['file']; |
|||
$revision=(int)$_GET['revision']; |
|||
|
|||
try { |
|||
list($uid, $filename) = OCA\Files_Versions\Storage::getUidAndFilename($file); |
|||
} catch(\OCP\Files\NotFoundException $e) { |
|||
http_response_code(404); |
|||
$tmpl = new OCP\Template('', '404', 'guest'); |
|||
$tmpl->assign('file', ''); |
|||
$tmpl->printPage(); |
|||
exit(); |
|||
} |
|||
|
|||
$versionName = '/'.$uid.'/files_versions/'.$filename.'.v'.$revision; |
|||
|
|||
$view = new OC\Files\View('/'); |
|||
|
|||
$ftype = \OC::$server->getMimeTypeDetector()->getSecureMimeType($view->getMimeType('/'.$uid.'/files/'.$filename)); |
|||
|
|||
header('Content-Type:'.$ftype); |
|||
\OC_Response::setContentDispositionHeader(basename($filename), 'attachment'); |
|||
header('Pragma: public');// enable caching in IE
|
|||
header('Expires: 0'); |
|||
header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); |
|||
\OC_Response::setContentLengthHeader($view->filesize($versionName)); |
|||
|
|||
OC_Util::obEnd(); |
|||
|
|||
$view->readfile($versionName); |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue