This commit is contained in:
root 2016-07-27 15:17:29 +08:00
commit 2719dcabed
133 changed files with 914 additions and 178 deletions

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" height="32" width="32" version="1.1">
<path fill="#fff" d="m16 3c-8.8366 0-16 4.9248-16 11s7.1634 11 16 11c0.49926 0 0.98116-0.03174 1.4688-0.0625l8.5312 7.062v-9.406c3.658-2.016 6-5.1198 6-8.594 0-6.0752-7.164-11-16-11z"/>
</svg>

After

Width:  |  Height:  |  Size: 327 B

View File

@ -2,11 +2,28 @@ OC.L10N.register(
"federatedfilesharing",
{
"Federated sharing" : "Propojené sdílení",
"Do you want to add the remote share {name} from {owner}@{remote}?" : "Chcete přidat vzdálené sdílení {name} od {owner}@{remote}?",
"Remote share" : "Vzdálené sdílení",
"Remote share password" : "Heslo vzdáleného sdílení",
"Cancel" : "Zrušit",
"Add remote share" : "Přidat propojené sdílení",
"Invalid Federated Cloud ID" : "Neplatné sdružené cloud ID",
"Server to server sharing is not enabled on this server" : "Sdílení ze serveru na server není na tomto serveru povoleno",
"Couldn't establish a federated share." : "Nepodařilo se ustavit spojené sdílení.",
"Couldn't establish a federated share, maybe the password was wrong." : "Nepodařilo se ustavit propojené sdílení, heslo může být nesprávné.",
"Federated Share request was successful, you will receive a invitation. Check your notifications." : "Požadavek na spojené sdílení uspěl, obdržíte pozvánku. Zkontrolujte vaše upozornění.",
"The mountpoint name contains invalid characters." : "Jméno přípojného bodu obsahuje neplatné znaky.",
"Not allowed to create a federated share with the owner." : "ONení povoleno s autorem vytvořit propojené sdílení.",
"Invalid or untrusted SSL certificate" : "Neplatný nebo nedůvěryhodný SSL certifikát",
"Could not authenticate to remote share, password might be wrong" : "Autentizace ke vzdálenému sdílení selhala, heslo může být nesprávné",
"Storage not valid" : "Úložiště není platné",
"Federated Share successfully added" : "Propojené sdílení úspěšně přidáno",
"Couldn't add remote share" : "Nepodařilo se přidat propojené sdílení",
"Sharing %s failed, because this item is already shared with %s" : "Sdílení položky %s selhalo, protože položka již je s uživatelem %s sdílena",
"Not allowed to create a federated share with the same user" : "Není povoleno vytvořit propojené sdílení s tím samým uživatelem",
"File is already shared with %s" : "Soubor je již sdílen s %s",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "Sdílení %s selhalo, %s se nepodařilo nalézt, server pravděpodobně právě není dostupný.",
"Could not find share" : "Nelze nalézt sdílení",
"You received \"/%3$s\" as a remote share from %1$s (on behalf of %2$s)" : "Obdrželi jste \"/%3$s\" jako vzdálené sdílení od %1$s (zastupuje %2$s)",
"You received \"/%3$s\" as a remote share from %1$s" : "Obdrželi jste \"/%3$s\" jako vzdálené sdílení od %1$s",
"Accept" : "Přijmout",

View File

@ -1,10 +1,27 @@
{ "translations": {
"Federated sharing" : "Propojené sdílení",
"Do you want to add the remote share {name} from {owner}@{remote}?" : "Chcete přidat vzdálené sdílení {name} od {owner}@{remote}?",
"Remote share" : "Vzdálené sdílení",
"Remote share password" : "Heslo vzdáleného sdílení",
"Cancel" : "Zrušit",
"Add remote share" : "Přidat propojené sdílení",
"Invalid Federated Cloud ID" : "Neplatné sdružené cloud ID",
"Server to server sharing is not enabled on this server" : "Sdílení ze serveru na server není na tomto serveru povoleno",
"Couldn't establish a federated share." : "Nepodařilo se ustavit spojené sdílení.",
"Couldn't establish a federated share, maybe the password was wrong." : "Nepodařilo se ustavit propojené sdílení, heslo může být nesprávné.",
"Federated Share request was successful, you will receive a invitation. Check your notifications." : "Požadavek na spojené sdílení uspěl, obdržíte pozvánku. Zkontrolujte vaše upozornění.",
"The mountpoint name contains invalid characters." : "Jméno přípojného bodu obsahuje neplatné znaky.",
"Not allowed to create a federated share with the owner." : "ONení povoleno s autorem vytvořit propojené sdílení.",
"Invalid or untrusted SSL certificate" : "Neplatný nebo nedůvěryhodný SSL certifikát",
"Could not authenticate to remote share, password might be wrong" : "Autentizace ke vzdálenému sdílení selhala, heslo může být nesprávné",
"Storage not valid" : "Úložiště není platné",
"Federated Share successfully added" : "Propojené sdílení úspěšně přidáno",
"Couldn't add remote share" : "Nepodařilo se přidat propojené sdílení",
"Sharing %s failed, because this item is already shared with %s" : "Sdílení položky %s selhalo, protože položka již je s uživatelem %s sdílena",
"Not allowed to create a federated share with the same user" : "Není povoleno vytvořit propojené sdílení s tím samým uživatelem",
"File is already shared with %s" : "Soubor je již sdílen s %s",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "Sdílení %s selhalo, %s se nepodařilo nalézt, server pravděpodobně právě není dostupný.",
"Could not find share" : "Nelze nalézt sdílení",
"You received \"/%3$s\" as a remote share from %1$s (on behalf of %2$s)" : "Obdrželi jste \"/%3$s\" jako vzdálené sdílení od %1$s (zastupuje %2$s)",
"You received \"/%3$s\" as a remote share from %1$s" : "Obdrželi jste \"/%3$s\" jako vzdálené sdílení od %1$s",
"Accept" : "Přijmout",

View File

@ -8,6 +8,8 @@ OC.L10N.register(
"Federation" : "Sdružování",
"Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Sdružování vám umožňuje se připojit k dalším důvěryhodným serverům za účelem výměny uživatelských adresářů. Používá se to např. pro automatické doplňování uživatelů při sdruženém sdílení.",
"Add server automatically once a federated share was created successfully" : "Přidat server automaticky jakmile je úspěšně vytvořeno sdružené sdílení",
"Trusted Servers" : "Důvěryhodné servery"
"Trusted Servers" : "Důvěryhodné servery",
"+ Add Nextcloud server" : "+ Přidat Nextcloud server",
"Nextcloud Server" : "Server Nextcloud"
},
"nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;");

View File

@ -6,6 +6,8 @@
"Federation" : "Sdružování",
"Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Sdružování vám umožňuje se připojit k dalším důvěryhodným serverům za účelem výměny uživatelských adresářů. Používá se to např. pro automatické doplňování uživatelů při sdruženém sdílení.",
"Add server automatically once a federated share was created successfully" : "Přidat server automaticky jakmile je úspěšně vytvořeno sdružené sdílení",
"Trusted Servers" : "Důvěryhodné servery"
"Trusted Servers" : "Důvěryhodné servery",
"+ Add Nextcloud server" : "+ Přidat Nextcloud server",
"Nextcloud Server" : "Server Nextcloud"
},"pluralForm" :"nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;"
}

View File

@ -28,6 +28,7 @@
*/
\OCP\App::registerAdmin('files', 'admin');
$l = \OC::$server->getL10N('files');
\OC::$server->getNavigationManager()->add(function () {
$urlGenerator = \OC::$server->getURLGenerator();
@ -49,8 +50,7 @@ $templateManager->registerTemplate('application/vnd.oasis.opendocument.presentat
$templateManager->registerTemplate('application/vnd.oasis.opendocument.text', 'core/templates/filetemplates/template.odt');
$templateManager->registerTemplate('application/vnd.oasis.opendocument.spreadsheet', 'core/templates/filetemplates/template.ods');
\OCA\Files\App::getNavigationManager()->add(function () {
$l = \OC::$server->getL10N('files');
\OCA\Files\App::getNavigationManager()->add(function () use ($l) {
return [
'id' => 'files',
'appname' => 'files',
@ -60,6 +60,16 @@ $templateManager->registerTemplate('application/vnd.oasis.opendocument.spreadshe
];
});
\OCA\Files\App::getNavigationManager()->add(function () use ($l) {
return [
'id' => 'recent',
'appname' => 'files',
'script' => 'recentlist.php',
'order' => 2,
'name' => $l->t('Recent'),
];
});
\OC::$server->getActivityManager()->registerExtension(function() {
return new \OCA\Files\Activity(
\OC::$server->query('L10NFactory'),

View File

@ -50,6 +50,11 @@ $application->registerRoutes(
'verb' => 'GET',
'requirements' => array('tagName' => '.+'),
),
array(
'name' => 'API#getRecentFiles',
'url' => '/api/v1/recent/',
'verb' => 'GET'
),
array(
'name' => 'API#updateFileSorting',
'url' => '/api/v1/sorting',

View File

@ -174,6 +174,11 @@
*/
_clientSideSort: true,
/**
* Whether or not users can change the sort attribute or direction
*/
_allowSorting: true,
/**
* Current directory
* @type String
@ -718,7 +723,7 @@
$target = $target.closest('a');
}
sort = $target.attr('data-sort');
if (sort) {
if (sort && this._allowSorting) {
if (this._sort === sort) {
this.setSort(sort, (this._sortDirection === 'desc')?'asc':'desc', true, true);
}

View File

@ -0,0 +1,106 @@
/*
* Copyright (c) 2014 Vincent Petry <pvince81@owncloud.com>
*
* This file is licensed under the Affero General Public License version 3
* or later.
*
* See the COPYING-README file.
*
*/
// HACK: this piece needs to be loaded AFTER the files app (for unit tests)
$(document).ready(function () {
(function (OCA) {
/**
* @class OCA.Files.RecentFileList
* @augments OCA.Files.RecentFileList
*
* @classdesc Recent file list.
* Displays the list of recently modified files
*
* @param $el container element with existing markup for the #controls
* and a table
* @param [options] map of options, see other parameters
*/
var RecentFileList = function ($el, options) {
options.sorting = {
mode: 'mtime',
direction: 'desc'
};
this.initialize($el, options);
this._allowSorting = false;
};
RecentFileList.prototype = _.extend({}, OCA.Files.FileList.prototype,
/** @lends OCA.Files.RecentFileList.prototype */ {
id: 'recent',
appName: t('files', 'Recent'),
_clientSideSort: true,
_allowSelection: false,
/**
* @private
*/
initialize: function () {
OCA.Files.FileList.prototype.initialize.apply(this, arguments);
if (this.initialized) {
return;
}
OC.Plugins.attach('OCA.Files.RecentFileList', this);
},
updateEmptyContent: function () {
var dir = this.getCurrentDirectory();
if (dir === '/') {
// root has special permissions
this.$el.find('#emptycontent').toggleClass('hidden', !this.isEmpty);
this.$el.find('#filestable thead th').toggleClass('hidden', this.isEmpty);
}
else {
OCA.Files.FileList.prototype.updateEmptyContent.apply(this, arguments);
}
},
getDirectoryPermissions: function () {
return OC.PERMISSION_READ | OC.PERMISSION_DELETE;
},
updateStorageStatistics: function () {
// no op because it doesn't have
// storage info like free space / used space
},
reload: function () {
this.showMask();
if (this._reloadCall) {
this._reloadCall.abort();
}
// there is only root
this._setCurrentDir('/', false);
this._reloadCall = $.ajax({
url: OC.generateUrl('/apps/files/api/v1/recent'),
type: 'GET',
dataType: 'json'
});
var callBack = this.reloadCallback.bind(this);
return this._reloadCall.then(callBack, callBack);
},
reloadCallback: function (result) {
delete this._reloadCall;
this.hideMask();
if (result.files) {
this.setFiles(result.files.sort(this._sortComparator));
return true;
}
return false;
}
});
OCA.Files.RecentFileList = RecentFileList;
})(OCA);
});

View File

@ -0,0 +1,117 @@
/*
* Copyright (c) 2014 Vincent Petry <pvince81@owncloud.com>
*
* This file is licensed under the Affero General Public License version 3
* or later.
*
* See the COPYING-README file.
*
*/
(function (OCA) {
/**
* @namespace OCA.Files.RecentPlugin
*
* Registers the recent file list from the files app sidebar.
*/
OCA.Files.RecentPlugin = {
name: 'Recent',
/**
* @type OCA.Files.RecentFileList
*/
recentFileList: null,
attach: function () {
var self = this;
$('#app-content-recent').on('show.plugin-recent', function (e) {
self.showFileList($(e.target));
});
$('#app-content-recent').on('hide.plugin-recent', function () {
self.hideFileList();
});
},
detach: function () {
if (this.recentFileList) {
this.recentFileList.destroy();
OCA.Files.fileActions.off('setDefault.plugin-recent', this._onActionsUpdated);
OCA.Files.fileActions.off('registerAction.plugin-recent', this._onActionsUpdated);
$('#app-content-recent').off('.plugin-recent');
this.recentFileList = null;
}
},
showFileList: function ($el) {
if (!this.recentFileList) {
this.recentFileList = this._createRecentFileList($el);
}
return this.recentFileList;
},
hideFileList: function () {
if (this.recentFileList) {
this.recentFileList.$fileList.empty();
}
},
/**
* Creates the recent file list.
*
* @param $el container for the file list
* @return {OCA.Files.RecentFileList} file list
*/
_createRecentFileList: function ($el) {
var fileActions = this._createFileActions();
// register recent list for sidebar section
return new OCA.Files.RecentFileList(
$el, {
fileActions: fileActions,
scrollContainer: $('#app-content')
}
);
},
_createFileActions: function () {
// inherit file actions from the files app
var fileActions = new OCA.Files.FileActions();
// note: not merging the legacy actions because legacy apps are not
// compatible with the sharing overview and need to be adapted first
fileActions.registerDefaultActions();
fileActions.merge(OCA.Files.fileActions);
if (!this._globalActionsInitialized) {
// in case actions are registered later
this._onActionsUpdated = _.bind(this._onActionsUpdated, this);
OCA.Files.fileActions.on('setDefault.plugin-recent', this._onActionsUpdated);
OCA.Files.fileActions.on('registerAction.plugin-recent', this._onActionsUpdated);
this._globalActionsInitialized = true;
}
// when the user clicks on a folder, redirect to the corresponding
// folder in the files app instead of opening it directly
fileActions.register('dir', 'Open', OC.PERMISSION_READ, '', function (filename, context) {
OCA.Files.App.setActiveView('files', {silent: true});
var path = OC.joinPaths(context.$file.attr('data-path'), filename);
OCA.Files.App.fileList.changeDirectory(path, true, true);
});
fileActions.setDefault('dir', 'Open');
return fileActions;
},
_onActionsUpdated: function (ev) {
if (ev.action) {
this.recentFileList.fileActions.registerAction(ev.action);
} else if (ev.defaultAction) {
this.recentFileList.fileActions.setDefault(
ev.defaultAction.mime,
ev.defaultAction.name
);
}
}
};
})(OCA);
OC.Plugins.register('OCA.Files.App', OCA.Files.RecentPlugin);

View File

@ -21,6 +21,7 @@ OC.L10N.register(
"Invalid directory." : "Neplatný adresář",
"Files" : "Soubory",
"All files" : "Všechny soubory",
"Recent" : "Nedávné",
"File could not be found" : "Soubor nelze nalézt",
"Home" : "Domů",
"Close" : "Zavřít",

View File

@ -19,6 +19,7 @@
"Invalid directory." : "Neplatný adresář",
"Files" : "Soubory",
"All files" : "Všechny soubory",
"Recent" : "Nedávné",
"File could not be found" : "Soubor nelze nalézt",
"Home" : "Domů",
"Close" : "Zavřít",

View File

@ -21,6 +21,7 @@ OC.L10N.register(
"Invalid directory." : "Ungültiges Verzeichnis.",
"Files" : "Dateien",
"All files" : "Alle Dateien",
"Recent" : "Akuelle",
"File could not be found" : "Datei konnte nicht gefunden werden",
"Home" : "Home",
"Close" : "Schließen",
@ -33,7 +34,7 @@ OC.L10N.register(
"Could not get result from server." : "Ergebnis konnte nicht vom Server abgerufen werden.",
"Uploading..." : "Hochladen…",
"..." : "...",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} Stunde{plural_s} übrig",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} Stunde(n) übrig",
"{hours}:{minutes}h" : "{hours}:{minutes}h",
"{minutes}:{seconds} minute{plural_s} left" : "{minutes}:{seconds} Minute{plural_s} übrig",
"{minutes}:{seconds}m" : "{minutes}:{seconds}m",

View File

@ -19,6 +19,7 @@
"Invalid directory." : "Ungültiges Verzeichnis.",
"Files" : "Dateien",
"All files" : "Alle Dateien",
"Recent" : "Akuelle",
"File could not be found" : "Datei konnte nicht gefunden werden",
"Home" : "Home",
"Close" : "Schließen",
@ -31,7 +32,7 @@
"Could not get result from server." : "Ergebnis konnte nicht vom Server abgerufen werden.",
"Uploading..." : "Hochladen…",
"..." : "...",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} Stunde{plural_s} übrig",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} Stunde(n) übrig",
"{hours}:{minutes}h" : "{hours}:{minutes}h",
"{minutes}:{seconds} minute{plural_s} left" : "{minutes}:{seconds} Minute{plural_s} übrig",
"{minutes}:{seconds}m" : "{minutes}:{seconds}m",

View File

@ -21,6 +21,7 @@ OC.L10N.register(
"Invalid directory." : "Ungültiges Verzeichnis.",
"Files" : "Dateien",
"All files" : "Alle Dateien",
"Recent" : "Aktuelle",
"File could not be found" : "Datei konnte nicht gefunden werden",
"Home" : "Home",
"Close" : "Schließen",
@ -33,7 +34,7 @@ OC.L10N.register(
"Could not get result from server." : "Ergebnis konnte nicht vom Server abgerufen werden.",
"Uploading..." : "Hochladen…",
"..." : "...",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} Stunde{plural_s} übrig",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} Stunde(n) übrig",
"{hours}:{minutes}h" : "{hours}:{minutes}h",
"{minutes}:{seconds} minute{plural_s} left" : "{minutes}:{seconds} Minute{plural_s} übrig",
"{minutes}:{seconds}m" : "{minutes}:{seconds}m",

View File

@ -19,6 +19,7 @@
"Invalid directory." : "Ungültiges Verzeichnis.",
"Files" : "Dateien",
"All files" : "Alle Dateien",
"Recent" : "Aktuelle",
"File could not be found" : "Datei konnte nicht gefunden werden",
"Home" : "Home",
"Close" : "Schließen",
@ -31,7 +32,7 @@
"Could not get result from server." : "Ergebnis konnte nicht vom Server abgerufen werden.",
"Uploading..." : "Hochladen…",
"..." : "...",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} Stunde{plural_s} übrig",
"{hours}:{minutes}:{seconds} hour{plural_s} left" : "{hours}:{minutes}:{seconds} Stunde(n) übrig",
"{hours}:{minutes}h" : "{hours}:{minutes}h",
"{minutes}:{seconds} minute{plural_s} left" : "{minutes}:{seconds} Minute{plural_s} übrig",
"{minutes}:{seconds}m" : "{minutes}:{seconds}m",

View File

@ -21,6 +21,7 @@ OC.L10N.register(
"Invalid directory." : "Cartella non valida.",
"Files" : "File",
"All files" : "Tutti i file",
"Recent" : "Recenti",
"File could not be found" : "Il file non può essere trovato",
"Home" : "Home",
"Close" : "Chiudi",

View File

@ -19,6 +19,7 @@
"Invalid directory." : "Cartella non valida.",
"Files" : "File",
"All files" : "Tutti i file",
"Recent" : "Recenti",
"File could not be found" : "Il file non può essere trovato",
"Home" : "Home",
"Close" : "Chiudi",

View File

@ -21,6 +21,7 @@ OC.L10N.register(
"Invalid directory." : "Ongeldige directory.",
"Files" : "Bestanden",
"All files" : "Alle bestanden",
"Recent" : "Recent",
"File could not be found" : "Bestand kon niet worden gevonden",
"Home" : "Thuis",
"Close" : "Sluiten",

View File

@ -19,6 +19,7 @@
"Invalid directory." : "Ongeldige directory.",
"Files" : "Bestanden",
"All files" : "Alle bestanden",
"Recent" : "Recent",
"File could not be found" : "Bestand kon niet worden gevonden",
"Home" : "Thuis",
"Close" : "Sluiten",

View File

@ -47,7 +47,8 @@ class Application extends App {
$c->query('TagService'),
$server->getPreviewManager(),
$server->getShareManager(),
$server->getConfig()
$server->getConfig(),
$server->getUserFolder()
);
});

View File

@ -31,6 +31,7 @@ namespace OCA\Files\Controller;
use OCP\AppFramework\Http;
use OCP\AppFramework\Controller;
use OCP\Files\Folder;
use OCP\IConfig;
use OCP\IRequest;
use OCP\AppFramework\Http\DataResponse;
@ -39,7 +40,7 @@ use OCP\AppFramework\Http\Response;
use OCA\Files\Service\TagService;
use OCP\IPreview;
use OCP\Share\IManager;
use OCP\Files\Node;
use OC\Files\Node\Node;
use OCP\IUserSession;
/**
@ -58,12 +59,18 @@ class ApiController extends Controller {
private $userSession;
/** IConfig */
private $config;
/** @var Folder */
private $userFolder;
/**
* @param string $appName
* @param IRequest $request
* @param IUserSession $userSession
* @param TagService $tagService
* @param IPreview $previewManager
* @param IManager $shareManager
* @param IConfig $config
* @param Folder $userFolder
*/
public function __construct($appName,
IRequest $request,
@ -71,13 +78,15 @@ class ApiController extends Controller {
TagService $tagService,
IPreview $previewManager,
IManager $shareManager,
IConfig $config) {
IConfig $config,
Folder $userFolder) {
parent::__construct($appName, $request);
$this->userSession = $userSession;
$this->tagService = $tagService;
$this->previewManager = $previewManager;
$this->shareManager = $shareManager;
$this->config = $config;
$this->userFolder = $userFolder;
}
/**
@ -142,6 +151,28 @@ class ApiController extends Controller {
return new DataResponse($result);
}
/**
* @param \OCP\Files\Node[] $nodes
* @return array
*/
private function formatNodes(array $nodes) {
return array_values(array_map(function (Node $node) {
/** @var \OC\Files\Node\Node $shareTypes */
$shareTypes = $this->getShareTypes($node);
$file = \OCA\Files\Helper::formatFileInfo($node->getFileInfo());
$parts = explode('/', dirname($node->getPath()), 4);
if (isset($parts[3])) {
$file['path'] = '/' . $parts[3];
} else {
$file['path'] = '/';
}
if (!empty($shareTypes)) {
$file['shareTypes'] = $shareTypes;
}
return $file;
}, $nodes));
}
/**
* Returns a list of all files tagged with the given tag.
*
@ -151,27 +182,27 @@ class ApiController extends Controller {
* @return DataResponse
*/
public function getFilesByTag($tagName) {
$files = array();
$nodes = $this->tagService->getFilesByTag($tagName);
foreach ($nodes as &$node) {
$shareTypes = $this->getShareTypes($node);
$fileInfo = $node->getFileInfo();
$file = \OCA\Files\Helper::formatFileInfo($fileInfo);
$parts = explode('/', dirname($fileInfo->getPath()), 4);
if(isset($parts[3])) {
$file['path'] = '/' . $parts[3];
} else {
$file['path'] = '/';
}
$files = $this->formatNodes($nodes);
foreach ($files as &$file) {
$file['tags'] = [$tagName];
if (!empty($shareTypes)) {
$file['shareTypes'] = $shareTypes;
}
$files[] = $file;
}
return new DataResponse(['files' => $files]);
}
/**
* Returns a list of recently modifed files.
*
* @NoAdminRequired
*
* @return DataResponse
*/
public function getRecentFiles() {
$nodes = $this->userFolder->getRecent(100);
$files = $this->formatNodes($nodes);
return new DataResponse(['files' => $files]);
}
/**
* Return a list of share types for outgoing shares
*

View File

@ -173,9 +173,11 @@ class ViewController extends Controller {
\OCP\Util::addscript('files', 'search');
\OCP\Util::addScript('files', 'favoritesfilelist');
\OCP\Util::addScript('files', 'recentfilelist');
\OCP\Util::addScript('files', 'tagsplugin');
\OCP\Util::addScript('files', 'gotoplugin');
\OCP\Util::addScript('files', 'favoritesplugin');
\OCP\Util::addScript('files', 'recentplugin');
\OCP\Util::addScript('files', 'detailfileinfoview');
\OCP\Util::addScript('files', 'sidebarpreviewmanager');

View File

@ -0,0 +1,7 @@
<?php
// Check if we are a user
OCP\User::checkLoggedIn();
$tmpl = new OCP\Template('files', 'recentlist', '');
$tmpl->printPage();

View File

@ -0,0 +1,42 @@
<?php /** @var $l OC_L10N */ ?>
<div id='notification'></div>
<div id="emptycontent" class="hidden"></div>
<input type="hidden" name="dir" value="" id="dir">
<div class="nofilterresults hidden">
<div class="icon-search"></div>
<h2><?php p($l->t('No entries found in this folder')); ?></h2>
<p></p>
</div>
<table id="filestable">
<thead>
<tr>
<th id='headerName' class="hidden column-name">
<div id="headerName-container">
<a class="name sort columntitle"
data-sort="name"><span><?php p($l->t('Name')); ?></span></a>
</div>
</th>
<th id="headerSize" class="hidden column-size">
<a class="size sort columntitle"
data-sort="size"><span><?php p($l->t('Size')); ?></span></a>
</th>
<th id="headerDate" class="hidden column-mtime">
<a id="modified" class="columntitle"
data-sort="mtime"><span><?php p($l->t('Modified')); ?></span><span
class="sort-indicator"></span></a>
<span class="selectedActions"><a href="" class="delete-selected">
<span><?php p($l->t('Delete')) ?></span>
<span class="icon icon-delete"></span>
</a></span>
</th>
</tr>
</thead>
<tbody id="fileList">
</tbody>
<tfoot>
</tfoot>
</table>

View File

@ -59,6 +59,8 @@ class ApiControllerTest extends TestCase {
private $shareManager;
/** @var \OCP\IConfig */
private $config;
/** @var \OC\Files\Node\Folder */
private $userFolder;
public function setUp() {
$this->request = $this->getMockBuilder('\OCP\IRequest')
@ -82,6 +84,9 @@ class ApiControllerTest extends TestCase {
->disableOriginalConstructor()
->getMock();
$this->config = $this->getMock('\OCP\IConfig');
$this->userFolder = $this->getMockBuilder('\OC\Files\Node\Folder')
->disableOriginalConstructor()
->getMock();
$this->apiController = new ApiController(
$this->appName,
@ -90,7 +95,8 @@ class ApiControllerTest extends TestCase {
$this->tagService,
$this->preview,
$this->shareManager,
$this->config
$this->config,
$this->userFolder
);
}

View File

@ -191,7 +191,16 @@ class ViewControllerTest extends TestCase {
'appname' => 'files',
'script' => 'list.php',
'order' => 0,
'name' => new \OC_L10N_String(new \OC_L10N('files'), 'All files', []),
'name' => (string)new \OC_L10N_String(new \OC_L10N('files'), 'All files', []),
'active' => false,
'icon' => '',
],
[
'id' => 'recent',
'appname' => 'files',
'script' => 'recentlist.php',
'order' => 2,
'name' => (string)new \OC_L10N_String(new \OC_L10N('files'), 'Recent', []),
'active' => false,
'icon' => '',
],
@ -209,7 +218,7 @@ class ViewControllerTest extends TestCase {
'appname' => 'files_sharing',
'script' => 'list.php',
'order' => 10,
'name' => new \OC_L10N_String(new \OC_L10N('files_sharing'), 'Shared with you', []),
'name' => (string)new \OC_L10N_String(new \OC_L10N('files_sharing'), 'Shared with you', []),
'active' => false,
'icon' => '',
],
@ -218,7 +227,7 @@ class ViewControllerTest extends TestCase {
'appname' => 'files_sharing',
'script' => 'list.php',
'order' => 15,
'name' => new \OC_L10N_String(new \OC_L10N('files_sharing'), 'Shared with others', []),
'name' => (string)new \OC_L10N_String(new \OC_L10N('files_sharing'), 'Shared with others', []),
'active' => false,
'icon' => '',
],
@ -227,7 +236,7 @@ class ViewControllerTest extends TestCase {
'appname' => 'files_sharing',
'script' => 'list.php',
'order' => 20,
'name' => new \OC_L10N_String(new \OC_L10N('files_sharing'), 'Shared by link', []),
'name' => (string)new \OC_L10N_String(new \OC_L10N('files_sharing'), 'Shared by link', []),
'active' => false,
'icon' => '',
],
@ -236,7 +245,7 @@ class ViewControllerTest extends TestCase {
'appname' => 'systemtags',
'script' => 'list.php',
'order' => 25,
'name' => new \OC_L10N_String(new \OC_L10N('systemtags'), 'Tags', []),
'name' => (string)new \OC_L10N_String(new \OC_L10N('systemtags'), 'Tags', []),
'active' => false,
'icon' => '',
],
@ -245,7 +254,7 @@ class ViewControllerTest extends TestCase {
'appname' => 'files_trashbin',
'script' => 'list.php',
'order' => 50,
'name' => new \OC_L10N_String(new \OC_L10N('files_trashbin'), 'Deleted files', []),
'name' => (string)new \OC_L10N_String(new \OC_L10N('files_trashbin'), 'Deleted files', []),
'active' => false,
'icon' => '',
],
@ -272,6 +281,10 @@ class ViewControllerTest extends TestCase {
'id' => 'files',
'content' => null,
],
[
'id' => 'recent',
'content' => null,
],
[
'id' => 'favorites',
'content' => null,

View File

@ -68,23 +68,23 @@ td.mountPoint, td.backend { width:160px; }
padding-left: 25px;
}
#body-settings .select2-results .select2-result-label {
.files-external-select2 .select2-results .select2-result-label {
height: 32px;
padding: 3px;
}
.select2-results .select2-result-label > span {
.files-external-select2 .select2-results .select2-result-label > span {
display: block;
position: relative;
}
.select2-results .select2-result-label .avatardiv {
.files-external-select2 .select2-results .select2-result-label .avatardiv {
display:inline-block;
}
.select2-results .select2-result-label .avatardiv + span {
.files-external-select2 .select2-results .select2-result-label .avatardiv + span {
position: absolute;
top: 5px;
margin-left: 10px;
}
.select2-results .select2-result-label .avatardiv[data-type="group"] + span {
.files-external-select2 .select2-results .select2-result-label .avatardiv[data-type="group"] + span {
vertical-align: top;
top: 6px;
position: absolute;

View File

@ -93,6 +93,7 @@ function addSelect2 ($elements, userListLimit) {
placeholder: t('files_external', 'All users. Type to select user or group.'),
allowClear: true,
multiple: true,
dropdownCssClass: 'files-external-select2',
//minimumInputLength: 1,
ajax: {
url: OC.generateUrl('apps/files_external/applicable'),

View File

@ -29,7 +29,6 @@ OCP\JSON::checkLoggedIn();
OCP\JSON::callCheck();
\OC::$server->getSession()->close();
$files = $_POST['files'];
$dir = '/';
if (isset($_POST['dir'])) {
$dir = rtrim((string)$_POST['dir'], '/'). '/';
@ -50,7 +49,7 @@ if (isset($_POST['allfiles']) && (string)$_POST['allfiles'] === 'true') {
$list[] = $fileName;
}
} else {
$list = json_decode($files);
$list = json_decode($_POST['files']);
}
$error = array();

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" height="32" width="32" version="1.0">
<path fill="#fff" d="m12.372 1.9224-9.614 0.02632c-0.54322 0-0.69312 0.41974-0.69406 0.69208l-0.030264 9.6034 17.446 17.444c0.39376 0.39658 1.0247 0.39394 1.4184 0l8.9138-8.9138c0.39344-0.39376 0.3979-1.0265 0.004-1.4205l-0.0022 0.01752-16.734-16.734-0.7082-0.70834zm-4.3336 3.7044a2.2876 2.2876 0 0 1 2.2876 2.288 2.2876 2.2876 0 0 1 -2.2876 2.2882 2.2876 2.2876 0 0 1 -2.288 -2.2882 2.2876 2.2876 0 0 1 2.288 -2.288z"/>
</svg>

After

Width:  |  Height:  |  Size: 563 B

View File

@ -75,11 +75,11 @@ function preview(setting, value) {
var logos = document.getElementsByClassName('logo-icon');
var timestamp = new Date().getTime();
if (value !== '') {
logos[0].style.background = "url('" + OC.generateUrl('/apps/theming/logo') + "?v" + timestamp + "')";
logos[0].style.backgroundSize = "62px 34px";
logos[0].style.backgroundImage = "url('" + OC.generateUrl('/apps/theming/logo') + "?v" + timestamp + "')";
logos[0].style.backgroundSize = "contain";
} else {
logos[0].style.background = "url('" + OC.getRootPath() + '/core/img/logo-icon.svg?v' + timestamp +"')";
logos[0].style.backgroundSize = "62px 34px";
logos[0].style.backgroundImage = "url('" + OC.getRootPath() + '/core/img/logo-icon.svg?v' + timestamp +"')";
logos[0].style.backgroundSize = "contain";
}
}
}

View File

@ -224,10 +224,11 @@ class ThemingController extends Controller {
if($logo !== '') {
$responseCss .= sprintf('#header .logo {
background-image: url(\'./logo?v='.$cacheBusterValue.'\');
background-size: contain;
}
#header .logo-icon {
background-image: url(\'./logo?v='.$cacheBusterValue.'\');
background-size: 62px 34px;
background-size: contain;
}'
);
}

View File

@ -383,10 +383,11 @@ class ThemingControllerTest extends TestCase {
$expected = new Http\DataDownloadResponse('#header .logo {
background-image: url(\'./logo?v=0\');
background-size: contain;
}
#header .logo-icon {
background-image: url(\'./logo?v=0\');
background-size: 62px 34px;
background-size: contain;
}', 'style', 'text/css');
$expected->cacheFor(3600);
@$this->assertEquals($expected, $this->themingController->getStylesheet());
@ -445,10 +446,11 @@ class ThemingControllerTest extends TestCase {
$expected = new Http\DataDownloadResponse('#body-user #header,#body-settings #header,#body-public #header,#body-login,.searchbox input[type="search"]:focus,.searchbox input[type="search"]:active,.searchbox input[type="search"]:valid {background-color: #000}#header .logo {
background-image: url(\'./logo?v=0\');
background-size: contain;
}
#header .logo-icon {
background-image: url(\'./logo?v=0\');
background-size: 62px 34px;
background-size: contain;
}#body-login {
background-image: url(\'./loginbackground?v=0\');
}', 'style', 'text/css');
@ -479,10 +481,11 @@ class ThemingControllerTest extends TestCase {
$expected = new Http\DataDownloadResponse('#body-user #header,#body-settings #header,#body-public #header,#body-login,.searchbox input[type="search"]:focus,.searchbox input[type="search"]:active,.searchbox input[type="search"]:valid {background-color: #fff}#header .logo {
background-image: url(\'./logo?v=0\');
background-size: contain;
}
#header .logo-icon {
background-image: url(\'./logo?v=0\');
background-size: 62px 34px;
background-size: contain;
}#body-login {
background-image: url(\'./loginbackground?v=0\');
}#header .header-appname, #expandDisplayName { color: #000000; } #header .icon-caret { background-image: url(\'' . \OC::$WEBROOT . '/core/img/actions/caret-dark.svg\'); } .searchbox input[type="search"] { background: transparent url(\'' . \OC::$WEBROOT . '/core/img/actions/search.svg\') no-repeat 6px center; color: #000; }.searchbox input[type="search"]:focus,.searchbox input[type="search"]:active,.searchbox input[type="search"]:valid { color: #000; border: 1px solid rgba(0, 0, 0, .5); }', 'style', 'text/css');

View File

@ -15,6 +15,7 @@ OC.L10N.register(
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Vždy můžete aktualizovat na novější verzi / experimentální kanál. Poté ale nelze nikdy provést downgrade zpět na nižší stabilní kanál.",
"Notify members of the following groups about available updates:" : "Upozorňovat členy následujících skupin na dostupné aktualizace:",
"Only notification for app updates are available." : "Je možné pouze upozornění na dostupné aktualizace aplikací.",
"The selected update channel makes dedicated notifications for the server obsolete." : "Zvolený kanál aktualizací označuje dedikovaná upozornění pro server za zastaralá.",
"The selected update channel does not support updates of the server." : "Vybraný kanál aktualizací nepodporuje aktualizace serveru."
},
"nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;");

View File

@ -13,6 +13,7 @@
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Vždy můžete aktualizovat na novější verzi / experimentální kanál. Poté ale nelze nikdy provést downgrade zpět na nižší stabilní kanál.",
"Notify members of the following groups about available updates:" : "Upozorňovat členy následujících skupin na dostupné aktualizace:",
"Only notification for app updates are available." : "Je možné pouze upozornění na dostupné aktualizace aplikací.",
"The selected update channel makes dedicated notifications for the server obsolete." : "Zvolený kanál aktualizací označuje dedikovaná upozornění pro server za zastaralá.",
"The selected update channel does not support updates of the server." : "Vybraný kanál aktualizací nepodporuje aktualizace serveru."
},"pluralForm" :"nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;"
}

View File

@ -498,7 +498,7 @@ class Wizard extends LDAPUtility {
throw new \Exception('Could not connect to LDAP');
}
$obclasses = array('groupOfNames', 'group', 'posixGroup', '*');
$obclasses = array('groupOfNames', 'groupOfUniqueNames', 'group', 'posixGroup', '*');
$this->determineFeature($obclasses,
'objectclass',
'ldap_groupfilter_objectclass',

View File

@ -0,0 +1,26 @@
<?php
/**
* @copyright Copyright (c) 2016 Arthur Schiwon <blizzz@arthur-schiwon.de>
*
* @author Arthur Schiwon <blizzz@arthur-schiwon.de>
*
* @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/>
*
*/
define('CLI_TEST_RUN', true);
require_once __DIR__ . '/../../../../lib/base.php';
require_once __DIR__ . '/setup-scripts/config.php';

View File

@ -23,10 +23,9 @@
namespace OCA\User_LDAP\Tests\Integration\Lib;
use OCA\User_LDAP\Tests\Integration\AbstractIntegrationTest;
require_once __DIR__ . '/../../../../../lib/base.php';
require_once __DIR__ . '/../Bootstrap.php';
class IntegrationTestAccessGroupsMatchFilter extends AbstractIntegrationTest {
@ -118,7 +117,6 @@ class IntegrationTestAccessGroupsMatchFilter extends AbstractIntegrationTest {
}
}
require_once(__DIR__ . '/../setup-scripts/config.php');
$test = new IntegrationTestAccessGroupsMatchFilter($host, $port, $adn, $apwd, $bdn);
$test->init();
$test->run();

View File

@ -27,7 +27,7 @@ use OCA\User_LDAP\Tests\Integration\AbstractIntegrationTest;
use OCA\User_LDAP\Mapping\UserMapping;
use OCA\User_LDAP\User_LDAP;
require_once __DIR__ . '/../../../../../lib/base.php';
require_once __DIR__ . '/../Bootstrap.php';
class IntegrationTestBackupServer extends AbstractIntegrationTest {
/** @var UserMapping */
@ -113,7 +113,6 @@ class IntegrationTestBackupServer extends AbstractIntegrationTest {
}
}
require_once(__DIR__ . '/../setup-scripts/config.php');
$test = new IntegrationTestBackupServer($host, $port, $adn, $apwd, $bdn);
$test->init();
$test->run();

View File

@ -26,7 +26,7 @@ namespace OCA\User_LDAP\Tests\Integration\Lib;
use OCA\User_LDAP\Mapping\UserMapping;
use OCA\User_LDAP\Tests\Integration\AbstractIntegrationTest;
require_once __DIR__ . '/../../../../../lib/base.php';
require_once __DIR__ . '/../Bootstrap.php';
class IntegrationTestBatchApplyUserAttributes extends AbstractIntegrationTest {
/**
@ -68,7 +68,6 @@ class IntegrationTestBatchApplyUserAttributes extends AbstractIntegrationTest {
}
require_once(__DIR__ . '/../setup-scripts/config.php');
$test = new IntegrationTestBatchApplyUserAttributes($host, $port, $adn, $apwd, $bdn);
$test->init();
$test->run();

View File

@ -27,7 +27,7 @@ use OCA\User_LDAP\Tests\Integration\AbstractIntegrationTest;
use OCA\User_LDAP\Mapping\UserMapping;
use OCA\User_LDAP\User_LDAP;
require_once __DIR__ . '/../../../../../lib/base.php';
require_once __DIR__ . '/../Bootstrap.php';
class IntegrationTestConnect extends AbstractIntegrationTest {
/** @var UserMapping */
@ -161,7 +161,6 @@ class IntegrationTestConnect extends AbstractIntegrationTest {
}
}
require_once(__DIR__ . '/../setup-scripts/config.php');
$test = new IntegrationTestConnect($host, $port, $adn, $apwd, $bdn);
$test->init();
$test->run();

View File

@ -25,7 +25,7 @@ namespace OCA\User_LDAP\Tests\Integration\Lib;
use OCA\User_LDAP\Tests\Integration\AbstractIntegrationTest;
require_once __DIR__ . '/../../../../../lib/base.php';
require_once __DIR__ . '/../Bootstrap.php';
class IntegrationTestCountUsersByLoginName extends AbstractIntegrationTest {
@ -61,7 +61,6 @@ class IntegrationTestCountUsersByLoginName extends AbstractIntegrationTest {
}
}
require_once(__DIR__ . '/../setup-scripts/config.php');
$test = new IntegrationTestCountUsersByLoginName($host, $port, $adn, $apwd, $bdn);
$test->init();
$test->run();

View File

@ -27,7 +27,7 @@ use OCA\User_LDAP\Tests\Integration\AbstractIntegrationTest;
use OCA\User_LDAP\Mapping\UserMapping;
use OCA\User_LDAP\User_LDAP;
require_once __DIR__ . '/../../../../../lib/base.php';
require_once __DIR__ . '/../Bootstrap.php';
class IntegrationTestFetchUsersByLoginName extends AbstractIntegrationTest {
/** @var UserMapping */
@ -74,7 +74,6 @@ class IntegrationTestFetchUsersByLoginName extends AbstractIntegrationTest {
}
require_once(__DIR__ . '/../setup-scripts/config.php');
$test = new IntegrationTestFetchUsersByLoginName($host, $port, $adn, $apwd, $bdn);
$test->init();
$test->run();

View File

@ -27,7 +27,7 @@ use OCA\User_LDAP\Tests\Integration\AbstractIntegrationTest;
use OCA\User_LDAP\Mapping\UserMapping;
use OCA\User_LDAP\User_LDAP;
require_once __DIR__ . '/../../../../../lib/base.php';
require_once __DIR__ . '/../Bootstrap.php';
class IntegrationTestPaging extends AbstractIntegrationTest {
/** @var UserMapping */
@ -76,7 +76,6 @@ class IntegrationTestPaging extends AbstractIntegrationTest {
}
}
require_once(__DIR__ . '/../setup-scripts/config.php');
$test = new IntegrationTestPaging($host, $port, $adn, $apwd, $bdn);
$test->init();
$test->run();

View File

@ -28,7 +28,7 @@ use OCA\User_LDAP\Tests\Integration\AbstractIntegrationTest;
use OCA\User_LDAP\Mapping\UserMapping;
use OCA\User_LDAP\User_LDAP;
require_once __DIR__ . '/../../../../../lib/base.php';
require_once __DIR__ . '/../Bootstrap.php';
class IntegrationTestUserHome extends AbstractIntegrationTest {
/** @var UserMapping */
@ -169,7 +169,6 @@ class IntegrationTestUserHome extends AbstractIntegrationTest {
}
}
require_once(__DIR__ . '/../setup-scripts/config.php');
$test = new IntegrationTestUserHome($host, $port, $adn, $apwd, $bdn);
$test->init();
$test->run();

View File

@ -29,7 +29,7 @@ use OCA\User_LDAP\User\User;
use OCA\User_LDAP\Mapping\UserMapping;
use OCA\User_LDAP\Tests\Integration\AbstractIntegrationTest;
require_once __DIR__ . '/../../../../../../lib/base.php';
require_once __DIR__ . '/../../Bootstrap.php';
class IntegrationTestUserAvatar extends AbstractIntegrationTest {
/** @var UserMapping */
@ -148,7 +148,6 @@ class IntegrationTestUserAvatar extends AbstractIntegrationTest {
}
}
require_once(__DIR__ . '/../../setup-scripts/config.php');
$test = new IntegrationTestUserAvatar($host, $port, $adn, $apwd, $bdn);
$test->init();
$test->run();

View File

@ -26,7 +26,7 @@ namespace OCA\User_LDAP\Tests\Integration\Lib\User;
use OCA\User_LDAP\Mapping\UserMapping;
use OCA\User_LDAP\Tests\Integration\AbstractIntegrationTest;
require_once __DIR__ . '/../../../../../../lib/base.php';
require_once __DIR__ . '/../../Bootstrap.php';
class IntegrationTestUserDisplayName extends AbstractIntegrationTest {
/** @var UserMapping */
@ -100,7 +100,6 @@ class IntegrationTestUserDisplayName extends AbstractIntegrationTest {
}
}
require_once(__DIR__ . '/../../setup-scripts/config.php');
$test = new IntegrationTestUserDisplayName($host, $port, $adn, $apwd, $bdn);
$test->init();
$test->run();

View File

@ -569,7 +569,7 @@ $CONFIG = array(
* Setting this parameter to ``errorlog`` will use the PHP error_log function
* for logging.
*/
'log_type' => 'owncloud',
'log_type' => 'file',
/**
* Log file path for the Nextcloud logging type.

View File

@ -31,7 +31,7 @@ use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Output\OutputInterface;
class OwnCloud extends Command {
class File extends Command {
/** @var IConfig */
protected $config;
@ -43,8 +43,8 @@ class OwnCloud extends Command {
protected function configure() {
$this
->setName('log:owncloud')
->setDescription('manipulate ownCloud logging backend')
->setName('log:file')
->setDescription('manipulate logging backend')
->addOption(
'enable',
null,
@ -70,7 +70,7 @@ class OwnCloud extends Command {
$toBeSet = [];
if ($input->getOption('enable')) {
$toBeSet['log_type'] = 'owncloud';
$toBeSet['log_type'] = 'file';
}
if ($file = $input->getOption('file')) {
@ -89,12 +89,14 @@ class OwnCloud extends Command {
}
// display config
if ($this->config->getSystemValue('log_type', 'owncloud') === 'owncloud') {
// TODO: Drop backwards compatibility for config in the future
$logType = $this->config->getSystemValue('log_type', 'file');
if ($logType === 'file' || $logType === 'owncloud') {
$enabledText = 'enabled';
} else {
$enabledText = 'disabled';
}
$output->writeln('Log backend ownCloud: '.$enabledText);
$output->writeln('Log backend file: '.$enabledText);
$dataDir = $this->config->getSystemValue('datadirectory', \OC::$SERVERROOT.'/data');
$defaultLogFile = rtrim($dataDir, '/').'/nextcloud.log';

View File

@ -34,7 +34,7 @@ use Symfony\Component\Console\Output\OutputInterface;
class Manage extends Command {
const DEFAULT_BACKEND = 'owncloud';
const DEFAULT_BACKEND = 'file';
const DEFAULT_LOG_LEVEL = 2;
const DEFAULT_TIMEZONE = 'UTC';
@ -54,7 +54,7 @@ class Manage extends Command {
'backend',
null,
InputOption::VALUE_REQUIRED,
'set the logging backend [owncloud, syslog, errorlog]'
'set the logging backend [file, syslog, errorlog]'
)
->addOption(
'level',

View File

@ -71,7 +71,7 @@
background-image: url('../img/logo-icon.svg');
background-repeat: no-repeat;
background-size: 175px;
background-position: center 30px;
background-position: center;
width: 252px;
height: 120px;
margin: 0 auto;
@ -82,6 +82,7 @@
display: inline-block;
background-image: url('../img/logo-icon.svg');
background-repeat: no-repeat;
background-position: center center;
width: 62px;
height: 34px;
}

View File

@ -131,6 +131,7 @@ OC.L10N.register(
"Strong password" : "Starkes Passwort",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Ihr Webserver ist noch nicht hinreichend für Datei-Synchronisation konfiguriert, weil die WebDAV-Schnittstelle vermutlich nicht funktioniert.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Dein Web-Server ist nicht richtig eingerichtet um die folgende URL richtig aufzulösen \"{url}\". Weitere Informationen findest du in unserer <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dokumentation</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Dieser Server hat keine funktionierende Internetverbindung: Mehrere Ziele konnten nicht erreicht werden. Dies bedeutet, dass einige Funktionen, wie das Einhängen exernen Speichers, Benachrichtigungen über Updates oder die Installation von Drittanbieter-Apps nicht funktionieren. \nDer Zugriff auf entfernte Dateien und das Senden von E-Mail-Benachrichtigungen wird wahrscheinlich ebenfalls nicht funktionieren.\nEs wird empfohlen, die Internet-Verbindung für diesen Server zu aktivieren, wenn Du alle Funktionen nutzen möchtest.",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Es wurde kein PHP Memory Cache konfiguriert. Zur Erhöhung der Leistungsfähigkeit kann ein Memory-Cache konfiguriert werden. Weitere Informationen findest du in unserer <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dokumentation</a>.",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "PHP hat keine Leserechte auf /dev/urandom wovon aus Sicherheitsgründen höchst abzuraten ist. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dokumentation</a> zu finden.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Du verwendest derzeit PHP {version}. Wir empfehlen ein Upgrade deiner PHP-Version, um die <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">Geschwindigkeits- und Sicherheitsupdates zu nutzen, welche von der PHP-Gruppe bereitgestellt werden</a>, sobald diese deine Distribution unterstützt.",
@ -153,6 +154,10 @@ OC.L10N.register(
"Expiration" : "Ablaufdatum",
"Expiration date" : "Ablaufdatum",
"Choose a password for the public link" : "Wähle ein Passwort für den öffentlichen Link",
"Copied!" : "Kopiert!",
"Not supported!" : "Nicht unterstützt!",
"Press ⌘-C to copy." : "Zum Kopieren ⌘-C drücken.",
"Press Ctrl-C to copy." : "Zum Kopieren Strg-C drücken.",
"Resharing is not allowed" : "Weiterverteilen ist nicht erlaubt",
"Share link" : "Link teilen",
"Link" : "Link",

View File

@ -129,6 +129,7 @@
"Strong password" : "Starkes Passwort",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Ihr Webserver ist noch nicht hinreichend für Datei-Synchronisation konfiguriert, weil die WebDAV-Schnittstelle vermutlich nicht funktioniert.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Dein Web-Server ist nicht richtig eingerichtet um die folgende URL richtig aufzulösen \"{url}\". Weitere Informationen findest du in unserer <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dokumentation</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Dieser Server hat keine funktionierende Internetverbindung: Mehrere Ziele konnten nicht erreicht werden. Dies bedeutet, dass einige Funktionen, wie das Einhängen exernen Speichers, Benachrichtigungen über Updates oder die Installation von Drittanbieter-Apps nicht funktionieren. \nDer Zugriff auf entfernte Dateien und das Senden von E-Mail-Benachrichtigungen wird wahrscheinlich ebenfalls nicht funktionieren.\nEs wird empfohlen, die Internet-Verbindung für diesen Server zu aktivieren, wenn Du alle Funktionen nutzen möchtest.",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Es wurde kein PHP Memory Cache konfiguriert. Zur Erhöhung der Leistungsfähigkeit kann ein Memory-Cache konfiguriert werden. Weitere Informationen findest du in unserer <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dokumentation</a>.",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "PHP hat keine Leserechte auf /dev/urandom wovon aus Sicherheitsgründen höchst abzuraten ist. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dokumentation</a> zu finden.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Du verwendest derzeit PHP {version}. Wir empfehlen ein Upgrade deiner PHP-Version, um die <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">Geschwindigkeits- und Sicherheitsupdates zu nutzen, welche von der PHP-Gruppe bereitgestellt werden</a>, sobald diese deine Distribution unterstützt.",
@ -151,6 +152,10 @@
"Expiration" : "Ablaufdatum",
"Expiration date" : "Ablaufdatum",
"Choose a password for the public link" : "Wähle ein Passwort für den öffentlichen Link",
"Copied!" : "Kopiert!",
"Not supported!" : "Nicht unterstützt!",
"Press ⌘-C to copy." : "Zum Kopieren ⌘-C drücken.",
"Press Ctrl-C to copy." : "Zum Kopieren Strg-C drücken.",
"Resharing is not allowed" : "Weiterverteilen ist nicht erlaubt",
"Share link" : "Link teilen",
"Link" : "Link",

View File

@ -131,6 +131,7 @@ OC.L10N.register(
"Strong password" : "Starkes Passwort",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Ihr Webserver ist noch nicht hinreichend für Datei-Synchronisation konfiguriert, weil die WebDAV-Schnittstelle vermutlich defekt ist.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Dein Webserver ist nicht richtig konfiguriert um \"{url}\" aufzulösen. Weitere Informationen hierzu finden Sie in unserer a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dokumentation</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Dieser Server hat keine funktionierende Internetverbindung: Mehrere Ziele konnten nicht erreicht werden. Dies bedeutet, dass einige Funktionen, wie das Einhängen exernen Speichers, Benachrichtigungen über Updates oder die Installation von Drittanbieter-Apps nicht funktionieren. \nDer Zugriff auf entfernte Dateien und das Senden von E-Mail-Benachrichtigungen wird wahrscheinlich ebenfalls nicht funktionieren.\nEs wird empfohlen, die Internet-Verbindung für diesen Server zu aktivieren, wenn Sie alle Funktionen nutzen möchten.",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Es wurde kein PHP Memory Cache konfiguriert. Konfigurieren Sie zur Erhöhung der Leistungsfähigkeit, soweit verfügbar, einen Memory Cache. Weitere Informationen finden Sie in unserer <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dokumentation</a>.",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "/dev/urandom ist von PHP nicht lesbar, wovon aus Sicherheitsgründen dringend abgeraten wird. Weitere Informationen hierzu finden Sie in unserer <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dokumentation</a>.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Sie verwenden im Moment PHP {version}. Wir empfehlen ein Upgrade ihrer PHP Version, um die <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">Geschwindigkeits- und Sicherheitsupdates zu nutzen, welche von der PHP Gruppe bereitgestellt werden</a>, sobald diese ihre Distribution diese unterstützt.",
@ -153,6 +154,10 @@ OC.L10N.register(
"Expiration" : "Ablaufdatum",
"Expiration date" : "Ablaufdatum",
"Choose a password for the public link" : "Wählen Sie ein Passwort für den öffentlichen Link",
"Copied!" : "Kopiert!",
"Not supported!" : "Nicht unterstützt!",
"Press ⌘-C to copy." : "Zum Kopieren ⌘-C drücken.",
"Press Ctrl-C to copy." : "Zum Kopieren Strg-C drücken.",
"Resharing is not allowed" : "Das Weiterverteilen ist nicht erlaubt",
"Share link" : "Link teilen",
"Link" : "Link",

View File

@ -129,6 +129,7 @@
"Strong password" : "Starkes Passwort",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Ihr Webserver ist noch nicht hinreichend für Datei-Synchronisation konfiguriert, weil die WebDAV-Schnittstelle vermutlich defekt ist.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Dein Webserver ist nicht richtig konfiguriert um \"{url}\" aufzulösen. Weitere Informationen hierzu finden Sie in unserer a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dokumentation</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Dieser Server hat keine funktionierende Internetverbindung: Mehrere Ziele konnten nicht erreicht werden. Dies bedeutet, dass einige Funktionen, wie das Einhängen exernen Speichers, Benachrichtigungen über Updates oder die Installation von Drittanbieter-Apps nicht funktionieren. \nDer Zugriff auf entfernte Dateien und das Senden von E-Mail-Benachrichtigungen wird wahrscheinlich ebenfalls nicht funktionieren.\nEs wird empfohlen, die Internet-Verbindung für diesen Server zu aktivieren, wenn Sie alle Funktionen nutzen möchten.",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Es wurde kein PHP Memory Cache konfiguriert. Konfigurieren Sie zur Erhöhung der Leistungsfähigkeit, soweit verfügbar, einen Memory Cache. Weitere Informationen finden Sie in unserer <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dokumentation</a>.",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "/dev/urandom ist von PHP nicht lesbar, wovon aus Sicherheitsgründen dringend abgeraten wird. Weitere Informationen hierzu finden Sie in unserer <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dokumentation</a>.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Sie verwenden im Moment PHP {version}. Wir empfehlen ein Upgrade ihrer PHP Version, um die <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">Geschwindigkeits- und Sicherheitsupdates zu nutzen, welche von der PHP Gruppe bereitgestellt werden</a>, sobald diese ihre Distribution diese unterstützt.",
@ -151,6 +152,10 @@
"Expiration" : "Ablaufdatum",
"Expiration date" : "Ablaufdatum",
"Choose a password for the public link" : "Wählen Sie ein Passwort für den öffentlichen Link",
"Copied!" : "Kopiert!",
"Not supported!" : "Nicht unterstützt!",
"Press ⌘-C to copy." : "Zum Kopieren ⌘-C drücken.",
"Press Ctrl-C to copy." : "Zum Kopieren Strg-C drücken.",
"Resharing is not allowed" : "Das Weiterverteilen ist nicht erlaubt",
"Share link" : "Link teilen",
"Link" : "Link",

View File

@ -131,6 +131,7 @@ OC.L10N.register(
"Strong password" : "Password forte",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Il tuo server web non è configurato correttamente per consentire la sincronizzazione dei file poiché l'interfaccia WebDAV sembra essere danneggiata.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Il tuo server web non è configurato correttamente per risolvere \"{url}\". Ulteriori informazioni sono disponibili nella nostra <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentazione</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Questo server non ha una connessione a Internet funzionante: diversi dispositivi finali non sono raggiungibili. Ciò significa che alcune delle funzionalità come il montaggio di archivi esterni, le notifiche degli aggiornamenti o l'installazione di applicazioni di terze parti non funzioneranno. L'accesso remoto ai file e l'invio di email di notifica potrebbero non funzionare. Ti suggeriamo di abilitare la connessione a Internet del server se desideri disporre di tutte le funzionalità.",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Non è stata configurata alcuna cache di memoria. Per migliorare le prestazioni configura memcache, se disponibile. Ulteriori informazioni sono disponibili nella nostra <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentazione</a>.",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "/dev/urandom non è leggibile da PHP e ciò è vivamente sconsigliato per motivi di sicurezza. Ulteriori informazioni sono disponibili nella nostra <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentazione</a>.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Stai eseguendo attualmente PHP {version}. Ti esortiamo ad aggiornare la tua versione di PHP per trarre vantaggio dagli aggiornamenti in termini di <a target=\"_blank\" rel=\"noreferrer\" ref=\"{phpLink}\">prestazioni e sicurezza forniti dal PHP Group</a> non appena la tua distribuzione la supporta.",

View File

@ -129,6 +129,7 @@
"Strong password" : "Password forte",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Il tuo server web non è configurato correttamente per consentire la sincronizzazione dei file poiché l'interfaccia WebDAV sembra essere danneggiata.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Il tuo server web non è configurato correttamente per risolvere \"{url}\". Ulteriori informazioni sono disponibili nella nostra <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentazione</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Questo server non ha una connessione a Internet funzionante: diversi dispositivi finali non sono raggiungibili. Ciò significa che alcune delle funzionalità come il montaggio di archivi esterni, le notifiche degli aggiornamenti o l'installazione di applicazioni di terze parti non funzioneranno. L'accesso remoto ai file e l'invio di email di notifica potrebbero non funzionare. Ti suggeriamo di abilitare la connessione a Internet del server se desideri disporre di tutte le funzionalità.",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Non è stata configurata alcuna cache di memoria. Per migliorare le prestazioni configura memcache, se disponibile. Ulteriori informazioni sono disponibili nella nostra <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentazione</a>.",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "/dev/urandom non è leggibile da PHP e ciò è vivamente sconsigliato per motivi di sicurezza. Ulteriori informazioni sono disponibili nella nostra <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentazione</a>.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Stai eseguendo attualmente PHP {version}. Ti esortiamo ad aggiornare la tua versione di PHP per trarre vantaggio dagli aggiornamenti in termini di <a target=\"_blank\" rel=\"noreferrer\" ref=\"{phpLink}\">prestazioni e sicurezza forniti dal PHP Group</a> non appena la tua distribuzione la supporta.",

View File

@ -131,6 +131,7 @@ OC.L10N.register(
"Strong password" : "Senha forte",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Seu servidor web ainda não está configurado corretamente para permitir a sincronização de arquivos, pois a interface WebDAV parece ser desconfigurada.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Seu servidor web não está configurado corretamente para resolver \"{url}\". Mais informação pode ser encontrada na nossa <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentação</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Este servidor não tem nenhuma conexão com a Internet: Vários terminações finais não podem ser encontrados. Isso significa que alguns dos recursos como montagem de armazenamento externo, notificações sobre atualizações ou instalação de aplicativos de terceiros não vai funcionar. Acesso à arquivos remotamente e envio de e-mails de notificação podem não funcionar também. Sugerimos habilitar a conexão com a Internet para este servidor, se você quer ter todas as funcionalidades.",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Nenhum cache de memória foi configurado. Para melhorar o seu desempenho, por favor configurar um memcached se disponível. Mais informação pode ser encontrada na nossa <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentação</a>.",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "/dev/urandom não pode ser lido pelo PHP e é altamente desencorajado por razões de segurança. Mais informação pode ser encontrada na nossa <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentação</a>.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Você stá atualmente em executando PHP {version}. Nós o incentivamos a atualizar sua versão do PHP para aproveitar<a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">atualizações de segurança e desempenho proporcionados pelo Grupo PHP</a> assim que sua distribuição suportar.",

View File

@ -129,6 +129,7 @@
"Strong password" : "Senha forte",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Seu servidor web ainda não está configurado corretamente para permitir a sincronização de arquivos, pois a interface WebDAV parece ser desconfigurada.",
"Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Seu servidor web não está configurado corretamente para resolver \"{url}\". Mais informação pode ser encontrada na nossa <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentação</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Este servidor não tem nenhuma conexão com a Internet: Vários terminações finais não podem ser encontrados. Isso significa que alguns dos recursos como montagem de armazenamento externo, notificações sobre atualizações ou instalação de aplicativos de terceiros não vai funcionar. Acesso à arquivos remotamente e envio de e-mails de notificação podem não funcionar também. Sugerimos habilitar a conexão com a Internet para este servidor, se você quer ter todas as funcionalidades.",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Nenhum cache de memória foi configurado. Para melhorar o seu desempenho, por favor configurar um memcached se disponível. Mais informação pode ser encontrada na nossa <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentação</a>.",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "/dev/urandom não pode ser lido pelo PHP e é altamente desencorajado por razões de segurança. Mais informação pode ser encontrada na nossa <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentação</a>.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Você stá atualmente em executando PHP {version}. Nós o incentivamos a atualizar sua versão do PHP para aproveitar<a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">atualizações de segurança e desempenho proporcionados pelo Grupo PHP</a> assim que sua distribuição suportar.",

View File

@ -99,7 +99,7 @@ if (\OC::$server->getConfig()->getSystemValue('installed', false)) {
);
$application->add(new OC\Core\Command\Log\Manage(\OC::$server->getConfig()));
$application->add(new OC\Core\Command\Log\OwnCloud(\OC::$server->getConfig()));
$application->add(new OC\Core\Command\Log\File(\OC::$server->getConfig()));
$view = new \OC\Files\View();
$util = new \OC\Encryption\Util(

View File

@ -115,6 +115,7 @@ OC.L10N.register(
"The username is already being used" : "Uživatelské jméno je již využíváno",
"Login canceled by app" : "Přihlášení zrušeno aplikací",
"User disabled" : "Uživatel zakázán",
"Help" : "Nápověda",
"Personal" : "Osobní",
"Users" : "Uživatelé",
"Admin" : "Administrace",

View File

@ -113,6 +113,7 @@
"The username is already being used" : "Uživatelské jméno je již využíváno",
"Login canceled by app" : "Přihlášení zrušeno aplikací",
"User disabled" : "Uživatel zakázán",
"Help" : "Nápověda",
"Personal" : "Osobní",
"Users" : "Uživatelé",
"Admin" : "Administrace",

View File

@ -330,6 +330,12 @@ class DIContainer extends SimpleContainer implements IAppContainer {
);
});
/**
* App Framework default arguments
*/
$this->registerParameter('corsMethods', 'PUT, POST, GET, DELETE, PATCH');
$this->registerParameter('corsAllowedHeaders', 'Authorization, Content-Type, Accept');
$this->registerParameter('corsMaxAge', 1728000);
/**
* Middleware

View File

@ -26,7 +26,10 @@
namespace OC\Files\Node;
use OC\DB\QueryBuilder\Literal;
use OCP\DB\QueryBuilder\IQueryBuilder;
use OCP\Files\FileInfo;
use OCP\Files\Mount\IMountPoint;
use OCP\Files\NotFoundException;
use OCP\Files\NotPermittedException;
@ -358,4 +361,79 @@ class Folder extends Node implements \OCP\Files\Folder {
$uniqueName = \OC_Helper::buildNotExistingFileNameForView($this->getPath(), $name, $this->view);
return trim($this->getRelativePath($uniqueName), '/');
}
/**
* @param int $limit
* @param int $offset
* @return \OCP\Files\Node[]
*/
public function getRecent($limit, $offset = 0) {
$mimetypeLoader = \OC::$server->getMimeTypeLoader();
$mounts = $this->root->getMountsIn($this->path);
$mounts[] = $this->getMountPoint();
$mounts = array_filter($mounts, function (IMountPoint $mount) {
return $mount->getStorage();
});
$storageIds = array_map(function (IMountPoint $mount) {
return $mount->getStorage()->getCache()->getNumericStorageId();
}, $mounts);
/** @var IMountPoint[] $mountMap */
$mountMap = array_combine($storageIds, $mounts);
$folderMimetype = $mimetypeLoader->getId(FileInfo::MIMETYPE_FOLDER);
//todo look into options of filtering path based on storage id (only search in files/ for home storage, filter by share root for shared, etc)
$builder = \OC::$server->getDatabaseConnection()->getQueryBuilder();
$query = $builder
->select('f.*')
->from('filecache', 'f')
->andWhere($builder->expr()->in('f.storage', $builder->createNamedParameter($storageIds, IQueryBuilder::PARAM_INT_ARRAY)))
->andWhere($builder->expr()->orX(
// handle non empty folders separate
$builder->expr()->neq('f.mimetype', $builder->createNamedParameter($folderMimetype, IQueryBuilder::PARAM_INT)),
$builder->expr()->eq('f.size', new Literal(0))
))
->orderBy('f.mtime', 'DESC')
->setMaxResults($limit)
->setFirstResult($offset);
$result = $query->execute()->fetchAll();
$files = array_filter(array_map(function (array $entry) use ($mountMap, $mimetypeLoader) {
$mount = $mountMap[$entry['storage']];
$entry['internalPath'] = $entry['path'];
$entry['mimetype'] = $mimetypeLoader->getMimetypeById($entry['mimetype']);
$entry['mimepart'] = $mimetypeLoader->getMimetypeById($entry['mimepart']);
$path = $this->getAbsolutePath($mount, $entry['path']);
if (is_null($path)) {
return null;
}
$fileInfo = new \OC\Files\FileInfo($path, $mount->getStorage(), $entry['internalPath'], $entry, $mount);
return $this->root->createNode($fileInfo->getPath(), $fileInfo);
}, $result));
return array_values(array_filter($files, function (Node $node) {
$relative = $this->getRelativePath($node->getPath());
return $relative !== null && $relative !== '/';
}));
}
private function getAbsolutePath(IMountPoint $mount, $path) {
$storage = $mount->getStorage();
if ($storage->instanceOfStorage('\OC\Files\Storage\Wrapper\Jail')) {
/** @var \OC\Files\Storage\Wrapper\Jail $storage */
$jailRoot = $storage->getSourcePath('');
$rootLength = strlen($jailRoot) + 1;
if ($path === $jailRoot) {
return $mount->getMountPoint();
} else if (substr($path, 0, $rootLength) === $jailRoot . '/') {
return $mount->getMountPoint() . substr($path, $rootLength);
} else {
return null;
}
} else {
return $mount->getMountPoint() . $path;
}
}
}

View File

@ -471,5 +471,10 @@ class LazyRoot implements IRootFolder {
return $this->__call(__FUNCTION__, func_get_args());
}
/**
* @inheritDoc
*/
public function getRecent($limit, $offset = 0) {
return $this->__call(__FUNCTION__, func_get_args());
}
}

View File

@ -377,7 +377,7 @@ class Jail extends Wrapper {
*/
public function getCache($path = '', $storage = null) {
if (!$storage) {
$storage = $this;
$storage = $this->storage;
}
$sourceCache = $this->storage->getCache($this->getSourcePath($path), $storage);
return new CacheJail($sourceCache, $this->rootPath);

View File

@ -103,7 +103,12 @@ class Log implements ILogger {
// FIXME: Add this for backwards compatibility, should be fixed at some point probably
if($logger === null) {
$this->logger = 'OC\\Log\\'.ucfirst($this->config->getValue('log_type', 'owncloud'));
// TODO: Drop backwards compatibility for config in the future
$logType = $this->config->getValue('log_type', 'file');
if($logType==='owncloud') {
$logType = 'file';
}
$this->logger = 'OC\\Log\\'.ucfirst($logType);
call_user_func(array($this->logger, 'init'));
} else {
$this->logger = $logger;

View File

@ -39,7 +39,7 @@ namespace OC\Log;
* Log is saved at data/nextcloud.log (on default)
*/
class Owncloud {
class File {
static protected $logFile;
/**

View File

@ -365,8 +365,9 @@ class Server extends ServerContainer implements IServerContainer {
);
});
$this->registerService('Logger', function (Server $c) {
$logClass = $c->query('AllConfig')->getSystemValue('log_type', 'owncloud');
$logger = 'OC\\Log\\' . ucfirst($logClass);
$logClass = $c->query('AllConfig')->getSystemValue('log_type', 'file');
// TODO: Drop backwards compatibility for config in the future
$logger = 'OC\\Log\\' . ucfirst($logClass=='owncloud' ? 'file' : $logClass);
call_user_func(array($logger, 'init'));
return new Log($logger);

View File

@ -169,7 +169,7 @@ class OC_App {
// Register on PSR-4 composer autoloader
$appNamespace = \OC\AppFramework\App::buildAppNamespace($app);
\OC::$composerAutoloader->addPsr4($appNamespace . '\\', $path . '/lib/', true);
if (defined('PHPUNIT_RUN')) {
if (defined('PHPUNIT_RUN') || defined('CLI_TEST_RUN')) {
\OC::$composerAutoloader->addPsr4($appNamespace . '\\Tests\\', $path . '/tests/', true);
}

View File

@ -58,6 +58,11 @@ interface FileInfo {
*/
const SPACE_UNLIMITED = -3;
/**
* @since 9.1.0
*/
const MIMETYPE_FOLDER = 'httpd/unix-directory';
/**
* Get the Etag of the file or folder
*

View File

@ -175,4 +175,12 @@ interface Folder extends Node {
* @since 8.1.0
*/
public function getNonExistingName($name);
/**
* @param int $limit
* @param int $offset
* @return \OCP\Files\Node[]
* @since 9.1.0
*/
public function getRecent($limit, $offset = 0);
}

View File

@ -174,7 +174,8 @@ class Application extends App {
$c->query('URLGenerator'),
$c->query('Util'),
$c->query('L10N'),
$c->query('Checker')
$c->query('Checker'),
$c->query('Logger')
);
});

View File

@ -36,6 +36,7 @@ use OCP\AppFramework\Http\RedirectResponse;
use OCP\Http\Client\IClientService;
use OCP\IConfig;
use OCP\IL10N;
use OCP\ILogger;
use OCP\IRequest;
use OC_Util;
use OCP\IURLGenerator;
@ -56,6 +57,8 @@ class CheckSetupController extends Controller {
private $l10n;
/** @var Checker */
private $checker;
/** @var ILogger */
private $logger;
/**
* @param string $AppName
@ -66,6 +69,7 @@ class CheckSetupController extends Controller {
* @param \OC_Util $util
* @param IL10N $l10n
* @param Checker $checker
* @param ILogger $logger
*/
public function __construct($AppName,
IRequest $request,
@ -74,7 +78,8 @@ class CheckSetupController extends Controller {
IURLGenerator $urlGenerator,
\OC_Util $util,
IL10N $l10n,
Checker $checker) {
Checker $checker,
ILogger $logger) {
parent::__construct($AppName, $request);
$this->config = $config;
$this->clientService = $clientService;
@ -82,6 +87,7 @@ class CheckSetupController extends Controller {
$this->urlGenerator = $urlGenerator;
$this->l10n = $l10n;
$this->checker = $checker;
$this->logger = $logger;
}
/**
@ -118,6 +124,7 @@ class CheckSetupController extends Controller {
$client->get($httpSiteName);
$client->get($httpsSiteName);
} catch (\Exception $e) {
$this->logger->logException($e, ['app' => 'internet_connection_check']);
return false;
}
return true;

View File

@ -93,8 +93,8 @@ class LogSettingsController extends Controller {
*/
public function getEntries($count=50, $offset=0) {
return new JSONResponse([
'data' => \OC\Log\Owncloud::getEntries($count, $offset),
'remain' => count(\OC\Log\Owncloud::getEntries(1, $offset + $count)) !== 0,
'data' => \OC\Log\File::getEntries($count, $offset),
'remain' => count(\OC\Log\File::getEntries(1, $offset + $count)) !== 0,
]);
}
@ -106,7 +106,7 @@ class LogSettingsController extends Controller {
* @return StreamResponse
*/
public function download() {
$resp = new StreamResponse(\OC\Log\Owncloud::getLogFilePath());
$resp = new StreamResponse(\OC\Log\File::getLogFilePath());
$resp->addHeader('Content-Type', 'application/octet-stream');
$resp->addHeader('Content-Disposition', 'attachment; filename="nextcloud.log"');
return $resp;

View File

@ -44,12 +44,13 @@ OC_Util::addScript('files', 'jquery.fileupload');
\OC::$server->getEventDispatcher()->dispatch('OC\Settings\Admin::loadAdditionalScripts');
$showLog = (\OC::$server->getConfig()->getSystemValue('log_type', 'owncloud') === 'owncloud');
$logType = \OC::$server->getConfig()->getSystemValue('log_type', 'file');
$showLog = ($logType === 'file' || $logType === 'owncloud');
$numEntriesToLoad = 3;
$entries = \OC\Log\Owncloud::getEntries($numEntriesToLoad + 1);
$entries = \OC\Log\File::getEntries($numEntriesToLoad + 1);
$entriesRemaining = count($entries) > $numEntriesToLoad;
$entries = array_slice($entries, 0, $numEntriesToLoad);
$logFilePath = \OC\Log\Owncloud::getLogFilePath();
$logFilePath = \OC\Log\File::getLogFilePath();
$doesLogFileExist = file_exists($logFilePath);
$logFileSize = 0;
if($doesLogFileExist) {

View File

@ -445,6 +445,9 @@ span.version {
table.grid td.date{
white-space: nowrap;
}
#log-section p {
margin-top:20px;
}
/* ADMIN */
#security-warning li {

View File

@ -211,11 +211,11 @@ OC.L10N.register(
"Store credentials" : "Ukládat přihlašovací údaje",
"Test email settings" : "Test nastavení emailu",
"Send email" : "Odeslat email",
"What to log" : "Co se má logovat",
"Download logfile" : "Stáhnout soubor logu",
"More" : "Více",
"Less" : "Méně",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "Soubor logu je větší než 100 MB. Jeho stažení zabere nějaký čas!",
"What to log" : "Co se má logovat",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "Je použita databáze SQLite. Pro větší instalace doporučujeme přejít na robustnější databázi.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Obzvláště při používání klientské aplikace pro synchronizaci s desktopem není SQLite doporučeno.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Pro migraci na jinou databázi použijte v příkazovém řádku nástroj: 'occ db:convert-type' nebo nahlédněte do <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentace ↗</a>.",

View File

@ -209,11 +209,11 @@
"Store credentials" : "Ukládat přihlašovací údaje",
"Test email settings" : "Test nastavení emailu",
"Send email" : "Odeslat email",
"What to log" : "Co se má logovat",
"Download logfile" : "Stáhnout soubor logu",
"More" : "Více",
"Less" : "Méně",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "Soubor logu je větší než 100 MB. Jeho stažení zabere nějaký čas!",
"What to log" : "Co se má logovat",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "Je použita databáze SQLite. Pro větší instalace doporučujeme přejít na robustnější databázi.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Obzvláště při používání klientské aplikace pro synchronizaci s desktopem není SQLite doporučeno.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Pro migraci na jinou databázi použijte v příkazovém řádku nástroj: 'occ db:convert-type' nebo nahlédněte do <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentace ↗</a>.",

View File

@ -208,11 +208,11 @@ OC.L10N.register(
"Store credentials" : "Anmeldeinformationen speichern",
"Test email settings" : "E-Mail-Einstellungen testen",
"Send email" : "E-Mail senden",
"What to log" : "Was für ein Protokoll",
"Download logfile" : "Logdatei herunterladen",
"More" : "Mehr",
"Less" : "Weniger",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "Die Logdatei ist größer als 100 MB. Es kann etwas Zeit beanspruchen, sie herunterzuladen!",
"What to log" : "Was für ein Protokoll",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite wird als Datenbank verwendet. Bei größeren Installationen wird empfohlen, auf ein anderes Datenbank-Backend zu wechseln.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Insbesondere bei der Nutzung des Desktop Clients zur Dateisynchronisierung wird vom Einsatz von SQLite abgeraten.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Um zu einer anderen Datenbank zu migrieren, benutze bitte die Kommandozeile: 'occ db:convert-type', oder in die <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">Dokumentation ↗</a> schauen.",
@ -226,7 +226,7 @@ OC.L10N.register(
"Developer documentation" : "Dokumentation für Entwickler",
"Experimental applications ahead" : "Experimentelle Apps nachfolgend",
"Experimental apps are not checked for security issues, new or known to be unstable and under heavy development. Installing them can cause data loss or security breaches." : "Experimentelle Apps sind nicht auf Sicherheitsprobleme hin überprüft, sind neu oder bekanntermaßen instabil und befinden sich in intensiver Entwicklung. Ihre Installation kann Datenverlust oder Sicherheitslücken hervorrufen.",
"by %s" : "durch %s",
"by %s" : "von %s",
"%s-licensed" : "%s-lizensiert",
"Documentation:" : "Dokumentation:",
"User documentation" : "Dokumentation für Benutzer",

View File

@ -206,11 +206,11 @@
"Store credentials" : "Anmeldeinformationen speichern",
"Test email settings" : "E-Mail-Einstellungen testen",
"Send email" : "E-Mail senden",
"What to log" : "Was für ein Protokoll",
"Download logfile" : "Logdatei herunterladen",
"More" : "Mehr",
"Less" : "Weniger",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "Die Logdatei ist größer als 100 MB. Es kann etwas Zeit beanspruchen, sie herunterzuladen!",
"What to log" : "Was für ein Protokoll",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite wird als Datenbank verwendet. Bei größeren Installationen wird empfohlen, auf ein anderes Datenbank-Backend zu wechseln.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Insbesondere bei der Nutzung des Desktop Clients zur Dateisynchronisierung wird vom Einsatz von SQLite abgeraten.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Um zu einer anderen Datenbank zu migrieren, benutze bitte die Kommandozeile: 'occ db:convert-type', oder in die <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">Dokumentation ↗</a> schauen.",
@ -224,7 +224,7 @@
"Developer documentation" : "Dokumentation für Entwickler",
"Experimental applications ahead" : "Experimentelle Apps nachfolgend",
"Experimental apps are not checked for security issues, new or known to be unstable and under heavy development. Installing them can cause data loss or security breaches." : "Experimentelle Apps sind nicht auf Sicherheitsprobleme hin überprüft, sind neu oder bekanntermaßen instabil und befinden sich in intensiver Entwicklung. Ihre Installation kann Datenverlust oder Sicherheitslücken hervorrufen.",
"by %s" : "durch %s",
"by %s" : "von %s",
"%s-licensed" : "%s-lizensiert",
"Documentation:" : "Dokumentation:",
"User documentation" : "Dokumentation für Benutzer",

View File

@ -209,11 +209,11 @@ OC.L10N.register(
"Store credentials" : "Anmeldeinformationen speichern",
"Test email settings" : "E-Mail-Einstellungen testen",
"Send email" : "E-Mail senden",
"What to log" : "Was geloggt wird",
"Download logfile" : "Logdatei herunterladen",
"More" : "Mehr",
"Less" : "Weniger",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "Die Logdatei ist größer als 100 MB. Es kann etwas Zeit beanspruchen, sie herunterzuladen!",
"What to log" : "Was geloggt wird",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite wird als Datenbank verwendet. Bei größeren Installationen wird empfohlen, auf ein anderes Datenbank-Backend zu wechseln.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Insbesondere bei der Nutzung des Desktop Clients zur Dateisynchronisierung wird vom Einsatz von SQLite abgeraten.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Um zu einer anderen Datenbank zu migrieren, benutzen Sie bitte die Kommandozeile: 'occ db:convert-type', oder in die <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">Dokumentation ↗</a> schauen.",
@ -227,7 +227,7 @@ OC.L10N.register(
"Developer documentation" : "Dokumentation für Entwickler",
"Experimental applications ahead" : "Experimentelle Apps nachfolgend",
"Experimental apps are not checked for security issues, new or known to be unstable and under heavy development. Installing them can cause data loss or security breaches." : "Experimentelle Apps sind nicht auf Sicherheitsprobleme hin überprüft, sind neu oder bekanntermaßen instabil und befinden sich in intensiver Entwicklung. Ihre Installation kann Datenverlust oder Sicherheitslücken hervorrufen.",
"by %s" : "durch %s",
"by %s" : "von %s",
"%s-licensed" : "%s-Lizensiert",
"Documentation:" : "Dokumentation:",
"User documentation" : "Dokumentation für Benutzer",

View File

@ -207,11 +207,11 @@
"Store credentials" : "Anmeldeinformationen speichern",
"Test email settings" : "E-Mail-Einstellungen testen",
"Send email" : "E-Mail senden",
"What to log" : "Was geloggt wird",
"Download logfile" : "Logdatei herunterladen",
"More" : "Mehr",
"Less" : "Weniger",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "Die Logdatei ist größer als 100 MB. Es kann etwas Zeit beanspruchen, sie herunterzuladen!",
"What to log" : "Was geloggt wird",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite wird als Datenbank verwendet. Bei größeren Installationen wird empfohlen, auf ein anderes Datenbank-Backend zu wechseln.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Insbesondere bei der Nutzung des Desktop Clients zur Dateisynchronisierung wird vom Einsatz von SQLite abgeraten.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Um zu einer anderen Datenbank zu migrieren, benutzen Sie bitte die Kommandozeile: 'occ db:convert-type', oder in die <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">Dokumentation ↗</a> schauen.",
@ -225,7 +225,7 @@
"Developer documentation" : "Dokumentation für Entwickler",
"Experimental applications ahead" : "Experimentelle Apps nachfolgend",
"Experimental apps are not checked for security issues, new or known to be unstable and under heavy development. Installing them can cause data loss or security breaches." : "Experimentelle Apps sind nicht auf Sicherheitsprobleme hin überprüft, sind neu oder bekanntermaßen instabil und befinden sich in intensiver Entwicklung. Ihre Installation kann Datenverlust oder Sicherheitslücken hervorrufen.",
"by %s" : "durch %s",
"by %s" : "von %s",
"%s-licensed" : "%s-Lizensiert",
"Documentation:" : "Dokumentation:",
"User documentation" : "Dokumentation für Benutzer",

View File

@ -200,11 +200,11 @@ OC.L10N.register(
"Store credentials" : "Store credentials",
"Test email settings" : "Test email settings",
"Send email" : "Send email",
"What to log" : "What to log",
"Download logfile" : "Download logfile",
"More" : "More",
"Less" : "Less",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "The logfile is larger than 100 MB. Downloading it may take some time!",
"What to log" : "What to log",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite is used as database. For larger installations, we recommend you switch to a different database backend.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Especially when using the desktop client for file syncing, the use of SQLite is discouraged.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>.",

View File

@ -198,11 +198,11 @@
"Store credentials" : "Store credentials",
"Test email settings" : "Test email settings",
"Send email" : "Send email",
"What to log" : "What to log",
"Download logfile" : "Download logfile",
"More" : "More",
"Less" : "Less",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "The logfile is larger than 100 MB. Downloading it may take some time!",
"What to log" : "What to log",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite is used as database. For larger installations, we recommend you switch to a different database backend.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Especially when using the desktop client for file syncing, the use of SQLite is discouraged.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>.",

View File

@ -211,11 +211,11 @@ OC.L10N.register(
"Store credentials" : "Almacenar credenciales",
"Test email settings" : "Probar configuración de correo electrónico",
"Send email" : "Enviar mensaje",
"What to log" : "Que registrar",
"Download logfile" : "Descargar archivo de registro",
"More" : "Más",
"Less" : "Menos",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "El archivo de registro es mayor de 100 MB. Descargarlo puede tardar.",
"What to log" : "Que registrar",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "Se utiliza SQLite como base de datos. Para instalaciones mas grandes se recomiende cambiar a otro sistema de base de datos. ",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "El uso de SQLite está desaconsejado especialmente cuando se usa el cliente de escritorio para sincronizar los ficheros.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Para migrar a otra base de datos usa la herramienta de línea de comandos 'occ db:convert-type' o mira la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación ↗</a>.",

View File

@ -209,11 +209,11 @@
"Store credentials" : "Almacenar credenciales",
"Test email settings" : "Probar configuración de correo electrónico",
"Send email" : "Enviar mensaje",
"What to log" : "Que registrar",
"Download logfile" : "Descargar archivo de registro",
"More" : "Más",
"Less" : "Menos",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "El archivo de registro es mayor de 100 MB. Descargarlo puede tardar.",
"What to log" : "Que registrar",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "Se utiliza SQLite como base de datos. Para instalaciones mas grandes se recomiende cambiar a otro sistema de base de datos. ",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "El uso de SQLite está desaconsejado especialmente cuando se usa el cliente de escritorio para sincronizar los ficheros.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Para migrar a otra base de datos usa la herramienta de línea de comandos 'occ db:convert-type' o mira la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación ↗</a>.",

View File

@ -183,11 +183,11 @@ OC.L10N.register(
"Store credentials" : "Säilytä tilitiedot",
"Test email settings" : "Testaa sähköpostiasetukset",
"Send email" : "Lähetä sähköpostiviesti",
"What to log" : "Mitä kerätään lokiin",
"Download logfile" : "Lataa lokitiedosto",
"More" : "Enemmän",
"Less" : "Vähemmän",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "Lokitiedosto on kooltaan yli 100 megatavua. Sen lataaminen saattaa kestää hetken.",
"What to log" : "Mitä kerätään lokiin",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLitea käytetään tietokantana. Suuria asennuksia varten on suositeltavaa vaihtaa muuhun tietokantaan.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Varsinkin työpöytäsovelluksen tiedostosynkronointia käyttäessä SQLiten käyttö ei ole suositeltavaa.",
"How to do backups" : "Kuinka tehdä varmuuskopioita",

View File

@ -181,11 +181,11 @@
"Store credentials" : "Säilytä tilitiedot",
"Test email settings" : "Testaa sähköpostiasetukset",
"Send email" : "Lähetä sähköpostiviesti",
"What to log" : "Mitä kerätään lokiin",
"Download logfile" : "Lataa lokitiedosto",
"More" : "Enemmän",
"Less" : "Vähemmän",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "Lokitiedosto on kooltaan yli 100 megatavua. Sen lataaminen saattaa kestää hetken.",
"What to log" : "Mitä kerätään lokiin",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLitea käytetään tietokantana. Suuria asennuksia varten on suositeltavaa vaihtaa muuhun tietokantaan.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Varsinkin työpöytäsovelluksen tiedostosynkronointia käyttäessä SQLiten käyttö ei ole suositeltavaa.",
"How to do backups" : "Kuinka tehdä varmuuskopioita",

View File

@ -211,11 +211,11 @@ OC.L10N.register(
"Store credentials" : "Enregistrer les identifiants",
"Test email settings" : "Tester les paramètres e-mail",
"Send email" : "Envoyer un e-mail",
"What to log" : "Ce qu'il faut journaliser",
"Download logfile" : "Télécharger le fichier de journalisation",
"More" : "Plus",
"Less" : "Moins",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "La taille du fichier journal excède 100 Mo. Le télécharger peut prendre un certain temps!",
"What to log" : "Ce qu'il faut journaliser",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite est actuellement utilisé comme gestionnaire de base de données. Pour des installations plus volumineuses, nous vous conseillons d'utiliser un autre gestionnaire de base de données.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "L'utilisation de SQLite est particulièrement déconseillée si vous utilisez le client de bureau pour synchroniser vos données.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Pour migrer vers un autre type de base de données, utilisez la ligne de commande : 'occ db:convert-type' ou consultez la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>.",

View File

@ -209,11 +209,11 @@
"Store credentials" : "Enregistrer les identifiants",
"Test email settings" : "Tester les paramètres e-mail",
"Send email" : "Envoyer un e-mail",
"What to log" : "Ce qu'il faut journaliser",
"Download logfile" : "Télécharger le fichier de journalisation",
"More" : "Plus",
"Less" : "Moins",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "La taille du fichier journal excède 100 Mo. Le télécharger peut prendre un certain temps!",
"What to log" : "Ce qu'il faut journaliser",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite est actuellement utilisé comme gestionnaire de base de données. Pour des installations plus volumineuses, nous vous conseillons d'utiliser un autre gestionnaire de base de données.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "L'utilisation de SQLite est particulièrement déconseillée si vous utilisez le client de bureau pour synchroniser vos données.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Pour migrer vers un autre type de base de données, utilisez la ligne de commande : 'occ db:convert-type' ou consultez la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>.",

View File

@ -197,11 +197,11 @@ OC.L10N.register(
"Store credentials" : "שמירת אישורים",
"Test email settings" : "בדיקת הגדרות דואר אלקטרוני",
"Send email" : "שליחת דואר אלקטרוני",
"What to log" : "מה לנטר בלוג",
"Download logfile" : "הורדת קובץ לוג",
"More" : "יותר",
"Less" : "פחות",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "קובץ הלוג גדול מ- 100 מגה-בייט. הורדה עלולה לקחת זמן רב!",
"What to log" : "מה לנטר בלוג",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "המערכת משתמשת ב- SQLite כמסד נתונים. להתקנות גדולות אנו ממליצים לעבור למסדי נתונים צד אחורי אחרים.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "במיוחד כאשר משתמשים במחשב שולחני לסנכרון קבצים השימוש ב SQLite אינו מומלץ.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "למעבר למסד נתונים אחר יש להשתמש בכלי שורת פקודה: 'occ db:convert-type', או לעיין ב- <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">תיעוד↗</a>.",

View File

@ -195,11 +195,11 @@
"Store credentials" : "שמירת אישורים",
"Test email settings" : "בדיקת הגדרות דואר אלקטרוני",
"Send email" : "שליחת דואר אלקטרוני",
"What to log" : "מה לנטר בלוג",
"Download logfile" : "הורדת קובץ לוג",
"More" : "יותר",
"Less" : "פחות",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "קובץ הלוג גדול מ- 100 מגה-בייט. הורדה עלולה לקחת זמן רב!",
"What to log" : "מה לנטר בלוג",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "המערכת משתמשת ב- SQLite כמסד נתונים. להתקנות גדולות אנו ממליצים לעבור למסדי נתונים צד אחורי אחרים.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "במיוחד כאשר משתמשים במחשב שולחני לסנכרון קבצים השימוש ב SQLite אינו מומלץ.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "למעבר למסד נתונים אחר יש להשתמש בכלי שורת פקודה: 'occ db:convert-type', או לעיין ב- <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">תיעוד↗</a>.",

View File

@ -199,11 +199,11 @@ OC.L10N.register(
"Store credentials" : "Azonosítók eltárolása",
"Test email settings" : "Az e-mail beállítások ellenőrzése",
"Send email" : "E-mail küldése",
"What to log" : "Mit naplózzon",
"Download logfile" : "Naplófájl letöltése",
"More" : "Több",
"Less" : "Kevesebb",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "A naplófájl 100MB-nál nagyobb. A letöltése hosszabb időt vehet igénybe.",
"What to log" : "Mit naplózzon",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "Adatbázisként az SQLite-ot fogjuk használni. Nagyobb telepítések esetén javasoljuk, hogy váltson másik adatbázis háttérkiszolgálóra",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Amikor az asztali klienset használja fálj szinkronizációra, akkor az SQLite használata nem ajánlott.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Más adatbázisról való áttéréshez használja a parancssort: 'occ db:convert-type', vagy keresse fel a <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentációt ↗</a>.",

View File

@ -197,11 +197,11 @@
"Store credentials" : "Azonosítók eltárolása",
"Test email settings" : "Az e-mail beállítások ellenőrzése",
"Send email" : "E-mail küldése",
"What to log" : "Mit naplózzon",
"Download logfile" : "Naplófájl letöltése",
"More" : "Több",
"Less" : "Kevesebb",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "A naplófájl 100MB-nál nagyobb. A letöltése hosszabb időt vehet igénybe.",
"What to log" : "Mit naplózzon",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "Adatbázisként az SQLite-ot fogjuk használni. Nagyobb telepítések esetén javasoljuk, hogy váltson másik adatbázis háttérkiszolgálóra",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Amikor az asztali klienset használja fálj szinkronizációra, akkor az SQLite használata nem ajánlott.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Más adatbázisról való áttéréshez használja a parancssort: 'occ db:convert-type', vagy keresse fel a <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentációt ↗</a>.",

View File

@ -174,11 +174,11 @@ OC.L10N.register(
"Store credentials" : "Geyma auðkenni",
"Test email settings" : "Prófa tölvupóststillingar",
"Send email" : "Senda tölvupóst",
"What to log" : "Hvað á að skrá í annál",
"Download logfile" : "Sækja annál",
"More" : "Meira",
"Less" : "Minna",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "Annállinn er stærri en 100 MB.Þetta gæti tekið nokkra stund!",
"What to log" : "Hvað á að skrá í annál",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite er notað sem gagnagrunnur. Fyrir stærri uppsetningar mælum við með að velja annan gagnagrunnsbakenda.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Sérstaklega þegar tölvu forrit er notað til samræmingar þá er ekki mælt með notkunn SQLite.",
"How to do backups" : "Hvernig á að taka öryggisafrit",

View File

@ -172,11 +172,11 @@
"Store credentials" : "Geyma auðkenni",
"Test email settings" : "Prófa tölvupóststillingar",
"Send email" : "Senda tölvupóst",
"What to log" : "Hvað á að skrá í annál",
"Download logfile" : "Sækja annál",
"More" : "Meira",
"Less" : "Minna",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "Annállinn er stærri en 100 MB.Þetta gæti tekið nokkra stund!",
"What to log" : "Hvað á að skrá í annál",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite er notað sem gagnagrunnur. Fyrir stærri uppsetningar mælum við með að velja annan gagnagrunnsbakenda.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Sérstaklega þegar tölvu forrit er notað til samræmingar þá er ekki mælt með notkunn SQLite.",
"How to do backups" : "Hvernig á að taka öryggisafrit",

View File

@ -211,11 +211,11 @@ OC.L10N.register(
"Store credentials" : "Memorizza le credenziali",
"Test email settings" : "Prova impostazioni email",
"Send email" : "Invia email",
"What to log" : "Cosa registrare",
"Download logfile" : "Scarica file di log",
"More" : "Altro",
"Less" : "Meno",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "Il file di log è più grande di 100MB. Scaricarlo potrebbe richiedere del tempo!",
"What to log" : "Cosa registrare",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite è utilizzato come database. Per installazioni più grandi consigliamo di passare a un motore di database diverso.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "In particolar modo, quando si utilizza il client desktop per la sincronizzazione dei file, l'uso di SQLite è sconsigliato.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Per migrare a un altro database, usa lo strumento da riga di comando: 'occ db:convert-type', o leggi la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentazione ↗</a>.",

View File

@ -209,11 +209,11 @@
"Store credentials" : "Memorizza le credenziali",
"Test email settings" : "Prova impostazioni email",
"Send email" : "Invia email",
"What to log" : "Cosa registrare",
"Download logfile" : "Scarica file di log",
"More" : "Altro",
"Less" : "Meno",
"The logfile is bigger than 100 MB. Downloading it may take some time!" : "Il file di log è più grande di 100MB. Scaricarlo potrebbe richiedere del tempo!",
"What to log" : "Cosa registrare",
"SQLite is used as database. For larger installations we recommend to switch to a different database backend." : "SQLite è utilizzato come database. Per installazioni più grandi consigliamo di passare a un motore di database diverso.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "In particolar modo, quando si utilizza il client desktop per la sincronizzazione dei file, l'uso di SQLite è sconsigliato.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation ↗</a>." : "Per migrare a un altro database, usa lo strumento da riga di comando: 'occ db:convert-type', o leggi la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentazione ↗</a>.",

Some files were not shown because too many files have changed in this diff Show More