Merge branch 'master' into from_live_to_on

Conflicts:
	apps/files_external/js/google.js
This commit is contained in:
Thomas Mueller 2013-01-31 23:34:12 +01:00
commit b1da1db0eb
589 changed files with 17595 additions and 9562 deletions

View File

@ -12,10 +12,12 @@ $files = isset($_POST["file"]) ? stripslashes($_POST["file"]) : stripslashes($_P
$files = json_decode($files); $files = json_decode($files);
$filesWithError = ''; $filesWithError = '';
$success = true; $success = true;
//Now delete //Now delete
foreach ($files as $file) { foreach ($files as $file) {
if (!OC_Files::delete($dir, $file)) { if (($dir === '' && $file === 'Shared') || !\OC\Files\Filesystem::unlink($dir . '/' . $file)) {
$filesWithError .= $file . "\n"; $filesWithError .= $file . "\n";
$success = false; $success = false;
} }

View File

@ -32,7 +32,7 @@ if($doBreadcrumb) {
// make filelist // make filelist
$files = array(); $files = array();
foreach( OC_Files::getdirectorycontent( $dir ) as $i ) { foreach( \OC\Files\Filesystem::getDirectoryContent( $dir ) as $i ) {
$i["date"] = OCP\Util::formatDate($i["mtime"] ); $i["date"] = OCP\Util::formatDate($i["mtime"] );
$files[] = $i; $files[] = $i;
} }

View File

@ -7,19 +7,23 @@ OCP\JSON::checkLoggedIn();
OCP\JSON::callCheck(); OCP\JSON::callCheck();
// Get data // Get data
$dir = stripslashes($_GET["dir"]); $dir = stripslashes($_POST["dir"]);
$file = stripslashes($_GET["file"]); $file = stripslashes($_POST["file"]);
$target = stripslashes(rawurldecode($_GET["target"])); $target = stripslashes(rawurldecode($_POST["target"]));
$l=OC_L10N::get('files'); if(\OC\Files\Filesystem::file_exists($target . '/' . $file)) {
OCP\JSON::error(array("data" => array( "message" => "Could not move $file - File with this name already exists" )));
if(OC_Filesystem::file_exists($target . '/' . $file)) {
OCP\JSON::error(array("data" => array( "message" => $l->t("Could not move %s - File with this name already exists", array($file)) )));
exit; exit;
} }
if(OC_Files::move($dir, $file, $target, $file)) { if ($dir != '' || $file != 'Shared') {
OCP\JSON::success(array("data" => array( "dir" => $dir, "files" => $file ))); $targetFile = \OC\Files\Filesystem::normalizePath($target . '/' . $file);
} else { $sourceFile = \OC\Files\Filesystem::normalizePath($dir . '/' . $file);
OCP\JSON::error(array("data" => array( "message" => $l->t("Could not move %s", array($file)) ))); if(\OC\Files\Filesystem::rename($sourceFile, $targetFile)) {
OCP\JSON::success(array("data" => array( "dir" => $dir, "files" => $file )));
} else {
OCP\JSON::error(array("data" => array( "message" => "Could not move $file" )));
}
}else{
OCP\JSON::error(array("data" => array( "message" => "Could not move $file" )));
} }

View File

@ -63,13 +63,12 @@ if($source) {
$ctx = stream_context_create(null, array('notification' =>'progress')); $ctx = stream_context_create(null, array('notification' =>'progress'));
$sourceStream=fopen($source, 'rb', false, $ctx); $sourceStream=fopen($source, 'rb', false, $ctx);
$target=$dir.'/'.$filename; $target=$dir.'/'.$filename;
$result=OC_Filesystem::file_put_contents($target, $sourceStream); $result=\OC\Files\Filesystem::file_put_contents($target, $sourceStream);
if($result) { if($result) {
$target = OC_Filesystem::normalizePath($target); $meta = \OC\Files\Filesystem::getFileInfo($target);
$meta = OC_FileCache::get($target);
$mime=$meta['mimetype']; $mime=$meta['mimetype'];
$id = OC_FileCache::getId($target); $id = $meta['fileid'];
$eventSource->send('success', array('mime'=>$mime, 'size'=>OC_Filesystem::filesize($target), 'id' => $id)); $eventSource->send('success', array('mime'=>$mime, 'size'=>\OC\Files\Filesystem::filesize($target), 'id' => $id));
} else { } else {
$eventSource->send('error', "Error while downloading ".$source. ' to '.$target); $eventSource->send('error', "Error while downloading ".$source. ' to '.$target);
} }
@ -77,15 +76,15 @@ if($source) {
exit(); exit();
} else { } else {
if($content) { if($content) {
if(OC_Filesystem::file_put_contents($dir.'/'.$filename, $content)) { if(\OC\Files\Filesystem::file_put_contents($dir.'/'.$filename, $content)) {
$meta = OC_FileCache::get($dir.'/'.$filename); $meta = \OC\Files\Filesystem::getFileInfo($dir.'/'.$filename);
$id = OC_FileCache::getId($dir.'/'.$filename); $id = $meta['fileid'];
OCP\JSON::success(array("data" => array('content'=>$content, 'id' => $id))); OCP\JSON::success(array("data" => array('content'=>$content, 'id' => $id)));
exit(); exit();
} }
}elseif(OC_Files::newFile($dir, $filename, 'file')) { }elseif(\OC\Files\Filesystem::touch($dir . '/' . $filename)) {
$meta = OC_FileCache::get($dir.'/'.$filename); $meta = \OC\Files\Filesystem::getFileInfo($dir.'/'.$filename);
$id = OC_FileCache::getId($dir.'/'.$filename); $id = $meta['fileid'];
OCP\JSON::success(array("data" => array('content'=>$content, 'id' => $id))); OCP\JSON::success(array("data" => array('content'=>$content, 'id' => $id)));
exit(); exit();
} }

View File

@ -19,13 +19,14 @@ if(strpos($foldername, '/')!==false) {
exit(); exit();
} }
if(OC_Files::newFile($dir, stripslashes($foldername), 'dir')) { if(\OC\Files\Filesystem::mkdir($dir . '/' . stripslashes($foldername))) {
if ( $dir != '/') { if ( $dir != '/') {
$path = $dir.'/'.$foldername; $path = $dir.'/'.$foldername;
} else { } else {
$path = '/'.$foldername; $path = '/'.$foldername;
} }
$id = OC_FileCache::getId($path); $meta = \OC\Files\Filesystem::getFileInfo($path);
$id = $meta['fileid'];
OCP\JSON::success(array("data" => array('id'=>$id))); OCP\JSON::success(array("data" => array('id'=>$id)));
exit(); exit();
} }

View File

@ -15,7 +15,7 @@ $mimetype = isset($_GET['mimetype']) ? $_GET['mimetype'] : '';
// make filelist // make filelist
$files = array(); $files = array();
foreach( OC_Files::getdirectorycontent( $dir, $mimetype ) as $i ) { foreach( \OC\Files\Filesystem::getDirectoryContent( $dir, $mimetype ) as $i ) {
$i["date"] = OCP\Util::formatDate($i["mtime"] ); $i["date"] = OCP\Util::formatDate($i["mtime"] );
$i['mimetype_icon'] = $i['type'] == 'dir' ? \mimetype_icon('dir'): \mimetype_icon($i['mimetype']); $i['mimetype_icon'] = $i['type'] == 'dir' ? \mimetype_icon('dir'): \mimetype_icon($i['mimetype']);
$files[] = $i; $files[] = $i;

View File

@ -11,10 +11,14 @@ $dir = stripslashes($_GET["dir"]);
$file = stripslashes($_GET["file"]); $file = stripslashes($_GET["file"]);
$newname = stripslashes($_GET["newname"]); $newname = stripslashes($_GET["newname"]);
// Delete if ( $newname !== '.' and ($dir != '' || $file != 'Shared') and $newname !== '.') {
if( $newname !== '.' and OC_Files::move( $dir, $file, $dir, $newname )) { $targetFile = \OC\Files\Filesystem::normalizePath($dir . '/' . $newname);
OCP\JSON::success(array("data" => array( "dir" => $dir, "file" => $file, "newname" => $newname ))); $sourceFile = \OC\Files\Filesystem::normalizePath($dir . '/' . $file);
} else { if(\OC\Files\Filesystem::rename($sourceFile, $targetFile)) {
$l=OC_L10N::get('files'); OCP\JSON::success(array("data" => array( "dir" => $dir, "file" => $file, "newname" => $newname )));
OCP\JSON::error(array("data" => array( "message" => $l->t("Unable to rename file") ))); } else {
OCP\JSON::error(array("data" => array( "message" => "Unable to rename file" )));
}
}else{
OCP\JSON::error(array("data" => array( "message" => "Unable to rename file" )));
} }

View File

@ -1,44 +1,71 @@
<?php <?php
set_time_limit(0); //scanning can take ages
set_time_limit(0);//scanning can take ages
$force=isset($_GET['force']) and $_GET['force']=='true';
$dir=isset($_GET['dir'])?$_GET['dir']:'';
$checkOnly=isset($_GET['checkonly']) and $_GET['checkonly']=='true';
$eventSource=false;
if(!$checkOnly) {
$eventSource=new OC_EventSource();
}
session_write_close(); session_write_close();
//create the file cache if necessary $force = (isset($_GET['force']) and ($_GET['force'] === 'true'));
if($force or !OC_FileCache::inCache('')) { $dir = isset($_GET['dir']) ? $_GET['dir'] : '';
if(!$checkOnly) {
OCP\DB::beginTransaction();
if(OC_Cache::isFast()) { $eventSource = new OC_EventSource();
OC_Cache::clear('fileid/'); //make sure the old fileid's don't mess things up ScanListener::$eventSource = $eventSource;
ScanListener::$view = \OC\Files\Filesystem::getView();
OC_Hook::connect('\OC\Files\Cache\Scanner', 'scan_folder', 'ScanListener', 'folder');
OC_Hook::connect('\OC\Files\Cache\Scanner', 'scan_file', 'ScanListener', 'file');
$absolutePath = \OC\Files\Filesystem::getView()->getAbsolutePath($dir);
$mountPoints = \OC\Files\Filesystem::getMountPoints($absolutePath);
$mountPoints[] = \OC\Files\Filesystem::getMountPoint($absolutePath);
$mountPoints = array_reverse($mountPoints); //start with the mount point of $dir
foreach ($mountPoints as $mountPoint) {
$storage = \OC\Files\Filesystem::getStorage($mountPoint);
if ($storage) {
ScanListener::$mountPoints[$storage->getId()] = $mountPoint;
$scanner = $storage->getScanner();
if ($force) {
$scanner->scan('');
} else {
$scanner->backgroundScan();
} }
OC_FileCache::scan($dir, $eventSource);
OC_FileCache::clean();
OCP\DB::commit();
$eventSource->send('success', true);
} else {
OCP\JSON::success(array('data'=>array('done'=>true)));
exit;
}
} else {
if($checkOnly) {
OCP\JSON::success(array('data'=>array('done'=>false)));
exit;
}
if(isset($eventSource)) {
$eventSource->send('success', false);
} else {
exit;
} }
} }
$eventSource->send('done', ScanListener::$fileCount);
$eventSource->close(); $eventSource->close();
class ScanListener {
static public $fileCount = 0;
static public $lastCount = 0;
/**
* @var \OC\Files\View $view
*/
static public $view;
/**
* @var array $mountPoints map storage ids to mountpoints
*/
static public $mountPoints = array();
/**
* @var \OC_EventSource event source to pass events to
*/
static public $eventSource;
static function folder($params) {
$internalPath = $params['path'];
$mountPoint = self::$mountPoints[$params['storage']];
$path = self::$view->getRelativePath($mountPoint . $internalPath);
self::$eventSource->send('folder', $path);
}
static function file() {
self::$fileCount++;
if (self::$fileCount > self::$lastCount + 20) { //send a count update every 20 files
self::$lastCount = self::$fileCount;
self::$eventSource->send('count', self::$fileCount);
}
}
}

View File

@ -0,0 +1,44 @@
<?php
set_time_limit(0); //scanning can take ages
session_write_close();
$user = OC_User::getUser();
$eventSource = new OC_EventSource();
$listener = new UpgradeListener($eventSource);
$legacy = new \OC\Files\Cache\Legacy($user);
if ($legacy->hasItems()) {
OC_Hook::connect('\OC\Files\Cache\Upgrade', 'migrate_path', $listener, 'upgradePath');
OC_DB::beginTransaction();
$upgrade = new \OC\Files\Cache\Upgrade($legacy);
$count = $legacy->getCount();
$eventSource->send('total', $count);
$upgrade->upgradePath('/' . $user . '/files');
OC_DB::commit();
}
\OC\Files\Cache\Upgrade::upgradeDone($user);
$eventSource->send('done', true);
$eventSource->close();
class UpgradeListener {
/**
* @var OC_EventSource $eventSource
*/
private $eventSource;
private $count = 0;
private $lastSend = 0;
public function __construct($eventSource) {
$this->eventSource = $eventSource;
}
public function upgradePath($path) {
$this->count++;
if ($this->count > ($this->lastSend + 5)) {
$this->lastSend = $this->count;
$this->eventSource->send('count', $this->count);
}
}
}

View File

@ -21,13 +21,13 @@ if (!isset($_FILES['files'])) {
foreach ($_FILES['files']['error'] as $error) { foreach ($_FILES['files']['error'] as $error) {
if ($error != 0) { if ($error != 0) {
$errors = array( $errors = array(
UPLOAD_ERR_OK => $l->t('There is no error, the file uploaded with success'), UPLOAD_ERR_OK => $l->t('There is no error, the file uploaded with success'),
UPLOAD_ERR_INI_SIZE => $l->t('The uploaded file exceeds the upload_max_filesize directive in php.ini: ') UPLOAD_ERR_INI_SIZE => $l->t('The uploaded file exceeds the upload_max_filesize directive in php.ini: ')
. ini_get('upload_max_filesize'), . ini_get('upload_max_filesize'),
UPLOAD_ERR_FORM_SIZE => $l->t('The uploaded file exceeds the MAX_FILE_SIZE directive that was specified' UPLOAD_ERR_FORM_SIZE => $l->t('The uploaded file exceeds the MAX_FILE_SIZE directive that was specified'
. ' in the HTML form'), . ' in the HTML form'),
UPLOAD_ERR_PARTIAL => $l->t('The uploaded file was only partially uploaded'), UPLOAD_ERR_PARTIAL => $l->t('The uploaded file was only partially uploaded'),
UPLOAD_ERR_NO_FILE => $l->t('No file was uploaded'), UPLOAD_ERR_NO_FILE => $l->t('No file was uploaded'),
UPLOAD_ERR_NO_TMP_DIR => $l->t('Missing a temporary folder'), UPLOAD_ERR_NO_TMP_DIR => $l->t('Missing a temporary folder'),
UPLOAD_ERR_CANT_WRITE => $l->t('Failed to write to disk'), UPLOAD_ERR_CANT_WRITE => $l->t('Failed to write to disk'),
); );
@ -40,12 +40,17 @@ $files = $_FILES['files'];
$dir = $_POST['dir']; $dir = $_POST['dir'];
$error = ''; $error = '';
$maxUploadFilesize = OCP\Util::maxUploadFilesize($dir);
$maxHumanFilesize = OCP\Util::humanFileSize($maxUploadFilesize);
$totalSize = 0; $totalSize = 0;
foreach ($files['size'] as $size) { foreach ($files['size'] as $size) {
$totalSize += $size; $totalSize += $size;
} }
if ($totalSize > OC_Filesystem::free_space($dir)) { if ($totalSize > \OC\Files\Filesystem::free_space($dir)) {
OCP\JSON::error(array('data' => array_merge(array('message' => $l->t('Not enough storage available')), $storageStats))); OCP\JSON::error(array('data' => array('message' => $l->t('Not enough space available'),
'uploadMaxFilesize' => $maxUploadFilesize,
'maxHumanFilesize' => $maxHumanFilesize)));
exit(); exit();
} }
@ -55,19 +60,19 @@ if (strpos($dir, '..') === false) {
for ($i = 0; $i < $fileCount; $i++) { for ($i = 0; $i < $fileCount; $i++) {
$target = OCP\Files::buildNotExistingFileName(stripslashes($dir), $files['name'][$i]); $target = OCP\Files::buildNotExistingFileName(stripslashes($dir), $files['name'][$i]);
// $path needs to be normalized - this failed within drag'n'drop upload to a sub-folder // $path needs to be normalized - this failed within drag'n'drop upload to a sub-folder
$target = OC_Filesystem::normalizePath($target); $target = \OC\Files\Filesystem::normalizePath($target);
if (is_uploaded_file($files['tmp_name'][$i]) and OC_Filesystem::fromTmpFile($files['tmp_name'][$i], $target)) { if (is_uploaded_file($files['tmp_name'][$i]) and \OC\Files\Filesystem::fromTmpFile($files['tmp_name'][$i], $target)) {
$meta = OC_FileCache::get($target); $meta = \OC\Files\Filesystem::getFileInfo($target);
$id = OC_FileCache::getId($target);
// updated max file size after upload // updated max file size after upload
$storageStats = \OCA\files\lib\Helper::buildFileStorageStatistics($dir); $storageStats = \OCA\files\lib\Helper::buildFileStorageStatistics($dir);
$result[] = array_merge(array('status' => 'success', $result[] = array('status' => 'success',
'mime' => $meta['mimetype'], 'mime' => $meta['mimetype'],
'size' => $meta['size'], 'size' => $meta['size'],
'id' => $id, 'id' => $meta['fileid'],
'name' => basename($target)), $storageStats 'name' => basename($target),
'uploadMaxFilesize' => $maxUploadFilesize,
'maxHumanFilesize' => $maxHumanFilesize
); );
} }
} }

View File

@ -1,5 +1,5 @@
<?php <?php
$l=OC_L10N::get('files'); $l = OC_L10N::get('files');
OCP\App::registerAdmin('files', 'admin'); OCP\App::registerAdmin('files', 'admin');

View File

@ -43,7 +43,7 @@ if ($type != 'oc_chunked') {
die; die;
} }
if (!OC_Filesystem::is_file($file)) { if (!\OC\Files\Filesystem::is_file($file)) {
OC_Response::setStatus(OC_Response::STATUS_NOT_FOUND); OC_Response::setStatus(OC_Response::STATUS_NOT_FOUND);
die; die;
} }
@ -51,7 +51,7 @@ if (!OC_Filesystem::is_file($file)) {
switch($_SERVER['REQUEST_METHOD']) { switch($_SERVER['REQUEST_METHOD']) {
case 'PUT': case 'PUT':
$input = fopen("php://input", "r"); $input = fopen("php://input", "r");
$org_file = OC_Filesystem::fopen($file, 'rb'); $org_file = \OC\Files\Filesystem::fopen($file, 'rb');
$info = array( $info = array(
'name' => basename($file), 'name' => basename($file),
); );

View File

@ -5,7 +5,7 @@
<description>File Management</description> <description>File Management</description>
<licence>AGPL</licence> <licence>AGPL</licence>
<author>Robin Appelman</author> <author>Robin Appelman</author>
<require>4.9</require> <require>4.91</require>
<shipped>true</shipped> <shipped>true</shipped>
<standalone/> <standalone/>
<default_enable/> <default_enable/>

View File

@ -32,12 +32,14 @@ OC_Util::obEnd();
// Backends // Backends
$authBackend = new OC_Connector_Sabre_Auth(); $authBackend = new OC_Connector_Sabre_Auth();
$lockBackend = new OC_Connector_Sabre_Locks(); $lockBackend = new OC_Connector_Sabre_Locks();
$requestBackend = new OC_Connector_Sabre_Request();
// Create ownCloud Dir // Create ownCloud Dir
$publicDir = new OC_Connector_Sabre_Directory(''); $publicDir = new OC_Connector_Sabre_Directory('');
// Fire up server // Fire up server
$server = new Sabre_DAV_Server($publicDir); $server = new Sabre_DAV_Server($publicDir);
$server->httpRequest = $requestBackend;
$server->setBaseUri($baseuri); $server->setBaseUri($baseuri);
// Load plugins // Load plugins

View File

@ -1 +1 @@
1.1.6 1.1.7

View File

@ -23,7 +23,9 @@
#new>ul>li>p { cursor:pointer; } #new>ul>li>p { cursor:pointer; }
#new>ul>li>form>input { padding:0.3em; margin:-0.3em; } #new>ul>li>form>input { padding:0.3em; margin:-0.3em; }
#upload { #trash { height:17px; margin:0 0 0 1em; z-index:1010; position:absolute; right:13.5em; }
#upload {
height:27px; padding:0; margin-left:0.2em; overflow:hidden; height:27px; padding:0; margin-left:0.2em; overflow:hidden;
} }
#upload a { #upload a {
@ -109,6 +111,7 @@ table td.filename form { font-size:.85em; margin-left:3em; margin-right:3em; }
} }
#fileList .fileactions a.action img { position:relative; top:.2em; } #fileList .fileactions a.action img { position:relative; top:.2em; }
#fileList a.action { display:inline; margin:-.5em 0; padding:1em .5em 1em .5em !important; } #fileList a.action { display:inline; margin:-.5em 0; padding:1em .5em 1em .5em !important; }
#fileList img.move2trash { display:inline; margin:-.5em 0; padding:1em .5em 1em .5em !important; float:right; }
a.action.delete { float:right; } a.action.delete { float:right; }
a.action>img { max-height:16px; max-width:16px; vertical-align:text-bottom; } a.action>img { max-height:16px; max-width:16px; vertical-align:text-bottom; }
.selectedActions { display:none; float:right; } .selectedActions { display:none; float:right; }
@ -122,3 +125,22 @@ a.action>img { max-height:16px; max-width:16px; vertical-align:text-bottom; }
#scanning-message{ top:40%; left:40%; position:absolute; display:none; } #scanning-message{ top:40%; left:40%; position:absolute; display:none; }
div.crumb a{ padding:0.9em 0 0.7em 0; } div.crumb a{ padding:0.9em 0 0.7em 0; }
table.dragshadow {
width:auto;
}
table.dragshadow td.filename {
padding-left:36px;
padding-right:16px;
}
table.dragshadow td.size {
padding-right:8px;
}
#upgrade {
width: 400px;
position: absolute;
top: 200px;
left: 50%;
text-align: center;
margin-left: -200px;
}

View File

@ -26,7 +26,7 @@ OCP\User::checkLoggedIn();
$filename = $_GET["file"]; $filename = $_GET["file"];
if(!OC_Filesystem::file_exists($filename)) { if(!\OC\Files\Filesystem::file_exists($filename)) {
header("HTTP/1.0 404 Not Found"); header("HTTP/1.0 404 Not Found");
$tmpl = new OCP\Template( '', '404', 'guest' ); $tmpl = new OCP\Template( '', '404', 'guest' );
$tmpl->assign('file', $filename); $tmpl->assign('file', $filename);
@ -34,7 +34,7 @@ if(!OC_Filesystem::file_exists($filename)) {
exit; exit;
} }
$ftype=OC_Filesystem::getMimeType( $filename ); $ftype=\OC\Files\Filesystem::getMimeType( $filename );
header('Content-Type:'.$ftype); header('Content-Type:'.$ftype);
if ( preg_match( "/MSIE/", $_SERVER["HTTP_USER_AGENT"] ) ) { if ( preg_match( "/MSIE/", $_SERVER["HTTP_USER_AGENT"] ) ) {
@ -44,7 +44,7 @@ if ( preg_match( "/MSIE/", $_SERVER["HTTP_USER_AGENT"] ) ) {
. '; filename="' . rawurlencode( basename($filename) ) . '"' ); . '; filename="' . rawurlencode( basename($filename) ) . '"' );
} }
OCP\Response::disableCaching(); OCP\Response::disableCaching();
header('Content-Length: '.OC_Filesystem::filesize($filename)); header('Content-Length: '.\OC\Files\Filesystem::filesize($filename));
OC_Util::obEnd(); OC_Util::obEnd();
OC_Filesystem::readfile( $filename ); \OC\Files\Filesystem::readfile( $filename );

View File

@ -29,22 +29,39 @@ OCP\Util::addStyle('files', 'files');
OCP\Util::addscript('files', 'jquery.iframe-transport'); OCP\Util::addscript('files', 'jquery.iframe-transport');
OCP\Util::addscript('files', 'jquery.fileupload'); OCP\Util::addscript('files', 'jquery.fileupload');
OCP\Util::addscript('files', 'jquery-visibility'); OCP\Util::addscript('files', 'jquery-visibility');
OCP\Util::addscript('files', 'files');
OCP\Util::addscript('files', 'filelist'); OCP\Util::addscript('files', 'filelist');
OCP\Util::addscript('files', 'fileactions');
OCP\Util::addscript('files', 'keyboardshortcuts');
OCP\App::setActiveNavigationEntry('files_index'); OCP\App::setActiveNavigationEntry('files_index');
// Load the files // Load the files
$dir = isset($_GET['dir']) ? stripslashes($_GET['dir']) : ''; $dir = isset($_GET['dir']) ? stripslashes($_GET['dir']) : '';
// Redirect if directory does not exist // Redirect if directory does not exist
if (!OC_Filesystem::is_dir($dir . '/')) { if (!\OC\Files\Filesystem::is_dir($dir . '/')) {
header('Location: ' . $_SERVER['SCRIPT_NAME'] . ''); header('Location: ' . OCP\Util::getScriptName() . '');
exit(); exit();
} }
function fileCmp($a, $b) {
if ($a['type'] == 'dir' and $b['type'] != 'dir') {
return -1;
} elseif ($a['type'] != 'dir' and $b['type'] == 'dir') {
return 1;
} else {
return strnatcasecmp($a['name'], $b['name']);
}
}
$files = array(); $files = array();
foreach (OC_Files::getdirectorycontent($dir) as $i) { $user = OC_User::getUser();
if (\OC\Files\Cache\Upgrade::needUpgrade($user)) { //dont load anything if we need to upgrade the cache
$content = array();
$needUpgrade = true;
$freeSpace = 0;
} else {
$content = \OC\Files\Filesystem::getDirectoryContent($dir);
$freeSpace = \OC\Files\Filesystem::free_space($dir);
$needUpgrade = false;
}
foreach ($content as $i) {
$i['date'] = OCP\Util::formatDate($i['mtime']); $i['date'] = OCP\Util::formatDate($i['mtime']);
if ($i['type'] == 'file') { if ($i['type'] == 'file') {
$fileinfo = pathinfo($i['name']); $fileinfo = pathinfo($i['name']);
@ -55,12 +72,12 @@ foreach (OC_Files::getdirectorycontent($dir) as $i) {
$i['extension'] = ''; $i['extension'] = '';
} }
} }
if ($i['directory'] == '/') { $i['directory'] = $dir;
$i['directory'] = '';
}
$files[] = $i; $files[] = $i;
} }
usort($files, "fileCmp");
// Make breadcrumb // Make breadcrumb
$breadcrumb = array(); $breadcrumb = array();
$pathtohere = ''; $pathtohere = '';
@ -81,34 +98,43 @@ $breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', '');
$breadcrumbNav->assign('breadcrumb', $breadcrumb, false); $breadcrumbNav->assign('breadcrumb', $breadcrumb, false);
$breadcrumbNav->assign('baseURL', OCP\Util::linkTo('files', 'index.php') . '?dir=', false); $breadcrumbNav->assign('baseURL', OCP\Util::linkTo('files', 'index.php') . '?dir=', false);
$maxUploadFilesize=OCP\Util::maxUploadFilesize($dir);
$permissions = OCP\PERMISSION_READ; $permissions = OCP\PERMISSION_READ;
if (OC_Filesystem::isCreatable($dir . '/')) { if (\OC\Files\Filesystem::isCreatable($dir . '/')) {
$permissions |= OCP\PERMISSION_CREATE; $permissions |= OCP\PERMISSION_CREATE;
} }
if (OC_Filesystem::isUpdatable($dir . '/')) { if (\OC\Files\Filesystem::isUpdatable($dir . '/')) {
$permissions |= OCP\PERMISSION_UPDATE; $permissions |= OCP\PERMISSION_UPDATE;
} }
if (OC_Filesystem::isDeletable($dir . '/')) { if (\OC\Files\Filesystem::isDeletable($dir . '/')) {
$permissions |= OCP\PERMISSION_DELETE; $permissions |= OCP\PERMISSION_DELETE;
} }
if (OC_Filesystem::isSharable($dir . '/')) { if (\OC\Files\Filesystem::isSharable($dir . '/')) {
$permissions |= OCP\PERMISSION_SHARE; $permissions |= OCP\PERMISSION_SHARE;
} }
// information about storage capacities if ($needUpgrade) {
$storageInfo=OC_Helper::getStorageInfo(); OCP\Util::addscript('files', 'upgrade');
$tmpl = new OCP\Template('files', 'upgrade', 'user');
$tmpl->printPage();
} else {
// information about storage capacities
$storageInfo=OC_Helper::getStorageInfo();
$maxUploadFilesize=OCP\Util::maxUploadFilesize($dir);
$tmpl = new OCP\Template('files', 'index', 'user'); OCP\Util::addscript('files', 'fileactions');
$tmpl->assign('fileList', $list->fetchPage(), false); OCP\Util::addscript('files', 'files');
$tmpl->assign('breadcrumb', $breadcrumbNav->fetchPage(), false); OCP\Util::addscript('files', 'keyboardshortcuts');
$tmpl->assign('dir', OC_Filesystem::normalizePath($dir)); $tmpl = new OCP\Template('files', 'index', 'user');
$tmpl->assign('isCreatable', OC_Filesystem::isCreatable($dir . '/')); $tmpl->assign('fileList', $list->fetchPage(), false);
$tmpl->assign('permissions', $permissions); $tmpl->assign('breadcrumb', $breadcrumbNav->fetchPage(), false);
$tmpl->assign('files', $files); $tmpl->assign('dir', \OC\Files\Filesystem::normalizePath($dir));
$tmpl->assign('uploadMaxFilesize', $maxUploadFilesize); $tmpl->assign('isCreatable', \OC\Files\Filesystem::isCreatable($dir . '/'));
$tmpl->assign('uploadMaxHumanFilesize', OCP\Util::humanFileSize($maxUploadFilesize)); $tmpl->assign('permissions', $permissions);
$tmpl->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true))); $tmpl->assign('files', $files);
$tmpl->assign('usedSpacePercent', (int)$storageInfo['relative']); $tmpl->assign('trash', \OCP\App::isEnabled('files_trashbin'));
$tmpl->printPage(); $tmpl->assign('uploadMaxFilesize', $maxUploadFilesize);
$tmpl->assign('uploadMaxHumanFilesize', OCP\Util::humanFileSize($maxUploadFilesize));
$tmpl->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
$tmpl->assign('usedSpacePercent', (int)$storageInfo['relative']);
$tmpl->printPage();
}

View File

@ -147,15 +147,19 @@ $(document).ready(function () {
} else { } else {
var downloadScope = 'file'; var downloadScope = 'file';
} }
FileActions.register(downloadScope, 'Download', OC.PERMISSION_READ, function () {
return OC.imagePath('core', 'actions/download'); if (typeof disableDownloadActions == 'undefined' || !disableDownloadActions) {
}, function (filename) { FileActions.register(downloadScope, 'Download', OC.PERMISSION_READ, function () {
window.location = OC.filePath('files', 'ajax', 'download.php') + '?files=' + encodeURIComponent(filename) + '&dir=' + encodeURIComponent($('#dir').val()); return OC.imagePath('core', 'actions/download');
}); }, function (filename) {
window.location = OC.filePath('files', 'ajax', 'download.php') + '?files=' + encodeURIComponent(filename) + '&dir=' + encodeURIComponent($('#dir').val());
});
}
$('#fileList tr').each(function(){ $('#fileList tr').each(function(){
FileActions.display($(this).children('td.filename')); FileActions.display($(this).children('td.filename'));
}); });
}); });
FileActions.register('all', 'Delete', OC.PERMISSION_DELETE, function () { FileActions.register('all', 'Delete', OC.PERMISSION_DELETE, function () {
@ -185,6 +189,7 @@ FileActions.register('all', 'Rename', OC.PERMISSION_UPDATE, function () {
FileList.rename(filename); FileList.rename(filename);
}); });
FileActions.register('dir', 'Open', OC.PERMISSION_READ, '', function (filename) { FileActions.register('dir', 'Open', OC.PERMISSION_READ, '', function (filename) {
window.location = OC.linkTo('files', 'index.php') + '?dir=' + encodeURIComponent($('#dir').val()).replace(/%2F/g, '/') + '/' + encodeURIComponent(filename); window.location = OC.linkTo('files', 'index.php') + '?dir=' + encodeURIComponent($('#dir').val()).replace(/%2F/g, '/') + '/' + encodeURIComponent(filename);
}); });

View File

@ -271,65 +271,39 @@ var FileList={
} }
}, },
do_delete:function(files){ do_delete:function(files){
if(files.substr){
files=[files];
}
for (var i in files) {
var deleteAction = $('tr').filterAttr('data-file',files[i]).children("td.date").children(".action.delete");
var oldHTML = deleteAction[0].outerHTML;
var newHTML = '<img class="move2trash" data-action="Delete" title="'+t('files', 'perform delete operation')+'" src="'+ OC.imagePath('core', 'loading.gif') +'"></a>';
deleteAction[0].outerHTML = newHTML;
}
// Finish any existing actions // Finish any existing actions
if (FileList.lastAction) { if (FileList.lastAction) {
FileList.lastAction(); FileList.lastAction();
} }
FileList.prepareDeletion(files); var fileNames = JSON.stringify(files);
$.post(OC.filePath('files', 'ajax', 'delete.php'),
if (!FileList.useUndo) { {dir:$('#dir').val(),files:fileNames},
FileList.lastAction(); function(result){
} else { if (result.status == 'success') {
// NOTE: Temporary fix to change the text to unshared for files in root of Shared folder $.each(files,function(index,file){
if ($('#dir').val() == '/Shared') { var files = $('tr').filterAttr('data-file',file);
OC.Notification.showHtml(t('files', 'unshared {files}', {'files': escapeHTML(files)})+'<span class="undo">'+t('files', 'undo')+'</span>'); files.hide();
} else { files.find('input[type="checkbox"]').removeAttr('checked');
OC.Notification.showHtml(t('files', 'deleted {files}', {'files': escapeHTML(files)})+'<span class="undo">'+t('files', 'undo')+'</span>'); files.removeClass('selected');
}
}
},
finishDelete:function(ready,sync){
if(!FileList.deleteCanceled && FileList.deleteFiles){
var fileNames=JSON.stringify(FileList.deleteFiles);
$.ajax({
url: OC.filePath('files', 'ajax', 'delete.php'),
async:!sync,
type:'post',
data: {dir:$('#dir').val(),files:fileNames},
complete: function(data){
boolOperationFinished(data, function(){
OC.Notification.hide();
$.each(FileList.deleteFiles,function(index,file){
FileList.remove(file);
}); });
FileList.deleteCanceled=true; procesSelection();
FileList.deleteFiles=null; } else {
FileList.lastAction = null; $.each(files,function(index,file) {
if(ready){ var deleteAction = $('tr').filterAttr('data-file',file).children("td.date").children(".move2trash");
ready(); deleteAction[0].outerHTML = oldHTML;
} });
}); }
} });
});
}
},
prepareDeletion:function(files){
if(files.substr){
files=[files];
}
$.each(files,function(index,file){
var files = $('tr').filterAttr('data-file',file);
files.hide();
files.find('input[type="checkbox"]').removeAttr('checked');
files.removeClass('selected');
});
procesSelection();
FileList.deleteCanceled=false;
FileList.deleteFiles=files;
FileList.lastAction = function() {
FileList.finishDelete(null, true);
};
} }
}; };

View File

@ -114,6 +114,11 @@ $(document).ready(function() {
$(this).parent().children('#file_upload_start').trigger('click'); $(this).parent().children('#file_upload_start').trigger('click');
return false; return false;
}); });
// Show trash bin
$('#trash a').live('click', function() {
window.location=OC.filePath('files_trashbin', '', 'index.php');
});
var lastChecked; var lastChecked;
@ -670,12 +675,8 @@ $(document).ready(function() {
}); });
}); });
//check if we need to scan the filesystem //do a background scan if needed
$.get(OC.filePath('files','ajax','scan.php'),{checkonly:'true'}, function(response) { scanFiles();
if(response.data.done){
scanFiles();
}
}, "json");
var lastWidth = 0; var lastWidth = 0;
var breadcrumbs = []; var breadcrumbs = [];
@ -774,27 +775,23 @@ $(document).ready(function() {
} }
}); });
function scanFiles(force,dir){ function scanFiles(force, dir){
if(!dir){ if(!dir){
dir=''; dir = '';
} }
force=!!force; //cast to bool force = !!force; //cast to bool
scanFiles.scanning=true; scanFiles.scanning = true;
$('#scanning-message').show(); var scannerEventSource = new OC.EventSource(OC.filePath('files','ajax','scan.php'),{force:force,dir:dir});
$('#fileList').remove(); scanFiles.cancel = scannerEventSource.close.bind(scannerEventSource);
var scannerEventSource=new OC.EventSource(OC.filePath('files','ajax','scan.php'),{force:force,dir:dir}); scannerEventSource.listen('count',function(count){
scanFiles.cancel=scannerEventSource.close.bind(scannerEventSource); console.log(count + 'files scanned')
scannerEventSource.listen('scanning',function(data){
$('#scan-count').text(t('files', '{count} files scanned', {count: data.count}));
$('#scan-current').text(data.file+'/');
}); });
scannerEventSource.listen('success',function(success){ scannerEventSource.listen('folder',function(path){
console.log('now scanning ' + path)
});
scannerEventSource.listen('done',function(count){
scanFiles.scanning=false; scanFiles.scanning=false;
if(success){ console.log('done after ' + count + 'files');
window.location.reload();
}else{
alert(t('files', 'error while scanning'));
}
}); });
} }
scanFiles.scanning=false; scanFiles.scanning=false;
@ -813,32 +810,101 @@ function updateBreadcrumb(breadcrumbHtml) {
$('p.nav').empty().html(breadcrumbHtml); $('p.nav').empty().html(breadcrumbHtml);
} }
//options for file drag/dropp var createDragShadow = function(event){
//select dragged file
var isDragSelected = $(event.target).parents('tr').find('td input:first').prop('checked');
if (!isDragSelected) {
//select dragged file
$(event.target).parents('tr').find('td input:first').prop('checked',true);
}
var selectedFiles = getSelectedFiles();
if (!isDragSelected && selectedFiles.length == 1) {
//revert the selection
$(event.target).parents('tr').find('td input:first').prop('checked',false);
}
//also update class when we dragged more than one file
if (selectedFiles.length > 1) {
$(event.target).parents('tr').addClass('selected');
}
// build dragshadow
var dragshadow = $('<table class="dragshadow"></table>');
var tbody = $('<tbody></tbody>');
dragshadow.append(tbody);
var dir=$('#dir').val();
$(selectedFiles).each(function(i,elem){
var newtr = $('<tr data-dir="'+dir+'" data-filename="'+elem.name+'">'
+'<td class="filename">'+elem.name+'</td><td class="size">'+humanFileSize(elem.size)+'</td>'
+'</tr>');
tbody.append(newtr);
if (elem.type === 'dir') {
newtr.find('td.filename').attr('style','background-image:url('+OC.imagePath('core', 'filetypes/folder.png')+')');
} else {
getMimeIcon(elem.mime,function(path){
newtr.find('td.filename').attr('style','background-image:url('+path+')');
});
}
});
return dragshadow;
}
//options for file drag/drop
var dragOptions={ var dragOptions={
distance: 20, revert: 'invalid', opacity: 0.7, helper: 'clone', revert: 'invalid', revertDuration: 300,
opacity: 0.7, zIndex: 100, appendTo: 'body', cursorAt: { left: -5, top: -5 },
helper: createDragShadow, cursor: 'move',
stop: function(event, ui) { stop: function(event, ui) {
$('#fileList tr td.filename').addClass('ui-draggable'); $('#fileList tr td.filename').addClass('ui-draggable');
} }
}; }
var folderDropOptions={ var folderDropOptions={
drop: function( event, ui ) { drop: function( event, ui ) {
var file=ui.draggable.parent().data('file'); //don't allow moving a file into a selected folder
var target=$(this).find('.nametext').text().trim(); if ($(event.target).parents('tr').find('td input:first').prop('checked') === true) {
var dir=$('#dir').val(); return false;
$.ajax({ }
url: OC.filePath('files', 'ajax', 'move.php'),
data: "dir="+encodeURIComponent(dir)+"&file="+encodeURIComponent(file)+'&target='+encodeURIComponent(dir)+'/'+encodeURIComponent(target), var target=$.trim($(this).find('.nametext').text());
complete: function(data){boolOperationFinished(data, function(){
var el = $('#fileList tr').filterAttr('data-file',file).find('td.filename'); var files = ui.helper.find('tr');
el.draggable('destroy'); $(files).each(function(i,row){
FileList.remove(file); var dir = $(row).data('dir');
});} var file = $(row).data('filename');
$.post(OC.filePath('files', 'ajax', 'move.php'), { dir: dir, file: file, target: dir+'/'+target }, function(result) {
if (result) {
if (result.status === 'success') {
//recalculate folder size
var oldSize = $('#fileList tr').filterAttr('data-file',target).data('size');
var newSize = oldSize + $('#fileList tr').filterAttr('data-file',file).data('size');
$('#fileList tr').filterAttr('data-file',target).data('size', newSize);
$('#fileList tr').filterAttr('data-file',target).find('td.filesize').text(humanFileSize(newSize));
FileList.remove(file);
procesSelection();
$('#notification').hide();
} else {
$('#notification').hide();
$('#notification').text(result.data.message);
$('#notification').fadeIn();
}
} else {
OC.dialogs.alert(t('Error moving file'));
}
});
}); });
} },
tolerance: 'pointer'
} }
var crumbDropOptions={ var crumbDropOptions={
drop: function( event, ui ) { drop: function( event, ui ) {
var file=ui.draggable.parent().data('file');
var target=$(this).data('dir'); var target=$(this).data('dir');
var dir=$('#dir').val(); var dir=$('#dir').val();
while(dir.substr(0,1)=='/'){//remove extra leading /'s while(dir.substr(0,1)=='/'){//remove extra leading /'s
@ -851,12 +917,25 @@ var crumbDropOptions={
if(target==dir || target+'/'==dir){ if(target==dir || target+'/'==dir){
return; return;
} }
$.ajax({ var files = ui.helper.find('tr');
url: OC.filePath('files', 'ajax', 'move.php'), $(files).each(function(i,row){
data: "dir="+encodeURIComponent(dir)+"&file="+encodeURIComponent(file)+'&target='+encodeURIComponent(target), var dir = $(row).data('dir');
complete: function(data){boolOperationFinished(data, function(){ var file = $(row).data('filename');
FileList.remove(file); $.post(OC.filePath('files', 'ajax', 'move.php'), { dir: dir, file: file, target: target }, function(result) {
});} if (result) {
if (result.status === 'success') {
FileList.remove(file);
procesSelection();
$('#notification').hide();
} else {
$('#notification').hide();
$('#notification').text(result.data.message);
$('#notification').fadeIn();
}
} else {
OC.dialogs.alert(t('Error moving file'));
}
});
}); });
}, },
tolerance: 'pointer' tolerance: 'pointer'
@ -963,7 +1042,7 @@ function getUniqueName(name){
num=parseInt(numMatch[numMatch.length-1])+1; num=parseInt(numMatch[numMatch.length-1])+1;
base=base.split('(') base=base.split('(')
base.pop(); base.pop();
base=base.join('(').trim(); base=$.trim(base.join('('));
} }
name=base+' ('+num+')'; name=base+' ('+num+')';
if (extension) { if (extension) {

17
apps/files/js/upgrade.js Normal file
View File

@ -0,0 +1,17 @@
$(document).ready(function () {
var eventSource, total, bar = $('#progressbar');
console.log('start');
bar.progressbar({value: 0});
eventSource = new OC.EventSource(OC.filePath('files', 'ajax', 'upgrade.php'));
eventSource.listen('total', function (count) {
total = count;
console.log(count + ' files needed to be migrated');
});
eventSource.listen('count', function (count) {
bar.progressbar({value: (count / total) * 100});
console.log(count);
});
eventSource.listen('done', function () {
document.location.reload();
});
});

8
apps/files/js/upload.js Normal file
View File

@ -0,0 +1,8 @@
function Upload(fileSelector) {
if ($.support.xhrFileUpload) {
return new XHRUpload(fileSelector.target.files);
} else {
return new FormUpload(fileSelector);
}
}
Upload.target = OC.filePath('files', 'ajax', 'upload.php');

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s কে স্থানান্তর করা সম্ভব হলো না - এই নামের ফাইল বিদ্যমান",
"Could not move %s" => "%s কে স্থানান্তর করা সম্ভব হলো না",
"Unable to rename file" => "ফাইলের নাম পরিবর্তন করা সম্ভব হলো না",
"No file was uploaded. Unknown error" => "কোন ফাইল আপলোড করা হয় নি। সমস্যা অজ্ঞাত।", "No file was uploaded. Unknown error" => "কোন ফাইল আপলোড করা হয় নি। সমস্যা অজ্ঞাত।",
"There is no error, the file uploaded with success" => "কোন সমস্যা নেই, ফাইল আপলোড সুসম্পন্ন হয়েছে", "There is no error, the file uploaded with success" => "কোন সমস্যা নেই, ফাইল আপলোড সুসম্পন্ন হয়েছে",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "আপলোড করা ফাইলটি php.ini তে বর্ণিত upload_max_filesize নির্দেশিত আয়তন অতিক্রম করছেঃ", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "আপলোড করা ফাইলটি php.ini তে বর্ণিত upload_max_filesize নির্দেশিত আয়তন অতিক্রম করছেঃ",
@ -10,6 +7,7 @@
"No file was uploaded" => "কোন ফাইল আপলোড করা হয় নি", "No file was uploaded" => "কোন ফাইল আপলোড করা হয় নি",
"Missing a temporary folder" => "অস্থায়ী ফোল্ডার খোয়া গিয়েছে", "Missing a temporary folder" => "অস্থায়ী ফোল্ডার খোয়া গিয়েছে",
"Failed to write to disk" => "ডিস্কে লিখতে ব্যর্থ", "Failed to write to disk" => "ডিস্কে লিখতে ব্যর্থ",
"Not enough space available" => "যথেষ্ঠ পরিমাণ স্থান নেই",
"Invalid directory." => "ভুল ডিরেক্টরি", "Invalid directory." => "ভুল ডিরেক্টরি",
"Files" => "ফাইল", "Files" => "ফাইল",
"Unshare" => "ভাগাভাগি বাতিল ", "Unshare" => "ভাগাভাগি বাতিল ",
@ -22,8 +20,6 @@
"replaced {new_name}" => "{new_name} প্রতিস্থাপন করা হয়েছে", "replaced {new_name}" => "{new_name} প্রতিস্থাপন করা হয়েছে",
"undo" => "ক্রিয়া প্রত্যাহার", "undo" => "ক্রিয়া প্রত্যাহার",
"replaced {new_name} with {old_name}" => "{new_name} কে {old_name} নামে প্রতিস্থাপন করা হয়েছে", "replaced {new_name} with {old_name}" => "{new_name} কে {old_name} নামে প্রতিস্থাপন করা হয়েছে",
"unshared {files}" => "{files} ভাগাভাগি বাতিল কর",
"deleted {files}" => "{files} মুছে ফেলা হয়েছে",
"'.' is an invalid file name." => "টি একটি অননুমোদিত নাম।", "'.' is an invalid file name." => "টি একটি অননুমোদিত নাম।",
"File name cannot be empty." => "ফাইলের নামটি ফাঁকা রাখা যাবে না।", "File name cannot be empty." => "ফাইলের নামটি ফাঁকা রাখা যাবে না।",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "নামটি সঠিক নয়, '\\', '/', '<', '>', ':', '\"', '|', '?' এবং '*' অনুমোদিত নয়।", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "নামটি সঠিক নয়, '\\', '/', '<', '>', ':', '\"', '|', '?' এবং '*' অনুমোদিত নয়।",
@ -37,8 +33,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "ফাইল আপলোড চলমান। এই পৃষ্ঠা পরিত্যাগ করলে আপলোড বাতিল করা হবে।", "File upload is in progress. Leaving the page now will cancel the upload." => "ফাইল আপলোড চলমান। এই পৃষ্ঠা পরিত্যাগ করলে আপলোড বাতিল করা হবে।",
"URL cannot be empty." => "URL ফাঁকা রাখা যাবে না।", "URL cannot be empty." => "URL ফাঁকা রাখা যাবে না।",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "ফোল্ডারের নামটি সঠিক নয়। 'ভাগাভাগি করা' শুধুমাত্র Owncloud এর জন্য সংরক্ষিত।", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "ফোল্ডারের নামটি সঠিক নয়। 'ভাগাভাগি করা' শুধুমাত্র Owncloud এর জন্য সংরক্ষিত।",
"{count} files scanned" => "{count} টি ফাইল স্ক্যান করা হয়েছে",
"error while scanning" => "স্ক্যান করার সময় সমস্যা দেখা দিয়েছে",
"Name" => "নাম", "Name" => "নাম",
"Size" => "আকার", "Size" => "আকার",
"Modified" => "পরিবর্তিত", "Modified" => "পরিবর্তিত",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "No s'ha pogut moure %s - Ja hi ha un fitxer amb aquest nom",
"Could not move %s" => " No s'ha pogut moure %s",
"Unable to rename file" => "No es pot canviar el nom del fitxer",
"No file was uploaded. Unknown error" => "No s'ha carregat cap fitxer. Error desconegut", "No file was uploaded. Unknown error" => "No s'ha carregat cap fitxer. Error desconegut",
"There is no error, the file uploaded with success" => "El fitxer s'ha pujat correctament", "There is no error, the file uploaded with success" => "El fitxer s'ha pujat correctament",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Larxiu que voleu carregar supera el màxim definit en la directiva upload_max_filesize del php.ini:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Larxiu que voleu carregar supera el màxim definit en la directiva upload_max_filesize del php.ini:",
@ -10,7 +7,7 @@
"No file was uploaded" => "El fitxer no s'ha pujat", "No file was uploaded" => "El fitxer no s'ha pujat",
"Missing a temporary folder" => "S'ha perdut un fitxer temporal", "Missing a temporary folder" => "S'ha perdut un fitxer temporal",
"Failed to write to disk" => "Ha fallat en escriure al disc", "Failed to write to disk" => "Ha fallat en escriure al disc",
"Not enough storage available" => "No hi ha prou espai disponible", "Not enough space available" => "No hi ha prou espai disponible",
"Invalid directory." => "Directori no vàlid.", "Invalid directory." => "Directori no vàlid.",
"Files" => "Fitxers", "Files" => "Fitxers",
"Unshare" => "Deixa de compartir", "Unshare" => "Deixa de compartir",
@ -23,8 +20,6 @@
"replaced {new_name}" => "s'ha substituït {new_name}", "replaced {new_name}" => "s'ha substituït {new_name}",
"undo" => "desfés", "undo" => "desfés",
"replaced {new_name} with {old_name}" => "s'ha substituït {old_name} per {new_name}", "replaced {new_name} with {old_name}" => "s'ha substituït {old_name} per {new_name}",
"unshared {files}" => "no compartits {files}",
"deleted {files}" => "eliminats {files}",
"'.' is an invalid file name." => "'.' és un nom no vàlid per un fitxer.", "'.' is an invalid file name." => "'.' és un nom no vàlid per un fitxer.",
"File name cannot be empty." => "El nom del fitxer no pot ser buit.", "File name cannot be empty." => "El nom del fitxer no pot ser buit.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "El nóm no és vàlid, '\\', '/', '<', '>', ':', '\"', '|', '?' i '*' no estan permesos.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "El nóm no és vàlid, '\\', '/', '<', '>', ':', '\"', '|', '?' i '*' no estan permesos.",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Hi ha una pujada en curs. Si abandoneu la pàgina la pujada es cancel·larà.", "File upload is in progress. Leaving the page now will cancel the upload." => "Hi ha una pujada en curs. Si abandoneu la pàgina la pujada es cancel·larà.",
"URL cannot be empty." => "La URL no pot ser buida", "URL cannot be empty." => "La URL no pot ser buida",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nom de carpeta no vàlid. L'ús de 'Shared' està reservat per Owncloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nom de carpeta no vàlid. L'ús de 'Shared' està reservat per Owncloud",
"{count} files scanned" => "{count} fitxers escannejats",
"error while scanning" => "error durant l'escaneig",
"Name" => "Nom", "Name" => "Nom",
"Size" => "Mida", "Size" => "Mida",
"Modified" => "Modificat", "Modified" => "Modificat",
@ -69,5 +62,6 @@
"Upload too large" => "La pujada és massa gran", "Upload too large" => "La pujada és massa gran",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Els fitxers que esteu intentant pujar excedeixen la mida màxima de pujada del servidor", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Els fitxers que esteu intentant pujar excedeixen la mida màxima de pujada del servidor",
"Files are being scanned, please wait." => "S'estan escanejant els fitxers, espereu", "Files are being scanned, please wait." => "S'estan escanejant els fitxers, espereu",
"Current scanning" => "Actualment escanejant" "Current scanning" => "Actualment escanejant",
"Upgrading filesystem cache..." => "Actualitzant la memòria de cau del sistema de fitxers..."
); );

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Nelze přesunout %s - existuje soubor se stejným názvem",
"Could not move %s" => "Nelze přesunout %s",
"Unable to rename file" => "Nelze přejmenovat soubor",
"No file was uploaded. Unknown error" => "Soubor nebyl odeslán. Neznámá chyba", "No file was uploaded. Unknown error" => "Soubor nebyl odeslán. Neznámá chyba",
"There is no error, the file uploaded with success" => "Soubor byl odeslán úspěšně", "There is no error, the file uploaded with success" => "Soubor byl odeslán úspěšně",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Odesílaný soubor přesahuje velikost upload_max_filesize povolenou v php.ini:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Odesílaný soubor přesahuje velikost upload_max_filesize povolenou v php.ini:",
@ -10,7 +7,7 @@
"No file was uploaded" => "Žádný soubor nebyl odeslán", "No file was uploaded" => "Žádný soubor nebyl odeslán",
"Missing a temporary folder" => "Chybí adresář pro dočasné soubory", "Missing a temporary folder" => "Chybí adresář pro dočasné soubory",
"Failed to write to disk" => "Zápis na disk selhal", "Failed to write to disk" => "Zápis na disk selhal",
"Not enough storage available" => "Nedostatek dostupného úložného prostoru", "Not enough space available" => "Nedostatek dostupného místa",
"Invalid directory." => "Neplatný adresář", "Invalid directory." => "Neplatný adresář",
"Files" => "Soubory", "Files" => "Soubory",
"Unshare" => "Zrušit sdílení", "Unshare" => "Zrušit sdílení",
@ -23,8 +20,6 @@
"replaced {new_name}" => "nahrazeno {new_name}", "replaced {new_name}" => "nahrazeno {new_name}",
"undo" => "zpět", "undo" => "zpět",
"replaced {new_name} with {old_name}" => "nahrazeno {new_name} s {old_name}", "replaced {new_name} with {old_name}" => "nahrazeno {new_name} s {old_name}",
"unshared {files}" => "sdílení zrušeno pro {files}",
"deleted {files}" => "smazáno {files}",
"'.' is an invalid file name." => "'.' je neplatným názvem souboru.", "'.' is an invalid file name." => "'.' je neplatným názvem souboru.",
"File name cannot be empty." => "Název souboru nemůže být prázdný řetězec.", "File name cannot be empty." => "Název souboru nemůže být prázdný řetězec.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Neplatný název, znaky '\\', '/', '<', '>', ':', '\"', '|', '?' a '*' nejsou povoleny.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Neplatný název, znaky '\\', '/', '<', '>', ':', '\"', '|', '?' a '*' nejsou povoleny.",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Probíhá odesílání souboru. Opuštění stránky vyústí ve zrušení nahrávání.", "File upload is in progress. Leaving the page now will cancel the upload." => "Probíhá odesílání souboru. Opuštění stránky vyústí ve zrušení nahrávání.",
"URL cannot be empty." => "URL nemůže být prázdná", "URL cannot be empty." => "URL nemůže být prázdná",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Neplatný název složky. Použití 'Shared' je rezervováno pro vnitřní potřeby Owncloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Neplatný název složky. Použití 'Shared' je rezervováno pro vnitřní potřeby Owncloud",
"{count} files scanned" => "prozkoumáno {count} souborů",
"error while scanning" => "chyba při prohledávání",
"Name" => "Název", "Name" => "Název",
"Size" => "Velikost", "Size" => "Velikost",
"Modified" => "Změněno", "Modified" => "Změněno",
@ -69,5 +62,6 @@
"Upload too large" => "Odeslaný soubor je příliš velký", "Upload too large" => "Odeslaný soubor je příliš velký",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Soubory, které se snažíte odeslat, překračují limit velikosti odesílání na tomto serveru.", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Soubory, které se snažíte odeslat, překračují limit velikosti odesílání na tomto serveru.",
"Files are being scanned, please wait." => "Soubory se prohledávají, prosím čekejte.", "Files are being scanned, please wait." => "Soubory se prohledávají, prosím čekejte.",
"Current scanning" => "Aktuální prohledávání" "Current scanning" => "Aktuální prohledávání",
"Upgrading filesystem cache..." => "Aktualizuji mezipaměť souborového systému..."
); );

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Kunne ikke flytte %s - der findes allerede en fil med dette navn",
"Could not move %s" => "Kunne ikke flytte %s",
"Unable to rename file" => "Kunne ikke omdøbe fil",
"No file was uploaded. Unknown error" => "Ingen fil blev uploadet. Ukendt fejl.", "No file was uploaded. Unknown error" => "Ingen fil blev uploadet. Ukendt fejl.",
"There is no error, the file uploaded with success" => "Der er ingen fejl, filen blev uploadet med success", "There is no error, the file uploaded with success" => "Der er ingen fejl, filen blev uploadet med success",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Den uploadede fil overstiger upload_max_filesize direktivet i php.ini", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Den uploadede fil overstiger upload_max_filesize direktivet i php.ini",
@ -10,7 +7,6 @@
"No file was uploaded" => "Ingen fil blev uploadet", "No file was uploaded" => "Ingen fil blev uploadet",
"Missing a temporary folder" => "Mangler en midlertidig mappe", "Missing a temporary folder" => "Mangler en midlertidig mappe",
"Failed to write to disk" => "Fejl ved skrivning til disk.", "Failed to write to disk" => "Fejl ved skrivning til disk.",
"Not enough storage available" => "Der er ikke nok plads til rådlighed",
"Invalid directory." => "Ugyldig mappe.", "Invalid directory." => "Ugyldig mappe.",
"Files" => "Filer", "Files" => "Filer",
"Unshare" => "Fjern deling", "Unshare" => "Fjern deling",
@ -23,8 +19,6 @@
"replaced {new_name}" => "erstattede {new_name}", "replaced {new_name}" => "erstattede {new_name}",
"undo" => "fortryd", "undo" => "fortryd",
"replaced {new_name} with {old_name}" => "erstattede {new_name} med {old_name}", "replaced {new_name} with {old_name}" => "erstattede {new_name} med {old_name}",
"unshared {files}" => "ikke delte {files}",
"deleted {files}" => "slettede {files}",
"'.' is an invalid file name." => "'.' er et ugyldigt filnavn.", "'.' is an invalid file name." => "'.' er et ugyldigt filnavn.",
"File name cannot be empty." => "Filnavnet kan ikke stå tomt.", "File name cannot be empty." => "Filnavnet kan ikke stå tomt.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ugyldigt navn, '\\', '/', '<', '>', ':' | '?', '\"', '', og '*' er ikke tilladt.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ugyldigt navn, '\\', '/', '<', '>', ':' | '?', '\"', '', og '*' er ikke tilladt.",
@ -41,8 +35,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Fil upload kører. Hvis du forlader siden nu, vil uploadet blive annuleret.", "File upload is in progress. Leaving the page now will cancel the upload." => "Fil upload kører. Hvis du forlader siden nu, vil uploadet blive annuleret.",
"URL cannot be empty." => "URLen kan ikke være tom.", "URL cannot be empty." => "URLen kan ikke være tom.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ugyldigt mappenavn. Brug af \"Shared\" er forbeholdt Owncloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ugyldigt mappenavn. Brug af \"Shared\" er forbeholdt Owncloud",
"{count} files scanned" => "{count} filer skannet",
"error while scanning" => "fejl under scanning",
"Name" => "Navn", "Name" => "Navn",
"Size" => "Størrelse", "Size" => "Størrelse",
"Modified" => "Ændret", "Modified" => "Ændret",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Konnte %s nicht verschieben - Datei mit diesem Namen existiert bereits.",
"Could not move %s" => "Konnte %s nicht verschieben",
"Unable to rename file" => "Konnte Datei nicht umbenennen",
"No file was uploaded. Unknown error" => "Keine Datei hochgeladen. Unbekannter Fehler", "No file was uploaded. Unknown error" => "Keine Datei hochgeladen. Unbekannter Fehler",
"There is no error, the file uploaded with success" => "Datei fehlerfrei hochgeladen.", "There is no error, the file uploaded with success" => "Datei fehlerfrei hochgeladen.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Die hochgeladene Datei überschreitet die upload_max_filesize Vorgabe in php.ini", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Die hochgeladene Datei überschreitet die upload_max_filesize Vorgabe in php.ini",
@ -10,7 +7,7 @@
"No file was uploaded" => "Es wurde keine Datei hochgeladen.", "No file was uploaded" => "Es wurde keine Datei hochgeladen.",
"Missing a temporary folder" => "Temporärer Ordner fehlt.", "Missing a temporary folder" => "Temporärer Ordner fehlt.",
"Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte", "Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte",
"Not enough storage available" => "Nicht genug Speicherplatz verfügbar", "Not enough space available" => "Nicht genug Speicherplatz verfügbar",
"Invalid directory." => "Ungültiges Verzeichnis", "Invalid directory." => "Ungültiges Verzeichnis",
"Files" => "Dateien", "Files" => "Dateien",
"Unshare" => "Nicht mehr freigeben", "Unshare" => "Nicht mehr freigeben",
@ -23,8 +20,6 @@
"replaced {new_name}" => "{new_name} wurde ersetzt", "replaced {new_name}" => "{new_name} wurde ersetzt",
"undo" => "rückgängig machen", "undo" => "rückgängig machen",
"replaced {new_name} with {old_name}" => "{old_name} ersetzt durch {new_name}", "replaced {new_name} with {old_name}" => "{old_name} ersetzt durch {new_name}",
"unshared {files}" => "Freigabe von {files} aufgehoben",
"deleted {files}" => "{files} gelöscht",
"'.' is an invalid file name." => "'.' ist kein gültiger Dateiname", "'.' is an invalid file name." => "'.' ist kein gültiger Dateiname",
"File name cannot be empty." => "Der Dateiname darf nicht leer sein", "File name cannot be empty." => "Der Dateiname darf nicht leer sein",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ungültiger Name, '\\', '/', '<', '>', ':', '\"', '|', '?' und '*' sind nicht zulässig.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ungültiger Name, '\\', '/', '<', '>', ':', '\"', '|', '?' und '*' sind nicht zulässig.",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Dateiupload läuft. Wenn Du die Seite jetzt verlässt, wird der Upload abgebrochen.", "File upload is in progress. Leaving the page now will cancel the upload." => "Dateiupload läuft. Wenn Du die Seite jetzt verlässt, wird der Upload abgebrochen.",
"URL cannot be empty." => "Die URL darf nicht leer sein", "URL cannot be empty." => "Die URL darf nicht leer sein",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ungültiger Verzeichnisname. Die Nutzung von \"Shared\" ist ownCloud vorbehalten.", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ungültiger Verzeichnisname. Die Nutzung von \"Shared\" ist ownCloud vorbehalten.",
"{count} files scanned" => "{count} Dateien wurden gescannt",
"error while scanning" => "Fehler beim Scannen",
"Name" => "Name", "Name" => "Name",
"Size" => "Größe", "Size" => "Größe",
"Modified" => "Bearbeitet", "Modified" => "Bearbeitet",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Konnte %s nicht verschieben - Datei mit diesem Namen existiert bereits",
"Could not move %s" => "Konnte %s nicht verschieben",
"Unable to rename file" => "Konnte Datei nicht umbenennen",
"No file was uploaded. Unknown error" => "Keine Datei hochgeladen. Unbekannter Fehler", "No file was uploaded. Unknown error" => "Keine Datei hochgeladen. Unbekannter Fehler",
"There is no error, the file uploaded with success" => "Es sind keine Fehler aufgetreten. Die Datei wurde erfolgreich hochgeladen.", "There is no error, the file uploaded with success" => "Es sind keine Fehler aufgetreten. Die Datei wurde erfolgreich hochgeladen.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Die hochgeladene Datei überschreitet die upload_max_filesize Vorgabe in php.ini", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Die hochgeladene Datei überschreitet die upload_max_filesize Vorgabe in php.ini",
@ -10,7 +7,7 @@
"No file was uploaded" => "Es wurde keine Datei hochgeladen.", "No file was uploaded" => "Es wurde keine Datei hochgeladen.",
"Missing a temporary folder" => "Der temporäre Ordner fehlt.", "Missing a temporary folder" => "Der temporäre Ordner fehlt.",
"Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte", "Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte",
"Not enough storage available" => "Nicht genug Speicher vorhanden.", "Not enough space available" => "Nicht genügend Speicherplatz verfügbar",
"Invalid directory." => "Ungültiges Verzeichnis.", "Invalid directory." => "Ungültiges Verzeichnis.",
"Files" => "Dateien", "Files" => "Dateien",
"Unshare" => "Nicht mehr freigeben", "Unshare" => "Nicht mehr freigeben",
@ -23,8 +20,6 @@
"replaced {new_name}" => "{new_name} wurde ersetzt", "replaced {new_name}" => "{new_name} wurde ersetzt",
"undo" => "rückgängig machen", "undo" => "rückgängig machen",
"replaced {new_name} with {old_name}" => "{old_name} wurde ersetzt durch {new_name}", "replaced {new_name} with {old_name}" => "{old_name} wurde ersetzt durch {new_name}",
"unshared {files}" => "Freigabe für {files} beendet",
"deleted {files}" => "{files} gelöscht",
"'.' is an invalid file name." => "'.' ist kein gültiger Dateiname.", "'.' is an invalid file name." => "'.' ist kein gültiger Dateiname.",
"File name cannot be empty." => "Der Dateiname darf nicht leer sein.", "File name cannot be empty." => "Der Dateiname darf nicht leer sein.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ungültiger Name, '\\', '/', '<', '>', ':', '\"', '|', '?' und '*' sind nicht zulässig.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ungültiger Name, '\\', '/', '<', '>', ':', '\"', '|', '?' und '*' sind nicht zulässig.",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Der Dateiupload läuft. Wenn Sie die Seite jetzt verlassen, wird der Upload abgebrochen.", "File upload is in progress. Leaving the page now will cancel the upload." => "Der Dateiupload läuft. Wenn Sie die Seite jetzt verlassen, wird der Upload abgebrochen.",
"URL cannot be empty." => "Die URL darf nicht leer sein.", "URL cannot be empty." => "Die URL darf nicht leer sein.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ungültiger Verzeichnisname. Die Nutzung von \"Shared\" ist ownCloud vorbehalten", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ungültiger Verzeichnisname. Die Nutzung von \"Shared\" ist ownCloud vorbehalten",
"{count} files scanned" => "{count} Dateien wurden gescannt",
"error while scanning" => "Fehler beim Scannen",
"Name" => "Name", "Name" => "Name",
"Size" => "Größe", "Size" => "Größe",
"Modified" => "Bearbeitet", "Modified" => "Bearbeitet",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Αδυναμία μετακίνησης του %s - υπάρχει ήδη αρχείο με αυτό το όνομα",
"Could not move %s" => "Αδυναμία μετακίνησης του %s",
"Unable to rename file" => "Αδυναμία μετονομασίας αρχείου",
"No file was uploaded. Unknown error" => "Δεν ανέβηκε κάποιο αρχείο. Άγνωστο σφάλμα", "No file was uploaded. Unknown error" => "Δεν ανέβηκε κάποιο αρχείο. Άγνωστο σφάλμα",
"There is no error, the file uploaded with success" => "Δεν υπάρχει σφάλμα, το αρχείο εστάλει επιτυχώς", "There is no error, the file uploaded with success" => "Δεν υπάρχει σφάλμα, το αρχείο εστάλει επιτυχώς",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Το απεσταλμένο αρχείο ξεπερνά την οδηγία upload_max_filesize στο php.ini:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Το απεσταλμένο αρχείο ξεπερνά την οδηγία upload_max_filesize στο php.ini:",
@ -10,7 +7,7 @@
"No file was uploaded" => "Κανένα αρχείο δεν στάλθηκε", "No file was uploaded" => "Κανένα αρχείο δεν στάλθηκε",
"Missing a temporary folder" => "Λείπει ο προσωρινός φάκελος", "Missing a temporary folder" => "Λείπει ο προσωρινός φάκελος",
"Failed to write to disk" => "Αποτυχία εγγραφής στο δίσκο", "Failed to write to disk" => "Αποτυχία εγγραφής στο δίσκο",
"Not enough storage available" => "Μη επαρκής διαθέσιμος αποθηκευτικός χώρος", "Not enough space available" => "Δεν υπάρχει αρκετός διαθέσιμος χώρος",
"Invalid directory." => "Μη έγκυρος φάκελος.", "Invalid directory." => "Μη έγκυρος φάκελος.",
"Files" => "Αρχεία", "Files" => "Αρχεία",
"Unshare" => "Διακοπή κοινής χρήσης", "Unshare" => "Διακοπή κοινής χρήσης",
@ -23,8 +20,6 @@
"replaced {new_name}" => "{new_name} αντικαταστάθηκε", "replaced {new_name}" => "{new_name} αντικαταστάθηκε",
"undo" => "αναίρεση", "undo" => "αναίρεση",
"replaced {new_name} with {old_name}" => "αντικαταστάθηκε το {new_name} με {old_name}", "replaced {new_name} with {old_name}" => "αντικαταστάθηκε το {new_name} με {old_name}",
"unshared {files}" => "μη διαμοιρασμένα {files}",
"deleted {files}" => "διαγραμμένα {files}",
"'.' is an invalid file name." => "'.' είναι μη έγκυρο όνομα αρχείου.", "'.' is an invalid file name." => "'.' είναι μη έγκυρο όνομα αρχείου.",
"File name cannot be empty." => "Το όνομα αρχείου δεν πρέπει να είναι κενό.", "File name cannot be empty." => "Το όνομα αρχείου δεν πρέπει να είναι κενό.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Μη έγκυρο όνομα, '\\', '/', '<', '>', ':', '\"', '|', '?' και '*' δεν επιτρέπονται.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Μη έγκυρο όνομα, '\\', '/', '<', '>', ':', '\"', '|', '?' και '*' δεν επιτρέπονται.",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Η αποστολή του αρχείου βρίσκεται σε εξέλιξη. Το κλείσιμο της σελίδας θα ακυρώσει την αποστολή.", "File upload is in progress. Leaving the page now will cancel the upload." => "Η αποστολή του αρχείου βρίσκεται σε εξέλιξη. Το κλείσιμο της σελίδας θα ακυρώσει την αποστολή.",
"URL cannot be empty." => "Η URL δεν πρέπει να είναι κενή.", "URL cannot be empty." => "Η URL δεν πρέπει να είναι κενή.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Μη έγκυρο όνομα φακέλου. Η χρήση του 'Κοινόχρηστος' χρησιμοποιείται από ο Owncloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Μη έγκυρο όνομα φακέλου. Η χρήση του 'Κοινόχρηστος' χρησιμοποιείται από ο Owncloud",
"{count} files scanned" => "{count} αρχεία ανιχνεύτηκαν",
"error while scanning" => "σφάλμα κατά την ανίχνευση",
"Name" => "Όνομα", "Name" => "Όνομα",
"Size" => "Μέγεθος", "Size" => "Μέγεθος",
"Modified" => "Τροποποιήθηκε", "Modified" => "Τροποποιήθηκε",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Ne eblis movi %s: dosiero kun ĉi tiu nomo jam ekzistas",
"Could not move %s" => "Ne eblis movi %s",
"Unable to rename file" => "Ne eblis alinomigi dosieron",
"No file was uploaded. Unknown error" => "Neniu dosiero alŝutiĝis. Nekonata eraro.", "No file was uploaded. Unknown error" => "Neniu dosiero alŝutiĝis. Nekonata eraro.",
"There is no error, the file uploaded with success" => "Ne estas eraro, la dosiero alŝutiĝis sukcese", "There is no error, the file uploaded with success" => "Ne estas eraro, la dosiero alŝutiĝis sukcese",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "La dosiero alŝutita superas la regulon upload_max_filesize el php.ini: ", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "La dosiero alŝutita superas la regulon upload_max_filesize el php.ini: ",
@ -10,6 +7,7 @@
"No file was uploaded" => "Neniu dosiero estas alŝutita", "No file was uploaded" => "Neniu dosiero estas alŝutita",
"Missing a temporary folder" => "Mankas tempa dosierujo", "Missing a temporary folder" => "Mankas tempa dosierujo",
"Failed to write to disk" => "Malsukcesis skribo al disko", "Failed to write to disk" => "Malsukcesis skribo al disko",
"Not enough space available" => "Ne haveblas sufiĉa spaco",
"Invalid directory." => "Nevalida dosierujo.", "Invalid directory." => "Nevalida dosierujo.",
"Files" => "Dosieroj", "Files" => "Dosieroj",
"Unshare" => "Malkunhavigi", "Unshare" => "Malkunhavigi",
@ -22,8 +20,6 @@
"replaced {new_name}" => "anstataŭiĝis {new_name}", "replaced {new_name}" => "anstataŭiĝis {new_name}",
"undo" => "malfari", "undo" => "malfari",
"replaced {new_name} with {old_name}" => "anstataŭiĝis {new_name} per {old_name}", "replaced {new_name} with {old_name}" => "anstataŭiĝis {new_name} per {old_name}",
"unshared {files}" => "malkunhaviĝis {files}",
"deleted {files}" => "foriĝis {files}",
"'.' is an invalid file name." => "'.' ne estas valida dosiernomo.", "'.' is an invalid file name." => "'.' ne estas valida dosiernomo.",
"File name cannot be empty." => "Dosiernomo devas ne malpleni.", "File name cannot be empty." => "Dosiernomo devas ne malpleni.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nevalida nomo: “\\”, “/”, “<”, “>”, “:”, “\"”, “|”, “?” kaj “*” ne permesatas.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nevalida nomo: “\\”, “/”, “<”, “>”, “:”, “\"”, “|”, “?” kaj “*” ne permesatas.",
@ -38,8 +34,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Dosieralŝuto plenumiĝas. Lasi la paĝon nun nuligus la alŝuton.", "File upload is in progress. Leaving the page now will cancel the upload." => "Dosieralŝuto plenumiĝas. Lasi la paĝon nun nuligus la alŝuton.",
"URL cannot be empty." => "URL ne povas esti malplena.", "URL cannot be empty." => "URL ne povas esti malplena.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nevalida dosierujnomo. Uzo de “Shared” rezervatas de Owncloud.", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nevalida dosierujnomo. Uzo de “Shared” rezervatas de Owncloud.",
"{count} files scanned" => "{count} dosieroj skaniĝis",
"error while scanning" => "eraro dum skano",
"Name" => "Nomo", "Name" => "Nomo",
"Size" => "Grando", "Size" => "Grando",
"Modified" => "Modifita", "Modified" => "Modifita",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "No se puede mover %s - Ya existe un archivo con ese nombre",
"Could not move %s" => "No se puede mover %s",
"Unable to rename file" => "No se puede renombrar el archivo",
"No file was uploaded. Unknown error" => "Fallo no se subió el fichero", "No file was uploaded. Unknown error" => "Fallo no se subió el fichero",
"There is no error, the file uploaded with success" => "No se ha producido ningún error, el archivo se ha subido con éxito", "There is no error, the file uploaded with success" => "No se ha producido ningún error, el archivo se ha subido con éxito",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "El archivo que intentas subir sobrepasa el tamaño definido por la variable upload_max_filesize en php.ini", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "El archivo que intentas subir sobrepasa el tamaño definido por la variable upload_max_filesize en php.ini",
@ -10,6 +7,7 @@
"No file was uploaded" => "No se ha subido ningún archivo", "No file was uploaded" => "No se ha subido ningún archivo",
"Missing a temporary folder" => "Falta un directorio temporal", "Missing a temporary folder" => "Falta un directorio temporal",
"Failed to write to disk" => "La escritura en disco ha fallado", "Failed to write to disk" => "La escritura en disco ha fallado",
"Not enough space available" => "No hay suficiente espacio disponible",
"Invalid directory." => "Directorio invalido.", "Invalid directory." => "Directorio invalido.",
"Files" => "Archivos", "Files" => "Archivos",
"Unshare" => "Dejar de compartir", "Unshare" => "Dejar de compartir",
@ -22,8 +20,6 @@
"replaced {new_name}" => "reemplazado {new_name}", "replaced {new_name}" => "reemplazado {new_name}",
"undo" => "deshacer", "undo" => "deshacer",
"replaced {new_name} with {old_name}" => "reemplazado {new_name} con {old_name}", "replaced {new_name} with {old_name}" => "reemplazado {new_name} con {old_name}",
"unshared {files}" => "{files} descompartidos",
"deleted {files}" => "{files} eliminados",
"'.' is an invalid file name." => "'.' es un nombre de archivo inválido.", "'.' is an invalid file name." => "'.' es un nombre de archivo inválido.",
"File name cannot be empty." => "El nombre de archivo no puede estar vacío.", "File name cannot be empty." => "El nombre de archivo no puede estar vacío.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nombre Invalido, \"\\\", \"/\", \"<\", \">\", \":\", \"\", \"|\" \"?\" y \"*\" no están permitidos ", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nombre Invalido, \"\\\", \"/\", \"<\", \">\", \":\", \"\", \"|\" \"?\" y \"*\" no están permitidos ",
@ -38,8 +34,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "La subida del archivo está en proceso. Salir de la página ahora cancelará la subida.", "File upload is in progress. Leaving the page now will cancel the upload." => "La subida del archivo está en proceso. Salir de la página ahora cancelará la subida.",
"URL cannot be empty." => "La URL no puede estar vacía.", "URL cannot be empty." => "La URL no puede estar vacía.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nombre de carpeta invalido. El uso de \"Shared\" esta reservado para Owncloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nombre de carpeta invalido. El uso de \"Shared\" esta reservado para Owncloud",
"{count} files scanned" => "{count} archivos escaneados",
"error while scanning" => "error escaneando",
"Name" => "Nombre", "Name" => "Nombre",
"Size" => "Tamaño", "Size" => "Tamaño",
"Modified" => "Modificado", "Modified" => "Modificado",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "No se pudo mover %s - Un archivo con este nombre ya existe",
"Could not move %s" => "No se pudo mover %s ",
"Unable to rename file" => "No fue posible cambiar el nombre al archivo",
"No file was uploaded. Unknown error" => "El archivo no fue subido. Error desconocido", "No file was uploaded. Unknown error" => "El archivo no fue subido. Error desconocido",
"There is no error, the file uploaded with success" => "No se han producido errores, el archivo se ha subido con éxito", "There is no error, the file uploaded with success" => "No se han producido errores, el archivo se ha subido con éxito",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "El archivo que intentás subir excede el tamaño definido por upload_max_filesize en el php.ini:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "El archivo que intentás subir excede el tamaño definido por upload_max_filesize en el php.ini:",
@ -10,6 +7,7 @@
"No file was uploaded" => "El archivo no fue subido", "No file was uploaded" => "El archivo no fue subido",
"Missing a temporary folder" => "Falta un directorio temporal", "Missing a temporary folder" => "Falta un directorio temporal",
"Failed to write to disk" => "Error al escribir en el disco", "Failed to write to disk" => "Error al escribir en el disco",
"Not enough space available" => "No hay suficiente espacio disponible",
"Invalid directory." => "Directorio invalido.", "Invalid directory." => "Directorio invalido.",
"Files" => "Archivos", "Files" => "Archivos",
"Unshare" => "Dejar de compartir", "Unshare" => "Dejar de compartir",
@ -22,11 +20,11 @@
"replaced {new_name}" => "reemplazado {new_name}", "replaced {new_name}" => "reemplazado {new_name}",
"undo" => "deshacer", "undo" => "deshacer",
"replaced {new_name} with {old_name}" => "reemplazado {new_name} con {old_name}", "replaced {new_name} with {old_name}" => "reemplazado {new_name} con {old_name}",
"unshared {files}" => "{files} se dejaron de compartir",
"deleted {files}" => "{files} borrados",
"'.' is an invalid file name." => "'.' es un nombre de archivo inválido.", "'.' is an invalid file name." => "'.' es un nombre de archivo inválido.",
"File name cannot be empty." => "El nombre del archivo no puede quedar vacío.", "File name cannot be empty." => "El nombre del archivo no puede quedar vacío.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nombre invalido, '\\', '/', '<', '>', ':', '\"', '|', '?' y '*' no están permitidos.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nombre invalido, '\\', '/', '<', '>', ':', '\"', '|', '?' y '*' no están permitidos.",
"Your storage is full, files can not be updated or synced anymore!" => "El almacenamiento está lleno, los archivos no se pueden seguir actualizando ni sincronizando",
"Your storage is almost full ({usedSpacePercent}%)" => "El almacenamiento está casi lleno ({usedSpacePercent}%)",
"Your download is being prepared. This might take some time if the files are big." => "Tu descarga esta siendo preparada. Esto puede tardar algun tiempo si los archivos son muy grandes.", "Your download is being prepared. This might take some time if the files are big." => "Tu descarga esta siendo preparada. Esto puede tardar algun tiempo si los archivos son muy grandes.",
"Unable to upload your file as it is a directory or has 0 bytes" => "No fue posible subir el archivo porque es un directorio o porque su tamaño es 0 bytes", "Unable to upload your file as it is a directory or has 0 bytes" => "No fue posible subir el archivo porque es un directorio o porque su tamaño es 0 bytes",
"Upload Error" => "Error al subir el archivo", "Upload Error" => "Error al subir el archivo",
@ -38,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "La subida del archivo está en proceso. Si salís de la página ahora, la subida se cancelará.", "File upload is in progress. Leaving the page now will cancel the upload." => "La subida del archivo está en proceso. Si salís de la página ahora, la subida se cancelará.",
"URL cannot be empty." => "La URL no puede estar vacía", "URL cannot be empty." => "La URL no puede estar vacía",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nombre de carpeta inválido. El uso de 'Shared' está reservado por ownCloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nombre de carpeta inválido. El uso de 'Shared' está reservado por ownCloud",
"{count} files scanned" => "{count} archivos escaneados",
"error while scanning" => "error mientras se escaneaba",
"Name" => "Nombre", "Name" => "Nombre",
"Size" => "Tamaño", "Size" => "Tamaño",
"Modified" => "Modificado", "Modified" => "Modificado",

View File

@ -17,8 +17,6 @@
"replaced {new_name}" => "asendatud nimega {new_name}", "replaced {new_name}" => "asendatud nimega {new_name}",
"undo" => "tagasi", "undo" => "tagasi",
"replaced {new_name} with {old_name}" => "asendas nime {old_name} nimega {new_name}", "replaced {new_name} with {old_name}" => "asendas nime {old_name} nimega {new_name}",
"unshared {files}" => "jagamata {files}",
"deleted {files}" => "kustutatud {files}",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Vigane nimi, '\\', '/', '<', '>', ':', '\"', '|', '?' ja '*' pole lubatud.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Vigane nimi, '\\', '/', '<', '>', ':', '\"', '|', '?' ja '*' pole lubatud.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Sinu faili üleslaadimine ebaõnnestus, kuna see on kaust või selle suurus on 0 baiti", "Unable to upload your file as it is a directory or has 0 bytes" => "Sinu faili üleslaadimine ebaõnnestus, kuna see on kaust või selle suurus on 0 baiti",
"Upload Error" => "Üleslaadimise viga", "Upload Error" => "Üleslaadimise viga",
@ -29,8 +27,6 @@
"Upload cancelled." => "Üleslaadimine tühistati.", "Upload cancelled." => "Üleslaadimine tühistati.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Faili üleslaadimine on töös. Lehelt lahkumine katkestab selle üleslaadimise.", "File upload is in progress. Leaving the page now will cancel the upload." => "Faili üleslaadimine on töös. Lehelt lahkumine katkestab selle üleslaadimise.",
"URL cannot be empty." => "URL ei saa olla tühi.", "URL cannot be empty." => "URL ei saa olla tühi.",
"{count} files scanned" => "{count} faili skännitud",
"error while scanning" => "viga skännimisel",
"Name" => "Nimi", "Name" => "Nimi",
"Size" => "Suurus", "Size" => "Suurus",
"Modified" => "Muudetud", "Modified" => "Muudetud",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Ezin da %s mugitu - Izen hau duen fitxategia dagoeneko existitzen da",
"Could not move %s" => "Ezin dira fitxategiak mugitu %s",
"Unable to rename file" => "Ezin izan da fitxategia berrizendatu",
"No file was uploaded. Unknown error" => "Ez da fitxategirik igo. Errore ezezaguna", "No file was uploaded. Unknown error" => "Ez da fitxategirik igo. Errore ezezaguna",
"There is no error, the file uploaded with success" => "Ez da arazorik izan, fitxategia ongi igo da", "There is no error, the file uploaded with success" => "Ez da arazorik izan, fitxategia ongi igo da",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Igotako fitxategiak php.ini fitxategian ezarritako upload_max_filesize muga gainditu du:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Igotako fitxategiak php.ini fitxategian ezarritako upload_max_filesize muga gainditu du:",
@ -10,7 +7,7 @@
"No file was uploaded" => "Ez da fitxategirik igo", "No file was uploaded" => "Ez da fitxategirik igo",
"Missing a temporary folder" => "Aldi baterako karpeta falta da", "Missing a temporary folder" => "Aldi baterako karpeta falta da",
"Failed to write to disk" => "Errore bat izan da diskoan idazterakoan", "Failed to write to disk" => "Errore bat izan da diskoan idazterakoan",
"Not enough storage available" => "Ez dago behar aina leku erabilgarri,", "Not enough space available" => "Ez dago leku nahikorik.",
"Invalid directory." => "Baliogabeko karpeta.", "Invalid directory." => "Baliogabeko karpeta.",
"Files" => "Fitxategiak", "Files" => "Fitxategiak",
"Unshare" => "Ez elkarbanatu", "Unshare" => "Ez elkarbanatu",
@ -23,8 +20,6 @@
"replaced {new_name}" => "ordezkatua {new_name}", "replaced {new_name}" => "ordezkatua {new_name}",
"undo" => "desegin", "undo" => "desegin",
"replaced {new_name} with {old_name}" => " {new_name}-k {old_name} ordezkatu du", "replaced {new_name} with {old_name}" => " {new_name}-k {old_name} ordezkatu du",
"unshared {files}" => "elkarbanaketa utzita {files}",
"deleted {files}" => "ezabatuta {files}",
"'.' is an invalid file name." => "'.' ez da fitxategi izen baliogarria.", "'.' is an invalid file name." => "'.' ez da fitxategi izen baliogarria.",
"File name cannot be empty." => "Fitxategi izena ezin da hutsa izan.", "File name cannot be empty." => "Fitxategi izena ezin da hutsa izan.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "IZen aliogabea, '\\', '/', '<', '>', ':', '\"', '|', '?' eta '*' ez daude baimenduta.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "IZen aliogabea, '\\', '/', '<', '>', ':', '\"', '|', '?' eta '*' ez daude baimenduta.",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Fitxategien igoera martxan da. Orria orain uzteak igoera ezeztatutko du.", "File upload is in progress. Leaving the page now will cancel the upload." => "Fitxategien igoera martxan da. Orria orain uzteak igoera ezeztatutko du.",
"URL cannot be empty." => "URLa ezin da hutsik egon.", "URL cannot be empty." => "URLa ezin da hutsik egon.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Baliogabeako karpeta izena. 'Shared' izena Owncloudek erreserbatzen du", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Baliogabeako karpeta izena. 'Shared' izena Owncloudek erreserbatzen du",
"{count} files scanned" => "{count} fitxategi eskaneatuta",
"error while scanning" => "errore bat egon da eskaneatzen zen bitartean",
"Name" => "Izena", "Name" => "Izena",
"Size" => "Tamaina", "Size" => "Tamaina",
"Modified" => "Aldatuta", "Modified" => "Aldatuta",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s نمی تواند حرکت کند - در حال حاضر پرونده با این نام وجود دارد. ",
"Could not move %s" => "%s نمی تواند حرکت کند ",
"Unable to rename file" => "قادر به تغییر نام پرونده نیست.",
"No file was uploaded. Unknown error" => "هیچ فایلی آپلود نشد.خطای ناشناس", "No file was uploaded. Unknown error" => "هیچ فایلی آپلود نشد.خطای ناشناس",
"There is no error, the file uploaded with success" => "هیچ خطایی وجود ندارد فایل با موفقیت بار گذاری شد", "There is no error, the file uploaded with success" => "هیچ خطایی وجود ندارد فایل با موفقیت بار گذاری شد",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "پرونده آپلود شده بیش ازدستور ماکزیمم_حجم فایل_برای آپلود در php.ini استفاده کرده است.", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "پرونده آپلود شده بیش ازدستور ماکزیمم_حجم فایل_برای آپلود در php.ini استفاده کرده است.",
@ -10,6 +7,7 @@
"No file was uploaded" => "هیچ فایلی بارگذاری نشده", "No file was uploaded" => "هیچ فایلی بارگذاری نشده",
"Missing a temporary folder" => "یک پوشه موقت گم شده است", "Missing a temporary folder" => "یک پوشه موقت گم شده است",
"Failed to write to disk" => "نوشتن بر روی دیسک سخت ناموفق بود", "Failed to write to disk" => "نوشتن بر روی دیسک سخت ناموفق بود",
"Not enough space available" => "فضای کافی در دسترس نیست",
"Invalid directory." => "فهرست راهنما نامعتبر می باشد.", "Invalid directory." => "فهرست راهنما نامعتبر می باشد.",
"Files" => "فایل ها", "Files" => "فایل ها",
"Unshare" => "لغو اشتراک", "Unshare" => "لغو اشتراک",
@ -22,8 +20,6 @@
"replaced {new_name}" => "{نام _جدید} جایگزین شد ", "replaced {new_name}" => "{نام _جدید} جایگزین شد ",
"undo" => "بازگشت", "undo" => "بازگشت",
"replaced {new_name} with {old_name}" => "{نام_جدید} با { نام_قدیمی} جایگزین شد.", "replaced {new_name} with {old_name}" => "{نام_جدید} با { نام_قدیمی} جایگزین شد.",
"unshared {files}" => "{ فایل های } قسمت نشده",
"deleted {files}" => "{ فایل های } پاک شده",
"'.' is an invalid file name." => "'.' یک نام پرونده نامعتبر است.", "'.' is an invalid file name." => "'.' یک نام پرونده نامعتبر است.",
"File name cannot be empty." => "نام پرونده نمی تواند خالی باشد.", "File name cannot be empty." => "نام پرونده نمی تواند خالی باشد.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "نام نامعتبر ، '\\', '/', '<', '>', ':', '\"', '|', '?' و '*' مجاز نمی باشند.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "نام نامعتبر ، '\\', '/', '<', '>', ':', '\"', '|', '?' و '*' مجاز نمی باشند.",
@ -38,8 +34,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "آپلودکردن پرونده در حال پیشرفت است. در صورت خروج از صفحه آپلود لغو میگردد. ", "File upload is in progress. Leaving the page now will cancel the upload." => "آپلودکردن پرونده در حال پیشرفت است. در صورت خروج از صفحه آپلود لغو میگردد. ",
"URL cannot be empty." => "URL نمی تواند خالی باشد.", "URL cannot be empty." => "URL نمی تواند خالی باشد.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "نام پوشه نامعتبر است. استفاده از \" به اشتراک گذاشته شده \" متعلق به سایت Owncloud است.", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "نام پوشه نامعتبر است. استفاده از \" به اشتراک گذاشته شده \" متعلق به سایت Owncloud است.",
"{count} files scanned" => "{ شمار } فایل های اسکن شده",
"error while scanning" => "خطا در حال انجام اسکن ",
"Name" => "نام", "Name" => "نام",
"Size" => "اندازه", "Size" => "اندازه",
"Modified" => "تغییر یافته", "Modified" => "تغییر یافته",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Kohteen %s siirto ei onnistunut - Tiedosto samalla nimellä on jo olemassa",
"Could not move %s" => "Kohteen %s siirto ei onnistunut",
"Unable to rename file" => "Tiedoston nimeäminen uudelleen ei onnistunut",
"No file was uploaded. Unknown error" => "Tiedostoa ei lähetetty. Tuntematon virhe", "No file was uploaded. Unknown error" => "Tiedostoa ei lähetetty. Tuntematon virhe",
"There is no error, the file uploaded with success" => "Ei virheitä, tiedosto lähetettiin onnistuneesti", "There is no error, the file uploaded with success" => "Ei virheitä, tiedosto lähetettiin onnistuneesti",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Lähetetty tiedosto ylittää HTML-lomakkeessa määritetyn MAX_FILE_SIZE-arvon ylärajan", "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Lähetetty tiedosto ylittää HTML-lomakkeessa määritetyn MAX_FILE_SIZE-arvon ylärajan",
@ -9,7 +6,7 @@
"No file was uploaded" => "Yhtäkään tiedostoa ei lähetetty", "No file was uploaded" => "Yhtäkään tiedostoa ei lähetetty",
"Missing a temporary folder" => "Väliaikaiskansiota ei ole olemassa", "Missing a temporary folder" => "Väliaikaiskansiota ei ole olemassa",
"Failed to write to disk" => "Levylle kirjoitus epäonnistui", "Failed to write to disk" => "Levylle kirjoitus epäonnistui",
"Not enough storage available" => "Tallennustilaa ei ole riittävästi käytettävissä", "Not enough space available" => "Tilaa ei ole riittävästi",
"Invalid directory." => "Virheellinen kansio.", "Invalid directory." => "Virheellinen kansio.",
"Files" => "Tiedostot", "Files" => "Tiedostot",
"Unshare" => "Peru jakaminen", "Unshare" => "Peru jakaminen",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Impossible de déplacer %s - Un fichier possédant ce nom existe déjà",
"Could not move %s" => "Impossible de déplacer %s",
"Unable to rename file" => "Impossible de renommer le fichier",
"No file was uploaded. Unknown error" => "Aucun fichier n'a été chargé. Erreur inconnue", "No file was uploaded. Unknown error" => "Aucun fichier n'a été chargé. Erreur inconnue",
"There is no error, the file uploaded with success" => "Aucune erreur, le fichier a été téléversé avec succès", "There is no error, the file uploaded with success" => "Aucune erreur, le fichier a été téléversé avec succès",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Le fichier envoyé dépasse la valeur upload_max_filesize située dans le fichier php.ini:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Le fichier envoyé dépasse la valeur upload_max_filesize située dans le fichier php.ini:",
@ -10,7 +7,7 @@
"No file was uploaded" => "Aucun fichier n'a été téléversé", "No file was uploaded" => "Aucun fichier n'a été téléversé",
"Missing a temporary folder" => "Il manque un répertoire temporaire", "Missing a temporary folder" => "Il manque un répertoire temporaire",
"Failed to write to disk" => "Erreur d'écriture sur le disque", "Failed to write to disk" => "Erreur d'écriture sur le disque",
"Not enough storage available" => "Plus assez d'espace de stockage disponible", "Not enough space available" => "Espace disponible insuffisant",
"Invalid directory." => "Dossier invalide.", "Invalid directory." => "Dossier invalide.",
"Files" => "Fichiers", "Files" => "Fichiers",
"Unshare" => "Ne plus partager", "Unshare" => "Ne plus partager",
@ -23,8 +20,6 @@
"replaced {new_name}" => "{new_name} a été remplacé", "replaced {new_name}" => "{new_name} a été remplacé",
"undo" => "annuler", "undo" => "annuler",
"replaced {new_name} with {old_name}" => "{new_name} a été remplacé par {old_name}", "replaced {new_name} with {old_name}" => "{new_name} a été remplacé par {old_name}",
"unshared {files}" => "Fichiers non partagés : {files}",
"deleted {files}" => "Fichiers supprimés : {files}",
"'.' is an invalid file name." => "'.' n'est pas un nom de fichier valide.", "'.' is an invalid file name." => "'.' n'est pas un nom de fichier valide.",
"File name cannot be empty." => "Le nom de fichier ne peut être vide.", "File name cannot be empty." => "Le nom de fichier ne peut être vide.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nom invalide, les caractères '\\', '/', '<', '>', ':', '\"', '|', '?' et '*' ne sont pas autorisés.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nom invalide, les caractères '\\', '/', '<', '>', ':', '\"', '|', '?' et '*' ne sont pas autorisés.",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "L'envoi du fichier est en cours. Quitter cette page maintenant annulera l'envoi du fichier.", "File upload is in progress. Leaving the page now will cancel the upload." => "L'envoi du fichier est en cours. Quitter cette page maintenant annulera l'envoi du fichier.",
"URL cannot be empty." => "L'URL ne peut-être vide", "URL cannot be empty." => "L'URL ne peut-être vide",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nom de dossier invalide. L'utilisation du mot 'Shared' est réservée à Owncloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nom de dossier invalide. L'utilisation du mot 'Shared' est réservée à Owncloud",
"{count} files scanned" => "{count} fichiers indexés",
"error while scanning" => "erreur lors de l'indexation",
"Name" => "Nom", "Name" => "Nom",
"Size" => "Taille", "Size" => "Taille",
"Modified" => "Modifié", "Modified" => "Modifié",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Non se moveu %s - Xa existe un ficheiro con ese nome.",
"Could not move %s" => "Non se puido mover %s",
"Unable to rename file" => "Non se pode renomear o ficheiro",
"No file was uploaded. Unknown error" => "Non se subiu ningún ficheiro. Erro descoñecido.", "No file was uploaded. Unknown error" => "Non se subiu ningún ficheiro. Erro descoñecido.",
"There is no error, the file uploaded with success" => "Non hai erros. O ficheiro enviouse correctamente", "There is no error, the file uploaded with success" => "Non hai erros. O ficheiro enviouse correctamente",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "O ficheiro subido excede a directiva indicada polo tamaño_máximo_de_subida de php.ini", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "O ficheiro subido excede a directiva indicada polo tamaño_máximo_de_subida de php.ini",
@ -10,6 +7,7 @@
"No file was uploaded" => "Non se enviou ningún ficheiro", "No file was uploaded" => "Non se enviou ningún ficheiro",
"Missing a temporary folder" => "Falta un cartafol temporal", "Missing a temporary folder" => "Falta un cartafol temporal",
"Failed to write to disk" => "Erro ao escribir no disco", "Failed to write to disk" => "Erro ao escribir no disco",
"Not enough space available" => "O espazo dispoñíbel é insuficiente",
"Invalid directory." => "O directorio é incorrecto.", "Invalid directory." => "O directorio é incorrecto.",
"Files" => "Ficheiros", "Files" => "Ficheiros",
"Unshare" => "Deixar de compartir", "Unshare" => "Deixar de compartir",
@ -22,8 +20,6 @@
"replaced {new_name}" => "substituír {new_name}", "replaced {new_name}" => "substituír {new_name}",
"undo" => "desfacer", "undo" => "desfacer",
"replaced {new_name} with {old_name}" => "substituír {new_name} polo {old_name}", "replaced {new_name} with {old_name}" => "substituír {new_name} polo {old_name}",
"unshared {files}" => "{files} sen compartir",
"deleted {files}" => "{files} eliminados",
"'.' is an invalid file name." => "'.' é un nonme de ficheiro non válido", "'.' is an invalid file name." => "'.' é un nonme de ficheiro non válido",
"File name cannot be empty." => "O nome de ficheiro non pode estar baldeiro", "File name cannot be empty." => "O nome de ficheiro non pode estar baldeiro",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome non válido, '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' non se permiten.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome non válido, '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' non se permiten.",
@ -37,8 +33,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "A subida do ficheiro está en curso. Saír agora da páxina cancelará a subida.", "File upload is in progress. Leaving the page now will cancel the upload." => "A subida do ficheiro está en curso. Saír agora da páxina cancelará a subida.",
"URL cannot be empty." => "URL non pode quedar baleiro.", "URL cannot be empty." => "URL non pode quedar baleiro.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome de cartafol non válido. O uso de 'Shared' está reservado por Owncloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome de cartafol non válido. O uso de 'Shared' está reservado por Owncloud",
"{count} files scanned" => "{count} ficheiros escaneados",
"error while scanning" => "erro mentres analizaba",
"Name" => "Nome", "Name" => "Nome",
"Size" => "Tamaño", "Size" => "Tamaño",
"Modified" => "Modificado", "Modified" => "Modificado",

View File

@ -18,8 +18,6 @@
"replaced {new_name}" => "{new_name} הוחלף", "replaced {new_name}" => "{new_name} הוחלף",
"undo" => "ביטול", "undo" => "ביטול",
"replaced {new_name} with {old_name}" => "{new_name} הוחלף ב־{old_name}", "replaced {new_name} with {old_name}" => "{new_name} הוחלף ב־{old_name}",
"unshared {files}" => "בוטל שיתופם של {files}",
"deleted {files}" => "{files} נמחקו",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "השם שגוי, אסור להשתמש בתווים '\\', '/', '<', '>', ':', '\"', '|', '?' ו־'*'.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "השם שגוי, אסור להשתמש בתווים '\\', '/', '<', '>', ':', '\"', '|', '?' ו־'*'.",
"Unable to upload your file as it is a directory or has 0 bytes" => "לא יכול להעלות את הקובץ מכיוון שזו תקיה או שמשקל הקובץ 0 בתים", "Unable to upload your file as it is a directory or has 0 bytes" => "לא יכול להעלות את הקובץ מכיוון שזו תקיה או שמשקל הקובץ 0 בתים",
"Upload Error" => "שגיאת העלאה", "Upload Error" => "שגיאת העלאה",
@ -30,8 +28,6 @@
"Upload cancelled." => "ההעלאה בוטלה.", "Upload cancelled." => "ההעלאה בוטלה.",
"File upload is in progress. Leaving the page now will cancel the upload." => "מתבצעת כעת העלאת קבצים. עזיבה של העמוד תבטל את ההעלאה.", "File upload is in progress. Leaving the page now will cancel the upload." => "מתבצעת כעת העלאת קבצים. עזיבה של העמוד תבטל את ההעלאה.",
"URL cannot be empty." => "קישור אינו יכול להיות ריק.", "URL cannot be empty." => "קישור אינו יכול להיות ריק.",
"{count} files scanned" => "{count} קבצים נסרקו",
"error while scanning" => "אירעה שגיאה במהלך הסריקה",
"Name" => "שם", "Name" => "שם",
"Size" => "גודל", "Size" => "גודל",
"Modified" => "זמן שינוי", "Modified" => "זמן שינוי",

View File

@ -20,7 +20,6 @@
"1 file uploading" => "1 datoteka se učitava", "1 file uploading" => "1 datoteka se učitava",
"Upload cancelled." => "Slanje poništeno.", "Upload cancelled." => "Slanje poništeno.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Učitavanje datoteke. Napuštanjem stranice će prekinuti učitavanje.", "File upload is in progress. Leaving the page now will cancel the upload." => "Učitavanje datoteke. Napuštanjem stranice će prekinuti učitavanje.",
"error while scanning" => "grečka prilikom skeniranja",
"Name" => "Naziv", "Name" => "Naziv",
"Size" => "Veličina", "Size" => "Veličina",
"Modified" => "Zadnja promjena", "Modified" => "Zadnja promjena",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s áthelyezése nem sikerült - már létezik másik fájl ezzel a névvel",
"Could not move %s" => "Nem sikerült %s áthelyezése",
"Unable to rename file" => "Nem lehet átnevezni a fájlt",
"No file was uploaded. Unknown error" => "Nem történt feltöltés. Ismeretlen hiba", "No file was uploaded. Unknown error" => "Nem történt feltöltés. Ismeretlen hiba",
"There is no error, the file uploaded with success" => "A fájlt sikerült feltölteni", "There is no error, the file uploaded with success" => "A fájlt sikerült feltölteni",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "A feltöltött fájl mérete meghaladja a php.ini állományban megadott upload_max_filesize paraméter értékét.", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "A feltöltött fájl mérete meghaladja a php.ini állományban megadott upload_max_filesize paraméter értékét.",
@ -10,7 +7,7 @@
"No file was uploaded" => "Nem töltődött fel semmi", "No file was uploaded" => "Nem töltődött fel semmi",
"Missing a temporary folder" => "Hiányzik egy ideiglenes mappa", "Missing a temporary folder" => "Hiányzik egy ideiglenes mappa",
"Failed to write to disk" => "Nem sikerült a lemezre történő írás", "Failed to write to disk" => "Nem sikerült a lemezre történő írás",
"Not enough storage available" => "Nincs elég szabad hely.", "Not enough space available" => "Nincs elég szabad hely",
"Invalid directory." => "Érvénytelen mappa.", "Invalid directory." => "Érvénytelen mappa.",
"Files" => "Fájlok", "Files" => "Fájlok",
"Unshare" => "Megosztás visszavonása", "Unshare" => "Megosztás visszavonása",
@ -23,8 +20,6 @@
"replaced {new_name}" => "a(z) {new_name} állományt kicseréltük", "replaced {new_name}" => "a(z) {new_name} állományt kicseréltük",
"undo" => "visszavonás", "undo" => "visszavonás",
"replaced {new_name} with {old_name}" => "{new_name} fájlt kicseréltük ezzel: {old_name}", "replaced {new_name} with {old_name}" => "{new_name} fájlt kicseréltük ezzel: {old_name}",
"unshared {files}" => "{files} fájl megosztása visszavonva",
"deleted {files}" => "{files} fájl törölve",
"'.' is an invalid file name." => "'.' fájlnév érvénytelen.", "'.' is an invalid file name." => "'.' fájlnév érvénytelen.",
"File name cannot be empty." => "A fájlnév nem lehet semmi.", "File name cannot be empty." => "A fájlnév nem lehet semmi.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Érvénytelen elnevezés. Ezek a karakterek nem használhatók: '\\', '/', '<', '>', ':', '\"', '|', '?' és '*'", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Érvénytelen elnevezés. Ezek a karakterek nem használhatók: '\\', '/', '<', '>', ':', '\"', '|', '?' és '*'",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Fájlfeltöltés van folyamatban. Az oldal elhagyása megszakítja a feltöltést.", "File upload is in progress. Leaving the page now will cancel the upload." => "Fájlfeltöltés van folyamatban. Az oldal elhagyása megszakítja a feltöltést.",
"URL cannot be empty." => "Az URL nem lehet semmi.", "URL cannot be empty." => "Az URL nem lehet semmi.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Érvénytelen mappanév. A név használata csak a Owncloud számára lehetséges.", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Érvénytelen mappanév. A név használata csak a Owncloud számára lehetséges.",
"{count} files scanned" => "{count} fájlt találtunk",
"error while scanning" => "Hiba a fájllista-ellenőrzés során",
"Name" => "Név", "Name" => "Név",
"Size" => "Méret", "Size" => "Méret",
"Modified" => "Módosítva", "Modified" => "Módosítva",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Gat ekki fært %s - Skrá með þessu nafni er þegar til",
"Could not move %s" => "Gat ekki fært %s",
"Unable to rename file" => "Gat ekki endurskýrt skrá",
"No file was uploaded. Unknown error" => "Engin skrá var send inn. Óþekkt villa.", "No file was uploaded. Unknown error" => "Engin skrá var send inn. Óþekkt villa.",
"There is no error, the file uploaded with success" => "Engin villa, innsending heppnaðist", "There is no error, the file uploaded with success" => "Engin villa, innsending heppnaðist",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Innsend skrá er stærri en upload_max stillingin í php.ini:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Innsend skrá er stærri en upload_max stillingin í php.ini:",
@ -10,6 +7,7 @@
"No file was uploaded" => "Engin skrá skilaði sér", "No file was uploaded" => "Engin skrá skilaði sér",
"Missing a temporary folder" => "Vantar bráðabirgðamöppu", "Missing a temporary folder" => "Vantar bráðabirgðamöppu",
"Failed to write to disk" => "Tókst ekki að skrifa á disk", "Failed to write to disk" => "Tókst ekki að skrifa á disk",
"Not enough space available" => "Ekki nægt pláss tiltækt",
"Invalid directory." => "Ógild mappa.", "Invalid directory." => "Ógild mappa.",
"Files" => "Skrár", "Files" => "Skrár",
"Unshare" => "Hætta deilingu", "Unshare" => "Hætta deilingu",
@ -22,8 +20,6 @@
"replaced {new_name}" => "endurskýrði {new_name}", "replaced {new_name}" => "endurskýrði {new_name}",
"undo" => "afturkalla", "undo" => "afturkalla",
"replaced {new_name} with {old_name}" => "yfirskrifaði {new_name} með {old_name}", "replaced {new_name} with {old_name}" => "yfirskrifaði {new_name} með {old_name}",
"unshared {files}" => "Hætti við deilingu á {files}",
"deleted {files}" => "eyddi {files}",
"'.' is an invalid file name." => "'.' er ekki leyfilegt nafn.", "'.' is an invalid file name." => "'.' er ekki leyfilegt nafn.",
"File name cannot be empty." => "Nafn skráar má ekki vera tómt", "File name cannot be empty." => "Nafn skráar má ekki vera tómt",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ógilt nafn, táknin '\\', '/', '<', '>', ':', '\"', '|', '?' og '*' eru ekki leyfð.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ógilt nafn, táknin '\\', '/', '<', '>', ':', '\"', '|', '?' og '*' eru ekki leyfð.",
@ -37,8 +33,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Innsending í gangi. Ef þú ferð af þessari síðu mun innsending misheppnast.", "File upload is in progress. Leaving the page now will cancel the upload." => "Innsending í gangi. Ef þú ferð af þessari síðu mun innsending misheppnast.",
"URL cannot be empty." => "Vefslóð má ekki vera tóm.", "URL cannot be empty." => "Vefslóð má ekki vera tóm.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Óleyfilegt nafn á möppu. Nafnið 'Shared' er frátekið fyrir Owncloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Óleyfilegt nafn á möppu. Nafnið 'Shared' er frátekið fyrir Owncloud",
"{count} files scanned" => "{count} skrár skimaðar",
"error while scanning" => "villa við skimun",
"Name" => "Nafn", "Name" => "Nafn",
"Size" => "Stærð", "Size" => "Stærð",
"Modified" => "Breytt", "Modified" => "Breytt",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Impossibile spostare %s - un file con questo nome esiste già",
"Could not move %s" => "Impossibile spostare %s",
"Unable to rename file" => "Impossibile rinominare il file",
"No file was uploaded. Unknown error" => "Nessun file è stato inviato. Errore sconosciuto", "No file was uploaded. Unknown error" => "Nessun file è stato inviato. Errore sconosciuto",
"There is no error, the file uploaded with success" => "Non ci sono errori, file caricato con successo", "There is no error, the file uploaded with success" => "Non ci sono errori, file caricato con successo",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Il file caricato supera la direttiva upload_max_filesize in php.ini:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Il file caricato supera la direttiva upload_max_filesize in php.ini:",
@ -10,7 +7,7 @@
"No file was uploaded" => "Nessun file è stato caricato", "No file was uploaded" => "Nessun file è stato caricato",
"Missing a temporary folder" => "Cartella temporanea mancante", "Missing a temporary folder" => "Cartella temporanea mancante",
"Failed to write to disk" => "Scrittura su disco non riuscita", "Failed to write to disk" => "Scrittura su disco non riuscita",
"Not enough storage available" => "Spazio di archiviazione insufficiente", "Not enough space available" => "Spazio disponibile insufficiente",
"Invalid directory." => "Cartella non valida.", "Invalid directory." => "Cartella non valida.",
"Files" => "File", "Files" => "File",
"Unshare" => "Rimuovi condivisione", "Unshare" => "Rimuovi condivisione",
@ -23,8 +20,6 @@
"replaced {new_name}" => "sostituito {new_name}", "replaced {new_name}" => "sostituito {new_name}",
"undo" => "annulla", "undo" => "annulla",
"replaced {new_name} with {old_name}" => "sostituito {new_name} con {old_name}", "replaced {new_name} with {old_name}" => "sostituito {new_name} con {old_name}",
"unshared {files}" => "non condivisi {files}",
"deleted {files}" => "eliminati {files}",
"'.' is an invalid file name." => "'.' non è un nome file valido.", "'.' is an invalid file name." => "'.' non è un nome file valido.",
"File name cannot be empty." => "Il nome del file non può essere vuoto.", "File name cannot be empty." => "Il nome del file non può essere vuoto.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome non valido, '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' non sono consentiti.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome non valido, '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' non sono consentiti.",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Caricamento del file in corso. La chiusura della pagina annullerà il caricamento.", "File upload is in progress. Leaving the page now will cancel the upload." => "Caricamento del file in corso. La chiusura della pagina annullerà il caricamento.",
"URL cannot be empty." => "L'URL non può essere vuoto.", "URL cannot be empty." => "L'URL non può essere vuoto.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome della cartella non valido. L'uso di 'Shared' è riservato da ownCloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome della cartella non valido. L'uso di 'Shared' è riservato da ownCloud",
"{count} files scanned" => "{count} file analizzati",
"error while scanning" => "errore durante la scansione",
"Name" => "Nome", "Name" => "Nome",
"Size" => "Dimensione", "Size" => "Dimensione",
"Modified" => "Modificato", "Modified" => "Modificato",
@ -69,5 +62,6 @@
"Upload too large" => "Il file caricato è troppo grande", "Upload too large" => "Il file caricato è troppo grande",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "I file che stai provando a caricare superano la dimensione massima consentita su questo server.", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "I file che stai provando a caricare superano la dimensione massima consentita su questo server.",
"Files are being scanned, please wait." => "Scansione dei file in corso, attendi", "Files are being scanned, please wait." => "Scansione dei file in corso, attendi",
"Current scanning" => "Scansione corrente" "Current scanning" => "Scansione corrente",
"Upgrading filesystem cache..." => "Aggiornamento della cache del filesystem in corso..."
); );

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s を移動できませんでした ― この名前のファイルはすでに存在します",
"Could not move %s" => "%s を移動できませんでした",
"Unable to rename file" => "ファイル名の変更ができません",
"No file was uploaded. Unknown error" => "ファイルは何もアップロードされていません。不明なエラー", "No file was uploaded. Unknown error" => "ファイルは何もアップロードされていません。不明なエラー",
"There is no error, the file uploaded with success" => "エラーはありません。ファイルのアップロードは成功しました", "There is no error, the file uploaded with success" => "エラーはありません。ファイルのアップロードは成功しました",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "アップロードされたファイルはphp.ini の upload_max_filesize に設定されたサイズを超えています:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "アップロードされたファイルはphp.ini の upload_max_filesize に設定されたサイズを超えています:",
@ -10,7 +7,7 @@
"No file was uploaded" => "ファイルはアップロードされませんでした", "No file was uploaded" => "ファイルはアップロードされませんでした",
"Missing a temporary folder" => "テンポラリフォルダが見つかりません", "Missing a temporary folder" => "テンポラリフォルダが見つかりません",
"Failed to write to disk" => "ディスクへの書き込みに失敗しました", "Failed to write to disk" => "ディスクへの書き込みに失敗しました",
"Not enough storage available" => "ストレージに十分な空き容量がありません", "Not enough space available" => "利用可能なスペースが十分にありません",
"Invalid directory." => "無効なディレクトリです。", "Invalid directory." => "無効なディレクトリです。",
"Files" => "ファイル", "Files" => "ファイル",
"Unshare" => "共有しない", "Unshare" => "共有しない",
@ -23,8 +20,6 @@
"replaced {new_name}" => "{new_name} を置換", "replaced {new_name}" => "{new_name} を置換",
"undo" => "元に戻す", "undo" => "元に戻す",
"replaced {new_name} with {old_name}" => "{old_name} を {new_name} に置換", "replaced {new_name} with {old_name}" => "{old_name} を {new_name} に置換",
"unshared {files}" => "未共有 {files}",
"deleted {files}" => "削除 {files}",
"'.' is an invalid file name." => "'.' は無効なファイル名です。", "'.' is an invalid file name." => "'.' は無効なファイル名です。",
"File name cannot be empty." => "ファイル名を空にすることはできません。", "File name cannot be empty." => "ファイル名を空にすることはできません。",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "無効な名前、'\\', '/', '<', '>', ':', '\"', '|', '?', '*' は使用できません。", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "無効な名前、'\\', '/', '<', '>', ':', '\"', '|', '?', '*' は使用できません。",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "ファイル転送を実行中です。今このページから移動するとアップロードが中止されます。", "File upload is in progress. Leaving the page now will cancel the upload." => "ファイル転送を実行中です。今このページから移動するとアップロードが中止されます。",
"URL cannot be empty." => "URLは空にできません。", "URL cannot be empty." => "URLは空にできません。",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "無効なフォルダ名です。'Shared' の利用は ownCloud が予約済みです。", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "無効なフォルダ名です。'Shared' の利用は ownCloud が予約済みです。",
"{count} files scanned" => "{count} ファイルをスキャン",
"error while scanning" => "スキャン中のエラー",
"Name" => "名前", "Name" => "名前",
"Size" => "サイズ", "Size" => "サイズ",
"Modified" => "更新日時", "Modified" => "更新日時",

View File

@ -16,8 +16,6 @@
"replaced {new_name}" => "{new_name} შეცვლილია", "replaced {new_name}" => "{new_name} შეცვლილია",
"undo" => "დაბრუნება", "undo" => "დაბრუნება",
"replaced {new_name} with {old_name}" => "{new_name} შეცვლილია {old_name}–ით", "replaced {new_name} with {old_name}" => "{new_name} შეცვლილია {old_name}–ით",
"unshared {files}" => "გაზიარება მოხსნილი {files}",
"deleted {files}" => "წაშლილი {files}",
"Unable to upload your file as it is a directory or has 0 bytes" => "თქვენი ფაილის ატვირთვა ვერ მოხერხდა. ის არის საქაღალდე და შეიცავს 0 ბაიტს", "Unable to upload your file as it is a directory or has 0 bytes" => "თქვენი ფაილის ატვირთვა ვერ მოხერხდა. ის არის საქაღალდე და შეიცავს 0 ბაიტს",
"Upload Error" => "შეცდომა ატვირთვისას", "Upload Error" => "შეცდომა ატვირთვისას",
"Close" => "დახურვა", "Close" => "დახურვა",
@ -26,8 +24,6 @@
"{count} files uploading" => "{count} ფაილი იტვირთება", "{count} files uploading" => "{count} ფაილი იტვირთება",
"Upload cancelled." => "ატვირთვა შეჩერებულ იქნა.", "Upload cancelled." => "ატვირთვა შეჩერებულ იქნა.",
"File upload is in progress. Leaving the page now will cancel the upload." => "მიმდინარეობს ფაილის ატვირთვა. სხვა გვერდზე გადასვლა გამოიწვევს ატვირთვის შეჩერებას", "File upload is in progress. Leaving the page now will cancel the upload." => "მიმდინარეობს ფაილის ატვირთვა. სხვა გვერდზე გადასვლა გამოიწვევს ატვირთვის შეჩერებას",
"{count} files scanned" => "{count} ფაილი სკანირებულია",
"error while scanning" => "შეცდომა სკანირებისას",
"Name" => "სახელი", "Name" => "სახელი",
"Size" => "ზომა", "Size" => "ზომა",
"Modified" => "შეცვლილია", "Modified" => "შეცვლილია",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s 항목을 이동시키지 못하였음 - 파일 이름이 이미 존재함",
"Could not move %s" => "%s 항목을 이딩시키지 못하였음",
"Unable to rename file" => "파일 이름바꾸기 할 수 없음",
"No file was uploaded. Unknown error" => "파일이 업로드되지 않았습니다. 알 수 없는 오류입니다", "No file was uploaded. Unknown error" => "파일이 업로드되지 않았습니다. 알 수 없는 오류입니다",
"There is no error, the file uploaded with success" => "업로드에 성공하였습니다.", "There is no error, the file uploaded with success" => "업로드에 성공하였습니다.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "업로드한 파일이 php.ini의 upload_max_filesize보다 큽니다:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "업로드한 파일이 php.ini의 upload_max_filesize보다 큽니다:",
@ -10,7 +7,8 @@
"No file was uploaded" => "업로드된 파일 없음", "No file was uploaded" => "업로드된 파일 없음",
"Missing a temporary folder" => "임시 폴더가 사라짐", "Missing a temporary folder" => "임시 폴더가 사라짐",
"Failed to write to disk" => "디스크에 쓰지 못했습니다", "Failed to write to disk" => "디스크에 쓰지 못했습니다",
"Invalid directory." => "올바르지 않은 디렉토리입니다.", "Not enough space available" => "여유 공간이 부족합니다",
"Invalid directory." => "올바르지 않은 디렉터리입니다.",
"Files" => "파일", "Files" => "파일",
"Unshare" => "공유 해제", "Unshare" => "공유 해제",
"Delete" => "삭제", "Delete" => "삭제",
@ -22,11 +20,12 @@
"replaced {new_name}" => "{new_name}을(를) 대체함", "replaced {new_name}" => "{new_name}을(를) 대체함",
"undo" => "실행 취소", "undo" => "실행 취소",
"replaced {new_name} with {old_name}" => "{old_name}이(가) {new_name}(으)로 대체됨", "replaced {new_name} with {old_name}" => "{old_name}이(가) {new_name}(으)로 대체됨",
"unshared {files}" => "{files} 공유 해제됨",
"deleted {files}" => "{files} 삭제됨",
"'.' is an invalid file name." => "'.' 는 올바르지 않은 파일 이름 입니다.", "'.' is an invalid file name." => "'.' 는 올바르지 않은 파일 이름 입니다.",
"File name cannot be empty." => "파일이름은 공란이 될 수 없습니다.", "File name cannot be empty." => "파일 이름이 비어 있을 수 없습니다.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "폴더 이름이 올바르지 않습니다. 이름에 문자 '\\', '/', '<', '>', ':', '\"', '|', '? ', '*'는 사용할 수 없습니다.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "폴더 이름이 올바르지 않습니다. 이름에 문자 '\\', '/', '<', '>', ':', '\"', '|', '? ', '*'는 사용할 수 없습니다.",
"Your storage is full, files can not be updated or synced anymore!" => "저장 공간이 가득 찼습니다. 파일을 업데이트하거나 동기화할 수 없습니다!",
"Your storage is almost full ({usedSpacePercent}%)" => "저장 공간이 거의 가득 찼습니다 ({usedSpacePercent}%)",
"Your download is being prepared. This might take some time if the files are big." => "다운로드가 준비 중입니다. 파일 크기가 크다면 시간이 오래 걸릴 수도 있습니다.",
"Unable to upload your file as it is a directory or has 0 bytes" => "이 파일은 디렉터리이거나 비어 있기 때문에 업로드할 수 없습니다", "Unable to upload your file as it is a directory or has 0 bytes" => "이 파일은 디렉터리이거나 비어 있기 때문에 업로드할 수 없습니다",
"Upload Error" => "업로드 오류", "Upload Error" => "업로드 오류",
"Close" => "닫기", "Close" => "닫기",
@ -37,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "파일 업로드가 진행 중입니다. 이 페이지를 벗어나면 업로드가 취소됩니다.", "File upload is in progress. Leaving the page now will cancel the upload." => "파일 업로드가 진행 중입니다. 이 페이지를 벗어나면 업로드가 취소됩니다.",
"URL cannot be empty." => "URL을 입력해야 합니다.", "URL cannot be empty." => "URL을 입력해야 합니다.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "폴더 이름이 유효하지 않습니다. ", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "폴더 이름이 유효하지 않습니다. ",
"{count} files scanned" => "파일 {count}개 검색됨",
"error while scanning" => "검색 중 오류 발생",
"Name" => "이름", "Name" => "이름",
"Size" => "크기", "Size" => "크기",
"Modified" => "수정됨", "Modified" => "수정됨",
@ -65,5 +62,6 @@
"Upload too large" => "업로드 용량 초과", "Upload too large" => "업로드 용량 초과",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "이 파일이 서버에서 허용하는 최대 업로드 가능 용량보다 큽니다.", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "이 파일이 서버에서 허용하는 최대 업로드 가능 용량보다 큽니다.",
"Files are being scanned, please wait." => "파일을 검색하고 있습니다. 기다려 주십시오.", "Files are being scanned, please wait." => "파일을 검색하고 있습니다. 기다려 주십시오.",
"Current scanning" => "현재 검색" "Current scanning" => "현재 검색",
"Upgrading filesystem cache..." => "파일 시스템 캐시 업그레이드 중..."
); );

View File

@ -16,8 +16,6 @@
"replaced {new_name}" => "pakeiskite {new_name}", "replaced {new_name}" => "pakeiskite {new_name}",
"undo" => "anuliuoti", "undo" => "anuliuoti",
"replaced {new_name} with {old_name}" => "pakeiskite {new_name} į {old_name}", "replaced {new_name} with {old_name}" => "pakeiskite {new_name} į {old_name}",
"unshared {files}" => "nebesidalinti {files}",
"deleted {files}" => "ištrinti {files}",
"Unable to upload your file as it is a directory or has 0 bytes" => "Neįmanoma įkelti failo - jo dydis gali būti 0 bitų arba tai katalogas", "Unable to upload your file as it is a directory or has 0 bytes" => "Neįmanoma įkelti failo - jo dydis gali būti 0 bitų arba tai katalogas",
"Upload Error" => "Įkėlimo klaida", "Upload Error" => "Įkėlimo klaida",
"Close" => "Užverti", "Close" => "Užverti",
@ -26,8 +24,6 @@
"{count} files uploading" => "{count} įkeliami failai", "{count} files uploading" => "{count} įkeliami failai",
"Upload cancelled." => "Įkėlimas atšauktas.", "Upload cancelled." => "Įkėlimas atšauktas.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Failo įkėlimas pradėtas. Jei paliksite šį puslapį, įkėlimas nutrūks.", "File upload is in progress. Leaving the page now will cancel the upload." => "Failo įkėlimas pradėtas. Jei paliksite šį puslapį, įkėlimas nutrūks.",
"{count} files scanned" => "{count} praskanuoti failai",
"error while scanning" => "klaida skanuojant",
"Name" => "Pavadinimas", "Name" => "Pavadinimas",
"Size" => "Dydis", "Size" => "Dydis",
"Modified" => "Pakeista", "Modified" => "Pakeista",

View File

@ -18,8 +18,6 @@
"replaced {new_name}" => "земенета {new_name}", "replaced {new_name}" => "земенета {new_name}",
"undo" => "врати", "undo" => "врати",
"replaced {new_name} with {old_name}" => "заменета {new_name} со {old_name}", "replaced {new_name} with {old_name}" => "заменета {new_name} со {old_name}",
"unshared {files}" => "без споделување {files}",
"deleted {files}" => "избришани {files}",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Неправилно име. , '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' не се дозволени.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Неправилно име. , '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' не се дозволени.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Не може да се преземе вашата датотека бидејќи фолдерот во кој се наоѓа фајлот има големина од 0 бајти", "Unable to upload your file as it is a directory or has 0 bytes" => "Не може да се преземе вашата датотека бидејќи фолдерот во кој се наоѓа фајлот има големина од 0 бајти",
"Upload Error" => "Грешка при преземање", "Upload Error" => "Грешка при преземање",
@ -30,8 +28,6 @@
"Upload cancelled." => "Преземањето е прекинато.", "Upload cancelled." => "Преземањето е прекинато.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Подигање на датотека е во тек. Напуштење на страницата ќе го прекине.", "File upload is in progress. Leaving the page now will cancel the upload." => "Подигање на датотека е во тек. Напуштење на страницата ќе го прекине.",
"URL cannot be empty." => "Адресата неможе да биде празна.", "URL cannot be empty." => "Адресата неможе да биде празна.",
"{count} files scanned" => "{count} датотеки скенирани",
"error while scanning" => "грешка при скенирање",
"Name" => "Име", "Name" => "Име",
"Size" => "Големина", "Size" => "Големина",
"Modified" => "Променето", "Modified" => "Променето",

View File

@ -17,7 +17,6 @@
"replaced {new_name}" => "erstatt {new_name}", "replaced {new_name}" => "erstatt {new_name}",
"undo" => "angre", "undo" => "angre",
"replaced {new_name} with {old_name}" => "erstatt {new_name} med {old_name}", "replaced {new_name} with {old_name}" => "erstatt {new_name} med {old_name}",
"deleted {files}" => "slettet {files}",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ugyldig navn, '\\', '/', '<', '>', ':', '\"', '|', '?' og '*' er ikke tillatt.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ugyldig navn, '\\', '/', '<', '>', ':', '\"', '|', '?' og '*' er ikke tillatt.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Kan ikke laste opp filen din siden det er en mappe eller den har 0 bytes", "Unable to upload your file as it is a directory or has 0 bytes" => "Kan ikke laste opp filen din siden det er en mappe eller den har 0 bytes",
"Upload Error" => "Opplasting feilet", "Upload Error" => "Opplasting feilet",
@ -28,8 +27,6 @@
"Upload cancelled." => "Opplasting avbrutt.", "Upload cancelled." => "Opplasting avbrutt.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Filopplasting pågår. Forlater du siden nå avbrytes opplastingen.", "File upload is in progress. Leaving the page now will cancel the upload." => "Filopplasting pågår. Forlater du siden nå avbrytes opplastingen.",
"URL cannot be empty." => "URL-en kan ikke være tom.", "URL cannot be empty." => "URL-en kan ikke være tom.",
"{count} files scanned" => "{count} filer lest inn",
"error while scanning" => "feil under skanning",
"Name" => "Navn", "Name" => "Navn",
"Size" => "Størrelse", "Size" => "Størrelse",
"Modified" => "Endret", "Modified" => "Endret",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Kon %s niet verplaatsen - Er bestaat al een bestand met deze naam",
"Could not move %s" => "Kon %s niet verplaatsen",
"Unable to rename file" => "Kan bestand niet hernoemen",
"No file was uploaded. Unknown error" => "Er was geen bestand geladen. Onbekende fout", "No file was uploaded. Unknown error" => "Er was geen bestand geladen. Onbekende fout",
"There is no error, the file uploaded with success" => "Geen fout opgetreden, bestand successvol geupload.", "There is no error, the file uploaded with success" => "Geen fout opgetreden, bestand successvol geupload.",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Het geüploade bestand overscheidt de upload_max_filesize optie in php.ini:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Het geüploade bestand overscheidt de upload_max_filesize optie in php.ini:",
@ -10,6 +7,7 @@
"No file was uploaded" => "Geen bestand geüpload", "No file was uploaded" => "Geen bestand geüpload",
"Missing a temporary folder" => "Een tijdelijke map mist", "Missing a temporary folder" => "Een tijdelijke map mist",
"Failed to write to disk" => "Schrijven naar schijf mislukt", "Failed to write to disk" => "Schrijven naar schijf mislukt",
"Not enough space available" => "Niet genoeg ruimte beschikbaar",
"Invalid directory." => "Ongeldige directory.", "Invalid directory." => "Ongeldige directory.",
"Files" => "Bestanden", "Files" => "Bestanden",
"Unshare" => "Stop delen", "Unshare" => "Stop delen",
@ -22,8 +20,6 @@
"replaced {new_name}" => "verving {new_name}", "replaced {new_name}" => "verving {new_name}",
"undo" => "ongedaan maken", "undo" => "ongedaan maken",
"replaced {new_name} with {old_name}" => "verving {new_name} met {old_name}", "replaced {new_name} with {old_name}" => "verving {new_name} met {old_name}",
"unshared {files}" => "delen gestopt {files}",
"deleted {files}" => "verwijderde {files}",
"'.' is an invalid file name." => "'.' is een ongeldige bestandsnaam.", "'.' is an invalid file name." => "'.' is een ongeldige bestandsnaam.",
"File name cannot be empty." => "Bestandsnaam kan niet leeg zijn.", "File name cannot be empty." => "Bestandsnaam kan niet leeg zijn.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Onjuiste naam; '\\', '/', '<', '>', ':', '\"', '|', '?' en '*' zijn niet toegestaan.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Onjuiste naam; '\\', '/', '<', '>', ':', '\"', '|', '?' en '*' zijn niet toegestaan.",
@ -38,8 +34,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Bestandsupload is bezig. Wanneer de pagina nu verlaten wordt, stopt de upload.", "File upload is in progress. Leaving the page now will cancel the upload." => "Bestandsupload is bezig. Wanneer de pagina nu verlaten wordt, stopt de upload.",
"URL cannot be empty." => "URL kan niet leeg zijn.", "URL cannot be empty." => "URL kan niet leeg zijn.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ongeldige mapnaam. Gebruik van'Gedeeld' is voorbehouden aan Owncloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ongeldige mapnaam. Gebruik van'Gedeeld' is voorbehouden aan Owncloud",
"{count} files scanned" => "{count} bestanden gescanned",
"error while scanning" => "Fout tijdens het scannen",
"Name" => "Naam", "Name" => "Naam",
"Size" => "Bestandsgrootte", "Size" => "Bestandsgrootte",
"Modified" => "Laatst aangepast", "Modified" => "Laatst aangepast",

View File

@ -19,7 +19,6 @@
"1 file uploading" => "1 fichièr al amontcargar", "1 file uploading" => "1 fichièr al amontcargar",
"Upload cancelled." => "Amontcargar anullat.", "Upload cancelled." => "Amontcargar anullat.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Un amontcargar es a se far. Daissar aquesta pagina ara tamparà lo cargament. ", "File upload is in progress. Leaving the page now will cancel the upload." => "Un amontcargar es a se far. Daissar aquesta pagina ara tamparà lo cargament. ",
"error while scanning" => "error pendant l'exploracion",
"Name" => "Nom", "Name" => "Nom",
"Size" => "Talha", "Size" => "Talha",
"Modified" => "Modificat", "Modified" => "Modificat",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Nie można było przenieść %s - Plik o takiej nazwie już istnieje",
"Could not move %s" => "Nie można było przenieść %s",
"Unable to rename file" => "Nie można zmienić nazwy pliku",
"No file was uploaded. Unknown error" => "Plik nie został załadowany. Nieznany błąd", "No file was uploaded. Unknown error" => "Plik nie został załadowany. Nieznany błąd",
"There is no error, the file uploaded with success" => "Przesłano plik", "There is no error, the file uploaded with success" => "Przesłano plik",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Wgrany plik przekracza wartość upload_max_filesize zdefiniowaną w php.ini: ", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Wgrany plik przekracza wartość upload_max_filesize zdefiniowaną w php.ini: ",
@ -10,6 +7,7 @@
"No file was uploaded" => "Nie przesłano żadnego pliku", "No file was uploaded" => "Nie przesłano żadnego pliku",
"Missing a temporary folder" => "Brak katalogu tymczasowego", "Missing a temporary folder" => "Brak katalogu tymczasowego",
"Failed to write to disk" => "Błąd zapisu na dysk", "Failed to write to disk" => "Błąd zapisu na dysk",
"Not enough space available" => "Za mało miejsca",
"Invalid directory." => "Zła ścieżka.", "Invalid directory." => "Zła ścieżka.",
"Files" => "Pliki", "Files" => "Pliki",
"Unshare" => "Nie udostępniaj", "Unshare" => "Nie udostępniaj",
@ -22,8 +20,6 @@
"replaced {new_name}" => "zastąpiony {new_name}", "replaced {new_name}" => "zastąpiony {new_name}",
"undo" => "wróć", "undo" => "wróć",
"replaced {new_name} with {old_name}" => "zastąpiony {new_name} z {old_name}", "replaced {new_name} with {old_name}" => "zastąpiony {new_name} z {old_name}",
"unshared {files}" => "Udostępniane wstrzymane {files}",
"deleted {files}" => "usunięto {files}",
"'.' is an invalid file name." => "'.' jest nieprawidłową nazwą pliku.", "'.' is an invalid file name." => "'.' jest nieprawidłową nazwą pliku.",
"File name cannot be empty." => "Nazwa pliku nie może być pusta.", "File name cannot be empty." => "Nazwa pliku nie może być pusta.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Niepoprawna nazwa, Znaki '\\', '/', '<', '>', ':', '\"', '|', '?' oraz '*'są niedozwolone.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Niepoprawna nazwa, Znaki '\\', '/', '<', '>', ':', '\"', '|', '?' oraz '*'są niedozwolone.",
@ -37,8 +33,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Wysyłanie pliku jest w toku. Teraz opuszczając stronę wysyłanie zostanie anulowane.", "File upload is in progress. Leaving the page now will cancel the upload." => "Wysyłanie pliku jest w toku. Teraz opuszczając stronę wysyłanie zostanie anulowane.",
"URL cannot be empty." => "URL nie może być pusty.", "URL cannot be empty." => "URL nie może być pusty.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nazwa folderu nieprawidłowa. Wykorzystanie \"Shared\" jest zarezerwowane przez Owncloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nazwa folderu nieprawidłowa. Wykorzystanie \"Shared\" jest zarezerwowane przez Owncloud",
"{count} files scanned" => "{count} pliki skanowane",
"error while scanning" => "Wystąpił błąd podczas skanowania",
"Name" => "Nazwa", "Name" => "Nazwa",
"Size" => "Rozmiar", "Size" => "Rozmiar",
"Modified" => "Czas modyfikacji", "Modified" => "Czas modyfikacji",

View File

@ -7,6 +7,7 @@
"No file was uploaded" => "Nenhum arquivo foi transferido", "No file was uploaded" => "Nenhum arquivo foi transferido",
"Missing a temporary folder" => "Pasta temporária não encontrada", "Missing a temporary folder" => "Pasta temporária não encontrada",
"Failed to write to disk" => "Falha ao escrever no disco", "Failed to write to disk" => "Falha ao escrever no disco",
"Invalid directory." => "Diretório inválido.",
"Files" => "Arquivos", "Files" => "Arquivos",
"Unshare" => "Descompartilhar", "Unshare" => "Descompartilhar",
"Delete" => "Excluir", "Delete" => "Excluir",
@ -18,9 +19,10 @@
"replaced {new_name}" => "substituído {new_name}", "replaced {new_name}" => "substituído {new_name}",
"undo" => "desfazer", "undo" => "desfazer",
"replaced {new_name} with {old_name}" => "Substituído {old_name} por {new_name} ", "replaced {new_name} with {old_name}" => "Substituído {old_name} por {new_name} ",
"unshared {files}" => "{files} não compartilhados", "'.' is an invalid file name." => "'.' é um nome de arquivo inválido.",
"deleted {files}" => "{files} apagados", "File name cannot be empty." => "O nome do arquivo não pode estar vazio.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome inválido, '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' não são permitidos.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome inválido, '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' não são permitidos.",
"Your download is being prepared. This might take some time if the files are big." => "Seu download está sendo preparado. Isto pode levar algum tempo se os arquivos forem grandes.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Impossível enviar seus arquivo como diretório ou ele tem 0 bytes.", "Unable to upload your file as it is a directory or has 0 bytes" => "Impossível enviar seus arquivo como diretório ou ele tem 0 bytes.",
"Upload Error" => "Erro de envio", "Upload Error" => "Erro de envio",
"Close" => "Fechar", "Close" => "Fechar",
@ -30,8 +32,7 @@
"Upload cancelled." => "Envio cancelado.", "Upload cancelled." => "Envio cancelado.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Upload em andamento. Sair da página agora resultará no cancelamento do envio.", "File upload is in progress. Leaving the page now will cancel the upload." => "Upload em andamento. Sair da página agora resultará no cancelamento do envio.",
"URL cannot be empty." => "URL não pode ficar em branco", "URL cannot be empty." => "URL não pode ficar em branco",
"{count} files scanned" => "{count} arquivos scaneados", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome de pasta inválido. O uso de 'Shared' é reservado para o Owncloud",
"error while scanning" => "erro durante verificação",
"Name" => "Nome", "Name" => "Nome",
"Size" => "Tamanho", "Size" => "Tamanho",
"Modified" => "Modificado", "Modified" => "Modificado",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Não foi possível mover o ficheiro %s - Já existe um ficheiro com esse nome",
"Could not move %s" => "Não foi possível move o ficheiro %s",
"Unable to rename file" => "Não foi possível renomear o ficheiro",
"No file was uploaded. Unknown error" => "Nenhum ficheiro foi carregado. Erro desconhecido", "No file was uploaded. Unknown error" => "Nenhum ficheiro foi carregado. Erro desconhecido",
"There is no error, the file uploaded with success" => "Sem erro, ficheiro enviado com sucesso", "There is no error, the file uploaded with success" => "Sem erro, ficheiro enviado com sucesso",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "O ficheiro enviado excede o limite permitido na directiva do php.ini upload_max_filesize", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "O ficheiro enviado excede o limite permitido na directiva do php.ini upload_max_filesize",
@ -10,7 +7,7 @@
"No file was uploaded" => "Não foi enviado nenhum ficheiro", "No file was uploaded" => "Não foi enviado nenhum ficheiro",
"Missing a temporary folder" => "Falta uma pasta temporária", "Missing a temporary folder" => "Falta uma pasta temporária",
"Failed to write to disk" => "Falhou a escrita no disco", "Failed to write to disk" => "Falhou a escrita no disco",
"Not enough storage available" => "Não há espaço suficiente em disco", "Not enough space available" => "Espaço em disco insuficiente!",
"Invalid directory." => "Directório Inválido", "Invalid directory." => "Directório Inválido",
"Files" => "Ficheiros", "Files" => "Ficheiros",
"Unshare" => "Deixar de partilhar", "Unshare" => "Deixar de partilhar",
@ -23,8 +20,6 @@
"replaced {new_name}" => "{new_name} substituido", "replaced {new_name}" => "{new_name} substituido",
"undo" => "desfazer", "undo" => "desfazer",
"replaced {new_name} with {old_name}" => "substituido {new_name} por {old_name}", "replaced {new_name} with {old_name}" => "substituido {new_name} por {old_name}",
"unshared {files}" => "{files} não partilhado(s)",
"deleted {files}" => "{files} eliminado(s)",
"'.' is an invalid file name." => "'.' não é um nome de ficheiro válido!", "'.' is an invalid file name." => "'.' não é um nome de ficheiro válido!",
"File name cannot be empty." => "O nome do ficheiro não pode estar vazio.", "File name cannot be empty." => "O nome do ficheiro não pode estar vazio.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome Inválido, os caracteres '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' não são permitidos.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome Inválido, os caracteres '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' não são permitidos.",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Envio de ficheiro em progresso. Irá cancelar o envio se sair da página agora.", "File upload is in progress. Leaving the page now will cancel the upload." => "Envio de ficheiro em progresso. Irá cancelar o envio se sair da página agora.",
"URL cannot be empty." => "O URL não pode estar vazio.", "URL cannot be empty." => "O URL não pode estar vazio.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome de pasta inválido. O Uso de 'shared' é reservado para o ownCloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome de pasta inválido. O Uso de 'shared' é reservado para o ownCloud",
"{count} files scanned" => "{count} ficheiros analisados",
"error while scanning" => "erro ao analisar",
"Name" => "Nome", "Name" => "Nome",
"Size" => "Tamanho", "Size" => "Tamanho",
"Modified" => "Modificado", "Modified" => "Modificado",
@ -69,5 +62,6 @@
"Upload too large" => "Envio muito grande", "Upload too large" => "Envio muito grande",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os ficheiros que está a tentar enviar excedem o tamanho máximo de envio permitido neste servidor.", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os ficheiros que está a tentar enviar excedem o tamanho máximo de envio permitido neste servidor.",
"Files are being scanned, please wait." => "Os ficheiros estão a ser analisados, por favor aguarde.", "Files are being scanned, please wait." => "Os ficheiros estão a ser analisados, por favor aguarde.",
"Current scanning" => "Análise actual" "Current scanning" => "Análise actual",
"Upgrading filesystem cache..." => "Atualizar cache do sistema de ficheiros..."
); );

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Nu se poate de mutat %s - Fișier cu acest nume deja există",
"Could not move %s" => "Nu s-a putut muta %s",
"Unable to rename file" => "Nu s-a putut redenumi fișierul",
"No file was uploaded. Unknown error" => "Nici un fișier nu a fost încărcat. Eroare necunoscută", "No file was uploaded. Unknown error" => "Nici un fișier nu a fost încărcat. Eroare necunoscută",
"There is no error, the file uploaded with success" => "Nicio eroare, fișierul a fost încărcat cu succes", "There is no error, the file uploaded with success" => "Nicio eroare, fișierul a fost încărcat cu succes",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Fisierul incarcat depaseste upload_max_filesize permisi in php.ini: ", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Fisierul incarcat depaseste upload_max_filesize permisi in php.ini: ",
@ -10,6 +7,7 @@
"No file was uploaded" => "Niciun fișier încărcat", "No file was uploaded" => "Niciun fișier încărcat",
"Missing a temporary folder" => "Lipsește un dosar temporar", "Missing a temporary folder" => "Lipsește un dosar temporar",
"Failed to write to disk" => "Eroare la scriere pe disc", "Failed to write to disk" => "Eroare la scriere pe disc",
"Not enough space available" => "Nu este suficient spațiu disponibil",
"Invalid directory." => "Director invalid.", "Invalid directory." => "Director invalid.",
"Files" => "Fișiere", "Files" => "Fișiere",
"Unshare" => "Anulează partajarea", "Unshare" => "Anulează partajarea",
@ -22,8 +20,6 @@
"replaced {new_name}" => "inlocuit {new_name}", "replaced {new_name}" => "inlocuit {new_name}",
"undo" => "Anulează ultima acțiune", "undo" => "Anulează ultima acțiune",
"replaced {new_name} with {old_name}" => "{new_name} inlocuit cu {old_name}", "replaced {new_name} with {old_name}" => "{new_name} inlocuit cu {old_name}",
"unshared {files}" => "nedistribuit {files}",
"deleted {files}" => "Sterse {files}",
"'.' is an invalid file name." => "'.' este un nume invalid de fișier.", "'.' is an invalid file name." => "'.' este un nume invalid de fișier.",
"File name cannot be empty." => "Numele fișierului nu poate rămâne gol.", "File name cannot be empty." => "Numele fișierului nu poate rămâne gol.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nume invalid, '\\', '/', '<', '>', ':', '\"', '|', '?' si '*' nu sunt permise.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nume invalid, '\\', '/', '<', '>', ':', '\"', '|', '?' si '*' nu sunt permise.",
@ -38,8 +34,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Fișierul este în curs de încărcare. Părăsirea paginii va întrerupe încărcarea.", "File upload is in progress. Leaving the page now will cancel the upload." => "Fișierul este în curs de încărcare. Părăsirea paginii va întrerupe încărcarea.",
"URL cannot be empty." => "Adresa URL nu poate fi goală.", "URL cannot be empty." => "Adresa URL nu poate fi goală.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Invalid folder name. Usage of 'Shared' is reserved by Ownclou", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Invalid folder name. Usage of 'Shared' is reserved by Ownclou",
"{count} files scanned" => "{count} fisiere scanate",
"error while scanning" => "eroare la scanarea",
"Name" => "Nume", "Name" => "Nume",
"Size" => "Dimensiune", "Size" => "Dimensiune",
"Modified" => "Modificat", "Modified" => "Modificat",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Невозможно переместить %s - файл с таким именем уже существует",
"Could not move %s" => "Невозможно переместить %s",
"Unable to rename file" => "Невозможно переименовать файл",
"No file was uploaded. Unknown error" => "Файл не был загружен. Неизвестная ошибка", "No file was uploaded. Unknown error" => "Файл не был загружен. Неизвестная ошибка",
"There is no error, the file uploaded with success" => "Файл успешно загружен", "There is no error, the file uploaded with success" => "Файл успешно загружен",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Файл превышает размер установленный upload_max_filesize в php.ini:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Файл превышает размер установленный upload_max_filesize в php.ini:",
@ -10,6 +7,7 @@
"No file was uploaded" => "Файл не был загружен", "No file was uploaded" => "Файл не был загружен",
"Missing a temporary folder" => "Невозможно найти временную папку", "Missing a temporary folder" => "Невозможно найти временную папку",
"Failed to write to disk" => "Ошибка записи на диск", "Failed to write to disk" => "Ошибка записи на диск",
"Not enough space available" => "Недостаточно свободного места",
"Invalid directory." => "Неправильный каталог.", "Invalid directory." => "Неправильный каталог.",
"Files" => "Файлы", "Files" => "Файлы",
"Unshare" => "Отменить публикацию", "Unshare" => "Отменить публикацию",
@ -22,8 +20,6 @@
"replaced {new_name}" => "заменено {new_name}", "replaced {new_name}" => "заменено {new_name}",
"undo" => "отмена", "undo" => "отмена",
"replaced {new_name} with {old_name}" => "заменено {new_name} на {old_name}", "replaced {new_name} with {old_name}" => "заменено {new_name} на {old_name}",
"unshared {files}" => "не опубликованные {files}",
"deleted {files}" => "удаленные {files}",
"'.' is an invalid file name." => "'.' - неправильное имя файла.", "'.' is an invalid file name." => "'.' - неправильное имя файла.",
"File name cannot be empty." => "Имя файла не может быть пустым.", "File name cannot be empty." => "Имя файла не может быть пустым.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Неправильное имя, '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' недопустимы.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Неправильное имя, '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' недопустимы.",
@ -37,8 +33,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Файл в процессе загрузки. Покинув страницу вы прервёте загрузку.", "File upload is in progress. Leaving the page now will cancel the upload." => "Файл в процессе загрузки. Покинув страницу вы прервёте загрузку.",
"URL cannot be empty." => "Ссылка не может быть пустой.", "URL cannot be empty." => "Ссылка не может быть пустой.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Неправильное имя каталога. Имя 'Shared' зарезервировано.", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Неправильное имя каталога. Имя 'Shared' зарезервировано.",
"{count} files scanned" => "{count} файлов просканировано",
"error while scanning" => "ошибка во время санирования",
"Name" => "Название", "Name" => "Название",
"Size" => "Размер", "Size" => "Размер",
"Modified" => "Изменён", "Modified" => "Изменён",

View File

@ -7,6 +7,8 @@
"No file was uploaded" => "Файл не был загружен", "No file was uploaded" => "Файл не был загружен",
"Missing a temporary folder" => "Отсутствует временная папка", "Missing a temporary folder" => "Отсутствует временная папка",
"Failed to write to disk" => "Не удалось записать на диск", "Failed to write to disk" => "Не удалось записать на диск",
"Not enough space available" => "Не достаточно свободного места",
"Invalid directory." => "Неверный каталог.",
"Files" => "Файлы", "Files" => "Файлы",
"Unshare" => "Скрыть", "Unshare" => "Скрыть",
"Delete" => "Удалить", "Delete" => "Удалить",
@ -18,8 +20,8 @@
"replaced {new_name}" => "заменено {новое_имя}", "replaced {new_name}" => "заменено {новое_имя}",
"undo" => "отменить действие", "undo" => "отменить действие",
"replaced {new_name} with {old_name}" => "заменено {новое_имя} с {старое_имя}", "replaced {new_name} with {old_name}" => "заменено {новое_имя} с {старое_имя}",
"unshared {files}" => "Cовместное использование прекращено {файлы}", "'.' is an invalid file name." => "'.' является неверным именем файла.",
"deleted {files}" => "удалено {файлы}", "File name cannot be empty." => "Имя файла не может быть пустым.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Некорректное имя, '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' не допустимы.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Некорректное имя, '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' не допустимы.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Невозможно загрузить файл,\n так как он имеет нулевой размер или является директорией", "Unable to upload your file as it is a directory or has 0 bytes" => "Невозможно загрузить файл,\n так как он имеет нулевой размер или является директорией",
"Upload Error" => "Ошибка загрузки", "Upload Error" => "Ошибка загрузки",
@ -30,8 +32,7 @@
"Upload cancelled." => "Загрузка отменена", "Upload cancelled." => "Загрузка отменена",
"File upload is in progress. Leaving the page now will cancel the upload." => "Процесс загрузки файла. Если покинуть страницу сейчас, загрузка будет отменена.", "File upload is in progress. Leaving the page now will cancel the upload." => "Процесс загрузки файла. Если покинуть страницу сейчас, загрузка будет отменена.",
"URL cannot be empty." => "URL не должен быть пустым.", "URL cannot be empty." => "URL не должен быть пустым.",
"{count} files scanned" => "{количество} файлов отсканировано", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Неверное имя папки. Использование наименования 'Опубликовано' зарезервировано Owncloud",
"error while scanning" => "ошибка при сканировании",
"Name" => "Имя", "Name" => "Имя",
"Size" => "Размер", "Size" => "Размер",
"Modified" => "Изменен", "Modified" => "Изменен",
@ -58,5 +59,6 @@
"Upload too large" => "Загрузка слишком велика", "Upload too large" => "Загрузка слишком велика",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Размер файлов, которые Вы пытаетесь загрузить, превышает максимально допустимый размер для загрузки на данный сервер.", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Размер файлов, которые Вы пытаетесь загрузить, превышает максимально допустимый размер для загрузки на данный сервер.",
"Files are being scanned, please wait." => "Файлы сканируются, пожалуйста, подождите.", "Files are being scanned, please wait." => "Файлы сканируются, пожалуйста, подождите.",
"Current scanning" => "Текущее сканирование" "Current scanning" => "Текущее сканирование",
"Upgrading filesystem cache..." => "Обновление кэша файловой системы... "
); );

View File

@ -20,7 +20,6 @@
"Upload cancelled." => "උඩුගත කිරීම අත් හරින්න ලදී", "Upload cancelled." => "උඩුගත කිරීම අත් හරින්න ලදී",
"File upload is in progress. Leaving the page now will cancel the upload." => "උඩුගතකිරීමක් සිදුවේ. පිටුව හැර යාමෙන් එය නැවතෙනු ඇත", "File upload is in progress. Leaving the page now will cancel the upload." => "උඩුගතකිරීමක් සිදුවේ. පිටුව හැර යාමෙන් එය නැවතෙනු ඇත",
"URL cannot be empty." => "යොමුව හිස් විය නොහැක", "URL cannot be empty." => "යොමුව හිස් විය නොහැක",
"error while scanning" => "පරීක්ෂා කිරීමේදී දෝෂයක්",
"Name" => "නම", "Name" => "නම",
"Size" => "ප්‍රමාණය", "Size" => "ප්‍රමාණය",
"Modified" => "වෙනස් කළ", "Modified" => "වෙනස් කළ",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Nie je možné presunúť %s - súbor s týmto menom už existuje",
"Could not move %s" => "Nie je možné presunúť %s",
"Unable to rename file" => "Nemožno premenovať súbor",
"No file was uploaded. Unknown error" => "Žiaden súbor nebol odoslaný. Neznáma chyba", "No file was uploaded. Unknown error" => "Žiaden súbor nebol odoslaný. Neznáma chyba",
"There is no error, the file uploaded with success" => "Nenastala žiadna chyba, súbor bol úspešne nahraný", "There is no error, the file uploaded with success" => "Nenastala žiadna chyba, súbor bol úspešne nahraný",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Nahraný súbor predčil konfiguračnú direktívu upload_max_filesize v súbore php.ini:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Nahraný súbor predčil konfiguračnú direktívu upload_max_filesize v súbore php.ini:",
@ -10,6 +7,7 @@
"No file was uploaded" => "Žiaden súbor nebol nahraný", "No file was uploaded" => "Žiaden súbor nebol nahraný",
"Missing a temporary folder" => "Chýbajúci dočasný priečinok", "Missing a temporary folder" => "Chýbajúci dočasný priečinok",
"Failed to write to disk" => "Zápis na disk sa nepodaril", "Failed to write to disk" => "Zápis na disk sa nepodaril",
"Not enough space available" => "Nie je k dispozícii dostatok miesta",
"Invalid directory." => "Neplatný adresár", "Invalid directory." => "Neplatný adresár",
"Files" => "Súbory", "Files" => "Súbory",
"Unshare" => "Nezdielať", "Unshare" => "Nezdielať",
@ -22,11 +20,11 @@
"replaced {new_name}" => "prepísaný {new_name}", "replaced {new_name}" => "prepísaný {new_name}",
"undo" => "vrátiť", "undo" => "vrátiť",
"replaced {new_name} with {old_name}" => "prepísaný {new_name} súborom {old_name}", "replaced {new_name} with {old_name}" => "prepísaný {new_name} súborom {old_name}",
"unshared {files}" => "zdieľanie zrušené pre {files}",
"deleted {files}" => "zmazané {files}",
"'.' is an invalid file name." => "'.' je neplatné meno súboru.", "'.' is an invalid file name." => "'.' je neplatné meno súboru.",
"File name cannot be empty." => "Meno súboru nemôže byť prázdne", "File name cannot be empty." => "Meno súboru nemôže byť prázdne",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nesprávne meno, '\\', '/', '<', '>', ':', '\"', '|', '?' a '*' nie sú povolené hodnoty.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nesprávne meno, '\\', '/', '<', '>', ':', '\"', '|', '?' a '*' nie sú povolené hodnoty.",
"Your storage is full, files can not be updated or synced anymore!" => "Vaše úložisko je plné. Súbory nemožno aktualizovať ani synchronizovať!",
"Your storage is almost full ({usedSpacePercent}%)" => "Vaše úložisko je takmer plné ({usedSpacePercent}%)",
"Your download is being prepared. This might take some time if the files are big." => "Vaše sťahovanie sa pripravuje. Ak sú sťahované súbory veľké, môže to chvíľu trvať.", "Your download is being prepared. This might take some time if the files are big." => "Vaše sťahovanie sa pripravuje. Ak sú sťahované súbory veľké, môže to chvíľu trvať.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Nemôžem nahrať súbor lebo je to priečinok alebo má 0 bajtov.", "Unable to upload your file as it is a directory or has 0 bytes" => "Nemôžem nahrať súbor lebo je to priečinok alebo má 0 bajtov.",
"Upload Error" => "Chyba odosielania", "Upload Error" => "Chyba odosielania",
@ -38,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Opustenie stránky zruší práve prebiehajúce odosielanie súboru.", "File upload is in progress. Leaving the page now will cancel the upload." => "Opustenie stránky zruší práve prebiehajúce odosielanie súboru.",
"URL cannot be empty." => "URL nemôže byť prázdne", "URL cannot be empty." => "URL nemôže byť prázdne",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Neplatné meno adresára. Používanie mena 'Shared' je vyhradené len pre Owncloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Neplatné meno adresára. Používanie mena 'Shared' je vyhradené len pre Owncloud",
"{count} files scanned" => "{count} súborov prehľadaných",
"error while scanning" => "chyba počas kontroly",
"Name" => "Meno", "Name" => "Meno",
"Size" => "Veľkosť", "Size" => "Veľkosť",
"Modified" => "Upravené", "Modified" => "Upravené",

View File

@ -18,8 +18,6 @@
"replaced {new_name}" => "zamenjano je ime {new_name}", "replaced {new_name}" => "zamenjano je ime {new_name}",
"undo" => "razveljavi", "undo" => "razveljavi",
"replaced {new_name} with {old_name}" => "zamenjano ime {new_name} z imenom {old_name}", "replaced {new_name} with {old_name}" => "zamenjano ime {new_name} z imenom {old_name}",
"unshared {files}" => "odstranjeno iz souporabe {files}",
"deleted {files}" => "izbrisano {files}",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Neveljavno ime, znaki '\\', '/', '<', '>', ':', '\"', '|', '?' in '*' niso dovoljeni.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Neveljavno ime, znaki '\\', '/', '<', '>', ':', '\"', '|', '?' in '*' niso dovoljeni.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Pošiljanje ni mogoče, saj gre za mapo, ali pa je datoteka velikosti 0 bajtov.", "Unable to upload your file as it is a directory or has 0 bytes" => "Pošiljanje ni mogoče, saj gre za mapo, ali pa je datoteka velikosti 0 bajtov.",
"Upload Error" => "Napaka med nalaganjem", "Upload Error" => "Napaka med nalaganjem",
@ -30,8 +28,6 @@
"Upload cancelled." => "Pošiljanje je preklicano.", "Upload cancelled." => "Pošiljanje je preklicano.",
"File upload is in progress. Leaving the page now will cancel the upload." => "V teku je pošiljanje datoteke. Če zapustite to stran zdaj, bo pošiljanje preklicano.", "File upload is in progress. Leaving the page now will cancel the upload." => "V teku je pošiljanje datoteke. Če zapustite to stran zdaj, bo pošiljanje preklicano.",
"URL cannot be empty." => "Naslov URL ne sme biti prazen.", "URL cannot be empty." => "Naslov URL ne sme biti prazen.",
"{count} files scanned" => "{count} files scanned",
"error while scanning" => "napaka med pregledovanjem datotek",
"Name" => "Ime", "Name" => "Ime",
"Size" => "Velikost", "Size" => "Velikost",
"Modified" => "Spremenjeno", "Modified" => "Spremenjeno",

View File

@ -17,8 +17,6 @@
"replaced {new_name}" => "замењено {new_name}", "replaced {new_name}" => "замењено {new_name}",
"undo" => "опозови", "undo" => "опозови",
"replaced {new_name} with {old_name}" => "замењено {new_name} са {old_name}", "replaced {new_name} with {old_name}" => "замењено {new_name} са {old_name}",
"unshared {files}" => "укинуто дељење {files}",
"deleted {files}" => "обрисано {files}",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Неисправан назив. Следећи знакови нису дозвољени: \\, /, <, >, :, \", |, ? и *.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Неисправан назив. Следећи знакови нису дозвољени: \\, /, <, >, :, \", |, ? и *.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Не могу да отпремим датотеку као фасциклу или она има 0 бајтова", "Unable to upload your file as it is a directory or has 0 bytes" => "Не могу да отпремим датотеку као фасциклу или она има 0 бајтова",
"Upload Error" => "Грешка при отпремању", "Upload Error" => "Грешка при отпремању",
@ -28,8 +26,6 @@
"{count} files uploading" => "Отпремам {count} датотеке/а", "{count} files uploading" => "Отпремам {count} датотеке/а",
"Upload cancelled." => "Отпремање је прекинуто.", "Upload cancelled." => "Отпремање је прекинуто.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Отпремање датотеке је у току. Ако сада напустите страницу, прекинућете отпремање.", "File upload is in progress. Leaving the page now will cancel the upload." => "Отпремање датотеке је у току. Ако сада напустите страницу, прекинућете отпремање.",
"{count} files scanned" => "Скенирано датотека: {count}",
"error while scanning" => "грешка при скенирању",
"Name" => "Назив", "Name" => "Назив",
"Size" => "Величина", "Size" => "Величина",
"Modified" => "Измењено", "Modified" => "Измењено",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "Kunde inte flytta %s - Det finns redan en fil med detta namn",
"Could not move %s" => "Kan inte flytta %s",
"Unable to rename file" => "Kan inte byta namn på filen",
"No file was uploaded. Unknown error" => "Ingen fil uppladdad. Okänt fel", "No file was uploaded. Unknown error" => "Ingen fil uppladdad. Okänt fel",
"There is no error, the file uploaded with success" => "Inga fel uppstod. Filen laddades upp utan problem", "There is no error, the file uploaded with success" => "Inga fel uppstod. Filen laddades upp utan problem",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Den uppladdade filen överskrider upload_max_filesize direktivet php.ini:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "Den uppladdade filen överskrider upload_max_filesize direktivet php.ini:",
@ -10,7 +7,7 @@
"No file was uploaded" => "Ingen fil blev uppladdad", "No file was uploaded" => "Ingen fil blev uppladdad",
"Missing a temporary folder" => "Saknar en tillfällig mapp", "Missing a temporary folder" => "Saknar en tillfällig mapp",
"Failed to write to disk" => "Misslyckades spara till disk", "Failed to write to disk" => "Misslyckades spara till disk",
"Not enough storage available" => "Inte tillräckligt med lagringsutrymme tillgängligt", "Not enough space available" => "Inte tillräckligt med utrymme tillgängligt",
"Invalid directory." => "Felaktig mapp.", "Invalid directory." => "Felaktig mapp.",
"Files" => "Filer", "Files" => "Filer",
"Unshare" => "Sluta dela", "Unshare" => "Sluta dela",
@ -23,8 +20,6 @@
"replaced {new_name}" => "ersatt {new_name}", "replaced {new_name}" => "ersatt {new_name}",
"undo" => "ångra", "undo" => "ångra",
"replaced {new_name} with {old_name}" => "ersatt {new_name} med {old_name}", "replaced {new_name} with {old_name}" => "ersatt {new_name} med {old_name}",
"unshared {files}" => "stoppad delning {files}",
"deleted {files}" => "raderade {files}",
"'.' is an invalid file name." => "'.' är ett ogiltigt filnamn.", "'.' is an invalid file name." => "'.' är ett ogiltigt filnamn.",
"File name cannot be empty." => "Filnamn kan inte vara tomt.", "File name cannot be empty." => "Filnamn kan inte vara tomt.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ogiltigt namn, '\\', '/', '<', '>', ':', '\"', '|', '?' och '*' är inte tillåtet.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ogiltigt namn, '\\', '/', '<', '>', ':', '\"', '|', '?' och '*' är inte tillåtet.",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Filuppladdning pågår. Lämnar du sidan så avbryts uppladdningen.", "File upload is in progress. Leaving the page now will cancel the upload." => "Filuppladdning pågår. Lämnar du sidan så avbryts uppladdningen.",
"URL cannot be empty." => "URL kan inte vara tom.", "URL cannot be empty." => "URL kan inte vara tom.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ogiltigt mappnamn. Användande av 'Shared' är reserverat av ownCloud", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ogiltigt mappnamn. Användande av 'Shared' är reserverat av ownCloud",
"{count} files scanned" => "{count} filer skannade",
"error while scanning" => "fel vid skanning",
"Name" => "Namn", "Name" => "Namn",
"Size" => "Storlek", "Size" => "Storlek",
"Modified" => "Ändrad", "Modified" => "Ändrad",
@ -69,5 +62,6 @@
"Upload too large" => "För stor uppladdning", "Upload too large" => "För stor uppladdning",
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Filerna du försöker ladda upp överstiger den maximala storleken för filöverföringar på servern.", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Filerna du försöker ladda upp överstiger den maximala storleken för filöverföringar på servern.",
"Files are being scanned, please wait." => "Filer skannas, var god vänta", "Files are being scanned, please wait." => "Filer skannas, var god vänta",
"Current scanning" => "Aktuell skanning" "Current scanning" => "Aktuell skanning",
"Upgrading filesystem cache..." => "Uppgraderar filsystemets cache..."
); );

View File

@ -17,8 +17,6 @@
"replaced {new_name}" => "மாற்றப்பட்டது {new_name}", "replaced {new_name}" => "மாற்றப்பட்டது {new_name}",
"undo" => "முன் செயல் நீக்கம் ", "undo" => "முன் செயல் நீக்கம் ",
"replaced {new_name} with {old_name}" => "{new_name} ஆனது {old_name} இனால் மாற்றப்பட்டது", "replaced {new_name} with {old_name}" => "{new_name} ஆனது {old_name} இனால் மாற்றப்பட்டது",
"unshared {files}" => "பகிரப்படாதது {கோப்புகள்}",
"deleted {files}" => "நீக்கப்பட்டது {கோப்புகள்}",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "செல்லுபடியற்ற பெயர்,'\\', '/', '<', '>', ':', '\"', '|', '?' மற்றும் '*' ஆகியன அனுமதிக்கப்படமாட்டாது.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "செல்லுபடியற்ற பெயர்,'\\', '/', '<', '>', ':', '\"', '|', '?' மற்றும் '*' ஆகியன அனுமதிக்கப்படமாட்டாது.",
"Unable to upload your file as it is a directory or has 0 bytes" => "அடைவு அல்லது 0 bytes ஐ கொண்டுள்ளதால் உங்களுடைய கோப்பை பதிவேற்ற முடியவில்லை", "Unable to upload your file as it is a directory or has 0 bytes" => "அடைவு அல்லது 0 bytes ஐ கொண்டுள்ளதால் உங்களுடைய கோப்பை பதிவேற்ற முடியவில்லை",
"Upload Error" => "பதிவேற்றல் வழு", "Upload Error" => "பதிவேற்றல் வழு",
@ -29,8 +27,6 @@
"Upload cancelled." => "பதிவேற்றல் இரத்து செய்யப்பட்டுள்ளது", "Upload cancelled." => "பதிவேற்றல் இரத்து செய்யப்பட்டுள்ளது",
"File upload is in progress. Leaving the page now will cancel the upload." => "கோப்பு பதிவேற்றம் செயல்பாட்டில் உள்ளது. இந்தப் பக்கத்திலிருந்து வெறியேறுவதானது பதிவேற்றலை இரத்து செய்யும்.", "File upload is in progress. Leaving the page now will cancel the upload." => "கோப்பு பதிவேற்றம் செயல்பாட்டில் உள்ளது. இந்தப் பக்கத்திலிருந்து வெறியேறுவதானது பதிவேற்றலை இரத்து செய்யும்.",
"URL cannot be empty." => "URL வெறுமையாக இருக்கமுடியாது.", "URL cannot be empty." => "URL வெறுமையாக இருக்கமுடியாது.",
"{count} files scanned" => "{எண்ணிக்கை} கோப்புகள் வருடப்பட்டது",
"error while scanning" => "வருடும் போதான வழு",
"Name" => "பெயர்", "Name" => "பெயர்",
"Size" => "அளவு", "Size" => "அளவு",
"Modified" => "மாற்றப்பட்டது", "Modified" => "மாற்றப்பட்டது",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "ไม่สามารถย้าย %s ได้ - ไฟล์ที่ใช้ชื่อนี้มีอยู่แล้ว",
"Could not move %s" => "ไม่สามารถย้าย %s ได้",
"Unable to rename file" => "ไม่สามารถเปลี่ยนชื่อไฟล์ได้",
"No file was uploaded. Unknown error" => "ยังไม่มีไฟล์ใดที่ถูกอัพโหลด เกิดข้อผิดพลาดที่ไม่ทราบสาเหตุ", "No file was uploaded. Unknown error" => "ยังไม่มีไฟล์ใดที่ถูกอัพโหลด เกิดข้อผิดพลาดที่ไม่ทราบสาเหตุ",
"There is no error, the file uploaded with success" => "ไม่มีข้อผิดพลาดใดๆ ไฟล์ถูกอัพโหลดเรียบร้อยแล้ว", "There is no error, the file uploaded with success" => "ไม่มีข้อผิดพลาดใดๆ ไฟล์ถูกอัพโหลดเรียบร้อยแล้ว",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "ขนาดไฟล์ที่อัพโหลดมีขนาดเกิน upload_max_filesize ที่ระบุไว้ใน php.ini", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "ขนาดไฟล์ที่อัพโหลดมีขนาดเกิน upload_max_filesize ที่ระบุไว้ใน php.ini",
@ -10,7 +7,7 @@
"No file was uploaded" => "ยังไม่มีไฟล์ที่ถูกอัพโหลด", "No file was uploaded" => "ยังไม่มีไฟล์ที่ถูกอัพโหลด",
"Missing a temporary folder" => "แฟ้มเอกสารชั่วคราวเกิดการสูญหาย", "Missing a temporary folder" => "แฟ้มเอกสารชั่วคราวเกิดการสูญหาย",
"Failed to write to disk" => "เขียนข้อมูลลงแผ่นดิสก์ล้มเหลว", "Failed to write to disk" => "เขียนข้อมูลลงแผ่นดิสก์ล้มเหลว",
"Not enough storage available" => "เหลือพื้นที่ไม่เพียงสำหรับใช้งาน", "Not enough space available" => "มีพื้นที่เหลือไม่เพียงพอ",
"Invalid directory." => "ไดเร็กทอรี่ไม่ถูกต้อง", "Invalid directory." => "ไดเร็กทอรี่ไม่ถูกต้อง",
"Files" => "ไฟล์", "Files" => "ไฟล์",
"Unshare" => "ยกเลิกการแชร์ข้อมูล", "Unshare" => "ยกเลิกการแชร์ข้อมูล",
@ -23,8 +20,6 @@
"replaced {new_name}" => "แทนที่ {new_name} แล้ว", "replaced {new_name}" => "แทนที่ {new_name} แล้ว",
"undo" => "เลิกทำ", "undo" => "เลิกทำ",
"replaced {new_name} with {old_name}" => "แทนที่ {new_name} ด้วย {old_name} แล้ว", "replaced {new_name} with {old_name}" => "แทนที่ {new_name} ด้วย {old_name} แล้ว",
"unshared {files}" => "ยกเลิกการแชร์แล้ว {files} ไฟล์",
"deleted {files}" => "ลบไฟล์แล้ว {files} ไฟล์",
"'.' is an invalid file name." => "'.' เป็นชื่อไฟล์ที่ไม่ถูกต้อง", "'.' is an invalid file name." => "'.' เป็นชื่อไฟล์ที่ไม่ถูกต้อง",
"File name cannot be empty." => "ชื่อไฟล์ไม่สามารถเว้นว่างได้", "File name cannot be empty." => "ชื่อไฟล์ไม่สามารถเว้นว่างได้",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "ชื่อที่ใช้ไม่ถูกต้อง, '\\', '/', '<', '>', ':', '\"', '|', '?' และ '*' ไม่ได้รับอนุญาตให้ใช้งานได้", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "ชื่อที่ใช้ไม่ถูกต้อง, '\\', '/', '<', '>', ':', '\"', '|', '?' และ '*' ไม่ได้รับอนุญาตให้ใช้งานได้",
@ -41,8 +36,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "การอัพโหลดไฟล์กำลังอยู่ในระหว่างดำเนินการ การออกจากหน้าเว็บนี้จะทำให้การอัพโหลดถูกยกเลิก", "File upload is in progress. Leaving the page now will cancel the upload." => "การอัพโหลดไฟล์กำลังอยู่ในระหว่างดำเนินการ การออกจากหน้าเว็บนี้จะทำให้การอัพโหลดถูกยกเลิก",
"URL cannot be empty." => "URL ไม่สามารถเว้นว่างได้", "URL cannot be empty." => "URL ไม่สามารถเว้นว่างได้",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "ชื่อโฟลเดอร์ไม่ถูกต้อง การใช้งาน 'แชร์' สงวนไว้สำหรับ Owncloud เท่านั้น", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "ชื่อโฟลเดอร์ไม่ถูกต้อง การใช้งาน 'แชร์' สงวนไว้สำหรับ Owncloud เท่านั้น",
"{count} files scanned" => "สแกนไฟล์แล้ว {count} ไฟล์",
"error while scanning" => "พบข้อผิดพลาดในระหว่างการสแกนไฟล์",
"Name" => "ชื่อ", "Name" => "ชื่อ",
"Size" => "ขนาด", "Size" => "ขนาด",
"Modified" => "ปรับปรุงล่าสุด", "Modified" => "ปรับปรุงล่าสุด",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "%s taşınamadı. Bu isimde dosya zaten var.",
"Could not move %s" => "%s taşınamadı",
"Unable to rename file" => "Dosya adı değiştirilemedi",
"No file was uploaded. Unknown error" => "Dosya yüklenmedi. Bilinmeyen hata", "No file was uploaded. Unknown error" => "Dosya yüklenmedi. Bilinmeyen hata",
"There is no error, the file uploaded with success" => "Bir hata yok, dosya başarıyla yüklendi", "There is no error, the file uploaded with success" => "Bir hata yok, dosya başarıyla yüklendi",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "php.ini dosyasında upload_max_filesize ile belirtilen dosya yükleme sınırııldı.", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "php.ini dosyasında upload_max_filesize ile belirtilen dosya yükleme sınırııldı.",
@ -10,6 +7,7 @@
"No file was uploaded" => "Hiç dosya yüklenmedi", "No file was uploaded" => "Hiç dosya yüklenmedi",
"Missing a temporary folder" => "Geçici bir klasör eksik", "Missing a temporary folder" => "Geçici bir klasör eksik",
"Failed to write to disk" => "Diske yazılamadı", "Failed to write to disk" => "Diske yazılamadı",
"Not enough space available" => "Yeterli disk alanı yok",
"Invalid directory." => "Geçersiz dizin.", "Invalid directory." => "Geçersiz dizin.",
"Files" => "Dosyalar", "Files" => "Dosyalar",
"Unshare" => "Paylaşılmayan", "Unshare" => "Paylaşılmayan",
@ -22,8 +20,6 @@
"replaced {new_name}" => "değiştirilen {new_name}", "replaced {new_name}" => "değiştirilen {new_name}",
"undo" => "geri al", "undo" => "geri al",
"replaced {new_name} with {old_name}" => "{new_name} ismi {old_name} ile değiştirildi", "replaced {new_name} with {old_name}" => "{new_name} ismi {old_name} ile değiştirildi",
"unshared {files}" => "paylaşılmamış {files}",
"deleted {files}" => "silinen {files}",
"'.' is an invalid file name." => "'.' geçersiz dosya adı.", "'.' is an invalid file name." => "'.' geçersiz dosya adı.",
"File name cannot be empty." => "Dosya adı boş olamaz.", "File name cannot be empty." => "Dosya adı boş olamaz.",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Geçersiz isim, '\\', '/', '<', '>', ':', '\"', '|', '?' ve '*' karakterlerine izin verilmemektedir.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Geçersiz isim, '\\', '/', '<', '>', ':', '\"', '|', '?' ve '*' karakterlerine izin verilmemektedir.",
@ -38,8 +34,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "Dosya yükleme işlemi sürüyor. Şimdi sayfadan ayrılırsanız işleminiz iptal olur.", "File upload is in progress. Leaving the page now will cancel the upload." => "Dosya yükleme işlemi sürüyor. Şimdi sayfadan ayrılırsanız işleminiz iptal olur.",
"URL cannot be empty." => "URL boş olamaz.", "URL cannot be empty." => "URL boş olamaz.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Geçersiz dizin adı. Shared isminin kullanımı Owncloud tarafından rezerver edilmiştir.", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Geçersiz dizin adı. Shared isminin kullanımı Owncloud tarafından rezerver edilmiştir.",
"{count} files scanned" => "{count} dosya tarandı",
"error while scanning" => "tararamada hata oluşdu",
"Name" => "Ad", "Name" => "Ad",
"Size" => "Boyut", "Size" => "Boyut",
"Modified" => "Değiştirilme", "Modified" => "Değiştirilme",

View File

@ -18,8 +18,6 @@
"replaced {new_name}" => "замінено {new_name}", "replaced {new_name}" => "замінено {new_name}",
"undo" => "відмінити", "undo" => "відмінити",
"replaced {new_name} with {old_name}" => "замінено {new_name} на {old_name}", "replaced {new_name} with {old_name}" => "замінено {new_name} на {old_name}",
"unshared {files}" => "неопубліковано {files}",
"deleted {files}" => "видалено {files}",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Невірне ім'я, '\\', '/', '<', '>', ':', '\"', '|', '?' та '*' не дозволені.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Невірне ім'я, '\\', '/', '<', '>', ':', '\"', '|', '?' та '*' не дозволені.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Неможливо завантажити ваш файл тому, що він тека або файл розміром 0 байт", "Unable to upload your file as it is a directory or has 0 bytes" => "Неможливо завантажити ваш файл тому, що він тека або файл розміром 0 байт",
"Upload Error" => "Помилка завантаження", "Upload Error" => "Помилка завантаження",
@ -30,8 +28,6 @@
"Upload cancelled." => "Завантаження перервано.", "Upload cancelled." => "Завантаження перервано.",
"File upload is in progress. Leaving the page now will cancel the upload." => "Виконується завантаження файлу. Закриття цієї сторінки приведе до відміни завантаження.", "File upload is in progress. Leaving the page now will cancel the upload." => "Виконується завантаження файлу. Закриття цієї сторінки приведе до відміни завантаження.",
"URL cannot be empty." => "URL не може бути пустим.", "URL cannot be empty." => "URL не може бути пустим.",
"{count} files scanned" => "{count} файлів проскановано",
"error while scanning" => "помилка при скануванні",
"Name" => "Ім'я", "Name" => "Ім'я",
"Size" => "Розмір", "Size" => "Розмір",
"Modified" => "Змінено", "Modified" => "Змінено",

View File

@ -17,8 +17,6 @@
"replaced {new_name}" => "đã thay thế {new_name}", "replaced {new_name}" => "đã thay thế {new_name}",
"undo" => "lùi lại", "undo" => "lùi lại",
"replaced {new_name} with {old_name}" => "đã thay thế {new_name} bằng {old_name}", "replaced {new_name} with {old_name}" => "đã thay thế {new_name} bằng {old_name}",
"unshared {files}" => "hủy chia sẽ {files}",
"deleted {files}" => "đã xóa {files}",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Tên không hợp lệ, '\\', '/', '<', '>', ':', '\"', '|', '?' và '*' thì không được phép dùng.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Tên không hợp lệ, '\\', '/', '<', '>', ':', '\"', '|', '?' và '*' thì không được phép dùng.",
"Unable to upload your file as it is a directory or has 0 bytes" => "Không thể tải lên tập tin này do nó là một thư mục hoặc kích thước tập tin bằng 0 byte", "Unable to upload your file as it is a directory or has 0 bytes" => "Không thể tải lên tập tin này do nó là một thư mục hoặc kích thước tập tin bằng 0 byte",
"Upload Error" => "Tải lên lỗi", "Upload Error" => "Tải lên lỗi",
@ -29,8 +27,6 @@
"Upload cancelled." => "Hủy tải lên", "Upload cancelled." => "Hủy tải lên",
"File upload is in progress. Leaving the page now will cancel the upload." => "Tập tin tải lên đang được xử lý. Nếu bạn rời khỏi trang bây giờ sẽ hủy quá trình này.", "File upload is in progress. Leaving the page now will cancel the upload." => "Tập tin tải lên đang được xử lý. Nếu bạn rời khỏi trang bây giờ sẽ hủy quá trình này.",
"URL cannot be empty." => "URL không được để trống.", "URL cannot be empty." => "URL không được để trống.",
"{count} files scanned" => "{count} tập tin đã được quét",
"error while scanning" => "lỗi trong khi quét",
"Name" => "Tên", "Name" => "Tên",
"Size" => "Kích cỡ", "Size" => "Kích cỡ",
"Modified" => "Thay đổi", "Modified" => "Thay đổi",

View File

@ -17,8 +17,6 @@
"replaced {new_name}" => "已替换 {new_name}", "replaced {new_name}" => "已替换 {new_name}",
"undo" => "撤销", "undo" => "撤销",
"replaced {new_name} with {old_name}" => "已用 {old_name} 替换 {new_name}", "replaced {new_name} with {old_name}" => "已用 {old_name} 替换 {new_name}",
"unshared {files}" => "未分享的 {files}",
"deleted {files}" => "已删除的 {files}",
"Unable to upload your file as it is a directory or has 0 bytes" => "不能上传你指定的文件,可能因为它是个文件夹或者大小为0", "Unable to upload your file as it is a directory or has 0 bytes" => "不能上传你指定的文件,可能因为它是个文件夹或者大小为0",
"Upload Error" => "上传错误", "Upload Error" => "上传错误",
"Close" => "关闭", "Close" => "关闭",
@ -28,8 +26,6 @@
"Upload cancelled." => "上传取消了", "Upload cancelled." => "上传取消了",
"File upload is in progress. Leaving the page now will cancel the upload." => "文件正在上传。关闭页面会取消上传。", "File upload is in progress. Leaving the page now will cancel the upload." => "文件正在上传。关闭页面会取消上传。",
"URL cannot be empty." => "网址不能为空。", "URL cannot be empty." => "网址不能为空。",
"{count} files scanned" => "{count} 个文件已扫描",
"error while scanning" => "扫描出错",
"Name" => "名字", "Name" => "名字",
"Size" => "大小", "Size" => "大小",
"Modified" => "修改日期", "Modified" => "修改日期",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "无法移动 %s - 同名文件已存在",
"Could not move %s" => "无法移动 %s",
"Unable to rename file" => "无法重命名文件",
"No file was uploaded. Unknown error" => "没有文件被上传。未知错误", "No file was uploaded. Unknown error" => "没有文件被上传。未知错误",
"There is no error, the file uploaded with success" => "没有发生错误,文件上传成功。", "There is no error, the file uploaded with success" => "没有发生错误,文件上传成功。",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "上传文件大小已超过php.ini中upload_max_filesize所规定的值", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "上传文件大小已超过php.ini中upload_max_filesize所规定的值",
@ -10,6 +7,7 @@
"No file was uploaded" => "文件没有上传", "No file was uploaded" => "文件没有上传",
"Missing a temporary folder" => "缺少临时目录", "Missing a temporary folder" => "缺少临时目录",
"Failed to write to disk" => "写入磁盘失败", "Failed to write to disk" => "写入磁盘失败",
"Not enough space available" => "没有足够可用空间",
"Invalid directory." => "无效文件夹。", "Invalid directory." => "无效文件夹。",
"Files" => "文件", "Files" => "文件",
"Unshare" => "取消分享", "Unshare" => "取消分享",
@ -22,8 +20,6 @@
"replaced {new_name}" => "替换 {new_name}", "replaced {new_name}" => "替换 {new_name}",
"undo" => "撤销", "undo" => "撤销",
"replaced {new_name} with {old_name}" => "已将 {old_name}替换成 {new_name}", "replaced {new_name} with {old_name}" => "已将 {old_name}替换成 {new_name}",
"unshared {files}" => "取消了共享 {files}",
"deleted {files}" => "删除了 {files}",
"'.' is an invalid file name." => "'.' 是一个无效的文件名。", "'.' is an invalid file name." => "'.' 是一个无效的文件名。",
"File name cannot be empty." => "文件名不能为空。", "File name cannot be empty." => "文件名不能为空。",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "无效名称,'\\', '/', '<', '>', ':', '\"', '|', '?' 和 '*' 不被允许使用。", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "无效名称,'\\', '/', '<', '>', ':', '\"', '|', '?' 和 '*' 不被允许使用。",
@ -38,8 +34,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "文件正在上传中。现在离开此页会导致上传动作被取消。", "File upload is in progress. Leaving the page now will cancel the upload." => "文件正在上传中。现在离开此页会导致上传动作被取消。",
"URL cannot be empty." => "URL不能为空", "URL cannot be empty." => "URL不能为空",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "无效文件夹名。'共享' 是 Owncloud 预留的文件夹名。", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "无效文件夹名。'共享' 是 Owncloud 预留的文件夹名。",
"{count} files scanned" => "{count} 个文件已扫描。",
"error while scanning" => "扫描时出错",
"Name" => "名称", "Name" => "名称",
"Size" => "大小", "Size" => "大小",
"Modified" => "修改日期", "Modified" => "修改日期",

View File

@ -1,7 +1,4 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Could not move %s - File with this name already exists" => "無法移動 %s - 同名的檔案已經存在",
"Could not move %s" => "無法移動 %s",
"Unable to rename file" => "無法重新命名檔案",
"No file was uploaded. Unknown error" => "沒有檔案被上傳。未知的錯誤。", "No file was uploaded. Unknown error" => "沒有檔案被上傳。未知的錯誤。",
"There is no error, the file uploaded with success" => "無錯誤,檔案上傳成功", "There is no error, the file uploaded with success" => "無錯誤,檔案上傳成功",
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "上傳的檔案大小超過 php.ini 當中 upload_max_filesize 參數的設定:", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "上傳的檔案大小超過 php.ini 當中 upload_max_filesize 參數的設定:",
@ -10,6 +7,7 @@
"No file was uploaded" => "無已上傳檔案", "No file was uploaded" => "無已上傳檔案",
"Missing a temporary folder" => "遺失暫存資料夾", "Missing a temporary folder" => "遺失暫存資料夾",
"Failed to write to disk" => "寫入硬碟失敗", "Failed to write to disk" => "寫入硬碟失敗",
"Not enough space available" => "沒有足夠的可用空間",
"Invalid directory." => "無效的資料夾。", "Invalid directory." => "無效的資料夾。",
"Files" => "檔案", "Files" => "檔案",
"Unshare" => "取消共享", "Unshare" => "取消共享",
@ -22,8 +20,6 @@
"replaced {new_name}" => "已取代 {new_name}", "replaced {new_name}" => "已取代 {new_name}",
"undo" => "復原", "undo" => "復原",
"replaced {new_name} with {old_name}" => "使用 {new_name} 取代 {old_name}", "replaced {new_name} with {old_name}" => "使用 {new_name} 取代 {old_name}",
"unshared {files}" => "已取消分享 {files}",
"deleted {files}" => "已刪除 {files}",
"'.' is an invalid file name." => "'.' 是不合法的檔名。", "'.' is an invalid file name." => "'.' 是不合法的檔名。",
"File name cannot be empty." => "檔名不能為空。", "File name cannot be empty." => "檔名不能為空。",
"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "檔名不合法,不允許 '\\', '/', '<', '>', ':', '\"', '|', '?' 和 '*' 。", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "檔名不合法,不允許 '\\', '/', '<', '>', ':', '\"', '|', '?' 和 '*' 。",
@ -38,8 +34,6 @@
"File upload is in progress. Leaving the page now will cancel the upload." => "檔案上傳中。離開此頁面將會取消上傳。", "File upload is in progress. Leaving the page now will cancel the upload." => "檔案上傳中。離開此頁面將會取消上傳。",
"URL cannot be empty." => "URL 不能為空白.", "URL cannot be empty." => "URL 不能為空白.",
"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "無效的資料夾名稱,'Shared' 的使用被 Owncloud 保留", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "無效的資料夾名稱,'Shared' 的使用被 Owncloud 保留",
"{count} files scanned" => "{count} 個檔案已掃描",
"error while scanning" => "掃描時發生錯誤",
"Name" => "名稱", "Name" => "名稱",
"Size" => "大小", "Size" => "大小",
"Modified" => "修改", "Modified" => "修改",

View File

@ -32,7 +32,7 @@ OCP\Util::addscript( "files", "files" );
$dir = isset( $_GET['dir'] ) ? $_GET['dir'] : ''; $dir = isset( $_GET['dir'] ) ? $_GET['dir'] : '';
$files = array(); $files = array();
foreach( OC_Files::getdirectorycontent( $dir ) as $i ) { foreach( \OC\Files\Filesystem::getDirectoryContent( $dir ) as $i ) {
$i["date"] = date( $CONFIG_DATEFORMAT, $i["mtime"] ); $i["date"] = date( $CONFIG_DATEFORMAT, $i["mtime"] );
$files[] = $i; $files[] = $i;
} }

View File

@ -35,6 +35,11 @@
<a href="#" class="svg" onclick="return false;"></a> <a href="#" class="svg" onclick="return false;"></a>
</form> </form>
</div> </div>
<?php if ($_['trash'] ): ?>
<div id="trash" class="button">
<a><?php echo $l->t('Trash');?></a>
</div>
<?php endif; ?>
<div id="uploadprogresswrapper"> <div id="uploadprogresswrapper">
<div id="uploadprogressbar"></div> <div id="uploadprogressbar"></div>
<input type="button" class="stop" style="display:none" <input type="button" class="stop" style="display:none"
@ -42,7 +47,6 @@
onclick="javascript:Files.cancelUploads();" onclick="javascript:Files.cancelUploads();"
/> />
</div> </div>
</div> </div>
<div id="file_action_panel"></div> <div id="file_action_panel"></div>
<?php else:?> <?php else:?>

View File

@ -13,7 +13,7 @@
$name = str_replace('%2F', '/', $name); $name = str_replace('%2F', '/', $name);
$directory = str_replace('+', '%20', urlencode($file['directory'])); $directory = str_replace('+', '%20', urlencode($file['directory']));
$directory = str_replace('%2F', '/', $directory); ?> $directory = str_replace('%2F', '/', $directory); ?>
<tr data-id="<?php echo $file['id']; ?>" <tr data-id="<?php echo $file['fileid']; ?>"
data-file="<?php echo $name;?>" data-file="<?php echo $name;?>"
data-type="<?php echo ($file['type'] == 'dir')?'dir':'file'?>" data-type="<?php echo ($file['type'] == 'dir')?'dir':'file'?>"
data-mime="<?php echo $file['mimetype']?>" data-mime="<?php echo $file['mimetype']?>"
@ -28,7 +28,7 @@
> >
<?php if(!isset($_['readonly']) || !$_['readonly']): ?><input type="checkbox" /><?php endif; ?> <?php if(!isset($_['readonly']) || !$_['readonly']): ?><input type="checkbox" /><?php endif; ?>
<?php if($file['type'] == 'dir'): ?> <?php if($file['type'] == 'dir'): ?>
<a class="name" href="<?php $_['baseURL'].$directory.'/'.$name; ?>)" title=""> <a class="name" href="<?php echo $_['baseURL'].$directory.'/'.$name; ?>)" title="">
<?php else: ?> <?php else: ?>
<a class="name" href="<?php echo $_['downloadURL'].$directory.'/'.$name; ?>" title=""> <a class="name" href="<?php echo $_['downloadURL'].$directory.'/'.$name; ?>" title="">
<?php endif; ?> <?php endif; ?>
@ -61,4 +61,4 @@
</span> </span>
</td> </td>
</tr> </tr>
<?php endforeach; <?php endforeach;

View File

@ -0,0 +1,4 @@
<div id="upgrade">
<?php echo $l->t('Upgrading filesystem cache...');?>
<div id="progressbar" />
</div>

View File

@ -1,9 +1,15 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Please switch to your ownCloud client and change your encryption password to complete the conversion." => "Por favor, cambie su cliente de ownCloud y cambie su clave de cifrado para completar la conversión.", "Please switch to your ownCloud client and change your encryption password to complete the conversion." => "Por favor, cambie su cliente de ownCloud y cambie su clave de cifrado para completar la conversión.",
"switched to client side encryption" => "Cambiar a encriptación en lado cliente", "switched to client side encryption" => "Cambiar a cifrado del lado del cliente",
"Change encryption password to login password" => "Cambie la clave de cifrado para ingresar su contraseña", "Change encryption password to login password" => "Cambie la clave de cifrado para su contraseña de inicio de sesión",
"Please check your passwords and try again." => "Por favor revise su contraseña e intentelo de nuevo.", "Please check your passwords and try again." => "Por favor revise su contraseña e intentelo de nuevo.",
"Choose encryption mode:" => "Elegir el modo de encriptado:", "Could not change your file encryption password to your login password" => "No se pudo cambiar la contraseña de cifrado de archivos de su contraseña de inicio de sesión",
"Choose encryption mode:" => "Elegir el modo de cifrado:",
"Client side encryption (most secure but makes it impossible to access your data from the web interface)" => "Cifrado del lado del Cliente ( es el más seguro, pero hace que sea imposible acceder a sus datos desde la interfaz web)",
"Server side encryption (allows you to access your files from the web interface and the desktop client)" => "Cifrado del lado del Servidor (le permite acceder a sus archivos desde la interfaz web y el cliente de escritorio)",
"None (no encryption at all)" => "Ninguno (ningún cifrado en absoluto)",
"Important: Once you selected an encryption mode there is no way to change it back" => "Importante: Una vez que haya seleccionado un modo de cifrado no existe forma de cambiarlo de nuevo",
"User specific (let the user decide)" => "Específico del usuario (dejar que el usuario decida)",
"Encryption" => "Cifrado", "Encryption" => "Cifrado",
"Exclude the following file types from encryption" => "Excluir del cifrado los siguientes tipos de archivo", "Exclude the following file types from encryption" => "Excluir del cifrado los siguientes tipos de archivo",
"None" => "Ninguno" "None" => "Ninguno"

View File

@ -1,4 +1,15 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Please switch to your ownCloud client and change your encryption password to complete the conversion." => "Por favor, cambiá uu cliente de ownCloud y cambiá tu clave de encriptado para completar la conversión.",
"switched to client side encryption" => "Cambiado a encriptación por parte del cliente",
"Change encryption password to login password" => "Cambiá la clave de encriptado para tu contraseña de inicio de sesión",
"Please check your passwords and try again." => "Por favor, revisá tu contraseña e intentalo de nuevo.",
"Could not change your file encryption password to your login password" => "No se pudo cambiar la contraseña de encriptación de archivos de tu contraseña de inicio de sesión",
"Choose encryption mode:" => "Elegir el modo de encriptación:",
"Client side encryption (most secure but makes it impossible to access your data from the web interface)" => "Encriptación por parte del cliente (es el modo más seguro, pero hace que sea imposible acceder a tus datos desde la interfaz web)",
"Server side encryption (allows you to access your files from the web interface and the desktop client)" => "Encriptación por parte del servidor (te permite acceder a tus archivos desde la interfaz web y desde el cliente de escritorio)",
"None (no encryption at all)" => "Ninguno (ninguna encriptación en absoluto)",
"Important: Once you selected an encryption mode there is no way to change it back" => "Importante: Una vez que haya seleccionado un modo de encriptación, no existe forma de cambiarlo nuevamente",
"User specific (let the user decide)" => "Específico por usuario (deja que el usuario decida)",
"Encryption" => "Encriptación", "Encryption" => "Encriptación",
"Exclude the following file types from encryption" => "Exceptuar de la encriptación los siguientes tipos de archivo", "Exclude the following file types from encryption" => "Exceptuar de la encriptación los siguientes tipos de archivo",
"None" => "Ninguno" "None" => "Ninguno"

View File

@ -1,4 +1,15 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Please switch to your ownCloud client and change your encryption password to complete the conversion." => "ownCloud로 전환한 다음 암호화에 사용할 암호를 변경하면 변환이 완료됩니다.",
"switched to client side encryption" => "클라이언트 암호화로 변경됨",
"Change encryption password to login password" => "암호화 암호를 로그인 암호로 변경",
"Please check your passwords and try again." => "암호를 확인한 다음 다시 시도하십시오.",
"Could not change your file encryption password to your login password" => "암호화 암호를 로그인 암호로 변경할 수 없습니다",
"Choose encryption mode:" => "암호화 모드 선택:",
"Client side encryption (most secure but makes it impossible to access your data from the web interface)" => "클라이언트 암호화 (안전하지만 웹에서 데이터에 접근할 수 없음)",
"Server side encryption (allows you to access your files from the web interface and the desktop client)" => "서버 암호화 (웹 및 데스크톱 클라이언트에서 데이터에 접근할 수 있음)",
"None (no encryption at all)" => "없음 (암호화하지 않음)",
"Important: Once you selected an encryption mode there is no way to change it back" => "알림: 암호화 모드를 선택하면 다른 것으로 변경할 수 없습니다",
"User specific (let the user decide)" => "사용자 지정 (사용자별 설정)",
"Encryption" => "암호화", "Encryption" => "암호화",
"Exclude the following file types from encryption" => "다음 파일 형식은 암호화하지 않음", "Exclude the following file types from encryption" => "다음 파일 형식은 암호화하지 않음",
"None" => "없음" "None" => "없음"

View File

@ -1,4 +1,15 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Please switch to your ownCloud client and change your encryption password to complete the conversion." => "Por favor, vá ao seu cliente ownCloud e mude sua criptografia de senha para completar a conversão.",
"switched to client side encryption" => "alterado para criptografia por parte do cliente",
"Change encryption password to login password" => "Mudar senha de criptografia para senha de login",
"Please check your passwords and try again." => "Por favor, verifique suas senhas e tente novamente.",
"Could not change your file encryption password to your login password" => "Não foi possível mudar sua senha de criptografia de arquivos para sua senha de login",
"Choose encryption mode:" => "Escolha o modo de criptografia:",
"Client side encryption (most secure but makes it impossible to access your data from the web interface)" => "Criptografia por parte do cliente (mais segura, mas torna impossível acessar seus dados a partir da interface web)",
"Server side encryption (allows you to access your files from the web interface and the desktop client)" => "Criptografia por parte do servidor (permite que você acesse seus arquivos da interface web e do cliente desktop)",
"None (no encryption at all)" => "Nenhuma (sem qualquer criptografia)",
"Important: Once you selected an encryption mode there is no way to change it back" => "Importante: Uma vez que tiver escolhido um modo de criptografia, não há um meio de voltar atrás",
"User specific (let the user decide)" => "Específico por usuário (deixa o usuário decidir)",
"Encryption" => "Criptografia", "Encryption" => "Criptografia",
"Exclude the following file types from encryption" => "Excluir os seguintes tipos de arquivo da criptografia", "Exclude the following file types from encryption" => "Excluir os seguintes tipos de arquivo da criptografia",
"None" => "Nenhuma" "None" => "Nenhuma"

View File

@ -1,4 +1,13 @@
<?php $TRANSLATIONS = array( <?php $TRANSLATIONS = array(
"Please switch to your ownCloud client and change your encryption password to complete the conversion." => "Пожалуйста, переключитесь на ownCloud-клиент и измените Ваш пароль шифрования для завершения конвертации.",
"switched to client side encryption" => "переключено на шифрование на клиентской стороне",
"Please check your passwords and try again." => "Пожалуйста, проверьте Ваш пароль и попробуйте снова",
"Choose encryption mode:" => "Выберите способ шифрования:",
"Client side encryption (most secure but makes it impossible to access your data from the web interface)" => "Шифрование на стороне клиента (наиболее безопасно, но делает невозможным получение доступа к Вашим данным по вэб-интерфейсу)",
"Server side encryption (allows you to access your files from the web interface and the desktop client)" => "Шифрование на стороне сервера (позволяет Вам получить доступ к Вашим файлам по вэб-интерфейсу и десктопному клиенту)",
"None (no encryption at all)" => "Нет (шифрование полностью отсутствует)",
"Important: Once you selected an encryption mode there is no way to change it back" => "Важно: Невозможно будет изменить выбранный способ шифрования",
"User specific (let the user decide)" => "Специфика пользователя (позволено решить пользователю)",
"Encryption" => "Шифрование", "Encryption" => "Шифрование",
"Exclude the following file types from encryption" => "Исключите следующие типы файлов из шифрования", "Exclude the following file types from encryption" => "Исключите следующие типы файлов из шифрования",
"None" => "Ни один" "None" => "Ни один"

View File

@ -12,8 +12,10 @@ $data = fread($fh, filesize($_FILES['rootcert_import']['tmp_name']));
fclose($fh); fclose($fh);
$filename = $_FILES['rootcert_import']['name']; $filename = $_FILES['rootcert_import']['name'];
$view = new \OC_FilesystemView('/'.\OCP\User::getUser().'/files_external/uploads'); $view = new \OC\Files\View('/'.\OCP\User::getUser().'/files_external/uploads');
if ( ! $view->file_exists('')) $view->mkdir(''); if (!$view->file_exists('')){
$view->mkdir('');
}
$isValid = openssl_pkey_get_public($data); $isValid = openssl_pkey_get_public($data);

View File

@ -6,14 +6,14 @@
* See the COPYING-README file. * See the COPYING-README file.
*/ */
OC::$CLASSPATH['OC_FileStorage_StreamWrapper']='apps/files_external/lib/streamwrapper.php'; OC::$CLASSPATH['OC\Files\Storage\StreamWrapper']='apps/files_external/lib/streamwrapper.php';
OC::$CLASSPATH['OC_Filestorage_FTP']='apps/files_external/lib/ftp.php'; OC::$CLASSPATH['OC\Files\Storage\FTP']='apps/files_external/lib/ftp.php';
OC::$CLASSPATH['OC_Filestorage_DAV']='apps/files_external/lib/webdav.php'; OC::$CLASSPATH['OC\Files\Storage\DAV']='apps/files_external/lib/webdav.php';
OC::$CLASSPATH['OC_Filestorage_Google']='apps/files_external/lib/google.php'; OC::$CLASSPATH['OC\Files\Storage\Google']='apps/files_external/lib/google.php';
OC::$CLASSPATH['OC_Filestorage_SWIFT']='apps/files_external/lib/swift.php'; OC::$CLASSPATH['OC\Files\Storage\SWIFT']='apps/files_external/lib/swift.php';
OC::$CLASSPATH['OC_Filestorage_SMB']='apps/files_external/lib/smb.php'; OC::$CLASSPATH['OC\Files\Storage\SMB']='apps/files_external/lib/smb.php';
OC::$CLASSPATH['OC_Filestorage_AmazonS3']='apps/files_external/lib/amazons3.php'; OC::$CLASSPATH['OC\Files\Storage\AmazonS3']='apps/files_external/lib/amazons3.php';
OC::$CLASSPATH['OC_Filestorage_Dropbox']='apps/files_external/lib/dropbox.php'; OC::$CLASSPATH['OC\Files\Storage\Dropbox']='apps/files_external/lib/dropbox.php';
OC::$CLASSPATH['OC_Mount_Config']='apps/files_external/lib/config.php'; OC::$CLASSPATH['OC_Mount_Config']='apps/files_external/lib/config.php';
OCP\App::registerAdmin('files_external', 'settings'); OCP\App::registerAdmin('files_external', 'settings');

View File

@ -5,7 +5,7 @@
<description>Mount external storage sources</description> <description>Mount external storage sources</description>
<licence>AGPL</licence> <licence>AGPL</licence>
<author>Robin Appelman, Michael Gapczynski</author> <author>Robin Appelman, Michael Gapczynski</author>
<require>4.9</require> <require>4.91</require>
<shipped>true</shipped> <shipped>true</shipped>
<types> <types>
<filesystem/> <filesystem/>

View File

@ -1,6 +1,6 @@
$(document).ready(function() { $(document).ready(function() {
$('#externalStorage tbody tr.OC_Filestorage_Dropbox').each(function() { $('#externalStorage tbody tr.\\\\OC\\\\Files\\\\Storage\\\\Dropbox').each(function() {
var configured = $(this).find('[data-parameter="configured"]'); var configured = $(this).find('[data-parameter="configured"]');
if ($(configured).val() == 'true') { if ($(configured).val() == 'true') {
$(this).find('.configuration input').attr('disabled', 'disabled'); $(this).find('.configuration input').attr('disabled', 'disabled');
@ -38,7 +38,7 @@ $(document).ready(function() {
$('#externalStorage tbody').on('keyup', 'tr input', function() { $('#externalStorage tbody').on('keyup', 'tr input', function() {
var tr = $(this).parent().parent(); var tr = $(this).parent().parent();
if ($(tr).hasClass('OC_Filestorage_Dropbox') && $(tr).find('[data-parameter="configured"]').val() != 'true') { if ($(tr).hasClass('\\\\OC\\\\Files\\\\Storage\\\\Dropbox') && $(tr).find('[data-parameter="configured"]').val() != 'true') {
var config = $(tr).find('.configuration'); var config = $(tr).find('.configuration');
if ($(tr).find('.mountPoint input').val() != '' && $(config).find('[data-parameter="app_key"]').val() != '' && $(config).find('[data-parameter="app_secret"]').val() != '') { if ($(tr).find('.mountPoint input').val() != '' && $(config).find('[data-parameter="app_key"]').val() != '' && $(config).find('[data-parameter="app_secret"]').val() != '') {
if ($(tr).find('.dropbox').length == 0) { if ($(tr).find('.dropbox').length == 0) {

View File

@ -1,6 +1,6 @@
$(document).ready(function() { $(document).ready(function() {
$('#externalStorage tbody tr.OC_Filestorage_Google').each(function() { $('#externalStorage tbody tr.\\\\OC\\\\Files\\\\Storage\\\\Google').each(function() {
var configured = $(this).find('[data-parameter="configured"]'); var configured = $(this).find('[data-parameter="configured"]');
if ($(configured).val() == 'true') { if ($(configured).val() == 'true') {
$(this).find('.configuration') $(this).find('.configuration')
@ -34,7 +34,7 @@ $(document).ready(function() {
}); });
$('#externalStorage tbody').on('change', 'tr', function() { $('#externalStorage tbody').on('change', 'tr', function() {
if ($(this).hasClass('OC_Filestorage_Google') && $(this).find('[data-parameter="configured"]').val() != 'true') { if ($(this).hasClass('\\\\OC\\\\Files\\\\Storage\\\\Google') && $(this).find('[data-parameter="configured"]').val() != 'true') {
if ($(this).find('.mountPoint input').val() != '') { if ($(this).find('.mountPoint input').val() != '') {
if ($(this).find('.google').length == 0) { if ($(this).find('.google').length == 0) {
$(this).find('.configuration').append('<a class="button google">'+t('files_external', 'Grant access')+'</a>'); $(this).find('.configuration').append('<a class="button google">'+t('files_external', 'Grant access')+'</a>');
@ -45,7 +45,7 @@ $(document).ready(function() {
$('#externalStorage tbody').on('keyup', 'tr .mountPoint input', function() { $('#externalStorage tbody').on('keyup', 'tr .mountPoint input', function() {
var tr = $(this).parent().parent(); var tr = $(this).parent().parent();
if ($(tr).hasClass('OC_Filestorage_Google') && $(tr).find('[data-parameter="configured"]').val() != 'true' && $(tr).find('.google').length > 0) { if ($(tr).hasClass('\\\\OC\\\\Files\\\\Storage\\\\Google') && $(tr).find('[data-parameter="configured"]').val() != 'true' && $(tr).find('.google').length > 0) {
if ($(this).val() != '') { if ($(this).val() != '') {
$(tr).find('.google').show(); $(tr).find('.google').show();
} else { } else {

View File

@ -100,7 +100,7 @@ $(document).ready(function() {
td.append('<input type="text" data-parameter="'+parameter+'" placeholder="'+placeholder+'" />'); td.append('<input type="text" data-parameter="'+parameter+'" placeholder="'+placeholder+'" />');
} }
}); });
if (parameters['custom'] && $('#externalStorage tbody tr.'+backendClass).length == 1) { if (parameters['custom'] && $('#externalStorage tbody tr.'+backendClass.replace(/\\/g, '\\\\')).length == 1) {
OC.addScript('files_external', parameters['custom']); OC.addScript('files_external', parameters['custom']);
} }
return false; return false;

View File

@ -5,8 +5,8 @@
"Fill out all required fields" => "모든 필수 항목을 입력하십시오", "Fill out all required fields" => "모든 필수 항목을 입력하십시오",
"Please provide a valid Dropbox app key and secret." => "올바른 Dropbox 앱 키와 암호를 입력하십시오.", "Please provide a valid Dropbox app key and secret." => "올바른 Dropbox 앱 키와 암호를 입력하십시오.",
"Error configuring Google Drive storage" => "Google 드라이브 저장소 설정 오류", "Error configuring Google Drive storage" => "Google 드라이브 저장소 설정 오류",
"<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it." => "<b>경고</b>\"smbclient\"가 설치되지 않았습니다. CIFS/SMB 공유애 연결이 불가능 합니다.. 시스템 관리자에게 요청하여 설치하시기 바랍니다.", "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it." => "<b>경고:</b> \"smbclient\"가 설치되지 않았습니다. CIFS/SMB 공유 자원에 연결할 수 없습니다. 시스템 관리자에게 설치를 요청하십시오.",
"<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it." => "<b>경고</b>PHP용 FTP 지원이 사용 불가능 하거나 설치되지 않았습니다. FTP 공유에 연결이 불가능 합니다. 시스템 관리자에게 요청하여 설치하시기 바랍니다. ", "<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it." => "<b>경고:</b> PHP FTP 지원이 비활성화되어 있거나 설치되지 않았습니다. FTP 공유를 마운트할 수 없습니다. 시스템 관리자에게 설치를 요청하십시오.",
"External Storage" => "외부 저장소", "External Storage" => "외부 저장소",
"Mount point" => "마운트 지점", "Mount point" => "마운트 지점",
"Backend" => "백엔드", "Backend" => "백엔드",

View File

@ -5,6 +5,8 @@
"Fill out all required fields" => "Preencha todos os campos obrigatórios", "Fill out all required fields" => "Preencha todos os campos obrigatórios",
"Please provide a valid Dropbox app key and secret." => "Por favor forneça um app key e secret válido do Dropbox", "Please provide a valid Dropbox app key and secret." => "Por favor forneça um app key e secret válido do Dropbox",
"Error configuring Google Drive storage" => "Erro ao configurar armazenamento do Google Drive", "Error configuring Google Drive storage" => "Erro ao configurar armazenamento do Google Drive",
"<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it." => "<b>Aviso:</b> \"smbclient\" não está instalado. Não será possível montar compartilhamentos de CIFS/SMB. Por favor, peça ao seu administrador do sistema para instalá-lo.",
"<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it." => "<b>Aviso:</b> O suporte para FTP do PHP não está ativado ou instalado. Não será possível montar compartilhamentos FTP. Por favor, peça ao seu administrador do sistema para instalá-lo.",
"External Storage" => "Armazenamento Externo", "External Storage" => "Armazenamento Externo",
"Mount point" => "Ponto de montagem", "Mount point" => "Ponto de montagem",
"Backend" => "Backend", "Backend" => "Backend",

View File

@ -5,6 +5,8 @@
"Fill out all required fields" => "Vyplňte všetky vyžadované kolónky", "Fill out all required fields" => "Vyplňte všetky vyžadované kolónky",
"Please provide a valid Dropbox app key and secret." => "Zadajte platný kľúč aplikácie a heslo Dropbox", "Please provide a valid Dropbox app key and secret." => "Zadajte platný kľúč aplikácie a heslo Dropbox",
"Error configuring Google Drive storage" => "Chyba pri konfigurácii úložiska Google drive", "Error configuring Google Drive storage" => "Chyba pri konfigurácii úložiska Google drive",
"<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it." => "<b>Upozornenie:</b> \"smbclient\" nie je nainštalovaný. Nie je možné pripojenie oddielov CIFS/SMB. Požiadajte administrátora systému, nech ho nainštaluje.",
"<b>Warning:</b> The FTP support in PHP is not enabled or installed. Mounting of FTP shares is not possible. Please ask your system administrator to install it." => "<b>Upozornenie:</b> Podpora FTP v PHP nie je povolená alebo nainštalovaná. Nie je možné pripojenie oddielov FTP. Požiadajte administrátora systému, nech ho nainštaluje.",
"External Storage" => "Externé úložisko", "External Storage" => "Externé úložisko",
"Mount point" => "Prípojný bod", "Mount point" => "Prípojný bod",
"Backend" => "Backend", "Backend" => "Backend",

View File

@ -1,39 +1,43 @@
<?php <?php
/** /**
* ownCloud * ownCloud
* *
* @author Michael Gapczynski * @author Michael Gapczynski
* @copyright 2012 Michael Gapczynski mtgap@owncloud.com * @copyright 2012 Michael Gapczynski mtgap@owncloud.com
* *
* This library is free software; you can redistribute it and/or * This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
* License as published by the Free Software Foundation; either * License as published by the Free Software Foundation; either
* version 3 of the License, or any later version. * version 3 of the License, or any later version.
* *
* This library is distributed in the hope that it will be useful, * This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of * but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU AFFERO GENERAL PUBLIC LICENSE for more details. * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
* *
* You should have received a copy of the GNU Affero General Public * You should have received a copy of the GNU Affero General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>. * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/ */
namespace OC\Files\Storage;
require_once 'aws-sdk/sdk.class.php'; require_once 'aws-sdk/sdk.class.php';
class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common { class AmazonS3 extends \OC\Files\Storage\Common {
private $s3; private $s3;
private $bucket; private $bucket;
private $objects = array(); private $objects = array();
private $id;
private static $tempFiles = array(); private static $tempFiles = array();
// TODO options: storage class, encryption server side, encrypt before upload? // TODO options: storage class, encryption server side, encrypt before upload?
public function __construct($params) { public function __construct($params) {
$this->s3 = new AmazonS3(array('key' => $params['key'], 'secret' => $params['secret'])); $this->id = 'amazon::' . $params['key'] . md5($params['secret']);
$this->s3 = new \AmazonS3(array('key' => $params['key'], 'secret' => $params['secret']));
$this->bucket = $params['bucket']; $this->bucket = $params['bucket'];
} }
@ -47,7 +51,7 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common {
return $response; return $response;
// This object could be a folder, a '/' must be at the end of the path // This object could be a folder, a '/' must be at the end of the path
} else if (substr($path, -1) != '/') { } else if (substr($path, -1) != '/') {
$response = $this->s3->get_object_metadata($this->bucket, $path.'/'); $response = $this->s3->get_object_metadata($this->bucket, $path . '/');
if ($response) { if ($response) {
$this->objects[$path] = $response; $this->objects[$path] = $response;
return $response; return $response;
@ -57,6 +61,10 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common {
return false; return false;
} }
public function getId() {
return $this->id;
}
public function mkdir($path) { public function mkdir($path) {
// Folders in Amazon S3 are 0 byte objects with a '/' at the end of the name // Folders in Amazon S3 are 0 byte objects with a '/' at the end of the name
if (substr($path, -1) != '/') { if (substr($path, -1) != '/') {
@ -96,8 +104,8 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common {
foreach ($response->body->CommonPrefixes as $object) { foreach ($response->body->CommonPrefixes as $object) {
$files[] = basename($object->Prefix); $files[] = basename($object->Prefix);
} }
OC_FakeDirStream::$dirs['amazons3'.$path] = $files; \OC\Files\Stream\Dir::register('amazons3' . $path, $files);
return opendir('fakedir://amazons3'.$path); return opendir('fakedir://amazons3' . $path);
} }
return false; return false;
} }
@ -107,15 +115,10 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common {
$stat['size'] = $this->s3->get_bucket_filesize($this->bucket); $stat['size'] = $this->s3->get_bucket_filesize($this->bucket);
$stat['atime'] = time(); $stat['atime'] = time();
$stat['mtime'] = $stat['atime']; $stat['mtime'] = $stat['atime'];
$stat['ctime'] = $stat['atime']; } else if ($object = $this->getObject($path)) {
} else { $stat['size'] = $object['Size'];
$object = $this->getObject($path); $stat['atime'] = time();
if ($object) { $stat['mtime'] = strtotime($object['LastModified']);
$stat['size'] = $object['Size'];
$stat['atime'] = time();
$stat['mtime'] = strtotime($object['LastModified']);
$stat['ctime'] = $stat['mtime'];
}
} }
if (isset($stat)) { if (isset($stat)) {
return $stat; return $stat;
@ -166,7 +169,7 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common {
switch ($mode) { switch ($mode) {
case 'r': case 'r':
case 'rb': case 'rb':
$tmpFile = OC_Helper::tmpFile(); $tmpFile = \OC_Helper::tmpFile();
$handle = fopen($tmpFile, 'w'); $handle = fopen($tmpFile, 'w');
$response = $this->s3->get_object($this->bucket, $path, array('fileDownload' => $handle)); $response = $this->s3->get_object($this->bucket, $path, array('fileDownload' => $handle));
if ($response->isOK()) { if ($response->isOK()) {
@ -190,14 +193,14 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common {
} else { } else {
$ext = ''; $ext = '';
} }
$tmpFile = OC_Helper::tmpFile($ext); $tmpFile = \OC_Helper::tmpFile($ext);
OC_CloseStreamWrapper::$callBacks[$tmpFile] = array($this, 'writeBack'); \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack'));
if ($this->file_exists($path)) { if ($this->file_exists($path)) {
$source = $this->fopen($path, 'r'); $source = $this->fopen($path, 'r');
file_put_contents($tmpFile, $source); file_put_contents($tmpFile, $source);
} }
self::$tempFiles[$tmpFile] = $path; self::$tempFiles[$tmpFile] = $path;
return fopen('close://'.$tmpFile, $mode); return fopen('close://' . $tmpFile, $mode);
} }
return false; return false;
} }
@ -206,8 +209,8 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common {
if (isset(self::$tempFiles[$tmpFile])) { if (isset(self::$tempFiles[$tmpFile])) {
$handle = fopen($tmpFile, 'r'); $handle = fopen($tmpFile, 'r');
$response = $this->s3->create_object($this->bucket, $response = $this->s3->create_object($this->bucket,
self::$tempFiles[$tmpFile], self::$tempFiles[$tmpFile],
array('fileUpload' => $handle)); array('fileUpload' => $handle));
if ($response->isOK()) { if ($response->isOK()) {
unlink($tmpFile); unlink($tmpFile);
} }

View File

@ -38,20 +38,20 @@ class OC_Mount_Config {
* @return array * @return array
*/ */
public static function getBackends() { public static function getBackends() {
$backends['OC_Filestorage_Local']=array( $backends['\OC\Files\Storage\Local']=array(
'backend' => 'Local', 'backend' => 'Local',
'configuration' => array( 'configuration' => array(
'datadir' => 'Location')); 'datadir' => 'Location'));
$backends['OC_Filestorage_AmazonS3']=array( $backends['\OC\Files\Storage\AmazonS3']=array(
'backend' => 'Amazon S3', 'backend' => 'Amazon S3',
'configuration' => array( 'configuration' => array(
'key' => 'Key', 'key' => 'Key',
'secret' => '*Secret', 'secret' => '*Secret',
'bucket' => 'Bucket')); 'bucket' => 'Bucket'));
$backends['OC_Filestorage_Dropbox']=array( $backends['\OC\Files\Storage\Dropbox']=array(
'backend' => 'Dropbox', 'backend' => 'Dropbox',
'configuration' => array( 'configuration' => array(
'configured' => '#configured', 'configured' => '#configured',
@ -61,7 +61,7 @@ class OC_Mount_Config {
'token_secret' => '#token_secret'), 'token_secret' => '#token_secret'),
'custom' => 'dropbox'); 'custom' => 'dropbox');
if(OC_Mount_Config::checkphpftp()) $backends['OC_Filestorage_FTP']=array( if(OC_Mount_Config::checkphpftp()) $backends['\OC\Files\Storage\FTP']=array(
'backend' => 'FTP', 'backend' => 'FTP',
'configuration' => array( 'configuration' => array(
'host' => 'URL', 'host' => 'URL',
@ -70,15 +70,15 @@ class OC_Mount_Config {
'root' => '&Root', 'root' => '&Root',
'secure' => '!Secure ftps://')); 'secure' => '!Secure ftps://'));
$backends['OC_Filestorage_Google']=array( $backends['\OC\Files\Storage\Google']=array(
'backend' => 'Google Drive', 'backend' => 'Google Drive',
'configuration' => array( 'configuration' => array(
'configured' => '#configured', 'configured' => '#configured',
'token' => '#token', 'token' => '#token',
'token_secret' => '#token secret'), 'token_secret' => '#token secret'),
'custom' => 'google'); 'custom' => 'google');
$backends['OC_Filestorage_SWIFT']=array( $backends['\OC\Files\Storage\SWIFT']=array(
'backend' => 'OpenStack Swift', 'backend' => 'OpenStack Swift',
'configuration' => array( 'configuration' => array(
'host' => 'URL', 'host' => 'URL',
@ -86,8 +86,8 @@ class OC_Mount_Config {
'token' => '*Token', 'token' => '*Token',
'root' => '&Root', 'root' => '&Root',
'secure' => '!Secure ftps://')); 'secure' => '!Secure ftps://'));
if(OC_Mount_Config::checksmbclient()) $backends['OC_Filestorage_SMB']=array( if(OC_Mount_Config::checksmbclient()) $backends['\OC\Files\Storage\SMB']=array(
'backend' => 'SMB / CIFS', 'backend' => 'SMB / CIFS',
'configuration' => array( 'configuration' => array(
'host' => 'URL', 'host' => 'URL',
@ -95,8 +95,8 @@ class OC_Mount_Config {
'password' => '*Password', 'password' => '*Password',
'share' => 'Share', 'share' => 'Share',
'root' => '&Root')); 'root' => '&Root'));
$backends['OC_Filestorage_DAV']=array( $backends['\OC\Files\Storage\DAV']=array(
'backend' => 'ownCloud / WebDAV', 'backend' => 'ownCloud / WebDAV',
'configuration' => array( 'configuration' => array(
'host' => 'URL', 'host' => 'URL',
@ -120,6 +120,10 @@ class OC_Mount_Config {
if (isset($mountPoints[self::MOUNT_TYPE_GROUP])) { if (isset($mountPoints[self::MOUNT_TYPE_GROUP])) {
foreach ($mountPoints[self::MOUNT_TYPE_GROUP] as $group => $mounts) { foreach ($mountPoints[self::MOUNT_TYPE_GROUP] as $group => $mounts) {
foreach ($mounts as $mountPoint => $mount) { foreach ($mounts as $mountPoint => $mount) {
// Update old classes to new namespace
if (strpos($mount['class'], 'OC_Filestorage_') !== false) {
$mount['class'] = '\OC\Files\Storage\\'.substr($mount['class'], 15);
}
// Remove '/$user/files/' from mount point // Remove '/$user/files/' from mount point
$mountPoint = substr($mountPoint, 13); $mountPoint = substr($mountPoint, 13);
// Merge the mount point into the current mount points // Merge the mount point into the current mount points
@ -139,6 +143,10 @@ class OC_Mount_Config {
if (isset($mountPoints[self::MOUNT_TYPE_USER])) { if (isset($mountPoints[self::MOUNT_TYPE_USER])) {
foreach ($mountPoints[self::MOUNT_TYPE_USER] as $user => $mounts) { foreach ($mountPoints[self::MOUNT_TYPE_USER] as $user => $mounts) {
foreach ($mounts as $mountPoint => $mount) { foreach ($mounts as $mountPoint => $mount) {
// Update old classes to new namespace
if (strpos($mount['class'], 'OC_Filestorage_') !== false) {
$mount['class'] = '\OC\Files\Storage\\'.substr($mount['class'], 15);
}
// Remove '/$user/files/' from mount point // Remove '/$user/files/' from mount point
$mountPoint = substr($mountPoint, 13); $mountPoint = substr($mountPoint, 13);
// Merge the mount point into the current mount points // Merge the mount point into the current mount points
@ -169,6 +177,10 @@ class OC_Mount_Config {
$personal = array(); $personal = array();
if (isset($mountPoints[self::MOUNT_TYPE_USER][$uid])) { if (isset($mountPoints[self::MOUNT_TYPE_USER][$uid])) {
foreach ($mountPoints[self::MOUNT_TYPE_USER][$uid] as $mountPoint => $mount) { foreach ($mountPoints[self::MOUNT_TYPE_USER][$uid] as $mountPoint => $mount) {
// Update old classes to new namespace
if (strpos($mount['class'], 'OC_Filestorage_') !== false) {
$mount['class'] = '\OC\Files\Storage\\'.substr($mount['class'], 15);
}
// Remove '/uid/files/' from mount point // Remove '/uid/files/' from mount point
$personal[substr($mountPoint, strlen($uid) + 8)] = array('class' => $mount['class'], $personal[substr($mountPoint, strlen($uid) + 8)] = array('class' => $mount['class'],
'backend' => $backends[$mount['class']]['backend'], 'backend' => $backends[$mount['class']]['backend'],
@ -178,22 +190,6 @@ class OC_Mount_Config {
return $personal; return $personal;
} }
/**
* Add directory for mount point to the filesystem
* @param OC_Fileview instance $view
* @param string path to mount point
*/
private static function addMountPointDirectory($view, $path) {
$dir = '';
foreach ( explode('/', $path) as $pathPart) {
$dir = $dir.'/'.$pathPart;
if ( !$view->file_exists($dir)) {
$view->mkdir($dir);
}
}
}
/** /**
* Add a mount point to the filesystem * Add a mount point to the filesystem
* @param string Mount point * @param string Mount point
@ -213,36 +209,11 @@ class OC_Mount_Config {
if ($isPersonal) { if ($isPersonal) {
// Verify that the mount point applies for the current user // Verify that the mount point applies for the current user
// Prevent non-admin users from mounting local storage // Prevent non-admin users from mounting local storage
if ($applicable != OCP\User::getUser() || $class == 'OC_Filestorage_Local') { if ($applicable != OCP\User::getUser() || $class == '\OC\Files\Storage\Local') {
return false; return false;
} }
$view = new OC_FilesystemView('/'.OCP\User::getUser().'/files');
self::addMountPointDirectory($view, ltrim($mountPoint, '/'));
$mountPoint = '/'.$applicable.'/files/'.ltrim($mountPoint, '/'); $mountPoint = '/'.$applicable.'/files/'.ltrim($mountPoint, '/');
} else { } else {
$view = new OC_FilesystemView('/');
switch ($mountType) {
case 'user':
if ($applicable == "all") {
$users = OCP\User::getUsers();
foreach ( $users as $user ) {
$path = $user.'/files/'.ltrim($mountPoint, '/');
self::addMountPointDirectory($view, $path);
}
} else {
$path = $applicable.'/files/'.ltrim($mountPoint, '/');
self::addMountPointDirectory($view, $path);
}
break;
case 'group' :
$groupMembers = OC_Group::usersInGroups(array($applicable));
foreach ( $groupMembers as $user ) {
$path = $user.'/files/'.ltrim($mountPoint, '/');
self::addMountPointDirectory($view, $path);
}
break;
}
$mountPoint = '/$user/files/'.ltrim($mountPoint, '/'); $mountPoint = '/$user/files/'.ltrim($mountPoint, '/');
} }
$mount = array($applicable => array($mountPoint => array('class' => $class, 'options' => $classOptions))); $mount = array($applicable => array($mountPoint => array('class' => $class, 'options' => $classOptions)));

View File

@ -20,12 +20,15 @@
* License along with this library. If not, see <http://www.gnu.org/licenses/>. * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/ */
namespace OC\Files\Storage;
require_once 'Dropbox/autoload.php'; require_once 'Dropbox/autoload.php';
class OC_Filestorage_Dropbox extends OC_Filestorage_Common { class Dropbox extends \OC\Files\Storage\Common {
private $dropbox; private $dropbox;
private $root; private $root;
private $id;
private $metaData = array(); private $metaData = array();
private static $tempFiles = array(); private static $tempFiles = array();
@ -37,13 +40,14 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
&& isset($params['token']) && isset($params['token'])
&& isset($params['token_secret']) && isset($params['token_secret'])
) { ) {
$this->id = 'dropbox::'.$params['app_key'] . $params['token']. '/' . $params['root'];
$this->root=isset($params['root'])?$params['root']:''; $this->root=isset($params['root'])?$params['root']:'';
$oauth = new Dropbox_OAuth_Curl($params['app_key'], $params['app_secret']); $oauth = new \Dropbox_OAuth_Curl($params['app_key'], $params['app_secret']);
$oauth->setToken($params['token'], $params['token_secret']); $oauth->setToken($params['token'], $params['token_secret']);
$this->dropbox = new Dropbox_API($oauth, 'dropbox'); $this->dropbox = new \Dropbox_API($oauth, 'dropbox');
$this->mkdir(''); $this->mkdir('');
} else { } else {
throw new Exception('Creating OC_Filestorage_Dropbox storage failed'); throw new \Exception('Creating \OC\Files\Storage\Dropbox storage failed');
} }
} }
@ -55,8 +59,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
if ($list) { if ($list) {
try { try {
$response = $this->dropbox->getMetaData($path); $response = $this->dropbox->getMetaData($path);
} catch (Exception $exception) { } catch (\Exception $exception) {
OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR);
return false; return false;
} }
if ($response && isset($response['contents'])) { if ($response && isset($response['contents'])) {
@ -76,21 +80,25 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
$response = $this->dropbox->getMetaData($path, 'false'); $response = $this->dropbox->getMetaData($path, 'false');
$this->metaData[$path] = $response; $this->metaData[$path] = $response;
return $response; return $response;
} catch (Exception $exception) { } catch (\Exception $exception) {
OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR);
return false; return false;
} }
} }
} }
} }
public function getId(){
return $this->id;
}
public function mkdir($path) { public function mkdir($path) {
$path = $this->root.$path; $path = $this->root.$path;
try { try {
$this->dropbox->createFolder($path); $this->dropbox->createFolder($path);
return true; return true;
} catch (Exception $exception) { } catch (\Exception $exception) {
OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR);
return false; return false;
} }
} }
@ -106,7 +114,7 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
foreach ($contents as $file) { foreach ($contents as $file) {
$files[] = basename($file['path']); $files[] = basename($file['path']);
} }
OC_FakeDirStream::$dirs['dropbox'.$path] = $files; \OC\Files\Stream\Dir::register('dropbox'.$path, $files);
return opendir('fakedir://dropbox'.$path); return opendir('fakedir://dropbox'.$path);
} }
return false; return false;
@ -118,7 +126,6 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
$stat['size'] = $metaData['bytes']; $stat['size'] = $metaData['bytes'];
$stat['atime'] = time(); $stat['atime'] = time();
$stat['mtime'] = (isset($metaData['modified'])) ? strtotime($metaData['modified']) : time(); $stat['mtime'] = (isset($metaData['modified'])) ? strtotime($metaData['modified']) : time();
$stat['ctime'] = $stat['mtime'];
return $stat; return $stat;
} }
return false; return false;
@ -163,8 +170,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
try { try {
$this->dropbox->delete($path); $this->dropbox->delete($path);
return true; return true;
} catch (Exception $exception) { } catch (\Exception $exception) {
OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR);
return false; return false;
} }
} }
@ -175,8 +182,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
try { try {
$this->dropbox->move($path1, $path2); $this->dropbox->move($path1, $path2);
return true; return true;
} catch (Exception $exception) { } catch (\Exception $exception) {
OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR);
return false; return false;
} }
} }
@ -187,8 +194,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
try { try {
$this->dropbox->copy($path1, $path2); $this->dropbox->copy($path1, $path2);
return true; return true;
} catch (Exception $exception) { } catch (\Exception $exception) {
OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR);
return false; return false;
} }
} }
@ -198,13 +205,13 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
switch ($mode) { switch ($mode) {
case 'r': case 'r':
case 'rb': case 'rb':
$tmpFile = OC_Helper::tmpFile(); $tmpFile = \OC_Helper::tmpFile();
try { try {
$data = $this->dropbox->getFile($path); $data = $this->dropbox->getFile($path);
file_put_contents($tmpFile, $data); file_put_contents($tmpFile, $data);
return fopen($tmpFile, 'r'); return fopen($tmpFile, 'r');
} catch (Exception $exception) { } catch (\Exception $exception) {
OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR);
return false; return false;
} }
case 'w': case 'w':
@ -224,8 +231,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
} else { } else {
$ext = ''; $ext = '';
} }
$tmpFile = OC_Helper::tmpFile($ext); $tmpFile = \OC_Helper::tmpFile($ext);
OC_CloseStreamWrapper::$callBacks[$tmpFile] = array($this, 'writeBack'); \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack'));
if ($this->file_exists($path)) { if ($this->file_exists($path)) {
$source = $this->fopen($path, 'r'); $source = $this->fopen($path, 'r');
file_put_contents($tmpFile, $source); file_put_contents($tmpFile, $source);
@ -242,8 +249,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
try { try {
$this->dropbox->putFile(self::$tempFiles[$tmpFile], $handle); $this->dropbox->putFile(self::$tempFiles[$tmpFile], $handle);
unlink($tmpFile); unlink($tmpFile);
} catch (Exception $exception) { } catch (\Exception $exception) {
OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR);
} }
} }
} }
@ -264,8 +271,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
try { try {
$info = $this->dropbox->getAccountInfo(); $info = $this->dropbox->getAccountInfo();
return $info['quota_info']['quota'] - $info['quota_info']['normal']; return $info['quota_info']['quota'] - $info['quota_info']['normal'];
} catch (Exception $exception) { } catch (\Exception $exception) {
OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR);
return false; return false;
} }
} }

View File

@ -6,7 +6,9 @@
* See the COPYING-README file. * See the COPYING-README file.
*/ */
class OC_FileStorage_FTP extends OC_FileStorage_StreamWrapper{ namespace OC\Files\Storage;
class FTP extends \OC\Files\Storage\StreamWrapper{
private $password; private $password;
private $user; private $user;
private $host; private $host;
@ -38,9 +40,13 @@ class OC_FileStorage_FTP extends OC_FileStorage_StreamWrapper{
} }
} }
public function getId(){
return 'ftp::' . $this->user . '@' . $this->host . '/' . $this->root;
}
/** /**
* construct the ftp url * construct the ftp url
* @param string path * @param string $path
* @return string * @return string
*/ */
public function constructUrl($path) { public function constructUrl($path) {
@ -51,7 +57,8 @@ class OC_FileStorage_FTP extends OC_FileStorage_StreamWrapper{
$url.='://'.$this->user.':'.$this->password.'@'.$this->host.$this->root.$path; $url.='://'.$this->user.':'.$this->password.'@'.$this->host.$this->root.$path;
return $url; return $url;
} }
public function fopen($path, $mode) { public function fopen($path,$mode) {
$this->init();
switch($mode) { switch($mode) {
case 'r': case 'r':
case 'rb': case 'rb':
@ -61,7 +68,7 @@ class OC_FileStorage_FTP extends OC_FileStorage_StreamWrapper{
case 'ab': case 'ab':
//these are supported by the wrapper //these are supported by the wrapper
$context = stream_context_create(array('ftp' => array('overwrite' => true))); $context = stream_context_create(array('ftp' => array('overwrite' => true)));
return fopen($this->constructUrl($path), $mode, false, $context); return fopen($this->constructUrl($path),$mode, false,$context);
case 'r+': case 'r+':
case 'w+': case 'w+':
case 'wb+': case 'wb+':
@ -77,16 +84,18 @@ class OC_FileStorage_FTP extends OC_FileStorage_StreamWrapper{
$ext=''; $ext='';
} }
$tmpFile=OCP\Files::tmpFile($ext); $tmpFile=OCP\Files::tmpFile($ext);
OC_CloseStreamWrapper::$callBacks[$tmpFile]=array($this, 'writeBack'); \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack'));
if ($this->file_exists($path)) { if ($this->file_exists($path)) {
$this->getFile($path, $tmpFile); $this->getFile($path, $tmpFile);
} }
self::$tempFiles[$tmpFile]=$path; self::$tempFiles[$tmpFile]=$path;
return fopen('close://'.$tmpFile, $mode); return fopen('close://'.$tmpFile,$mode);
} }
return false;
} }
public function writeBack($tmpFile) { public function writeBack($tmpFile) {
$this->init();
if (isset(self::$tempFiles[$tmpFile])) { if (isset(self::$tempFiles[$tmpFile])) {
$this->uploadFile($tmpFile, self::$tempFiles[$tmpFile]); $this->uploadFile($tmpFile, self::$tempFiles[$tmpFile]);
unlink($tmpFile); unlink($tmpFile);

View File

@ -20,14 +20,17 @@
* License along with this library. If not, see <http://www.gnu.org/licenses/>. * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/ */
namespace OC\Files\Storage;
require_once 'Google/common.inc.php'; require_once 'Google/common.inc.php';
class OC_Filestorage_Google extends OC_Filestorage_Common { class Google extends \OC\Files\Storage\Common {
private $consumer; private $consumer;
private $oauth_token; private $oauth_token;
private $sig_method; private $sig_method;
private $entries; private $entries;
private $id;
private static $tempFiles = array(); private static $tempFiles = array();
@ -38,12 +41,13 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
) { ) {
$consumer_key = isset($params['consumer_key']) ? $params['consumer_key'] : 'anonymous'; $consumer_key = isset($params['consumer_key']) ? $params['consumer_key'] : 'anonymous';
$consumer_secret = isset($params['consumer_secret']) ? $params['consumer_secret'] : 'anonymous'; $consumer_secret = isset($params['consumer_secret']) ? $params['consumer_secret'] : 'anonymous';
$this->consumer = new OAuthConsumer($consumer_key, $consumer_secret); $this->id = 'google::' . $params['token'];
$this->oauth_token = new OAuthToken($params['token'], $params['token_secret']); $this->consumer = new \OAuthConsumer($consumer_key, $consumer_secret);
$this->sig_method = new OAuthSignatureMethod_HMAC_SHA1(); $this->oauth_token = new \OAuthToken($params['token'], $params['token_secret']);
$this->sig_method = new \OAuthSignatureMethod_HMAC_SHA1();
$this->entries = array(); $this->entries = array();
} else { } else {
throw new Exception('Creating OC_Filestorage_Google storage failed'); throw new \Exception('Creating \OC\Files\Storage\Google storage failed');
} }
} }
@ -68,7 +72,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
$tempStr .= '&' . urlencode($key) . '=' . urlencode($value); $tempStr .= '&' . urlencode($key) . '=' . urlencode($value);
} }
$uri = preg_replace('/&/', '?', $tempStr, 1); $uri = preg_replace('/&/', '?', $tempStr, 1);
$request = OAuthRequest::from_consumer_and_token($this->consumer, $request = \OAuthRequest::from_consumer_and_token($this->consumer,
$this->oauth_token, $this->oauth_token,
$httpMethod, $httpMethod,
$uri, $uri,
@ -110,7 +114,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
} }
if ($isDownload) { if ($isDownload) {
$tmpFile = OC_Helper::tmpFile(); $tmpFile = \OC_Helper::tmpFile();
$handle = fopen($tmpFile, 'w'); $handle = fopen($tmpFile, 'w');
curl_setopt($curl, CURLOPT_FILE, $handle); curl_setopt($curl, CURLOPT_FILE, $handle);
} }
@ -139,7 +143,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
private function getFeed($feedUri, $httpMethod, $postData = null) { private function getFeed($feedUri, $httpMethod, $postData = null) {
$result = $this->sendRequest($feedUri, $httpMethod, $postData); $result = $this->sendRequest($feedUri, $httpMethod, $postData);
if ($result) { if ($result) {
$dom = new DOMDocument(); $dom = new \DOMDocument();
$dom->loadXML($result); $dom->loadXML($result);
return $dom; return $dom;
} }
@ -194,6 +198,9 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
} }
} }
public function getId(){
return $this->id;
}
public function mkdir($path) { public function mkdir($path) {
$collection = dirname($path); $collection = dirname($path);
@ -266,7 +273,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
$this->entries[$name] = $entry; $this->entries[$name] = $entry;
} }
} }
OC_FakeDirStream::$dirs['google'.$path] = $files; \OC\Files\Stream\Dir::register('google'.$path, $files);
return opendir('fakedir://google'.$path); return opendir('fakedir://google'.$path);
} }
@ -287,7 +294,6 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
//$stat['atime'] = strtotime($entry->getElementsByTagNameNS('http://schemas.google.com/g/2005', //$stat['atime'] = strtotime($entry->getElementsByTagNameNS('http://schemas.google.com/g/2005',
// 'lastViewed')->item(0)->nodeValue); // 'lastViewed')->item(0)->nodeValue);
$stat['mtime'] = strtotime($entry->getElementsByTagName('updated')->item(0)->nodeValue); $stat['mtime'] = strtotime($entry->getElementsByTagName('updated')->item(0)->nodeValue);
$stat['ctime'] = strtotime($entry->getElementsByTagName('published')->item(0)->nodeValue);
} }
} }
if (isset($stat)) { if (isset($stat)) {
@ -443,8 +449,8 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
} else { } else {
$ext = ''; $ext = '';
} }
$tmpFile = OC_Helper::tmpFile($ext); $tmpFile = \OC_Helper::tmpFile($ext);
OC_CloseStreamWrapper::$callBacks[$tmpFile] = array($this, 'writeBack'); \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack'));
if ($this->file_exists($path)) { if ($this->file_exists($path)) {
$source = $this->fopen($path, 'r'); $source = $this->fopen($path, 'r');
file_put_contents($tmpFile, $source); file_put_contents($tmpFile, $source);
@ -482,7 +488,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
} }
if (isset($uploadUri) && $handle = fopen($path, 'r')) { if (isset($uploadUri) && $handle = fopen($path, 'r')) {
$uploadUri .= '?convert=false'; $uploadUri .= '?convert=false';
$mimetype = OC_Helper::getMimeType($path); $mimetype = \OC_Helper::getMimeType($path);
$size = filesize($path); $size = filesize($path);
$headers = array('X-Upload-Content-Type: ' => $mimetype, 'X-Upload-Content-Length: ' => $size); $headers = array('X-Upload-Content-Type: ' => $mimetype, 'X-Upload-Content-Length: ' => $size);
$postData = '<?xml version="1.0" encoding="UTF-8"?>'; $postData = '<?xml version="1.0" encoding="UTF-8"?>';
@ -590,4 +596,4 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
} }
} }

View File

@ -6,9 +6,11 @@
* See the COPYING-README file. * See the COPYING-README file.
*/ */
namespace OC\Files\Storage;
require_once 'smb4php/smb.php'; require_once 'smb4php/smb.php';
class OC_FileStorage_SMB extends OC_FileStorage_StreamWrapper{ class SMB extends \OC\Files\Storage\StreamWrapper{
private $password; private $password;
private $user; private $user;
private $host; private $host;
@ -30,14 +32,13 @@ class OC_FileStorage_SMB extends OC_FileStorage_StreamWrapper{
if ( ! $this->share || $this->share[0]!='/') { if ( ! $this->share || $this->share[0]!='/') {
$this->share='/'.$this->share; $this->share='/'.$this->share;
} }
if (substr($this->share, -1, 1)=='/') { if(substr($this->share, -1, 1)=='/') {
$this->share=substr($this->share, 0, -1); $this->share = substr($this->share,0,-1);
} }
}
//create the root folder if necesary public function getId(){
if ( ! $this->is_dir('')) { return 'smb::' . $this->user . '@' . $this->host . '/' . $this->share . '/' . $this->root;
$this->mkdir('');
}
} }
public function constructUrl($path) { public function constructUrl($path) {
@ -65,11 +66,13 @@ class OC_FileStorage_SMB extends OC_FileStorage_StreamWrapper{
/** /**
* check if a file or folder has been updated since $time * check if a file or folder has been updated since $time
* @param string $path
* @param int $time * @param int $time
* @return bool * @return bool
*/ */
public function hasUpdated($path, $time) { public function hasUpdated($path,$time) {
if ( ! $path and $this->root=='/') { $this->init();
if(!$path and $this->root=='/') {
// mtime doesn't work for shares, but giving the nature of the backend, // mtime doesn't work for shares, but giving the nature of the backend,
// doing a full update is still just fast enough // doing a full update is still just fast enough
return true; return true;

View File

@ -6,16 +6,33 @@
* See the COPYING-README file. * See the COPYING-README file.
*/ */
namespace OC\Files\Storage;
abstract class StreamWrapper extends \OC\Files\Storage\Common{
private $ready = false;
protected function init(){
if($this->ready){
return;
}
$this->ready = true;
//create the root folder if necesary
if(!$this->is_dir('')) {
$this->mkdir('');
}
}
abstract class OC_FileStorage_StreamWrapper extends OC_Filestorage_Common{
abstract public function constructUrl($path); abstract public function constructUrl($path);
public function mkdir($path) { public function mkdir($path) {
$this->init();
return mkdir($this->constructUrl($path)); return mkdir($this->constructUrl($path));
} }
public function rmdir($path) { public function rmdir($path) {
if ($this->file_exists($path)) { $this->init();
if($this->file_exists($path)) {
$succes = rmdir($this->constructUrl($path)); $succes = rmdir($this->constructUrl($path));
clearstatcache(); clearstatcache();
return $succes; return $succes;
@ -25,10 +42,12 @@ abstract class OC_FileStorage_StreamWrapper extends OC_Filestorage_Common{
} }
public function opendir($path) { public function opendir($path) {
$this->init();
return opendir($this->constructUrl($path)); return opendir($this->constructUrl($path));
} }
public function filetype($path) { public function filetype($path) {
$this->init();
return filetype($this->constructUrl($path)); return filetype($this->constructUrl($path));
} }
@ -41,46 +60,54 @@ abstract class OC_FileStorage_StreamWrapper extends OC_Filestorage_Common{
} }
public function file_exists($path) { public function file_exists($path) {
$this->init();
return file_exists($this->constructUrl($path)); return file_exists($this->constructUrl($path));
} }
public function unlink($path) { public function unlink($path) {
$this->init();
$succes = unlink($this->constructUrl($path)); $succes = unlink($this->constructUrl($path));
clearstatcache(); clearstatcache();
return $succes; return $succes;
} }
public function fopen($path, $mode) { public function fopen($path,$mode) {
return fopen($this->constructUrl($path), $mode); $this->init();
return fopen($this->constructUrl($path),$mode);
} }
public function free_space($path) { public function free_space($path) {
return 0; return 0;
} }
public function touch($path, $mtime = null) { public function touch($path,$mtime=null) {
if (is_null($mtime)) { $this->init();
$fh = $this->fopen($path, 'a'); if(is_null($mtime)) {
fwrite($fh, ''); $fh = $this->fopen($path,'a');
fwrite($fh,'');
fclose($fh); fclose($fh);
} else { } else {
return false;//not supported return false;//not supported
} }
} }
public function getFile($path, $target) { public function getFile($path,$target) {
return copy($this->constructUrl($path), $target); $this->init();
return copy($this->constructUrl($path),$target);
} }
public function uploadFile($path, $target) { public function uploadFile($path,$target) {
return copy($path, $this->constructUrl($target)); $this->init();
return copy($path,$this->constructUrl($target));
} }
public function rename($path1, $path2) { public function rename($path1,$path2) {
return rename($this->constructUrl($path1), $this->constructUrl($path2)); $this->init();
return rename($this->constructUrl($path1),$this->constructUrl($path2));
} }
public function stat($path) { public function stat($path) {
$this->init();
return stat($this->constructUrl($path)); return stat($this->constructUrl($path));
} }

View File

@ -6,24 +6,28 @@
* See the COPYING-README file. * See the COPYING-README file.
*/ */
namespace OC\Files\Storage;
require_once 'php-cloudfiles/cloudfiles.php'; require_once 'php-cloudfiles/cloudfiles.php';
class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ class SWIFT extends \OC\Files\Storage\Common{
private $id;
private $host; private $host;
private $root; private $root;
private $user; private $user;
private $token; private $token;
private $secure; private $secure;
private $ready = false;
/** /**
* @var CF_Authentication auth * @var \CF_Authentication auth
*/ */
private $auth; private $auth;
/** /**
* @var CF_Connection conn * @var \CF_Connection conn
*/ */
private $conn; private $conn;
/** /**
* @var CF_Container rootContainer * @var \CF_Container rootContainer
*/ */
private $rootContainer; private $rootContainer;
@ -35,18 +39,18 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
/** /**
* translate directory path to container name * translate directory path to container name
* @param string path * @param string $path
* @return string * @return string
*/ */
private function getContainerName($path) { private function getContainerName($path) {
$path=trim(trim($this->root, '/')."/".$path, '/.'); $path=trim(trim($this->root, '/') . "/".$path, '/.');
return str_replace('/', '\\', $path); return str_replace('/', '\\', $path);
} }
/** /**
* get container by path * get container by path
* @param string path * @param string $path
* @return CF_Container * @return \CF_Container
*/ */
private function getContainer($path) { private function getContainer($path) {
if ($path=='' or $path=='/') { if ($path=='' or $path=='/') {
@ -59,15 +63,15 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
$container=$this->conn->get_container($this->getContainerName($path)); $container=$this->conn->get_container($this->getContainerName($path));
$this->containers[$path]=$container; $this->containers[$path]=$container;
return $container; return $container;
} catch(NoSuchContainerException $e) { } catch(\NoSuchContainerException $e) {
return null; return null;
} }
} }
/** /**
* create container * create container
* @param string path * @param string $path
* @return CF_Container * @return \CF_Container
*/ */
private function createContainer($path) { private function createContainer($path) {
if ($path=='' or $path=='/' or $path=='.') { if ($path=='' or $path=='/' or $path=='.') {
@ -89,8 +93,8 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
/** /**
* get object by path * get object by path
* @param string path * @param string $path
* @return CF_Object * @return \CF_Object
*/ */
private function getObject($path) { private function getObject($path) {
if (isset($this->objects[$path])) { if (isset($this->objects[$path])) {
@ -107,7 +111,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
$obj=$container->get_object(basename($path)); $obj=$container->get_object(basename($path));
$this->objects[$path]=$obj; $this->objects[$path]=$obj;
return $obj; return $obj;
} catch(NoSuchObjectException $e) { } catch(\NoSuchObjectException $e) {
return null; return null;
} }
} }
@ -132,8 +136,8 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
/** /**
* create object * create object
* @param string path * @param string $path
* @return CF_Object * @return \CF_Object
*/ */
private function createObject($path) { private function createObject($path) {
$container=$this->getContainer(dirname($path)); $container=$this->getContainer(dirname($path));
@ -154,7 +158,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
/** /**
* check if container for path exists * check if container for path exists
* @param string path * @param string $path
* @return bool * @return bool
*/ */
private function containerExists($path) { private function containerExists($path) {
@ -163,15 +167,15 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
/** /**
* get the list of emulated sub containers * get the list of emulated sub containers
* @param CF_Container container * @param \CF_Container $container
* @return array * @return array
*/ */
private function getSubContainers($container) { private function getSubContainers($container) {
$tmpFile=OCP\Files::tmpFile(); $tmpFile=\OCP\Files::tmpFile();
$obj=$this->getSubContainerFile($container); $obj=$this->getSubContainerFile($container);
try { try {
$obj->save_to_filename($tmpFile); $obj->save_to_filename($tmpFile);
} catch(Exception $e) { } catch(\Exception $e) {
return array(); return array();
} }
$obj->save_to_filename($tmpFile); $obj->save_to_filename($tmpFile);
@ -185,15 +189,15 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
/** /**
* add an emulated sub container * add an emulated sub container
* @param CF_Container container * @param \CF_Container $container
* @param string name * @param string $name
* @return bool * @return bool
*/ */
private function addSubContainer($container, $name) { private function addSubContainer($container, $name) {
if ( ! $name) { if ( ! $name) {
return false; return false;
} }
$tmpFile=OCP\Files::tmpFile(); $tmpFile=\OCP\Files::tmpFile();
$obj=$this->getSubContainerFile($container); $obj=$this->getSubContainerFile($container);
try { try {
$obj->save_to_filename($tmpFile); $obj->save_to_filename($tmpFile);
@ -201,16 +205,15 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
foreach ($containers as &$sub) { foreach ($containers as &$sub) {
$sub=trim($sub); $sub=trim($sub);
} }
if (array_search($name, $containers)!==false) { if(array_search($name, $containers) !== false) {
unlink($tmpFile); unlink($tmpFile);
return false; return false;
} else { } else {
$fh=fopen($tmpFile, 'a'); $fh=fopen($tmpFile, 'a');
fwrite($fh, $name."\n"); fwrite($fh,$name . "\n");
} }
} catch(Exception $e) { } catch(\Exception $e) {
$containers=array(); file_put_contents($tmpFile, $name . "\n");
file_put_contents($tmpFile, $name."\n");
} }
$obj->load_from_filename($tmpFile); $obj->load_from_filename($tmpFile);
@ -220,20 +223,20 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
/** /**
* remove an emulated sub container * remove an emulated sub container
* @param CF_Container container * @param \CF_Container $container
* @param string name * @param string $name
* @return bool * @return bool
*/ */
private function removeSubContainer($container, $name) { private function removeSubContainer($container, $name) {
if ( ! $name) { if ( ! $name) {
return false; return false;
} }
$tmpFile=OCP\Files::tmpFile(); $tmpFile=\OCP\Files::tmpFile();
$obj=$this->getSubContainerFile($container); $obj=$this->getSubContainerFile($container);
try { try {
$obj->save_to_filename($tmpFile); $obj->save_to_filename($tmpFile);
$containers=file($tmpFile); $containers=file($tmpFile);
} catch (Exception $e) { } catch (\Exception $e) {
return false; return false;
} }
foreach ($containers as &$sub) { foreach ($containers as &$sub) {
@ -255,8 +258,8 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
/** /**
* ensure a subcontainer file exists and return it's object * ensure a subcontainer file exists and return it's object
* @param CF_Container container * @param \CF_Container $container
* @return CF_Object * @return \CF_Object
*/ */
private function getSubContainerFile($container) { private function getSubContainerFile($container) {
try { try {
@ -283,10 +286,19 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
if ( ! $this->root || $this->root[0]!='/') { if ( ! $this->root || $this->root[0]!='/') {
$this->root='/'.$this->root; $this->root='/'.$this->root;
} }
$this->auth = new CF_Authentication($this->user, $this->token, null, $this->host);
}
private function init(){
if($this->ready){
return;
}
$this->ready = true;
$this->auth = new \CF_Authentication($this->user, $this->token, null, $this->host);
$this->auth->authenticate(); $this->auth->authenticate();
$this->conn = new CF_Connection($this->auth); $this->conn = new \CF_Connection($this->auth);
if ( ! $this->containerExists('/')) { if ( ! $this->containerExists('/')) {
$this->rootContainer=$this->createContainer('/'); $this->rootContainer=$this->createContainer('/');
@ -295,8 +307,13 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
} }
public function getId(){
return $this->id;
}
public function mkdir($path) { public function mkdir($path) {
$this->init();
if ($this->containerExists($path)) { if ($this->containerExists($path)) {
return false; return false;
} else { } else {
@ -306,7 +323,8 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
public function rmdir($path) { public function rmdir($path) {
if ( ! $this->containerExists($path)) { $this->init();
if (!$this->containerExists($path)) {
return false; return false;
} else { } else {
$this->emptyContainer($path); $this->emptyContainer($path);
@ -343,6 +361,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
public function opendir($path) { public function opendir($path) {
$this->init();
$container=$this->getContainer($path); $container=$this->getContainer($path);
$files=$this->getObjects($container); $files=$this->getObjects($container);
$i=array_search(self::SUBCONTAINER_FILE, $files); $i=array_search(self::SUBCONTAINER_FILE, $files);
@ -352,11 +371,12 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
$subContainers=$this->getSubContainers($container); $subContainers=$this->getSubContainers($container);
$files=array_merge($files, $subContainers); $files=array_merge($files, $subContainers);
$id=$this->getContainerName($path); $id=$this->getContainerName($path);
OC_FakeDirStream::$dirs[$id]=$files; \OC\Files\Stream\Dir::register($id, $files);
return opendir('fakedir://'.$id); return opendir('fakedir://'.$id);
} }
public function filetype($path) { public function filetype($path) {
$this->init();
if ($this->containerExists($path)) { if ($this->containerExists($path)) {
return 'dir'; return 'dir';
} else { } else {
@ -373,6 +393,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
public function file_exists($path) { public function file_exists($path) {
$this->init();
if ($this->is_dir($path)) { if ($this->is_dir($path)) {
return true; return true;
} else { } else {
@ -381,6 +402,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
public function file_get_contents($path) { public function file_get_contents($path) {
$this->init();
$obj=$this->getObject($path); $obj=$this->getObject($path);
if (is_null($obj)) { if (is_null($obj)) {
return false; return false;
@ -389,6 +411,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
public function file_put_contents($path, $content) { public function file_put_contents($path, $content) {
$this->init();
$obj=$this->getObject($path); $obj=$this->getObject($path);
if (is_null($obj)) { if (is_null($obj)) {
$container=$this->getContainer(dirname($path)); $container=$this->getContainer(dirname($path));
@ -402,6 +425,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
public function unlink($path) { public function unlink($path) {
$this->init();
if ($this->containerExists($path)) { if ($this->containerExists($path)) {
return $this->rmdir($path); return $this->rmdir($path);
} }
@ -415,6 +439,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
public function fopen($path, $mode) { public function fopen($path, $mode) {
$this->init();
switch($mode) { switch($mode) {
case 'r': case 'r':
case 'rb': case 'rb':
@ -440,7 +465,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
case 'c': case 'c':
case 'c+': case 'c+':
$tmpFile=$this->getTmpFile($path); $tmpFile=$this->getTmpFile($path);
OC_CloseStreamWrapper::$callBacks[$tmpFile]=array($this, 'writeBack'); \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack'));
self::$tempFiles[$tmpFile]=$path; self::$tempFiles[$tmpFile]=$path;
return fopen('close://'.$tmpFile, $mode); return fopen('close://'.$tmpFile, $mode);
} }
@ -458,6 +483,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
public function touch($path, $mtime=null) { public function touch($path, $mtime=null) {
$this->init();
$obj=$this->getObject($path); $obj=$this->getObject($path);
if (is_null($obj)) { if (is_null($obj)) {
return false; return false;
@ -472,6 +498,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
public function rename($path1, $path2) { public function rename($path1, $path2) {
$this->init();
$sourceContainer=$this->getContainer(dirname($path1)); $sourceContainer=$this->getContainer(dirname($path1));
$targetContainer=$this->getContainer(dirname($path2)); $targetContainer=$this->getContainer(dirname($path2));
$result=$sourceContainer->move_object_to(basename($path1), $targetContainer, basename($path2)); $result=$sourceContainer->move_object_to(basename($path1), $targetContainer, basename($path2));
@ -484,6 +511,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
public function copy($path1, $path2) { public function copy($path1, $path2) {
$this->init();
$sourceContainer=$this->getContainer(dirname($path1)); $sourceContainer=$this->getContainer(dirname($path1));
$targetContainer=$this->getContainer(dirname($path2)); $targetContainer=$this->getContainer(dirname($path2));
$result=$sourceContainer->copy_object_to(basename($path1), $targetContainer, basename($path2)); $result=$sourceContainer->copy_object_to(basename($path1), $targetContainer, basename($path2));
@ -495,6 +523,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
public function stat($path) { public function stat($path) {
$this->init();
$container=$this->getContainer($path); $container=$this->getContainer($path);
if ( ! is_null($container)) { if ( ! is_null($container)) {
return array( return array(
@ -523,17 +552,19 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
} }
private function getTmpFile($path) { private function getTmpFile($path) {
$this->init();
$obj=$this->getObject($path); $obj=$this->getObject($path);
if ( ! is_null($obj)) { if ( ! is_null($obj)) {
$tmpFile=OCP\Files::tmpFile(); $tmpFile=\OCP\Files::tmpFile();
$obj->save_to_filename($tmpFile); $obj->save_to_filename($tmpFile);
return $tmpFile; return $tmpFile;
} else { } else {
return OCP\Files::tmpFile(); return \OCP\Files::tmpFile();
} }
} }
private function fromTmpFile($tmpFile, $path) { private function fromTmpFile($tmpFile, $path) {
$this->init();
$obj=$this->getObject($path); $obj=$this->getObject($path);
if (is_null($obj)) { if (is_null($obj)) {
$obj=$this->createObject($path); $obj=$this->createObject($path);
@ -544,7 +575,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
/** /**
* remove custom mtime metadata * remove custom mtime metadata
* @param CF_Object obj * @param \CF_Object $obj
*/ */
private function resetMTime($obj) { private function resetMTime($obj) {
if (isset($obj->metadata['Mtime'])) { if (isset($obj->metadata['Mtime'])) {

View File

@ -6,14 +6,17 @@
* See the COPYING-README file. * See the COPYING-README file.
*/ */
class OC_FileStorage_DAV extends OC_Filestorage_Common{ namespace OC\Files\Storage;
class DAV extends \OC\Files\Storage\Common{
private $password; private $password;
private $user; private $user;
private $host; private $host;
private $secure; private $secure;
private $root; private $root;
private $ready;
/** /**
* @var Sabre_DAV_Client * @var \Sabre_DAV_Client
*/ */
private $client; private $client;
@ -43,6 +46,13 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
if (substr($this->root, -1, 1)!='/') { if (substr($this->root, -1, 1)!='/') {
$this->root.='/'; $this->root.='/';
} }
}
private function init(){
if($this->ready){
return;
}
$this->ready = true;
$settings = array( $settings = array(
'baseUri' => $this->createBaseUri(), 'baseUri' => $this->createBaseUri(),
@ -50,7 +60,7 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
'password' => $this->password, 'password' => $this->password,
); );
$this->client = new Sabre_DAV_Client($settings); $this->client = new \Sabre_DAV_Client($settings);
$caview = \OCP\Files::getStorage('files_external'); $caview = \OCP\Files::getStorage('files_external');
if ($caview) { if ($caview) {
@ -63,6 +73,10 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
$this->mkdir(''); $this->mkdir('');
} }
public function getId(){
return 'webdav::' . $this->user . '@' . $this->host . '/' . $this->root;
}
private function createBaseUri() { private function createBaseUri() {
$baseUri='http'; $baseUri='http';
if ($this->secure) { if ($this->secure) {
@ -73,40 +87,45 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
} }
public function mkdir($path) { public function mkdir($path) {
$this->init();
$path=$this->cleanPath($path); $path=$this->cleanPath($path);
return $this->simpleResponse('MKCOL', $path, null, 201); return $this->simpleResponse('MKCOL', $path, null, 201);
} }
public function rmdir($path) { public function rmdir($path) {
$this->init();
$path=$this->cleanPath($path); $path=$this->cleanPath($path);
return $this->simpleResponse('DELETE', $path, null, 204); return $this->simpleResponse('DELETE', $path, null, 204);
} }
public function opendir($path) { public function opendir($path) {
$this->init();
$path=$this->cleanPath($path); $path=$this->cleanPath($path);
try { try {
$response=$this->client->propfind($path, array(), 1); $response=$this->client->propfind($path, array(), 1);
$id=md5('webdav'.$this->root.$path); $id=md5('webdav'.$this->root.$path);
OC_FakeDirStream::$dirs[$id]=array(); $content = array();
$files=array_keys($response); $files=array_keys($response);
array_shift($files);//the first entry is the current directory array_shift($files);//the first entry is the current directory
foreach ($files as $file) { foreach ($files as $file) {
$file = urldecode(basename($file)); $file = urldecode(basename($file));
OC_FakeDirStream::$dirs[$id][]=$file; $content[]=$file;
} }
\OC\Files\Stream\Dir::register($id, $content);
return opendir('fakedir://'.$id); return opendir('fakedir://'.$id);
} catch(Exception $e) { } catch(\Exception $e) {
return false; return false;
} }
} }
public function filetype($path) { public function filetype($path) {
$this->init();
$path=$this->cleanPath($path); $path=$this->cleanPath($path);
try { try {
$response=$this->client->propfind($path, array('{DAV:}resourcetype')); $response=$this->client->propfind($path, array('{DAV:}resourcetype'));
$responseType=$response["{DAV:}resourcetype"]->resourceType; $responseType=$response["{DAV:}resourcetype"]->resourceType;
return (count($responseType)>0 and $responseType[0]=="{DAV:}collection")?'dir':'file'; return (count($responseType)>0 and $responseType[0]=="{DAV:}collection")?'dir':'file';
} catch(Exception $e) { } catch(\Exception $e) {
error_log($e->getMessage()); error_log($e->getMessage());
\OCP\Util::writeLog("webdav client", \OCP\Util::sanitizeHTML($e->getMessage()), \OCP\Util::ERROR); \OCP\Util::writeLog("webdav client", \OCP\Util::sanitizeHTML($e->getMessage()), \OCP\Util::ERROR);
return false; return false;
@ -122,20 +141,23 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
} }
public function file_exists($path) { public function file_exists($path) {
$this->init();
$path=$this->cleanPath($path); $path=$this->cleanPath($path);
try { try {
$this->client->propfind($path, array('{DAV:}resourcetype')); $this->client->propfind($path, array('{DAV:}resourcetype'));
return true;//no 404 exception return true;//no 404 exception
} catch(Exception $e) { } catch(\Exception $e) {
return false; return false;
} }
} }
public function unlink($path) { public function unlink($path) {
return $this->simpleResponse('DELETE', $path, null, 204); $this->init();
return $this->simpleResponse('DELETE', $path, null ,204);
} }
public function fopen($path, $mode) { public function fopen($path,$mode) {
$this->init();
$path=$this->cleanPath($path); $path=$this->cleanPath($path);
switch($mode) { switch($mode) {
case 'r': case 'r':
@ -172,9 +194,9 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
} else { } else {
$ext=''; $ext='';
} }
$tmpFile=OCP\Files::tmpFile($ext); $tmpFile = \OCP\Files::tmpFile($ext);
OC_CloseStreamWrapper::$callBacks[$tmpFile]=array($this, 'writeBack'); \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack'));
if ($this->file_exists($path)) { if($this->file_exists($path)) {
$this->getFile($path, $tmpFile); $this->getFile($path, $tmpFile);
} }
self::$tempFiles[$tmpFile]=$path; self::$tempFiles[$tmpFile]=$path;
@ -190,6 +212,7 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
} }
public function free_space($path) { public function free_space($path) {
$this->init();
$path=$this->cleanPath($path); $path=$this->cleanPath($path);
try { try {
$response=$this->client->propfind($path, array('{DAV:}quota-available-bytes')); $response=$this->client->propfind($path, array('{DAV:}quota-available-bytes'));
@ -198,12 +221,13 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
} else { } else {
return 0; return 0;
} }
} catch(Exception $e) { } catch(\Exception $e) {
return 0; return 0;
} }
} }
public function touch($path, $mtime=null) { public function touch($path, $mtime=null) {
$this->init();
if (is_null($mtime)) { if (is_null($mtime)) {
$mtime=time(); $mtime=time();
} }
@ -211,12 +235,14 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
$this->client->proppatch($path, array('{DAV:}lastmodified' => $mtime)); $this->client->proppatch($path, array('{DAV:}lastmodified' => $mtime));
} }
public function getFile($path, $target) { public function getFile($path,$target) {
$source=$this->fopen($path, 'r'); $this->init();
file_put_contents($target, $source); $source=$this->fopen($path,'r');
file_put_contents($target,$source);
} }
public function uploadFile($path, $target) { public function uploadFile($path,$target) {
$this->init();
$source=fopen($path, 'r'); $source=fopen($path, 'r');
$curl = curl_init(); $curl = curl_init();
@ -230,47 +256,46 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
curl_close ($curl); curl_close ($curl);
} }
public function rename($path1, $path2) { public function rename($path1,$path2) {
$this->init();
$path1=$this->cleanPath($path1); $path1=$this->cleanPath($path1);
$path2=$this->root.$this->cleanPath($path2); $path2=$this->root.$this->cleanPath($path2);
try { try {
$this->client->request('MOVE', $path1, null, array('Destination'=>$path2)); $this->client->request('MOVE', $path1, null, array('Destination'=>$path2));
return true; return true;
} catch(Exception $e) { } catch(\Exception $e) {
echo $e;
echo 'fail';
return false; return false;
} }
} }
public function copy($path1, $path2) { public function copy($path1,$path2) {
$this->init();
$path1=$this->cleanPath($path1); $path1=$this->cleanPath($path1);
$path2=$this->root.$this->cleanPath($path2); $path2=$this->root.$this->cleanPath($path2);
try { try {
$this->client->request('COPY', $path1, null, array('Destination'=>$path2)); $this->client->request('COPY', $path1, null, array('Destination'=>$path2));
return true; return true;
} catch(Exception $e) { } catch(\Exception $e) {
echo $e;
echo 'fail';
return false; return false;
} }
} }
public function stat($path) { public function stat($path) {
$this->init();
$path=$this->cleanPath($path); $path=$this->cleanPath($path);
try { try {
$response=$this->client->propfind($path, array('{DAV:}getlastmodified', '{DAV:}getcontentlength')); $response=$this->client->propfind($path, array('{DAV:}getlastmodified', '{DAV:}getcontentlength'));
return array( return array(
'mtime'=>strtotime($response['{DAV:}getlastmodified']), 'mtime'=>strtotime($response['{DAV:}getlastmodified']),
'size'=>(int)isset($response['{DAV:}getcontentlength']) ? $response['{DAV:}getcontentlength'] : 0, 'size'=>(int)isset($response['{DAV:}getcontentlength']) ? $response['{DAV:}getcontentlength'] : 0,
'ctime'=>-1,
); );
} catch(Exception $e) { } catch(\Exception $e) {
return array(); return array();
} }
} }
public function getMimeType($path) { public function getMimeType($path) {
$this->init();
$path=$this->cleanPath($path); $path=$this->cleanPath($path);
try { try {
$response=$this->client->propfind($path, array('{DAV:}getcontenttype', '{DAV:}resourcetype')); $response=$this->client->propfind($path, array('{DAV:}getcontenttype', '{DAV:}resourcetype'));
@ -283,7 +308,7 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
} else { } else {
return false; return false;
} }
} catch(Exception $e) { } catch(\Exception $e) {
return false; return false;
} }
} }
@ -296,12 +321,12 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
} }
} }
private function simpleResponse($method, $path, $body, $expected) { private function simpleResponse($method,$path,$body,$expected) {
$path=$this->cleanPath($path); $path=$this->cleanPath($path);
try { try {
$response=$this->client->request($method, $path, $body); $response=$this->client->request($method, $path, $body);
return $response['statusCode']==$expected; return $response['statusCode']==$expected;
} catch(Exception $e) { } catch(\Exception $e) {
return false; return false;
} }
} }

View File

@ -24,7 +24,7 @@ OCP\Util::addScript('files_external', 'settings');
OCP\Util::addStyle('files_external', 'settings'); OCP\Util::addStyle('files_external', 'settings');
$backends = OC_Mount_Config::getBackends(); $backends = OC_Mount_Config::getBackends();
// Remove local storage // Remove local storage
unset($backends['OC_Filestorage_Local']); unset($backends['\OC\Files\Storage\Local']);
$tmpl = new OCP\Template('files_external', 'settings'); $tmpl = new OCP\Template('files_external', 'settings');
$tmpl->assign('isAdminPage', false, false); $tmpl->assign('isAdminPage', false, false);
$tmpl->assign('mounts', OC_Mount_Config::getPersonalMountPoints()); $tmpl->assign('mounts', OC_Mount_Config::getPersonalMountPoints());

View File

@ -20,7 +20,9 @@
* License along with this library. If not, see <http://www.gnu.org/licenses/>. * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/ */
class Test_Filestorage_AmazonS3 extends Test_FileStorage { namespace Test\Files\Storage;
class AmazonS3 extends Storage {
private $config; private $config;
private $id; private $id;
@ -32,12 +34,12 @@ class Test_Filestorage_AmazonS3 extends Test_FileStorage {
$this->markTestSkipped('AmazonS3 backend not configured'); $this->markTestSkipped('AmazonS3 backend not configured');
} }
$this->config['amazons3']['bucket'] = $id; // Make sure we have a new empty bucket to work in $this->config['amazons3']['bucket'] = $id; // Make sure we have a new empty bucket to work in
$this->instance = new OC_Filestorage_AmazonS3($this->config['amazons3']); $this->instance = new \OC\Files\Storage\AmazonS3($this->config['amazons3']);
} }
public function tearDown() { public function tearDown() {
if ($this->instance) { if ($this->instance) {
$s3 = new AmazonS3(array('key' => $this->config['amazons3']['key'], $s3 = new \AmazonS3(array('key' => $this->config['amazons3']['key'],
'secret' => $this->config['amazons3']['secret'])); 'secret' => $this->config['amazons3']['secret']));
if ($s3->delete_all_objects($this->id)) { if ($s3->delete_all_objects($this->id)) {
$s3->delete_bucket($this->id); $s3->delete_bucket($this->id);

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