예제 #1
0
* @author Bjoern Schiessle
* @copyright 2013 Bjoern Schiessle schiessle@owncloud.com
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
* License as published by the Free Software Foundation; either
* version 3 of the License, or any later version.
*
* This library 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 along with this library.  If not, see <http://www.gnu.org/licenses/>.
*
*/
OCP\JSON::checkAppEnabled('files_versions');
//OCP\JSON::callCheck();
$file = $_GET['file'];
$revision = (int) $_GET['revision'];
list($uid, $filename) = OCA\Files_Versions\Storage::getUidAndFilename($file);
$versionName = '/' . $uid . '/files_versions/' . $filename . '.v' . $revision;
$view = new OC\Files\View('/');
$ftype = $view->getMimeType('/' . $uid . '/files/' . $filename);
header('Content-Type:' . $ftype);
OCP\Response::setContentDispositionHeader(basename($filename), 'attachment');
OCP\Response::disableCaching();
OCP\Response::setContentLengthHeader($view->filesize($versionName));
OC_Util::obEnd();
$view->readfile($versionName);
<?php

OCP\JSON::checkLoggedIn();
OCP\JSON::checkAppEnabled('files_versions');
OCP\JSON::callCheck();
$file = $_GET['file'];
$revision = (int) $_GET['revision'];
if (OCA\Files_Versions\Storage::rollback($file, $revision)) {
    OCP\JSON::success(array("data" => array("revision" => $revision, "file" => $file)));
} else {
    $l = \OC::$server->getL10N('files_versions');
    OCP\JSON::error(array("data" => array("message" => $l->t("Could not revert: %s", array($file)))));
}
예제 #3
0
 * 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/>
 *
 */
OCP\JSON::checkLoggedIn();
OCP\JSON::callCheck();
OCP\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);
    \OCP\JSON::success(array('data' => array('versions' => $versions, 'endReached' => $endReached)));
} else {
    \OCP\JSON::success(array('data' => array('versions' => false, 'endReached' => true)));
}
예제 #4
0
<?php

OCP\JSON::checkAppEnabled('files_versions');
$source = $_GET['source'];
list($uid, $filename) = OCA\Files_Versions\Storage::getUidAndFilename($source);
$count = 5;
//show the newest revisions
if ($versions = OCA\Files_Versions\Storage::getVersions($uid, $filename, $count)) {
    $versionsFormatted = array();
    foreach ($versions as $version) {
        $versionsFormatted[] = OCP\Util::formatDate($version['version']);
    }
    $versionsSorted = array_reverse($versions);
    if (!empty($versionsSorted)) {
        OCP\JSON::encodedPrint($versionsSorted);
    }
} else {
    return;
}