2012-04-23 21:54:49 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
/**
|
|
|
|
* ownCloud - History page of the Versions App
|
|
|
|
*
|
|
|
|
* @author Frank Karlitschek
|
2012-05-26 17:14:24 +00:00
|
|
|
* @copyright 2012 Frank Karlitschek frank@owncloud.org
|
2012-08-29 06:42:49 +00:00
|
|
|
*
|
2012-04-23 21:54:49 +00:00
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
|
2012-08-29 06:42:49 +00:00
|
|
|
* License as published by the Free Software Foundation; either
|
2012-04-23 21:54:49 +00:00
|
|
|
* version 3 of the License, or any later version.
|
2012-08-29 06:42:49 +00:00
|
|
|
*
|
2012-04-23 21:54:49 +00:00
|
|
|
* 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.
|
2012-08-29 06:42:49 +00:00
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
2012-04-23 21:54:49 +00:00
|
|
|
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
2012-08-29 06:42:49 +00:00
|
|
|
*
|
2012-04-23 21:54:49 +00:00
|
|
|
*/
|
|
|
|
|
2012-05-01 20:59:38 +00:00
|
|
|
OCP\User::checkLoggedIn( );
|
2012-05-01 07:49:22 +00:00
|
|
|
OCP\Util::addStyle('files_versions','versions');
|
2012-05-06 21:00:36 +00:00
|
|
|
$tmpl = new OCP\Template( 'files_versions', 'history', 'user' );
|
2012-04-23 21:54:49 +00:00
|
|
|
|
2012-04-25 12:51:08 +00:00
|
|
|
if ( isset( $_GET['path'] ) ) {
|
2012-04-23 21:54:49 +00:00
|
|
|
|
|
|
|
$path = $_GET['path'];
|
2012-08-11 18:53:56 +00:00
|
|
|
$path = $path;
|
2012-04-27 12:19:16 +00:00
|
|
|
$tmpl->assign( 'path', $path );
|
2012-07-09 14:07:26 +00:00
|
|
|
$versions = new OCA_Versions\Storage();
|
2012-04-23 21:54:49 +00:00
|
|
|
|
|
|
|
// roll back to old version if button clicked
|
2012-04-25 12:51:08 +00:00
|
|
|
if( isset( $_GET['revert'] ) ) {
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-08-29 18:34:44 +00:00
|
|
|
if( $versions->rollback( $path, $_GET['revert'] ) ) {
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-04-27 12:19:16 +00:00
|
|
|
$tmpl->assign( 'outcome_stat', 'success' );
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-06-27 13:05:40 +00:00
|
|
|
$tmpl->assign( 'outcome_msg', "File {$_GET['path']} was reverted to version ".OCP\Util::formatDate( doubleval($_GET['revert']) ) );
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-04-27 12:19:16 +00:00
|
|
|
} else {
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-04-27 12:19:16 +00:00
|
|
|
$tmpl->assign( 'outcome_stat', 'failure' );
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-06-27 13:05:40 +00:00
|
|
|
$tmpl->assign( 'outcome_msg', "File {$_GET['path']} could not be reverted to version ".OCP\Util::formatDate( doubleval($_GET['revert']) ) );
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-04-26 17:45:17 +00:00
|
|
|
}
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-04-23 21:54:49 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
// show the history only if there is something to show
|
2012-04-25 16:37:45 +00:00
|
|
|
if( OCA_Versions\Storage::isversioned( $path ) ) {
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-05-11 16:13:58 +00:00
|
|
|
$count = 999; //show the newest revisions
|
2012-05-16 17:30:26 +00:00
|
|
|
$versions = OCA_Versions\Storage::getVersions( $path, $count);
|
2012-04-23 21:54:49 +00:00
|
|
|
|
2012-04-27 12:19:16 +00:00
|
|
|
$tmpl->assign( 'versions', array_reverse( $versions ) );
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-04-23 21:54:49 +00:00
|
|
|
}else{
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-04-25 12:51:08 +00:00
|
|
|
$tmpl->assign( 'message', 'No old versions available' );
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-04-23 21:54:49 +00:00
|
|
|
}
|
|
|
|
}else{
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-04-25 12:51:08 +00:00
|
|
|
$tmpl->assign( 'message', 'No path specified' );
|
2012-08-29 06:42:49 +00:00
|
|
|
|
2012-04-23 21:54:49 +00:00
|
|
|
}
|
|
|
|
|
2012-04-27 12:19:16 +00:00
|
|
|
$tmpl->printPage( );
|