diff options
886 files changed, 35460 insertions, 18133 deletions
diff --git a/apps/files/ajax/delete.php b/apps/files/ajax/delete.php index 575b8c8d9ea..da7e9d6b2aa 100644 --- a/apps/files/ajax/delete.php +++ b/apps/files/ajax/delete.php @@ -12,10 +12,12 @@ $files = isset($_POST["file"]) ? stripslashes($_POST["file"]) : stripslashes($_P $files = json_decode($files); $filesWithError = ''; + $success = true; + //Now delete foreach ($files as $file) { - if (!OC_Files::delete($dir, $file)) { + if (($dir === '' && $file === 'Shared') || !\OC\Files\Filesystem::unlink($dir . '/' . $file)) { $filesWithError .= $file . "\n"; $success = false; } diff --git a/apps/files/ajax/list.php b/apps/files/ajax/list.php index cade7e872b3..878e4cb2159 100644 --- a/apps/files/ajax/list.php +++ b/apps/files/ajax/list.php @@ -32,7 +32,7 @@ if($doBreadcrumb) { // make filelist $files = array(); -foreach( OC_Files::getdirectorycontent( $dir ) as $i ) { +foreach( \OC\Files\Filesystem::getDirectoryContent( $dir ) as $i ) { $i["date"] = OCP\Util::formatDate($i["mtime"] ); $files[] = $i; } diff --git a/apps/files/ajax/move.php b/apps/files/ajax/move.php index 74374c57b8b..78ed218c136 100644 --- a/apps/files/ajax/move.php +++ b/apps/files/ajax/move.php @@ -11,15 +11,19 @@ $dir = stripslashes($_POST["dir"]); $file = stripslashes($_POST["file"]); $target = stripslashes(rawurldecode($_POST["target"])); -$l=OC_L10N::get('files'); - -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)) ))); +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" ))); exit; } -if(OC_Files::move($dir, $file, $target, $file)) { - OCP\JSON::success(array("data" => array( "dir" => $dir, "files" => $file ))); -} else { - OCP\JSON::error(array("data" => array( "message" => $l->t("Could not move %s", array($file)) ))); +if ($dir != '' || $file != 'Shared') { + $targetFile = \OC\Files\Filesystem::normalizePath($target . '/' . $file); + $sourceFile = \OC\Files\Filesystem::normalizePath($dir . '/' . $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" ))); } diff --git a/apps/files/ajax/newfile.php b/apps/files/ajax/newfile.php index 2bac9bb20ba..38714f34a63 100644 --- a/apps/files/ajax/newfile.php +++ b/apps/files/ajax/newfile.php @@ -63,13 +63,12 @@ if($source) { $ctx = stream_context_create(null, array('notification' =>'progress')); $sourceStream=fopen($source, 'rb', false, $ctx); $target=$dir.'/'.$filename; - $result=OC_Filesystem::file_put_contents($target, $sourceStream); + $result=\OC\Files\Filesystem::file_put_contents($target, $sourceStream); if($result) { - $target = OC_Filesystem::normalizePath($target); - $meta = OC_FileCache::get($target); + $meta = \OC\Files\Filesystem::getFileInfo($target); $mime=$meta['mimetype']; - $id = OC_FileCache::getId($target); - $eventSource->send('success', array('mime'=>$mime, 'size'=>OC_Filesystem::filesize($target), 'id' => $id)); + $id = $meta['fileid']; + $eventSource->send('success', array('mime'=>$mime, 'size'=>\OC\Files\Filesystem::filesize($target), 'id' => $id)); } else { $eventSource->send('error', "Error while downloading ".$source. ' to '.$target); } @@ -77,15 +76,15 @@ if($source) { exit(); } else { if($content) { - if(OC_Filesystem::file_put_contents($dir.'/'.$filename, $content)) { - $meta = OC_FileCache::get($dir.'/'.$filename); - $id = OC_FileCache::getId($dir.'/'.$filename); + if(\OC\Files\Filesystem::file_put_contents($dir.'/'.$filename, $content)) { + $meta = \OC\Files\Filesystem::getFileInfo($dir.'/'.$filename); + $id = $meta['fileid']; OCP\JSON::success(array("data" => array('content'=>$content, 'id' => $id))); exit(); } - }elseif(OC_Files::newFile($dir, $filename, 'file')) { - $meta = OC_FileCache::get($dir.'/'.$filename); - $id = OC_FileCache::getId($dir.'/'.$filename); + }elseif(\OC\Files\Filesystem::touch($dir . '/' . $filename)) { + $meta = \OC\Files\Filesystem::getFileInfo($dir.'/'.$filename); + $id = $meta['fileid']; OCP\JSON::success(array("data" => array('content'=>$content, 'id' => $id))); exit(); } diff --git a/apps/files/ajax/newfolder.php b/apps/files/ajax/newfolder.php index 0f1f2f14eb0..e26e1238bc6 100644 --- a/apps/files/ajax/newfolder.php +++ b/apps/files/ajax/newfolder.php @@ -19,13 +19,14 @@ if(strpos($foldername, '/')!==false) { exit(); } -if(OC_Files::newFile($dir, stripslashes($foldername), 'dir')) { +if(\OC\Files\Filesystem::mkdir($dir . '/' . stripslashes($foldername))) { if ( $dir != '/') { $path = $dir.'/'.$foldername; } else { $path = '/'.$foldername; } - $id = OC_FileCache::getId($path); + $meta = \OC\Files\Filesystem::getFileInfo($path); + $id = $meta['fileid']; OCP\JSON::success(array("data" => array('id'=>$id))); exit(); } diff --git a/apps/files/ajax/rawlist.php b/apps/files/ajax/rawlist.php index e0aa0bdac52..1cd2944483c 100644 --- a/apps/files/ajax/rawlist.php +++ b/apps/files/ajax/rawlist.php @@ -15,7 +15,7 @@ $mimetype = isset($_GET['mimetype']) ? $_GET['mimetype'] : ''; // make filelist $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['mimetype_icon'] = $i['type'] == 'dir' ? \mimetype_icon('dir'): \mimetype_icon($i['mimetype']); $files[] = $i; diff --git a/apps/files/ajax/rename.php b/apps/files/ajax/rename.php index 89b4d4bba73..970aaa638da 100644 --- a/apps/files/ajax/rename.php +++ b/apps/files/ajax/rename.php @@ -11,10 +11,14 @@ $dir = stripslashes($_GET["dir"]); $file = stripslashes($_GET["file"]); $newname = stripslashes($_GET["newname"]); -// Delete -if( $newname !== '.' and OC_Files::move( $dir, $file, $dir, $newname )) { - OCP\JSON::success(array("data" => array( "dir" => $dir, "file" => $file, "newname" => $newname ))); -} else { - $l=OC_L10N::get('files'); - OCP\JSON::error(array("data" => array( "message" => $l->t("Unable to rename file") ))); +if ( $newname !== '.' and ($dir != '' || $file != 'Shared') and $newname !== '.') { + $targetFile = \OC\Files\Filesystem::normalizePath($dir . '/' . $newname); + $sourceFile = \OC\Files\Filesystem::normalizePath($dir . '/' . $file); + if(\OC\Files\Filesystem::rename($sourceFile, $targetFile)) { + OCP\JSON::success(array("data" => array( "dir" => $dir, "file" => $file, "newname" => $newname ))); + } else { + OCP\JSON::error(array("data" => array( "message" => "Unable to rename file" ))); + } +}else{ + OCP\JSON::error(array("data" => array( "message" => "Unable to rename file" ))); } diff --git a/apps/files/ajax/scan.php b/apps/files/ajax/scan.php index a819578e309..391b98608bd 100644 --- a/apps/files/ajax/scan.php +++ b/apps/files/ajax/scan.php @@ -1,44 +1,71 @@ <?php +set_time_limit(0); //scanning can take ages +session_write_close(); -set_time_limit(0);//scanning can take ages +$force = (isset($_GET['force']) and ($_GET['force'] === 'true')); +$dir = isset($_GET['dir']) ? $_GET['dir'] : ''; -$force=isset($_GET['force']) and $_GET['force']=='true'; -$dir=isset($_GET['dir'])?$_GET['dir']:''; -$checkOnly=isset($_GET['checkonly']) and $_GET['checkonly']=='true'; +$eventSource = new OC_EventSource(); +ScanListener::$eventSource = $eventSource; +ScanListener::$view = \OC\Files\Filesystem::getView(); -$eventSource=false; -if(!$checkOnly) { - $eventSource=new OC_EventSource(); -} +OC_Hook::connect('\OC\Files\Cache\Scanner', 'scan_folder', 'ScanListener', 'folder'); +OC_Hook::connect('\OC\Files\Cache\Scanner', 'scan_file', 'ScanListener', 'file'); -session_write_close(); +$absolutePath = \OC\Files\Filesystem::getView()->getAbsolutePath($dir); -//create the file cache if necessary -if($force or !OC_FileCache::inCache('')) { - if(!$checkOnly) { - OCP\DB::beginTransaction(); +$mountPoints = \OC\Files\Filesystem::getMountPoints($absolutePath); +$mountPoints[] = \OC\Files\Filesystem::getMountPoint($absolutePath); +$mountPoints = array_reverse($mountPoints); //start with the mount point of $dir - if(OC_Cache::isFast()) { - OC_Cache::clear('fileid/'); //make sure the old fileid's don't mess things up +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; +} + +$eventSource->send('done', ScanListener::$fileCount); +$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); } - if(isset($eventSource)) { - $eventSource->send('success', false); - } else { - exit; + + 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); + } } } -$eventSource->close(); diff --git a/apps/files/ajax/upgrade.php b/apps/files/ajax/upgrade.php new file mode 100644 index 00000000000..7237b02c0b0 --- /dev/null +++ b/apps/files/ajax/upgrade.php @@ -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); + } + } +} diff --git a/apps/files/ajax/upload.php b/apps/files/ajax/upload.php index 415524be629..676612c0e42 100644 --- a/apps/files/ajax/upload.php +++ b/apps/files/ajax/upload.php @@ -10,6 +10,8 @@ OCP\JSON::checkLoggedIn(); OCP\JSON::callCheck(); $l = OC_L10N::get('files'); + +$dir = $_POST['dir']; // get array with current storage stats (e.g. max file size) $storageStats = \OCA\files\lib\Helper::buildFileStorageStatistics($dir); @@ -21,13 +23,13 @@ if (!isset($_FILES['files'])) { foreach ($_FILES['files']['error'] as $error) { if ($error != 0) { $errors = array( - 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_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: ') . 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'), - UPLOAD_ERR_PARTIAL => $l->t('The uploaded file was only partially uploaded'), - UPLOAD_ERR_NO_FILE => $l->t('No file was 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_TMP_DIR => $l->t('Missing a temporary folder'), UPLOAD_ERR_CANT_WRITE => $l->t('Failed to write to disk'), ); @@ -37,15 +39,19 @@ foreach ($_FILES['files']['error'] as $error) { } $files = $_FILES['files']; -$dir = $_POST['dir']; $error = ''; +$maxUploadFilesize = OCP\Util::maxUploadFilesize($dir); +$maxHumanFilesize = OCP\Util::humanFileSize($maxUploadFilesize); + $totalSize = 0; foreach ($files['size'] as $size) { $totalSize += $size; } -if ($totalSize > OC_Filesystem::free_space($dir)) { - OCP\JSON::error(array('data' => array_merge(array('message' => $l->t('Not enough storage available')), $storageStats))); +if ($totalSize > \OC\Files\Filesystem::free_space($dir)) { + OCP\JSON::error(array('data' => array('message' => $l->t('Not enough space available'), + 'uploadMaxFilesize' => $maxUploadFilesize, + 'maxHumanFilesize' => $maxHumanFilesize))); exit(); } @@ -55,19 +61,19 @@ if (strpos($dir, '..') === false) { for ($i = 0; $i < $fileCount; $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 - $target = OC_Filesystem::normalizePath($target); - if (is_uploaded_file($files['tmp_name'][$i]) and OC_Filesystem::fromTmpFile($files['tmp_name'][$i], $target)) { - $meta = OC_FileCache::get($target); - $id = OC_FileCache::getId($target); - + $target = \OC\Files\Filesystem::normalizePath($target); + if (is_uploaded_file($files['tmp_name'][$i]) and \OC\Files\Filesystem::fromTmpFile($files['tmp_name'][$i], $target)) { + $meta = \OC\Files\Filesystem::getFileInfo($target); // updated max file size after upload $storageStats = \OCA\files\lib\Helper::buildFileStorageStatistics($dir); - $result[] = array_merge(array('status' => 'success', - 'mime' => $meta['mimetype'], - 'size' => $meta['size'], - 'id' => $id, - 'name' => basename($target)), $storageStats + $result[] = array('status' => 'success', + 'mime' => $meta['mimetype'], + 'size' => $meta['size'], + 'id' => $meta['fileid'], + 'name' => basename($target), + 'uploadMaxFilesize' => $maxUploadFilesize, + 'maxHumanFilesize' => $maxHumanFilesize ); } } diff --git a/apps/files/appinfo/app.php b/apps/files/appinfo/app.php index 108f02930e2..da17a7f2ccd 100644 --- a/apps/files/appinfo/app.php +++ b/apps/files/appinfo/app.php @@ -1,12 +1,12 @@ <?php -$l=OC_L10N::get('files'); +$l = OC_L10N::get('files'); OCP\App::registerAdmin('files', 'admin'); OCP\App::addNavigationEntry( array( "id" => "files_index", "order" => 0, "href" => OCP\Util::linkTo( "files", "index.php" ), - "icon" => OCP\Util::imagePath( "core", "places/home.svg" ), + "icon" => OCP\Util::imagePath( "core", "places/files.svg" ), "name" => $l->t("Files") )); OC_Search::registerProvider('OC_Search_Provider_File'); diff --git a/apps/files/appinfo/filesync.php b/apps/files/appinfo/filesync.php index cbed56a6de5..47884a4f15e 100644 --- a/apps/files/appinfo/filesync.php +++ b/apps/files/appinfo/filesync.php @@ -43,7 +43,7 @@ if ($type != 'oc_chunked') { die; } -if (!OC_Filesystem::is_file($file)) { +if (!\OC\Files\Filesystem::is_file($file)) { OC_Response::setStatus(OC_Response::STATUS_NOT_FOUND); die; } @@ -51,7 +51,7 @@ if (!OC_Filesystem::is_file($file)) { switch($_SERVER['REQUEST_METHOD']) { case 'PUT': $input = fopen("php://input", "r"); - $org_file = OC_Filesystem::fopen($file, 'rb'); + $org_file = \OC\Files\Filesystem::fopen($file, 'rb'); $info = array( 'name' => basename($file), ); diff --git a/apps/files/appinfo/info.xml b/apps/files/appinfo/info.xml index 0a1b196b06f..7c82c839dab 100644 --- a/apps/files/appinfo/info.xml +++ b/apps/files/appinfo/info.xml @@ -5,7 +5,7 @@ <description>File Management</description> <licence>AGPL</licence> <author>Robin Appelman</author> - <require>4.9</require> + <require>4.91</require> <shipped>true</shipped> <standalone/> <default_enable/> diff --git a/apps/files/appinfo/remote.php b/apps/files/appinfo/remote.php index 6a78a1e0d75..6c92cc80b69 100644 --- a/apps/files/appinfo/remote.php +++ b/apps/files/appinfo/remote.php @@ -32,12 +32,14 @@ OC_Util::obEnd(); // Backends $authBackend = new OC_Connector_Sabre_Auth(); $lockBackend = new OC_Connector_Sabre_Locks(); +$requestBackend = new OC_Connector_Sabre_Request(); // Create ownCloud Dir $publicDir = new OC_Connector_Sabre_Directory(''); // Fire up server $server = new Sabre_DAV_Server($publicDir); +$server->httpRequest = $requestBackend; $server->setBaseUri($baseuri); // Load plugins diff --git a/apps/files/appinfo/version b/apps/files/appinfo/version index 0664a8fd291..2bf1ca5f549 100644 --- a/apps/files/appinfo/version +++ b/apps/files/appinfo/version @@ -1 +1 @@ -1.1.6 +1.1.7 diff --git a/apps/files/css/files.css b/apps/files/css/files.css index 9ff550189db..661a2e827a4 100644 --- a/apps/files/css/files.css +++ b/apps/files/css/files.css @@ -23,7 +23,9 @@ #new>ul>li>p { cursor:pointer; } #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; } #upload a { @@ -109,15 +111,13 @@ table td.filename form { font-size:.85em; margin-left:3em; margin-right:3em; } } #fileList .fileactions a.action img { position:relative; top:.2em; } #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>img { max-height:16px; max-width:16px; vertical-align:text-bottom; } .selectedActions { display:none; float:right; } .selectedActions a { display:inline; margin:-.5em 0; padding:.5em !important; } .selectedActions a img { position:relative; top:.3em; } -/* add breadcrumb divider to the File item in navigation panel */ -#navigation>ul>li:first-child { background:url('%webroot%/core/img/breadcrumb-start.svg') no-repeat 12.5em 0px; width:12.5em; padding-right:1em; position:fixed; } -#navigation>ul>li:first-child+li { padding-top:2.9em; } #scanning-message{ top:40%; left:40%; position:absolute; display:none; } @@ -132,4 +132,12 @@ table.dragshadow td.filename { } table.dragshadow td.size { padding-right:8px; -}
\ No newline at end of file +} +#upgrade { + width: 400px; + position: absolute; + top: 200px; + left: 50%; + text-align: center; + margin-left: -200px; +} diff --git a/apps/files/download.php b/apps/files/download.php index 1b70b1e38f8..e3fe24e45d7 100644 --- a/apps/files/download.php +++ b/apps/files/download.php @@ -26,7 +26,7 @@ OCP\User::checkLoggedIn(); $filename = $_GET["file"]; -if(!OC_Filesystem::file_exists($filename)) { +if(!\OC\Files\Filesystem::file_exists($filename)) { header("HTTP/1.0 404 Not Found"); $tmpl = new OCP\Template( '', '404', 'guest' ); $tmpl->assign('file', $filename); @@ -34,7 +34,7 @@ if(!OC_Filesystem::file_exists($filename)) { exit; } -$ftype=OC_Filesystem::getMimeType( $filename ); +$ftype=\OC\Files\Filesystem::getMimeType( $filename ); header('Content-Type:'.$ftype); if ( preg_match( "/MSIE/", $_SERVER["HTTP_USER_AGENT"] ) ) { @@ -44,7 +44,7 @@ if ( preg_match( "/MSIE/", $_SERVER["HTTP_USER_AGENT"] ) ) { . '; filename="' . rawurlencode( basename($filename) ) . '"' ); } OCP\Response::disableCaching(); -header('Content-Length: '.OC_Filesystem::filesize($filename)); +header('Content-Length: '.\OC\Files\Filesystem::filesize($filename)); OC_Util::obEnd(); -OC_Filesystem::readfile( $filename ); +\OC\Files\Filesystem::readfile( $filename ); diff --git a/apps/files/index.php b/apps/files/index.php index e3197b9e3c0..104cf1a55d3 100644 --- a/apps/files/index.php +++ b/apps/files/index.php @@ -29,22 +29,39 @@ OCP\Util::addStyle('files', 'files'); OCP\Util::addscript('files', 'jquery.iframe-transport'); OCP\Util::addscript('files', 'jquery.fileupload'); OCP\Util::addscript('files', 'jquery-visibility'); -OCP\Util::addscript('files', 'files'); OCP\Util::addscript('files', 'filelist'); -OCP\Util::addscript('files', 'fileactions'); -OCP\Util::addscript('files', 'keyboardshortcuts'); OCP\App::setActiveNavigationEntry('files_index'); // Load the files $dir = isset($_GET['dir']) ? stripslashes($_GET['dir']) : ''; // Redirect if directory does not exist -if (!OC_Filesystem::is_dir($dir . '/')) { - header('Location: ' . $_SERVER['SCRIPT_NAME'] . ''); +if (!\OC\Files\Filesystem::is_dir($dir . '/')) { + header('Location: ' . OCP\Util::getScriptName() . ''); 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(); -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']); if ($i['type'] == 'file') { $fileinfo = pathinfo($i['name']); @@ -55,12 +72,12 @@ foreach (OC_Files::getdirectorycontent($dir) as $i) { $i['extension'] = ''; } } - if ($i['directory'] == '/') { - $i['directory'] = ''; - } + $i['directory'] = $dir; $files[] = $i; } +usort($files, "fileCmp"); + // Make breadcrumb $breadcrumb = array(); $pathtohere = ''; @@ -81,34 +98,43 @@ $breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', ''); $breadcrumbNav->assign('breadcrumb', $breadcrumb, false); $breadcrumbNav->assign('baseURL', OCP\Util::linkTo('files', 'index.php') . '?dir=', false); -$maxUploadFilesize=OCP\Util::maxUploadFilesize($dir); - $permissions = OCP\PERMISSION_READ; -if (OC_Filesystem::isCreatable($dir . '/')) { +if (\OC\Files\Filesystem::isCreatable($dir . '/')) { $permissions |= OCP\PERMISSION_CREATE; } -if (OC_Filesystem::isUpdatable($dir . '/')) { +if (\OC\Files\Filesystem::isUpdatable($dir . '/')) { $permissions |= OCP\PERMISSION_UPDATE; } -if (OC_Filesystem::isDeletable($dir . '/')) { +if (\OC\Files\Filesystem::isDeletable($dir . '/')) { $permissions |= OCP\PERMISSION_DELETE; } -if (OC_Filesystem::isSharable($dir . '/')) { +if (\OC\Files\Filesystem::isSharable($dir . '/')) { $permissions |= OCP\PERMISSION_SHARE; } -// information about storage capacities -$storageInfo=OC_Helper::getStorageInfo(); +if ($needUpgrade) { + 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'); -$tmpl->assign('fileList', $list->fetchPage(), false); -$tmpl->assign('breadcrumb', $breadcrumbNav->fetchPage(), false); -$tmpl->assign('dir', OC_Filesystem::normalizePath($dir)); -$tmpl->assign('isCreatable', OC_Filesystem::isCreatable($dir . '/')); -$tmpl->assign('permissions', $permissions); -$tmpl->assign('files', $files); -$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(); + OCP\Util::addscript('files', 'fileactions'); + OCP\Util::addscript('files', 'files'); + OCP\Util::addscript('files', 'keyboardshortcuts'); + $tmpl = new OCP\Template('files', 'index', 'user'); + $tmpl->assign('fileList', $list->fetchPage(), false); + $tmpl->assign('breadcrumb', $breadcrumbNav->fetchPage(), false); + $tmpl->assign('dir', \OC\Files\Filesystem::normalizePath($dir)); + $tmpl->assign('isCreatable', \OC\Files\Filesystem::isCreatable($dir . '/')); + $tmpl->assign('permissions', $permissions); + $tmpl->assign('files', $files); + $tmpl->assign('trash', \OCP\App::isEnabled('files_trashbin')); + $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(); +}
\ No newline at end of file diff --git a/apps/files/js/fileactions.js b/apps/files/js/fileactions.js index f5ee363a4c8..c30f1bcddd8 100644 --- a/apps/files/js/fileactions.js +++ b/apps/files/js/fileactions.js @@ -147,15 +147,19 @@ $(document).ready(function () { } else { var downloadScope = 'file'; } - FileActions.register(downloadScope, 'Download', OC.PERMISSION_READ, function () { - return OC.imagePath('core', 'actions/download'); - }, function (filename) { - window.location = OC.filePath('files', 'ajax', 'download.php') + '?files=' + encodeURIComponent(filename) + '&dir=' + encodeURIComponent($('#dir').val()); - }); - + + if (typeof disableDownloadActions == 'undefined' || !disableDownloadActions) { + FileActions.register(downloadScope, 'Download', OC.PERMISSION_READ, function () { + 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(){ FileActions.display($(this).children('td.filename')); }); + }); FileActions.register('all', 'Delete', OC.PERMISSION_DELETE, function () { @@ -185,6 +189,7 @@ FileActions.register('all', 'Rename', OC.PERMISSION_UPDATE, function () { FileList.rename(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); }); diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js index 04b7d92e2c3..72b353b48c2 100644 --- a/apps/files/js/filelist.js +++ b/apps/files/js/filelist.js @@ -271,71 +271,45 @@ var FileList={ } }, 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 if (FileList.lastAction) { FileList.lastAction(); } - FileList.prepareDeletion(files); - - if (!FileList.useUndo) { - FileList.lastAction(); - } else { - // NOTE: Temporary fix to change the text to unshared for files in root of Shared folder - if ($('#dir').val() == '/Shared') { - OC.Notification.showHtml(t('files', 'unshared {files}', {'files': escapeHTML(files)})+'<span class="undo">'+t('files', 'undo')+'</span>'); - } else { - OC.Notification.showHtml(t('files', 'deleted {files}', {'files': escapeHTML(files)})+'<span class="undo">'+t('files', 'undo')+'</span>'); - } - } - }, - 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); + var fileNames = JSON.stringify(files); + $.post(OC.filePath('files', 'ajax', 'delete.php'), + {dir:$('#dir').val(),files:fileNames}, + function(result){ + if (result.status == 'success') { + $.each(files,function(index,file){ + var files = $('tr').filterAttr('data-file',file); + files.hide(); + files.find('input[type="checkbox"]').removeAttr('checked'); + files.removeClass('selected'); }); - FileList.deleteCanceled=true; - FileList.deleteFiles=null; - FileList.lastAction = null; - if(ready){ - ready(); - } - }); - } - }); - } - }, - 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); - }; + procesSelection(); + } else { + $.each(files,function(index,file) { + var deleteAction = $('tr').filterAttr('data-file',file).children("td.date").children(".move2trash"); + deleteAction[0].outerHTML = oldHTML; + }); + } + }); } }; $(document).ready(function(){ $('#notification').hide(); - $('#notification .undo').live('click', function(){ + $('#notification').on('click', '.undo', function(){ if (FileList.deleteFiles) { $.each(FileList.deleteFiles,function(index,file){ $('tr').filterAttr('data-file',file).show(); @@ -361,16 +335,16 @@ $(document).ready(function(){ FileList.lastAction = null; OC.Notification.hide(); }); - $('#notification .replace').live('click', function() { + $('#notification').on('click', '.replace', function() { OC.Notification.hide(function() { FileList.replace($('#notification').data('oldName'), $('#notification').data('newName'), $('#notification').data('isNewFile')); }); }); - $('#notification .suggest').live('click', function() { + $('#notification').on('click', '.suggest', function() { $('tr').filterAttr('data-file', $('#notification').data('oldName')).show(); OC.Notification.hide(); }); - $('#notification .cancel').live('click', function() { + $('#notification').on('click', '.cancel', function() { if ($('#notification').data('isNewFile')) { FileList.deleteCanceled = false; FileList.deleteFiles = [$('#notification').data('oldName')]; diff --git a/apps/files/js/files.js b/apps/files/js/files.js index 13367b33628..7c377afc620 100644 --- a/apps/files/js/files.js +++ b/apps/files/js/files.js @@ -110,15 +110,20 @@ $(document).ready(function() { } // Triggers invisible file input - $('#upload a').live('click', function() { + $('#upload a').on('click', function() { $(this).parent().children('#file_upload_start').trigger('click'); return false; }); + + // Show trash bin + $('#trash a').live('click', function() { + window.location=OC.filePath('files_trashbin', '', 'index.php'); + }); var lastChecked; // Sets the file link behaviour : - $('td.filename a').live('click',function(event) { + $('#fileList').on('click','td.filename a',function(event) { if (event.ctrlKey || event.shiftKey) { event.preventDefault(); if (event.shiftKey) { @@ -184,7 +189,7 @@ $(document).ready(function() { procesSelection(); }); - $('td.filename input:checkbox').live('change',function(event) { + $('#fileList').on('change', 'td.filename input:checkbox',function(event) { if (event.shiftKey) { var last = $(lastChecked).parent().parent().prevAll().length; var first = $(this).parent().parent().prevAll().length; @@ -670,12 +675,8 @@ $(document).ready(function() { }); }); - //check if we need to scan the filesystem - $.get(OC.filePath('files','ajax','scan.php'),{checkonly:'true'}, function(response) { - if(response.data.done){ - scanFiles(); - } - }, "json"); + //do a background scan if needed + scanFiles(); var lastWidth = 0; var breadcrumbs = []; @@ -774,27 +775,27 @@ $(document).ready(function() { } }); -function scanFiles(force,dir){ +function scanFiles(force, dir){ + if (!OC.currentUser) { + return; + } + if(!dir){ - dir=''; + dir = ''; } - force=!!force; //cast to bool - scanFiles.scanning=true; - $('#scanning-message').show(); - $('#fileList').remove(); - var scannerEventSource=new OC.EventSource(OC.filePath('files','ajax','scan.php'),{force:force,dir:dir}); - scanFiles.cancel=scannerEventSource.close.bind(scannerEventSource); - scannerEventSource.listen('scanning',function(data){ - $('#scan-count').text(t('files', '{count} files scanned', {count: data.count})); - $('#scan-current').text(data.file+'/'); + force = !!force; //cast to bool + scanFiles.scanning = true; + var scannerEventSource = new OC.EventSource(OC.filePath('files','ajax','scan.php'),{force:force,dir:dir}); + scanFiles.cancel = scannerEventSource.close.bind(scannerEventSource); + scannerEventSource.listen('count',function(count){ + console.log(count + 'files scanned') + }); + scannerEventSource.listen('folder',function(path){ + console.log('now scanning ' + path) }); - scannerEventSource.listen('success',function(success){ + scannerEventSource.listen('done',function(count){ scanFiles.scanning=false; - if(success){ - window.location.reload(); - }else{ - alert(t('files', 'error while scanning')); - } + console.log('done after ' + count + 'files'); }); } scanFiles.scanning=false; diff --git a/apps/files/js/upgrade.js b/apps/files/js/upgrade.js new file mode 100644 index 00000000000..02d57fc9e6c --- /dev/null +++ b/apps/files/js/upgrade.js @@ -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(); + }); +}); diff --git a/apps/files/js/upload.js b/apps/files/js/upload.js new file mode 100644 index 00000000000..9d9f61f600e --- /dev/null +++ b/apps/files/js/upload.js @@ -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'); diff --git a/apps/files/l10n/bn_BD.php b/apps/files/l10n/bn_BD.php index d59463bb7a0..3d676810c7c 100644 --- a/apps/files/l10n/bn_BD.php +++ b/apps/files/l10n/bn_BD.php @@ -1,7 +1,4 @@ <?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" => "কোন ফাইল আপলোড করা হয় নি। সমসà§à¦¯à¦¾ অজà§à¦žà¦¾à¦¤à¥¤", "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 নিরà§à¦¦à§‡à¦¶à¦¿à¦¤ আয়তন অতিকà§à¦°à¦® করছেঃ", @@ -10,6 +7,7 @@ "No file was uploaded" => "কোন ফাইল আপলোড করা হয় নি", "Missing a temporary folder" => "অসà§à¦¥à¦¾à§Ÿà§€ ফোলà§à¦¡à¦¾à¦° খোয়া গিয়েছে", "Failed to write to disk" => "ডিসà§à¦•ে লিখতে বà§à¦¯à¦°à§à¦¥", +"Not enough space available" => "যথেষà§à¦ পরিমাণ সà§à¦¥à¦¾à¦¨ নেই", "Invalid directory." => "à¦à§à¦² ডিরেকà§à¦Ÿà¦°à¦¿", "Files" => "ফাইল", "Unshare" => "à¦à¦¾à¦—াà¦à¦¾à¦—ি বাতিল ", @@ -22,8 +20,6 @@ "replaced {new_name}" => "{new_name} পà§à¦°à¦¤à¦¿à¦¸à§à¦¥à¦¾à¦ªà¦¨ করা হয়েছে", "undo" => "কà§à¦°à¦¿à§Ÿà¦¾ পà§à¦°à¦¤à§à¦¯à¦¾à¦¹à¦¾à¦°", "replaced {new_name} with {old_name}" => "{new_name} কে {old_name} নামে পà§à¦°à¦¤à¦¿à¦¸à§à¦¥à¦¾à¦ªà¦¨ করা হয়েছে", -"unshared {files}" => "{files} à¦à¦¾à¦—াà¦à¦¾à¦—ি বাতিল কর", -"deleted {files}" => "{files} মà§à¦›à§‡ ফেলা হয়েছে", "'.' is an invalid file name." => "টি à¦à¦•টি অননà§à¦®à§‹à¦¦à¦¿à¦¤ নাম।", "File name cannot be empty." => "ফাইলের নামটি ফাà¦à¦•া রাখা যাবে না।", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "নামটি সঠিক নয়, '\\', '/', '<', '>', ':', '\"', '|', '?' à¦à¦¬à¦‚ '*' অনà§à¦®à§‹à¦¦à¦¿à¦¤ নয়।", @@ -37,8 +33,6 @@ "File upload is in progress. Leaving the page now will cancel the upload." => "ফাইল আপলোড চলমান। à¦à¦‡ পৃষà§à¦ া পরিতà§à¦¯à¦¾à¦— করলে আপলোড বাতিল করা হবে।", "URL cannot be empty." => "URL ফাà¦à¦•া রাখা যাবে না।", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "ফোলà§à¦¡à¦¾à¦°à§‡à¦° নামটি সঠিক নয়। 'à¦à¦¾à¦—াà¦à¦¾à¦—ি করা' শà§à¦§à§à¦®à¦¾à¦¤à§à¦° Owncloud à¦à¦° জনà§à¦¯ সংরকà§à¦·à¦¿à¦¤à¥¤", -"{count} files scanned" => "{count} টি ফাইল সà§à¦•à§à¦¯à¦¾à¦¨ করা হয়েছে", -"error while scanning" => "সà§à¦•à§à¦¯à¦¾à¦¨ করার সময় সমসà§à¦¯à¦¾ দেখা দিয়েছে", "Name" => "নাম", "Size" => "আকার", "Modified" => "পরিবরà§à¦¤à¦¿à¦¤", diff --git a/apps/files/l10n/ca.php b/apps/files/l10n/ca.php index ceec0264788..22b684fcfd7 100644 --- a/apps/files/l10n/ca.php +++ b/apps/files/l10n/ca.php @@ -1,7 +1,4 @@ <?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", "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: " => "L’arxiu 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", "Missing a temporary folder" => "S'ha perdut un fitxer temporal", "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.", "Files" => "Fitxers", "Unshare" => "Deixa de compartir", @@ -23,8 +20,7 @@ "replaced {new_name}" => "s'ha substituït {new_name}", "undo" => "desfés", "replaced {new_name} with {old_name}" => "s'ha substituït {old_name} per {new_name}", -"unshared {files}" => "no compartits {files}", -"deleted {files}" => "eliminats {files}", +"perform delete operation" => "executa d'operació d'esborrar", "'.' 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.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "El nóm no és và lid, '\\', '/', '<', '>', ':', '\"', '|', '?' i '*' no estan permesos.", @@ -41,8 +37,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à .", "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", -"{count} files scanned" => "{count} fitxers escannejats", -"error while scanning" => "error durant l'escaneig", "Name" => "Nom", "Size" => "Mida", "Modified" => "Modificat", @@ -63,11 +57,13 @@ "Text file" => "Fitxer de text", "Folder" => "Carpeta", "From link" => "Des d'enllaç", +"Trash" => "Esborra", "Cancel upload" => "Cancel·la la pujada", "Nothing in here. Upload something!" => "Res per aquÃ. Pugeu alguna cosa!", "Download" => "Baixa", "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", "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..." ); diff --git a/apps/files/l10n/cs_CZ.php b/apps/files/l10n/cs_CZ.php index 86b254ca8cb..f0beda9f55c 100644 --- a/apps/files/l10n/cs_CZ.php +++ b/apps/files/l10n/cs_CZ.php @@ -1,7 +1,4 @@ <?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", "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:", @@ -10,7 +7,7 @@ "No file was uploaded" => "Žádný soubor nebyl odeslán", "Missing a temporary folder" => "Chybà adresář pro doÄasné soubory", "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ář", "Files" => "Soubory", "Unshare" => "ZruÅ¡it sdÃlenÃ", @@ -23,8 +20,7 @@ "replaced {new_name}" => "nahrazeno {new_name}", "undo" => "zpÄ›t", "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}", +"perform delete operation" => "provést smazánÃ", "'.' 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.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Neplatný název, znaky '\\', '/', '<', '>', ':', '\"', '|', '?' a '*' nejsou povoleny.", @@ -41,8 +37,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Ã.", "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", -"{count} files scanned" => "prozkoumáno {count} souborů", -"error while scanning" => "chyba pÅ™i prohledávánÃ", "Name" => "Název", "Size" => "Velikost", "Modified" => "ZmÄ›nÄ›no", @@ -63,11 +57,13 @@ "Text file" => "Textový soubor", "Folder" => "Složka", "From link" => "Z odkazu", +"Trash" => "KoÅ¡", "Cancel upload" => "ZruÅ¡it odesÃlánÃ", "Nothing in here. Upload something!" => "Žádný obsah. Nahrajte nÄ›co.", "Download" => "Stáhnout", "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.", "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..." ); diff --git a/apps/files/l10n/da.php b/apps/files/l10n/da.php index 2f9ae8fbb8d..71a5a56de57 100644 --- a/apps/files/l10n/da.php +++ b/apps/files/l10n/da.php @@ -1,7 +1,4 @@ <?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.", "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", @@ -10,7 +7,6 @@ "No file was uploaded" => "Ingen fil blev uploadet", "Missing a temporary folder" => "Mangler en midlertidig mappe", "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.", "Files" => "Filer", "Unshare" => "Fjern deling", @@ -23,8 +19,6 @@ "replaced {new_name}" => "erstattede {new_name}", "undo" => "fortryd", "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.", "File name cannot be empty." => "Filnavnet kan ikke stÃ¥ tomt.", "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.", "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", -"{count} files scanned" => "{count} filer skannet", -"error while scanning" => "fejl under scanning", "Name" => "Navn", "Size" => "Størrelse", "Modified" => "Ændret", diff --git a/apps/files/l10n/de.php b/apps/files/l10n/de.php index db2476865fc..55ea24baa2f 100644 --- a/apps/files/l10n/de.php +++ b/apps/files/l10n/de.php @@ -1,7 +1,4 @@ <?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", "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", @@ -10,8 +7,8 @@ "No file was uploaded" => "Es wurde keine Datei hochgeladen.", "Missing a temporary folder" => "Temporärer Ordner fehlt.", "Failed to write to disk" => "Fehler beim Schreiben auf die Festplatte", -"Not enough storage available" => "Nicht genug Speicherplatz verfügbar", -"Invalid directory." => "Ungültiges Verzeichnis", +"Not enough space available" => "Nicht genug Speicherplatz verfügbar", +"Invalid directory." => "Ungültiges Verzeichnis.", "Files" => "Dateien", "Unshare" => "Nicht mehr freigeben", "Delete" => "Löschen", @@ -23,10 +20,9 @@ "replaced {new_name}" => "{new_name} wurde ersetzt", "undo" => "rückgängig machen", "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", -"File name cannot be empty." => "Der Dateiname darf nicht leer sein", +"perform delete operation" => "Löschvorgang ausführen", +"'.' is an invalid file name." => "'.' ist kein gültiger Dateiname.", +"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.", "Your storage is full, files can not be updated or synced anymore!" => "Ihr Speicherplatz ist voll, Dateien können nicht mehr aktualisiert oder synchronisiert werden!", "Your storage is almost full ({usedSpacePercent}%)" => "Ihr Speicherplatz ist fast aufgebraucht ({usedSpacePercent}%)", @@ -39,10 +35,8 @@ "{count} files uploading" => "{count} Dateien werden hochgeladen", "Upload cancelled." => "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.", -"{count} files scanned" => "{count} Dateien wurden gescannt", -"error while scanning" => "Fehler beim Scannen", "Name" => "Name", "Size" => "Größe", "Modified" => "Bearbeitet", @@ -63,11 +57,13 @@ "Text file" => "Textdatei", "Folder" => "Ordner", "From link" => "Von einem Link", +"Trash" => "Papierkorb", "Cancel upload" => "Upload abbrechen", "Nothing in here. Upload something!" => "Alles leer. Lade etwas hoch!", "Download" => "Herunterladen", "Upload too large" => "Upload zu groß", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Die Datei überschreitet die Maximalgröße für Uploads auf diesem Server.", "Files are being scanned, please wait." => "Dateien werden gescannt, bitte warten.", -"Current scanning" => "Scanne" +"Current scanning" => "Scanne", +"Upgrading filesystem cache..." => "Dateisystem-Cache wird aktualisiert ..." ); diff --git a/apps/files/l10n/de_DE.php b/apps/files/l10n/de_DE.php index 72751a7fb6f..18f3ee38028 100644 --- a/apps/files/l10n/de_DE.php +++ b/apps/files/l10n/de_DE.php @@ -1,7 +1,4 @@ <?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", "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", @@ -10,7 +7,7 @@ "No file was uploaded" => "Es wurde keine Datei hochgeladen.", "Missing a temporary folder" => "Der temporäre Ordner fehlt.", "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.", "Files" => "Dateien", "Unshare" => "Nicht mehr freigeben", @@ -23,8 +20,7 @@ "replaced {new_name}" => "{new_name} wurde ersetzt", "undo" => "rückgängig machen", "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", +"perform delete operation" => "Führe das Löschen aus", "'.' is an invalid file name." => "'.' ist kein gültiger Dateiname.", "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.", @@ -41,8 +37,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.", "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", -"{count} files scanned" => "{count} Dateien wurden gescannt", -"error while scanning" => "Fehler beim Scannen", "Name" => "Name", "Size" => "Größe", "Modified" => "Bearbeitet", @@ -63,11 +57,13 @@ "Text file" => "Textdatei", "Folder" => "Ordner", "From link" => "Von einem Link", +"Trash" => "Abfall", "Cancel upload" => "Upload abbrechen", "Nothing in here. Upload something!" => "Alles leer. Bitte laden Sie etwas hoch!", "Download" => "Herunterladen", "Upload too large" => "Der Upload ist zu groß", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Die Datei überschreitet die Maximalgröße für Uploads auf diesem Server.", "Files are being scanned, please wait." => "Dateien werden gescannt, bitte warten.", -"Current scanning" => "Scanne" +"Current scanning" => "Scanne", +"Upgrading filesystem cache..." => "Aktualisiere den Dateisystem-Cache" ); diff --git a/apps/files/l10n/el.php b/apps/files/l10n/el.php index 196831b985d..7b458bf35dd 100644 --- a/apps/files/l10n/el.php +++ b/apps/files/l10n/el.php @@ -1,7 +1,4 @@ <?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" => "Δεν ανÎβηκε κάποιο αÏχείο. Άγνωστο σφάλμα", "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:", @@ -10,7 +7,7 @@ "No file was uploaded" => "ΚανÎνα αÏχείο δεν στάλθηκε", "Missing a temporary folder" => "Λείπει ο Ï€ÏοσωÏινός φάκελος", "Failed to write to disk" => "Αποτυχία εγγÏαφής στο δίσκο", -"Not enough storage available" => "Μη επαÏκής διαθÎσιμος αποθηκευτικός χώÏος", +"Not enough space available" => "Δεν υπάÏχει αÏκετός διαθÎσιμος χώÏος", "Invalid directory." => "Μη ÎγκυÏος φάκελος.", "Files" => "ΑÏχεία", "Unshare" => "Διακοπή κοινής χÏήσης", @@ -23,8 +20,6 @@ "replaced {new_name}" => "{new_name} αντικαταστάθηκε", "undo" => "αναίÏεση", "replaced {new_name} with {old_name}" => "αντικαταστάθηκε το {new_name} με {old_name}", -"unshared {files}" => "μη διαμοιÏασμÎνα {files}", -"deleted {files}" => "διαγÏαμμÎνα {files}", "'.' is an invalid file name." => "'.' είναι μη ÎγκυÏο όνομα αÏχείου.", "File name cannot be empty." => "Το όνομα αÏχείου δεν Ï€ÏÎπει να είναι κενό.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Μη ÎγκυÏο όνομα, '\\', '/', '<', '>', ':', '\"', '|', '?' και '*' δεν επιτÏÎπονται.", @@ -41,8 +36,6 @@ "File upload is in progress. Leaving the page now will cancel the upload." => "Η αποστολή του αÏχείου βÏίσκεται σε εξÎλιξη. Το κλείσιμο της σελίδας θα ακυÏώσει την αποστολή.", "URL cannot be empty." => "Η URL δεν Ï€ÏÎπει να είναι κενή.", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Μη ÎγκυÏο όνομα φακÎλου. Η χÏήση του 'ΚοινόχÏηστος' χÏησιμοποιείται από ο Owncloud", -"{count} files scanned" => "{count} αÏχεία ανιχνεÏτηκαν", -"error while scanning" => "σφάλμα κατά την ανίχνευση", "Name" => "Όνομα", "Size" => "ΜÎγεθος", "Modified" => "ΤÏοποποιήθηκε", diff --git a/apps/files/l10n/eo.php b/apps/files/l10n/eo.php index fc4367c55a3..a510d47ad6c 100644 --- a/apps/files/l10n/eo.php +++ b/apps/files/l10n/eo.php @@ -1,7 +1,4 @@ <?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.", "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: ", @@ -10,6 +7,7 @@ "No file was uploaded" => "Neniu dosiero estas alÅutita", "Missing a temporary folder" => "Mankas tempa dosierujo", "Failed to write to disk" => "Malsukcesis skribo al disko", +"Not enough space available" => "Ne haveblas sufiĉa spaco", "Invalid directory." => "Nevalida dosierujo.", "Files" => "Dosieroj", "Unshare" => "Malkunhavigi", @@ -22,8 +20,6 @@ "replaced {new_name}" => "anstataÅiÄis {new_name}", "undo" => "malfari", "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.", "File name cannot be empty." => "Dosiernomo devas ne malpleni.", "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.", "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.", -"{count} files scanned" => "{count} dosieroj skaniÄis", -"error while scanning" => "eraro dum skano", "Name" => "Nomo", "Size" => "Grando", "Modified" => "Modifita", diff --git a/apps/files/l10n/es.php b/apps/files/l10n/es.php index 1620208559f..bc5046767c6 100644 --- a/apps/files/l10n/es.php +++ b/apps/files/l10n/es.php @@ -1,7 +1,4 @@ <?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", "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", @@ -10,6 +7,7 @@ "No file was uploaded" => "No se ha subido ningún archivo", "Missing a temporary folder" => "Falta un directorio temporal", "Failed to write to disk" => "La escritura en disco ha fallado", +"Not enough space available" => "No hay suficiente espacio disponible", "Invalid directory." => "Directorio invalido.", "Files" => "Archivos", "Unshare" => "Dejar de compartir", @@ -22,8 +20,6 @@ "replaced {new_name}" => "reemplazado {new_name}", "undo" => "deshacer", "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.", "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 ", @@ -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.", "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", -"{count} files scanned" => "{count} archivos escaneados", -"error while scanning" => "error escaneando", "Name" => "Nombre", "Size" => "Tamaño", "Modified" => "Modificado", diff --git a/apps/files/l10n/es_AR.php b/apps/files/l10n/es_AR.php index cd8347a14ad..ea8352e3251 100644 --- a/apps/files/l10n/es_AR.php +++ b/apps/files/l10n/es_AR.php @@ -1,7 +1,4 @@ <?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", "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:", @@ -10,6 +7,7 @@ "No file was uploaded" => "El archivo no fue subido", "Missing a temporary folder" => "Falta un directorio temporal", "Failed to write to disk" => "Error al escribir en el disco", +"Not enough space available" => "No hay suficiente espacio disponible", "Invalid directory." => "Directorio invalido.", "Files" => "Archivos", "Unshare" => "Dejar de compartir", @@ -22,11 +20,11 @@ "replaced {new_name}" => "reemplazado {new_name}", "undo" => "deshacer", "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.", "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.", +"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.", "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", @@ -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á.", "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", -"{count} files scanned" => "{count} archivos escaneados", -"error while scanning" => "error mientras se escaneaba", "Name" => "Nombre", "Size" => "Tamaño", "Modified" => "Modificado", diff --git a/apps/files/l10n/et_EE.php b/apps/files/l10n/et_EE.php index 1df237baa82..54dd7cfdc56 100644 --- a/apps/files/l10n/et_EE.php +++ b/apps/files/l10n/et_EE.php @@ -17,8 +17,6 @@ "replaced {new_name}" => "asendatud nimega {new_name}", "undo" => "tagasi", "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.", "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", @@ -29,8 +27,6 @@ "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.", "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", "Size" => "Suurus", "Modified" => "Muudetud", diff --git a/apps/files/l10n/eu.php b/apps/files/l10n/eu.php index 8b8f6d2bd17..6f4c55f4846 100644 --- a/apps/files/l10n/eu.php +++ b/apps/files/l10n/eu.php @@ -1,7 +1,4 @@ <?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", "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:", @@ -10,7 +7,7 @@ "No file was uploaded" => "Ez da fitxategirik igo", "Missing a temporary folder" => "Aldi baterako karpeta falta da", "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.", "Files" => "Fitxategiak", "Unshare" => "Ez elkarbanatu", @@ -23,8 +20,6 @@ "replaced {new_name}" => "ordezkatua {new_name}", "undo" => "desegin", "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.", "File name cannot be empty." => "Fitxategi izena ezin da hutsa izan.", "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.", "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", -"{count} files scanned" => "{count} fitxategi eskaneatuta", -"error while scanning" => "errore bat egon da eskaneatzen zen bitartean", "Name" => "Izena", "Size" => "Tamaina", "Modified" => "Aldatuta", diff --git a/apps/files/l10n/fa.php b/apps/files/l10n/fa.php index 3d3bfad1f9b..a4181c6ff53 100644 --- a/apps/files/l10n/fa.php +++ b/apps/files/l10n/fa.php @@ -1,7 +1,4 @@ <?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" => "هیچ ÙØ§ÛŒÙ„ÛŒ آپلود نشد.خطای ناشناس", "There is no error, the file uploaded with success" => "هیچ خطایی وجود ندارد ÙØ§ÛŒÙ„ با موÙقیت بار گذاری شد", "The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "پرونده آپلود شده بیش ازدستور ماکزیمم_ØØ¬Ù… ÙØ§ÛŒÙ„_برای آپلود در php.ini Ø§Ø³ØªÙØ§Ø¯Ù‡ کرده است.", @@ -10,6 +7,7 @@ "No file was uploaded" => "هیچ ÙØ§ÛŒÙ„ÛŒ بارگذاری نشده", "Missing a temporary folder" => "یک پوشه موقت Ú¯Ù… شده است", "Failed to write to disk" => "نوشتن بر روی دیسک سخت ناموÙÙ‚ بود", +"Not enough space available" => "ÙØ¶Ø§ÛŒ کاÙÛŒ در دسترس نیست", "Invalid directory." => "Ùهرست راهنما نامعتبر Ù…ÛŒ باشد.", "Files" => "ÙØ§ÛŒÙ„ ها", "Unshare" => "لغو اشتراک", @@ -22,8 +20,6 @@ "replaced {new_name}" => "{نام _جدید} جایگزین شد ", "undo" => "بازگشت", "replaced {new_name} with {old_name}" => "{نام_جدید} با { نام_قدیمی} جایگزین شد.", -"unshared {files}" => "{ ÙØ§ÛŒÙ„ های } قسمت نشده", -"deleted {files}" => "{ ÙØ§ÛŒÙ„ های } پاک شده", "'.' is an invalid file name." => "'.' یک نام پرونده نامعتبر است.", "File name cannot be empty." => "نام پرونده نمی تواند خالی باشد.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "نام نامعتبر ØŒ '\\', '/', '<', '>', ':', '\"', '|', '?' Ùˆ '*' مجاز نمی باشند.", @@ -38,8 +34,6 @@ "File upload is in progress. Leaving the page now will cancel the upload." => "آپلودکردن پرونده در ØØ§Ù„ Ù¾ÛŒØ´Ø±ÙØª است. در صورت خروج از ØµÙØÙ‡ آپلود لغو میگردد. ", "URL cannot be empty." => "URL نمی تواند خالی باشد.", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "نام پوشه نامعتبر است. Ø§Ø³ØªÙØ§Ø¯Ù‡ از \" به اشتراک گذاشته شده \" متعلق به سایت Owncloud است.", -"{count} files scanned" => "{ شمار } ÙØ§ÛŒÙ„ های اسکن شده", -"error while scanning" => "خطا در ØØ§Ù„ انجام اسکن ", "Name" => "نام", "Size" => "اندازه", "Modified" => "تغییر ÛŒØ§ÙØªÙ‡", diff --git a/apps/files/l10n/fi_FI.php b/apps/files/l10n/fi_FI.php index 999bd7884d3..809a5e5c554 100644 --- a/apps/files/l10n/fi_FI.php +++ b/apps/files/l10n/fi_FI.php @@ -1,7 +1,4 @@ <?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", "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", @@ -9,7 +6,7 @@ "No file was uploaded" => "Yhtäkään tiedostoa ei lähetetty", "Missing a temporary folder" => "Väliaikaiskansiota ei ole olemassa", "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.", "Files" => "Tiedostot", "Unshare" => "Peru jakaminen", @@ -20,6 +17,7 @@ "suggest name" => "ehdota nimeä", "cancel" => "peru", "undo" => "kumoa", +"perform delete operation" => "suorita poistotoiminto", "'.' is an invalid file name." => "'.' on virheellinen nimi tiedostolle.", "File name cannot be empty." => "Tiedoston nimi ei voi olla tyhjä.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Virheellinen nimi, merkit '\\', '/', '<', '>', ':', '\"', '|', '?' ja '*' eivät ole sallittuja.", @@ -53,11 +51,13 @@ "Text file" => "Tekstitiedosto", "Folder" => "Kansio", "From link" => "Linkistä", +"Trash" => "Roskakori", "Cancel upload" => "Peru lähetys", "Nothing in here. Upload something!" => "Täällä ei ole mitään. Lähetä tänne jotakin!", "Download" => "Lataa", "Upload too large" => "Lähetettävä tiedosto on liian suuri", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Lähetettäväksi valitsemasi tiedostot ylittävät palvelimen salliman tiedostokoon rajan.", "Files are being scanned, please wait." => "Tiedostoja tarkistetaan, odota hetki.", -"Current scanning" => "Tämänhetkinen tutkinta" +"Current scanning" => "Tämänhetkinen tutkinta", +"Upgrading filesystem cache..." => "Päivitetään tiedostojärjestelmän välimuistia..." ); diff --git a/apps/files/l10n/fr.php b/apps/files/l10n/fr.php index ce8ef959d0a..4be699c0017 100644 --- a/apps/files/l10n/fr.php +++ b/apps/files/l10n/fr.php @@ -1,7 +1,4 @@ <?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", "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:", @@ -10,7 +7,7 @@ "No file was uploaded" => "Aucun fichier n'a été téléversé", "Missing a temporary folder" => "Il manque un répertoire temporaire", "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.", "Files" => "Fichiers", "Unshare" => "Ne plus partager", @@ -23,8 +20,7 @@ "replaced {new_name}" => "{new_name} a été remplacé", "undo" => "annuler", "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}", +"perform delete operation" => "effectuer l'opération de suppression", "'.' 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.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nom invalide, les caractères '\\', '/', '<', '>', ':', '\"', '|', '?' et '*' ne sont pas autorisés.", @@ -41,8 +37,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.", "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", -"{count} files scanned" => "{count} fichiers indexés", -"error while scanning" => "erreur lors de l'indexation", "Name" => "Nom", "Size" => "Taille", "Modified" => "Modifié", @@ -63,11 +57,13 @@ "Text file" => "Fichier texte", "Folder" => "Dossier", "From link" => "Depuis le lien", +"Trash" => "Corbeille", "Cancel upload" => "Annuler l'envoi", "Nothing in here. Upload something!" => "Il n'y a rien ici ! Envoyez donc quelque chose :)", "Download" => "Télécharger", "Upload too large" => "Fichier trop volumineux", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Les fichiers que vous essayez d'envoyer dépassent la taille maximale permise par ce serveur.", "Files are being scanned, please wait." => "Les fichiers sont en cours d'analyse, veuillez patienter.", -"Current scanning" => "Analyse en cours" +"Current scanning" => "Analyse en cours", +"Upgrading filesystem cache..." => "Mise à niveau du cache du système de fichier" ); diff --git a/apps/files/l10n/gl.php b/apps/files/l10n/gl.php index 3bac12b351e..a1c0f0a5dd5 100644 --- a/apps/files/l10n/gl.php +++ b/apps/files/l10n/gl.php @@ -1,7 +1,4 @@ <?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.", "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", @@ -10,6 +7,7 @@ "No file was uploaded" => "Non se enviou ningún ficheiro", "Missing a temporary folder" => "Falta un cartafol temporal", "Failed to write to disk" => "Erro ao escribir no disco", +"Not enough space available" => "O espazo dispoñÃbel é insuficiente", "Invalid directory." => "O directorio é incorrecto.", "Files" => "Ficheiros", "Unshare" => "Deixar de compartir", @@ -22,8 +20,6 @@ "replaced {new_name}" => "substituÃr {new_name}", "undo" => "desfacer", "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", "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.", @@ -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.", "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", -"{count} files scanned" => "{count} ficheiros escaneados", -"error while scanning" => "erro mentres analizaba", "Name" => "Nome", "Size" => "Tamaño", "Modified" => "Modificado", diff --git a/apps/files/l10n/he.php b/apps/files/l10n/he.php index 62b397e129e..94cddca0000 100644 --- a/apps/files/l10n/he.php +++ b/apps/files/l10n/he.php @@ -18,8 +18,6 @@ "replaced {new_name}" => "{new_name} הוחלף", "undo" => "ביטול", "replaced {new_name} with {old_name}" => "{new_name} הוחלף ב־{old_name}", -"unshared {files}" => "בוטל ×©×™×ª×•×¤× ×©×œ {files}", -"deleted {files}" => "{files} × ×ž×—×§×•", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "×”×©× ×©×’×•×™, ×סור להשתמש ×‘×ª×•×•×™× '\\', '/', '<', '>', ':', '\"', '|', '?' ו־'*'.", "Unable to upload your file as it is a directory or has 0 bytes" => "×œ× ×™×›×•×œ להעלות ×ת הקובץ מכיוון שזו תקיה ×ו שמשקל הקובץ 0 בתי×", "Upload Error" => "שגי×ת העל××”", @@ -30,8 +28,6 @@ "Upload cancelled." => "ההעל××” בוטלה.", "File upload is in progress. Leaving the page now will cancel the upload." => "מתבצעת כעת העל×ת קבצי×. עזיבה של העמוד תבטל ×ת ההעל××”.", "URL cannot be empty." => "קישור ××™× ×• יכול להיות ריק.", -"{count} files scanned" => "{count} ×§×‘×¦×™× × ×¡×¨×§×•", -"error while scanning" => "×ירעה שגי××” במהלך הסריקה", "Name" => "ש×", "Size" => "גודל", "Modified" => "זמן ×©×™× ×•×™", diff --git a/apps/files/l10n/hr.php b/apps/files/l10n/hr.php index 7000caf0d17..4f4546aaf07 100644 --- a/apps/files/l10n/hr.php +++ b/apps/files/l10n/hr.php @@ -20,7 +20,6 @@ "1 file uploading" => "1 datoteka se uÄitava", "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.", -"error while scanning" => "greÄka prilikom skeniranja", "Name" => "Naziv", "Size" => "VeliÄina", "Modified" => "Zadnja promjena", diff --git a/apps/files/l10n/hu_HU.php b/apps/files/l10n/hu_HU.php index be3dd1b9c3c..86fc0f223f9 100644 --- a/apps/files/l10n/hu_HU.php +++ b/apps/files/l10n/hu_HU.php @@ -1,7 +1,4 @@ <?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", "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.", @@ -10,7 +7,7 @@ "No file was uploaded" => "Nem töltÅ‘dött fel semmi", "Missing a temporary folder" => "Hiányzik egy ideiglenes mappa", "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.", "Files" => "Fájlok", "Unshare" => "Megosztás visszavonása", @@ -23,8 +20,6 @@ "replaced {new_name}" => "a(z) {new_name} állományt kicseréltük", "undo" => "visszavonás", "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.", "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 '*'", @@ -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.", "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.", -"{count} files scanned" => "{count} fájlt találtunk", -"error while scanning" => "Hiba a fájllista-ellenÅ‘rzés során", "Name" => "Név", "Size" => "Méret", "Modified" => "MódosÃtva", diff --git a/apps/files/l10n/is.php b/apps/files/l10n/is.php index 297853c8161..43c10ef236e 100644 --- a/apps/files/l10n/is.php +++ b/apps/files/l10n/is.php @@ -1,7 +1,4 @@ <?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.", "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:", @@ -10,6 +7,7 @@ "No file was uploaded" => "Engin skrá skilaði sér", "Missing a temporary folder" => "Vantar bráðabirgðamöppu", "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.", "Files" => "Skrár", "Unshare" => "Hætta deilingu", @@ -22,8 +20,6 @@ "replaced {new_name}" => "endurskýrði {new_name}", "undo" => "afturkalla", "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.", "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ð.", @@ -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.", "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", -"{count} files scanned" => "{count} skrár skimaðar", -"error while scanning" => "villa við skimun", "Name" => "Nafn", "Size" => "Stærð", "Modified" => "Breytt", diff --git a/apps/files/l10n/it.php b/apps/files/l10n/it.php index 63bc71d6729..bb3a5bdf054 100644 --- a/apps/files/l10n/it.php +++ b/apps/files/l10n/it.php @@ -1,7 +1,4 @@ <?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", "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:", @@ -10,7 +7,7 @@ "No file was uploaded" => "Nessun file è stato caricato", "Missing a temporary folder" => "Cartella temporanea mancante", "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.", "Files" => "File", "Unshare" => "Rimuovi condivisione", @@ -23,8 +20,7 @@ "replaced {new_name}" => "sostituito {new_name}", "undo" => "annulla", "replaced {new_name} with {old_name}" => "sostituito {new_name} con {old_name}", -"unshared {files}" => "non condivisi {files}", -"deleted {files}" => "eliminati {files}", +"perform delete operation" => "esegui l'operazione di eliminazione", "'.' is an invalid file name." => "'.' non è un nome file valido.", "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.", @@ -41,8 +37,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.", "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", -"{count} files scanned" => "{count} file analizzati", -"error while scanning" => "errore durante la scansione", "Name" => "Nome", "Size" => "Dimensione", "Modified" => "Modificato", @@ -63,11 +57,13 @@ "Text file" => "File di testo", "Folder" => "Cartella", "From link" => "Da collegamento", +"Trash" => "Cestino", "Cancel upload" => "Annulla invio", "Nothing in here. Upload something!" => "Non c'è niente qui. Carica qualcosa!", "Download" => "Scarica", "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.", "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..." ); diff --git a/apps/files/l10n/ja_JP.php b/apps/files/l10n/ja_JP.php index 4a36e8aa421..c8b1054f30b 100644 --- a/apps/files/l10n/ja_JP.php +++ b/apps/files/l10n/ja_JP.php @@ -1,7 +1,4 @@ <?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" => "ファイルã¯ä½•もアップãƒãƒ¼ãƒ‰ã•れã¦ã„ã¾ã›ã‚“ã€‚ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼", "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 ã«è¨å®šã•れãŸã‚µã‚¤ã‚ºã‚’è¶…ãˆã¦ã„ã¾ã™:", @@ -10,7 +7,7 @@ "No file was uploaded" => "ファイルã¯ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã•れã¾ã›ã‚“ã§ã—ãŸ", "Missing a temporary folder" => "テンãƒãƒ©ãƒªãƒ•ォルダãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“", "Failed to write to disk" => "ディスクã¸ã®æ›¸ãè¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ", -"Not enough storage available" => "ストレージã«å分ãªç©ºã容é‡ãŒã‚りã¾ã›ã‚“", +"Not enough space available" => "利用å¯èƒ½ãªã‚¹ãƒšãƒ¼ã‚¹ãŒå分ã«ã‚りã¾ã›ã‚“", "Invalid directory." => "無効ãªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ã€‚", "Files" => "ファイル", "Unshare" => "共有ã—ãªã„", @@ -23,8 +20,7 @@ "replaced {new_name}" => "{new_name} ã‚’ç½®æ›", "undo" => "å…ƒã«æˆ»ã™", "replaced {new_name} with {old_name}" => "{old_name} ã‚’ {new_name} ã«ç½®æ›", -"unshared {files}" => "未共有 {files}", -"deleted {files}" => "削除 {files}", +"perform delete operation" => "削除を実行", "'.' is an invalid file name." => "'.' ã¯ç„¡åйãªãƒ•ァイルåã§ã™ã€‚", "File name cannot be empty." => "ファイルåを空ã«ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "無効ãªåå‰ã€'\\', '/', '<', '>', ':', '\"', '|', '?', '*' ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。", @@ -41,8 +37,6 @@ "File upload is in progress. Leaving the page now will cancel the upload." => "ファイル転é€ã‚’実行ä¸ã§ã™ã€‚今ã“ã®ãƒšãƒ¼ã‚¸ã‹ã‚‰ç§»å‹•ã™ã‚‹ã¨ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ãŒä¸æ¢ã•れã¾ã™ã€‚", "URL cannot be empty." => "URLã¯ç©ºã«ã§ãã¾ã›ã‚“。", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "無効ãªãƒ•ォルダåã§ã™ã€‚'Shared' ã®åˆ©ç”¨ã¯ ownCloud ãŒäºˆç´„済ã¿ã§ã™ã€‚", -"{count} files scanned" => "{count} ファイルをスã‚ャン", -"error while scanning" => "スã‚ャンä¸ã®ã‚¨ãƒ©ãƒ¼", "Name" => "åå‰", "Size" => "サイズ", "Modified" => "更新日時", @@ -63,11 +57,13 @@ "Text file" => "テã‚ストファイル", "Folder" => "フォルダ", "From link" => "リンク", +"Trash" => "ゴミ箱", "Cancel upload" => "アップãƒãƒ¼ãƒ‰ã‚’ã‚ャンセル", "Nothing in here. Upload something!" => "ã“ã“ã«ã¯ä½•ã‚‚ã‚りã¾ã›ã‚“。何ã‹ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã—ã¦ãã ã•ã„。", "Download" => "ダウンãƒãƒ¼ãƒ‰", "Upload too large" => "ファイルサイズãŒå¤§ãã™ãŽã¾ã™", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "アップãƒãƒ¼ãƒ‰ã—よã†ã¨ã—ã¦ã„るファイルã¯ã€ã‚µãƒ¼ãƒã§è¦å®šã•ã‚ŒãŸæœ€å¤§ã‚µã‚¤ã‚ºã‚’è¶…ãˆã¦ã„ã¾ã™ã€‚", "Files are being scanned, please wait." => "ファイルをスã‚ャンã—ã¦ã„ã¾ã™ã€ã—ã°ã‚‰ããŠå¾…ã¡ãã ã•ã„。", -"Current scanning" => "スã‚ャンä¸" +"Current scanning" => "スã‚ャンä¸", +"Upgrading filesystem cache..." => "ファイルシステムã‚ャッシュを更新ä¸..." ); diff --git a/apps/files/l10n/ka_GE.php b/apps/files/l10n/ka_GE.php index 08225c114d1..7ab6122c659 100644 --- a/apps/files/l10n/ka_GE.php +++ b/apps/files/l10n/ka_GE.php @@ -16,8 +16,6 @@ "replaced {new_name}" => "{new_name} შეცვლილიáƒ", "undo" => "დáƒáƒ‘რუნებáƒ", "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 ბáƒáƒ˜áƒ¢áƒ¡", "Upload Error" => "შეცდáƒáƒ›áƒ áƒáƒ¢áƒ•ირთვისáƒáƒ¡", "Close" => "დáƒáƒ®áƒ£áƒ ვáƒ", @@ -26,8 +24,6 @@ "{count} files uploading" => "{count} ფáƒáƒ˜áƒšáƒ˜ იტვირთებáƒ", "Upload cancelled." => "áƒáƒ¢áƒ•ირთვრშეჩერებულ იქნáƒ.", "File upload is in progress. Leaving the page now will cancel the upload." => "მიმდინáƒáƒ ეáƒáƒ‘ს ფáƒáƒ˜áƒšáƒ˜áƒ¡ áƒáƒ¢áƒ•ირთვáƒ. სხვრგვერდზე გáƒáƒ“áƒáƒ¡áƒ•ლრგáƒáƒ›áƒáƒ˜áƒ¬áƒ•ევს áƒáƒ¢áƒ•ირთვის შეჩერებáƒáƒ¡", -"{count} files scanned" => "{count} ფáƒáƒ˜áƒšáƒ˜ სკáƒáƒœáƒ˜áƒ ებულიáƒ", -"error while scanning" => "შეცდáƒáƒ›áƒ სკáƒáƒœáƒ˜áƒ ებისáƒáƒ¡", "Name" => "სáƒáƒ®áƒ”ლი", "Size" => "ზáƒáƒ›áƒ", "Modified" => "შეცვლილიáƒ", diff --git a/apps/files/l10n/ko.php b/apps/files/l10n/ko.php index cd95d61e4dc..7774aeea31c 100644 --- a/apps/files/l10n/ko.php +++ b/apps/files/l10n/ko.php @@ -1,7 +1,4 @@ <?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" => "파ì¼ì´ 업로드ë˜ì§€ 않았습니다. 알 수 없는 오류입니다", "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보다 í½ë‹ˆë‹¤:", @@ -10,7 +7,8 @@ "No file was uploaded" => "ì—…ë¡œë“œëœ íŒŒì¼ ì—†ìŒ", "Missing a temporary folder" => "임시 í´ë”ê°€ 사ë¼ì§", "Failed to write to disk" => "디스í¬ì— ì“°ì§€ 못했습니다", -"Invalid directory." => "올바르지 ì•Šì€ ë””ë ‰í† ë¦¬ìž…ë‹ˆë‹¤.", +"Not enough space available" => "ì—¬ìœ ê³µê°„ì´ ë¶€ì¡±í•©ë‹ˆë‹¤", +"Invalid directory." => "올바르지 ì•Šì€ ë””ë ‰í„°ë¦¬ìž…ë‹ˆë‹¤.", "Files" => "파ì¼", "Unshare" => "ê³µìœ í•´ì œ", "Delete" => "ì‚ì œ", @@ -22,11 +20,12 @@ "replaced {new_name}" => "{new_name}ì„(를) 대체함", "undo" => "실행 취소", "replaced {new_name} with {old_name}" => "{old_name}ì´(ê°€) {new_name}(으)로 대체ë¨", -"unshared {files}" => "{files} ê³µìœ í•´ì œë¨", -"deleted {files}" => "{files} ì‚ì œë¨", "'.' is an invalid file name." => "'.' 는 올바르지 ì•Šì€ íŒŒì¼ ì´ë¦„ 입니다.", -"File name cannot be empty." => "파ì¼ì´ë¦„ì€ ê³µëž€ì´ ë 수 없습니다.", +"File name cannot be empty." => "íŒŒì¼ ì´ë¦„ì´ ë¹„ì–´ ìžˆì„ ìˆ˜ 없습니다.", "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" => "ì´ íŒŒì¼ì€ ë””ë ‰í„°ë¦¬ì´ê±°ë‚˜ 비어 있기 ë•Œë¬¸ì— ì—…ë¡œë“œí• ìˆ˜ 없습니다", "Upload Error" => "업로드 오류", "Close" => "닫기", @@ -37,8 +36,6 @@ "File upload is in progress. Leaving the page now will cancel the upload." => "íŒŒì¼ ì—…ë¡œë“œê°€ ì§„í–‰ 중입니다. ì´ íŽ˜ì´ì§€ë¥¼ 벗어나면 업로드가 취소ë©ë‹ˆë‹¤.", "URL cannot be empty." => "URLì„ ìž…ë ¥í•´ì•¼ 합니다.", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "í´ë” ì´ë¦„ì´ ìœ íš¨í•˜ì§€ 않습니다. ", -"{count} files scanned" => "íŒŒì¼ {count}ê°œ 검색ë¨", -"error while scanning" => "검색 중 오류 ë°œìƒ", "Name" => "ì´ë¦„", "Size" => "í¬ê¸°", "Modified" => "ìˆ˜ì •ë¨", @@ -65,5 +62,6 @@ "Upload too large" => "업로드 용량 초과", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "ì´ íŒŒì¼ì´ 서버ì—서 허용하는 최대 업로드 가능 용량보다 í½ë‹ˆë‹¤.", "Files are being scanned, please wait." => "파ì¼ì„ ê²€ìƒ‰í•˜ê³ ìžˆìŠµë‹ˆë‹¤. ê¸°ë‹¤ë ¤ 주ì‹ì‹œì˜¤.", -"Current scanning" => "현재 검색" +"Current scanning" => "현재 검색", +"Upgrading filesystem cache..." => "íŒŒì¼ ì‹œìŠ¤í…œ ìºì‹œ ì—…ê·¸ë ˆì´ë“œ 중..." ); diff --git a/apps/files/l10n/lt_LT.php b/apps/files/l10n/lt_LT.php index da209619e2a..f4ad655f421 100644 --- a/apps/files/l10n/lt_LT.php +++ b/apps/files/l10n/lt_LT.php @@ -16,8 +16,6 @@ "replaced {new_name}" => "pakeiskite {new_name}", "undo" => "anuliuoti", "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", "Upload Error" => "Ä®kÄ—limo klaida", "Close" => "Užverti", @@ -26,8 +24,6 @@ "{count} files uploading" => "{count} įkeliami failai", "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.", -"{count} files scanned" => "{count} praskanuoti failai", -"error while scanning" => "klaida skanuojant", "Name" => "Pavadinimas", "Size" => "Dydis", "Modified" => "Pakeista", diff --git a/apps/files/l10n/lv.php b/apps/files/l10n/lv.php index b175b19bba9..25c1da73beb 100644 --- a/apps/files/l10n/lv.php +++ b/apps/files/l10n/lv.php @@ -1,40 +1,69 @@ <?php $TRANSLATIONS = array( -"There is no error, the file uploaded with success" => "Viss kÄrtÄ«bÄ, augÅ¡upielÄde veiksmÄ«ga", -"No file was uploaded" => "Neviens fails netika augÅ¡uplÄdÄ“ts", +"No file was uploaded. Unknown error" => "Netika augÅ¡upielÄdÄ“ta neviena datne. NezinÄma kļūda", +"There is no error, the file uploaded with success" => "AugÅ¡upielÄde pabeigta bez kļūdÄm", +"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "AugÅ¡upielÄdÄ“tÄ datne pÄrsniedz upload_max_filesize norÄdÄ«jumu php.ini datnÄ“:", +"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "AugÅ¡upielÄdÄ“tÄ datne pÄrsniedz MAX_FILE_SIZE norÄdi, kas ir norÄdÄ«ta HTML formÄ", +"The uploaded file was only partially uploaded" => "AugÅ¡upielÄdÄ“tÄ datne ir tikai daļēji augÅ¡upielÄdÄ“ta", +"No file was uploaded" => "Neviena datne netika augÅ¡upielÄdÄ“ta", "Missing a temporary folder" => "TrÅ«kst pagaidu mapes", -"Failed to write to disk" => "Nav iespÄ“jams saglabÄt", -"Files" => "Faili", -"Unshare" => "PÄrtraukt lÄ«dzdalīšanu", -"Delete" => "IzdzÄ“st", -"Rename" => "PÄrdÄ“vÄ“t", +"Failed to write to disk" => "NeizdevÄs saglabÄt diskÄ", +"Not enough space available" => "Nepietiek brÄ«vas vietas", +"Invalid directory." => "NederÄ«ga direktorija.", +"Files" => "Datnes", +"Unshare" => "PÄrtraukt dalīšanos", +"Delete" => "DzÄ“st", +"Rename" => "PÄrsaukt", +"{new_name} already exists" => "{new_name} jau eksistÄ“", "replace" => "aizvietot", -"suggest name" => "Ieteiktais nosaukums", +"suggest name" => "ieteiktais nosaukums", "cancel" => "atcelt", -"undo" => "vienu soli atpakaļ", -"Unable to upload your file as it is a directory or has 0 bytes" => "Nav iespÄ“jams augÅ¡uplÄdÄ“t jÅ«su failu, jo tÄds jau eksistÄ“ vai arÄ« failam nav izmÄ“ra (0 baiti)", -"Upload Error" => "AugÅ¡uplÄdēšanas laikÄ radÄs kļūda", +"replaced {new_name}" => "aizvietots {new_name}", +"undo" => "atsaukt", +"replaced {new_name} with {old_name}" => "aizvietoja {new_name} ar {old_name}", +"perform delete operation" => "veikt dzēšanas darbÄ«bu", +"'.' is an invalid file name." => "'.' ir nederÄ«gs datnes nosaukums.", +"File name cannot be empty." => "Datnes nosaukums nevar bÅ«t tukÅ¡s.", +"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "NederÄ«gs nosaukums, nav atļauti '\\', '/', '<', '>', ':', '\"', '|', '?' un '*'.", +"Your storage is full, files can not be updated or synced anymore!" => "JÅ«su krÄtuve ir pilna, datnes vairs nevar augÅ¡upielÄdÄ“t vai sinhronizÄ“t!", +"Your storage is almost full ({usedSpacePercent}%)" => "JÅ«su krÄtuve ir gandrÄ«z pilna ({usedSpacePercent}%)", +"Your download is being prepared. This might take some time if the files are big." => "Tiek sagatavota lejupielÄde. Tas var aizņemt kÄdu laiciņu, ja datnes ir lielas.", +"Unable to upload your file as it is a directory or has 0 bytes" => "Nevar augÅ¡upielÄdÄ“t jÅ«su datni, jo tÄ ir direktorija vai arÄ« tÄs izmÄ“rs ir 0 baiti", +"Upload Error" => "Kļūda augÅ¡upielÄdÄ“jot", +"Close" => "AizvÄ“rt", "Pending" => "Gaida savu kÄrtu", -"Upload cancelled." => "AugÅ¡uplÄde ir atcelta", +"1 file uploading" => "AugÅ¡upielÄdÄ“ 1 datni", +"{count} files uploading" => "augÅ¡upielÄdÄ“ {count} datnes", +"Upload cancelled." => "AugÅ¡upielÄde ir atcelta.", "File upload is in progress. Leaving the page now will cancel the upload." => "Notiek augÅ¡upielÄde. Pametot lapu tagad, tiks atcelta augÅ¡upielÄde.", +"URL cannot be empty." => "URL nevar bÅ«t tukÅ¡s.", +"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "NederÄ«gs mapes nosaukums. “Koplietots†izmantojums ir rezervÄ“ts ownCloud servisam.", "Name" => "Nosaukums", "Size" => "IzmÄ“rs", -"Modified" => "IzmainÄ«ts", -"Upload" => "AugÅ¡uplÄdet", -"File handling" => "Failu pÄrvaldÄ«ba", -"Maximum upload size" => "MaksimÄlais failu augÅ¡uplÄdes apjoms", -"max. possible: " => "maksÄ«mÄlais iespÄ“jamais:", -"Needed for multi-file and folder downloads." => "VajadzÄ«gs vairÄku failu un mapju lejuplÄdei", -"Enable ZIP-download" => "IespÄ“jot ZIP lejuplÄdi", +"Modified" => "MainÄ«ts", +"1 folder" => "1 mape", +"{count} folders" => "{count} mapes", +"1 file" => "1 datne", +"{count} files" => "{count} datnes", +"Upload" => "AugÅ¡upielÄdÄ“t", +"File handling" => "Datņu pÄrvaldÄ«ba", +"Maximum upload size" => "MaksimÄlais datņu augÅ¡upielÄdes apjoms", +"max. possible: " => "maksimÄlais iespÄ“jamais:", +"Needed for multi-file and folder downloads." => "VajadzÄ«gs vairÄku datņu un mapju lejupielÄdēšanai.", +"Enable ZIP-download" => "AktivÄ“t ZIP lejupielÄdi", "0 is unlimited" => "0 ir neierobežots", +"Maximum input size for ZIP files" => "MaksimÄlais ievades izmÄ“rs ZIP datnÄ“m", "Save" => "SaglabÄt", -"New" => "Jauns", -"Text file" => "Teksta fails", +"New" => "Jauna", +"Text file" => "Teksta datne", "Folder" => "Mape", -"Cancel upload" => "Atcelt augÅ¡uplÄdi", -"Nothing in here. Upload something!" => "Te vÄ“l nekas nav. RÄ«kojies, sÄc augÅ¡uplÄdÄ“t", -"Download" => "LejuplÄdÄ“t", -"Upload too large" => "Fails ir par lielu lai to augÅ¡uplÄdetu", -"The files you are trying to upload exceed the maximum size for file uploads on this server." => "JÅ«su augÅ¡uplÄdÄ“jamie faili pÄrsniedz servera pieļaujamo failu augÅ¡upielÄdes apjomu", -"Files are being scanned, please wait." => "Faili Å¡obrÄ«d tiek caurskatÄ«ti, nedaudz jÄpagaida.", -"Current scanning" => "Å obrÄ«d tiek pÄrbaudÄ«ti" +"From link" => "No saites", +"Trash" => "Miskaste", +"Cancel upload" => "Atcelt augÅ¡upielÄdi", +"Nothing in here. Upload something!" => "Te vÄ“l nekas nav. RÄ«kojies, sÄc augÅ¡upielÄdÄ“t!", +"Download" => "LejupielÄdÄ“t", +"Upload too large" => "Datne ir par lielu, lai to augÅ¡upielÄdÄ“tu", +"The files you are trying to upload exceed the maximum size for file uploads on this server." => "AugÅ¡upielÄdÄ“jamÄs datnes pÄrsniedz servera pieļaujamo datņu augÅ¡upielÄdes apjomu", +"Files are being scanned, please wait." => "Datnes Å¡obrÄ«d tiek caurskatÄ«tas, lÅ«dzu, uzgaidiet.", +"Current scanning" => "Å obrÄ«d tiek caurskatÄ«ts", +"Upgrading filesystem cache..." => "Uzlabo datņu sistÄ“mas keÅ¡atmiņu..." ); diff --git a/apps/files/l10n/mk.php b/apps/files/l10n/mk.php index 0ca08d6bc6a..2580d1e6a97 100644 --- a/apps/files/l10n/mk.php +++ b/apps/files/l10n/mk.php @@ -18,8 +18,6 @@ "replaced {new_name}" => "земенета {new_name}", "undo" => "врати", "replaced {new_name} with {old_name}" => "заменета {new_name} Ñо {old_name}", -"unshared {files}" => "без Ñподелување {files}", -"deleted {files}" => "избришани {files}", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ðеправилно име. , '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' не Ñе дозволени.", "Unable to upload your file as it is a directory or has 0 bytes" => "Ðе може да Ñе преземе вашата датотека бидејќи фолдерот во кој Ñе наоѓа фајлот има големина од 0 бајти", "Upload Error" => "Грешка при преземање", @@ -30,8 +28,6 @@ "Upload cancelled." => "Преземањето е прекинато.", "File upload is in progress. Leaving the page now will cancel the upload." => "Подигање на датотека е во тек. Ðапуштење на Ñтраницата ќе го прекине.", "URL cannot be empty." => "ÐдреÑата неможе да биде празна.", -"{count} files scanned" => "{count} датотеки Ñкенирани", -"error while scanning" => "грешка при Ñкенирање", "Name" => "Име", "Size" => "Големина", "Modified" => "Променето", diff --git a/apps/files/l10n/nb_NO.php b/apps/files/l10n/nb_NO.php index 8bb7cfb2f9c..a6ba6e9c03f 100644 --- a/apps/files/l10n/nb_NO.php +++ b/apps/files/l10n/nb_NO.php @@ -17,7 +17,6 @@ "replaced {new_name}" => "erstatt {new_name}", "undo" => "angre", "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.", "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", @@ -28,8 +27,6 @@ "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.", "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", "Size" => "Størrelse", "Modified" => "Endret", diff --git a/apps/files/l10n/nl.php b/apps/files/l10n/nl.php index c78ac346d13..addd3a93723 100644 --- a/apps/files/l10n/nl.php +++ b/apps/files/l10n/nl.php @@ -1,7 +1,4 @@ <?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", "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:", @@ -10,6 +7,7 @@ "No file was uploaded" => "Geen bestand geüpload", "Missing a temporary folder" => "Een tijdelijke map mist", "Failed to write to disk" => "Schrijven naar schijf mislukt", +"Not enough space available" => "Niet genoeg ruimte beschikbaar", "Invalid directory." => "Ongeldige directory.", "Files" => "Bestanden", "Unshare" => "Stop delen", @@ -22,11 +20,12 @@ "replaced {new_name}" => "verving {new_name}", "undo" => "ongedaan maken", "replaced {new_name} with {old_name}" => "verving {new_name} met {old_name}", -"unshared {files}" => "delen gestopt {files}", -"deleted {files}" => "verwijderde {files}", +"perform delete operation" => "uitvoeren verwijderactie", "'.' is an invalid file name." => "'.' is een ongeldige bestandsnaam.", "File name cannot be empty." => "Bestandsnaam kan niet leeg zijn.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Onjuiste naam; '\\', '/', '<', '>', ':', '\"', '|', '?' en '*' zijn niet toegestaan.", +"Your storage is full, files can not be updated or synced anymore!" => "Uw opslagruimte zit vol, Bestanden kunnen niet meer worden ge-upload of gesynchroniseerd!", +"Your storage is almost full ({usedSpacePercent}%)" => "Uw opslagruimte zit bijna vol ({usedSpacePercent}%)", "Your download is being prepared. This might take some time if the files are big." => "Uw download wordt voorbereid. Dit kan enige tijd duren bij grote bestanden.", "Unable to upload your file as it is a directory or has 0 bytes" => "uploaden van de file mislukt, het is of een directory of de bestandsgrootte is 0 bytes", "Upload Error" => "Upload Fout", @@ -38,8 +37,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.", "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", -"{count} files scanned" => "{count} bestanden gescanned", -"error while scanning" => "Fout tijdens het scannen", "Name" => "Naam", "Size" => "Bestandsgrootte", "Modified" => "Laatst aangepast", @@ -60,11 +57,13 @@ "Text file" => "Tekstbestand", "Folder" => "Map", "From link" => "Vanaf link", +"Trash" => "Verwijderen", "Cancel upload" => "Upload afbreken", "Nothing in here. Upload something!" => "Er bevindt zich hier niets. Upload een bestand!", "Download" => "Download", "Upload too large" => "Bestanden te groot", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "De bestanden die u probeert te uploaden zijn groter dan de maximaal toegestane bestandsgrootte voor deze server.", "Files are being scanned, please wait." => "Bestanden worden gescand, even wachten.", -"Current scanning" => "Er wordt gescand" +"Current scanning" => "Er wordt gescand", +"Upgrading filesystem cache..." => "Upgraden bestandssysteem cache..." ); diff --git a/apps/files/l10n/oc.php b/apps/files/l10n/oc.php index 76c8d6b655a..78045b299ed 100644 --- a/apps/files/l10n/oc.php +++ b/apps/files/l10n/oc.php @@ -19,7 +19,6 @@ "1 file uploading" => "1 fichièr al amontcargar", "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. ", -"error while scanning" => "error pendant l'exploracion", "Name" => "Nom", "Size" => "Talha", "Modified" => "Modificat", diff --git a/apps/files/l10n/pl.php b/apps/files/l10n/pl.php index 477e14491f7..6855850f0da 100644 --- a/apps/files/l10n/pl.php +++ b/apps/files/l10n/pl.php @@ -1,7 +1,4 @@ <?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", "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: ", @@ -10,6 +7,7 @@ "No file was uploaded" => "Nie przesÅ‚ano żadnego pliku", "Missing a temporary folder" => "Brak katalogu tymczasowego", "Failed to write to disk" => "Błąd zapisu na dysk", +"Not enough space available" => "Za maÅ‚o miejsca", "Invalid directory." => "ZÅ‚a Å›cieżka.", "Files" => "Pliki", "Unshare" => "Nie udostÄ™pniaj", @@ -22,8 +20,6 @@ "replaced {new_name}" => "zastÄ…piony {new_name}", "undo" => "wróć", "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.", "File name cannot be empty." => "Nazwa pliku nie może być pusta.", "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.", "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", -"{count} files scanned" => "{count} pliki skanowane", -"error while scanning" => "WystÄ…piÅ‚ błąd podczas skanowania", "Name" => "Nazwa", "Size" => "Rozmiar", "Modified" => "Czas modyfikacji", diff --git a/apps/files/l10n/pt_BR.php b/apps/files/l10n/pt_BR.php index 33014297ee5..361e81052b9 100644 --- a/apps/files/l10n/pt_BR.php +++ b/apps/files/l10n/pt_BR.php @@ -7,6 +7,7 @@ "No file was uploaded" => "Nenhum arquivo foi transferido", "Missing a temporary folder" => "Pasta temporária não encontrada", "Failed to write to disk" => "Falha ao escrever no disco", +"Invalid directory." => "Diretório inválido.", "Files" => "Arquivos", "Unshare" => "Descompartilhar", "Delete" => "Excluir", @@ -18,9 +19,10 @@ "replaced {new_name}" => "substituÃdo {new_name}", "undo" => "desfazer", "replaced {new_name} with {old_name}" => "SubstituÃdo {old_name} por {new_name} ", -"unshared {files}" => "{files} não compartilhados", -"deleted {files}" => "{files} apagados", +"'.' is an invalid file name." => "'.' é um nome de arquivo inválido.", +"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.", +"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.", "Upload Error" => "Erro de envio", "Close" => "Fechar", @@ -30,8 +32,7 @@ "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.", "URL cannot be empty." => "URL não pode ficar em branco", -"{count} files scanned" => "{count} arquivos scaneados", -"error while scanning" => "erro durante verificação", +"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Nome de pasta inválido. O uso de 'Shared' é reservado para o Owncloud", "Name" => "Nome", "Size" => "Tamanho", "Modified" => "Modificado", diff --git a/apps/files/l10n/pt_PT.php b/apps/files/l10n/pt_PT.php index 6cee8d9d88e..b1d7385bc58 100644 --- a/apps/files/l10n/pt_PT.php +++ b/apps/files/l10n/pt_PT.php @@ -1,7 +1,4 @@ <?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", "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", @@ -10,7 +7,7 @@ "No file was uploaded" => "Não foi enviado nenhum ficheiro", "Missing a temporary folder" => "Falta uma pasta temporária", "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", "Files" => "Ficheiros", "Unshare" => "Deixar de partilhar", @@ -23,8 +20,7 @@ "replaced {new_name}" => "{new_name} substituido", "undo" => "desfazer", "replaced {new_name} with {old_name}" => "substituido {new_name} por {old_name}", -"unshared {files}" => "{files} não partilhado(s)", -"deleted {files}" => "{files} eliminado(s)", +"perform delete operation" => "Executar a tarefa de apagar", "'.' 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.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Nome Inválido, os caracteres '\\', '/', '<', '>', ':', '\"', '|', '?' e '*' não são permitidos.", @@ -41,8 +37,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.", "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", -"{count} files scanned" => "{count} ficheiros analisados", -"error while scanning" => "erro ao analisar", "Name" => "Nome", "Size" => "Tamanho", "Modified" => "Modificado", @@ -63,11 +57,13 @@ "Text file" => "Ficheiro de texto", "Folder" => "Pasta", "From link" => "Da ligação", +"Trash" => "Lixo", "Cancel upload" => "Cancelar envio", "Nothing in here. Upload something!" => "Vazio. Envie alguma coisa!", "Download" => "Transferir", "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.", "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..." ); diff --git a/apps/files/l10n/ro.php b/apps/files/l10n/ro.php index 424450e920f..7837b1f5b30 100644 --- a/apps/files/l10n/ro.php +++ b/apps/files/l10n/ro.php @@ -1,7 +1,4 @@ <?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ă", "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: ", @@ -10,6 +7,7 @@ "No file was uploaded" => "Niciun fiÈ™ier încărcat", "Missing a temporary folder" => "LipseÈ™te un dosar temporar", "Failed to write to disk" => "Eroare la scriere pe disc", +"Not enough space available" => "Nu este suficient spaÈ›iu disponibil", "Invalid directory." => "Director invalid.", "Files" => "FiÈ™iere", "Unshare" => "Anulează partajarea", @@ -22,8 +20,6 @@ "replaced {new_name}" => "inlocuit {new_name}", "undo" => "Anulează ultima acÈ›iune", "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.", "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.", @@ -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.", "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", -"{count} files scanned" => "{count} fisiere scanate", -"error while scanning" => "eroare la scanarea", "Name" => "Nume", "Size" => "Dimensiune", "Modified" => "Modificat", diff --git a/apps/files/l10n/ru.php b/apps/files/l10n/ru.php index ae103a9e810..716afa5f29a 100644 --- a/apps/files/l10n/ru.php +++ b/apps/files/l10n/ru.php @@ -1,7 +1,4 @@ <?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" => "Файл не был загружен. ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°", "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:", @@ -10,6 +7,7 @@ "No file was uploaded" => "Файл не был загружен", "Missing a temporary folder" => "Ðевозможно найти временную папку", "Failed to write to disk" => "Ошибка запиÑи на диÑк", +"Not enough space available" => "ÐедоÑтаточно Ñвободного меÑта", "Invalid directory." => "Ðеправильный каталог.", "Files" => "Файлы", "Unshare" => "Отменить публикацию", @@ -22,8 +20,6 @@ "replaced {new_name}" => "заменено {new_name}", "undo" => "отмена", "replaced {new_name} with {old_name}" => "заменено {new_name} на {old_name}", -"unshared {files}" => "не опубликованные {files}", -"deleted {files}" => "удаленные {files}", "'.' is an invalid file name." => "'.' - неправильное Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°.", "File name cannot be empty." => "Ð˜Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° не может быть пуÑтым.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ðеправильное имÑ, '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' недопуÑтимы.", @@ -37,8 +33,6 @@ "File upload is in progress. Leaving the page now will cancel the upload." => "Файл в процеÑÑе загрузки. Покинув Ñтраницу вы прервёте загрузку.", "URL cannot be empty." => "СÑылка не может быть пуÑтой.", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ðеправильное Ð¸Ð¼Ñ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³Ð°. Ð˜Ð¼Ñ 'Shared' зарезервировано.", -"{count} files scanned" => "{count} файлов проÑканировано", -"error while scanning" => "ошибка во Ð²Ñ€ÐµÐ¼Ñ ÑанированиÑ", "Name" => "Ðазвание", "Size" => "Размер", "Modified" => "Изменён", diff --git a/apps/files/l10n/ru_RU.php b/apps/files/l10n/ru_RU.php index 60a7fd0f71e..e1952567d31 100644 --- a/apps/files/l10n/ru_RU.php +++ b/apps/files/l10n/ru_RU.php @@ -7,6 +7,8 @@ "No file was uploaded" => "Файл не был загружен", "Missing a temporary folder" => "ОтÑутÑтвует Ð²Ñ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð¿Ð°Ð¿ÐºÐ°", "Failed to write to disk" => "Ðе удалоÑÑŒ запиÑать на диÑк", +"Not enough space available" => "Ðе доÑтаточно Ñвободного меÑта", +"Invalid directory." => "Ðеверный каталог.", "Files" => "Файлы", "Unshare" => "Скрыть", "Delete" => "Удалить", @@ -18,8 +20,8 @@ "replaced {new_name}" => "заменено {новое_имÑ}", "undo" => "отменить дейÑтвие", "replaced {new_name} with {old_name}" => "заменено {новое_имÑ} Ñ {Ñтарое_имÑ}", -"unshared {files}" => "CовмеÑтное иÑпользование прекращено {файлы}", -"deleted {files}" => "удалено {файлы}", +"'.' is an invalid file name." => "'.' ÑвлÑетÑÑ Ð½ÐµÐ²ÐµÑ€Ð½Ñ‹Ð¼ именем файла.", +"File name cannot be empty." => "Ð˜Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° не может быть пуÑтым.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ðекорректное имÑ, '\\', '/', '<', '>', ':', '\"', '|', '?' и '*' не допуÑтимы.", "Unable to upload your file as it is a directory or has 0 bytes" => "Ðевозможно загрузить файл,\n так как он имеет нулевой размер или ÑвлÑетÑÑ Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸ÐµÐ¹", "Upload Error" => "Ошибка загрузки", @@ -30,8 +32,7 @@ "Upload cancelled." => "Загрузка отменена", "File upload is in progress. Leaving the page now will cancel the upload." => "ПроцеÑÑ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ файла. ЕÑли покинуть Ñтраницу ÑейчаÑ, загрузка будет отменена.", "URL cannot be empty." => "URL не должен быть пуÑтым.", -"{count} files scanned" => "{количеÑтво} файлов отÑканировано", -"error while scanning" => "ошибка при Ñканировании", +"Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "Ðеверное Ð¸Ð¼Ñ Ð¿Ð°Ð¿ÐºÐ¸. ИÑпользование Ð½Ð°Ð¸Ð¼ÐµÐ½Ð¾Ð²Ð°Ð½Ð¸Ñ 'Опубликовано' зарезервировано Owncloud", "Name" => "ИмÑ", "Size" => "Размер", "Modified" => "Изменен", @@ -58,5 +59,6 @@ "Upload too large" => "Загрузка Ñлишком велика", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Размер файлов, которые Ð’Ñ‹ пытаетеÑÑŒ загрузить, превышает макÑимально допуÑтимый размер Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ на данный Ñервер.", "Files are being scanned, please wait." => "Файлы ÑканируютÑÑ, пожалуйÑта, подождите.", -"Current scanning" => "Текущее Ñканирование" +"Current scanning" => "Текущее Ñканирование", +"Upgrading filesystem cache..." => "Обновление кÑша файловой ÑиÑтемы... " ); diff --git a/apps/files/l10n/si_LK.php b/apps/files/l10n/si_LK.php index 133737cb57a..316470d8396 100644 --- a/apps/files/l10n/si_LK.php +++ b/apps/files/l10n/si_LK.php @@ -20,7 +20,6 @@ "Upload cancelled." => "උඩුගචකිරීම à¶…à¶à·Š හරින්න ලදී", "File upload is in progress. Leaving the page now will cancel the upload." => "උඩුගà¶à¶šà·’රීමක් සිදුවේ. පිටුව à·„à·à¶» යà·à¶¸à·™à¶±à·Š එය à¶±à·à·€à¶à·™à¶±à·” ඇà¶", "URL cannot be empty." => "යොමුව හිස් විය නොහà·à¶š", -"error while scanning" => "පරීක්ෂ෠කිරීමේදී දà·à·‚යක්", "Name" => "නම", "Size" => "à¶´à·Šâ€à¶»à¶¸à·à¶«à¶º", "Modified" => "වෙනස් à¶šà·…", diff --git a/apps/files/l10n/sk_SK.php b/apps/files/l10n/sk_SK.php index bae5670d061..9c27e215397 100644 --- a/apps/files/l10n/sk_SK.php +++ b/apps/files/l10n/sk_SK.php @@ -1,7 +1,4 @@ <?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", "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:", @@ -10,6 +7,7 @@ "No file was uploaded" => "Žiaden súbor nebol nahraný", "Missing a temporary folder" => "Chýbajúci doÄasný prieÄinok", "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", "Files" => "Súbory", "Unshare" => "NezdielaÅ¥", @@ -22,11 +20,12 @@ "replaced {new_name}" => "prepÃsaný {new_name}", "undo" => "vrátiÅ¥", "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}", +"perform delete operation" => "vykonaÅ¥ zmazanie", "'.' is an invalid file name." => "'.' je neplatné meno súboru.", "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.", +"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Å¥.", "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", @@ -38,8 +37,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.", "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", -"{count} files scanned" => "{count} súborov prehľadaných", -"error while scanning" => "chyba poÄas kontroly", "Name" => "Meno", "Size" => "VeľkosÅ¥", "Modified" => "Upravené", @@ -60,11 +57,13 @@ "Text file" => "Textový súbor", "Folder" => "PrieÄinok", "From link" => "Z odkazu", +"Trash" => "Kôš", "Cancel upload" => "ZruÅ¡iÅ¥ odosielanie", "Nothing in here. Upload something!" => "Žiadny súbor. Nahrajte nieÄo!", "Download" => "StiahnuÅ¥", "Upload too large" => "Odosielaný súbor je prÃliÅ¡ veľký", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "Súbory, ktoré sa snažÃte nahraÅ¥, presahujú maximálnu veľkosÅ¥ pre nahratie súborov na tento server.", "Files are being scanned, please wait." => "ÄŒakajte, súbory sú prehľadávané.", -"Current scanning" => "Práve prehliadané" +"Current scanning" => "Práve prehliadané", +"Upgrading filesystem cache..." => "Aktualizujem medzipamäť súborového systému..." ); diff --git a/apps/files/l10n/sl.php b/apps/files/l10n/sl.php index fbc6ab83b8b..d55b4207d2b 100644 --- a/apps/files/l10n/sl.php +++ b/apps/files/l10n/sl.php @@ -18,8 +18,6 @@ "replaced {new_name}" => "zamenjano je ime {new_name}", "undo" => "razveljavi", "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.", "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", @@ -30,8 +28,6 @@ "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.", "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", "Size" => "Velikost", "Modified" => "Spremenjeno", diff --git a/apps/files/l10n/sr.php b/apps/files/l10n/sr.php index 71da2da4d14..188c8fc0da6 100644 --- a/apps/files/l10n/sr.php +++ b/apps/files/l10n/sr.php @@ -17,8 +17,6 @@ "replaced {new_name}" => "замењено {new_name}", "undo" => "опозови", "replaced {new_name} with {old_name}" => "замењено {new_name} Ñа {old_name}", -"unshared {files}" => "укинуто дељење {files}", -"deleted {files}" => "обриÑано {files}", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "ÐеиÑправан назив. Следећи знакови ниÑу дозвољени: \\, /, <, >, :, \", |, ? и *.", "Unable to upload your file as it is a directory or has 0 bytes" => "Ðе могу да отпремим датотеку као фаÑциклу или она има 0 бајтова", "Upload Error" => "Грешка при отпремању", @@ -28,8 +26,6 @@ "{count} files uploading" => "Отпремам {count} датотеке/а", "Upload cancelled." => "Отпремање је прекинуто.", "File upload is in progress. Leaving the page now will cancel the upload." => "Отпремање датотеке је у току. Ðко Ñада напуÑтите Ñтраницу, прекинућете отпремање.", -"{count} files scanned" => "Скенирано датотека: {count}", -"error while scanning" => "грешка при Ñкенирању", "Name" => "Ðазив", "Size" => "Величина", "Modified" => "Измењено", diff --git a/apps/files/l10n/sv.php b/apps/files/l10n/sv.php index ebcb4626fc8..55493e24943 100644 --- a/apps/files/l10n/sv.php +++ b/apps/files/l10n/sv.php @@ -1,7 +1,4 @@ <?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", "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:", @@ -10,7 +7,7 @@ "No file was uploaded" => "Ingen fil blev uppladdad", "Missing a temporary folder" => "Saknar en tillfällig mapp", "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.", "Files" => "Filer", "Unshare" => "Sluta dela", @@ -23,8 +20,7 @@ "replaced {new_name}" => "ersatt {new_name}", "undo" => "Ã¥ngra", "replaced {new_name} with {old_name}" => "ersatt {new_name} med {old_name}", -"unshared {files}" => "stoppad delning {files}", -"deleted {files}" => "raderade {files}", +"perform delete operation" => "utför raderingen", "'.' is an invalid file name." => "'.' är ett ogiltigt filnamn.", "File name cannot be empty." => "Filnamn kan inte vara tomt.", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ogiltigt namn, '\\', '/', '<', '>', ':', '\"', '|', '?' och '*' är inte tillÃ¥tet.", @@ -41,8 +37,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.", "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", -"{count} files scanned" => "{count} filer skannade", -"error while scanning" => "fel vid skanning", "Name" => "Namn", "Size" => "Storlek", "Modified" => "Ändrad", @@ -63,11 +57,13 @@ "Text file" => "Textfil", "Folder" => "Mapp", "From link" => "FrÃ¥n länk", +"Trash" => "Papperskorgen", "Cancel upload" => "Avbryt uppladdning", "Nothing in here. Upload something!" => "Ingenting här. Ladda upp nÃ¥got!", "Download" => "Ladda ner", "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.", "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..." ); diff --git a/apps/files/l10n/ta_LK.php b/apps/files/l10n/ta_LK.php index 52916fed774..383b4ef6f85 100644 --- a/apps/files/l10n/ta_LK.php +++ b/apps/files/l10n/ta_LK.php @@ -17,8 +17,6 @@ "replaced {new_name}" => "மாறà¯à®±à®ªà¯à®ªà®Ÿà¯à®Ÿà®¤à¯ {new_name}", "undo" => "à®®à¯à®©à¯ செயல௠நீகà¯à®•ம௠", "replaced {new_name} with {old_name}" => "{new_name} ஆனத௠{old_name} இனால௠மாறà¯à®±à®ªà¯à®ªà®Ÿà¯à®Ÿà®¤à¯", -"unshared {files}" => "பகிரபà¯à®ªà®Ÿà®¾à®¤à®¤à¯ {கோபà¯à®ªà¯à®•ளà¯}", -"deleted {files}" => "நீகà¯à®•பà¯à®ªà®Ÿà¯à®Ÿà®¤à¯ {கோபà¯à®ªà¯à®•ளà¯}", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "செலà¯à®²à¯à®ªà®Ÿà®¿à®¯à®±à¯à®± பெயரà¯,'\\', '/', '<', '>', ':', '\"', '|', '?' மறà¯à®±à¯à®®à¯ '*' ஆகியன அனà¯à®®à®¤à®¿à®•à¯à®•பà¯à®ªà®Ÿà®®à®¾à®Ÿà¯à®Ÿà®¾à®¤à¯.", "Unable to upload your file as it is a directory or has 0 bytes" => "அடைவ௠அலà¯à®²à®¤à¯ 0 bytes ஠கொணà¯à®Ÿà¯à®³à¯à®³à®¤à®¾à®²à¯ உஙà¯à®•ளà¯à®Ÿà¯ˆà®¯ கோபà¯à®ªà¯ˆ பதிவேறà¯à®± à®®à¯à®Ÿà®¿à®¯à®µà®¿à®²à¯à®²à¯ˆ", "Upload Error" => "பதிவேறà¯à®±à®²à¯ வழà¯", @@ -29,8 +27,6 @@ "Upload cancelled." => "பதிவேறà¯à®±à®²à¯ இரதà¯à®¤à¯ செயà¯à®¯à®ªà¯à®ªà®Ÿà¯à®Ÿà¯à®³à¯à®³à®¤à¯", "File upload is in progress. Leaving the page now will cancel the upload." => "கோபà¯à®ªà¯ பதிவேறà¯à®±à®®à¯ செயலà¯à®ªà®¾à®Ÿà¯à®Ÿà®¿à®²à¯ உளà¯à®³à®¤à¯. இநà¯à®¤à®ªà¯ பகà¯à®•தà¯à®¤à®¿à®²à®¿à®°à¯à®¨à¯à®¤à¯ வெறியேறà¯à®µà®¤à®¾à®©à®¤à¯ பதிவேறà¯à®±à®²à¯ˆ இரதà¯à®¤à¯ செயà¯à®¯à¯à®®à¯.", "URL cannot be empty." => "URL வெறà¯à®®à¯ˆà®¯à®¾à®• இரà¯à®•à¯à®•à®®à¯à®Ÿà®¿à®¯à®¾à®¤à¯.", -"{count} files scanned" => "{எணà¯à®£à®¿à®•à¯à®•ை} கோபà¯à®ªà¯à®•ள௠வரà¯à®Ÿà®ªà¯à®ªà®Ÿà¯à®Ÿà®¤à¯", -"error while scanning" => "வரà¯à®Ÿà¯à®®à¯ போதான வழà¯", "Name" => "பெயரà¯", "Size" => "அளவà¯", "Modified" => "மாறà¯à®±à®ªà¯à®ªà®Ÿà¯à®Ÿà®¤à¯", diff --git a/apps/files/l10n/th_TH.php b/apps/files/l10n/th_TH.php index d7fcd82a9d1..06dab9d8e6c 100644 --- a/apps/files/l10n/th_TH.php +++ b/apps/files/l10n/th_TH.php @@ -1,7 +1,4 @@ <?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" => "ยังไม่มีไฟล์ใดที่ถูà¸à¸à¸±à¸žà¹‚หลด เà¸à¸´à¸”ข้à¸à¸œà¸´à¸”พลาดที่ไม่ทราบสาเหตุ", "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", @@ -10,7 +7,7 @@ "No file was uploaded" => "ยังไม่มีไฟล์ที่ถูà¸à¸à¸±à¸žà¹‚หลด", "Missing a temporary folder" => "à¹à¸Ÿà¹‰à¸¡à¹€à¸à¸à¸ªà¸²à¸£à¸Šà¸±à¹ˆà¸§à¸„ราวเà¸à¸´à¸”à¸à¸²à¸£à¸ªà¸¹à¸à¸«à¸²à¸¢", "Failed to write to disk" => "เขียนข้à¸à¸¡à¸¹à¸¥à¸¥à¸‡à¹à¸œà¹ˆà¸™à¸”ิสà¸à¹Œà¸¥à¹‰à¸¡à¹€à¸«à¸¥à¸§", -"Not enough storage available" => "เหลืà¸à¸žà¸·à¹‰à¸™à¸—ี่ไม่เพียงสำหรับใช้งาน", +"Not enough space available" => "มีพื้นที่เหลืà¸à¹„ม่เพียงพà¸", "Invalid directory." => "ไดเร็à¸à¸—à¸à¸£à¸µà¹ˆà¹„ม่ถูà¸à¸•้à¸à¸‡", "Files" => "ไฟล์", "Unshare" => "ยà¸à¹€à¸¥à¸´à¸à¸à¸²à¸£à¹à¸Šà¸£à¹Œà¸‚้à¸à¸¡à¸¹à¸¥", @@ -23,8 +20,7 @@ "replaced {new_name}" => "à¹à¸—นที่ {new_name} à¹à¸¥à¹‰à¸§", "undo" => "เลิà¸à¸—ำ", "replaced {new_name} with {old_name}" => "à¹à¸—นที่ {new_name} ด้วย {old_name} à¹à¸¥à¹‰à¸§", -"unshared {files}" => "ยà¸à¹€à¸¥à¸´à¸à¸à¸²à¸£à¹à¸Šà¸£à¹Œà¹à¸¥à¹‰à¸§ {files} ไฟล์", -"deleted {files}" => "ลบไฟล์à¹à¸¥à¹‰à¸§ {files} ไฟล์", +"perform delete operation" => "ดำเนินà¸à¸²à¸£à¸•ามคำสั่งลบ", "'.' is an invalid file name." => "'.' เป็นชื่à¸à¹„ฟล์ที่ไม่ถูà¸à¸•้à¸à¸‡", "File name cannot be empty." => "ชื่à¸à¹„ฟล์ไม่สามารถเว้นว่างได้", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "ชื่à¸à¸—ี่ใช้ไม่ถูà¸à¸•้à¸à¸‡, '\\', '/', '<', '>', ':', '\"', '|', '?' à¹à¸¥à¸° '*' ไม่ได้รับà¸à¸™à¸¸à¸à¸²à¸•ให้ใช้งานได้", @@ -41,8 +37,6 @@ "File upload is in progress. Leaving the page now will cancel the upload." => "à¸à¸²à¸£à¸à¸±à¸žà¹‚หลดไฟล์à¸à¸³à¸¥à¸±à¸‡à¸à¸¢à¸¹à¹ˆà¹ƒà¸™à¸£à¸°à¸«à¸§à¹ˆà¸²à¸‡à¸”ำเนินà¸à¸²à¸£ à¸à¸²à¸£à¸à¸à¸à¸ˆà¸²à¸à¸«à¸™à¹‰à¸²à¹€à¸§à¹‡à¸šà¸™à¸µà¹‰à¸ˆà¸°à¸—ำให้à¸à¸²à¸£à¸à¸±à¸žà¹‚หลดถูà¸à¸¢à¸à¹€à¸¥à¸´à¸", "URL cannot be empty." => "URL ไม่สามารถเว้นว่างได้", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "ชื่à¸à¹‚ฟลเดà¸à¸£à¹Œà¹„ม่ถูà¸à¸•้à¸à¸‡ à¸à¸²à¸£à¹ƒà¸Šà¹‰à¸‡à¸²à¸™ 'à¹à¸Šà¸£à¹Œ' สงวนไว้สำหรับ Owncloud เท่านั้น", -"{count} files scanned" => "สà¹à¸à¸™à¹„ฟล์à¹à¸¥à¹‰à¸§ {count} ไฟล์", -"error while scanning" => "พบข้à¸à¸œà¸´à¸”พลาดในระหว่างà¸à¸²à¸£à¸ªà¹à¸à¸™à¹„ฟล์", "Name" => "ชื่à¸", "Size" => "ขนาด", "Modified" => "ปรับปรุงล่าสุด", @@ -63,11 +57,13 @@ "Text file" => "ไฟล์ข้à¸à¸„วาม", "Folder" => "à¹à¸Ÿà¹‰à¸¡à¹€à¸à¸à¸ªà¸²à¸£", "From link" => "จาà¸à¸¥à¸´à¸‡à¸à¹Œ", +"Trash" => "ถังขยะ", "Cancel upload" => "ยà¸à¹€à¸¥à¸´à¸à¸à¸²à¸£à¸à¸±à¸žà¹‚หลด", "Nothing in here. Upload something!" => "ยังไม่มีไฟล์ใดๆà¸à¸¢à¸¹à¹ˆà¸—ี่นี่ à¸à¸£à¸¸à¸“าà¸à¸±à¸žà¹‚หลดไฟล์!", "Download" => "ดาวน์โหลด", "Upload too large" => "ไฟล์ที่à¸à¸±à¸žà¹‚หลดมีขนาดใหà¸à¹ˆà¹€à¸à¸´à¸™à¹„ป", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "ไฟล์ที่คุณพยายามที่จะà¸à¸±à¸žà¹‚หลดมีขนาดเà¸à¸´à¸™à¸à¸§à¹ˆà¸²à¸‚นาดสูงสุดที่à¸à¸³à¸«à¸™à¸”ไว้ให้à¸à¸±à¸žà¹‚หลดได้สำหรับเซิร์ฟเวà¸à¸£à¹Œà¸™à¸µà¹‰", "Files are being scanned, please wait." => "ไฟล์à¸à¸³à¸¥à¸±à¸‡à¸à¸¢à¸¹à¹ˆà¸£à¸°à¸«à¸§à¹ˆà¸²à¸‡à¸à¸²à¸£à¸ªà¹à¸à¸™, à¸à¸£à¸¸à¸“ารà¸à¸ªà¸±à¸à¸„รู่.", -"Current scanning" => "ไฟล์ที่à¸à¸³à¸¥à¸±à¸‡à¸ªà¹à¸à¸™à¸à¸¢à¸¹à¹ˆà¸‚ณะนี้" +"Current scanning" => "ไฟล์ที่à¸à¸³à¸¥à¸±à¸‡à¸ªà¹à¸à¸™à¸à¸¢à¸¹à¹ˆà¸‚ณะนี้", +"Upgrading filesystem cache..." => "à¸à¸³à¸¥à¸±à¸‡à¸à¸±à¸žà¹€à¸à¸£à¸”หน่วยความจำà¹à¸„ชขà¸à¸‡à¸£à¸°à¸šà¸šà¹„ฟล์..." ); diff --git a/apps/files/l10n/tr.php b/apps/files/l10n/tr.php index 2eba20fd0ae..3412d8ad448 100644 --- a/apps/files/l10n/tr.php +++ b/apps/files/l10n/tr.php @@ -1,7 +1,4 @@ <?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", "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ı aşıldı.", @@ -10,6 +7,7 @@ "No file was uploaded" => "Hiç dosya yüklenmedi", "Missing a temporary folder" => "Geçici bir klasör eksik", "Failed to write to disk" => "Diske yazılamadı", +"Not enough space available" => "Yeterli disk alanı yok", "Invalid directory." => "Geçersiz dizin.", "Files" => "Dosyalar", "Unshare" => "Paylaşılmayan", @@ -22,8 +20,6 @@ "replaced {new_name}" => "deÄŸiÅŸtirilen {new_name}", "undo" => "geri al", "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ı.", "File name cannot be empty." => "Dosya adı boÅŸ olamaz.", "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.", "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.", -"{count} files scanned" => "{count} dosya tarandı", -"error while scanning" => "tararamada hata oluÅŸdu", "Name" => "Ad", "Size" => "Boyut", "Modified" => "DeÄŸiÅŸtirilme", diff --git a/apps/files/l10n/uk.php b/apps/files/l10n/uk.php index aafa035ea09..9831dfe0f8f 100644 --- a/apps/files/l10n/uk.php +++ b/apps/files/l10n/uk.php @@ -18,8 +18,6 @@ "replaced {new_name}" => "замінено {new_name}", "undo" => "відмінити", "replaced {new_name} with {old_name}" => "замінено {new_name} на {old_name}", -"unshared {files}" => "неопубліковано {files}", -"deleted {files}" => "видалено {files}", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "Ðевірне ім'Ñ, '\\', '/', '<', '>', ':', '\"', '|', '?' та '*' не дозволені.", "Unable to upload your file as it is a directory or has 0 bytes" => "Ðеможливо завантажити ваш файл тому, що він тека або файл розміром 0 байт", "Upload Error" => "Помилка завантаженнÑ", @@ -30,8 +28,6 @@ "Upload cancelled." => "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÑ€Ð²Ð°Ð½Ð¾.", "File upload is in progress. Leaving the page now will cancel the upload." => "ВиконуєтьÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ. Ð—Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ†Ñ–Ñ”Ñ— Ñторінки приведе до відміни завантаженнÑ.", "URL cannot be empty." => "URL не може бути пуÑтим.", -"{count} files scanned" => "{count} файлів проÑкановано", -"error while scanning" => "помилка при Ñкануванні", "Name" => "Ім'Ñ", "Size" => "Розмір", "Modified" => "Змінено", diff --git a/apps/files/l10n/vi.php b/apps/files/l10n/vi.php index ce4f3a7973f..0daf580a2f5 100644 --- a/apps/files/l10n/vi.php +++ b/apps/files/l10n/vi.php @@ -17,8 +17,6 @@ "replaced {new_name}" => "đã thay thế {new_name}", "undo" => "lùi lại", "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.", "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", @@ -29,8 +27,6 @@ "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.", "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", "Size" => "KÃch cỡ", "Modified" => "Thay đổi", diff --git a/apps/files/l10n/zh_CN.GB2312.php b/apps/files/l10n/zh_CN.GB2312.php index ae1b603369a..a38e2d3bc60 100644 --- a/apps/files/l10n/zh_CN.GB2312.php +++ b/apps/files/l10n/zh_CN.GB2312.php @@ -17,8 +17,6 @@ "replaced {new_name}" => "å·²æ›¿æ¢ {new_name}", "undo" => "撤销", "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", "Upload Error" => "ä¸Šä¼ é”™è¯¯", "Close" => "å…³é—", @@ -28,8 +26,6 @@ "Upload cancelled." => "ä¸Šä¼ å–æ¶ˆäº†", "File upload is in progress. Leaving the page now will cancel the upload." => "文件æ£åœ¨ä¸Šä¼ 。关é—页é¢ä¼šå–æ¶ˆä¸Šä¼ ã€‚", "URL cannot be empty." => "网å€ä¸èƒ½ä¸ºç©ºã€‚", -"{count} files scanned" => "{count} 个文件已扫æ", -"error while scanning" => "扫æå‡ºé”™", "Name" => "åå—", "Size" => "大å°", "Modified" => "修改日期", diff --git a/apps/files/l10n/zh_CN.php b/apps/files/l10n/zh_CN.php index 2e0f938dcd8..2491d645340 100644 --- a/apps/files/l10n/zh_CN.php +++ b/apps/files/l10n/zh_CN.php @@ -1,7 +1,4 @@ <?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" => "æ²¡æœ‰æ–‡ä»¶è¢«ä¸Šä¼ ã€‚æœªçŸ¥é”™è¯¯", "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所规定的值", @@ -10,6 +7,7 @@ "No file was uploaded" => "æ–‡ä»¶æ²¡æœ‰ä¸Šä¼ ", "Missing a temporary folder" => "缺少临时目录", "Failed to write to disk" => "写入ç£ç›˜å¤±è´¥", +"Not enough space available" => "没有足够å¯ç”¨ç©ºé—´", "Invalid directory." => "æ— æ•ˆæ–‡ä»¶å¤¹ã€‚", "Files" => "文件", "Unshare" => "å–æ¶ˆåˆ†äº«", @@ -22,8 +20,6 @@ "replaced {new_name}" => "æ›¿æ¢ {new_name}", "undo" => "撤销", "replaced {new_name} with {old_name}" => "已将 {old_name}æ›¿æ¢æˆ {new_name}", -"unshared {files}" => "å–æ¶ˆäº†å…±äº« {files}", -"deleted {files}" => "åˆ é™¤äº† {files}", "'.' is an invalid file name." => "'.' æ˜¯ä¸€ä¸ªæ— æ•ˆçš„æ–‡ä»¶å。", "File name cannot be empty." => "文件åä¸èƒ½ä¸ºç©ºã€‚", "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not allowed." => "æ— æ•ˆå称,'\\', '/', '<', '>', ':', '\"', '|', '?' å’Œ '*' ä¸è¢«å…许使用。", @@ -38,8 +34,6 @@ "File upload is in progress. Leaving the page now will cancel the upload." => "文件æ£åœ¨ä¸Šä¼ ä¸ã€‚现在离开æ¤é¡µä¼šå¯¼è‡´ä¸Šä¼ åŠ¨ä½œè¢«å–æ¶ˆã€‚", "URL cannot be empty." => "URLä¸èƒ½ä¸ºç©º", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "æ— æ•ˆæ–‡ä»¶å¤¹å。'共享' 是 Owncloud 预留的文件夹å。", -"{count} files scanned" => "{count} 个文件已扫æã€‚", -"error while scanning" => "æ‰«ææ—¶å‡ºé”™", "Name" => "åç§°", "Size" => "大å°", "Modified" => "修改日期", diff --git a/apps/files/l10n/zh_TW.php b/apps/files/l10n/zh_TW.php index 8d41a927355..104cb3a619f 100644 --- a/apps/files/l10n/zh_TW.php +++ b/apps/files/l10n/zh_TW.php @@ -1,7 +1,4 @@ <?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" => "沒有檔案被上傳。未知的錯誤。", "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 åƒæ•¸çš„è¨å®šï¼š", @@ -10,6 +7,7 @@ "No file was uploaded" => "無已上傳檔案", "Missing a temporary folder" => "éºå¤±æš«å˜è³‡æ–™å¤¾", "Failed to write to disk" => "寫入硬碟失敗", +"Not enough space available" => "æ²’æœ‰è¶³å¤ çš„å¯ç”¨ç©ºé–“", "Invalid directory." => "無效的資料夾。", "Files" => "檔案", "Unshare" => "å–æ¶ˆå…±äº«", @@ -22,11 +20,12 @@ "replaced {new_name}" => "å·²å–代 {new_name}", "undo" => "復原", "replaced {new_name} with {old_name}" => "使用 {new_name} å–代 {old_name}", -"unshared {files}" => "已喿¶ˆåˆ†äº« {files}", -"deleted {files}" => "已刪除 {files}", +"perform delete operation" => "進行刪除動作", "'.' is an invalid file name." => "'.' 是ä¸åˆæ³•的檔å。", "File name cannot be empty." => "檔åä¸èƒ½ç‚ºç©ºã€‚", "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" => "ç„¡æ³•ä¸Šå‚³æ‚¨çš„æª”æ¡ˆå› ç‚ºå®ƒå¯èƒ½æ˜¯ä¸€å€‹ç›®éŒ„或檔案大å°ç‚º0", "Upload Error" => "上傳發生錯誤", @@ -38,8 +37,6 @@ "File upload is in progress. Leaving the page now will cancel the upload." => "檔案上傳ä¸ã€‚離開æ¤é é¢å°‡æœƒå–消上傳。", "URL cannot be empty." => "URL ä¸èƒ½ç‚ºç©ºç™½.", "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" => "無效的資料夾å稱,'Shared' 的使用被 Owncloud ä¿ç•™", -"{count} files scanned" => "{count} 個檔案已掃æ", -"error while scanning" => "æŽƒææ™‚發生錯誤", "Name" => "å稱", "Size" => "大å°", "Modified" => "修改", @@ -60,11 +57,13 @@ "Text file" => "æ–‡å—æª”", "Folder" => "資料夾", "From link" => "從連çµ", +"Trash" => "回收ç’", "Cancel upload" => "å–æ¶ˆä¸Šå‚³", "Nothing in here. Upload something!" => "沒有任何æ±è¥¿ã€‚請上傳內容ï¼", "Download" => "下載", "Upload too large" => "上傳éŽå¤§", "The files you are trying to upload exceed the maximum size for file uploads on this server." => "您試圖上傳的檔案已超éŽä¼ºæœå™¨çš„æœ€å¤§æª”案大å°é™åˆ¶ã€‚ ", "Files are being scanned, please wait." => "æ£åœ¨æŽƒææª”案,請ç¨ç‰ã€‚", -"Current scanning" => "ç›®å‰æŽƒæ" +"Current scanning" => "ç›®å‰æŽƒæ", +"Upgrading filesystem cache..." => "æ£åœ¨æ›´æ–°æª”案系統快å–..." ); diff --git a/apps/files/settings.php b/apps/files/settings.php index ea730a5a727..8687f013137 100644 --- a/apps/files/settings.php +++ b/apps/files/settings.php @@ -32,7 +32,7 @@ OCP\Util::addscript( "files", "files" ); $dir = isset( $_GET['dir'] ) ? $_GET['dir'] : ''; $files = array(); -foreach( OC_Files::getdirectorycontent( $dir ) as $i ) { +foreach( \OC\Files\Filesystem::getDirectoryContent( $dir ) as $i ) { $i["date"] = date( $CONFIG_DATEFORMAT, $i["mtime"] ); $files[] = $i; } diff --git a/apps/files/templates/index.php b/apps/files/templates/index.php index b66b523ae38..2d4ed9ab2d9 100644 --- a/apps/files/templates/index.php +++ b/apps/files/templates/index.php @@ -35,6 +35,11 @@ <a href="#" class="svg" onclick="return false;"></a> </form> </div> + <?php if ($_['trash'] ): ?> + <div id="trash" class="button"> + <a><?php echo $l->t('Trash');?></a> + </div> + <?php endif; ?> <div id="uploadprogresswrapper"> <div id="uploadprogressbar"></div> <input type="button" class="stop" style="display:none" @@ -42,7 +47,6 @@ onclick="javascript:Files.cancelUploads();" /> </div> - </div> <div id="file_action_panel"></div> <?php else:?> diff --git a/apps/files/templates/part.breadcrumb.php b/apps/files/templates/part.breadcrumb.php index 7df2afc1f52..e506ba31f6a 100644 --- a/apps/files/templates/part.breadcrumb.php +++ b/apps/files/templates/part.breadcrumb.php @@ -1,10 +1,16 @@ +<?php if(count($_["breadcrumb"])):?> + <div class="crumb"> + <a href="<?php echo $_['baseURL'].urlencode($crumb['dir']); ?>"> + <img src="<?php echo OCP\image_path('core','places/home.svg');?>" /> + </a> + </div> +<?php endif;?> <?php for($i=0; $i<count($_["breadcrumb"]); $i++): $crumb = $_["breadcrumb"][$i]; $dir = str_replace('+', '%20', urlencode($crumb["dir"])); $dir = str_replace('%2F', '/', $dir); ?> <div class="crumb <?php if($i == count($_["breadcrumb"])-1) echo 'last';?> svg" - data-dir='<?php echo $dir;?>' - style='background-image:url("<?php echo OCP\image_path('core', 'breadcrumb.png');?>")'> + data-dir='<?php echo $dir;?>'> <a href="<?php echo $_['baseURL'].$dir; ?>"><?php echo OCP\Util::sanitizeHTML($crumb["name"]); ?></a> </div> -<?php endfor;
\ No newline at end of file +<?php endfor; diff --git a/apps/files/templates/part.list.php b/apps/files/templates/part.list.php index f3f06d61d66..3c6c5dbd267 100644 --- a/apps/files/templates/part.list.php +++ b/apps/files/templates/part.list.php @@ -13,7 +13,7 @@ $name = str_replace('%2F', '/', $name); $directory = str_replace('+', '%20', urlencode($file['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-type="<?php echo ($file['type'] == 'dir')?'dir':'file'?>" data-mime="<?php echo $file['mimetype']?>" @@ -28,7 +28,7 @@ > <?php if(!isset($_['readonly']) || !$_['readonly']): ?><input type="checkbox" /><?php endif; ?> <?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: ?> <a class="name" href="<?php echo $_['downloadURL'].$directory.'/'.$name; ?>" title=""> <?php endif; ?> @@ -61,4 +61,4 @@ </span> </td> </tr> -<?php endforeach;
\ No newline at end of file +<?php endforeach; diff --git a/apps/files/templates/upgrade.php b/apps/files/templates/upgrade.php new file mode 100644 index 00000000000..de6cc713028 --- /dev/null +++ b/apps/files/templates/upgrade.php @@ -0,0 +1,4 @@ +<div id="upgrade"> + <?php echo $l->t('Upgrading filesystem cache...');?> + <div id="progressbar" /> +</div> diff --git a/apps/files_encryption/l10n/es.php b/apps/files_encryption/l10n/es.php index 6a6f5510db6..2c6b650960a 100644 --- a/apps/files_encryption/l10n/es.php +++ b/apps/files_encryption/l10n/es.php @@ -1,9 +1,15 @@ <?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.", -"switched to client side encryption" => "Cambiar a encriptación en lado cliente", -"Change encryption password to login password" => "Cambie la clave de cifrado para ingresar su contraseña", +"switched to client side encryption" => "Cambiar a cifrado del lado del cliente", +"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.", -"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", "Exclude the following file types from encryption" => "Excluir del cifrado los siguientes tipos de archivo", "None" => "Ninguno" diff --git a/apps/files_encryption/l10n/es_AR.php b/apps/files_encryption/l10n/es_AR.php index 31898f50fde..5cf0b8e4adc 100644 --- a/apps/files_encryption/l10n/es_AR.php +++ b/apps/files_encryption/l10n/es_AR.php @@ -1,4 +1,15 @@ <?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", "Exclude the following file types from encryption" => "Exceptuar de la encriptación los siguientes tipos de archivo", "None" => "Ninguno" diff --git a/apps/files_encryption/l10n/fi_FI.php b/apps/files_encryption/l10n/fi_FI.php index 433ae890ef6..33756c2831f 100644 --- a/apps/files_encryption/l10n/fi_FI.php +++ b/apps/files_encryption/l10n/fi_FI.php @@ -1,4 +1,8 @@ <?php $TRANSLATIONS = array( +"Please check your passwords and try again." => "Tarkista salasanasi ja yritä uudelleen.", +"Choose encryption mode:" => "Choose encryption mode:", +"None (no encryption at all)" => "Ei mitään (ei lainkaan salausta)", +"Important: Once you selected an encryption mode there is no way to change it back" => "Tärkeä huomautus: Kun olet valinnut salaustatavan, sitä ei ole mahdollista vaihtaa", "Encryption" => "Salaus", "Exclude the following file types from encryption" => "Jätä seuraavat tiedostotyypit salaamatta", "None" => "Ei mitään" diff --git a/apps/files_encryption/l10n/ko.php b/apps/files_encryption/l10n/ko.php index 68d60c1ae30..901c41e12ec 100644 --- a/apps/files_encryption/l10n/ko.php +++ b/apps/files_encryption/l10n/ko.php @@ -1,4 +1,15 @@ <?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" => "암호화", "Exclude the following file types from encryption" => "ë‹¤ìŒ íŒŒì¼ í˜•ì‹ì€ 암호화하지 않ìŒ", "None" => "ì—†ìŒ" diff --git a/apps/files_encryption/l10n/lv.php b/apps/files_encryption/l10n/lv.php new file mode 100644 index 00000000000..7eb21037bb0 --- /dev/null +++ b/apps/files_encryption/l10n/lv.php @@ -0,0 +1,16 @@ +<?php $TRANSLATIONS = array( +"Please switch to your ownCloud client and change your encryption password to complete the conversion." => "LÅ«dzu, pÄrslÄ“dzieties uz savu ownCloud klientu un maniet savu Å¡ifrēšanas paroli, lai pabeigtu pÄrveidoÅ¡anu.", +"switched to client side encryption" => "PÄrslÄ“dzÄs uz klienta puses Å¡ifrēšanu", +"Change encryption password to login password" => "MainÄ«t Å¡ifrēšanas paroli uz ierakstīšanÄs paroli", +"Please check your passwords and try again." => "LÅ«dzu, pÄrbaudiet savas paroles un mēģiniet vÄ“lreiz.", +"Could not change your file encryption password to your login password" => "NevarÄ“ja mainÄ«t datņu Å¡ifrēšanas paroli uz ierakstīšanÄs paroli", +"Choose encryption mode:" => "IzvÄ“lieties Å¡ifrēšanas režīmu:", +"Client side encryption (most secure but makes it impossible to access your data from the web interface)" => "Klienta puses Å¡ifrēšana (visdroÅ¡ÄkÄ, bet nav iespÄ“jams piekļūt saviem datiem no tÄ«mekļa saskarnes)", +"Server side encryption (allows you to access your files from the web interface and the desktop client)" => "Servera puses Å¡ifrēšana (ļauj piekļūt datnÄ“m ar tÄ«mekļa saskarni un ar darbvirsmas klientu)", +"None (no encryption at all)" => "Nav (nekÄdas Å¡ifrēšanas)", +"Important: Once you selected an encryption mode there is no way to change it back" => "SvarÄ«gi — kad esat izvÄ“lÄ“jies Å¡ifrēšanas režīmu, to nekÄdi nevar mainÄ«t atpakaļ", +"User specific (let the user decide)" => "LietotÄjam specifiski (ļauj lietotÄjam izlemt)", +"Encryption" => "Å ifrēšana", +"Exclude the following file types from encryption" => "SekojoÅ¡os datņu tipus neÅ¡ifrÄ“t", +"None" => "Nav" +); diff --git a/apps/files_encryption/l10n/nl.php b/apps/files_encryption/l10n/nl.php index 7c09009cba9..02cb0d970f2 100644 --- a/apps/files_encryption/l10n/nl.php +++ b/apps/files_encryption/l10n/nl.php @@ -1,4 +1,11 @@ <?php $TRANSLATIONS = array( +"switched to client side encryption" => "overgeschakeld naar client side encryptie", +"Change encryption password to login password" => "Verander encryptie wachtwoord naar login wachtwoord", +"Please check your passwords and try again." => "Controleer uw wachtwoorden en probeer het opnieuw.", +"Could not change your file encryption password to your login password" => "Kon het bestandsencryptie wachtwoord niet veranderen naar het login wachtwoord", +"Choose encryption mode:" => "Kies encryptie mode:", +"None (no encryption at all)" => "Geen (zonder encryptie)", +"Important: Once you selected an encryption mode there is no way to change it back" => "Belangrijk: Zodra er voor een encryptie mode is gekozen kan deze niet meer worden gewijzigd.", "Encryption" => "Versleuteling", "Exclude the following file types from encryption" => "Versleutel de volgende bestand types niet", "None" => "Geen" diff --git a/apps/files_encryption/l10n/pt_BR.php b/apps/files_encryption/l10n/pt_BR.php index 086d073cf5c..8bd6492a8f7 100644 --- a/apps/files_encryption/l10n/pt_BR.php +++ b/apps/files_encryption/l10n/pt_BR.php @@ -1,4 +1,15 @@ <?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", "Exclude the following file types from encryption" => "Excluir os seguintes tipos de arquivo da criptografia", "None" => "Nenhuma" diff --git a/apps/files_encryption/l10n/ru_RU.php b/apps/files_encryption/l10n/ru_RU.php index 4321fb8a8a3..1149ac64f3e 100644 --- a/apps/files_encryption/l10n/ru_RU.php +++ b/apps/files_encryption/l10n/ru_RU.php @@ -1,4 +1,13 @@ <?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" => "Шифрование", "Exclude the following file types from encryption" => "ИÑключите Ñледующие типы файлов из шифрованиÑ", "None" => "Ðи один" diff --git a/apps/files_external/ajax/addRootCertificate.php b/apps/files_external/ajax/addRootCertificate.php index be60b415e1b..2f67e801b2c 100644 --- a/apps/files_external/ajax/addRootCertificate.php +++ b/apps/files_external/ajax/addRootCertificate.php @@ -12,8 +12,10 @@ $data = fread($fh, filesize($_FILES['rootcert_import']['tmp_name'])); fclose($fh); $filename = $_FILES['rootcert_import']['name']; -$view = new \OC_FilesystemView('/'.\OCP\User::getUser().'/files_external/uploads'); -if ( ! $view->file_exists('')) $view->mkdir(''); +$view = new \OC\Files\View('/'.\OCP\User::getUser().'/files_external/uploads'); +if (!$view->file_exists('')){ + $view->mkdir(''); +} $isValid = openssl_pkey_get_public($data); diff --git a/apps/files_external/appinfo/app.php b/apps/files_external/appinfo/app.php index 837d35c9c63..c58cfcd0f5e 100644 --- a/apps/files_external/appinfo/app.php +++ b/apps/files_external/appinfo/app.php @@ -6,14 +6,14 @@ * See the COPYING-README file. */ -OC::$CLASSPATH['OC_FileStorage_StreamWrapper']='apps/files_external/lib/streamwrapper.php'; -OC::$CLASSPATH['OC_Filestorage_FTP']='apps/files_external/lib/ftp.php'; -OC::$CLASSPATH['OC_Filestorage_DAV']='apps/files_external/lib/webdav.php'; -OC::$CLASSPATH['OC_Filestorage_Google']='apps/files_external/lib/google.php'; -OC::$CLASSPATH['OC_Filestorage_SWIFT']='apps/files_external/lib/swift.php'; -OC::$CLASSPATH['OC_Filestorage_SMB']='apps/files_external/lib/smb.php'; -OC::$CLASSPATH['OC_Filestorage_AmazonS3']='apps/files_external/lib/amazons3.php'; -OC::$CLASSPATH['OC_Filestorage_Dropbox']='apps/files_external/lib/dropbox.php'; +OC::$CLASSPATH['OC\Files\Storage\StreamWrapper']='apps/files_external/lib/streamwrapper.php'; +OC::$CLASSPATH['OC\Files\Storage\FTP']='apps/files_external/lib/ftp.php'; +OC::$CLASSPATH['OC\Files\Storage\DAV']='apps/files_external/lib/webdav.php'; +OC::$CLASSPATH['OC\Files\Storage\Google']='apps/files_external/lib/google.php'; +OC::$CLASSPATH['OC\Files\Storage\SWIFT']='apps/files_external/lib/swift.php'; +OC::$CLASSPATH['OC\Files\Storage\SMB']='apps/files_external/lib/smb.php'; +OC::$CLASSPATH['OC\Files\Storage\AmazonS3']='apps/files_external/lib/amazons3.php'; +OC::$CLASSPATH['OC\Files\Storage\Dropbox']='apps/files_external/lib/dropbox.php'; OC::$CLASSPATH['OC_Mount_Config']='apps/files_external/lib/config.php'; OCP\App::registerAdmin('files_external', 'settings'); diff --git a/apps/files_external/appinfo/info.xml b/apps/files_external/appinfo/info.xml index 3da1913c5fc..2c04216a9fb 100644 --- a/apps/files_external/appinfo/info.xml +++ b/apps/files_external/appinfo/info.xml @@ -5,7 +5,7 @@ <description>Mount external storage sources</description> <licence>AGPL</licence> <author>Robin Appelman, Michael Gapczynski</author> - <require>4.9</require> + <require>4.91</require> <shipped>true</shipped> <types> <filesystem/> diff --git a/apps/files_external/js/dropbox.js b/apps/files_external/js/dropbox.js index c1e38640708..cd3c957e0a8 100644 --- a/apps/files_external/js/dropbox.js +++ b/apps/files_external/js/dropbox.js @@ -1,6 +1,6 @@ $(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"]'); if ($(configured).val() == 'true') { $(this).find('.configuration input').attr('disabled', 'disabled'); @@ -36,9 +36,9 @@ $(document).ready(function() { } }); - $('#externalStorage tbody tr input').live('keyup', function() { + $('#externalStorage tbody').on('keyup', 'tr input', function() { 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'); 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) { @@ -52,7 +52,7 @@ $(document).ready(function() { } }); - $('.dropbox').live('click', function(event) { + $('.dropbox').on('click', function(event) { event.preventDefault(); var app_key = $(this).parent().find('[data-parameter="app_key"]').val(); var app_secret = $(this).parent().find('[data-parameter="app_secret"]').val(); diff --git a/apps/files_external/js/google.js b/apps/files_external/js/google.js index 0b3c314eb5d..9b7f9514f12 100644 --- a/apps/files_external/js/google.js +++ b/apps/files_external/js/google.js @@ -1,6 +1,6 @@ $(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"]'); if ($(configured).val() == 'true') { $(this).find('.configuration') @@ -33,8 +33,8 @@ $(document).ready(function() { } }); - $('#externalStorage tbody tr').live('change', function() { - if ($(this).hasClass('OC_Filestorage_Google') && $(this).find('[data-parameter="configured"]').val() != 'true') { + $('#externalStorage tbody').on('change', 'tr', function() { + if ($(this).hasClass('\\\\OC\\\\Files\\\\Storage\\\\Google') && $(this).find('[data-parameter="configured"]').val() != 'true') { if ($(this).find('.mountPoint input').val() != '') { if ($(this).find('.google').length == 0) { $(this).find('.configuration').append('<a class="button google">'+t('files_external', 'Grant access')+'</a>'); @@ -43,9 +43,9 @@ $(document).ready(function() { } }); - $('#externalStorage tbody tr .mountPoint input').live('keyup', function() { + $('#externalStorage tbody').on('keyup', 'tr .mountPoint input', function() { 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() != '') { $(tr).find('.google').show(); } else { @@ -54,7 +54,7 @@ $(document).ready(function() { } }); - $('.google').live('click', function(event) { + $('.google').on('click', function(event) { event.preventDefault(); var tr = $(this).parent().parent(); var configured = $(this).parent().find('[data-parameter="configured"]'); diff --git a/apps/files_external/js/settings.js b/apps/files_external/js/settings.js index 0dc983ca8ad..172ef097fbf 100644 --- a/apps/files_external/js/settings.js +++ b/apps/files_external/js/settings.js @@ -71,7 +71,7 @@ OC.MountConfig={ $(document).ready(function() { $('.chzn-select').chosen(); - $('#selectBackend').live('change', function() { + $('#selectBackend').on('change', function() { var tr = $(this).parent().parent(); $('#externalStorage tbody').append($(tr).clone()); $('#externalStorage tbody tr').last().find('.mountPoint input').val(''); @@ -100,7 +100,7 @@ $(document).ready(function() { 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']); } return false; @@ -135,11 +135,11 @@ $(document).ready(function() { return defaultMountPoint+append; } - $('#externalStorage td').live('change', function() { + $('#externalStorage').on('change', 'td', function() { OC.MountConfig.saveStorage($(this).parent()); }); - $('td.remove>img').live('click', function() { + $('td.remove>img').on('click', function() { var tr = $(this).parent().parent(); var mountPoint = $(tr).find('.mountPoint input').val(); if ( ! mountPoint) { diff --git a/apps/files_external/l10n/af_ZA.php b/apps/files_external/l10n/af_ZA.php new file mode 100644 index 00000000000..cf9b951828d --- /dev/null +++ b/apps/files_external/l10n/af_ZA.php @@ -0,0 +1,3 @@ +<?php $TRANSLATIONS = array( +"Users" => "Gebruikers" +); diff --git a/apps/files_external/l10n/fa.php b/apps/files_external/l10n/fa.php index b866201361a..5acf3eac5a5 100644 --- a/apps/files_external/l10n/fa.php +++ b/apps/files_external/l10n/fa.php @@ -1,5 +1,10 @@ <?php $TRANSLATIONS = array( +"External Storage" => "ØØ§Ùظه خارجی", +"Configuration" => "پیکربندی", +"Options" => "تنظیمات", +"Applicable" => "قابل اجرا", "Groups" => "گروه ها", "Users" => "کاربران", -"Delete" => "ØØ°Ù" +"Delete" => "ØØ°Ù", +"Enable User External Storage" => "ÙØ¹Ø§Ù„ سازی ØØ§Ùظه خارجی کاربر" ); diff --git a/apps/files_external/l10n/fi_FI.php b/apps/files_external/l10n/fi_FI.php index d7b16e0d3ee..8c7381db71d 100644 --- a/apps/files_external/l10n/fi_FI.php +++ b/apps/files_external/l10n/fi_FI.php @@ -4,6 +4,8 @@ "Grant access" => "Salli pääsy", "Fill out all required fields" => "Täytä kaikki vaaditut kentät", "Error configuring Google Drive storage" => "Virhe Google Drive levyn asetuksia tehtäessä", +"<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it." => "<b>Varoitus:</b> \"smbclient\" ei ole asennettuna. CIFS-/SMB-jakojen liittäminen ei ole mahdollista. Pyydä järjestelmän ylläpitäjää asentamaan smbclient.", +"<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>Varoitus:</b> PHP:n FTP-tuki ei ole käytössä tai sitä ei ole asennettu. FTP-jakojen liittäminen ei ole mahdollista. Pyydä järjestelmän ylläpitäjää ottamaan FTP-tuki käyttöön.", "External Storage" => "Erillinen tallennusväline", "Mount point" => "Liitospiste", "Backend" => "Taustaosa", diff --git a/apps/files_external/l10n/ko.php b/apps/files_external/l10n/ko.php index cb691cf5e3d..47b75f74b86 100644 --- a/apps/files_external/l10n/ko.php +++ b/apps/files_external/l10n/ko.php @@ -5,8 +5,8 @@ "Fill out all required fields" => "ëª¨ë“ í•„ìˆ˜ í•ëª©ì„ ìž…ë ¥í•˜ì‹ì‹œì˜¤", "Please provide a valid Dropbox app key and secret." => "올바른 Dropbox 앱 키와 암호를 ìž…ë ¥í•˜ì‹ì‹œì˜¤.", "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> 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> \"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 ê³µìœ ë¥¼ ë§ˆìš´íŠ¸í• ìˆ˜ 없습니다. 시스템 관리ìžì—게 설치를 ìš”ì²í•˜ì‹ì‹œì˜¤.", "External Storage" => "외부 ì €ìž¥ì†Œ", "Mount point" => "마운트 ì§€ì ", "Backend" => "백엔드", diff --git a/apps/files_external/l10n/lv.php b/apps/files_external/l10n/lv.php index 26452f98b01..ee53346fcde 100644 --- a/apps/files_external/l10n/lv.php +++ b/apps/files_external/l10n/lv.php @@ -1,5 +1,26 @@ <?php $TRANSLATIONS = array( +"Access granted" => "Piešķirta pieeja", +"Error configuring Dropbox storage" => "Kļūda, konfigurÄ“jot Dropbox krÄtuvi", +"Grant access" => "Piešķirt pieeju", +"Fill out all required fields" => "AizpildÄ«t visus pieprasÄ«tos laukus", +"Please provide a valid Dropbox app key and secret." => "LÅ«dzu, norÄdiet derÄ«gu Dropbox lietotnes atslÄ“gu un noslÄ“pumu.", +"Error configuring Google Drive storage" => "Kļūda, konfigurÄ“jot Google Drive krÄtuvi", +"<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares is not possible. Please ask your system administrator to install it." => "<b>BrÄ«dinÄjums:</b> nav uzinstalÄ“ts “smbclientâ€. Nevar montÄ“t CIFS/SMB koplietojumus. LÅ«dzu, vaicÄjiet savam sistÄ“mas administratoram, lai to uzinstalÄ“.", +"<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>BrÄ«dinÄjums: </b> uz PHP nav aktivÄ“ts vai instalÄ“ts FTP atbalsts. Nevar montÄ“t FTP koplietojumus. LÅ«dzu, vaicÄjiet savam sistÄ“mas administratoram, lai to uzinstalÄ“.", +"External Storage" => "Ä€rÄ“jÄ krÄtuve", +"Mount point" => "Montēšanas punkts", +"Backend" => "Aizmugure", +"Configuration" => "KonfigurÄcija", +"Options" => "Opcijas", +"Applicable" => "PiemÄ“rojams", +"Add mount point" => "Pievienot montēšanas punktu", +"None set" => "Neviens nav iestatÄ«ts", +"All Users" => "Visi lietotÄji", "Groups" => "Grupas", "Users" => "LietotÄji", -"Delete" => "IzdzÄ“st" +"Delete" => "DzÄ“st", +"Enable User External Storage" => "AktivÄ“t lietotÄja ÄrÄ“jo krÄtuvi", +"Allow users to mount their own external storage" => "Ä»aut lietotÄjiem montÄ“t paÅ¡iem savu ÄrÄ“jo krÄtuvi", +"SSL root certificates" => "SSL saknes sertifikÄti", +"Import Root Certificate" => "ImportÄ“t saknes sertifikÄtus" ); diff --git a/apps/files_external/l10n/pt_BR.php b/apps/files_external/l10n/pt_BR.php index 26e927a423e..85393954886 100644 --- a/apps/files_external/l10n/pt_BR.php +++ b/apps/files_external/l10n/pt_BR.php @@ -5,6 +5,8 @@ "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", "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", "Mount point" => "Ponto de montagem", "Backend" => "Backend", diff --git a/apps/files_external/l10n/sk_SK.php b/apps/files_external/l10n/sk_SK.php index 04d5e3c7ee4..0b6878a5427 100644 --- a/apps/files_external/l10n/sk_SK.php +++ b/apps/files_external/l10n/sk_SK.php @@ -5,6 +5,8 @@ "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", "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", "Mount point" => "PrÃpojný bod", "Backend" => "Backend", diff --git a/apps/files_external/lib/amazons3.php b/apps/files_external/lib/amazons3.php index e5ef4eb097c..494885a1dd3 100644 --- a/apps/files_external/lib/amazons3.php +++ b/apps/files_external/lib/amazons3.php @@ -1,39 +1,43 @@ <?php /** -* ownCloud -* -* @author Michael Gapczynski -* @copyright 2012 Michael Gapczynski mtgap@owncloud.com -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE -* License as published by the Free Software Foundation; either -* version 3 of the License, or any later version. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU AFFERO GENERAL PUBLIC LICENSE for more details. -* -* You should have received a copy of the GNU Affero General Public -* License along with this library. If not, see <http://www.gnu.org/licenses/>. -*/ + * ownCloud + * + * @author Michael Gapczynski + * @copyright 2012 Michael Gapczynski mtgap@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + */ + +namespace OC\Files\Storage; 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 $bucket; private $objects = array(); + private $id; private static $tempFiles = array(); // TODO options: storage class, encryption server side, encrypt before upload? 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']; } @@ -47,7 +51,7 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common { return $response; // This object could be a folder, a '/' must be at the end of the path } 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) { $this->objects[$path] = $response; return $response; @@ -57,6 +61,10 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common { return false; } + public function getId() { + return $this->id; + } + public function mkdir($path) { // Folders in Amazon S3 are 0 byte objects with a '/' at the end of the name if (substr($path, -1) != '/') { @@ -96,8 +104,8 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common { foreach ($response->body->CommonPrefixes as $object) { $files[] = basename($object->Prefix); } - OC_FakeDirStream::$dirs['amazons3'.$path] = $files; - return opendir('fakedir://amazons3'.$path); + \OC\Files\Stream\Dir::register('amazons3' . $path, $files); + return opendir('fakedir://amazons3' . $path); } return false; } @@ -107,15 +115,10 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common { $stat['size'] = $this->s3->get_bucket_filesize($this->bucket); $stat['atime'] = time(); $stat['mtime'] = $stat['atime']; - $stat['ctime'] = $stat['atime']; - } else { - $object = $this->getObject($path); - if ($object) { - $stat['size'] = $object['Size']; - $stat['atime'] = time(); - $stat['mtime'] = strtotime($object['LastModified']); - $stat['ctime'] = $stat['mtime']; - } + } else if ($object = $this->getObject($path)) { + $stat['size'] = $object['Size']; + $stat['atime'] = time(); + $stat['mtime'] = strtotime($object['LastModified']); } if (isset($stat)) { return $stat; @@ -166,7 +169,7 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common { switch ($mode) { case 'r': case 'rb': - $tmpFile = OC_Helper::tmpFile(); + $tmpFile = \OC_Helper::tmpFile(); $handle = fopen($tmpFile, 'w'); $response = $this->s3->get_object($this->bucket, $path, array('fileDownload' => $handle)); if ($response->isOK()) { @@ -190,14 +193,14 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common { } else { $ext = ''; } - $tmpFile = OC_Helper::tmpFile($ext); - OC_CloseStreamWrapper::$callBacks[$tmpFile] = array($this, 'writeBack'); + $tmpFile = \OC_Helper::tmpFile($ext); + \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack')); if ($this->file_exists($path)) { $source = $this->fopen($path, 'r'); file_put_contents($tmpFile, $source); } self::$tempFiles[$tmpFile] = $path; - return fopen('close://'.$tmpFile, $mode); + return fopen('close://' . $tmpFile, $mode); } return false; } @@ -206,8 +209,8 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common { if (isset(self::$tempFiles[$tmpFile])) { $handle = fopen($tmpFile, 'r'); $response = $this->s3->create_object($this->bucket, - self::$tempFiles[$tmpFile], - array('fileUpload' => $handle)); + self::$tempFiles[$tmpFile], + array('fileUpload' => $handle)); if ($response->isOK()) { unlink($tmpFile); } diff --git a/apps/files_external/lib/config.php b/apps/files_external/lib/config.php index fd3dc2ca0d0..6b0df21461b 100755 --- a/apps/files_external/lib/config.php +++ b/apps/files_external/lib/config.php @@ -38,20 +38,20 @@ class OC_Mount_Config { * @return array */ public static function getBackends() { - - $backends['OC_Filestorage_Local']=array( + + $backends['\OC\Files\Storage\Local']=array( 'backend' => 'Local', 'configuration' => array( 'datadir' => 'Location')); - $backends['OC_Filestorage_AmazonS3']=array( + $backends['\OC\Files\Storage\AmazonS3']=array( 'backend' => 'Amazon S3', 'configuration' => array( 'key' => 'Key', 'secret' => '*Secret', 'bucket' => 'Bucket')); - $backends['OC_Filestorage_Dropbox']=array( + $backends['\OC\Files\Storage\Dropbox']=array( 'backend' => 'Dropbox', 'configuration' => array( 'configured' => '#configured', @@ -61,7 +61,7 @@ class OC_Mount_Config { 'token_secret' => '#token_secret'), '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', 'configuration' => array( 'host' => 'URL', @@ -70,15 +70,15 @@ class OC_Mount_Config { 'root' => '&Root', 'secure' => '!Secure ftps://')); - $backends['OC_Filestorage_Google']=array( + $backends['\OC\Files\Storage\Google']=array( 'backend' => 'Google Drive', 'configuration' => array( 'configured' => '#configured', 'token' => '#token', 'token_secret' => '#token secret'), 'custom' => 'google'); - - $backends['OC_Filestorage_SWIFT']=array( + + $backends['\OC\Files\Storage\SWIFT']=array( 'backend' => 'OpenStack Swift', 'configuration' => array( 'host' => 'URL', @@ -86,8 +86,8 @@ class OC_Mount_Config { 'token' => '*Token', 'root' => '&Root', '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', 'configuration' => array( 'host' => 'URL', @@ -95,8 +95,8 @@ class OC_Mount_Config { 'password' => '*Password', 'share' => 'Share', 'root' => '&Root')); - - $backends['OC_Filestorage_DAV']=array( + + $backends['\OC\Files\Storage\DAV']=array( 'backend' => 'ownCloud / WebDAV', 'configuration' => array( 'host' => 'URL', @@ -120,6 +120,10 @@ class OC_Mount_Config { if (isset($mountPoints[self::MOUNT_TYPE_GROUP])) { foreach ($mountPoints[self::MOUNT_TYPE_GROUP] as $group => $mounts) { 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 $mountPoint = substr($mountPoint, 13); // Merge the mount point into the current mount points @@ -139,6 +143,10 @@ class OC_Mount_Config { if (isset($mountPoints[self::MOUNT_TYPE_USER])) { foreach ($mountPoints[self::MOUNT_TYPE_USER] as $user => $mounts) { 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 $mountPoint = substr($mountPoint, 13); // Merge the mount point into the current mount points @@ -169,6 +177,10 @@ class OC_Mount_Config { $personal = array(); if (isset($mountPoints[self::MOUNT_TYPE_USER][$uid])) { 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 $personal[substr($mountPoint, strlen($uid) + 8)] = array('class' => $mount['class'], 'backend' => $backends[$mount['class']]['backend'], @@ -179,22 +191,6 @@ class OC_Mount_Config { } /** - * 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 * @param string Mount point * @param string Backend class @@ -213,36 +209,11 @@ class OC_Mount_Config { if ($isPersonal) { // Verify that the mount point applies for the current user // 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; } - $view = new OC_FilesystemView('/'.OCP\User::getUser().'/files'); - self::addMountPointDirectory($view, ltrim($mountPoint, '/')); $mountPoint = '/'.$applicable.'/files/'.ltrim($mountPoint, '/'); } 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, '/'); } $mount = array($applicable => array($mountPoint => array('class' => $class, 'options' => $classOptions))); diff --git a/apps/files_external/lib/dropbox.php b/apps/files_external/lib/dropbox.php index 33ca14cab15..11644e4a2c8 100755 --- a/apps/files_external/lib/dropbox.php +++ b/apps/files_external/lib/dropbox.php @@ -20,12 +20,15 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +namespace OC\Files\Storage; + require_once 'Dropbox/autoload.php'; -class OC_Filestorage_Dropbox extends OC_Filestorage_Common { +class Dropbox extends \OC\Files\Storage\Common { private $dropbox; private $root; + private $id; private $metaData = array(); private static $tempFiles = array(); @@ -37,13 +40,14 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { && isset($params['token']) && isset($params['token_secret']) ) { + $this->id = 'dropbox::'.$params['app_key'] . $params['token']. '/' . $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']); - $this->dropbox = new Dropbox_API($oauth, 'dropbox'); + $this->dropbox = new \Dropbox_API($oauth, 'dropbox'); $this->mkdir(''); } 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) { try { $response = $this->dropbox->getMetaData($path); - } catch (Exception $exception) { - OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); + } catch (\Exception $exception) { + \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR); return false; } if ($response && isset($response['contents'])) { @@ -76,21 +80,25 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { $response = $this->dropbox->getMetaData($path, 'false'); $this->metaData[$path] = $response; return $response; - } catch (Exception $exception) { - OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); + } catch (\Exception $exception) { + \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR); return false; } } } } + public function getId(){ + return $this->id; + } + public function mkdir($path) { $path = $this->root.$path; try { $this->dropbox->createFolder($path); return true; - } catch (Exception $exception) { - OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); + } catch (\Exception $exception) { + \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR); return false; } } @@ -106,7 +114,7 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { foreach ($contents as $file) { $files[] = basename($file['path']); } - OC_FakeDirStream::$dirs['dropbox'.$path] = $files; + \OC\Files\Stream\Dir::register('dropbox'.$path, $files); return opendir('fakedir://dropbox'.$path); } return false; @@ -118,7 +126,6 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { $stat['size'] = $metaData['bytes']; $stat['atime'] = time(); $stat['mtime'] = (isset($metaData['modified'])) ? strtotime($metaData['modified']) : time(); - $stat['ctime'] = $stat['mtime']; return $stat; } return false; @@ -163,8 +170,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { try { $this->dropbox->delete($path); return true; - } catch (Exception $exception) { - OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); + } catch (\Exception $exception) { + \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR); return false; } } @@ -175,8 +182,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { try { $this->dropbox->move($path1, $path2); return true; - } catch (Exception $exception) { - OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); + } catch (\Exception $exception) { + \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR); return false; } } @@ -187,8 +194,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { try { $this->dropbox->copy($path1, $path2); return true; - } catch (Exception $exception) { - OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); + } catch (\Exception $exception) { + \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR); return false; } } @@ -198,13 +205,13 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { switch ($mode) { case 'r': case 'rb': - $tmpFile = OC_Helper::tmpFile(); + $tmpFile = \OC_Helper::tmpFile(); try { $data = $this->dropbox->getFile($path); file_put_contents($tmpFile, $data); return fopen($tmpFile, 'r'); - } catch (Exception $exception) { - OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); + } catch (\Exception $exception) { + \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR); return false; } case 'w': @@ -224,8 +231,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { } else { $ext = ''; } - $tmpFile = OC_Helper::tmpFile($ext); - OC_CloseStreamWrapper::$callBacks[$tmpFile] = array($this, 'writeBack'); + $tmpFile = \OC_Helper::tmpFile($ext); + \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack')); if ($this->file_exists($path)) { $source = $this->fopen($path, 'r'); file_put_contents($tmpFile, $source); @@ -242,8 +249,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { try { $this->dropbox->putFile(self::$tempFiles[$tmpFile], $handle); unlink($tmpFile); - } catch (Exception $exception) { - OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); + } catch (\Exception $exception) { + \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR); } } } @@ -264,8 +271,8 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { try { $info = $this->dropbox->getAccountInfo(); return $info['quota_info']['quota'] - $info['quota_info']['normal']; - } catch (Exception $exception) { - OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); + } catch (\Exception $exception) { + \OCP\Util::writeLog('files_external', $exception->getMessage(), \OCP\Util::ERROR); return false; } } diff --git a/apps/files_external/lib/ftp.php b/apps/files_external/lib/ftp.php index e796ae446bf..9a27b63323a 100644 --- a/apps/files_external/lib/ftp.php +++ b/apps/files_external/lib/ftp.php @@ -6,7 +6,9 @@ * 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 $user; 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 - * @param string path + * @param string $path * @return string */ 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; return $url; } - public function fopen($path, $mode) { + public function fopen($path,$mode) { + $this->init(); switch($mode) { case 'r': case 'rb': @@ -61,7 +68,7 @@ class OC_FileStorage_FTP extends OC_FileStorage_StreamWrapper{ case 'ab': //these are supported by the wrapper $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 'w+': case 'wb+': @@ -77,16 +84,18 @@ class OC_FileStorage_FTP extends OC_FileStorage_StreamWrapper{ $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)) { $this->getFile($path, $tmpFile); } self::$tempFiles[$tmpFile]=$path; - return fopen('close://'.$tmpFile, $mode); + return fopen('close://'.$tmpFile,$mode); } + return false; } public function writeBack($tmpFile) { + $this->init(); if (isset(self::$tempFiles[$tmpFile])) { $this->uploadFile($tmpFile, self::$tempFiles[$tmpFile]); unlink($tmpFile); diff --git a/apps/files_external/lib/google.php b/apps/files_external/lib/google.php index c836a5a07c0..7396c7e3f27 100644 --- a/apps/files_external/lib/google.php +++ b/apps/files_external/lib/google.php @@ -20,14 +20,17 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +namespace OC\Files\Storage; + require_once 'Google/common.inc.php'; -class OC_Filestorage_Google extends OC_Filestorage_Common { +class Google extends \OC\Files\Storage\Common { private $consumer; private $oauth_token; private $sig_method; private $entries; + private $id; 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_secret = isset($params['consumer_secret']) ? $params['consumer_secret'] : 'anonymous'; - $this->consumer = new OAuthConsumer($consumer_key, $consumer_secret); - $this->oauth_token = new OAuthToken($params['token'], $params['token_secret']); - $this->sig_method = new OAuthSignatureMethod_HMAC_SHA1(); + $this->id = 'google::' . $params['token']; + $this->consumer = new \OAuthConsumer($consumer_key, $consumer_secret); + $this->oauth_token = new \OAuthToken($params['token'], $params['token_secret']); + $this->sig_method = new \OAuthSignatureMethod_HMAC_SHA1(); $this->entries = array(); } 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); } $uri = preg_replace('/&/', '?', $tempStr, 1); - $request = OAuthRequest::from_consumer_and_token($this->consumer, + $request = \OAuthRequest::from_consumer_and_token($this->consumer, $this->oauth_token, $httpMethod, $uri, @@ -110,7 +114,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common { curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); } if ($isDownload) { - $tmpFile = OC_Helper::tmpFile(); + $tmpFile = \OC_Helper::tmpFile(); $handle = fopen($tmpFile, 'w'); 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) { $result = $this->sendRequest($feedUri, $httpMethod, $postData); if ($result) { - $dom = new DOMDocument(); + $dom = new \DOMDocument(); $dom->loadXML($result); return $dom; } @@ -194,6 +198,9 @@ class OC_Filestorage_Google extends OC_Filestorage_Common { } } + public function getId(){ + return $this->id; + } public function mkdir($path) { $collection = dirname($path); @@ -266,7 +273,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common { $this->entries[$name] = $entry; } } - OC_FakeDirStream::$dirs['google'.$path] = $files; + \OC\Files\Stream\Dir::register('google'.$path, $files); 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', // 'lastViewed')->item(0)->nodeValue); $stat['mtime'] = strtotime($entry->getElementsByTagName('updated')->item(0)->nodeValue); - $stat['ctime'] = strtotime($entry->getElementsByTagName('published')->item(0)->nodeValue); } } if (isset($stat)) { @@ -443,8 +449,8 @@ class OC_Filestorage_Google extends OC_Filestorage_Common { } else { $ext = ''; } - $tmpFile = OC_Helper::tmpFile($ext); - OC_CloseStreamWrapper::$callBacks[$tmpFile] = array($this, 'writeBack'); + $tmpFile = \OC_Helper::tmpFile($ext); + \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack')); if ($this->file_exists($path)) { $source = $this->fopen($path, 'r'); file_put_contents($tmpFile, $source); @@ -482,7 +488,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common { } if (isset($uploadUri) && $handle = fopen($path, 'r')) { $uploadUri .= '?convert=false'; - $mimetype = OC_Helper::getMimeType($path); + $mimetype = \OC_Helper::getMimeType($path); $size = filesize($path); $headers = array('X-Upload-Content-Type: ' => $mimetype, 'X-Upload-Content-Length: ' => $size); $postData = '<?xml version="1.0" encoding="UTF-8"?>'; @@ -590,4 +596,4 @@ class OC_Filestorage_Google extends OC_Filestorage_Common { } -}
\ No newline at end of file +} diff --git a/apps/files_external/lib/smb.php b/apps/files_external/lib/smb.php index 071a9cd5f95..96778b0b2e1 100644 --- a/apps/files_external/lib/smb.php +++ b/apps/files_external/lib/smb.php @@ -6,9 +6,11 @@ * See the COPYING-README file. */ +namespace OC\Files\Storage; + require_once 'smb4php/smb.php'; -class OC_FileStorage_SMB extends OC_FileStorage_StreamWrapper{ +class SMB extends \OC\Files\Storage\StreamWrapper{ private $password; private $user; private $host; @@ -30,14 +32,13 @@ class OC_FileStorage_SMB extends OC_FileStorage_StreamWrapper{ if ( ! $this->share || $this->share[0]!='/') { $this->share='/'.$this->share; } - if (substr($this->share, -1, 1)=='/') { - $this->share=substr($this->share, 0, -1); + if(substr($this->share, -1, 1)=='/') { + $this->share = substr($this->share,0,-1); } + } - //create the root folder if necesary - if ( ! $this->is_dir('')) { - $this->mkdir(''); - } + public function getId(){ + return 'smb::' . $this->user . '@' . $this->host . '/' . $this->share . '/' . $this->root; } 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 + * @param string $path * @param int $time * @return bool */ - public function hasUpdated($path, $time) { - if ( ! $path and $this->root=='/') { + public function hasUpdated($path,$time) { + $this->init(); + if(!$path and $this->root=='/') { // mtime doesn't work for shares, but giving the nature of the backend, // doing a full update is still just fast enough return true; diff --git a/apps/files_external/lib/streamwrapper.php b/apps/files_external/lib/streamwrapper.php index a386e333995..7c3ddcf8a2c 100644 --- a/apps/files_external/lib/streamwrapper.php +++ b/apps/files_external/lib/streamwrapper.php @@ -6,16 +6,33 @@ * 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); public function mkdir($path) { + $this->init(); return mkdir($this->constructUrl($path)); } public function rmdir($path) { - if ($this->file_exists($path)) { + $this->init(); + if($this->file_exists($path)) { $succes = rmdir($this->constructUrl($path)); clearstatcache(); return $succes; @@ -25,10 +42,12 @@ abstract class OC_FileStorage_StreamWrapper extends OC_Filestorage_Common{ } public function opendir($path) { + $this->init(); return opendir($this->constructUrl($path)); } public function filetype($path) { + $this->init(); return filetype($this->constructUrl($path)); } @@ -41,46 +60,54 @@ abstract class OC_FileStorage_StreamWrapper extends OC_Filestorage_Common{ } public function file_exists($path) { + $this->init(); return file_exists($this->constructUrl($path)); } public function unlink($path) { + $this->init(); $succes = unlink($this->constructUrl($path)); clearstatcache(); return $succes; } - public function fopen($path, $mode) { - return fopen($this->constructUrl($path), $mode); + public function fopen($path,$mode) { + $this->init(); + return fopen($this->constructUrl($path),$mode); } public function free_space($path) { return 0; } - public function touch($path, $mtime = null) { - if (is_null($mtime)) { - $fh = $this->fopen($path, 'a'); - fwrite($fh, ''); + public function touch($path,$mtime=null) { + $this->init(); + if(is_null($mtime)) { + $fh = $this->fopen($path,'a'); + fwrite($fh,''); fclose($fh); } else { return false;//not supported } } - public function getFile($path, $target) { - return copy($this->constructUrl($path), $target); + public function getFile($path,$target) { + $this->init(); + return copy($this->constructUrl($path),$target); } - public function uploadFile($path, $target) { - return copy($path, $this->constructUrl($target)); + public function uploadFile($path,$target) { + $this->init(); + return copy($path,$this->constructUrl($target)); } - public function rename($path1, $path2) { - return rename($this->constructUrl($path1), $this->constructUrl($path2)); + public function rename($path1,$path2) { + $this->init(); + return rename($this->constructUrl($path1),$this->constructUrl($path2)); } public function stat($path) { + $this->init(); return stat($this->constructUrl($path)); } diff --git a/apps/files_external/lib/swift.php b/apps/files_external/lib/swift.php index a071dfdbb03..cbf2007052b 100644 --- a/apps/files_external/lib/swift.php +++ b/apps/files_external/lib/swift.php @@ -6,24 +6,28 @@ * See the COPYING-README file. */ +namespace OC\Files\Storage; + 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 $root; private $user; private $token; private $secure; + private $ready = false; /** - * @var CF_Authentication auth + * @var \CF_Authentication auth */ private $auth; /** - * @var CF_Connection conn + * @var \CF_Connection conn */ private $conn; /** - * @var CF_Container rootContainer + * @var \CF_Container rootContainer */ private $rootContainer; @@ -35,18 +39,18 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ /** * translate directory path to container name - * @param string path + * @param string $path * @return string */ private function getContainerName($path) { - $path=trim(trim($this->root, '/')."/".$path, '/.'); + $path=trim(trim($this->root, '/') . "/".$path, '/.'); return str_replace('/', '\\', $path); } /** * get container by path - * @param string path - * @return CF_Container + * @param string $path + * @return \CF_Container */ private function getContainer($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)); $this->containers[$path]=$container; return $container; - } catch(NoSuchContainerException $e) { + } catch(\NoSuchContainerException $e) { return null; } } /** * create container - * @param string path - * @return CF_Container + * @param string $path + * @return \CF_Container */ private function createContainer($path) { if ($path=='' or $path=='/' or $path=='.') { @@ -89,8 +93,8 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ /** * get object by path - * @param string path - * @return CF_Object + * @param string $path + * @return \CF_Object */ private function getObject($path) { if (isset($this->objects[$path])) { @@ -107,7 +111,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ $obj=$container->get_object(basename($path)); $this->objects[$path]=$obj; return $obj; - } catch(NoSuchObjectException $e) { + } catch(\NoSuchObjectException $e) { return null; } } @@ -132,8 +136,8 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ /** * create object - * @param string path - * @return CF_Object + * @param string $path + * @return \CF_Object */ private function createObject($path) { $container=$this->getContainer(dirname($path)); @@ -154,7 +158,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ /** * check if container for path exists - * @param string path + * @param string $path * @return bool */ private function containerExists($path) { @@ -163,15 +167,15 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ /** * get the list of emulated sub containers - * @param CF_Container container + * @param \CF_Container $container * @return array */ private function getSubContainers($container) { - $tmpFile=OCP\Files::tmpFile(); + $tmpFile=\OCP\Files::tmpFile(); $obj=$this->getSubContainerFile($container); try { $obj->save_to_filename($tmpFile); - } catch(Exception $e) { + } catch(\Exception $e) { return array(); } $obj->save_to_filename($tmpFile); @@ -185,15 +189,15 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ /** * add an emulated sub container - * @param CF_Container container - * @param string name + * @param \CF_Container $container + * @param string $name * @return bool */ private function addSubContainer($container, $name) { if ( ! $name) { return false; } - $tmpFile=OCP\Files::tmpFile(); + $tmpFile=\OCP\Files::tmpFile(); $obj=$this->getSubContainerFile($container); try { $obj->save_to_filename($tmpFile); @@ -201,16 +205,15 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ foreach ($containers as &$sub) { $sub=trim($sub); } - if (array_search($name, $containers)!==false) { + if(array_search($name, $containers) !== false) { unlink($tmpFile); return false; } else { $fh=fopen($tmpFile, 'a'); - fwrite($fh, $name."\n"); + fwrite($fh,$name . "\n"); } - } catch(Exception $e) { - $containers=array(); - file_put_contents($tmpFile, $name."\n"); + } catch(\Exception $e) { + file_put_contents($tmpFile, $name . "\n"); } $obj->load_from_filename($tmpFile); @@ -220,20 +223,20 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ /** * remove an emulated sub container - * @param CF_Container container - * @param string name + * @param \CF_Container $container + * @param string $name * @return bool */ private function removeSubContainer($container, $name) { if ( ! $name) { return false; } - $tmpFile=OCP\Files::tmpFile(); + $tmpFile=\OCP\Files::tmpFile(); $obj=$this->getSubContainerFile($container); try { $obj->save_to_filename($tmpFile); $containers=file($tmpFile); - } catch (Exception $e) { + } catch (\Exception $e) { return false; } 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 - * @param CF_Container container - * @return CF_Object + * @param \CF_Container $container + * @return \CF_Object */ private function getSubContainerFile($container) { try { @@ -283,10 +286,19 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ if ( ! $this->root || $this->root[0]!='/') { $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->conn = new CF_Connection($this->auth); + $this->conn = new \CF_Connection($this->auth); if ( ! $this->containerExists('/')) { $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) { + $this->init(); if ($this->containerExists($path)) { return false; } else { @@ -306,7 +323,8 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ } public function rmdir($path) { - if ( ! $this->containerExists($path)) { + $this->init(); + if (!$this->containerExists($path)) { return false; } else { $this->emptyContainer($path); @@ -343,6 +361,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ } public function opendir($path) { + $this->init(); $container=$this->getContainer($path); $files=$this->getObjects($container); $i=array_search(self::SUBCONTAINER_FILE, $files); @@ -352,11 +371,12 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ $subContainers=$this->getSubContainers($container); $files=array_merge($files, $subContainers); $id=$this->getContainerName($path); - OC_FakeDirStream::$dirs[$id]=$files; + \OC\Files\Stream\Dir::register($id, $files); return opendir('fakedir://'.$id); } public function filetype($path) { + $this->init(); if ($this->containerExists($path)) { return 'dir'; } else { @@ -373,6 +393,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ } public function file_exists($path) { + $this->init(); if ($this->is_dir($path)) { return true; } else { @@ -381,6 +402,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ } public function file_get_contents($path) { + $this->init(); $obj=$this->getObject($path); if (is_null($obj)) { return false; @@ -389,6 +411,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ } public function file_put_contents($path, $content) { + $this->init(); $obj=$this->getObject($path); if (is_null($obj)) { $container=$this->getContainer(dirname($path)); @@ -402,6 +425,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ } public function unlink($path) { + $this->init(); if ($this->containerExists($path)) { return $this->rmdir($path); } @@ -415,6 +439,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ } public function fopen($path, $mode) { + $this->init(); switch($mode) { case 'r': case 'rb': @@ -440,7 +465,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ case 'c': case 'c+': $tmpFile=$this->getTmpFile($path); - OC_CloseStreamWrapper::$callBacks[$tmpFile]=array($this, 'writeBack'); + \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack')); self::$tempFiles[$tmpFile]=$path; return fopen('close://'.$tmpFile, $mode); } @@ -458,6 +483,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ } public function touch($path, $mtime=null) { + $this->init(); $obj=$this->getObject($path); if (is_null($obj)) { return false; @@ -472,6 +498,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ } public function rename($path1, $path2) { + $this->init(); $sourceContainer=$this->getContainer(dirname($path1)); $targetContainer=$this->getContainer(dirname($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) { + $this->init(); $sourceContainer=$this->getContainer(dirname($path1)); $targetContainer=$this->getContainer(dirname($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) { + $this->init(); $container=$this->getContainer($path); if ( ! is_null($container)) { return array( @@ -523,17 +552,19 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ } private function getTmpFile($path) { + $this->init(); $obj=$this->getObject($path); if ( ! is_null($obj)) { - $tmpFile=OCP\Files::tmpFile(); + $tmpFile=\OCP\Files::tmpFile(); $obj->save_to_filename($tmpFile); return $tmpFile; } else { - return OCP\Files::tmpFile(); + return \OCP\Files::tmpFile(); } } private function fromTmpFile($tmpFile, $path) { + $this->init(); $obj=$this->getObject($path); if (is_null($obj)) { $obj=$this->createObject($path); @@ -544,7 +575,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{ /** * remove custom mtime metadata - * @param CF_Object obj + * @param \CF_Object $obj */ private function resetMTime($obj) { if (isset($obj->metadata['Mtime'])) { diff --git a/apps/files_external/lib/webdav.php b/apps/files_external/lib/webdav.php index 920aefc12de..2a953ac63f4 100644 --- a/apps/files_external/lib/webdav.php +++ b/apps/files_external/lib/webdav.php @@ -6,14 +6,17 @@ * 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 $user; private $host; private $secure; private $root; + private $ready; /** - * @var Sabre_DAV_Client + * @var \Sabre_DAV_Client */ private $client; @@ -43,6 +46,13 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{ if (substr($this->root, -1, 1)!='/') { $this->root.='/'; } + } + + private function init(){ + if($this->ready){ + return; + } + $this->ready = true; $settings = array( 'baseUri' => $this->createBaseUri(), @@ -50,7 +60,7 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{ 'password' => $this->password, ); - $this->client = new Sabre_DAV_Client($settings); + $this->client = new \Sabre_DAV_Client($settings); $caview = \OCP\Files::getStorage('files_external'); if ($caview) { @@ -63,6 +73,10 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{ $this->mkdir(''); } + public function getId(){ + return 'webdav::' . $this->user . '@' . $this->host . '/' . $this->root; + } + private function createBaseUri() { $baseUri='http'; if ($this->secure) { @@ -73,40 +87,45 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{ } public function mkdir($path) { + $this->init(); $path=$this->cleanPath($path); return $this->simpleResponse('MKCOL', $path, null, 201); } public function rmdir($path) { + $this->init(); $path=$this->cleanPath($path); return $this->simpleResponse('DELETE', $path, null, 204); } public function opendir($path) { + $this->init(); $path=$this->cleanPath($path); try { $response=$this->client->propfind($path, array(), 1); $id=md5('webdav'.$this->root.$path); - OC_FakeDirStream::$dirs[$id]=array(); + $content = array(); $files=array_keys($response); array_shift($files);//the first entry is the current directory foreach ($files as $file) { $file = urldecode(basename($file)); - OC_FakeDirStream::$dirs[$id][]=$file; + $content[]=$file; } + \OC\Files\Stream\Dir::register($id, $content); return opendir('fakedir://'.$id); - } catch(Exception $e) { + } catch(\Exception $e) { return false; } } public function filetype($path) { + $this->init(); $path=$this->cleanPath($path); try { $response=$this->client->propfind($path, array('{DAV:}resourcetype')); $responseType=$response["{DAV:}resourcetype"]->resourceType; return (count($responseType)>0 and $responseType[0]=="{DAV:}collection")?'dir':'file'; - } catch(Exception $e) { + } catch(\Exception $e) { error_log($e->getMessage()); \OCP\Util::writeLog("webdav client", \OCP\Util::sanitizeHTML($e->getMessage()), \OCP\Util::ERROR); return false; @@ -122,20 +141,23 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{ } public function file_exists($path) { + $this->init(); $path=$this->cleanPath($path); try { $this->client->propfind($path, array('{DAV:}resourcetype')); return true;//no 404 exception - } catch(Exception $e) { + } catch(\Exception $e) { return false; } } 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); switch($mode) { case 'r': @@ -172,9 +194,9 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{ } else { $ext=''; } - $tmpFile=OCP\Files::tmpFile($ext); - OC_CloseStreamWrapper::$callBacks[$tmpFile]=array($this, 'writeBack'); - if ($this->file_exists($path)) { + $tmpFile = \OCP\Files::tmpFile($ext); + \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack')); + if($this->file_exists($path)) { $this->getFile($path, $tmpFile); } self::$tempFiles[$tmpFile]=$path; @@ -190,6 +212,7 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{ } public function free_space($path) { + $this->init(); $path=$this->cleanPath($path); try { $response=$this->client->propfind($path, array('{DAV:}quota-available-bytes')); @@ -198,12 +221,13 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{ } else { return 0; } - } catch(Exception $e) { + } catch(\Exception $e) { return 0; } } public function touch($path, $mtime=null) { + $this->init(); if (is_null($mtime)) { $mtime=time(); } @@ -211,12 +235,14 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{ $this->client->proppatch($path, array('{DAV:}lastmodified' => $mtime)); } - public function getFile($path, $target) { - $source=$this->fopen($path, 'r'); - file_put_contents($target, $source); + public function getFile($path,$target) { + $this->init(); + $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'); $curl = curl_init(); @@ -230,47 +256,46 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{ curl_close ($curl); } - public function rename($path1, $path2) { + public function rename($path1,$path2) { + $this->init(); $path1=$this->cleanPath($path1); $path2=$this->root.$this->cleanPath($path2); try { $this->client->request('MOVE', $path1, null, array('Destination'=>$path2)); return true; - } catch(Exception $e) { - echo $e; - echo 'fail'; + } catch(\Exception $e) { return false; } } - public function copy($path1, $path2) { + public function copy($path1,$path2) { + $this->init(); $path1=$this->cleanPath($path1); $path2=$this->root.$this->cleanPath($path2); try { $this->client->request('COPY', $path1, null, array('Destination'=>$path2)); return true; - } catch(Exception $e) { - echo $e; - echo 'fail'; + } catch(\Exception $e) { return false; } } public function stat($path) { + $this->init(); $path=$this->cleanPath($path); try { $response=$this->client->propfind($path, array('{DAV:}getlastmodified', '{DAV:}getcontentlength')); return array( 'mtime'=>strtotime($response['{DAV:}getlastmodified']), 'size'=>(int)isset($response['{DAV:}getcontentlength']) ? $response['{DAV:}getcontentlength'] : 0, - 'ctime'=>-1, ); - } catch(Exception $e) { + } catch(\Exception $e) { return array(); } } public function getMimeType($path) { + $this->init(); $path=$this->cleanPath($path); try { $response=$this->client->propfind($path, array('{DAV:}getcontenttype', '{DAV:}resourcetype')); @@ -283,7 +308,7 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{ } else { return false; } - } catch(Exception $e) { + } catch(\Exception $e) { 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); try { $response=$this->client->request($method, $path, $body); return $response['statusCode']==$expected; - } catch(Exception $e) { + } catch(\Exception $e) { return false; } } diff --git a/apps/files_external/personal.php b/apps/files_external/personal.php index 4215b28787e..268d1880232 100755 --- a/apps/files_external/personal.php +++ b/apps/files_external/personal.php @@ -24,7 +24,7 @@ OCP\Util::addScript('files_external', 'settings'); OCP\Util::addStyle('files_external', 'settings'); $backends = OC_Mount_Config::getBackends(); // Remove local storage -unset($backends['OC_Filestorage_Local']); +unset($backends['\OC\Files\Storage\Local']); $tmpl = new OCP\Template('files_external', 'settings'); $tmpl->assign('isAdminPage', false, false); $tmpl->assign('mounts', OC_Mount_Config::getPersonalMountPoints()); diff --git a/apps/files_external/tests/amazons3.php b/apps/files_external/tests/amazons3.php index 39f96fe8e55..6b3a942b5ba 100644 --- a/apps/files_external/tests/amazons3.php +++ b/apps/files_external/tests/amazons3.php @@ -20,7 +20,9 @@ * 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 $id; @@ -32,12 +34,12 @@ class Test_Filestorage_AmazonS3 extends Test_FileStorage { $this->markTestSkipped('AmazonS3 backend not configured'); } $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() { 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'])); if ($s3->delete_all_objects($this->id)) { $s3->delete_bucket($this->id); diff --git a/apps/files_external/tests/config.php b/apps/files_external/tests/config.php index ff16b1c1d8a..65127175ad7 100644 --- a/apps/files_external/tests/config.php +++ b/apps/files_external/tests/config.php @@ -8,7 +8,7 @@ return array( 'root'=>'/test', ), 'webdav'=>array( - 'run'=>false, + 'run'=>true, 'host'=>'localhost', 'user'=>'test', 'password'=>'test', @@ -30,7 +30,7 @@ return array( 'root'=>'/', ), 'smb'=>array( - 'run'=>false, + 'run'=>true, 'user'=>'test', 'password'=>'test', 'host'=>'localhost', diff --git a/apps/files_external/tests/dropbox.php b/apps/files_external/tests/dropbox.php index 304cb3ca38c..e4e598b06b0 100644 --- a/apps/files_external/tests/dropbox.php +++ b/apps/files_external/tests/dropbox.php @@ -6,7 +6,9 @@ * See the COPYING-README file. */ -class Test_Filestorage_Dropbox extends Test_FileStorage { +namespace Test\Files\Storage; + +class Dropbox extends Storage { private $config; public function setUp() { @@ -16,7 +18,7 @@ class Test_Filestorage_Dropbox extends Test_FileStorage { $this->markTestSkipped('Dropbox backend not configured'); } $this->config['dropbox']['root'] .= '/' . $id; //make sure we have an new empty folder to work in - $this->instance = new OC_Filestorage_Dropbox($this->config['dropbox']); + $this->instance = new \OC\Files\Storage\Dropbox($this->config['dropbox']); } public function tearDown() { diff --git a/apps/files_external/tests/ftp.php b/apps/files_external/tests/ftp.php index 91e4589ed18..923b5e39681 100644 --- a/apps/files_external/tests/ftp.php +++ b/apps/files_external/tests/ftp.php @@ -6,7 +6,9 @@ * See the COPYING-README file. */ -class Test_Filestorage_FTP extends Test_FileStorage { +namespace Test\Files\Storage; + +class FTP extends Storage { private $config; public function setUp() { @@ -16,12 +18,12 @@ class Test_Filestorage_FTP extends Test_FileStorage { $this->markTestSkipped('FTP backend not configured'); } $this->config['ftp']['root'] .= '/' . $id; //make sure we have an new empty folder to work in - $this->instance = new OC_Filestorage_FTP($this->config['ftp']); + $this->instance = new \OC\Files\Storage\FTP($this->config['ftp']); } public function tearDown() { if ($this->instance) { - OCP\Files::rmdirr($this->instance->constructUrl('')); + \OCP\Files::rmdirr($this->instance->constructUrl('')); } } diff --git a/apps/files_external/tests/google.php b/apps/files_external/tests/google.php index 379bf992ff5..f344163a8b9 100644 --- a/apps/files_external/tests/google.php +++ b/apps/files_external/tests/google.php @@ -20,8 +20,9 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ -class Test_Filestorage_Google extends Test_FileStorage { +namespace Test\Files\Storage; +class Google extends Storage { private $config; public function setUp() { @@ -31,7 +32,7 @@ class Test_Filestorage_Google extends Test_FileStorage { $this->markTestSkipped('Google backend not configured'); } $this->config['google']['root'] .= '/' . $id; //make sure we have an new empty folder to work in - $this->instance = new OC_Filestorage_Google($this->config['google']); + $this->instance = new \OC\Files\Storage\Google($this->config['google']); } public function tearDown() { diff --git a/apps/files_external/tests/smb.php b/apps/files_external/tests/smb.php index 2d6268ef269..be3ea5a8308 100644 --- a/apps/files_external/tests/smb.php +++ b/apps/files_external/tests/smb.php @@ -6,7 +6,10 @@ * See the COPYING-README file. */ -class Test_Filestorage_SMB extends Test_FileStorage { +namespace Test\Files\Storage; + +class SMB extends Storage { + private $config; public function setUp() { @@ -16,12 +19,12 @@ class Test_Filestorage_SMB extends Test_FileStorage { $this->markTestSkipped('Samba backend not configured'); } $this->config['smb']['root'] .= $id; //make sure we have an new empty folder to work in - $this->instance = new OC_Filestorage_SMB($this->config['smb']); + $this->instance = new \OC\Files\Storage\SMB($this->config['smb']); } public function tearDown() { if ($this->instance) { - OCP\Files::rmdirr($this->instance->constructUrl('')); + \OCP\Files::rmdirr($this->instance->constructUrl('')); } } } diff --git a/apps/files_external/tests/swift.php b/apps/files_external/tests/swift.php index 8b25db50996..5c782840246 100644 --- a/apps/files_external/tests/swift.php +++ b/apps/files_external/tests/swift.php @@ -6,7 +6,9 @@ * See the COPYING-README file. */ -class Test_Filestorage_SWIFT extends Test_FileStorage { +namespace Test\Files\Storage; + +class SWIFT extends Storage { private $config; public function setUp() { @@ -16,7 +18,7 @@ class Test_Filestorage_SWIFT extends Test_FileStorage { $this->markTestSkipped('OpenStack SWIFT backend not configured'); } $this->config['swift']['root'] .= '/' . $id; //make sure we have an new empty folder to work in - $this->instance = new OC_Filestorage_SWIFT($this->config['swift']); + $this->instance = new \OC\Files\Storage\SWIFT($this->config['swift']); } diff --git a/apps/files_external/tests/webdav.php b/apps/files_external/tests/webdav.php index dd938a0c93a..1702898045e 100644 --- a/apps/files_external/tests/webdav.php +++ b/apps/files_external/tests/webdav.php @@ -6,7 +6,10 @@ * See the COPYING-README file. */ -class Test_Filestorage_DAV extends Test_FileStorage { +namespace Test\Files\Storage; + +class DAV extends Storage { + private $config; public function setUp() { @@ -16,7 +19,7 @@ class Test_Filestorage_DAV extends Test_FileStorage { $this->markTestSkipped('WebDAV backend not configured'); } $this->config['webdav']['root'] .= '/' . $id; //make sure we have an new empty folder to work in - $this->instance = new OC_Filestorage_DAV($this->config['webdav']); + $this->instance = new \OC\Files\Storage\DAV($this->config['webdav']); } public function tearDown() { diff --git a/apps/files_sharing/appinfo/app.php b/apps/files_sharing/appinfo/app.php index 0104d0d017f..d3e05cc62d8 100644 --- a/apps/files_sharing/appinfo/app.php +++ b/apps/files_sharing/appinfo/app.php @@ -2,8 +2,11 @@ OC::$CLASSPATH['OC_Share_Backend_File'] = "apps/files_sharing/lib/share/file.php"; OC::$CLASSPATH['OC_Share_Backend_Folder'] = 'apps/files_sharing/lib/share/folder.php'; -OC::$CLASSPATH['OC_Filestorage_Shared'] = "apps/files_sharing/lib/sharedstorage.php"; -OCP\Util::connectHook('OC_Filesystem', 'setup', 'OC_Filestorage_Shared', 'setup'); +OC::$CLASSPATH['OC\Files\Storage\Shared'] = "apps/files_sharing/lib/sharedstorage.php"; +OC::$CLASSPATH['OC\Files\Cache\Shared_Cache'] = 'apps/files_sharing/lib/cache.php'; +OC::$CLASSPATH['OC\Files\Cache\Shared_Permissions'] = 'apps/files_sharing/lib/permissions.php'; +OC::$CLASSPATH['OC\Files\Cache\Shared_Watcher'] = 'apps/files_sharing/lib/watcher.php'; +OCP\Util::connectHook('OC_Filesystem', 'setup', '\OC\Files\Storage\Shared', 'setup'); OCP\Share::registerBackend('file', 'OC_Share_Backend_File'); OCP\Share::registerBackend('folder', 'OC_Share_Backend_Folder', 'file'); -OCP\Util::addScript('files_sharing', 'share');
\ No newline at end of file +OCP\Util::addScript('files_sharing', 'share'); diff --git a/apps/files_sharing/appinfo/info.xml b/apps/files_sharing/appinfo/info.xml index a44d0338bb6..1f24a4dde83 100644 --- a/apps/files_sharing/appinfo/info.xml +++ b/apps/files_sharing/appinfo/info.xml @@ -5,7 +5,7 @@ <description>File sharing between users</description> <licence>AGPL</licence> <author>Michael Gapczynski</author> - <require>4.9</require> + <require>4.91</require> <shipped>true</shipped> <default_enable/> <types> diff --git a/apps/files_sharing/appinfo/update.php b/apps/files_sharing/appinfo/update.php index e998626f4a4..1d22b32b503 100644 --- a/apps/files_sharing/appinfo/update.php +++ b/apps/files_sharing/appinfo/update.php @@ -9,10 +9,12 @@ if (version_compare($installedVersion, '0.3', '<')) { OC_User::useBackend(new OC_User_Database()); OC_Group::useBackend(new OC_Group_Database()); OC_App::loadApps(array('authentication')); + $rootView = new \OC\Files\View(''); while ($row = $result->fetchRow()) { - $itemSource = OC_FileCache::getId($row['source'], ''); + $meta = $rootView->getFileInfo($$row['source']); + $itemSource = $meta['fileid']; if ($itemSource != -1) { - $file = OC_FileCache::get($row['source'], ''); + $file = $meta; if ($file['mimetype'] == 'httpd/unix-directory') { $itemType = 'folder'; } else { @@ -68,6 +70,6 @@ if (version_compare($installedVersion, '0.3.3', '<')) { OC_App::loadApps(array('authentication')); $users = OC_User::getUsers(); foreach ($users as $user) { - OC_FileCache::delete('Shared', '/'.$user.'/files/'); +// OC_FileCache::delete('Shared', '/'.$user.'/files/'); } -}
\ No newline at end of file +} diff --git a/apps/files_sharing/l10n/af_ZA.php b/apps/files_sharing/l10n/af_ZA.php new file mode 100644 index 00000000000..344585a62fc --- /dev/null +++ b/apps/files_sharing/l10n/af_ZA.php @@ -0,0 +1,4 @@ +<?php $TRANSLATIONS = array( +"Password" => "Wagwoord", +"web services under your control" => "webdienste onder jou beheer" +); diff --git a/apps/files_sharing/l10n/fa.php b/apps/files_sharing/l10n/fa.php index 06e1862e8b3..4313acae1ad 100644 --- a/apps/files_sharing/l10n/fa.php +++ b/apps/files_sharing/l10n/fa.php @@ -1,6 +1,9 @@ <?php $TRANSLATIONS = array( -"Size" => "اندازه", -"Modified" => "تاریخ", -"Delete all" => "ØØ°Ù همه", -"Delete" => "ØØ°Ù" +"Password" => "گذرواژه", +"Submit" => "ثبت", +"%s shared the folder %s with you" => "%sپوشه %s را با شما به اشتراک گذاشت", +"%s shared the file %s with you" => "%sÙØ§ÛŒÙ„ %s را با شما به اشتراک گذاشت", +"Download" => "دانلود", +"No preview available for" => "هیچگونه پیش نمایشی موجود نیست", +"web services under your control" => "سرویس های ØªØØª وب در کنترل شما" ); diff --git a/apps/files_sharing/l10n/lv.php b/apps/files_sharing/l10n/lv.php new file mode 100644 index 00000000000..0b224867089 --- /dev/null +++ b/apps/files_sharing/l10n/lv.php @@ -0,0 +1,9 @@ +<?php $TRANSLATIONS = array( +"Password" => "Parole", +"Submit" => "Iesniegt", +"%s shared the folder %s with you" => "%s ar jums dalÄ«jÄs ar mapi %s", +"%s shared the file %s with you" => "%s ar jums dalÄ«jÄs ar datni %s", +"Download" => "LejupielÄdÄ“t", +"No preview available for" => "Nav pieejams priekÅ¡skatÄ«jums priekÅ¡", +"web services under your control" => "jÅ«su vadÄ«bÄ esoÅ¡ie tÄ«mekļa servisi" +); diff --git a/apps/files_sharing/lib/cache.php b/apps/files_sharing/lib/cache.php new file mode 100644 index 00000000000..9655e447875 --- /dev/null +++ b/apps/files_sharing/lib/cache.php @@ -0,0 +1,258 @@ +<?php +/** + * ownCloud + * + * @author Michael Gapczynski + * @copyright 2012 Michael Gapczynski mtgap@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + */ + +namespace OC\Files\Cache; + +/** + * Metadata cache for shared files + * + * don't use this class directly if you need to get metadata, use \OC\Files\Filesystem::getFileInfo instead + */ +class Shared_Cache extends Cache { + + private $files = array(); + + public function __construct($storage) { + + } + + /** + * @brief Get the source cache of a shared file or folder + * @param string $target Shared target file path + * @return \OC\Files\Cache\Cache + */ + private function getSourceCache($target) { + $source = \OC_Share_Backend_File::getSource($target); + if (isset($source['path'])) { + $source['path'] = '/' . $source['uid_owner'] . '/' . $source['path']; + \OC\Files\Filesystem::initMountPoints($source['uid_owner']); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source['path']); + if ($storage) { + $this->files[$target] = $internalPath; + $cache = $storage->getCache(); + $this->storageId = $storage->getId(); + $this->numericId = $cache->getNumericStorageId(); + return $cache; + } + } + return false; + } + + /** + * get the stored metadata of a file or folder + * + * @param string/int $file + * @return array + */ + public function get($file) { + if ($file == '') { + return \OCP\Share::getItemsSharedWith('file', \OC_Share_Backend_File::FORMAT_FILE_APP_ROOT); + } else if (is_string($file)) { + if ($cache = $this->getSourceCache($file)) { + return $cache->get($this->files[$file]); + } + } else { + $query = \OC_DB::prepare( + 'SELECT `fileid`, `storage`, `path`, `parent`, `name`, `mimetype`, `mimepart`, `size`, `mtime`, `encrypted` + FROM `*PREFIX*filecache` WHERE `fileid` = ?'); + $result = $query->execute(array($file)); + $data = $result->fetchRow(); + $data['fileid'] = (int)$data['fileid']; + $data['size'] = (int)$data['size']; + $data['mtime'] = (int)$data['mtime']; + $data['encrypted'] = (bool)$data['encrypted']; + $data['mimetype'] = $this->getMimetype($data['mimetype']); + $data['mimepart'] = $this->getMimetype($data['mimepart']); + return $data; + } + return false; + } + + /** + * get the metadata of all files stored in $folder + * + * @param string $folder + * @return array + */ + public function getFolderContents($folder) { + if ($folder == '') { + $files = \OCP\Share::getItemsSharedWith('file', \OC_Share_Backend_File::FORMAT_GET_FOLDER_CONTENTS); + foreach ($files as &$file) { + $file['mimetype'] = $this->getMimetype($file['mimetype']); + $file['mimepart'] = $this->getMimetype($file['mimepart']); + } + return $files; + } else { + if ($cache = $this->getSourceCache($folder)) { + return $cache->getFolderContents($this->files[$folder]); + } + } + return false; + } + + /** + * store meta data for a file or folder + * + * @param string $file + * @param array $data + * + * @return int file id + */ + public function put($file, array $data) { + if ($cache = $this->getSourceCache($file)) { + return $cache->put($this->files[$file], $data); + } + return false; + } + + /** + * get the file id for a file + * + * @param string $file + * @return int + */ + public function getId($file) { + if ($cache = $this->getSourceCache($file)) { + return $cache->getId($this->files[$file]); + } + return -1; + } + + /** + * check if a file is available in the cache + * + * @param string $file + * @return bool + */ + public function inCache($file) { + if ($file == '') { + return true; + } + return parent::inCache($file); + } + + /** + * remove a file or folder from the cache + * + * @param string $file + */ + public function remove($file) { + if ($cache = $this->getSourceCache($file)) { + $cache->remove($this->files[$file]); + } + } + + /** + * Move a file or folder in the cache + * + * @param string $source + * @param string $target + */ + public function move($source, $target) { + if ($cache = $this->getSourceCache($source)) { + $targetPath = \OC_Share_Backend_File::getSourcePath(dirname($target)); + if ($targetPath) { + $targetPath .= '/' . basename($target); + $cache->move($this->files[$source], $targetPath); + } + + } + } + + /** + * remove all entries for files that are stored on the storage from the cache + */ + public function clear() { + // Not a valid action for Shared Cache + } + + /** + * @param string $file + * + * @return int, Cache::NOT_FOUND, Cache::PARTIAL, Cache::SHALLOW or Cache::COMPLETE + */ + public function getStatus($file) { + if ($file == '') { + return self::COMPLETE; + } + if ($cache = $this->getSourceCache($file)) { + return $cache->getStatus($this->files[$file]); + } + return self::NOT_FOUND; + } + + /** + * search for files matching $pattern + * + * @param string $pattern + * @return array of file data + */ + public function search($pattern) { + // TODO + } + + /** + * search for files by mimetype + * + * @param string $part1 + * @param string $part2 + * @return array + */ + public function searchByMime($mimetype) { + if (strpos($mimetype, '/')) { + $where = '`mimetype` = ?'; + } else { + $where = '`mimepart` = ?'; + } + $mimetype = $this->getMimetypeId($mimetype); + $ids = $this->getAll(); + $placeholders = join(',', array_fill(0, count($ids), '?')); + $query = \OC_DB::prepare(' + SELECT `fileid`, `storage`, `path`, `parent`, `name`, `mimetype`, `mimepart`, `size`, `mtime`, `encrypted` + FROM `*PREFIX*filecache` WHERE ' . $where . ' AND `fileid` IN (' . $placeholders . ')' + ); + $result = $query->execute(array_merge(array($mimetype), $ids)); + return $result->fetchAll(); + } + + /** + * get the size of a folder and set it in the cache + * + * @param string $path + * @return int + */ + public function calculateFolderSize($path) { + if ($cache = $this->getSourceCache($path)) { + return $cache->calculateFolderSize($this->files[$path]); + } + return 0; + } + + /** + * get all file ids on the files on the storage + * + * @return int[] + */ + public function getAll() { + return \OCP\Share::getItemsSharedWith('file', \OC_Share_Backend_File::FORMAT_GET_ALL); + } + +} diff --git a/apps/files_sharing/lib/permissions.php b/apps/files_sharing/lib/permissions.php new file mode 100644 index 00000000000..2b068ff9350 --- /dev/null +++ b/apps/files_sharing/lib/permissions.php @@ -0,0 +1,85 @@ +<?php +/** +* ownCloud +* +* @author Michael Gapczynski +* @copyright 2012 Michael Gapczynski mtgap@owncloud.com +* +* This library is free software; you can redistribute it and/or +* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE +* License as published by the Free Software Foundation; either +* version 3 of the License, or any later version. +* +* This library is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU AFFERO GENERAL PUBLIC LICENSE for more details. +* +* You should have received a copy of the GNU Affero General Public +* License along with this library. If not, see <http://www.gnu.org/licenses/>. +*/ +namespace OC\Files\Cache; + +class Shared_Permissions extends Permissions { + + /** + * get the permissions for a single file + * + * @param int $fileId + * @param string $user + * @return int (-1 if file no permissions set) + */ + public function get($fileId, $user) { + if ($fileId == -1) { + return \OCP\PERMISSION_READ; + } + $source = \OCP\Share::getItemSharedWithBySource('file', $fileId, \OC_Share_Backend_File::FORMAT_SHARED_STORAGE, null, true); + if ($source) { + return $source['permissions']; + } else { + return -1; + } + } + + /** + * set the permissions of a file + * + * @param int $fileId + * @param string $user + * @param int $permissions + */ + public function set($fileId, $user, $permissions) { + // Not a valid action for Shared Permissions + } + + /** + * get the permissions of multiply files + * + * @param int[] $fileIds + * @param string $user + * @return int[] + */ + public function getMultiple($fileIds, $user) { + if (count($fileIds) === 0) { + return array(); + } + foreach ($fileIds as $fileId) { + $filePermissions[$fileId] = self::get($fileId, $user); + } + return $filePermissions; + } + + /** + * remove the permissions for a file + * + * @param int $fileId + * @param string $user + */ + public function remove($fileId, $user) { + // Not a valid action for Shared Permissions + } + + public function removeMultiple($fileIds, $user) { + // Not a valid action for Shared Permissions + } +} diff --git a/apps/files_sharing/lib/share/file.php b/apps/files_sharing/lib/share/file.php index ac585236831..6d3c55a008f 100644 --- a/apps/files_sharing/lib/share/file.php +++ b/apps/files_sharing/lib/share/file.php @@ -22,16 +22,18 @@ class OC_Share_Backend_File implements OCP\Share_Backend_File_Dependent { const FORMAT_SHARED_STORAGE = 0; - const FORMAT_FILE_APP = 1; + const FORMAT_GET_FOLDER_CONTENTS = 1; const FORMAT_FILE_APP_ROOT = 2; const FORMAT_OPENDIR = 3; + const FORMAT_GET_ALL = 4; private $path; public function isValidSource($itemSource, $uidOwner) { - $path = OC_FileCache::getPath($itemSource, $uidOwner); - if ($path) { - $this->path = $path; + $query = \OC_DB::prepare('SELECT `name` FROM `*PREFIX*filecache` WHERE `fileid` = ?'); + $result = $query->execute(array($itemSource)); + if ($row = $result->fetchRow()) { + $this->path = $row['name']; return true; } return false; @@ -70,37 +72,21 @@ class OC_Share_Backend_File implements OCP\Share_Backend_File_Dependent { public function formatItems($items, $format, $parameters = null) { if ($format == self::FORMAT_SHARED_STORAGE) { // Only 1 item should come through for this format call - return array('path' => $items[key($items)]['path'], 'permissions' => $items[key($items)]['permissions']); - } else if ($format == self::FORMAT_FILE_APP) { - if (isset($parameters['mimetype_filter']) && $parameters['mimetype_filter']) { - $mimetype_filter = $parameters['mimetype_filter']; - } + return array('path' => $items[key($items)]['path'], 'permissions' => $items[key($items)]['permissions'], 'uid_owner' => $items[key($items)]['uid_owner']); + } else if ($format == self::FORMAT_GET_FOLDER_CONTENTS) { $files = array(); foreach ($items as $item) { - if (isset($mimetype_filter) - && strpos($item['mimetype'], $mimetype_filter) !== 0 - && $item['mimetype'] != 'httpd/unix-directory') { - continue; - } $file = array(); - $file['id'] = $item['file_source']; + $file['fileid'] = $item['file_source']; + $file['storage'] = $item['storage']; $file['path'] = $item['file_target']; + $file['parent'] = $item['file_parent']; $file['name'] = basename($item['file_target']); - $file['ctime'] = $item['ctime']; - $file['mtime'] = $item['mtime']; $file['mimetype'] = $item['mimetype']; + $file['mimepart'] = $item['mimepart']; $file['size'] = $item['size']; + $file['mtime'] = $item['mtime']; $file['encrypted'] = $item['encrypted']; - $file['versioned'] = $item['versioned']; - $file['directory'] = $parameters['folder']; - $file['type'] = ($item['mimetype'] == 'httpd/unix-directory') ? 'dir' : 'file'; - $file['permissions'] = $item['permissions']; - if ($file['type'] == 'file') { - // Remove Create permission if type is file - $file['permissions'] &= ~OCP\PERMISSION_CREATE; - } - // NOTE: Temporary fix to allow unsharing of files in root of Shared directory - $file['permissions'] |= OCP\PERMISSION_DELETE; $files[] = $file; } return $files; @@ -111,17 +97,48 @@ class OC_Share_Backend_File implements OCP\Share_Backend_File_Dependent { if ($item['mtime'] > $mtime) { $mtime = $item['mtime']; } - $size += $item['size']; + $size += (int)$item['size']; } - return array(0 => array('id' => -1, 'name' => 'Shared', 'mtime' => $mtime, 'mimetype' => 'httpd/unix-directory', 'size' => $size, 'writable' => false, 'type' => 'dir', 'directory' => '', 'permissions' => OCP\PERMISSION_READ)); + return array('fileid' => -1, 'name' => 'Shared', 'mtime' => $mtime, 'mimetype' => 'httpd/unix-directory', 'size' => $size); } else if ($format == self::FORMAT_OPENDIR) { $files = array(); foreach ($items as $item) { $files[] = basename($item['file_target']); } return $files; + } else if ($format == self::FORMAT_GET_ALL) { + $ids = array(); + foreach ($items as $item) { + $ids[] = $item['file_source']; + } + return $ids; } return array(); } + public static function getSource($target) { + if ($target == '') { + return false; + } + $target = '/'.$target; + $target = rtrim($target, '/'); + $pos = strpos($target, '/', 1); + // Get shared folder name + if ($pos !== false) { + $folder = substr($target, 0, $pos); + $source = \OCP\Share::getItemSharedWith('folder', $folder, \OC_Share_Backend_File::FORMAT_SHARED_STORAGE); + if ($source) { + $source['path'] = $source['path'].substr($target, strlen($folder)); + return $source; + } + } else { + $source = \OCP\Share::getItemSharedWith('file', $target, \OC_Share_Backend_File::FORMAT_SHARED_STORAGE); + if ($source) { + return $source; + } + } + \OCP\Util::writeLog('files_sharing', 'File source not found for: '.$target, \OCP\Util::ERROR); + return false; + } + } diff --git a/apps/files_sharing/lib/share/folder.php b/apps/files_sharing/lib/share/folder.php index d414fcf10fc..11c8c6b1e80 100644 --- a/apps/files_sharing/lib/share/folder.php +++ b/apps/files_sharing/lib/share/folder.php @@ -21,47 +21,26 @@ class OC_Share_Backend_Folder extends OC_Share_Backend_File implements OCP\Share_Backend_Collection { - public function formatItems($items, $format, $parameters = null) { - if ($format == self::FORMAT_SHARED_STORAGE) { - // Only 1 item should come through for this format call - return array('path' => $items[key($items)]['path'], 'permissions' => $items[key($items)]['permissions']); - } else if ($format == self::FORMAT_FILE_APP && isset($parameters['folder'])) { - // Only 1 item should come through for this format call - $folder = $items[key($items)]; - if (isset($parameters['mimetype_filter'])) { - $mimetype_filter = $parameters['mimetype_filter']; - } else { - $mimetype_filter = ''; - } - $path = $folder['path'].substr($parameters['folder'], 7 + strlen($folder['file_target'])); - $files = OC_FileCache::getFolderContent($path, '', $mimetype_filter); - foreach ($files as &$file) { - $file['directory'] = $parameters['folder']; - $file['type'] = ($file['mimetype'] == 'httpd/unix-directory') ? 'dir' : 'file'; - $file['permissions'] = $folder['permissions']; - if ($file['type'] == 'file') { - // Remove Create permission if type is file - $file['permissions'] &= ~OCP\PERMISSION_CREATE; - } - } - return $files; - } - return array(); - } - public function getChildren($itemSource) { $children = array(); $parents = array($itemSource); + $query = \OC_DB::prepare('SELECT `id` FROM `*PREFIX*mimetypes` WHERE `mimetype` = ?'); + $result = $query->execute(array('httpd/unix-directory')); + if ($row = $result->fetchRow()) { + $mimetype = $row['id']; + } else { + $mimetype = -1; + } while (!empty($parents)) { $parents = "'".implode("','", $parents)."'"; - $query = OC_DB::prepare('SELECT `id`, `name`, `mimetype` FROM `*PREFIX*fscache` WHERE `parent` IN ('.$parents.')'); + $query = OC_DB::prepare('SELECT `fileid`, `name`, `mimetype` FROM `*PREFIX*filecache` WHERE `parent` IN ('.$parents.')'); $result = $query->execute(); $parents = array(); while ($file = $result->fetchRow()) { - $children[] = array('source' => $file['id'], 'file_path' => $file['name']); + $children[] = array('source' => $file['fileid'], 'file_path' => $file['name']); // If a child folder is found look inside it - if ($file['mimetype'] == 'httpd/unix-directory') { - $parents[] = $file['id']; + if ($file['mimetype'] == $mimetype) { + $parents[] = $file['fileid']; } } } diff --git a/apps/files_sharing/lib/sharedstorage.php b/apps/files_sharing/lib/sharedstorage.php index 50db9166fe7..ea28ca69b93 100644 --- a/apps/files_sharing/lib/sharedstorage.php +++ b/apps/files_sharing/lib/sharedstorage.php @@ -20,10 +20,12 @@ * */ +namespace OC\Files\Storage; + /** * Convert target path to source path and pass the function call to the correct storage provider */ -class OC_Filestorage_Shared extends OC_Filestorage_Common { +class Shared extends \OC\Files\Storage\Common { private $sharedFolder; private $files = array(); @@ -32,54 +34,36 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { $this->sharedFolder = $arguments['sharedFolder']; } + public function getId(){ + return 'shared::' . $this->sharedFolder; + } + /** - * @brief Get the source file path and the permissions granted for a shared file + * @brief Get the source file path, permissions, and owner for a shared file * @param string Shared target file path - * @return Returns array with the keys path and permissions or false if not found + * @return Returns array with the keys path, permissions, and owner or false if not found */ private function getFile($target) { - $target = '/'.$target; - $target = rtrim($target, '/'); - if (isset($this->files[$target])) { - return $this->files[$target]; - } else { - $pos = strpos($target, '/', 1); - // Get shared folder name - if ($pos !== false) { - $folder = substr($target, 0, $pos); - if (isset($this->files[$folder])) { - $file = $this->files[$folder]; - } else { - $file = OCP\Share::getItemSharedWith('folder', $folder, OC_Share_Backend_File::FORMAT_SHARED_STORAGE); - } - if ($file) { - $this->files[$target]['path'] = $file['path'].substr($target, strlen($folder)); - $this->files[$target]['permissions'] = $file['permissions']; - return $this->files[$target]; - } - } else { - $file = OCP\Share::getItemSharedWith('file', $target, OC_Share_Backend_File::FORMAT_SHARED_STORAGE); - if ($file) { - $this->files[$target] = $file; - return $this->files[$target]; - } + if (!isset($this->files[$target])) { + $source = \OC_Share_Backend_File::getSource($target); + if ($source) { + $source['path'] = '/'.$source['uid_owner'].'/'.$source['path']; } - OCP\Util::writeLog('files_sharing', 'File source not found for: '.$target, OCP\Util::ERROR); - return false; + $this->files[$target] = $source; } + return $this->files[$target]; } /** * @brief Get the source file path for a shared file * @param string Shared target file path - * @return Returns source file path or false if not found + * @return string source file path or false if not found */ private function getSourcePath($target) { - $file = $this->getFile($target); - if (isset($file['path'])) { - $uid = substr($file['path'], 1, strpos($file['path'], '/', 1) - 1); - OC_Filesystem::mount('OC_Filestorage_Local', array('datadir' => OC_User::getHome($uid)), $uid); - return $file['path']; + $source = $this->getFile($target); + if ($source) { + \OC\Files\Filesystem::initMountPoints($source['uid_owner']); + return $source['path']; } return false; } @@ -87,61 +71,42 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { /** * @brief Get the permissions granted for a shared file * @param string Shared target file path - * @return Returns CRUDS permissions granted or false if not found + * @return int CRUDS permissions granted or false if not found */ - private function getPermissions($target) { - $file = $this->getFile($target); - if (isset($file['permissions'])) { - return $file['permissions']; + public function getPermissions($target) { + $source = $this->getFile($target); + if ($source) { + return $source['permissions']; } return false; } - /** - * @brief Get the internal path to pass to the storage filesystem call - * @param string Source file path - * @return Source file path with mount point stripped out - */ - private function getInternalPath($path) { - $mountPoint = OC_Filesystem::getMountPoint($path); - $internalPath = substr($path, strlen($mountPoint)); - return $internalPath; - } - - public function getOwner($target) { - $shared_item = OCP\Share::getItemSharedWith('folder', $target, OC_Share_Backend_File::FORMAT_SHARED_STORAGE); - if ($shared_item) { - return $shared_item[0]["uid_owner"]; - } - return null; - } - public function mkdir($path) { if ($path == '' || $path == '/' || !$this->isCreatable(dirname($path))) { return false; } else if ($source = $this->getSourcePath($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->mkdir($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->mkdir($internalPath); } return false; } public function rmdir($path) { if (($source = $this->getSourcePath($path)) && $this->isDeletable($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->rmdir($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->rmdir($internalPath); } return false; } public function opendir($path) { if ($path == '' || $path == '/') { - $files = OCP\Share::getItemsSharedWith('file', OC_Share_Backend_Folder::FORMAT_OPENDIR); - OC_FakeDirStream::$dirs['shared'] = $files; + $files = \OCP\Share::getItemsSharedWith('file', \OC_Share_Backend_Folder::FORMAT_OPENDIR); + \OC\Files\Stream\Dir::register('shared', $files); return opendir('fakedir://shared'); } else if ($source = $this->getSourcePath($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->opendir($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->opendir($internalPath); } return false; } @@ -150,16 +115,16 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { if ($path == '' || $path == '/') { return true; } else if ($source = $this->getSourcePath($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->is_dir($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->is_dir($internalPath); } return false; } public function is_file($path) { if ($source = $this->getSourcePath($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->is_file($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->is_file($internalPath); } return false; } @@ -168,11 +133,10 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { if ($path == '' || $path == '/') { $stat['size'] = $this->filesize($path); $stat['mtime'] = $this->filemtime($path); - $stat['ctime'] = $this->filectime($path); return $stat; } else if ($source = $this->getSourcePath($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->stat($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->stat($internalPath); } return false; } @@ -181,8 +145,8 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { if ($path == '' || $path == '/') { return 'dir'; } else if ($source = $this->getSourcePath($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->filetype($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->filetype($internalPath); } return false; } @@ -191,8 +155,8 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { if ($path == '' || $path == '/' || $this->is_dir($path)) { return 0; } else if ($source = $this->getSourcePath($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->filesize($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->filesize($internalPath); } return false; } @@ -201,7 +165,7 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { if ($path == '') { return false; } - return ($this->getPermissions($path) & OCP\PERMISSION_CREATE); + return ($this->getPermissions($path) & \OCP\PERMISSION_CREATE); } public function isReadable($path) { @@ -212,54 +176,33 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { if ($path == '') { return false; } - return ($this->getPermissions($path) & OCP\PERMISSION_UPDATE); + return ($this->getPermissions($path) & \OCP\PERMISSION_UPDATE); } public function isDeletable($path) { if ($path == '') { return true; } - return ($this->getPermissions($path) & OCP\PERMISSION_DELETE); + return ($this->getPermissions($path) & \OCP\PERMISSION_DELETE); } public function isSharable($path) { if ($path == '') { return false; } - return ($this->getPermissions($path) & OCP\PERMISSION_SHARE); + return ($this->getPermissions($path) & \OCP\PERMISSION_SHARE); } public function file_exists($path) { if ($path == '' || $path == '/') { return true; } else if ($source = $this->getSourcePath($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->file_exists($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->file_exists($internalPath); } return false; } - public function filectime($path) { - if ($path == '' || $path == '/') { - $ctime = 0; - if ($dh = $this->opendir($path)) { - while (($filename = readdir($dh)) !== false) { - $tempctime = $this->filectime($filename); - if ($tempctime < $ctime) { - $ctime = $tempctime; - } - } - } - return $ctime; - } else { - $source = $this->getSourcePath($path); - if ($source) { - $storage = OC_Filesystem::getStorage($source); - return $storage->filectime($this->getInternalPath($source)); - } - } - } - public function filemtime($path) { if ($path == '' || $path == '/') { $mtime = 0; @@ -275,8 +218,8 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { } else { $source = $this->getSourcePath($path); if ($source) { - $storage = OC_Filesystem::getStorage($source); - return $storage->filemtime($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->filemtime($internalPath); } } } @@ -288,9 +231,9 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { 'target' => $this->sharedFolder.$path, 'source' => $source, ); - OCP\Util::emitHook('OC_Filestorage_Shared', 'file_get_contents', $info); - $storage = OC_Filesystem::getStorage($source); - return $storage->file_get_contents($this->getInternalPath($source)); + \OCP\Util::emitHook('\OC\Files\Storage\Shared', 'file_get_contents', $info); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->file_get_contents($internalPath); } } @@ -304,9 +247,9 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { 'target' => $this->sharedFolder.$path, 'source' => $source, ); - OCP\Util::emitHook('OC_Filestorage_Shared', 'file_put_contents', $info); - $storage = OC_Filesystem::getStorage($source); - $result = $storage->file_put_contents($this->getInternalPath($source), $data); + \OCP\Util::emitHook('\OC\Files\Storage\Shared', 'file_put_contents', $info); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + $result = $storage->file_put_contents($internalPath, $data); return $result; } return false; @@ -316,8 +259,8 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { // Delete the file if DELETE permission is granted if ($source = $this->getSourcePath($path)) { if ($this->isDeletable($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->unlink($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->unlink($internalPath); } else if (dirname($path) == '/' || dirname($path) == '.') { // Unshare the file from the user if in the root of the Shared folder if ($this->is_dir($path)) { @@ -325,7 +268,7 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { } else { $itemType = 'file'; } - return OCP\Share::unshareFromSelf($itemType, $path); + return \OCP\Share::unshareFromSelf($itemType, $path); } } return false; @@ -340,8 +283,9 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { if (dirname($path1) == dirname($path2)) { // Rename the file if UPDATE permission is granted if ($this->isUpdatable($path1)) { - $storage = OC_Filesystem::getStorage($oldSource); - return $storage->rename($this->getInternalPath($oldSource), $this->getInternalPath($newSource)); + list($storage, $oldInternalPath) = \OC\Files\Filesystem::resolvePath($oldSource); + list( , $newInternalPath) = \OC\Files\Filesystem::resolvePath($newSource); + return $storage->rename($oldInternalPath, $newInternalPath); } } else { // Move the file if DELETE and CREATE permissions are granted @@ -355,8 +299,9 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { return $this->unlink($path1); } } else { - $storage = OC_Filesystem::getStorage($oldSource); - return $storage->rename($this->getInternalPath($oldSource), $this->getInternalPath($newSource)); + list($storage, $oldInternalPath) = \OC\Files\Filesystem::resolvePath($oldSource); + list( , $newInternalPath) = \OC\Files\Filesystem::resolvePath($newSource); + return $storage->rename($oldInternalPath, $newInternalPath); } } } @@ -369,7 +314,7 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { if ($this->isCreatable(dirname($path2))) { $source = $this->fopen($path1, 'r'); $target = $this->fopen($path2, 'w'); - return OC_Helper::streamCopy($source, $target); + return \OC_Helper::streamCopy($source, $target); } return false; } @@ -400,9 +345,9 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { 'source' => $source, 'mode' => $mode, ); - OCP\Util::emitHook('OC_Filestorage_Shared', 'fopen', $info); - $storage = OC_Filesystem::getStorage($source); - return $storage->fopen($this->getInternalPath($source), $mode); + \OCP\Util::emitHook('\OC\Files\Storage\Shared', 'fopen', $info); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->fopen($internalPath, $mode); } return false; } @@ -412,47 +357,88 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common { return 'httpd/unix-directory'; } if ($source = $this->getSourcePath($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->getMimeType($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->getMimeType($internalPath); } return false; } public function free_space($path) { + if ($path == '') { + return -1; + } $source = $this->getSourcePath($path); if ($source) { - $storage = OC_Filesystem::getStorage($source); - return $storage->free_space($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->free_space($internalPath); } } public function getLocalFile($path) { if ($source = $this->getSourcePath($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->getLocalFile($this->getInternalPath($source)); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->getLocalFile($internalPath); } return false; } public function touch($path, $mtime = null) { if ($source = $this->getSourcePath($path)) { - $storage = OC_Filesystem::getStorage($source); - return $storage->touch($this->getInternalPath($source), $mtime); + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->touch($internalPath, $mtime); } return false; } public static function setup($options) { - $user_dir = $options['user_dir']; - OC_Filesystem::mount('OC_Filestorage_Shared', array('sharedFolder' => '/Shared'), $user_dir.'/Shared/'); + if (\OCP\Share::getItemsSharedWith('file')) { + $user_dir = $options['user_dir']; + \OC\Files\Filesystem::mount('\OC\Files\Storage\Shared', array('sharedFolder' => '/Shared'), $user_dir.'/Shared/'); + } } - /** - * check if a file or folder has been updated since $time - * @param int $time - * @return bool - */ public function hasUpdated($path, $time) { - //TODO + if ($path == '') { + return false; + } + return $this->filemtime($path) > $time; + } + + public function getCache($path = '') { + return new \OC\Files\Cache\Shared_Cache($this); + } + + public function getScanner($path = '') { + return new \OC\Files\Cache\Scanner($this); + } + + public function getPermissionsCache($path = '') { + return new \OC\Files\Cache\Shared_Permissions($this); + } + + public function getWatcher($path = '') { + return new \OC\Files\Cache\Shared_Watcher($this); + } + + public function getOwner($path) { + if ($path == '') { + return false; + } + $source = $this->getFile($path); + if ($source) { + return $source['uid_owner']; + } return false; } + + public function getETag($path) { + if ($path == '') { + return parent::getETag($path); + } + if ($source = $this->getSourcePath($path)) { + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source); + return $storage->getETag($internalPath); + } + return null; + } + } diff --git a/apps/files_sharing/lib/watcher.php b/apps/files_sharing/lib/watcher.php new file mode 100644 index 00000000000..e67d1ee9086 --- /dev/null +++ b/apps/files_sharing/lib/watcher.php @@ -0,0 +1,51 @@ +<?php +/** +* ownCloud +* +* @author Michael Gapczynski +* @copyright 2012 Michael Gapczynski mtgap@owncloud.com +* +* This library is free software; you can redistribute it and/or +* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE +* License as published by the Free Software Foundation; either +* version 3 of the License, or any later version. +* +* This library is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU AFFERO GENERAL PUBLIC LICENSE for more details. +* +* You should have received a copy of the GNU Affero General Public +* License along with this library. If not, see <http://www.gnu.org/licenses/>. +*/ + +namespace OC\Files\Cache; + +/** + * check the storage backends for updates and change the cache accordingly + */ +class Shared_Watcher extends Watcher { + + /** + * check $path for updates + * + * @param string $path + */ + public function checkUpdate($path) { + if ($path != '') { + parent::checkUpdate($path); + } + } + + /** + * remove deleted files in $path from the cache + * + * @param string $path + */ + public function cleanFolder($path) { + if ($path != '') { + parent::cleanFolder($path); + } + } + +}
\ No newline at end of file diff --git a/apps/files_sharing/public.php b/apps/files_sharing/public.php index 5672c78dc33..a3e0ec192af 100644 --- a/apps/files_sharing/public.php +++ b/apps/files_sharing/public.php @@ -9,9 +9,10 @@ if (isset($_GET['token'])) { unset($_GET['file']); $qry = \OC_DB::prepare('SELECT `source` FROM `*PREFIX*sharing` WHERE `target` = ?', 1); $filepath = $qry->execute(array($_GET['token']))->fetchOne(); - if(isset($filepath)) { - $info = OC_FileCache_Cached::get($filepath, ''); - if(strtolower($info['mimetype']) == 'httpd/unix-directory') { + if (isset($filepath)) { + $rootView = new \OC\Files\View(''); + $info = $rootView->getFileInfo($filepath, ''); + if (strtolower($info['mimetype']) == 'httpd/unix-directory') { $_GET['dir'] = $filepath; } else { $_GET['file'] = $filepath; @@ -25,7 +26,7 @@ if (isset($_GET['token'])) { function getID($path) { // use the share table from the db to find the item source if the file was reshared because shared files //are not stored in the file cache. - if (substr(OC_Filesystem::getMountPoint($path), -7, 6) == "Shared") { + if (substr(\OC\Files\Filesystem::getMountPoint($path), -7, 6) == "Shared") { $path_parts = explode('/', $path, 5); $user = $path_parts[1]; $intPath = '/'.$path_parts[4]; @@ -37,16 +38,19 @@ function getID($path) { $row = $result->fetchRow(); $fileSource = $row['item_source']; } else { - $fileSource = OC_Filecache::getId($path, ''); + $rootView = new \OC\Files\View(''); + $meta = $rootView->getFileInfo($path); + $fileSource = $meta['fileid']; } return $fileSource; } + // Enf of backward compatibility /** * lookup file path and owner by fetching it from the fscache - * needed becaus OC_FileCache::getPath($id, $user) already requires the user + * needed because OC_FileCache::getPath($id, $user) already requires the user * @param int $id * @return array */ @@ -86,41 +90,43 @@ if (isset($_GET['t'])) { OC_Util::setupFS($fileOwner); } } -} else if (isset($_GET['file']) || isset($_GET['dir'])) { - OCP\Util::writeLog('share', 'Missing token, trying fallback file/dir links', \OCP\Util::DEBUG); - if (isset($_GET['dir'])) { - $type = 'folder'; - $path = $_GET['dir']; - if(strlen($path)>1 and substr($path, -1, 1)==='/') { - $path=substr($path, 0, -1); - } - $baseDir = $path; - $dir = $baseDir; - } else { - $type = 'file'; - $path = $_GET['file']; - if(strlen($path)>1 and substr($path, -1, 1)==='/') { - $path=substr($path, 0, -1); +} else { + if (isset($_GET['file']) || isset($_GET['dir'])) { + OCP\Util::writeLog('share', 'Missing token, trying fallback file/dir links', \OCP\Util::DEBUG); + if (isset($_GET['dir'])) { + $type = 'folder'; + $path = $_GET['dir']; + if (strlen($path) > 1 and substr($path, -1, 1) === '/') { + $path = substr($path, 0, -1); + } + $baseDir = $path; + $dir = $baseDir; + } else { + $type = 'file'; + $path = $_GET['file']; + if (strlen($path) > 1 and substr($path, -1, 1) === '/') { + $path = substr($path, 0, -1); + } } - } - $shareOwner = substr($path, 1, strpos($path, '/', 1) - 1); + $shareOwner = substr($path, 1, strpos($path, '/', 1) - 1); - if (OCP\User::userExists($shareOwner)) { - OC_Util::setupFS($shareOwner); - $fileSource = getId($path); - if ($fileSource != -1 ) { - $linkItem = OCP\Share::getItemSharedWithByLink($type, $fileSource, $shareOwner); - $pathAndUser['path'] = $path; - $path_parts = explode('/', $path, 5); - $pathAndUser['user'] = $path_parts[1]; - $fileOwner = $path_parts[1]; + if (OCP\User::userExists($shareOwner)) { + OC_Util::setupFS($shareOwner); + $fileSource = getId($path); + if ($fileSource != -1) { + $linkItem = OCP\Share::getItemSharedWithByLink($type, $fileSource, $shareOwner); + $pathAndUser['path'] = $path; + $path_parts = explode('/', $path, 5); + $pathAndUser['user'] = $path_parts[1]; + $fileOwner = $path_parts[1]; + } } } } if ($linkItem) { if (!isset($linkItem['item_type'])) { - OCP\Util::writeLog('share', 'No item type set for share id: '.$linkItem['id'], \OCP\Util::ERROR); + OCP\Util::writeLog('share', 'No item type set for share id: ' . $linkItem['id'], \OCP\Util::ERROR); header('HTTP/1.0 404 Not Found'); $tmpl = new OCP\Template('', '404', 'guest'); $tmpl->printPage(); @@ -128,11 +134,13 @@ if ($linkItem) { } if (isset($linkItem['share_with'])) { // Authenticate share_with - $url = OCP\Util::linkToPublic('files').'&t='.$token; + $url = OCP\Util::linkToPublic('files') . '&t=' . $token; if (isset($_GET['file'])) { - $url .= '&file='.urlencode($_GET['file']); - } else if (isset($_GET['dir'])) { - $url .= '&dir='.urlencode($_GET['dir']); + $url .= '&file=' . urlencode($_GET['file']); + } else { + if (isset($_GET['dir'])) { + $url .= '&dir=' . urlencode($_GET['dir']); + } } if (isset($_POST['password'])) { $password = $_POST['password']; @@ -173,13 +181,13 @@ if ($linkItem) { } } } - $basePath = substr($pathAndUser['path'], strlen('/'.$fileOwner.'/files')); + $basePath = substr($pathAndUser['path'], strlen('/' . $fileOwner . '/files')); $path = $basePath; if (isset($_GET['path'])) { $path .= $_GET['path']; } - if (!$path || !OC_Filesystem::isValidPath($path) || !OC_Filesystem::file_exists($path)) { - OCP\Util::writeLog('share', 'Invalid path '.$path.' for share id '.$linkItem['id'], \OCP\Util::ERROR); + if (!$path || !\OC\Files\Filesystem::isValidPath($path) || !\OC\Files\Filesystem::file_exists($path)) { + OCP\Util::writeLog('share', 'Invalid path ' . $path . ' for share id ' . $linkItem['id'], \OCP\Util::ERROR); header('HTTP/1.0 404 Not Found'); $tmpl = new OCP\Template('', '404', 'guest'); $tmpl->printPage(); @@ -189,13 +197,15 @@ if ($linkItem) { $file = basename($path); // Download the file if (isset($_GET['download'])) { - if (isset($_GET['path']) && $_GET['path'] !== '' ) { - if ( isset($_GET['files']) ) { // download selected files + if (isset($_GET['path']) && $_GET['path'] !== '') { + if (isset($_GET['files'])) { // download selected files OC_Files::get($path, $_GET['files'], $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false); - } else if (isset($_GET['path']) && $_GET['path'] != '' ) { // download a file from a shared directory - OC_Files::get($dir, $file, $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false); - } else { // download the whole shared directory - OC_Files::get($dir, $file, $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false); + } else { + if (isset($_GET['path']) && $_GET['path'] != '') { // download a file from a shared directory + OC_Files::get($dir, $file, $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false); + } else { // download the whole shared directory + OC_Files::get($dir, $file, $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false); + } } } else { // download a single shared file OC_Files::get($dir, $file, $_SERVER['REQUEST_METHOD'] == 'HEAD' ? true : false); @@ -210,7 +220,7 @@ if ($linkItem) { $tmpl->assign('displayName', \OCP\User::getDisplayName($shareOwner)); $tmpl->assign('dir', $dir); $tmpl->assign('filename', $file); - $tmpl->assign('mimetype', OC_Filesystem::getMimeType($path)); + $tmpl->assign('mimetype', \OC\Files\Filesystem::getMimeType($path)); if (isset($_GET['path'])) { $getPath = $_GET['path']; } else { @@ -221,10 +231,11 @@ if ($linkItem) { .(isset($_GET['dir'])?'&dir='.$_GET['dir']:'') .(isset($_GET['file'])?'&file='.$_GET['file']:''); // Show file list - if (OC_Filesystem::is_dir($path)) { + if (\OC\Files\Filesystem::is_dir($path)) { OCP\Util::addStyle('files', 'files'); OCP\Util::addScript('files', 'files'); OCP\Util::addScript('files', 'filelist'); + OCP\Util::addscript('files', 'keyboardshortcuts'); $files = array(); $rootLength = strlen($basePath) + 1; foreach (OC_Files::getDirectoryContent($path) as $i) { @@ -232,9 +243,9 @@ if ($linkItem) { if ($i['type'] == 'file') { $fileinfo = pathinfo($i['name']); $i['basename'] = $fileinfo['filename']; - $i['extension'] = isset($fileinfo['extension']) ? ('.'.$fileinfo['extension']) : ''; + $i['extension'] = isset($fileinfo['extension']) ? ('.' . $fileinfo['extension']) : ''; } - $i['directory'] = '/'.substr($i['directory'], $rootLength); + $i['directory'] = '/' . substr($i['directory'], $rootLength); if ($i['directory'] == '/') { $i['directory'] = ''; } @@ -251,9 +262,137 @@ if ($linkItem) { //add subdir breadcrumbs foreach (explode('/', urldecode($getPath)) as $i) { if ($i != '') { - $pathtohere .= '/'.$i; + $pathtohere .= '/' . $i; $breadcrumb[] = array('dir' => $pathtohere, 'name' => $i); + $path = $linkItem['path']; + if (isset($_GET['path'])) { + $path .= $_GET['path']; + $dir .= $_GET['path']; + if (!\OC\Files\Filesystem::file_exists($path)) { + header('HTTP/1.0 404 Not Found'); + $tmpl = new OCP\Template('', '404', 'guest'); + $tmpl->printPage(); + exit(); + } + } + + $list = new OCP\Template('files', 'part.list', ''); + $list->assign('files', $files, false); + $list->assign('publicListView', true); + $list->assign('baseURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&path=', false); + $list->assign('downloadURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&download&path=', false); + $breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', ''); + $breadcrumbNav->assign('breadcrumb', $breadcrumb, false); + $breadcrumbNav->assign('baseURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&path=', false); + $folder = new OCP\Template('files', 'index', ''); + $folder->assign('fileList', $list->fetchPage(), false); + $folder->assign('breadcrumb', $breadcrumbNav->fetchPage(), false); + $folder->assign('isCreatable', false); + $folder->assign('permissions', 0); + $folder->assign('files', $files); + $folder->assign('uploadMaxFilesize', 0); + $folder->assign('uploadMaxHumanFilesize', 0); + $folder->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true))); + $tmpl->assign('folder', $folder->fetchPage(), false); + $tmpl->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true))); + $tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&download&path=' . urlencode($getPath)); + } else { + // Show file preview if viewer is available + if ($type == 'file') { + $tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&download'); + } else { + OCP\Util::addStyle('files_sharing', 'public'); + OCP\Util::addScript('files_sharing', 'public'); + OCP\Util::addScript('files', 'fileactions'); + $tmpl = new OCP\Template('files_sharing', 'public', 'base'); + $tmpl->assign('owner', $uidOwner); + // Show file list + if (\OC\Files\Filesystem::is_dir($path)) { + OCP\Util::addStyle('files', 'files'); + OCP\Util::addScript('files', 'files'); + OCP\Util::addScript('files', 'filelist'); + $files = array(); + $rootLength = strlen($baseDir) + 1; + foreach (OC_Files::getDirectoryContent($path) as $i) { + $i['date'] = OCP\Util::formatDate($i['mtime']); + if ($i['type'] == 'file') { + $fileinfo = pathinfo($i['name']); + $i['basename'] = $fileinfo['filename']; + $i['extension'] = isset($fileinfo['extension']) ? ('.' . $fileinfo['extension']) : ''; + } + $i['directory'] = '/' . substr('/' . $uidOwner . '/files' . $i['directory'], $rootLength); + if ($i['directory'] == '/') { + $i['directory'] = ''; + } + $i['permissions'] = OCP\PERMISSION_READ; + $files[] = $i; + } + // Make breadcrumb + $breadcrumb = array(); + $pathtohere = ''; + $count = 1; + foreach (explode('/', $dir) as $i) { + if ($i != '') { + if ($i != $baseDir) { + $pathtohere .= '/' . $i; + } + if (strlen($pathtohere) < strlen($_GET['dir'])) { + continue; + } + $breadcrumb[] = array('dir' => str_replace($_GET['dir'], "", $pathtohere, $count), 'name' => $i); + } + } + $list = new OCP\Template('files', 'part.list', ''); + $list->assign('files', $files, false); + $list->assign('publicListView', true); + $list->assign('baseURL', OCP\Util::linkToPublic('files') . '&dir=' . urlencode($_GET['dir']) . '&path=', false); + $list->assign('downloadURL', OCP\Util::linkToPublic('files') . '&download&dir=' . urlencode($_GET['dir']) . '&path=', false); + $breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', ''); + $breadcrumbNav->assign('breadcrumb', $breadcrumb, false); + $breadcrumbNav->assign('baseURL', OCP\Util::linkToPublic('files') . '&dir=' . urlencode($_GET['dir']) . '&path=', false); + $folder = new OCP\Template('files', 'index', ''); + $folder->assign('fileList', $list->fetchPage(), false); + $folder->assign('breadcrumb', $breadcrumbNav->fetchPage(), false); + $folder->assign('dir', basename($dir)); + $folder->assign('isCreatable', false); + $folder->assign('permissions', 0); + $folder->assign('files', $files); + $folder->assign('uploadMaxFilesize', 0); + $folder->assign('uploadMaxHumanFilesize', 0); + $folder->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true))); + $tmpl->assign('folder', $folder->fetchPage(), false); + $tmpl->assign('uidOwner', $uidOwner); + $tmpl->assign('dir', basename($dir)); + $tmpl->assign('filename', basename($path)); + $tmpl->assign('mimetype', \OC\Files\Filesystem::getMimeType($path)); + $tmpl->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true))); + if (isset($_GET['path'])) { + $getPath = $_GET['path']; + } else { + $getPath = ''; + } + $tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') . '&download&dir=' . urlencode($_GET['dir']) . '&path=' . urlencode($getPath), false); + } else { + // Show file preview if viewer is available + $tmpl->assign('uidOwner', $uidOwner); + $tmpl->assign('dir', dirname($path)); + $tmpl->assign('filename', basename($path)); + $tmpl->assign('mimetype', \OC\Files\Filesystem::getMimeType($path)); + if ($type == 'file') { + $tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') . '&file=' . urlencode($_GET['file']) . '&download', false); + } else { + if (isset($_GET['path'])) { + $getPath = $_GET['path']; + } else { + $getPath = ''; + } + $tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') . '&download&dir=' . urlencode($_GET['dir']) . '&path=' . urlencode($getPath), false); + } + } + $tmpl->printPage(); + } } + $tmpl->printPage(); } $list = new OCP\Template('files', 'part.list', ''); @@ -279,21 +418,11 @@ if ($linkItem) { $tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') .$urlLinkIdentifiers.'&download&path='.urlencode($getPath)); } else { - // Show file preview if viewer is available - if ($type == 'file') { - $tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') - .$urlLinkIdentifiers.'&download'); - } else { - $tmpl->assign('downloadURL', OCP\Util::linkToPublic('files') - .$urlLinkIdentifiers.'&download&path='.urlencode($getPath)); - } + OCP\Util::writeLog('share', 'could not resolve linkItem', \OCP\Util::DEBUG); } - $tmpl->printPage(); } - exit(); -} else { - OCP\Util::writeLog('share', 'could not resolve linkItem', \OCP\Util::DEBUG); } header('HTTP/1.0 404 Not Found'); $tmpl = new OCP\Template('', '404', 'guest'); $tmpl->printPage(); + diff --git a/apps/files_trashbin/ajax/undelete.php b/apps/files_trashbin/ajax/undelete.php new file mode 100644 index 00000000000..ee1c64aaaf2 --- /dev/null +++ b/apps/files_trashbin/ajax/undelete.php @@ -0,0 +1,44 @@ +<?php + +OCP\JSON::checkLoggedIn(); +OCP\JSON::callCheck(); + +$files = $_REQUEST['files']; +$dirlisting = $_REQUEST['dirlisting']; +$list = explode(';', $files); + +$error = array(); +$success = array(); + +$i = 0; +foreach ($list as $file) { + if ( $dirlisting=='0') { + $delimiter = strrpos($file, '.d'); + $filename = substr($file, 0, $delimiter); + $timestamp = substr($file, $delimiter+2); + } else { + $path_parts = pathinfo($file); + $filename = $path_parts['basename']; + $timestamp = null; + } + + if ( !OCA_Trash\Trashbin::restore($file, $filename, $timestamp) ) { + $error[] = $filename; + } else { + $success[$i]['filename'] = $file; + $success[$i]['timestamp'] = $timestamp; + $i++; + } + +} + +if ( $error ) { + $filelist = ''; + foreach ( $error as $e ) { + $filelist .= $e.', '; + } + OCP\JSON::error(array("data" => array("message" => "Couldn't restore ".rtrim($filelist,', '), "success" => $success, "error" => $error))); +} else { + OCP\JSON::success(array("data" => array("success" => $success))); +} + diff --git a/apps/files_trashbin/appinfo/app.php b/apps/files_trashbin/appinfo/app.php new file mode 100644 index 00000000000..3741d42c781 --- /dev/null +++ b/apps/files_trashbin/appinfo/app.php @@ -0,0 +1,7 @@ +<?php + +OC::$CLASSPATH['OCA_Trash\Hooks'] = 'apps/files_trashbin/lib/hooks.php';
+OC::$CLASSPATH['OCA_Trash\Trashbin'] = 'apps/files_trashbin/lib/trash.php';
+ +
+OCP\Util::connectHook('OC_Filesystem', 'delete', "OCA_Trash\Hooks", "remove_hook"); diff --git a/apps/files_trashbin/appinfo/database.xml b/apps/files_trashbin/appinfo/database.xml new file mode 100644 index 00000000000..1144a1c9a97 --- /dev/null +++ b/apps/files_trashbin/appinfo/database.xml @@ -0,0 +1,92 @@ +<?xml version="1.0" encoding="ISO-8859-1" ?> +<database> + + <name>*dbname*</name> + <create>true</create> + <overwrite>false</overwrite> + + <charset>utf8</charset> + + <table> + + <name>*dbprefix*files_trash</name> + + <declaration> + + <field> + <name>id</name> + <type>text</type> + <default></default> + <notnull>true</notnull> + <length>50</length> + </field> + + <field> + <name>user</name> + <type>text</type> + <default></default> + <notnull>true</notnull> + <length>50</length> + </field> + + <field> + <name>timestamp</name> + <type>text</type> + <default></default> + <notnull>true</notnull> + <length>12</length> + </field> + + <field> + <name>location</name> + <type>text</type> + <default></default> + <notnull>true</notnull> + <length>200</length> + </field> + + <field> + <name>type</name> + <type>text</type> + <default></default> + <notnull>true</notnull> + <length>4</length> + </field> + + <field> + <name>mime</name> + <type>text</type> + <default></default> + <notnull>true</notnull> + <length>30</length> + </field> + + <index> + <name>id_index</name> + <field> + <name>id</name> + <sorting>ascending</sorting> + </field> + </index> + + <index> + <name>timestamp_index</name> + <field> + <name>timestamp</name> + <sorting>ascending</sorting> + </field> + </index> + + <index> + <name>user_index</name> + <field> + <name>user</name> + <sorting>ascending</sorting> + </field> + </index> + + </declaration> + + </table> + +</database> diff --git a/apps/files_trashbin/appinfo/info.xml b/apps/files_trashbin/appinfo/info.xml new file mode 100644 index 00000000000..9b486126361 --- /dev/null +++ b/apps/files_trashbin/appinfo/info.xml @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<info> + <id>files_trashbin</id> + <name>Trash</name> + <description>Trash bin</description> + <licence>AGPL</licence> + <author>Bjoern Schiessle</author> + <shipped>true</shipped> + <require>4.9</require> + <default_enable/> + <types> + <filesystem/> + </types> +</info> diff --git a/apps/files_trashbin/appinfo/version b/apps/files_trashbin/appinfo/version new file mode 100644 index 00000000000..49d59571fbf --- /dev/null +++ b/apps/files_trashbin/appinfo/version @@ -0,0 +1 @@ +0.1 diff --git a/apps/files_trashbin/download.php b/apps/files_trashbin/download.php new file mode 100644 index 00000000000..665697dca5f --- /dev/null +++ b/apps/files_trashbin/download.php @@ -0,0 +1,51 @@ +<?php + +/** +* ownCloud - trash bin +* +* @author Bjoern Schiessle +* @copyright 2013 Bjoern Schiessle schiessle@owncloud.com +* +* This library is free software; you can redistribute it and/or +* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE +* License as published by the Free Software Foundation; either +* version 3 of the License, or any later version. +* +* This library is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU AFFERO GENERAL PUBLIC LICENSE for more details. +* +* You should have received a copy of the GNU Affero General Public +* License along with this library. If not, see <http://www.gnu.org/licenses/>. +* +*/ + +// Check if we are a user +OCP\User::checkLoggedIn(); + +$filename = $_GET["file"]; + +$view = new OC_FilesystemView('/'.\OCP\User::getUser().'/files_trashbin'); + +if(!$view->file_exists($filename)) { + header("HTTP/1.0 404 Not Found"); + $tmpl = new OCP\Template( '', '404', 'guest' ); + $tmpl->assign('file', $filename); + $tmpl->printPage(); + exit; +} + +$ftype=$view->getMimeType( $filename ); + +header('Content-Type:'.$ftype);if ( preg_match( "/MSIE/", $_SERVER["HTTP_USER_AGENT"] ) ) { + header( 'Content-Disposition: attachment; filename="' . rawurlencode( basename($filename) ) . '"' ); +} else { + header( 'Content-Disposition: attachment; filename*=UTF-8\'\'' . rawurlencode( basename($filename) ) + . '; filename="' . rawurlencode( basename($filename) ) . '"' ); +} +OCP\Response::disableCaching(); +header('Content-Length: '. $view->filesize($filename)); + +OC_Util::obEnd(); +$view->readfile( $filename ); diff --git a/apps/files_trashbin/index.php b/apps/files_trashbin/index.php new file mode 100644 index 00000000000..46a601cfdde --- /dev/null +++ b/apps/files_trashbin/index.php @@ -0,0 +1,100 @@ +<?php + +// Check if we are a user
+OCP\User::checkLoggedIn(); + +OCP\Util::addScript('files_trashbin', 'trash'); +OCP\Util::addScript('files_trashbin', 'disableDefaultActions'); +OCP\Util::addScript('files', 'fileactions'); +$tmpl = new OCP\Template('files_trashbin', 'index', 'user'); + +$user = \OCP\User::getUser(); +$view = new OC_Filesystemview('/'.$user.'/files_trashbin'); + +OCP\Util::addStyle('files', 'files'); +OCP\Util::addScript('files', 'filelist'); + +$dir = isset($_GET['dir']) ? stripslashes($_GET['dir']) : ''; + +if ($dir) { + $dirlisting = true; + $view = new \OC_FilesystemView('/'.\OCP\User::getUser().'/files_trashbin');
+ $fullpath = \OCP\Config::getSystemValue('datadirectory').$view->getAbsolutePath($dir); + $dirContent = opendir($fullpath); + $i = 0; + while($entryName = readdir($dirContent)) { + if ( $entryName != '.' && $entryName != '..' ) { + $pos = strpos($dir.'/', '/', 1); + $tmp = substr($dir, 0, $pos); + $pos = strrpos($tmp, '.d'); + $timestamp = substr($tmp,$pos+2); + $result[] = array( + 'id' => $entryName, + 'timestamp' => $timestamp, + 'mime' => $view->getMimeType($dir.'/'.$entryName), + 'type' => $view->is_dir($dir.'/'.$entryName) ? 'dir' : 'file', + 'location' => $dir, + ); + }
+ } + closedir($fullpath); + +} else { + $dirlisting = false; + $query = \OC_DB::prepare('SELECT id,location,timestamp,type,mime FROM *PREFIX*files_trash WHERE user=?'); + $result = $query->execute(array($user))->fetchAll(); +} + +$files = array(); +foreach ($result as $r) { + $i = array(); + $i['name'] = $r['id']; + $i['date'] = OCP\Util::formatDate($r['timestamp']); + $i['timestamp'] = $r['timestamp']; + $i['mimetype'] = $r['mime']; + $i['type'] = $r['type']; + if ($i['type'] == 'file') { + $fileinfo = pathinfo($r['id']); + $i['basename'] = $fileinfo['filename']; + $i['extension'] = isset($fileinfo['extension']) ? ('.'.$fileinfo['extension']) : ''; + } + $i['directory'] = $r['location']; + if ($i['directory'] == '/') { + $i['directory'] = ''; + } + $i['permissions'] = OCP\PERMISSION_READ; + $files[] = $i; +} + +// Make breadcrumb
+$breadcrumb = array(array('dir' => '', 'name' => 'Trash'));
+$pathtohere = '';
+foreach (explode('/', $dir) as $i) {
+ if ($i != '') { + if ( preg_match('/^(.+)\.d[0-9]+$/', $i, $match) ) { + $name = $match[1]; + } else { + $name = $i; + }
+ $pathtohere .= '/' . $i;
+ $breadcrumb[] = array('dir' => $pathtohere, 'name' => $name);
+ }
+} + +$breadcrumbNav = new OCP\Template('files', 'part.breadcrumb', '');
+$breadcrumbNav->assign('breadcrumb', $breadcrumb, false);
+$breadcrumbNav->assign('baseURL', OCP\Util::linkTo('files_trashbin', 'index.php') . '?dir=', false); + +$list = new OCP\Template('files_trashbin', 'part.list', ''); +$list->assign('files', $files, false); +$list->assign('baseURL', OCP\Util::linkTo('files_trashbin', 'index.php'). '?dir='.$dir, false);
+$list->assign('downloadURL', OCP\Util::linkTo('files_trashbin', 'download.php') . '?file='.$dir, false); +$list->assign('disableSharing', true); +$list->assign('dirlisting', $dirlisting); +$list->assign('disableDownloadActions', true); +$tmpl->assign('breadcrumb', $breadcrumbNav->fetchPage(), false); +$tmpl->assign('fileList', $list->fetchPage(), false); +$tmpl->assign('files', $files); +$tmpl->assign('dir', OC_Filesystem::normalizePath($view->getAbsolutePath())); + +$tmpl->printPage(); diff --git a/apps/files_trashbin/js/disableDefaultActions.js b/apps/files_trashbin/js/disableDefaultActions.js new file mode 100644 index 00000000000..56b95407dd3 --- /dev/null +++ b/apps/files_trashbin/js/disableDefaultActions.js @@ -0,0 +1,3 @@ +/* disable download and sharing actions */
+var disableDownloadActions = true;
+var disableSharing = true;
diff --git a/apps/files_trashbin/js/trash.js b/apps/files_trashbin/js/trash.js new file mode 100644 index 00000000000..f1241fce51e --- /dev/null +++ b/apps/files_trashbin/js/trash.js @@ -0,0 +1,158 @@ + +$(document).ready(function() { + + if (typeof FileActions !== 'undefined') { + FileActions.register('all', 'Restore', OC.PERMISSION_READ, OC.imagePath('core', 'actions/undelete.png'), function(filename) { + var tr=$('tr').filterAttr('data-file', filename); + var spinner = '<img class="move2trash" title="'+t('files_trashbin', 'perform restore operation')+'" src="'+ OC.imagePath('core', 'loader.gif') +'"></a>'; + var undeleteAction = $('tr').filterAttr('data-file',filename).children("td.date"); + undeleteAction[0].innerHTML = undeleteAction[0].innerHTML+spinner; + $.post(OC.filePath('files_trashbin','ajax','undelete.php'), + {files:tr.attr('data-file'), dirlisting:tr.attr('data-dirlisting') }, + function(result){ + for (var i = 0; i < result.data.success.length; i++) { + var row = document.getElementById(result.data.success[i].filename); + row.parentNode.removeChild(row); + } + if (result.status != 'success') { + OC.dialogs.alert(result.data.message, 'Error'); + } + }); + + }); + }; + + // Sets the select_all checkbox behaviour : + $('#select_all').click(function() { + if($(this).attr('checked')){ + // Check all + $('td.filename input:checkbox').attr('checked', true); + $('td.filename input:checkbox').parent().parent().addClass('selected'); + }else{ + // Uncheck all + $('td.filename input:checkbox').attr('checked', false); + $('td.filename input:checkbox').parent().parent().removeClass('selected'); + } + processSelection(); + }); + + $('td.filename input:checkbox').live('change',function(event) { + if (event.shiftKey) { + var last = $(lastChecked).parent().parent().prevAll().length; + var first = $(this).parent().parent().prevAll().length; + var start = Math.min(first, last); + var end = Math.max(first, last); + var rows = $(this).parent().parent().parent().children('tr'); + for (var i = start; i < end; i++) { + $(rows).each(function(index) { + if (index == i) { + var checkbox = $(this).children().children('input:checkbox'); + $(checkbox).attr('checked', 'checked'); + $(checkbox).parent().parent().addClass('selected'); + } + }); + } + } + var selectedCount=$('td.filename input:checkbox:checked').length; + $(this).parent().parent().toggleClass('selected'); + if(!$(this).attr('checked')){ + $('#select_all').attr('checked',false); + }else{ + if(selectedCount==$('td.filename input:checkbox').length){ + $('#select_all').attr('checked',true); + } + } + processSelection(); + }); + + $('.undelete').click('click',function(event) { + var spinner = '<img class="move2trash" title="'+t('files_trashbin', 'perform restore operation')+'" src="'+ OC.imagePath('core', 'loader.gif') +'"></a>'; + var files=getSelectedFiles('file'); + var fileslist=files.join(';'); + var dirlisting=getSelectedFiles('dirlisting')[0]; + + for (var i in files) { + var undeleteAction = $('tr').filterAttr('data-file',files[i]).children("td.date"); + undeleteAction[0].innerHTML = undeleteAction[0].innerHTML+spinner; + } + + $.post(OC.filePath('files_trashbin','ajax','undelete.php'), + {files:fileslist, dirlisting:dirlisting}, + function(result){ + for (var i = 0; i < result.data.success.length; i++) { + var row = document.getElementById(result.data.success[i].filename); + row.parentNode.removeChild(row); + } + if (result.status != 'success') { + OC.dialogs.alert(result.data.message, 'Error'); + } + }); + }); + + +}); + +function processSelection(){ + var selected=getSelectedFiles(); + var selectedFiles=selected.filter(function(el){return el.type=='file'}); + var selectedFolders=selected.filter(function(el){return el.type=='dir'}); + if(selectedFiles.length==0 && selectedFolders.length==0) { + $('#headerName>span.name').text(t('files','Name')); + $('#modified').text(t('files','Deleted')); + $('table').removeClass('multiselect'); + $('.selectedActions').hide(); + } + else { + $('.selectedActions').show(); + var selection=''; + if(selectedFolders.length>0){ + if(selectedFolders.length==1){ + selection+=t('files','1 folder'); + }else{ + selection+=t('files','{count} folders',{count: selectedFolders.length}); + } + if(selectedFiles.length>0){ + selection+=' & '; + } + } + if(selectedFiles.length>0){ + if(selectedFiles.length==1){ + selection+=t('files','1 file'); + }else{ + selection+=t('files','{count} files',{count: selectedFiles.length}); + } + } + $('#headerName>span.name').text(selection); + $('#modified').text(''); + $('table').addClass('multiselect'); + } +} + +/** + * @brief get a list of selected files + * @param string property (option) the property of the file requested + * @return array + * + * possible values for property: name, mime, size and type + * if property is set, an array with that property for each file is returnd + * if it's ommited an array of objects with all properties is returned + */ +function getSelectedFiles(property){ + var elements=$('td.filename input:checkbox:checked').parent().parent(); + var files=[]; + elements.each(function(i,element){ + var file={ + name:$(element).attr('data-filename'), + file:$(element).attr('data-file'), + timestamp:$(element).attr('data-timestamp'), + type:$(element).attr('data-type'), + dirlisting:$(element).attr('data-dirlisting') + }; + if(property){ + files.push(file[property]); + }else{ + files.push(file); + } + }); + return files; +}
\ No newline at end of file diff --git a/apps/files_trashbin/l10n/.gitkeep b/apps/files_trashbin/l10n/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/apps/files_trashbin/l10n/.gitkeep diff --git a/apps/files_trashbin/l10n/ar.php b/apps/files_trashbin/l10n/ar.php new file mode 100644 index 00000000000..e38130fe2d3 --- /dev/null +++ b/apps/files_trashbin/l10n/ar.php @@ -0,0 +1,3 @@ +<?php $TRANSLATIONS = array( +"Name" => "اسم" +); diff --git a/apps/files_trashbin/l10n/bg_BG.php b/apps/files_trashbin/l10n/bg_BG.php new file mode 100644 index 00000000000..681c1dc5802 --- /dev/null +++ b/apps/files_trashbin/l10n/bg_BG.php @@ -0,0 +1,3 @@ +<?php $TRANSLATIONS = array( +"Name" => "Име" +); diff --git a/apps/files_trashbin/l10n/bn_BD.php b/apps/files_trashbin/l10n/bn_BD.php new file mode 100644 index 00000000000..c669eff7e1f --- /dev/null +++ b/apps/files_trashbin/l10n/bn_BD.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "রাম", +"1 folder" => "১টি ফোলà§à¦¡à¦¾à¦°", +"{count} folders" => "{count} টি ফোলà§à¦¡à¦¾à¦°", +"1 file" => "১টি ফাইল", +"{count} files" => "{count} টি ফাইল" +); diff --git a/apps/files_trashbin/l10n/ca.php b/apps/files_trashbin/l10n/ca.php new file mode 100644 index 00000000000..3af33c8a310 --- /dev/null +++ b/apps/files_trashbin/l10n/ca.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "executa l'operació de restauració", +"Name" => "Nom", +"Deleted" => "Eliminat", +"1 folder" => "1 carpeta", +"{count} folders" => "{count} carpetes", +"1 file" => "1 fitxer", +"{count} files" => "{count} fitxers", +"Nothing in here. Your trash bin is empty!" => "La paperera està buida!", +"Restore" => "Recupera" +); diff --git a/apps/files_trashbin/l10n/cs_CZ.php b/apps/files_trashbin/l10n/cs_CZ.php new file mode 100644 index 00000000000..caaaea37436 --- /dev/null +++ b/apps/files_trashbin/l10n/cs_CZ.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "provést obnovu", +"Name" => "Název", +"Deleted" => "Smazáno", +"1 folder" => "1 složka", +"{count} folders" => "{count} složky", +"1 file" => "1 soubor", +"{count} files" => "{count} soubory", +"Nothing in here. Your trash bin is empty!" => "Žádný obsah. Váš koÅ¡ je prázdný.", +"Restore" => "Obnovit" +); diff --git a/apps/files_trashbin/l10n/da.php b/apps/files_trashbin/l10n/da.php new file mode 100644 index 00000000000..3343b6fc8f6 --- /dev/null +++ b/apps/files_trashbin/l10n/da.php @@ -0,0 +1,8 @@ +<?php $TRANSLATIONS = array( +"Name" => "Navn", +"1 folder" => "1 mappe", +"{count} folders" => "{count} mapper", +"1 file" => "1 fil", +"{count} files" => "{count} filer", +"Restore" => "Gendan" +); diff --git a/apps/files_trashbin/l10n/de.php b/apps/files_trashbin/l10n/de.php new file mode 100644 index 00000000000..45dfb9d6057 --- /dev/null +++ b/apps/files_trashbin/l10n/de.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "Wiederherstellung ausführen", +"Name" => "Name", +"Deleted" => "gelöscht", +"1 folder" => "1 Ordner", +"{count} folders" => "{count} Ordner", +"1 file" => "1 Datei", +"{count} files" => "{count} Dateien", +"Nothing in here. Your trash bin is empty!" => "Nichts zu löschen, der Papierkorb ist leer!", +"Restore" => "Wiederherstellen" +); diff --git a/apps/files_trashbin/l10n/de_DE.php b/apps/files_trashbin/l10n/de_DE.php new file mode 100644 index 00000000000..45e30d85a3b --- /dev/null +++ b/apps/files_trashbin/l10n/de_DE.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "Führe die Wiederherstellung aus", +"Name" => "Name", +"Deleted" => "Gelöscht", +"1 folder" => "1 Ordner", +"{count} folders" => "{count} Ordner", +"1 file" => "1 Datei", +"{count} files" => "{count} Dateien", +"Nothing in here. Your trash bin is empty!" => "Nichts zu löschen, Ihr Papierkorb ist leer!", +"Restore" => "Wiederherstellen" +); diff --git a/apps/files_trashbin/l10n/el.php b/apps/files_trashbin/l10n/el.php new file mode 100644 index 00000000000..83e359890ea --- /dev/null +++ b/apps/files_trashbin/l10n/el.php @@ -0,0 +1,8 @@ +<?php $TRANSLATIONS = array( +"Name" => "Όνομα", +"1 folder" => "1 φάκελος", +"{count} folders" => "{count} φάκελοι", +"1 file" => "1 αÏχείο", +"{count} files" => "{count} αÏχεία", +"Restore" => "ΕπαναφοÏά" +); diff --git a/apps/files_trashbin/l10n/eo.php b/apps/files_trashbin/l10n/eo.php new file mode 100644 index 00000000000..f357e3c10c2 --- /dev/null +++ b/apps/files_trashbin/l10n/eo.php @@ -0,0 +1,8 @@ +<?php $TRANSLATIONS = array( +"Name" => "Nomo", +"1 folder" => "1 dosierujo", +"{count} folders" => "{count} dosierujoj", +"1 file" => "1 dosiero", +"{count} files" => "{count} dosierujoj", +"Restore" => "RestaÅri" +); diff --git a/apps/files_trashbin/l10n/es.php b/apps/files_trashbin/l10n/es.php new file mode 100644 index 00000000000..798322cab24 --- /dev/null +++ b/apps/files_trashbin/l10n/es.php @@ -0,0 +1,8 @@ +<?php $TRANSLATIONS = array( +"Name" => "Nombre", +"1 folder" => "1 carpeta", +"{count} folders" => "{count} carpetas", +"1 file" => "1 archivo", +"{count} files" => "{count} archivos", +"Restore" => "Recuperar" +); diff --git a/apps/files_trashbin/l10n/es_AR.php b/apps/files_trashbin/l10n/es_AR.php new file mode 100644 index 00000000000..d2c5f304284 --- /dev/null +++ b/apps/files_trashbin/l10n/es_AR.php @@ -0,0 +1,8 @@ +<?php $TRANSLATIONS = array( +"Name" => "Nombre", +"1 folder" => "1 directorio", +"{count} folders" => "{count} directorios", +"1 file" => "1 archivo", +"{count} files" => "{count} archivos", +"Restore" => "Recuperar" +); diff --git a/apps/files_trashbin/l10n/et_EE.php b/apps/files_trashbin/l10n/et_EE.php new file mode 100644 index 00000000000..4f46f388020 --- /dev/null +++ b/apps/files_trashbin/l10n/et_EE.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "Nimi", +"1 folder" => "1 kaust", +"{count} folders" => "{count} kausta", +"1 file" => "1 fail", +"{count} files" => "{count} faili" +); diff --git a/apps/files_trashbin/l10n/eu.php b/apps/files_trashbin/l10n/eu.php new file mode 100644 index 00000000000..a1e3ca53e61 --- /dev/null +++ b/apps/files_trashbin/l10n/eu.php @@ -0,0 +1,8 @@ +<?php $TRANSLATIONS = array( +"Name" => "Izena", +"1 folder" => "karpeta bat", +"{count} folders" => "{count} karpeta", +"1 file" => "fitxategi bat", +"{count} files" => "{count} fitxategi", +"Restore" => "Berrezarri" +); diff --git a/apps/files_trashbin/l10n/fa.php b/apps/files_trashbin/l10n/fa.php new file mode 100644 index 00000000000..487d1657985 --- /dev/null +++ b/apps/files_trashbin/l10n/fa.php @@ -0,0 +1,8 @@ +<?php $TRANSLATIONS = array( +"Name" => "نام", +"1 folder" => "1 پوشه", +"{count} folders" => "{ شمار} پوشه ها", +"1 file" => "1 پرونده", +"{count} files" => "{ شمار } ÙØ§ÛŒÙ„ ها", +"Restore" => "بازیابی" +); diff --git a/apps/files_trashbin/l10n/fi_FI.php b/apps/files_trashbin/l10n/fi_FI.php new file mode 100644 index 00000000000..de25027f9a8 --- /dev/null +++ b/apps/files_trashbin/l10n/fi_FI.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "suorita palautustoiminto", +"Name" => "Nimi", +"Deleted" => "Poistettu", +"1 folder" => "1 kansio", +"{count} folders" => "{count} kansiota", +"1 file" => "1 tiedosto", +"{count} files" => "{count} tiedostoa", +"Nothing in here. Your trash bin is empty!" => "Tyhjää täynnä! Roskakorissa ei ole mitään.", +"Restore" => "Palauta" +); diff --git a/apps/files_trashbin/l10n/fr.php b/apps/files_trashbin/l10n/fr.php new file mode 100644 index 00000000000..51ade82d908 --- /dev/null +++ b/apps/files_trashbin/l10n/fr.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "effectuer l'opération de restauration", +"Name" => "Nom", +"Deleted" => "Effacé", +"1 folder" => "1 dossier", +"{count} folders" => "{count} dossiers", +"1 file" => "1 fichier", +"{count} files" => "{count} fichiers", +"Nothing in here. Your trash bin is empty!" => "Il n'y a rien ici. Votre corbeille est vide !", +"Restore" => "Restaurer" +); diff --git a/apps/files_trashbin/l10n/gl.php b/apps/files_trashbin/l10n/gl.php new file mode 100644 index 00000000000..bdc3187b20b --- /dev/null +++ b/apps/files_trashbin/l10n/gl.php @@ -0,0 +1,8 @@ +<?php $TRANSLATIONS = array( +"Name" => "Nome", +"1 folder" => "1 cartafol", +"{count} folders" => "{count} cartafoles", +"1 file" => "1 ficheiro", +"{count} files" => "{count} ficheiros", +"Restore" => "Restablecer" +); diff --git a/apps/files_trashbin/l10n/he.php b/apps/files_trashbin/l10n/he.php new file mode 100644 index 00000000000..d026add5d75 --- /dev/null +++ b/apps/files_trashbin/l10n/he.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "ש×", +"1 folder" => "תיקייה ×חת", +"{count} folders" => "{count} תיקיות", +"1 file" => "קובץ ×חד", +"{count} files" => "{count} קבצי×" +); diff --git a/apps/files_trashbin/l10n/hr.php b/apps/files_trashbin/l10n/hr.php new file mode 100644 index 00000000000..52255c7429a --- /dev/null +++ b/apps/files_trashbin/l10n/hr.php @@ -0,0 +1,3 @@ +<?php $TRANSLATIONS = array( +"Name" => "Ime" +); diff --git a/apps/files_trashbin/l10n/hu_HU.php b/apps/files_trashbin/l10n/hu_HU.php new file mode 100644 index 00000000000..c4e2b5e2125 --- /dev/null +++ b/apps/files_trashbin/l10n/hu_HU.php @@ -0,0 +1,8 @@ +<?php $TRANSLATIONS = array( +"Name" => "Név", +"1 folder" => "1 mappa", +"{count} folders" => "{count} mappa", +"1 file" => "1 fájl", +"{count} files" => "{count} fájl", +"Restore" => "VisszaállÃtás" +); diff --git a/apps/files_trashbin/l10n/ia.php b/apps/files_trashbin/l10n/ia.php new file mode 100644 index 00000000000..c2581f3de17 --- /dev/null +++ b/apps/files_trashbin/l10n/ia.php @@ -0,0 +1,3 @@ +<?php $TRANSLATIONS = array( +"Name" => "Nomine" +); diff --git a/apps/files_trashbin/l10n/id.php b/apps/files_trashbin/l10n/id.php new file mode 100644 index 00000000000..1a14d8b7c21 --- /dev/null +++ b/apps/files_trashbin/l10n/id.php @@ -0,0 +1,3 @@ +<?php $TRANSLATIONS = array( +"Name" => "nama" +); diff --git a/apps/files_trashbin/l10n/is.php b/apps/files_trashbin/l10n/is.php new file mode 100644 index 00000000000..416f641a8ef --- /dev/null +++ b/apps/files_trashbin/l10n/is.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "Nafn", +"1 folder" => "1 mappa", +"{count} folders" => "{count} möppur", +"1 file" => "1 skrá", +"{count} files" => "{count} skrár" +); diff --git a/apps/files_trashbin/l10n/it.php b/apps/files_trashbin/l10n/it.php new file mode 100644 index 00000000000..7def431a42a --- /dev/null +++ b/apps/files_trashbin/l10n/it.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "esegui operazione di ripristino", +"Name" => "Nome", +"Deleted" => "Eliminati", +"1 folder" => "1 cartella", +"{count} folders" => "{count} cartelle", +"1 file" => "1 file", +"{count} files" => "{count} file", +"Nothing in here. Your trash bin is empty!" => "Qui non c'è niente. Il tuo cestino è vuoto.", +"Restore" => "Ripristina" +); diff --git a/apps/files_trashbin/l10n/ja_JP.php b/apps/files_trashbin/l10n/ja_JP.php new file mode 100644 index 00000000000..0b4e1954e74 --- /dev/null +++ b/apps/files_trashbin/l10n/ja_JP.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "復元æ“作を実行ã™ã‚‹", +"Name" => "åå‰", +"Deleted" => "削除済ã¿", +"1 folder" => "1 フォルダ", +"{count} folders" => "{count} フォルダ", +"1 file" => "1 ファイル", +"{count} files" => "{count} ファイル", +"Nothing in here. Your trash bin is empty!" => "ã“ã“ã«ã¯ä½•ã‚‚ã‚りã¾ã›ã‚“。ゴミ箱ã¯ç©ºã§ã™ï¼", +"Restore" => "復元" +); diff --git a/apps/files_trashbin/l10n/ka_GE.php b/apps/files_trashbin/l10n/ka_GE.php new file mode 100644 index 00000000000..43dba38f5c7 --- /dev/null +++ b/apps/files_trashbin/l10n/ka_GE.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "სáƒáƒ®áƒ”ლი", +"1 folder" => "1 სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ე", +"{count} folders" => "{count} სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ე", +"1 file" => "1 ფáƒáƒ˜áƒšáƒ˜", +"{count} files" => "{count} ფáƒáƒ˜áƒšáƒ˜" +); diff --git a/apps/files_trashbin/l10n/ko.php b/apps/files_trashbin/l10n/ko.php new file mode 100644 index 00000000000..61acd1276a7 --- /dev/null +++ b/apps/files_trashbin/l10n/ko.php @@ -0,0 +1,8 @@ +<?php $TRANSLATIONS = array( +"Name" => "ì´ë¦„", +"1 folder" => "í´ë” 1ê°œ", +"{count} folders" => "í´ë” {count}ê°œ", +"1 file" => "íŒŒì¼ 1ê°œ", +"{count} files" => "íŒŒì¼ {count}ê°œ", +"Restore" => "ë³µì›" +); diff --git a/apps/files_trashbin/l10n/ku_IQ.php b/apps/files_trashbin/l10n/ku_IQ.php new file mode 100644 index 00000000000..cbdbe4644d1 --- /dev/null +++ b/apps/files_trashbin/l10n/ku_IQ.php @@ -0,0 +1,3 @@ +<?php $TRANSLATIONS = array( +"Name" => "ناو" +); diff --git a/apps/files_trashbin/l10n/lb.php b/apps/files_trashbin/l10n/lb.php new file mode 100644 index 00000000000..d1bd7518663 --- /dev/null +++ b/apps/files_trashbin/l10n/lb.php @@ -0,0 +1,3 @@ +<?php $TRANSLATIONS = array( +"Name" => "Numm" +); diff --git a/apps/files_trashbin/l10n/lt_LT.php b/apps/files_trashbin/l10n/lt_LT.php new file mode 100644 index 00000000000..4933e97202f --- /dev/null +++ b/apps/files_trashbin/l10n/lt_LT.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "Pavadinimas", +"1 folder" => "1 aplankalas", +"{count} folders" => "{count} aplankalai", +"1 file" => "1 failas", +"{count} files" => "{count} failai" +); diff --git a/apps/files_trashbin/l10n/lv.php b/apps/files_trashbin/l10n/lv.php new file mode 100644 index 00000000000..017a8d285c0 --- /dev/null +++ b/apps/files_trashbin/l10n/lv.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "veikt atjaunoÅ¡anu", +"Name" => "Nosaukums", +"Deleted" => "DzÄ“sts", +"1 folder" => "1 mape", +"{count} folders" => "{count} mapes", +"1 file" => "1 datne", +"{count} files" => "{count} datnes", +"Nothing in here. Your trash bin is empty!" => "Å eit nekÄ nav. JÅ«su miskaste ir tukÅ¡a!", +"Restore" => "Atjaunot" +); diff --git a/apps/files_trashbin/l10n/mk.php b/apps/files_trashbin/l10n/mk.php new file mode 100644 index 00000000000..b983c341e8c --- /dev/null +++ b/apps/files_trashbin/l10n/mk.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "Име", +"1 folder" => "1 папка", +"{count} folders" => "{count} папки", +"1 file" => "1 датотека", +"{count} files" => "{count} датотеки" +); diff --git a/apps/files_trashbin/l10n/ms_MY.php b/apps/files_trashbin/l10n/ms_MY.php new file mode 100644 index 00000000000..73e97b496e4 --- /dev/null +++ b/apps/files_trashbin/l10n/ms_MY.php @@ -0,0 +1,3 @@ +<?php $TRANSLATIONS = array( +"Name" => "Nama" +); diff --git a/apps/files_trashbin/l10n/nb_NO.php b/apps/files_trashbin/l10n/nb_NO.php new file mode 100644 index 00000000000..49364753d13 --- /dev/null +++ b/apps/files_trashbin/l10n/nb_NO.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "Navn", +"1 folder" => "1 mappe", +"{count} folders" => "{count} mapper", +"1 file" => "1 fil", +"{count} files" => "{count} filer" +); diff --git a/apps/files_trashbin/l10n/nl.php b/apps/files_trashbin/l10n/nl.php new file mode 100644 index 00000000000..4efa6ecf662 --- /dev/null +++ b/apps/files_trashbin/l10n/nl.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "uitvoeren restore operatie", +"Name" => "Naam", +"Deleted" => "Verwijderd", +"1 folder" => "1 map", +"{count} folders" => "{count} mappen", +"1 file" => "1 bestand", +"{count} files" => "{count} bestanden", +"Nothing in here. Your trash bin is empty!" => "Niets te vinden. Uw prullenbak is leeg!", +"Restore" => "Herstellen" +); diff --git a/apps/files_trashbin/l10n/nn_NO.php b/apps/files_trashbin/l10n/nn_NO.php new file mode 100644 index 00000000000..be60dabdf01 --- /dev/null +++ b/apps/files_trashbin/l10n/nn_NO.php @@ -0,0 +1,3 @@ +<?php $TRANSLATIONS = array( +"Name" => "Namn" +); diff --git a/apps/files_trashbin/l10n/oc.php b/apps/files_trashbin/l10n/oc.php new file mode 100644 index 00000000000..2c705193c15 --- /dev/null +++ b/apps/files_trashbin/l10n/oc.php @@ -0,0 +1,3 @@ +<?php $TRANSLATIONS = array( +"Name" => "Nom" +); diff --git a/apps/files_trashbin/l10n/pl.php b/apps/files_trashbin/l10n/pl.php new file mode 100644 index 00000000000..d2ada4c9466 --- /dev/null +++ b/apps/files_trashbin/l10n/pl.php @@ -0,0 +1,8 @@ +<?php $TRANSLATIONS = array( +"Name" => "Nazwa", +"1 folder" => "1 folder", +"{count} folders" => "{count} foldery", +"1 file" => "1 plik", +"{count} files" => "{count} pliki", +"Restore" => "Przywróć" +); diff --git a/apps/files_trashbin/l10n/pt_BR.php b/apps/files_trashbin/l10n/pt_BR.php new file mode 100644 index 00000000000..db5737d9238 --- /dev/null +++ b/apps/files_trashbin/l10n/pt_BR.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "realizar operação de restauração", +"Name" => "Nome", +"Deleted" => "ExcluÃdo", +"1 folder" => "1 pasta", +"{count} folders" => "{count} pastas", +"1 file" => "1 arquivo", +"{count} files" => "{count} arquivos", +"Nothing in here. Your trash bin is empty!" => "Nada aqui. Sua lixeira está vazia!", +"Restore" => "Restaurar" +); diff --git a/apps/files_trashbin/l10n/pt_PT.php b/apps/files_trashbin/l10n/pt_PT.php new file mode 100644 index 00000000000..79930315b0e --- /dev/null +++ b/apps/files_trashbin/l10n/pt_PT.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "Restaurar", +"Name" => "Nome", +"Deleted" => "Apagado", +"1 folder" => "1 pasta", +"{count} folders" => "{count} pastas", +"1 file" => "1 ficheiro", +"{count} files" => "{count} ficheiros", +"Nothing in here. Your trash bin is empty!" => "Não ha ficheiros. O lixo está vazio", +"Restore" => "Restaurar" +); diff --git a/apps/files_trashbin/l10n/ro.php b/apps/files_trashbin/l10n/ro.php new file mode 100644 index 00000000000..6ece51e02cf --- /dev/null +++ b/apps/files_trashbin/l10n/ro.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "Nume", +"1 folder" => "1 folder", +"{count} folders" => "{count} foldare", +"1 file" => "1 fisier", +"{count} files" => "{count} fisiere" +); diff --git a/apps/files_trashbin/l10n/ru.php b/apps/files_trashbin/l10n/ru.php new file mode 100644 index 00000000000..23d739a2ff7 --- /dev/null +++ b/apps/files_trashbin/l10n/ru.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "ИмÑ", +"1 folder" => "1 папка", +"{count} folders" => "{count} папок", +"1 file" => "1 файл", +"{count} files" => "{count} файлов" +); diff --git a/apps/files_trashbin/l10n/ru_RU.php b/apps/files_trashbin/l10n/ru_RU.php new file mode 100644 index 00000000000..8ef2658cf24 --- /dev/null +++ b/apps/files_trashbin/l10n/ru_RU.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "ИмÑ", +"1 folder" => "1 папка", +"{count} folders" => "{количеÑтво} папок", +"1 file" => "1 файл", +"{count} files" => "{количеÑтво} файлов" +); diff --git a/apps/files_trashbin/l10n/si_LK.php b/apps/files_trashbin/l10n/si_LK.php new file mode 100644 index 00000000000..cb351afaec9 --- /dev/null +++ b/apps/files_trashbin/l10n/si_LK.php @@ -0,0 +1,5 @@ +<?php $TRANSLATIONS = array( +"Name" => "නම", +"1 folder" => "1 ෆොල්ඩරයක්", +"1 file" => "1 ගොනුවක්" +); diff --git a/apps/files_trashbin/l10n/sk_SK.php b/apps/files_trashbin/l10n/sk_SK.php new file mode 100644 index 00000000000..81d43614d7b --- /dev/null +++ b/apps/files_trashbin/l10n/sk_SK.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "vykonaÅ¥ obnovu", +"Name" => "Meno", +"Deleted" => "Zmazané", +"1 folder" => "1 prieÄinok", +"{count} folders" => "{count} prieÄinkov", +"1 file" => "1 súbor", +"{count} files" => "{count} súborov", +"Nothing in here. Your trash bin is empty!" => "Žiadny obsah. Kôš je prázdny!", +"Restore" => "ObnoviÅ¥" +); diff --git a/apps/files_trashbin/l10n/sl.php b/apps/files_trashbin/l10n/sl.php new file mode 100644 index 00000000000..2579f95c862 --- /dev/null +++ b/apps/files_trashbin/l10n/sl.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "Ime", +"1 folder" => "1 mapa", +"{count} folders" => "{count} map", +"1 file" => "1 datoteka", +"{count} files" => "{count} datotek" +); diff --git a/apps/files_trashbin/l10n/sr.php b/apps/files_trashbin/l10n/sr.php new file mode 100644 index 00000000000..36659e70803 --- /dev/null +++ b/apps/files_trashbin/l10n/sr.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "врати у претходно Ñтање", +"Name" => "Име", +"Deleted" => "ОбриÑано", +"1 folder" => "1 фаÑцикла", +"{count} folders" => "{count} фаÑцикле/и", +"1 file" => "1 датотека", +"{count} files" => "{count} датотеке/а", +"Nothing in here. Your trash bin is empty!" => "Овде нема ништа. Корпа за отпатке је празна.", +"Restore" => "Врати" +); diff --git a/apps/files_trashbin/l10n/sr@latin.php b/apps/files_trashbin/l10n/sr@latin.php new file mode 100644 index 00000000000..52255c7429a --- /dev/null +++ b/apps/files_trashbin/l10n/sr@latin.php @@ -0,0 +1,3 @@ +<?php $TRANSLATIONS = array( +"Name" => "Ime" +); diff --git a/apps/files_trashbin/l10n/sv.php b/apps/files_trashbin/l10n/sv.php new file mode 100644 index 00000000000..ca4dba04967 --- /dev/null +++ b/apps/files_trashbin/l10n/sv.php @@ -0,0 +1,10 @@ +<?php $TRANSLATIONS = array( +"Name" => "Namn", +"Deleted" => "Raderad", +"1 folder" => "1 mapp", +"{count} folders" => "{count} mappar", +"1 file" => "1 fil", +"{count} files" => "{count} filer", +"Nothing in here. Your trash bin is empty!" => "Ingenting här. Din papperskorg är tom!", +"Restore" => "Ã…terskapa" +); diff --git a/apps/files_trashbin/l10n/ta_LK.php b/apps/files_trashbin/l10n/ta_LK.php new file mode 100644 index 00000000000..a436e2344a4 --- /dev/null +++ b/apps/files_trashbin/l10n/ta_LK.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "பெயரà¯", +"1 folder" => "1 கோபà¯à®ªà¯à®±à¯ˆ", +"{count} folders" => "{எணà¯à®£à®¿à®•à¯à®•ை} கோபà¯à®ªà¯à®±à¯ˆà®•ளà¯", +"1 file" => "1 கோபà¯à®ªà¯", +"{count} files" => "{எணà¯à®£à®¿à®•à¯à®•ை} கோபà¯à®ªà¯à®•ளà¯" +); diff --git a/apps/files_trashbin/l10n/th_TH.php b/apps/files_trashbin/l10n/th_TH.php new file mode 100644 index 00000000000..8a031fb0d70 --- /dev/null +++ b/apps/files_trashbin/l10n/th_TH.php @@ -0,0 +1,11 @@ +<?php $TRANSLATIONS = array( +"perform restore operation" => "ดำเนินà¸à¸²à¸£à¸„ืนค่า", +"Name" => "ชื่à¸", +"Deleted" => "ลบà¹à¸¥à¹‰à¸§", +"1 folder" => "1 โฟลเดà¸à¸£à¹Œ", +"{count} folders" => "{count} โฟลเดà¸à¸£à¹Œ", +"1 file" => "1 ไฟล์", +"{count} files" => "{count} ไฟล์", +"Nothing in here. Your trash bin is empty!" => "ไม่มีà¸à¸°à¹„รà¸à¸¢à¸¹à¹ˆà¹ƒà¸™à¸™à¸µà¹‰ ถังขยะขà¸à¸‡à¸„ุณยังว่างà¸à¸¢à¸¹à¹ˆ", +"Restore" => "คืนค่า" +); diff --git a/apps/files_trashbin/l10n/tr.php b/apps/files_trashbin/l10n/tr.php new file mode 100644 index 00000000000..5b7064eceaf --- /dev/null +++ b/apps/files_trashbin/l10n/tr.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "İsim", +"1 folder" => "1 dizin", +"{count} folders" => "{count} dizin", +"1 file" => "1 dosya", +"{count} files" => "{count} dosya" +); diff --git a/apps/files_trashbin/l10n/uk.php b/apps/files_trashbin/l10n/uk.php new file mode 100644 index 00000000000..14c6931255a --- /dev/null +++ b/apps/files_trashbin/l10n/uk.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "Ім'Ñ", +"1 folder" => "1 папка", +"{count} folders" => "{count} папок", +"1 file" => "1 файл", +"{count} files" => "{count} файлів" +); diff --git a/apps/files_trashbin/l10n/vi.php b/apps/files_trashbin/l10n/vi.php new file mode 100644 index 00000000000..2c51c69aaf2 --- /dev/null +++ b/apps/files_trashbin/l10n/vi.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "Tên", +"1 folder" => "1 thư mục", +"{count} folders" => "{count} thư mục", +"1 file" => "1 táºp tin", +"{count} files" => "{count} táºp tin" +); diff --git a/apps/files_trashbin/l10n/zh_CN.GB2312.php b/apps/files_trashbin/l10n/zh_CN.GB2312.php new file mode 100644 index 00000000000..2c6a7891e98 --- /dev/null +++ b/apps/files_trashbin/l10n/zh_CN.GB2312.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "åç§°", +"1 folder" => "1 个文件夹", +"{count} folders" => "{count} 个文件夹", +"1 file" => "1 个文件", +"{count} files" => "{count} 个文件" +); diff --git a/apps/files_trashbin/l10n/zh_CN.php b/apps/files_trashbin/l10n/zh_CN.php new file mode 100644 index 00000000000..0060b1f31d6 --- /dev/null +++ b/apps/files_trashbin/l10n/zh_CN.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "åç§°", +"1 folder" => "1个文件夹", +"{count} folders" => "{count} 个文件夹", +"1 file" => "1 个文件", +"{count} files" => "{count} 个文件" +); diff --git a/apps/files_trashbin/l10n/zh_TW.php b/apps/files_trashbin/l10n/zh_TW.php new file mode 100644 index 00000000000..be61d9b0b6d --- /dev/null +++ b/apps/files_trashbin/l10n/zh_TW.php @@ -0,0 +1,7 @@ +<?php $TRANSLATIONS = array( +"Name" => "å稱", +"1 folder" => "1 個資料夾", +"{count} folders" => "{count} 個資料夾", +"1 file" => "1 個檔案", +"{count} files" => "{count} 個檔案" +); diff --git a/apps/files_trashbin/lib/hooks.php b/apps/files_trashbin/lib/hooks.php new file mode 100644 index 00000000000..d3bee105b51 --- /dev/null +++ b/apps/files_trashbin/lib/hooks.php @@ -0,0 +1,45 @@ +<?php +/**
+ * ownCloud - trash bin
+ *
+ * @author Bjoern Schiessle
+ * @copyright 2013 Bjoern Schiessle schiessle@owncloud.com
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */ + +/** + * This class contains all hooks. + */ + +namespace OCA_Trash; + +class Hooks { + + /** + * @brief Copy files to trash bin + * @param array + * + * This function is connected to the delete signal of OC_Filesystem + * to copy the file to the trash bin + */ + public static function remove_hook($params) { + + if ( \OCP\App::isEnabled('files_trashbin') ) { + $path = $params['path']; + Trashbin::move2trash($path); + } + } +} diff --git a/apps/files_trashbin/lib/trash.php b/apps/files_trashbin/lib/trash.php new file mode 100644 index 00000000000..a7eff3d44e0 --- /dev/null +++ b/apps/files_trashbin/lib/trash.php @@ -0,0 +1,264 @@ +<?php +/**
+ * ownCloud - trash bin
+ *
+ * @author Bjoern Schiessle
+ * @copyright 2013 Bjoern Schiessle schiessle@owncloud.com
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+ +namespace OCA_Trash;
+
+class Trashbin { + + const DEFAULT_RETENTION_OBLIGATION=180; // how long do we keep files in the trash bin if no other value is defined in the config file (unit: days) + /** + * move file to the trash bin + * + * @param $file_path path to the deleted file/directory relative to the files root directory + */ + public static function move2trash($file_path) { + $user = \OCP\User::getUser(); + $view = new \OC_FilesystemView('/'. $user);
+ if (!$view->is_dir('files_trashbin')) {
+ $view->mkdir('files_trashbin');
+ $view->mkdir("versions_trashbin");
+ }
+
+ $path_parts = pathinfo($file_path);
+
+ $deleted = $path_parts['basename'];
+ $location = $path_parts['dirname'];
+ $timestamp = time();
+ $mime = $view->getMimeType('files'.$file_path);
+
+ if ( $view->is_dir('files'.$file_path) ) {
+ $type = 'dir';
+ } else {
+ $type = 'file';
+ }
+ + self::copy_recursive($file_path, 'files_trashbin/'.$deleted.'.d'.$timestamp, $view); + + if ( $view->file_exists('files_trashbin/'.$deleted.'.d'.$timestamp) ) {
+ $query = \OC_DB::prepare("INSERT INTO *PREFIX*files_trash (id,timestamp,location,type,mime,user) VALUES (?,?,?,?,?,?)");
+ $result = $query->execute(array($deleted, $timestamp, $location, $type, $mime, $user)); + if ( !$result ) { // if file couldn't be added to the database than also don't store it in the trash bin. + $view->deleteAll('files_trashbin/'.$deleted.'.d'.$timestamp); + \OC_Log::write('files_trashbin', 'trash bin database couldn\'t be updated', \OC_log::ERROR); + return; + }
+
+ if ( \OCP\App::isEnabled('files_versions') ) {
+ if ( $view->is_dir('files_versions'.$file_path) ) {
+ $view->rename('files_versions'.$file_path, 'versions_trashbin/'. $deleted.'.d'.$timestamp);
+ } else if ( $versions = \OCA_Versions\Storage::getVersions($file_path) ) {
+ foreach ($versions as $v) {
+ $view->rename('files_versions'.$v['path'].'.v'.$v['version'], 'versions_trashbin/'. $deleted.'.v'.$v['version'].'.d'.$timestamp);
+ }
+ }
+ } + } else { + \OC_Log::write('files_trashbin', 'Couldn\'t move '.$file_path.' to the trash bin' , \OC_log::ERROR); + } + + self::expire();
+ } + + + /** + * restore files from trash bin + * @param $file path to the deleted file + * @param $filename name of the file + * @param $timestamp time when the file was deleted + */ + public static function restore($file, $filename, $timestamp) { + + $user = \OCP\User::getUser(); + $view = new \OC_FilesystemView('/'.$user); + + if ( $timestamp ) { + $query = \OC_DB::prepare('SELECT location,type FROM *PREFIX*files_trash WHERE user=? AND id=? AND timestamp=?');
+ $result = $query->execute(array($user,$filename,$timestamp))->fetchAll(); + if ( count($result) != 1 ) { + \OC_Log::write('files_trashbin', 'trash bin database inconsistent!', \OC_Log::ERROR); + return false; + } + + // if location no longer exists, restore file in the root directory
+ $location = $result[0]['location'];
+ if ( $result[0]['location'] != '/' && + (!$view->is_dir('files'.$result[0]['location']) || + !$view->isUpdatable('files'.$result[0]['location'])) ) {
+ $location = '';
+ } + } else { + $path_parts = pathinfo($filename); + $result[] = array( + 'location' => $path_parts['dirname'], + 'type' => $view->is_dir('/files_trashbin/'.$file) ? 'dir' : 'files', + ); + $location = ''; + } + + $source = \OC_Filesystem::normalizePath('files_trashbin/'.$file); + $target = \OC_Filesystem::normalizePath('files/'.$location.'/'.$filename); + + // we need a extension in case a file/dir with the same name already exists + $ext = self::getUniqueExtension($location, $filename, $view); + $mtime = $view->filemtime($source); + if( $view->rename($source, $target.$ext) ) { + $view->touch($target.$ext, $mtime); + // if versioning app is enabled, copy versions from the trash bin back to the original location + if ( \OCP\App::isEnabled('files_versions') ) {
+ if ( $result[0]['type'] == 'dir' ) {
+ $view->rename(\OC_Filesystem::normalizePath('versions_trashbin/'. $file), \OC_Filesystem::normalizePath('files_versions/'.$location.'/'.$filename.$ext));
+ } else if ( $versions = self::getVersionsFromTrash($file, $timestamp) ) {
+ foreach ($versions as $v) { + if ($timestamp ) { + $view->rename('versions_trashbin/'.$filename.'.v'.$v.'.d'.$timestamp, 'files_versions/'.$location.'/'.$filename.$ext.'.v'.$v); + } else { + $view->rename('versions_trashbin/'.$file.'.v'.$v, 'files_versions/'.$location.'/'.$filename.$ext.'.v'.$v); + }
+ }
+ }
+ } + + if ( $timestamp ) { + $query = \OC_DB::prepare('DELETE FROM *PREFIX*files_trash WHERE user=? AND id=? AND timestamp=?');
+ $query->execute(array($user,$filename,$timestamp)); + } + + return true; + } else { + \OC_Log::write('files_trashbin', 'Couldn\'t restore file from trash bin, '.$filename , \OC_log::ERROR); + } + + return false; + } + + /**
+ * clean up the trash bin
+ */
+ private static function expire() { + + $view = new \OC_FilesystemView('/'.\OCP\User::getUser()); + $user = \OCP\User::getUser(); + + $query = \OC_DB::prepare('SELECT location,type,id,timestamp FROM *PREFIX*files_trash WHERE user=?');
+ $result = $query->execute(array($user))->fetchAll(); + + $retention_obligation = \OC_Config::getValue('trashbin_retention_obligation', self::DEFAULT_RETENTION_OBLIGATION); + + $limit = time() - ($retention_obligation * 86400); + + foreach ( $result as $r ) { + $timestamp = $r['timestamp']; + $filename = $r['id']; + if ( $r['timestamp'] < $limit ) { + $view->unlink('files_trashbin/'.$filename.'.d'.$timestamp); + if ($r['type'] == 'dir') { + $view->unlink('versions_trashbin/'.$filename.'.d'.$timestamp); + } else if ( $versions = self::getVersionsFromTrash($filename, $timestamp) ) { + foreach ($versions as $v) { + $view->unlink('versions_trashbin/'.$filename.'.v'.$v.'.d'.$timestamp); + } + } + } + } + + $query = \OC_DB::prepare('DELETE FROM *PREFIX*files_trash WHERE user=? AND timestamp<?');
+ $query->execute(array($user,$limit));
+ } + + /** + * recursive copy to copy a whole directory + * + * @param $source source path, relative to the users files directory + * @param $destination destination path relative to the users root directoy + * @param $view file view for the users root directory + */ + private static function copy_recursive( $source, $destination, $view ) { + if ( $view->is_dir( 'files'.$source ) ) { + $view->mkdir( $destination ); + $view->touch($destination, $view->filemtime('files'.$source)); + foreach ( \OC_Files::getDirectoryContent($source) as $i ) { + $pathDir = $source.'/'.$i['name']; + if ( $view->is_dir('files'.$pathDir) ) { + self::copy_recursive($pathDir, $destination.'/'.$i['name'], $view); + } else { + $view->copy( 'files'.$pathDir, $destination . '/' . $i['name'] ); + $view->touch($destination . '/' . $i['name'], $view->filemtime('files'.$pathDir)); + } + } + } else { + $view->copy( 'files'.$source, $destination ); + $view->touch($destination, $view->filemtime('files'.$source)); + } + } + + /** + * find all versions which belong to the file we want to restore + * @param $filename name of the file which should be restored + * @param $timestamp timestamp when the file was deleted + */ + private static function getVersionsFromTrash($filename, $timestamp) { + $view = new \OC_FilesystemView('/'.\OCP\User::getUser().'/versions_trashbin'); + $versionsName = \OCP\Config::getSystemValue('datadirectory').$view->getAbsolutePath($filename);
+ $versions = array();
+ + if ($timestamp ) { + // fetch for old versions
+ $matches = glob( $versionsName.'.v*.d'.$timestamp ); + $offset = -strlen($timestamp)-2; + } else { + $matches = glob( $versionsName.'.v*' ); + }
+
+ foreach( $matches as $ma ) { + if ( $timestamp ) { + $parts = explode( '.v', substr($ma, 0, $offset) );
+ $versions[] = ( end( $parts ) ); + } else { + $parts = explode( '.v', $ma );
+ $versions[] = ( end( $parts ) ); + } + } + return $versions; + } + + /** + * find unique extension for restored file if a file with the same name already exists + * @param $location where the file should be restored + * @param $filename name of the file + * @param $view filesystem view relative to users root directory + * @return string with unique extension + */ + private static function getUniqueExtension($location, $filename, $view) { + $ext = '';
+ if ( $view->file_exists('files'.$location.'/'.$filename) ) {
+ $tmpext = '.restored';
+ $ext = $tmpext;
+ $i = 1;
+ while ( $view->file_exists('files'.$location.'/'.$filename.$ext) ) {
+ $ext = $tmpext.$i;
+ $i++;
+ }
+ } + return $ext; + } + +}
diff --git a/apps/files_trashbin/templates/index.php b/apps/files_trashbin/templates/index.php new file mode 100644 index 00000000000..c3e51b4becd --- /dev/null +++ b/apps/files_trashbin/templates/index.php @@ -0,0 +1,34 @@ +<!--[if IE 8]><style>input[type="checkbox"]{padding:0;}table td{position:static !important;}</style><![endif]--> +<div id="controls"> + <?php echo($_['breadcrumb']); ?> + <div id="file_action_panel"></div> +</div> +<div id='notification'></div> + +<?php if (isset($_['files']) && count($_['files'])==0):?> + <div id="emptyfolder"><?php echo $l->t('Nothing in here. Your trash bin is empty!')?></div> +<?php endif; ?> + +<table> + <thead> + <tr> + <th id='headerName'> + <input type="checkbox" id="select_all" /> + <span class='name'><?php echo $l->t( 'Name' ); ?></span> + <span class='selectedActions'> + <a href="" class="undelete"> + <img class="svg" alt="<?php echo $l->t( 'Restore' ); ?>" + src="<?php echo OCP\image_path("core", "actions/undelete.png"); ?>" /> + <?php echo $l->t('Restore')?> + </a> + </span> + </th> + <th id="headerDate"> + <span id="modified"><?php echo $l->t( 'Deleted' ); ?></span> + </th> + </tr> + </thead> + <tbody id="fileList"> + <?php echo($_['fileList']); ?> + </tbody> +</table> diff --git a/apps/files_trashbin/templates/part.list.php b/apps/files_trashbin/templates/part.list.php new file mode 100644 index 00000000000..fe8a71f44e6 --- /dev/null +++ b/apps/files_trashbin/templates/part.list.php @@ -0,0 +1,76 @@ +<input type="hidden" id="disableSharing" data-status="<?php echo $_['disableSharing']; ?>"> +<?php foreach($_['files'] as $file): + $simple_file_size = OCP\simple_file_size($file['size']); + // the bigger the file, the darker the shade of grey; megabytes*2 + $simple_size_color = intval(200-$file['size']/(1024*1024)*2); + if($simple_size_color<0) $simple_size_color = 0; + $relative_deleted_date = OCP\relative_modified_date($file['timestamp']); + // the older the file, the brighter the shade of grey; days*14 + $relative_date_color = round((time()-$file['mtime'])/60/60/24*14); + if($relative_date_color>200) $relative_date_color = 200; + $name = str_replace('+', '%20', urlencode($file['name'])); + $name = str_replace('%2F', '/', $name); + $directory = str_replace('+', '%20', urlencode($file['directory'])); + $directory = str_replace('%2F', '/', $directory); ?> + <tr data-filename="<?php echo $file['name'];?>" + data-type="<?php echo ($file['type'] == 'dir')?'dir':'file'?>" + data-mime="<?php echo $file['mimetype']?>" + data-permissions='<?php echo $file['permissions']; ?>' + <?php if ( $_['dirlisting'] ): ?> + id="<?php echo $file['directory'].'/'.$file['name'];?>" + data-file="<?php echo $file['directory'].'/'.$file['name'];?>" + data-timestamp='' + data-dirlisting=1 + <?php else: ?> + id="<?php echo $file['name'].'.d'.$file['timestamp'];?>" + data-file="<?php echo $file['name'].'.d'.$file['timestamp'];?>" + data-timestamp='<?php echo $file['timestamp'];?>' + data-dirlisting=0 + <?php endif; ?>> + <td class="filename svg" + <?php if($file['type'] == 'dir'): ?> + style="background-image:url(<?php echo OCP\mimetype_icon('dir'); ?>)" + <?php else: ?> + style="background-image:url(<?php echo OCP\mimetype_icon($file['mimetype']); ?>)" + <?php endif; ?> + > + <?php if(!isset($_['readonly']) || !$_['readonly']): ?><input type="checkbox" /><?php endif; ?> + <?php if($file['type'] == 'dir'): ?> + <?php if( $_['dirlisting'] ): ?> + <a class="name" href="<?php echo $_['baseURL'].'/'.$name; ?>" title=""> + <?php else: ?> + <a class="name" href="<?php echo $_['baseURL'].'/'.$name.'.d'.$file['timestamp']; ?>" title=""> + <?php endif; ?> + <?php else: ?> + <?php if( $_['dirlisting'] ): ?> + <a class="name" href="<?php echo $_['downloadURL'].'/'.$name; ?>" title=""> + <?php else: ?> + <a class="name" href="<?php echo $_['downloadURL'].'/'.$name.'.d'.$file['timestamp'];?>" title=""> + <?php endif; ?> + <?php endif; ?> + <span class="nametext"> + <?php if($file['type'] == 'dir'):?> + <?php echo htmlspecialchars($file['name']);?> + <?php else:?> + <?php echo htmlspecialchars($file['basename']);?><span + class='extension'><?php echo $file['extension'];?></span> + <?php endif;?> + </span> + <?php if($file['type'] == 'dir'):?> + <span class="uploadtext" currentUploads="0"> + </span> + <?php endif;?> + </a> + </td> + <td class="date"> + <span class="modified" + title="<?php echo $file['date']; ?>" + style="color:rgb(<?php echo $relative_date_color.',' + .$relative_date_color.',' + .$relative_date_color ?>)"> + <?php echo $relative_deleted_date; ?> + </span> + </td> + </tr> +<?php endforeach; +
\ No newline at end of file diff --git a/apps/files_versions/appinfo/app.php b/apps/files_versions/appinfo/app.php index afc0a67edba..edd0a2f7022 100644 --- a/apps/files_versions/appinfo/app.php +++ b/apps/files_versions/appinfo/app.php @@ -12,5 +12,5 @@ OCP\Util::addscript('files_versions', 'versions'); // Listen to write signals OCP\Util::connectHook('OC_Filesystem', 'write', "OCA_Versions\Hooks", "write_hook"); // Listen to delete and rename signals -OCP\Util::connectHook('OC_Filesystem', 'delete', "OCA_Versions\Hooks", "remove_hook"); +OCP\Util::connectHook('OC_Filesystem', 'post-delete', "OCA_Versions\Hooks", "remove_hook"); OCP\Util::connectHook('OC_Filesystem', 'rename', "OCA_Versions\Hooks", "rename_hook");
\ No newline at end of file diff --git a/apps/files_versions/appinfo/info.xml b/apps/files_versions/appinfo/info.xml index e4e5a365d51..0155f8e830f 100644 --- a/apps/files_versions/appinfo/info.xml +++ b/apps/files_versions/appinfo/info.xml @@ -4,7 +4,7 @@ <name>Versions</name> <licence>AGPL</licence> <author>Frank Karlitschek</author> - <require>4.9</require> + <require>4.91</require> <shipped>true</shipped> <description>Versioning of files</description> <types> diff --git a/apps/files_versions/l10n/fa.php b/apps/files_versions/l10n/fa.php index 98dd415969a..9b618fdd320 100644 --- a/apps/files_versions/l10n/fa.php +++ b/apps/files_versions/l10n/fa.php @@ -1,3 +1,4 @@ <?php $TRANSLATIONS = array( -"Expire all versions" => "انقضای تمامی نسخه‌ها" +"History" => "تاریخچه", +"Enable" => "ÙØ¹Ø§Ù„" ); diff --git a/apps/files_versions/l10n/lv.php b/apps/files_versions/l10n/lv.php new file mode 100644 index 00000000000..ae2ead12f4c --- /dev/null +++ b/apps/files_versions/l10n/lv.php @@ -0,0 +1,5 @@ +<?php $TRANSLATIONS = array( +"History" => "VÄ“sture", +"Files Versioning" => "Datņu versiju izskoÅ¡ana", +"Enable" => "AktivÄ“t" +); diff --git a/apps/files_versions/l10n/sr.php b/apps/files_versions/l10n/sr.php new file mode 100644 index 00000000000..0195f84567f --- /dev/null +++ b/apps/files_versions/l10n/sr.php @@ -0,0 +1,5 @@ +<?php $TRANSLATIONS = array( +"History" => "ИÑторија", +"Files Versioning" => "Прављење верзија датотека", +"Enable" => "Омогући" +); diff --git a/apps/files_versions/lib/hooks.php b/apps/files_versions/lib/hooks.php index 5fb9dc3c3c5..5cefc532895 100644 --- a/apps/files_versions/lib/hooks.php +++ b/apps/files_versions/lib/hooks.php @@ -21,9 +21,9 @@ class Hooks { if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') { - $versions = new Storage( new \OC_FilesystemView('') ); + $versions = new Storage( new \OC\Files\View('') ); - $path = $params[\OC_Filesystem::signal_param_path]; + $path = $params[\OC\Files\Filesystem::signal_param_path]; if($path<>'') $versions->store( $path ); @@ -39,15 +39,15 @@ class Hooks { * cleanup the versions directory if the actual file gets deleted */ public static function remove_hook($params) { - if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
-
- $versions = new Storage( new \OC_FilesystemView('') );
-
- $path = $params[\OC_Filesystem::signal_param_path];
-
- if($path<>'') $versions->delete( $path );
-
- }
+ if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') { + + $versions = new Storage( new \OC_FilesystemView('') ); + + $path = $params[\OC\Files\Filesystem::signal_param_path]; + + if($path<>'') $versions->delete( $path ); + + } } /** @@ -58,15 +58,15 @@ class Hooks { * of the stored versions along the actual file */ public static function rename_hook($params) { - if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
-
- $versions = new Storage( new \OC_FilesystemView('') );
-
+ if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') { + + $versions = new Storage( new \OC_FilesystemView('') ); + $oldpath = $params['oldpath']; - $newpath = $params['newpath'];
-
- if($oldpath<>'' && $newpath<>'') $versions->rename( $oldpath, $newpath );
-
+ $newpath = $params['newpath']; + + if($oldpath<>'' && $newpath<>'') $versions->rename( $oldpath, $newpath ); + } } diff --git a/apps/files_versions/lib/versions.php b/apps/files_versions/lib/versions.php index 48be5e223ac..003d548d2b2 100644 --- a/apps/files_versions/lib/versions.php +++ b/apps/files_versions/lib/versions.php @@ -23,15 +23,15 @@ class Storage { private static $max_versions_per_interval = array( 1 => array('intervalEndsAfter' => 10, //first 10sec, one version every 2sec 'step' => 2), - 2 => array('intervalEndsAfter' => 60, //next minute, one version every 10sec
+ 2 => array('intervalEndsAfter' => 60, //next minute, one version every 10sec 'step' => 10), 3 => array('intervalEndsAfter' => 3600, //next hour, one version every minute 'step' => 60), 4 => array('intervalEndsAfter' => 86400, //next 24h, one version every hour 'step' => 3600), - 5 => array('intervalEndsAfter' => 2592000, //next 30days, one version per day
+ 5 => array('intervalEndsAfter' => 2592000, //next 30days, one version per day 'step' => 86400), - 6 => array('intervalEndsAfter' => -1, //until the end one version per week
+ 6 => array('intervalEndsAfter' => -1, //until the end one version per week 'step' => 604800), ); @@ -58,8 +58,8 @@ class Storage { public function store($filename) { if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') { list($uid, $filename) = self::getUidAndFilename($filename); - $files_view = new \OC_FilesystemView('/'.$uid .'/files'); - $users_view = new \OC_FilesystemView('/'.$uid); + $files_view = new \OC\Files\View('/'.\OCP\User::getUser() .'/files'); + $users_view = new \OC\Files\View('/'.\OCP\User::getUser()); //check if source file already exist as version to avoid recursions. // todo does this check work? @@ -86,8 +86,8 @@ class Storage { // store a new version of a file $result = $users_view->copy('files'.$filename, 'files_versions'.$filename.'.v'.$users_view->filemtime('files'.$filename)); - if ( ($versionsSize = \OCP\Config::getAppValue('files_versions', 'size')) === null ) {
- $versionsSize = self::calculateSize($uid);
+ if ( ($versionsSize = \OCP\Config::getAppValue('files_versions', 'size')) === null ) { + $versionsSize = self::calculateSize($uid); } $versionsSize += $users_view->filesize('files'.$filename); @@ -105,42 +105,42 @@ class Storage { * Delete versions of a file */ public static function delete($filename) { - list($uid, $filename) = self::getUidAndFilename($filename);
+ list($uid, $filename) = self::getUidAndFilename($filename); $versions_fileview = new \OC_FilesystemView('/'.$uid .'/files_versions'); -
- $abs_path = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath('').$filename.'.v';
- if( ($versions = self::getVersions($filename)) ) {
- if ( ($versionsSize = \OCP\Config::getAppValue('files_versions', 'size')) === null ) {
- $versionsSize = self::calculateSize($uid);
- }
- foreach ($versions as $v) {
- unlink($abs_path . $v['version']);
- $versionsSize -= $v['size'];
- }
- \OCP\Config::setAppValue('files_versions', 'size', $versionsSize);
+ + $abs_path = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath('').$filename.'.v'; + if( ($versions = self::getVersions($filename)) ) { + if ( ($versionsSize = \OCP\Config::getAppValue('files_versions', 'size')) === null ) { + $versionsSize = self::calculateSize($uid); + } + foreach ($versions as $v) { + unlink($abs_path . $v['version']); + $versionsSize -= $v['size']; + } + \OCP\Config::setAppValue('files_versions', 'size', $versionsSize); } } - /**
- * rename versions of a file
- */
- public static function rename($oldpath, $newpath) {
+ /** + * rename versions of a file + */ + public static function rename($oldpath, $newpath) { list($uid, $oldpath) = self::getUidAndFilename($oldpath); - list($uidn, $newpath) = self::getUidAndFilename($newpath);
+ list($uidn, $newpath) = self::getUidAndFilename($newpath); $versions_view = new \OC_FilesystemView('/'.$uid .'/files_versions'); $files_view = new \OC_FilesystemView('/'.$uid .'/files'); - $abs_newpath = \OCP\Config::getSystemValue('datadirectory').$versions_view->getAbsolutePath('').$newpath;
-
+ $abs_newpath = \OCP\Config::getSystemValue('datadirectory').$versions_view->getAbsolutePath('').$newpath; + if ( $files_view->is_dir($oldpath) && $versions_view->is_dir($oldpath) ) { $versions_view->rename($oldpath, $newpath); - } else if ( ($versions = Storage::getVersions($oldpath)) ) {
- $info=pathinfo($abs_newpath);
- if(!file_exists($info['dirname'])) mkdir($info['dirname'], 0750, true);
- $versions = Storage::getVersions($oldpath);
+ } else if ( ($versions = Storage::getVersions($oldpath)) ) { + $info=pathinfo($abs_newpath); + if(!file_exists($info['dirname'])) mkdir($info['dirname'], 0750, true); + $versions = Storage::getVersions($oldpath); foreach ($versions as $v) { - $versions_view->rename($oldpath.'.v'.$v['version'], $newpath.'.v'.$v['version']);
- }
- }
+ $versions_view->rename($oldpath.'.v'.$v['version'], $newpath.'.v'.$v['version']); + } + } } /** @@ -150,7 +150,7 @@ class Storage { if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') { list($uid, $filename) = self::getUidAndFilename($filename); - $users_view = new \OC_FilesystemView('/'.$uid); + $users_view = new \OC\Files\View('/'.$uid); $versionCreated = false; //first create a new version @@ -184,7 +184,7 @@ class Storage { public static function getVersions( $filename, $count = 0 ) { if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) { list($uid, $filename) = self::getUidAndFilename($filename); - $versions_fileview = new \OC_FilesystemView('/'.$uid.'/files_versions'); + $versions_fileview = new \OC\Files\View('/' . \OCP\User::getUser() . '/files_versions'); $versionsName = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath($filename); $versions = array(); @@ -202,7 +202,7 @@ class Storage { $key = $version.'#'.$filename; $versions[$key]['cur'] = 0; $versions[$key]['version'] = $version; - $versions[$key]['path'] = $filename;
+ $versions[$key]['path'] = $filename; $versions[$key]['size'] = $versions_fileview->filesize($filename.'.v'.$version); // if file with modified date exists, flag it in array as currently enabled version @@ -236,29 +236,29 @@ class Storage { } - /**
- * @brief get the size of all stored versions from a given user
- * @param $uid id from the user
- * @return size of vesions
- */
- private static function calculateSize($uid) {
- if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) {
- $versions_fileview = new \OC_FilesystemView('/'.$uid.'/files_versions');
- $versionsRoot = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath('');
-
- $iterator = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($versionsRoot), \RecursiveIteratorIterator::CHILD_FIRST);
-
+ /** + * @brief get the size of all stored versions from a given user + * @param $uid id from the user + * @return size of vesions + */ + private static function calculateSize($uid) { + if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) { + $versions_fileview = new \OC_FilesystemView('/'.$uid.'/files_versions'); + $versionsRoot = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath(''); + + $iterator = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($versionsRoot), \RecursiveIteratorIterator::CHILD_FIRST); + $size = 0; -
- foreach ($iterator as $path) {
- if ( preg_match('/^.+\.v(\d+)$/', $path, $match) ) {
+ + foreach ($iterator as $path) { + if ( preg_match('/^.+\.v(\d+)$/', $path, $match) ) { $relpath = substr($path, strlen($versionsRoot)-1); - $size += $versions_fileview->filesize($relpath);
- }
+ $size += $versions_fileview->filesize($relpath); + } } - return $size;
- }
+ return $size; + } } /** @@ -267,11 +267,11 @@ class Storage { * @return array with contains two arrays 'all' which contains all versions sorted by age and 'by_file' which contains all versions sorted by filename */ private static function getAllVersions($uid) { - if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) {
+ if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) { $versions_fileview = new \OC_FilesystemView('/'.$uid.'/files_versions'); $versionsRoot = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath(''); - $iterator = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($versionsRoot), \RecursiveIteratorIterator::CHILD_FIRST);
+ $iterator = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($versionsRoot), \RecursiveIteratorIterator::CHILD_FIRST); $versions = array(); @@ -280,7 +280,7 @@ class Storage { $relpath = substr($path, strlen($versionsRoot)-1); $versions[$match[1].'#'.$relpath] = array('path' => $relpath, 'timestamp' => $match[1]); } - }
+ } ksort($versions); @@ -288,20 +288,20 @@ class Storage { $result = array(); - foreach( $versions as $key => $value ) {
+ foreach( $versions as $key => $value ) { $i++; $size = $versions_fileview->filesize($value['path']); $filename = substr($value['path'], 0, -strlen($value['timestamp'])-2); -
+ $result['all'][$key]['version'] = $value['timestamp']; - $result['all'][$key]['path'] = $filename;
+ $result['all'][$key]['path'] = $filename; $result['all'][$key]['size'] = $size; $filename = substr($value['path'], 0, -strlen($value['timestamp'])-2); $result['by_file'][$filename][$key]['version'] = $value['timestamp']; - $result['by_file'][$filename][$key]['path'] = $filename;
+ $result['by_file'][$filename][$key]['path'] = $filename; $result['by_file'][$filename][$key]['size'] = $size; -
+ } return $result; @@ -322,7 +322,7 @@ class Storage { $quota = \OCP\Util::computerFileSize(\OC_Appconfig::getValue('files', 'default_quota')); } if ( $quota == null ) { - $quota = \OC_Filesystem::free_space('/'); + $quota = \OC\Files\Filesystem::free_space('/'); } // make sure that we have the current size of the version history @@ -332,7 +332,7 @@ class Storage { } } - // calculate available space for version history
+ // calculate available space for version history $rootInfo = \OC_FileCache::get('', '/'. $uid . '/files'); $free = $quota-$rootInfo['size']; // remaining free space for user if ( $free > 0 ) { @@ -394,7 +394,7 @@ class Storage { $nextVersion = $prevTimestamp - $step; if ( Storage::$max_versions_per_interval[$interval]['intervalEndsAfter'] == -1 ) { $nextInterval = -1; - } else {
+ } else { $nextInterval = $time - Storage::$max_versions_per_interval[$interval]['intervalEndsAfter']; } $newInterval = true; // we changed the interval -> check same version with new interval diff --git a/apps/user_ldap/ajax/deleteConfiguration.php b/apps/user_ldap/ajax/deleteConfiguration.php new file mode 100644 index 00000000000..b7d633a049d --- /dev/null +++ b/apps/user_ldap/ajax/deleteConfiguration.php @@ -0,0 +1,35 @@ +<?php + +/** + * ownCloud - user_ldap + * + * @author Arthur Schiwon + * @copyright 2013 Arthur Schiwon blizzz@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ + +// Check user and app status +OCP\JSON::checkAdminUser(); +OCP\JSON::checkAppEnabled('user_ldap'); +OCP\JSON::callCheck(); + +$prefix = $_POST['ldap_serverconfig_chooser']; +if(\OCA\user_ldap\lib\Helper::deleteServerConfiguration($prefix)){ + OCP\JSON::success(); +} else { + $l=OC_L10N::get('user_ldap'); + OCP\JSON::error(array('message' => $l->t('Failed to delete the server configuration'))); +}
\ No newline at end of file diff --git a/apps/user_ldap/ajax/getConfiguration.php b/apps/user_ldap/ajax/getConfiguration.php new file mode 100644 index 00000000000..dfae68d2dc9 --- /dev/null +++ b/apps/user_ldap/ajax/getConfiguration.php @@ -0,0 +1,31 @@ +<?php + +/** + * ownCloud - user_ldap + * + * @author Arthur Schiwon + * @copyright 2013 Arthur Schiwon blizzz@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ + +// Check user and app status +OCP\JSON::checkAdminUser(); +OCP\JSON::checkAppEnabled('user_ldap'); +OCP\JSON::callCheck(); + +$prefix = $_POST['ldap_serverconfig_chooser']; +$connection = new \OCA\user_ldap\lib\Connection($prefix); +OCP\JSON::success(array('configuration' => $connection->getConfiguration()));
\ No newline at end of file diff --git a/apps/user_ldap/ajax/getNewServerConfigPrefix.php b/apps/user_ldap/ajax/getNewServerConfigPrefix.php new file mode 100644 index 00000000000..17e78f87072 --- /dev/null +++ b/apps/user_ldap/ajax/getNewServerConfigPrefix.php @@ -0,0 +1,34 @@ +<?php + +/** + * ownCloud - user_ldap + * + * @author Arthur Schiwon + * @copyright 2013 Arthur Schiwon blizzz@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ + +// Check user and app status +OCP\JSON::checkAdminUser(); +OCP\JSON::checkAppEnabled('user_ldap'); +OCP\JSON::callCheck(); + +$serverConnections = \OCA\user_ldap\lib\Helper::getServerConfigurationPrefixes(); +sort($serverConnections); +$lk = array_pop($serverConnections); +$ln = intval(str_replace('s', '', $lk)); +$nk = 's'.str_pad($ln+1, 2, '0', STR_PAD_LEFT); +OCP\JSON::success(array('configPrefix' => $nk));
\ No newline at end of file diff --git a/apps/user_ldap/ajax/setConfiguration.php b/apps/user_ldap/ajax/setConfiguration.php new file mode 100644 index 00000000000..206487c7e0a --- /dev/null +++ b/apps/user_ldap/ajax/setConfiguration.php @@ -0,0 +1,33 @@ +<?php + +/** + * ownCloud - user_ldap + * + * @author Arthur Schiwon + * @copyright 2013 Arthur Schiwon blizzz@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ + +// Check user and app status +OCP\JSON::checkAdminUser(); +OCP\JSON::checkAppEnabled('user_ldap'); +OCP\JSON::callCheck(); + +$prefix = $_POST['ldap_serverconfig_chooser']; +$connection = new \OCA\user_ldap\lib\Connection($prefix); +$connection->setConfiguration($_POST); +$connection->saveConfiguration(); +OCP\JSON::success();
\ No newline at end of file diff --git a/apps/user_ldap/ajax/testConfiguration.php b/apps/user_ldap/ajax/testConfiguration.php index a82f7e4c17b..f8038e31469 100644 --- a/apps/user_ldap/ajax/testConfiguration.php +++ b/apps/user_ldap/ajax/testConfiguration.php @@ -4,7 +4,7 @@ * ownCloud - user_ldap * * @author Arthur Schiwon - * @copyright 2012 Arthur Schiwon blizzz@owncloud.com + * @copyright 2012, 2013 Arthur Schiwon blizzz@owncloud.com * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE @@ -26,14 +26,16 @@ OCP\JSON::checkAdminUser(); OCP\JSON::checkAppEnabled('user_ldap'); OCP\JSON::callCheck(); -$connection = new \OCA\user_ldap\lib\Connection(null); +$l=OC_L10N::get('user_ldap'); + +$connection = new \OCA\user_ldap\lib\Connection('', null); if($connection->setConfiguration($_POST)) { //Configuration is okay if($connection->bind()) { - OCP\JSON::success(array('message' => 'The configuration is valid and the connection could be established!')); + OCP\JSON::success(array('message' => $l->t('The configuration is valid and the connection could be established!'))); } else { - OCP\JSON::error(array('message' => 'The configuration is valid, but the Bind failed. Please check the server settings and credentials.')); + OCP\JSON::error(array('message' => $l->t('The configuration is valid, but the Bind failed. Please check the server settings and credentials.'))); } } else { - OCP\JSON::error(array('message' => 'The configuration is invalid. Please look in the ownCloud log for further details.')); + OCP\JSON::error(array('message' => $l->t('The configuration is invalid. Please look in the ownCloud log for further details.'))); } diff --git a/apps/user_ldap/appinfo/app.php b/apps/user_ldap/appinfo/app.php index ce3079da0ba..dec87684c9e 100644 --- a/apps/user_ldap/appinfo/app.php +++ b/apps/user_ldap/appinfo/app.php @@ -23,15 +23,23 @@ OCP\App::registerAdmin('user_ldap', 'settings'); -$connector = new OCA\user_ldap\lib\Connection('user_ldap'); -$userBackend = new OCA\user_ldap\USER_LDAP(); -$userBackend->setConnector($connector); -$groupBackend = new OCA\user_ldap\GROUP_LDAP(); -$groupBackend->setConnector($connector); +$configPrefixes = OCA\user_ldap\lib\Helper::getServerConfigurationPrefixes(true); +if(count($configPrefixes) == 1) { + $connector = new OCA\user_ldap\lib\Connection($configPrefixes[0]); + $userBackend = new OCA\user_ldap\USER_LDAP(); + $userBackend->setConnector($connector); + $groupBackend = new OCA\user_ldap\GROUP_LDAP(); + $groupBackend->setConnector($connector); +} else { + $userBackend = new OCA\user_ldap\User_Proxy($configPrefixes); + $groupBackend = new OCA\user_ldap\Group_Proxy($configPrefixes); +} -// register user backend -OC_User::useBackend($userBackend); -OC_Group::useBackend($groupBackend); +if(count($configPrefixes) > 0) { + // register user backend + OC_User::useBackend($userBackend); + OC_Group::useBackend($groupBackend); +} // add settings page to navigation $entry = array( diff --git a/apps/user_ldap/appinfo/info.xml b/apps/user_ldap/appinfo/info.xml index a7605775274..53269edfb34 100644 --- a/apps/user_ldap/appinfo/info.xml +++ b/apps/user_ldap/appinfo/info.xml @@ -7,7 +7,7 @@ This app is not compatible to the WebDAV user backend.</description> <licence>AGPL</licence> <author>Dominik Schmidt and Arthur Schiwon</author> - <require>4.9</require> + <require>4.91</require> <shipped>true</shipped> <types> <authentication/> diff --git a/apps/user_ldap/appinfo/update.php b/apps/user_ldap/appinfo/update.php index 9b54ba18b6c..f9681e38e68 100644 --- a/apps/user_ldap/appinfo/update.php +++ b/apps/user_ldap/appinfo/update.php @@ -5,7 +5,7 @@ //ATTENTION //Upgrade from ownCloud 3 (LDAP backend 0.1) to ownCloud 4.5 (LDAP backend 0.3) is not supported!! //You must do upgrade to ownCloud 4.0 first! -//The upgrade stuff in the section from 0.1 to 0.2 is just to minimize the bad efffects. +//The upgrade stuff in the section from 0.1 to 0.2 is just to minimize the bad effects. //settings $pw = OCP\Config::getAppValue('user_ldap', 'ldap_password'); @@ -22,12 +22,10 @@ if($state == 'unset') { OCP\Config::setSystemValue('ldapIgnoreNamingRules', false); } -// ### SUPPORTED upgrade path starts here ### - //from version 0.2 to 0.3 (0.2.0.x dev version) $objects = array('user', 'group'); -$connector = new \OCA\user_ldap\lib\Connection('user_ldap'); +$connector = new \OCA\user_ldap\lib\Connection(); $userBE = new \OCA\user_ldap\USER_LDAP(); $userBE->setConnector($connector); $groupBE = new \OCA\user_ldap\GROUP_LDAP(); @@ -80,3 +78,13 @@ function escapeDN($dn) { return $dn; } + + +// SUPPORTED UPGRADE FROM Version 0.3 (ownCloud 4.5) to 0.4 (ownCloud 5) + +if(!isset($connector)) { + $connector = new \OCA\user_ldap\lib\Connection(); +} +//it is required, that connections do have ldap_configuration_active setting stored in the database +$connector->getConfiguration(); +$connector->saveConfiguration();
\ No newline at end of file diff --git a/apps/user_ldap/appinfo/version b/apps/user_ldap/appinfo/version index b1a5f4781d1..705e30728e0 100644 --- a/apps/user_ldap/appinfo/version +++ b/apps/user_ldap/appinfo/version @@ -1 +1 @@ -0.3.0.1
\ No newline at end of file +0.3.9.0
\ No newline at end of file diff --git a/apps/user_ldap/group_ldap.php b/apps/user_ldap/group_ldap.php index 63437310088..02ceecaea0b 100644 --- a/apps/user_ldap/group_ldap.php +++ b/apps/user_ldap/group_ldap.php @@ -171,7 +171,6 @@ class GROUP_LDAP extends lib\Access implements \OCP\GroupInterface { return array(); } - $search = empty($search) ? '*' : '*'.$search.'*'; $groupUsers = array(); $isMemberUid = (strtolower($this->connection->ldapGroupMemberAssocAttr) == 'memberuid'); foreach($members as $member) { @@ -179,7 +178,7 @@ class GROUP_LDAP extends lib\Access implements \OCP\GroupInterface { //we got uids, need to get their DNs to 'tranlsate' them to usernames $filter = $this->combineFilterWithAnd(array( \OCP\Util::mb_str_replace('%uid', $member, $this->connection>ldapLoginFilter, 'UTF-8'), - $this->connection->ldapUserDisplayName.'='.$search + $this->getFilterPartForUserSearch($search) )); $ldap_users = $this->fetchListOfUsers($filter, 'dn'); if(count($ldap_users) < 1) { @@ -188,8 +187,8 @@ class GROUP_LDAP extends lib\Access implements \OCP\GroupInterface { $groupUsers[] = $this->dn2username($ldap_users[0]); } else { //we got DNs, check if we need to filter by search or we can give back all of them - if($search != '*') { - if(!$this->readAttribute($member, $this->connection->ldapUserDisplayName, $this->connection->ldapUserDisplayName.'='.$search)) { + if(!empty($search)) { + if(!$this->readAttribute($member, $this->connection->ldapUserDisplayName, $this->getFilterPartForUserSearch($search))) { continue; } } @@ -230,10 +229,9 @@ class GROUP_LDAP extends lib\Access implements \OCP\GroupInterface { if($limit <= 0) { $limit = null; } - $search = empty($search) ? '*' : '*'.$search.'*'; $filter = $this->combineFilterWithAnd(array( $this->connection->ldapGroupFilter, - $this->connection->ldapGroupDisplayName.'='.$search + $this->getFilterPartForGroupSearch($search) )); \OCP\Util::writeLog('user_ldap', 'getGroups Filter '.$filter, \OCP\Util::DEBUG); $ldap_groups = $this->fetchListOfGroups($filter, array($this->connection->ldapGroupDisplayName, 'dn'), $limit, $offset); diff --git a/apps/user_ldap/group_proxy.php b/apps/user_ldap/group_proxy.php new file mode 100644 index 00000000000..5aa1aef0e0e --- /dev/null +++ b/apps/user_ldap/group_proxy.php @@ -0,0 +1,178 @@ +<?php + +/** + * ownCloud + * + * @author Artuhr Schiwon + * @copyright 2013 Arthur Schiwon blizzz@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ + +namespace OCA\user_ldap; + +class Group_Proxy extends lib\Proxy implements \OCP\GroupInterface { + private $backends = array(); + private $refBackend = null; + + /** + * @brief Constructor + * @param $serverConfigPrefixes array containing the config Prefixes + */ + public function __construct($serverConfigPrefixes) { + parent::__construct(); + foreach($serverConfigPrefixes as $configPrefix) { + $this->backends[$configPrefix] = new \OCA\user_ldap\GROUP_LDAP(); + $connector = $this->getConnector($configPrefix); + $this->backends[$configPrefix]->setConnector($connector); + if(is_null($this->refBackend)) { + $this->refBackend = &$this->backends[$configPrefix]; + } + } + } + + /** + * @brief Tries the backends one after the other until a positive result is returned from the specified method + * @param $gid string, the gid connected to the request + * @param $method string, the method of the group backend that shall be called + * @param $parameters an array of parameters to be passed + * @return mixed, the result of the method or false + */ + protected function walkBackends($gid, $method, $parameters) { + $cacheKey = $this->getGroupCacheKey($gid); + foreach($this->backends as $configPrefix => $backend) { + if($result = call_user_func_array(array($backend, $method), $parameters)) { + $this->writeToCache($cacheKey, $configPrefix); + return $result; + } + } + return false; + } + + /** + * @brief Asks the backend connected to the server that supposely takes care of the gid from the request. + * @param $gid string, the gid connected to the request + * @param $method string, the method of the group backend that shall be called + * @param $parameters an array of parameters to be passed + * @return mixed, the result of the method or false + */ + protected function callOnLastSeenOn($gid, $method, $parameters) { + $cacheKey = $this->getGroupCacheKey($gid);; + $prefix = $this->getFromCache($cacheKey); + //in case the uid has been found in the past, try this stored connection first + if(!is_null($prefix)) { + if(isset($this->backends[$prefix])) { + $result = call_user_func_array(array($this->backends[$prefix], $method), $parameters); + if(!$result) { + //not found here, reset cache to null + $this->writeToCache($cacheKey, null); + } + return $result; + } + } + return false; + } + + /** + * @brief is user in group? + * @param $uid uid of the user + * @param $gid gid of the group + * @returns true/false + * + * Checks whether the user is member of a group or not. + */ + public function inGroup($uid, $gid) { + return $this->handleRequest($gid, 'inGroup', array($uid, $gid)); + } + + /** + * @brief Get all groups a user belongs to + * @param $uid Name of the user + * @returns array with group names + * + * This function fetches all groups a user belongs to. It does not check + * if the user exists at all. + */ + public function getUserGroups($uid) { + $groups = array(); + + foreach($this->backends as $backend) { + $backendGroups = $backend->getUserGroups($uid); + if (is_array($backendGroups)) { + $groups = array_merge($groups, $backendGroups); + } + } + + return $groups; + } + + /** + * @brief get a list of all users in a group + * @returns array with user ids + */ + public function usersInGroup($gid, $search = '', $limit = -1, $offset = 0) { + $users = array(); + + foreach($this->backends as $backend) { + $backendUsers = $backend->usersInGroup($gid, $search, $limit, $offset); + if (is_array($backendUsers)) { + $users = array_merge($users, $backendUsers); + } + } + + return $users; + } + + /** + * @brief get a list of all groups + * @returns array with group names + * + * Returns a list with all groups + */ + public function getGroups($search = '', $limit = -1, $offset = 0) { + $groups = array(); + + foreach($this->backends as $backend) { + $backendGroups = $backend->getGroups($search, $limit, $offset); + if (is_array($backendGroups)) { + $groups = array_merge($groups, $backendGroups); + } + } + + return $groups; + } + + /** + * check if a group exists + * @param string $gid + * @return bool + */ + public function groupExists($gid) { + return $this->handleRequest($gid, 'groupExists', array($gid)); + } + + /** + * @brief Check if backend implements actions + * @param $actions bitwise-or'ed actions + * @returns boolean + * + * Returns the supported actions as int to be + * compared with OC_USER_BACKEND_CREATE_USER etc. + */ + public function implementsActions($actions) { + //it's the same across all our user backends obviously + return $this->refBackend->implementsActions($actions); + } +}
\ No newline at end of file diff --git a/apps/user_ldap/js/settings.js b/apps/user_ldap/js/settings.js index 7063eead96a..e34849ec887 100644 --- a/apps/user_ldap/js/settings.js +++ b/apps/user_ldap/js/settings.js @@ -1,6 +1,114 @@ +var LdapConfiguration = { + refreshConfig: function() { + if($('#ldap_serverconfig_chooser option').length < 2) { + LdapConfiguration.addConfiguration(true); + return; + } + $.post( + OC.filePath('user_ldap','ajax','getConfiguration.php'), + $('#ldap_serverconfig_chooser').serialize(), + function (result) { + if(result.status == 'success') { + $.each(result.configuration, function(configkey, configvalue) { + elementID = '#'+configkey; + + //deal with Checkboxes + if($(elementID).is('input[type=checkbox]')) { + if(configvalue == 1) { + $(elementID).attr('checked', 'checked'); + } else { + $(elementID).removeAttr('checked'); + } + return; + } + + //On Textareas, Multi-Line Settings come as array + if($(elementID).is('textarea') && $.isArray(configvalue)) { + configvalue = configvalue.join("\n"); + } + + // assign the value + $('#'+configkey).val(configvalue); + }); + } + } + ); + }, + + resetDefaults: function() { + $('#ldap').find('input[type=text], input[type=number], input[type=password], textarea, select').each(function() { + if($(this).attr('id') == 'ldap_serverconfig_chooser') { + return; + } + $(this).val($(this).attr('data-default')); + }); + $('#ldap').find('input[type=checkbox]').each(function() { + if($(this).attr('data-default') == 1) { + $(this).attr('checked', 'checked'); + } else { + $(this).removeAttr('checked'); + } + }); + }, + + deleteConfiguration: function() { + $.post( + OC.filePath('user_ldap','ajax','deleteConfiguration.php'), + $('#ldap_serverconfig_chooser').serialize(), + function (result) { + if(result.status == 'success') { + $('#ldap_serverconfig_chooser option:selected').remove(); + $('#ldap_serverconfig_chooser option:first').select(); + LdapConfiguration.refreshConfig(); + } else { + OC.dialogs.alert( + result.message, + t('user_ldap', 'Deletion failed') + ); + } + } + ); + }, + + addConfiguration: function(doNotAsk) { + $.post( + OC.filePath('user_ldap','ajax','getNewServerConfigPrefix.php'), + function (result) { + if(result.status == 'success') { + if(doNotAsk) { + LdapConfiguration.resetDefaults(); + } else { + OC.dialogs.confirm( + t('user_ldap', 'Take over settings from recent server configuration?'), + t('user_ldap', 'Keep settings?'), + function(keep) { + if(!keep) { + LdapConfiguration.resetDefaults(); + } + } + ); + } + $('#ldap_serverconfig_chooser option:selected').removeAttr('selected'); + var html = '<option value="'+result.configPrefix+'" selected="selected">'+$('#ldap_serverconfig_chooser option').length+'. Server</option>'; + $('#ldap_serverconfig_chooser option:last').before(html); + } else { + OC.dialogs.alert( + result.message, + t('user_ldap', 'Cannot add server configuration') + ); + } + } + ); + } +} + $(document).ready(function() { + $('#ldapAdvancedAccordion').accordion({ heightStyle: 'content', animate: 'easeInOutCirc'}); $('#ldapSettings').tabs(); + $('#ldap_submit').button(); $('#ldap_action_test_connection').button(); + $('#ldap_action_delete_configuration').button(); + LdapConfiguration.refreshConfig(); $('#ldap_action_test_connection').click(function(event){ event.preventDefault(); $.post( @@ -10,15 +118,60 @@ $(document).ready(function() { if (result.status == 'success') { OC.dialogs.alert( result.message, - 'Connection test succeeded' + t('user_ldap', 'Connection test succeeded') ); } else { OC.dialogs.alert( result.message, - 'Connection test failed' + t('user_ldap', 'Connection test failed') ); } } ); }); + + $('#ldap_action_delete_configuration').click(function(event) { + event.preventDefault(); + OC.dialogs.confirm( + t('user_ldap', 'Do you really want to delete the current Server Configuration?'), + t('user_ldap', 'Confirm Deletion'), + function(deleteConfiguration) { + if(deleteConfiguration) { + LdapConfiguration.deleteConfiguration(); + } + } + ); + }); + + $('#ldap_submit').click(function(event) { + event.preventDefault(); + $.post( + OC.filePath('user_ldap','ajax','setConfiguration.php'), + $('#ldap').serialize(), + function (result) { + bgcolor = $('#ldap_submit').css('background'); + if (result.status == 'success') { + //the dealing with colors is a but ugly, but the jQuery version in use has issues with rgba colors + $('#ldap_submit').css('background', '#fff'); + $('#ldap_submit').effect('highlight', {'color':'#A8FA87'}, 5000, function() { + $('#ldap_submit').css('background', bgcolor); + }); + } else { + $('#ldap_submit').css('background', '#fff'); + $('#ldap_submit').effect('highlight', {'color':'#E97'}, 5000, function() { + $('#ldap_submit').css('background', bgcolor); + }); + } + } + ); + }); + + $('#ldap_serverconfig_chooser').change(function(event) { + value = $('#ldap_serverconfig_chooser option:selected:first').attr('value'); + if(value == 'NEW') { + LdapConfiguration.addConfiguration(false); + } else { + LdapConfiguration.refreshConfig(); + } + }); });
\ No newline at end of file diff --git a/apps/user_ldap/l10n/af_ZA.php b/apps/user_ldap/l10n/af_ZA.php new file mode 100644 index 00000000000..944495f3869 --- /dev/null +++ b/apps/user_ldap/l10n/af_ZA.php @@ -0,0 +1,4 @@ +<?php $TRANSLATIONS = array( +"Password" => "Wagwoord", +"Help" => "Hulp" +); diff --git a/apps/user_ldap/l10n/ar.php b/apps/user_ldap/l10n/ar.php index da1710a0a3c..4d7b7ac4ade 100644 --- a/apps/user_ldap/l10n/ar.php +++ b/apps/user_ldap/l10n/ar.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "ÙØ´Ù„ Ø§Ù„ØØ°Ù", "Password" => "كلمة المرور", "Help" => "المساعدة" ); diff --git a/apps/user_ldap/l10n/bn_BD.php b/apps/user_ldap/l10n/bn_BD.php index 094b20cad2d..6c347eab879 100644 --- a/apps/user_ldap/l10n/bn_BD.php +++ b/apps/user_ldap/l10n/bn_BD.php @@ -17,21 +17,21 @@ "Defines the filter to apply, when retrieving groups." => "গোষà§à¦ ীসমূহ উদà§à¦§à¦¾à¦° করার সময় পà§à¦°à§Ÿà§‹à¦—ের জনà§à¦¯ ছাà¦à¦•নী নিরà§à¦§à¦¾à¦°à¦£ করবে।", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "কোন সà§à¦¥à¦¾à¦¨ ধারক বà§à¦¯à¦¤à§€à¦¤, উদাহরণঃ\"objectClass=posixGroup\"।", "Port" => "পোরà§à¦Ÿ", -"Base User Tree" => "à¦à¦¿à¦¤à§à¦¤à¦¿ বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারি বৃকà§à¦·à¦¾à¦•ারে", -"Base Group Tree" => "à¦à¦¿à¦¤à§à¦¤à¦¿ গোষà§à¦ à§€ বৃকà§à¦·à¦¾à¦•ারে", -"Group-Member association" => "গোষà§à¦ à§€-সদসà§à¦¯ সংসà§à¦¥à¦¾à¦ªà¦¨", "Use TLS" => "TLS বà§à¦¯à¦¬à¦¹à¦¾à¦° কর", "Do not use it for SSL connections, it will fail." => "SSL সংযোগের জনà§à¦¯ à¦à¦Ÿà¦¿ বà§à¦¯à¦¬à¦¹à¦¾à¦° করবেন না, তাহলে বà§à¦¯à¦°à§à¦¥ হবেনই।", "Case insensitve LDAP server (Windows)" => "বরà§à¦£ অসংবেদী LDAP সারà§à¦à¦¾à¦° (উইনà§à¦¡à§‹à¦œ)", "Turn off SSL certificate validation." => "SSL সনদপতà§à¦° যাচাইকরণ বনà§à¦§ রাক।", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "শà§à¦§à§à¦®à¦¾à¦¤à§à¦° যদি à¦à¦‡ বিকলà§à¦ªà¦Ÿà¦¿ বà§à¦¯à¦¬à¦¹à¦¾à¦° করেই সংযোগ কারà§à¦¯à¦•রী হয় তবে আপনার ownCloud সারà§à¦à¦¾à¦°à§‡ LDAP সারà§à¦à¦¾à¦°à§‡à¦° SSL সনদপতà§à¦°à¦Ÿà¦¿ আমদানি করà§à¦¨à¥¤", "Not recommended, use for testing only." => "অনà§à¦®à§‹à¦¦à¦¿à¦¤ নয়, শà§à¦§à§à¦®à¦¾à¦¤à§à¦° পরীকà§à¦·à¦¾à¦®à§‚লক বà§à¦¯à¦¬à¦¹à¦¾à¦°à§‡à¦° জনà§à¦¯à¥¤", +"in seconds. A change empties the cache." => "সেকেনà§à¦¡à§‡à¥¤ কোন পরিবরà§à¦¤à¦¨ কà§à¦¯à¦¾à¦¸à§‡ খালি করবে।", "User Display Name Field" => "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারীর পà§à¦°à¦¦à¦°à§à¦¶à¦¿à¦¤à¦¬à§à¦¯ নামের কà§à¦·à§‡à¦¤à§à¦°", "The LDAP attribute to use to generate the user`s ownCloud name." => "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারীর ownCloud নাম তৈরি করার জনà§à¦¯ বà§à¦¯à¦à¦¹à§ƒà¦¤ LDAP বৈশিষà§à¦Ÿà§à¦¯à¥¤", +"Base User Tree" => "à¦à¦¿à¦¤à§à¦¤à¦¿ বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারি বৃকà§à¦·à¦¾à¦•ারে", "Group Display Name Field" => "গোষà§à¦ ীর পà§à¦°à¦¦à¦°à§à¦¶à¦¿à¦¤à¦¬à§à¦¯ নামের কà§à¦·à§‡à¦¤à§à¦°", "The LDAP attribute to use to generate the groups`s ownCloud name." => "গোষà§à¦ ীর ownCloud নাম তৈরি করার জনà§à¦¯ বà§à¦¯à¦à¦¹à§ƒà¦¤ LDAP বৈশিষà§à¦Ÿà§à¦¯à¥¤", +"Base Group Tree" => "à¦à¦¿à¦¤à§à¦¤à¦¿ গোষà§à¦ à§€ বৃকà§à¦·à¦¾à¦•ারে", +"Group-Member association" => "গোষà§à¦ à§€-সদসà§à¦¯ সংসà§à¦¥à¦¾à¦ªà¦¨", "in bytes" => "বাইটে", -"in seconds. A change empties the cache." => "সেকেনà§à¦¡à§‡à¥¤ কোন পরিবরà§à¦¤à¦¨ কà§à¦¯à¦¾à¦¸à§‡ খালি করবে।", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারী নামের জনà§à¦¯ ফাà¦à¦•া রাখà§à¦¨ (পূরà§à¦¬à¦¨à¦¿à¦°à§à¦§à¦¾à¦°à¦¿à¦¤)। অনà§à¦¯à¦¥à¦¾à§Ÿ, LDAP/AD বৈশিষà§à¦Ÿà§à¦¯ নিরà§à¦§à¦¾à¦°à¦£ করà§à¦¨à¥¤", "Help" => "সহায়িকা" ); diff --git a/apps/user_ldap/l10n/ca.php b/apps/user_ldap/l10n/ca.php index 06255c1249a..5cf03b6787b 100644 --- a/apps/user_ldap/l10n/ca.php +++ b/apps/user_ldap/l10n/ca.php @@ -1,6 +1,20 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "Ha fallat en eliminar la configuració del servidor", +"The configuration is valid and the connection could be established!" => "La configuració és và lida i s'ha pogut establir la comunicació!", +"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "La configuració és và lida, però ha fallat el Bind. Comproveu les credencials i l'arranjament del servidor.", +"The configuration is invalid. Please look in the ownCloud log for further details." => "La configuració no és và lida. Per més detalls mireu al registre d'ownCloud.", +"Deletion failed" => "Eliminació fallida", +"Take over settings from recent server configuration?" => "Voleu prendre l'arranjament de la configuració actual del servidor?", +"Keep settings?" => "Voleu mantenir la configuració?", +"Cannot add server configuration" => "No es pot afegir la configuració del servidor", +"Connection test succeeded" => "La prova de connexió ha reeixit", +"Connection test failed" => "La prova de connexió ha fallat", +"Do you really want to delete the current Server Configuration?" => "Voleu eliminar la configuració actual del servidor?", +"Confirm Deletion" => "Confirma l'eliminació", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>AvÃs:</b> Les aplicacions user_ldap i user_webdavauth són incompatibles. Podeu experimentar comportaments no desitjats. Demaneu a l'administrador del sistema que en desactivi una.", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>AvÃs:</b> El mòdul PHP LDAP no està instal·lat, el dorsal no funcionarà . Demaneu a l'administrador del sistema que l'instal·li.", +"Server configuration" => "Configuració del servidor", +"Add Server Configuration" => "Afegeix la configuració del servidor", "Host" => "Mà quina", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Podeu ometre el protocol, excepte si requeriu SSL. Llavors comenceu amb ldaps://", "Base DN" => "DN Base", @@ -19,24 +33,37 @@ "Group Filter" => "Filtre de grup", "Defines the filter to apply, when retrieving groups." => "Defineix el filtre a aplicar quan es mostren grups.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "sense cap parà metre de substitució, per exemple \"objectClass=grupPosix\".", +"Connection Settings" => "Arranjaments de connexió", +"Configuration Active" => "Configuració activa", +"When unchecked, this configuration will be skipped." => "Si està desmarcat, aquesta configuració s'ometrà .", "Port" => "Port", -"Base User Tree" => "Arbre base d'usuaris", -"One User Base DN per line" => "Una DN Base d'Usuari per lÃnia", -"Base Group Tree" => "Arbre base de grups", -"One Group Base DN per line" => "Una DN Base de Grup per lÃnia", -"Group-Member association" => "Associació membres-grup", +"Backup (Replica) Host" => "Mà quina de còpia de serguretat (rèplica)", +"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Afegiu una mà quina de còpia de seguretat opcional. Ha de ser una rèplica del servidor LDAP/AD principal.", +"Backup (Replica) Port" => "Port de la còpia de seguretat (rèplica)", +"Disable Main Server" => "Desactiva el servidor principal", +"When switched on, ownCloud will only connect to the replica server." => "Quan està connectat, ownCloud només es connecta al servidor de la rèplica.", "Use TLS" => "Usa TLS", "Do not use it for SSL connections, it will fail." => "No ho useu en connexions SSL, fallarà .", "Case insensitve LDAP server (Windows)" => "Servidor LDAP sense distinció entre majúscules i minúscules (Windows)", "Turn off SSL certificate validation." => "Desactiva la validació de certificat SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Si la connexió només funciona amb aquesta opció, importeu el certificat SSL del servidor LDAP en el vostre servidor ownCloud.", "Not recommended, use for testing only." => "No recomanat, ús només per proves.", +"in seconds. A change empties the cache." => "en segons. Un canvi buidarà la memòria de cau.", +"Directory Settings" => "Arranjaments de carpetes", "User Display Name Field" => "Camp per mostrar el nom d'usuari", "The LDAP attribute to use to generate the user`s ownCloud name." => "Atribut LDAP a usar per generar el nom d'usuari ownCloud.", +"Base User Tree" => "Arbre base d'usuaris", +"One User Base DN per line" => "Una DN Base d'Usuari per lÃnia", +"User Search Attributes" => "Atributs de cerca d'usuari", +"Optional; one attribute per line" => "Opcional; Un atribut per lÃnia", "Group Display Name Field" => "Camp per mostrar el nom del grup", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Atribut LDAP a usar per generar el nom de grup ownCloud.", +"Base Group Tree" => "Arbre base de grups", +"One Group Base DN per line" => "Una DN Base de Grup per lÃnia", +"Group Search Attributes" => "Atributs de cerca de grup", +"Group-Member association" => "Associació membres-grup", +"Special Attributes" => "Atributs especials", "in bytes" => "en bytes", -"in seconds. A change empties the cache." => "en segons. Un canvi buidarà la memòria de cau.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Deixeu-ho buit pel nom d'usuari (per defecte). Altrament, especifiqueu un atribut LDAP/AD.", "Help" => "Ajuda" ); diff --git a/apps/user_ldap/l10n/cs_CZ.php b/apps/user_ldap/l10n/cs_CZ.php index 80e27f1e62a..0aace1f7410 100644 --- a/apps/user_ldap/l10n/cs_CZ.php +++ b/apps/user_ldap/l10n/cs_CZ.php @@ -1,6 +1,20 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "Selhalo smazánà konfigurace serveru", +"The configuration is valid and the connection could be established!" => "Nastavenà je v pořádku a spojenà bylo navázáno.", +"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "Konfigurace je v pořádku, ale spojenà selhalo. Zkontrolujte, prosÃm, nastavenà serveru a pÅ™ihlaÅ¡ovacà údaje.", +"The configuration is invalid. Please look in the ownCloud log for further details." => "Nastavenà je neplatné. Zkontrolujte, prosÃm, záznam ownCloud pro dalšà podrobnosti.", +"Deletion failed" => "Mazánà selhalo.", +"Take over settings from recent server configuration?" => "PÅ™evzÃt nastavenà z nedávného nastavenà serveru?", +"Keep settings?" => "Ponechat nastavenÃ?", +"Cannot add server configuration" => "Nelze pÅ™idat nastavenà serveru", +"Connection test succeeded" => "Test spojenà byl úspěšný", +"Connection test failed" => "Test spojenà selhal", +"Do you really want to delete the current Server Configuration?" => "Opravdu si pÅ™ejete smazat souÄasné nastavenà serveru?", +"Confirm Deletion" => "Potvrdit smazánÃ", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>VarovánÃ:</b> Aplikace user_ldap a user_webdavauth nejsou kompatibilnÃ. Může nastávat neoÄekávané chovánÃ. Požádejte, prosÃm, správce systému aby jednu z nich zakázal.", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>VarovánÃ:</b> nenà nainstalován LDAP modul pro PHP, podpůrná vrstva nebude fungovat. Požádejte, prosÃm, správce systému aby jej nainstaloval.", +"Server configuration" => "Nastavenà serveru", +"Add Server Configuration" => "PÅ™idat nastavenà serveru", "Host" => "PoÄÃtaÄ", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Můžete vynechat protokol, vyjma pokud požadujete SSL. Tehdy zaÄnÄ›te s ldaps://", "Base DN" => "Základnà DN", @@ -19,24 +33,37 @@ "Group Filter" => "Filtr skupin", "Defines the filter to apply, when retrieving groups." => "UrÄuje použitý filtr, pro zÃskávanà skupin.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "bez zástupných znaků, napÅ™. \"objectClass=posixGroup\".", +"Connection Settings" => "Nastavenà spojenÃ", +"Configuration Active" => "Nastavenà aktivnÃ", +"When unchecked, this configuration will be skipped." => "Pokud nenà zaÅ¡krtnuto, bude nastavenà pÅ™eskoÄeno.", "Port" => "Port", -"Base User Tree" => "Základnà uživatelský strom", -"One User Base DN per line" => "Jedna uživatelská základnà DN na řádku", -"Base Group Tree" => "Základnà skupinový strom", -"One Group Base DN per line" => "Jedna skupinová základnà DN na řádku", -"Group-Member association" => "Asociace Älena skupiny", +"Backup (Replica) Host" => "Záložnà (kopie) hostitel", +"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Zadejte volitelného záložnÃho hostitele. Musà to být kopie hlavnÃho serveru LDAP/AD.", +"Backup (Replica) Port" => "Záložnà (kopie) port", +"Disable Main Server" => "Zakázat hlavnà serveru", +"When switched on, ownCloud will only connect to the replica server." => "PÅ™i zapnutà se ownCloud pÅ™ipojà pouze k záložnÃmu serveru", "Use TLS" => "PoužÃt TLS", "Do not use it for SSL connections, it will fail." => "NepoužÃvejte pro pÅ™ipojenà pomocà SSL, pÅ™ipojenà selže.", "Case insensitve LDAP server (Windows)" => "LDAP server nerozliÅ¡ujÃcà velikost znaků (Windows)", "Turn off SSL certificate validation." => "Vypnout ověřovánà SSL certifikátu.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Pokud pÅ™ipojenà pracuje pouze s touto možnostÃ, tak importujte SSL certifikát SSL serveru do VaÅ¡eho serveru ownCloud", "Not recommended, use for testing only." => "Nenà doporuÄeno, pouze pro testovacà úÄely.", +"in seconds. A change empties the cache." => "ve vteÅ™inách. ZmÄ›na vyprázdnà vyrovnávacà paměť.", +"Directory Settings" => "Nastavenà adresáře", "User Display Name Field" => "Pole pro zobrazované jméno uživatele", "The LDAP attribute to use to generate the user`s ownCloud name." => "Atribut LDAP použitý k vytvoÅ™enà jména uživatele ownCloud", +"Base User Tree" => "Základnà uživatelský strom", +"One User Base DN per line" => "Jedna uživatelská základnà DN na řádku", +"User Search Attributes" => "Atributy vyhledávánà uživatelů", +"Optional; one attribute per line" => "Volitelné, atribut na řádku", "Group Display Name Field" => "Pole pro zobrazenà jména skupiny", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Atribut LDAP použitý k vytvoÅ™enà jména skupiny ownCloud", +"Base Group Tree" => "Základnà skupinový strom", +"One Group Base DN per line" => "Jedna skupinová základnà DN na řádku", +"Group Search Attributes" => "Atributy vyhledávánà skupin", +"Group-Member association" => "Asociace Älena skupiny", +"Special Attributes" => "Speciálnà atributy", "in bytes" => "v bajtech", -"in seconds. A change empties the cache." => "ve vteÅ™inách. ZmÄ›na vyprázdnà vyrovnávacà paměť.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Ponechte prázdné pro uživatelské jméno (výchozÃ). Jinak uveÄte LDAP/AD parametr.", "Help" => "NápovÄ›da" ); diff --git a/apps/user_ldap/l10n/da.php b/apps/user_ldap/l10n/da.php index b11b56f9b65..dd7fb8a1a0c 100644 --- a/apps/user_ldap/l10n/da.php +++ b/apps/user_ldap/l10n/da.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Fejl ved sletning", "Host" => "Host", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Du kan udelade protokollen, medmindre du skal bruge SSL. Start i sÃ¥ fald med ldaps://", "Base DN" => "Base DN", @@ -12,14 +13,14 @@ "Group Filter" => "Gruppe Filter", "Defines the filter to apply, when retrieving groups." => "Definere filteret der bruges nÃ¥r der indlæses grupper.", "Port" => "Port", -"Base User Tree" => "Base Bruger Træ", -"Base Group Tree" => "Base Group Tree", -"Group-Member association" => "Group-Member association", "Use TLS" => "Brug TLS", "Do not use it for SSL connections, it will fail." => "Brug ikke til SSL forbindelser, da den vil fejle.", "Turn off SSL certificate validation." => "Deaktiver SSL certifikat validering", "Not recommended, use for testing only." => "Anbefales ikke, brug kun for at teste.", "User Display Name Field" => "User Display Name Field", +"Base User Tree" => "Base Bruger Træ", +"Base Group Tree" => "Base Group Tree", +"Group-Member association" => "Group-Member association", "in bytes" => "i bytes", "Help" => "Hjælp" ); diff --git a/apps/user_ldap/l10n/de.php b/apps/user_ldap/l10n/de.php index efc8a80f8c7..df680465c98 100644 --- a/apps/user_ldap/l10n/de.php +++ b/apps/user_ldap/l10n/de.php @@ -1,6 +1,8 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Löschen fehlgeschlagen", +"Keep settings?" => "Einstellungen beibehalten?", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Warnung:</b> Die Anwendungen user_ldap und user_webdavauth sind inkompatibel. Es kann demzufolge zu unerwarteten Verhalten kommen. Bitte Deinen Systemadministator eine der beiden Anwendungen zu deaktivieren.", -"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Warnung:</b> Da das PHP-Modul für LDAP ist nicht installiert, das Backend wird nicht funktionieren. Bitten Sie Ihren Systemadministrator das Modul zu installieren.", +"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Warnung:</b> Da das PHP-Modul für LDAP nicht installiert ist, wird das Backend nicht funktionieren. Bitten Sie Ihren Systemadministrator das Modul zu installieren.", "Host" => "Host", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Du kannst das Protokoll auslassen, außer wenn Du SSL benötigst. Beginne dann mit ldaps://", "Base DN" => "Basis-DN", @@ -20,23 +22,23 @@ "Defines the filter to apply, when retrieving groups." => "Definiert den Filter für die Anfrage der Gruppen.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "ohne Platzhalter, z.B.: \"objectClass=posixGroup\"", "Port" => "Port", -"Base User Tree" => "Basis-Benutzerbaum", -"One User Base DN per line" => "Ein Benutzer Base DN pro Zeile", -"Base Group Tree" => "Basis-Gruppenbaum", -"One Group Base DN per line" => "Ein Gruppen Base DN pro Zeile", -"Group-Member association" => "Assoziation zwischen Gruppe und Benutzer", "Use TLS" => "Nutze TLS", "Do not use it for SSL connections, it will fail." => "Verwende dies nicht für SSL-Verbindungen, es wird fehlschlagen.", "Case insensitve LDAP server (Windows)" => "LDAP-Server (Windows: Groß- und Kleinschreibung bleibt unbeachtet)", "Turn off SSL certificate validation." => "Schalte die SSL-Zertifikatsprüfung aus.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Falls die Verbindung es erfordert, muss das SSL-Zertifikat des LDAP-Server importiert werden.", "Not recommended, use for testing only." => "Nicht empfohlen, nur zu Testzwecken.", +"in seconds. A change empties the cache." => "in Sekunden. Eine Änderung leert den Cache.", "User Display Name Field" => "Feld für den Anzeigenamen des Benutzers", "The LDAP attribute to use to generate the user`s ownCloud name." => "Das LDAP-Attribut für die Generierung des Benutzernamens in ownCloud. ", +"Base User Tree" => "Basis-Benutzerbaum", +"One User Base DN per line" => "Ein Benutzer Base DN pro Zeile", "Group Display Name Field" => "Feld für den Anzeigenamen der Gruppe", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Das LDAP-Attribut für die Generierung des Gruppennamens in ownCloud. ", +"Base Group Tree" => "Basis-Gruppenbaum", +"One Group Base DN per line" => "Ein Gruppen Base DN pro Zeile", +"Group-Member association" => "Assoziation zwischen Gruppe und Benutzer", "in bytes" => "in Bytes", -"in seconds. A change empties the cache." => "in Sekunden. Eine Änderung leert den Cache.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Ohne Eingabe wird der Benutzername (Standard) verwendet. Anderenfall trage ein LDAP/AD-Attribut ein.", "Help" => "Hilfe" ); diff --git a/apps/user_ldap/l10n/de_DE.php b/apps/user_ldap/l10n/de_DE.php index 843609f8b89..1b47cfec2a6 100644 --- a/apps/user_ldap/l10n/de_DE.php +++ b/apps/user_ldap/l10n/de_DE.php @@ -1,6 +1,20 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "Das Löschen der Server-Konfiguration schlug fehl", +"The configuration is valid and the connection could be established!" => "Die Konfiguration ist valide und eine Verbindung konnte hergestellt werden!", +"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "Die Konfiguration ist valide, aber das Herstellen einer Verbindung schlug fehl. Bitte überprüfen Sie die Server-Einstellungen und Zertifikate.", +"The configuration is invalid. Please look in the ownCloud log for further details." => "Die Konfiguration ist nicht valide. Weitere Details können Sie im ownCloud-Log nachlesen.", +"Deletion failed" => "Löschen fehlgeschlagen", +"Take over settings from recent server configuration?" => "Sollen die Einstellungen der letzten Server-Konfiguration übernommen werden?", +"Keep settings?" => "Einstellungen behalten?", +"Cannot add server configuration" => "Das Hinzufügen der Server-Konfiguration schlug fehl", +"Connection test succeeded" => "Verbindungs-Test erfolgreich", +"Connection test failed" => "Verbindungs-Test fehlgeschlagen", +"Do you really want to delete the current Server Configuration?" => "Möchten Sie wirklich die Server-Konfiguration löschen?", +"Confirm Deletion" => "Löschung bestätigen", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Warnung:</b> Die Anwendungen user_ldap und user_webdavauth sind inkompatibel. Es kann demzufolge zu unerwarteten Verhalten kommen. Bitten Sie Ihren Systemadministator eine der beiden Anwendungen zu deaktivieren.", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Warnung:</b> Da das PHP-Modul für LDAP ist nicht installiert, das Backend wird nicht funktionieren. Bitten Sie Ihren Systemadministrator das Modul zu installieren.", +"Server configuration" => "Server-Konfiguration", +"Add Server Configuration" => "Server-Konfiguration hinzufügen", "Host" => "Host", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Sie können das Protokoll auslassen, außer wenn Sie SSL benötigen. Beginnen Sie dann mit ldaps://", "Base DN" => "Basis-DN", @@ -19,24 +33,37 @@ "Group Filter" => "Gruppen-Filter", "Defines the filter to apply, when retrieving groups." => "Definiert den Filter für die Anfrage der Gruppen.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "ohne Platzhalter, z.B.: \"objectClass=posixGroup\"", +"Connection Settings" => "Verbindungs-Einstellungen", +"Configuration Active" => "Konfiguration aktiv", +"When unchecked, this configuration will be skipped." => "Wenn nicht angehakt, wird diese Konfiguration übersprungen.", "Port" => "Port", -"Base User Tree" => "Basis-Benutzerbaum", -"One User Base DN per line" => "Ein Benutzer Base DN pro Zeile", -"Base Group Tree" => "Basis-Gruppenbaum", -"One Group Base DN per line" => "Ein Gruppen Base DN pro Zeile", -"Group-Member association" => "Assoziation zwischen Gruppe und Benutzer", +"Backup (Replica) Host" => "Back-Up (Replikation) Host", +"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Optionaler Backup Host. Es muss ein Replikat des eigentlichen LDAP/AD Servers sein.", +"Backup (Replica) Port" => "Back-Up (Replikation) Port", +"Disable Main Server" => "Hauptserver deaktivieren", +"When switched on, ownCloud will only connect to the replica server." => "Wenn eingeschaltet wird sich ownCloud nur mit dem Replilat-Server verbinden.", "Use TLS" => "Nutze TLS", "Do not use it for SSL connections, it will fail." => "Verwenden Sie dies nicht für SSL-Verbindungen, es wird fehlschlagen.", "Case insensitve LDAP server (Windows)" => "LDAP-Server (Windows: Groß- und Kleinschreibung bleibt unbeachtet)", "Turn off SSL certificate validation." => "Schalten Sie die SSL-Zertifikatsprüfung aus.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Falls die Verbindung es erfordert, muss das SSL-Zertifikat des LDAP-Server importiert werden.", "Not recommended, use for testing only." => "Nicht empfohlen, nur zu Testzwecken.", +"in seconds. A change empties the cache." => "in Sekunden. Eine Änderung leert den Cache.", +"Directory Settings" => "Verzeichnis-Einstellungen", "User Display Name Field" => "Feld für den Anzeigenamen des Benutzers", "The LDAP attribute to use to generate the user`s ownCloud name." => "Das LDAP-Attribut für die Generierung des Benutzernamens in ownCloud. ", +"Base User Tree" => "Basis-Benutzerbaum", +"One User Base DN per line" => "Ein Benutzer Base DN pro Zeile", +"User Search Attributes" => "Benutzer-Suche Eigenschaften", +"Optional; one attribute per line" => "Optional; Ein Attribut pro Zeile", "Group Display Name Field" => "Feld für den Anzeigenamen der Gruppe", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Das LDAP-Attribut für die Generierung des Gruppennamens in ownCloud. ", +"Base Group Tree" => "Basis-Gruppenbaum", +"One Group Base DN per line" => "Ein Gruppen Base DN pro Zeile", +"Group Search Attributes" => "Gruppen-Suche Eigenschaften", +"Group-Member association" => "Assoziation zwischen Gruppe und Benutzer", +"Special Attributes" => "besondere Eigenschaften", "in bytes" => "in Bytes", -"in seconds. A change empties the cache." => "in Sekunden. Eine Änderung leert den Cache.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Ohne Eingabe wird der Benutzername (Standard) verwendet. Anderenfall trage ein LDAP/AD-Attribut ein.", "Help" => "Hilfe" ); diff --git a/apps/user_ldap/l10n/el.php b/apps/user_ldap/l10n/el.php index 1f75a687a5d..3951c94dfa7 100644 --- a/apps/user_ldap/l10n/el.php +++ b/apps/user_ldap/l10n/el.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Η διαγÏαφή απÎτυχε", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Î Ïοσοχή:</b> Οι εφαÏμογÎÏ‚ user_ldap και user_webdavauth είναι ασÏμβατες. ΜποÏεί να αντιμετωπίσετε απÏόβλεπτη συμπεÏιφοÏά. ΠαÏακαλώ ζητήστε από τον διαχειÏιστή συστήματος να απενεÏγοποιήσει μία από αυτÎÏ‚.", "Host" => "Διακομιστής", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "ΜποÏείτε να παÏαλείψετε το Ï€Ïωτόκολλο, εκτός αν απαιτείται SSL. Σε αυτή την πεÏίπτωση ξεκινήστε με ldaps://", @@ -18,21 +19,21 @@ "Defines the filter to apply, when retrieving groups." => "ΚαθοÏίζει το φίλτÏο που θα ισχÏει κατά την ανάκτηση ομάδων.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "χωÏίς κάποια μεταβλητή, Ï€.χ. \"objectClass=ΟμάδαPosix\".", "Port" => "ΘÏÏα", -"Base User Tree" => "Base User Tree", -"Base Group Tree" => "Base Group Tree", -"Group-Member association" => "Group-Member association", "Use TLS" => "ΧÏήση TLS", "Do not use it for SSL connections, it will fail." => "Μην χÏησιμοποιείτε για συνδÎσεις SSL, θα αποτÏχει.", "Case insensitve LDAP server (Windows)" => "LDAP server (Windows) με διάκÏιση πεζών-ΚΕΦΑΛΑΙΩÎ", "Turn off SSL certificate validation." => "ΑπενεÏγοποίηση επικÏÏωσης Ï€Î¹ÏƒÏ„Î¿Ï€Î¿Î¹Î·Ï„Î¹ÎºÎ¿Ï SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Εάν η σÏνδεση δουλεÏει μόνο με αυτή την επιλογή, εισάγετε το LDAP SSL πιστοποιητικό του διακομιστή στον ownCloud server σας.", "Not recommended, use for testing only." => "Δεν Ï€Ïοτείνεται, χÏήση μόνο για δοκιμÎÏ‚.", +"in seconds. A change empties the cache." => "σε δευτεÏόλεπτα. Μια αλλαγή αδειάζει την μνήμη cache.", "User Display Name Field" => "Πεδίο Ονόματος ΧÏήστη", "The LDAP attribute to use to generate the user`s ownCloud name." => "Η ιδιότητα LDAP που θα χÏησιμοποιείται για τη δημιουÏγία του ονόματος χÏήστη του ownCloud.", +"Base User Tree" => "Base User Tree", "Group Display Name Field" => "Group Display Name Field", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Η ιδιότητα LDAP που θα χÏησιμοποιείται για τη δημιουÏγία του ονόματος ομάδας του ownCloud.", +"Base Group Tree" => "Base Group Tree", +"Group-Member association" => "Group-Member association", "in bytes" => "σε bytes", -"in seconds. A change empties the cache." => "σε δευτεÏόλεπτα. Μια αλλαγή αδειάζει την μνήμη cache.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Αφήστε το κενό για το όνομα χÏήστη (Ï€Ïοεπιλογή). ΔιαφοÏετικά, συμπληÏώστε μία ιδιότητα LDAP/AD.", "Help" => "Βοήθεια" ); diff --git a/apps/user_ldap/l10n/eo.php b/apps/user_ldap/l10n/eo.php index 35f436a0b0a..2a2b70603c5 100644 --- a/apps/user_ldap/l10n/eo.php +++ b/apps/user_ldap/l10n/eo.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Forigo malsukcesis", "Host" => "Gastigo", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Vi povas neglekti la protokolon, escepte se vi bezonas SSL-on. Tiuokaze, komencu per ldaps://", "Base DN" => "Bazo-DN", @@ -15,21 +16,21 @@ "Defines the filter to apply, when retrieving groups." => "Äœi difinas la filtrilon aplikotan, kiam veniÄas grupoj.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "sen ajna referencilo, ekz.: \"objectClass=posixGroup\".", "Port" => "Pordo", -"Base User Tree" => "Baza uzantarbo", -"Base Group Tree" => "Baza gruparbo", -"Group-Member association" => "Asocio de grupo kaj membro", "Use TLS" => "Uzi TLS-on", "Do not use it for SSL connections, it will fail." => "Ne uzu Äin por SSL-konektoj, Äi malsukcesos.", "Case insensitve LDAP server (Windows)" => "LDAP-servilo blinda je litergrandeco (Vindozo)", "Turn off SSL certificate validation." => "Malkapabligi validkontrolon de SSL-atestiloj.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Se la konekto nur funkcias kun ĉi tiu malnepro, enportu la SSL-atestilo de la LDAP-servilo en via ownCloud-servilo.", "Not recommended, use for testing only." => "Ne rekomendata, uzu Äin nur por testoj.", +"in seconds. A change empties the cache." => "sekunde. Ajna ÅanÄo malplenigas la kaÅmemoron.", "User Display Name Field" => "Kampo de vidignomo de uzanto", "The LDAP attribute to use to generate the user`s ownCloud name." => "La atributo de LDAP uzota por generi la ownCloud-an nomon de la uzanto.", +"Base User Tree" => "Baza uzantarbo", "Group Display Name Field" => "Kampo de vidignomo de grupo", "The LDAP attribute to use to generate the groups`s ownCloud name." => "La atributo de LDAP uzota por generi la ownCloud-an nomon de la grupo.", +"Base Group Tree" => "Baza gruparbo", +"Group-Member association" => "Asocio de grupo kaj membro", "in bytes" => "duumoke", -"in seconds. A change empties the cache." => "sekunde. Ajna ÅanÄo malplenigas la kaÅmemoron.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Lasu malplena por uzantonomo (defaÅlto). Alie, specifu LDAP/AD-atributon.", "Help" => "Helpo" ); diff --git a/apps/user_ldap/l10n/es.php b/apps/user_ldap/l10n/es.php index 48e7b24734e..a6d1d9d260d 100644 --- a/apps/user_ldap/l10n/es.php +++ b/apps/user_ldap/l10n/es.php @@ -1,8 +1,22 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "No se pudo borrar la configuración del servidor", +"The configuration is valid and the connection could be established!" => "La configuración es válida y la conexión puede establecerse!", +"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "La configuración es válida, pero falló el Enlace. Por favor, compruebe la configuración del servidor y las credenciales.", +"The configuration is invalid. Please look in the ownCloud log for further details." => "La configuración no es válida. Por favor, busque en el log de ownCloud para más detalles.", +"Deletion failed" => "Falló el borrado", +"Keep settings?" => "Mantener la configuración?", +"Cannot add server configuration" => "No se puede añadir la configuración del servidor", +"Connection test succeeded" => "La prueba de conexión fue exitosa", +"Connection test failed" => "La prueba de conexión falló", +"Do you really want to delete the current Server Configuration?" => "¿Realmente desea eliminar la configuración actual del servidor?", +"Confirm Deletion" => "Confirmar eliminación", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Advertencia:</b> Los Apps user_ldap y user_webdavauth son incompatibles. Puede que experimente un comportamiento inesperado. Pregunte al administrador del sistema para desactivar uno de ellos.", -"Host" => "Servidor", +"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Advertencia:</b> El módulo LDAP de PHP no está instalado, el sistema no funcionará. Por favor consulte al administrador del sistema para instalarlo.", +"Server configuration" => "Configuración del Servidor", +"Host" => "Máquina", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Puede omitir el protocolo, excepto si requiere SSL. En ese caso, empiece con ldaps://", "Base DN" => "DN base", +"One Base DN per line" => "Un DN Base por lÃnea", "You can specify Base DN for users and groups in the Advanced tab" => "Puede especificar el DN base para usuarios y grupos en la pestaña Avanzado", "User DN" => "DN usuario", "The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." => "El DN del usuario cliente con el que se hará la asociación, p.ej. uid=agente,dc=ejemplo,dc=com. Para acceso anónimo, deje DN y contraseña vacÃos.", @@ -18,21 +32,23 @@ "Defines the filter to apply, when retrieving groups." => "Define el filtro a aplicar, cuando se obtienen grupos.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "Con cualquier placeholder, ej: \"objectClass=posixGroup\".", "Port" => "Puerto", -"Base User Tree" => "Ãrbol base de usuario", -"Base Group Tree" => "Ãrbol base de grupo", -"Group-Member association" => "Asociación Grupo-Miembro", "Use TLS" => "Usar TLS", "Do not use it for SSL connections, it will fail." => "No usarlo para SSL, habrá error.", "Case insensitve LDAP server (Windows)" => "Servidor de LDAP sensible a mayúsculas/minúsculas (Windows)", "Turn off SSL certificate validation." => "Apagar la validación por certificado SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Si la conexión sólo funciona con esta opción, importe el certificado SSL del servidor LDAP en su servidor ownCloud.", "Not recommended, use for testing only." => "No recomendado, sólo para pruebas.", +"in seconds. A change empties the cache." => "en segundos. Un cambio vacÃa la cache.", "User Display Name Field" => "Campo de nombre de usuario a mostrar", "The LDAP attribute to use to generate the user`s ownCloud name." => "El atributo LDAP a usar para generar el nombre de usuario de ownCloud.", +"Base User Tree" => "Ãrbol base de usuario", +"One User Base DN per line" => "Un DN Base de Usuario por lÃnea", "Group Display Name Field" => "Campo de nombre de grupo a mostrar", "The LDAP attribute to use to generate the groups`s ownCloud name." => "El atributo LDAP a usar para generar el nombre de los grupos de ownCloud.", +"Base Group Tree" => "Ãrbol base de grupo", +"One Group Base DN per line" => "Un DN Base de Grupo por lÃnea", +"Group-Member association" => "Asociación Grupo-Miembro", "in bytes" => "en bytes", -"in seconds. A change empties the cache." => "en segundos. Un cambio vacÃa la cache.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "VacÃo para el nombre de usuario (por defecto). En otro caso, especifique un atributo LDAP/AD.", "Help" => "Ayuda" ); diff --git a/apps/user_ldap/l10n/es_AR.php b/apps/user_ldap/l10n/es_AR.php index 331bf8699f4..dce2321e6b1 100644 --- a/apps/user_ldap/l10n/es_AR.php +++ b/apps/user_ldap/l10n/es_AR.php @@ -1,8 +1,11 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Error al borrar", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Advertencia:</b> Los Apps user_ldap y user_webdavauth son incompatibles. Puede que experimente un comportamiento inesperado. Pregunte al administrador del sistema para desactivar uno de ellos.", +"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Atención:</b> El módulo PHP LDAP no está instalado, este elemento no va a funcionar. Por favor, pedile al administrador que lo instale.", "Host" => "Servidor", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Podés omitir el protocolo, excepto si SSL es requerido. En ese caso, empezá con ldaps://", "Base DN" => "DN base", +"One Base DN per line" => "Una DN base por lÃnea", "You can specify Base DN for users and groups in the Advanced tab" => "Podés especificar el DN base para usuarios y grupos en la pestaña \"Avanzado\"", "User DN" => "DN usuario", "The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." => "El DN del usuario cliente con el que se hará la asociación, p.ej. uid=agente,dc=ejemplo,dc=com. Para acceso anónimo, dejá DN y contraseña vacÃos.", @@ -18,21 +21,23 @@ "Defines the filter to apply, when retrieving groups." => "Define el filtro a aplicar cuando se obtienen grupos.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "Sin ninguna plantilla, p. ej.: \"objectClass=posixGroup\".", "Port" => "Puerto", -"Base User Tree" => "Ãrbol base de usuario", -"Base Group Tree" => "Ãrbol base de grupo", -"Group-Member association" => "Asociación Grupo-Miembro", "Use TLS" => "Usar TLS", "Do not use it for SSL connections, it will fail." => "No usarlo para SSL, dará error.", "Case insensitve LDAP server (Windows)" => "Servidor de LDAP sensible a mayúsculas/minúsculas (Windows)", "Turn off SSL certificate validation." => "Desactivar la validación por certificado SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Si la conexión sólo funciona con esta opción, importá el certificado SSL del servidor LDAP en tu servidor ownCloud.", "Not recommended, use for testing only." => "No recomendado, sólo para pruebas.", +"in seconds. A change empties the cache." => "en segundos. Cambiarlo vacÃa la cache.", "User Display Name Field" => "Campo de nombre de usuario a mostrar", "The LDAP attribute to use to generate the user`s ownCloud name." => "El atributo LDAP a usar para generar el nombre de usuario de ownCloud.", +"Base User Tree" => "Ãrbol base de usuario", +"One User Base DN per line" => "Una DN base de usuario por lÃnea", "Group Display Name Field" => "Campo de nombre de grupo a mostrar", "The LDAP attribute to use to generate the groups`s ownCloud name." => "El atributo LDAP a usar para generar el nombre de los grupos de ownCloud.", +"Base Group Tree" => "Ãrbol base de grupo", +"One Group Base DN per line" => "Una DN base de grupo por lÃnea", +"Group-Member association" => "Asociación Grupo-Miembro", "in bytes" => "en bytes", -"in seconds. A change empties the cache." => "en segundos. Cambiarlo vacÃa la cache.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "VacÃo para el nombre de usuario (por defecto). En otro caso, especificá un atributo LDAP/AD.", "Help" => "Ayuda" ); diff --git a/apps/user_ldap/l10n/et_EE.php b/apps/user_ldap/l10n/et_EE.php index 9752d73c1c0..ba03a8a8093 100644 --- a/apps/user_ldap/l10n/et_EE.php +++ b/apps/user_ldap/l10n/et_EE.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Kustutamine ebaõnnestus", "Host" => "Host", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Sa ei saa protokolli ära jätta, välja arvatud siis, kui sa nõuad SSL-ühendust. Sel juhul alusta eesliitega ldaps://", "Base DN" => "Baas DN", @@ -17,21 +18,21 @@ "Defines the filter to apply, when retrieving groups." => "Määrab gruppe hankides filtri, mida rakendatakse.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "ilma ühegi kohatäitjata, nt. \"objectClass=posixGroup\".", "Port" => "Port", -"Base User Tree" => "Baaskasutaja puu", -"Base Group Tree" => "Baasgrupi puu", -"Group-Member association" => "Grupiliikme seotus", "Use TLS" => "Kasutaja TLS", "Do not use it for SSL connections, it will fail." => "Ära kasuta seda SSL ühenduse jaoks, see ei toimi.", "Case insensitve LDAP server (Windows)" => "Mittetõstutundlik LDAP server (Windows)", "Turn off SSL certificate validation." => "Lülita SSL sertifikaadi kontrollimine välja.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Kui ühendus toimib ainult selle valikuga, siis impordi LDAP serveri SSL sertifikaat oma ownCloud serverisse.", "Not recommended, use for testing only." => "Pole soovitatav, kasuta ainult testimiseks.", +"in seconds. A change empties the cache." => "sekundites. Muudatus tühjendab vahemälu.", "User Display Name Field" => "Kasutaja näidatava nime väli", "The LDAP attribute to use to generate the user`s ownCloud name." => "LDAP omadus, mida kasutatakse kasutaja ownCloudi nime loomiseks.", +"Base User Tree" => "Baaskasutaja puu", "Group Display Name Field" => "Grupi näidatava nime väli", "The LDAP attribute to use to generate the groups`s ownCloud name." => "LDAP omadus, mida kasutatakse ownCloudi grupi nime loomiseks.", +"Base Group Tree" => "Baasgrupi puu", +"Group-Member association" => "Grupiliikme seotus", "in bytes" => "baitides", -"in seconds. A change empties the cache." => "sekundites. Muudatus tühjendab vahemälu.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Kasutajanime (vaikeväärtus) kasutamiseks jäta tühjaks. Vastasel juhul määra LDAP/AD omadus.", "Help" => "Abiinfo" ); diff --git a/apps/user_ldap/l10n/eu.php b/apps/user_ldap/l10n/eu.php index e2b50f28ee9..2aad2363ce9 100644 --- a/apps/user_ldap/l10n/eu.php +++ b/apps/user_ldap/l10n/eu.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Ezabaketak huts egin du", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Abisua:</b> user_ldap eta user_webdavauth aplikazioak bateraezinak dira. Portaera berezia izan dezakezu. Mesedez eskatu zure sistema kudeatzaileari bietako bat desgaitzeko.", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Abisua:</b> PHPk behar duen LDAP modulua ez dago instalaturik, motorrak ez du funtzionatuko. Mesedez eskatu zure sistema kudeatzaileari instala dezan.", "Host" => "Hostalaria", @@ -20,23 +21,23 @@ "Defines the filter to apply, when retrieving groups." => "Taldeak jasotzen direnean ezarriko den iragazkia zehazten du.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "txantiloirik gabe, adb. \"objectClass=posixGroup\".", "Port" => "Portua", -"Base User Tree" => "Oinarrizko Erabiltzaile Zuhaitza", -"One User Base DN per line" => "Erabiltzaile DN Oinarri bat lerroko", -"Base Group Tree" => "Oinarrizko Talde Zuhaitza", -"One Group Base DN per line" => "Talde DN Oinarri bat lerroko", -"Group-Member association" => "Talde-Kide elkarketak", "Use TLS" => "Erabili TLS", "Do not use it for SSL connections, it will fail." => "Ez erabili SSL konexioetan, huts egingo du.", "Case insensitve LDAP server (Windows)" => "Maiuskulak eta minuskulak ezberditzen ez dituen LDAP zerbitzaria (windows)", "Turn off SSL certificate validation." => "Ezgaitu SSL ziurtagirien egiaztapena.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Konexioa aukera hau ezinbestekoa badu, inportatu LDAP zerbitzariaren SSL ziurtagiria zure ownCloud zerbitzarian.", "Not recommended, use for testing only." => "Ez da aholkatzen, erabili bakarrik frogak egiteko.", +"in seconds. A change empties the cache." => "segundutan. Aldaketak katxea husten du.", "User Display Name Field" => "Erabiltzaileen bistaratzeko izena duen eremua", "The LDAP attribute to use to generate the user`s ownCloud name." => "ownCloud erabiltzailearen izena sortzeko erabiliko den LDAP atributua", +"Base User Tree" => "Oinarrizko Erabiltzaile Zuhaitza", +"One User Base DN per line" => "Erabiltzaile DN Oinarri bat lerroko", "Group Display Name Field" => "Taldeen bistaratzeko izena duen eremua", "The LDAP attribute to use to generate the groups`s ownCloud name." => "ownCloud taldearen izena sortzeko erabiliko den LDAP atributua", +"Base Group Tree" => "Oinarrizko Talde Zuhaitza", +"One Group Base DN per line" => "Talde DN Oinarri bat lerroko", +"Group-Member association" => "Talde-Kide elkarketak", "in bytes" => "bytetan", -"in seconds. A change empties the cache." => "segundutan. Aldaketak katxea husten du.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Utzi hutsik erabiltzaile izenarako (lehentsia). Bestela zehaztu LDAP/AD atributua.", "Help" => "Laguntza" ); diff --git a/apps/user_ldap/l10n/fa.php b/apps/user_ldap/l10n/fa.php index 44324221168..e3955d3f32d 100644 --- a/apps/user_ldap/l10n/fa.php +++ b/apps/user_ldap/l10n/fa.php @@ -1,5 +1,7 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "ØØ°Ù کردن انجام نشد", "Host" => "میزبانی", "Password" => "رمز عبور", +"Port" => "درگاه", "Help" => "راه‌نما" ); diff --git a/apps/user_ldap/l10n/fi_FI.php b/apps/user_ldap/l10n/fi_FI.php index 24195649a64..4f8fd3f2d17 100644 --- a/apps/user_ldap/l10n/fi_FI.php +++ b/apps/user_ldap/l10n/fi_FI.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Poisto epäonnistui", "Host" => "Isäntä", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Voit jättää protokollan määrittämättä, paitsi kun vaadit SSL:ää. Aloita silloin ldaps://", "Base DN" => "Oletus DN", @@ -17,21 +18,21 @@ "Defines the filter to apply, when retrieving groups." => "Määrittelee käytettävän suodattimen, kun ryhmiä haetaan. ", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "ilman paikanvaraustermiä, ts. \"objectClass=posixGroup\".", "Port" => "Portti", -"Base User Tree" => "Oletuskäyttäjäpuu", -"Base Group Tree" => "Ryhmien juuri", -"Group-Member association" => "Ryhmän ja jäsenen assosiaatio (yhteys)", "Use TLS" => "Käytä TLS:ää", "Do not use it for SSL connections, it will fail." => "Älä käytä SSL-yhteyttä varten, se epäonnistuu. ", "Case insensitve LDAP server (Windows)" => "Kirjainkoosta piittamaton LDAP-palvelin (Windows)", "Turn off SSL certificate validation." => "Poista käytöstä SSL-varmenteen vahvistus", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Jos yhteys toimii vain tällä valinnalla, siirrä LDAP-palvelimen SSL-varmenne ownCloud-palvelimellesi.", "Not recommended, use for testing only." => "Ei suositella, käytä vain testausta varten.", +"in seconds. A change empties the cache." => "sekunneissa. Muutos tyhjentää välimuistin.", "User Display Name Field" => "Käyttäjän näytettävän nimen kenttä", "The LDAP attribute to use to generate the user`s ownCloud name." => "LDAP-attribuutti, jota käytetään käyttäjän ownCloud-käyttäjänimenä ", +"Base User Tree" => "Oletuskäyttäjäpuu", "Group Display Name Field" => "Ryhmän \"näytettävä nimi\"-kenttä", "The LDAP attribute to use to generate the groups`s ownCloud name." => "LDAP-attribuutti, jota käytetään luomaan ryhmän ownCloud-nimi", +"Base Group Tree" => "Ryhmien juuri", +"Group-Member association" => "Ryhmän ja jäsenen assosiaatio (yhteys)", "in bytes" => "tavuissa", -"in seconds. A change empties the cache." => "sekunneissa. Muutos tyhjentää välimuistin.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Jätä tyhjäksi käyttäjänimi (oletusasetus). Muutoin anna LDAP/AD-atribuutti.", "Help" => "Ohje" ); diff --git a/apps/user_ldap/l10n/fr.php b/apps/user_ldap/l10n/fr.php index 28ee6346ef4..a2879b4fa03 100644 --- a/apps/user_ldap/l10n/fr.php +++ b/apps/user_ldap/l10n/fr.php @@ -1,6 +1,20 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "Échec de la suppression de la configuration du serveur", +"The configuration is valid and the connection could be established!" => "La configuration est valide est la connexion peut être établie !", +"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "La configuration est valide, mais le lien ne peut être établi. Veuillez vérifier les paramètres du serveur ainsi que vos identifiants de connexion.", +"The configuration is invalid. Please look in the ownCloud log for further details." => "La configuration est invalide. Veuillez vous référer aux fichiers de journaux ownCloud pour plus d'information.", +"Deletion failed" => "La suppression a échoué", +"Take over settings from recent server configuration?" => "Récupérer les paramètres depuis une configuration récente du serveur ?", +"Keep settings?" => "Garder ces paramètres ?", +"Cannot add server configuration" => "Impossible d'ajouter la configuration du serveur.", +"Connection test succeeded" => "Test de connexion réussi", +"Connection test failed" => "Le test de connexion a échoué", +"Do you really want to delete the current Server Configuration?" => "Êtes-vous vraiment sûr de vouloir effacer la configuration actuelle du serveur ?", +"Confirm Deletion" => "Confirmer la suppression", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Avertissement:</b> Les applications user_ldap et user_webdavauth sont incompatibles. Des disfonctionnements peuvent survenir. Contactez votre administrateur système pour qu'il désactive l'une d'elles.", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Attention :</b> Le module php LDAP n'est pas installé, par conséquent cette extension ne pourra fonctionner. Veuillez contacter votre administrateur système afin qu'il l'installe.", +"Server configuration" => "Configuration du serveur", +"Add Server Configuration" => "Ajouter une configuration du serveur", "Host" => "Hôte", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Vous pouvez omettre le protocole, sauf si vous avez besoin de SSL. Dans ce cas préfixez avec ldaps://", "Base DN" => "DN Racine", @@ -19,24 +33,34 @@ "Group Filter" => "Filtre de groupes", "Defines the filter to apply, when retrieving groups." => "Définit le filtre à appliquer lors de la récupération des groupes.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "sans élément de substitution, par exemple \"objectClass=posixGroup\".", +"Configuration Active" => "Configuration active", +"When unchecked, this configuration will be skipped." => "Lorsque non cochée, la configuration sera ignorée.", "Port" => "Port", -"Base User Tree" => "DN racine de l'arbre utilisateurs", -"One User Base DN per line" => "Un DN racine utilisateur par ligne", -"Base Group Tree" => "DN racine de l'arbre groupes", -"One Group Base DN per line" => "Un DN racine groupe par ligne", -"Group-Member association" => "Association groupe-membre", +"Backup (Replica) Host" => "Serveur de backup (réplique)", +"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Fournir un serveur de backup optionnel. Il doit s'agir d'une réplique du serveur LDAP/AD principal.", +"Backup (Replica) Port" => "Port du serveur de backup (réplique)", +"Disable Main Server" => "Désactiver le serveur principal", +"When switched on, ownCloud will only connect to the replica server." => "Lorsqu'activé, ownCloud ne se connectera qu'au serveur répliqué.", "Use TLS" => "Utiliser TLS", "Do not use it for SSL connections, it will fail." => "Ne pas utiliser pour les connexions SSL, car cela échouera.", "Case insensitve LDAP server (Windows)" => "Serveur LDAP insensible à la casse (Windows)", "Turn off SSL certificate validation." => "Désactiver la validation du certificat SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Si la connexion ne fonctionne qu'avec cette option, importez le certificat SSL du serveur LDAP dans le serveur ownCloud.", "Not recommended, use for testing only." => "Non recommandé, utilisation pour tests uniquement.", +"in seconds. A change empties the cache." => "en secondes. Tout changement vide le cache.", "User Display Name Field" => "Champ \"nom d'affichage\" de l'utilisateur", "The LDAP attribute to use to generate the user`s ownCloud name." => "L'attribut LDAP utilisé pour générer les noms d'utilisateurs d'ownCloud.", +"Base User Tree" => "DN racine de l'arbre utilisateurs", +"One User Base DN per line" => "Un DN racine utilisateur par ligne", +"User Search Attributes" => "Recherche des attributs utilisateur", +"Optional; one attribute per line" => "Optionnel, un attribut par ligne", "Group Display Name Field" => "Champ \"nom d'affichage\" du groupe", "The LDAP attribute to use to generate the groups`s ownCloud name." => "L'attribut LDAP utilisé pour générer les noms de groupes d'ownCloud.", +"Base Group Tree" => "DN racine de l'arbre groupes", +"One Group Base DN per line" => "Un DN racine groupe par ligne", +"Group Search Attributes" => "Recherche des attributs du groupe", +"Group-Member association" => "Association groupe-membre", "in bytes" => "en octets", -"in seconds. A change empties the cache." => "en secondes. Tout changement vide le cache.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Laisser vide ", "Help" => "Aide" ); diff --git a/apps/user_ldap/l10n/gl.php b/apps/user_ldap/l10n/gl.php index d60521c4a02..a2531a40a83 100644 --- a/apps/user_ldap/l10n/gl.php +++ b/apps/user_ldap/l10n/gl.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Fallou o borrado", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Aviso:</b> Os aplicativos user_ldap e user_webdavauth son incompatÃbeis. Pode acontecer un comportamento estraño. Consulte co administrador do sistema para desactivar un deles.", "Host" => "Servidor", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Pode omitir o protocolo agás que precise de SSL. Nese caso comece con ldaps://", @@ -18,21 +19,21 @@ "Defines the filter to apply, when retrieving groups." => "Define o filtro a aplicar cando se recompilan os grupos.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "sen ningunha marca de posición, como p.ex «objectClass=grupoPosix».", "Port" => "Porto", -"Base User Tree" => "Base da árbore de usuarios", -"Base Group Tree" => "Base da árbore de grupo", -"Group-Member association" => "Asociación de grupos e membros", "Use TLS" => "Usar TLS", "Do not use it for SSL connections, it will fail." => "Non empregalo para conexións SSL: fallará.", "Case insensitve LDAP server (Windows)" => "Servidor LDAP que non distingue entre maiúsculas e minúsculas (Windows)", "Turn off SSL certificate validation." => "Desactiva a validación do certificado SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Se a conexión só funciona con esta opción importa o certificado SSL do servidor LDAP no seu servidor ownCloud.", "Not recommended, use for testing only." => "Non se recomenda. Só para probas.", +"in seconds. A change empties the cache." => "en segundos. Calquera cambio baleira a caché.", "User Display Name Field" => "Campo de mostra do nome de usuario", "The LDAP attribute to use to generate the user`s ownCloud name." => "O atributo LDAP a empregar para xerar o nome de usuario de ownCloud.", +"Base User Tree" => "Base da árbore de usuarios", "Group Display Name Field" => "Campo de mostra do nome de grupo", "The LDAP attribute to use to generate the groups`s ownCloud name." => "O atributo LDAP úsase para xerar os nomes dos grupos de ownCloud.", +"Base Group Tree" => "Base da árbore de grupo", +"Group-Member association" => "Asociación de grupos e membros", "in bytes" => "en bytes", -"in seconds. A change empties the cache." => "en segundos. Calquera cambio baleira a caché.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Deixar baleiro para o nome de usuario (predeterminado). Noutro caso, especifique un atributo LDAP/AD.", "Help" => "Axuda" ); diff --git a/apps/user_ldap/l10n/he.php b/apps/user_ldap/l10n/he.php index d33ecaadf05..5c563b7b6f3 100644 --- a/apps/user_ldap/l10n/he.php +++ b/apps/user_ldap/l10n/he.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "מחיקה × ×›×©×œ×”", "Host" => "מ×רח", "User DN" => "DN משתמש", "Password" => "סיסמ×", @@ -6,7 +7,7 @@ "User Login Filter" => "×¡× ×Ÿ ×›× ×™×¡×ª משתמש", "User List Filter" => "×¡× ×Ÿ רשימת משתמשי×", "Group Filter" => "×¡× ×Ÿ קבוצה", -"in bytes" => "בבתי×", "in seconds. A change empties the cache." => "×‘×©× ×™×•×ª. ×©×™× ×•×™ מרוקן ×ת המטמון.", +"in bytes" => "בבתי×", "Help" => "עזרה" ); diff --git a/apps/user_ldap/l10n/hu_HU.php b/apps/user_ldap/l10n/hu_HU.php index 25ee47786ef..64de16fa65f 100644 --- a/apps/user_ldap/l10n/hu_HU.php +++ b/apps/user_ldap/l10n/hu_HU.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "A törlés nem sikerült", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Figyelem:</b> a user_ldap és user_webdavauth alkalmazások nem kompatibilisek. Együttes használatuk váratlan eredményekhez vezethet. Kérje meg a rendszergazdát, hogy a kettÅ‘ közül kapcsolja ki az egyiket.", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Figyelmeztetés:</b> Az LDAP PHP modul nincs telepÃtve, ezért ez az alrendszer nem fog működni. Kérje meg a rendszergazdát, hogy telepÃtse!", "Host" => "Kiszolgáló", @@ -20,23 +21,23 @@ "Defines the filter to apply, when retrieving groups." => "Ez a szűrÅ‘ érvényes a csoportok listázásakor.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "itt ne használjunk változót, pl. \"objectClass=posixGroup\".", "Port" => "Port", -"Base User Tree" => "A felhasználói fa gyökere", -"One User Base DN per line" => "Soronként egy felhasználói fa gyökerét adhatjuk meg", -"Base Group Tree" => "A csoportfa gyökere", -"One Group Base DN per line" => "Soronként egy csoportfa gyökerét adhatjuk meg", -"Group-Member association" => "A csoporttagság attribútuma", "Use TLS" => "Használjunk TLS-t", "Do not use it for SSL connections, it will fail." => "Ne használjuk SSL-kapcsolat esetén, mert nem fog működni!", "Case insensitve LDAP server (Windows)" => "Az LDAP-kiszolgáló nem tesz különbséget a kis- és nagybetűk között (Windows)", "Turn off SSL certificate validation." => "Ne ellenÅ‘rizzük az SSL-tanúsÃtvány érvényességét", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Ha a kapcsolat csak ezzel a beállÃtással működik, akkor importálja az LDAP-kiszolgáló SSL tanúsÃtványát az ownCloud kiszolgálóra!", "Not recommended, use for testing only." => "Nem javasolt, csak tesztelésre érdemes használni.", +"in seconds. A change empties the cache." => "másodpercben. A változtatás törli a cache tartalmát.", "User Display Name Field" => "A felhasználónév mezÅ‘je", "The LDAP attribute to use to generate the user`s ownCloud name." => "EbbÅ‘l az LDAP attribútumból képzÅ‘dik a felhasználó elnevezése, ami megjelenik az ownCloudban.", +"Base User Tree" => "A felhasználói fa gyökere", +"One User Base DN per line" => "Soronként egy felhasználói fa gyökerét adhatjuk meg", "Group Display Name Field" => "A csoport nevének mezÅ‘je", "The LDAP attribute to use to generate the groups`s ownCloud name." => "EbbÅ‘l az LDAP attribútumból képzÅ‘dik a csoport elnevezése, ami megjelenik az ownCloudban.", +"Base Group Tree" => "A csoportfa gyökere", +"One Group Base DN per line" => "Soronként egy csoportfa gyökerét adhatjuk meg", +"Group-Member association" => "A csoporttagság attribútuma", "in bytes" => "bájtban", -"in seconds. A change empties the cache." => "másodpercben. A változtatás törli a cache tartalmát.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Hagyja üresen, ha a felhasználónevet kÃvánja használni. EllenkezÅ‘ esetben adjon meg egy LDAP/AD attribútumot!", "Help" => "Súgó" ); diff --git a/apps/user_ldap/l10n/id.php b/apps/user_ldap/l10n/id.php index 56619634bab..33e8cc70e93 100644 --- a/apps/user_ldap/l10n/id.php +++ b/apps/user_ldap/l10n/id.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "penghapusan gagal", "Host" => "host", "Password" => "kata kunci", "User Login Filter" => "gunakan saringan login", @@ -8,7 +9,7 @@ "Do not use it for SSL connections, it will fail." => "jangan gunakan untuk koneksi SSL, itu akan gagal.", "Turn off SSL certificate validation." => "matikan validasi sertivikat SSL", "Not recommended, use for testing only." => "tidak disarankan, gunakan hanya untuk pengujian.", -"in bytes" => "dalam bytes", "in seconds. A change empties the cache." => "dalam detik. perubahan mengosongkan cache", +"in bytes" => "dalam bytes", "Help" => "bantuan" ); diff --git a/apps/user_ldap/l10n/it.php b/apps/user_ldap/l10n/it.php index bee30cfe6ec..0220aa958ce 100644 --- a/apps/user_ldap/l10n/it.php +++ b/apps/user_ldap/l10n/it.php @@ -1,6 +1,20 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "Eliminazione della configurazione del server non riuscita", +"The configuration is valid and the connection could be established!" => "La configurazione è valida e la connessione può essere stabilita.", +"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "La configurazione è valida, ma il Bind non è riuscito. Controlla le impostazioni del server e le credenziali.", +"The configuration is invalid. Please look in the ownCloud log for further details." => "La configurazione non è valida. Controlla il log di ownCloud per ulteriori dettagli.", +"Deletion failed" => "Eliminazione non riuscita", +"Take over settings from recent server configuration?" => "Vuoi recuperare le impostazioni dalla configurazione recente del server?", +"Keep settings?" => "Vuoi mantenere le impostazioni?", +"Cannot add server configuration" => "Impossibile aggiungere la configurazione del server", +"Connection test succeeded" => "Prova di connessione riuscita", +"Connection test failed" => "Prova di connessione non riuscita", +"Do you really want to delete the current Server Configuration?" => "Vuoi davvero eliminare la configurazione attuale del server?", +"Confirm Deletion" => "Conferma l'eliminazione", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Avviso:</b> le applicazioni user_ldap e user_webdavauth sono incompatibili. Potresti riscontrare un comportamento inatteso. Chiedi al tuo amministratore di sistema di disabilitarne uno.", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Avviso:</b> il modulo PHP LDAP non è installato, il motore non funzionerà . Chiedi al tuo amministratore di sistema di installarlo.", +"Server configuration" => "Configurazione del server", +"Add Server Configuration" => "Aggiungi configurazione del server", "Host" => "Host", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "È possibile omettere il protocollo, ad eccezione se è necessario SSL. Quindi inizia con ldaps://", "Base DN" => "DN base", @@ -19,24 +33,37 @@ "Group Filter" => "Filtro per il gruppo", "Defines the filter to apply, when retrieving groups." => "Specifica quale filtro utilizzare durante il recupero dei gruppi.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "senza nessun segnaposto, per esempio \"objectClass=posixGroup\".", +"Connection Settings" => "Impostazioni di connessione", +"Configuration Active" => "Configurazione attiva", +"When unchecked, this configuration will be skipped." => "Se deselezionata, questa configurazione sarà saltata.", "Port" => "Porta", -"Base User Tree" => "Struttura base dell'utente", -"One User Base DN per line" => "Un DN base utente per riga", -"Base Group Tree" => "Struttura base del gruppo", -"One Group Base DN per line" => "Un DN base gruppo per riga", -"Group-Member association" => "Associazione gruppo-utente ", +"Backup (Replica) Host" => "Host di backup (Replica)", +"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Fornisci un host di backup opzionale. Deve essere una replica del server AD/LDAP principale.", +"Backup (Replica) Port" => "Porta di backup (Replica)", +"Disable Main Server" => "Disabilita server principale", +"When switched on, ownCloud will only connect to the replica server." => "Se abilitata, ownCloud si collegherà solo al server di replica.", "Use TLS" => "Usa TLS", "Do not use it for SSL connections, it will fail." => "Non utilizzare per le connessioni SSL, fallirà .", "Case insensitve LDAP server (Windows)" => "Case insensitve LDAP server (Windows)", "Turn off SSL certificate validation." => "Disattiva il controllo del certificato SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Se la connessione funziona esclusivamente con questa opzione, importa il certificato SSL del server LDAP nel tuo server ownCloud.", "Not recommended, use for testing only." => "Non consigliato, utilizzare solo per test.", +"in seconds. A change empties the cache." => "in secondi. Il cambio svuota la cache.", +"Directory Settings" => "Impostazioni delle cartelle", "User Display Name Field" => "Campo per la visualizzazione del nome utente", "The LDAP attribute to use to generate the user`s ownCloud name." => "L'attributo LDAP da usare per generare il nome dell'utente ownCloud.", +"Base User Tree" => "Struttura base dell'utente", +"One User Base DN per line" => "Un DN base utente per riga", +"User Search Attributes" => "Attributi di ricerca utente", +"Optional; one attribute per line" => "Opzionale; un attributo per riga", "Group Display Name Field" => "Campo per la visualizzazione del nome del gruppo", "The LDAP attribute to use to generate the groups`s ownCloud name." => "L'attributo LDAP da usare per generare il nome del gruppo ownCloud.", +"Base Group Tree" => "Struttura base del gruppo", +"One Group Base DN per line" => "Un DN base gruppo per riga", +"Group Search Attributes" => "Attributi di ricerca gruppo", +"Group-Member association" => "Associazione gruppo-utente ", +"Special Attributes" => "Attributi speciali", "in bytes" => "in byte", -"in seconds. A change empties the cache." => "in secondi. Il cambio svuota la cache.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Lascia vuoto per il nome utente (predefinito). Altrimenti, specifica un attributo LDAP/AD.", "Help" => "Aiuto" ); diff --git a/apps/user_ldap/l10n/ja_JP.php b/apps/user_ldap/l10n/ja_JP.php index 1c93db7ba09..7706357cbf3 100644 --- a/apps/user_ldap/l10n/ja_JP.php +++ b/apps/user_ldap/l10n/ja_JP.php @@ -1,6 +1,20 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "サーãƒè¨å®šã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ", +"The configuration is valid and the connection could be established!" => "è¨å®šã¯æœ‰åйã§ã‚ã‚Šã€æŽ¥ç¶šã‚’ç¢ºç«‹ã—ã¾ã—ãŸï¼", +"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "è¨å®šã¯æœ‰åйã§ã™ãŒã€æŽ¥ç¶šã«å¤±æ•—ã—ã¾ã—ãŸã€‚サーãƒè¨å®šã¨è³‡æ ¼æƒ…å ±ã‚’ç¢ºèªã—ã¦ä¸‹ã•ã„。", +"The configuration is invalid. Please look in the ownCloud log for further details." => "è¨å®šã¯ç„¡åйã§ã™ã€‚詳細㯠ownCloud ã®ãƒã‚°ã‚’見ã¦ä¸‹ã•ã„。", +"Deletion failed" => "削除ã«å¤±æ•—ã—ã¾ã—ãŸ", +"Take over settings from recent server configuration?" => "最近ã®ã‚µãƒ¼ãƒè¨å®šã‹ã‚‰è¨å®šã‚’引ãç¶™ãŽã¾ã™ã‹ï¼Ÿ", +"Keep settings?" => "è¨å®šã‚’ä¿æŒã—ã¾ã™ã‹ï¼Ÿ", +"Cannot add server configuration" => "サーãƒè¨å®šã‚’è¿½åŠ ã§ãã¾ã›ã‚“", +"Connection test succeeded" => "æŽ¥ç¶šãƒ†ã‚¹ãƒˆã«æˆåŠŸã—ã¾ã—ãŸ", +"Connection test failed" => "接続テストã«å¤±æ•—ã—ã¾ã—ãŸ", +"Do you really want to delete the current Server Configuration?" => "ç¾åœ¨ã®ã‚µãƒ¼ãƒè¨å®šã‚’本当ã«å‰Šé™¤ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿ", +"Confirm Deletion" => "削除ã®ç¢ºèª", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>è¦å‘Š:</b> user_ldap 㨠user_webdavauth ã®ã‚¢ãƒ—リã«ã¯äº’æ›æ€§ãŒã‚りã¾ã›ã‚“。予期ã›ã¬å‹•作をã™ã‚‹å¯èƒ½å§“ãŒã‚りã¾ã™ã€‚システム管ç†è€…ã«ã©ã¡ã‚‰ã‹ã‚’無効ã«ã™ã‚‹ã‚ˆã†å•ã„åˆã‚ã›ã¦ãã ã•ã„。", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>è¦å‘Š:</b> PHP LDAP モジュールãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“。ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰ãŒæ£ã—ã動作ã—ã¾ã›ã‚“。システム管ç†è€…ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã™ã‚‹ã‚ˆã†å•ã„åˆã‚ã›ã¦ãã ã•ã„。", +"Server configuration" => "サーãƒè¨å®š", +"Add Server Configuration" => "サーãƒè¨å®šã‚’è¿½åŠ ", "Host" => "ホスト", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "SSL通信ã—ãªã„å ´åˆã«ã¯ã€ãƒ—ãƒãƒˆã‚³ãƒ«åã‚’çœç•¥ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãã†ã§ãªã„å ´åˆã«ã¯ã€ldaps:// ã‹ã‚‰å§‹ã‚ã¦ãã ã•ã„。", "Base DN" => "ベースDN", @@ -19,24 +33,37 @@ "Group Filter" => "グループフィルタ", "Defines the filter to apply, when retrieving groups." => "グループをå–å¾—ã™ã‚‹ã¨ãã«é©ç”¨ã™ã‚‹ãƒ•ィルターを定義ã™ã‚‹ã€‚", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "プレースホルダーを利用ã—ãªã„ã§ãã ã•ã„。例 \"objectClass=posixGroup\"", +"Connection Settings" => "接続è¨å®š", +"Configuration Active" => "è¨å®šã¯ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ã§ã™", +"When unchecked, this configuration will be skipped." => "ãƒã‚§ãƒƒã‚¯ã‚’外ã™ã¨ã€ã“ã®è¨å®šã¯ã‚¹ã‚ップã•れã¾ã™ã€‚", "Port" => "ãƒãƒ¼ãƒˆ", -"Base User Tree" => "ベースユーザツリー", -"One User Base DN per line" => "1行ã«1ã¤ã®ãƒ¦ãƒ¼ã‚¶ãƒ™ãƒ¼ã‚¹DN", -"Base Group Tree" => "ベースグループツリー", -"One Group Base DN per line" => "1行ã«1ã¤ã®ã‚°ãƒ«ãƒ¼ãƒ—ベースDN", -"Group-Member association" => "グループã¨ãƒ¡ãƒ³ãƒãƒ¼ã®é–¢é€£ä»˜ã‘", +"Backup (Replica) Host" => "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—(レプリカ)ホスト", +"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ãƒ›ã‚¹ãƒˆã‚’ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã§æŒ‡å®šã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚メインã®LDAP/ADサーãƒã®ãƒ¬ãƒ—リカã§ã‚ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚", +"Backup (Replica) Port" => "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—(レプリカ)ãƒãƒ¼ãƒˆ", +"Disable Main Server" => "メインサーãƒã‚’無効ã«ã™ã‚‹", +"When switched on, ownCloud will only connect to the replica server." => "有効ã«ã™ã‚‹ã¨ã€ownCloudã¯ãƒ¬ãƒ—リカサーãƒã«ã®ã¿æŽ¥ç¶šã—ã¾ã™ã€‚", "Use TLS" => "TLSを利用", "Do not use it for SSL connections, it will fail." => "SSL接続ã«åˆ©ç”¨ã—ãªã„ã§ãã ã•ã„ã€å¤±æ•—ã—ã¾ã™ã€‚", "Case insensitve LDAP server (Windows)" => "大文å—ï¼å°æ–‡å—を区別ã—ãªã„LDAPサーãƒï¼ˆWindows)", "Turn off SSL certificate validation." => "SSL証明書ã®ç¢ºèªã‚’無効ã«ã™ã‚‹ã€‚", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "接続ãŒã“ã®ã‚ªãƒ—ションã§ã®ã¿å‹•作ã™ã‚‹å ´åˆã¯ã€LDAPサーãƒã®SSL証明書をownCloudサーãƒã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã—ã¦ãã ã•ã„。", "Not recommended, use for testing only." => "推奨ã—ã¾ã›ã‚“ã€ãƒ†ã‚¹ãƒˆç›®çš„ã§ã®ã¿åˆ©ç”¨ã—ã¦ãã ã•ã„。", +"in seconds. A change empties the cache." => "秒。変更後ã«ã‚ャッシュãŒã‚¯ãƒªã‚¢ã•れã¾ã™ã€‚", +"Directory Settings" => "ディレクトリè¨å®š", "User Display Name Field" => "ユーザ表示åã®ãƒ•ィールド", "The LDAP attribute to use to generate the user`s ownCloud name." => "ユーザã®ownCloudåã®ç”Ÿæˆã«åˆ©ç”¨ã™ã‚‹LDAP属性。", +"Base User Tree" => "ベースユーザツリー", +"One User Base DN per line" => "1行ã«1ã¤ã®ãƒ¦ãƒ¼ã‚¶ãƒ™ãƒ¼ã‚¹DN", +"User Search Attributes" => "ユーザ検索属性", +"Optional; one attribute per line" => "オプション:1行ã«1属性", "Group Display Name Field" => "グループ表示åã®ãƒ•ィールド", "The LDAP attribute to use to generate the groups`s ownCloud name." => "グループã®ownCloudåã®ç”Ÿæˆã«åˆ©ç”¨ã™ã‚‹LDAP属性。", +"Base Group Tree" => "ベースグループツリー", +"One Group Base DN per line" => "1行ã«1ã¤ã®ã‚°ãƒ«ãƒ¼ãƒ—ベースDN", +"Group Search Attributes" => "グループ検索属性", +"Group-Member association" => "グループã¨ãƒ¡ãƒ³ãƒãƒ¼ã®é–¢é€£ä»˜ã‘", +"Special Attributes" => "特殊属性", "in bytes" => "ãƒã‚¤ãƒˆ", -"in seconds. A change empties the cache." => "秒。変更後ã«ã‚ャッシュãŒã‚¯ãƒªã‚¢ã•れã¾ã™ã€‚", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "ユーザåを空ã®ã¾ã¾ã«ã—ã¦ãã ã•ã„(デフォルト)。ãã†ã§ãªã„å ´åˆã¯ã€LDAPã‚‚ã—ãã¯ADã®å±žæ€§ã‚’指定ã—ã¦ãã ã•ã„。", "Help" => "ヘルプ" ); diff --git a/apps/user_ldap/l10n/ka_GE.php b/apps/user_ldap/l10n/ka_GE.php index 630d92b73ad..b31767fe935 100644 --- a/apps/user_ldap/l10n/ka_GE.php +++ b/apps/user_ldap/l10n/ka_GE.php @@ -1,3 +1,4 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "წáƒáƒ¨áƒšáƒ˜áƒ¡ ველი", "Help" => "დáƒáƒ®áƒ›áƒáƒ ებáƒ" ); diff --git a/apps/user_ldap/l10n/ko.php b/apps/user_ldap/l10n/ko.php index c0d09b5c3c1..9ff8ff99d08 100644 --- a/apps/user_ldap/l10n/ko.php +++ b/apps/user_ldap/l10n/ko.php @@ -1,8 +1,11 @@ <?php $TRANSLATIONS = array( -"<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>ê²½ê³ </b>user_ldap 앱과 user_webdavauth ì•±ì€ í˜¸í™˜ë˜ì§€ 않습니다. 오ë™ìž‘ì„ ì¼ìœ¼í‚¬ 수 있으므로, 시스템 관리ìžì—게 ìš”ì²í•˜ì—¬, 둘 중 하나를 비활성화 하시기 ë°”ëžë‹ˆë‹¤.", +"Deletion failed" => "ì‚ì œ 실패", +"<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>ê²½ê³ :</b> user_ldap 앱과 user_webdavauth ì•±ì€ í˜¸í™˜ë˜ì§€ 않습니다. 오ë™ìž‘ì„ ì¼ìœ¼í‚¬ 수 있으므로, 시스템 관리ìžì—게 ìš”ì²í•˜ì—¬ 둘 중 하나만 사용하ë„ë¡ í•˜ì‹ì‹œì˜¤.", +"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>ê²½ê³ :</b> PHP LDAP ëª¨ë“ˆì´ ë¹„í™œì„±í™”ë˜ì–´ 있거나 설치ë˜ì–´ 있지 않습니다. 백엔드를 ì‚¬ìš©í• ìˆ˜ 없습니다. 시스템 관리ìžì—게 설치를 ìš”ì²í•˜ì‹ì‹œì˜¤.", "Host" => "호스트", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "SSLì„ ì‚¬ìš©í•˜ëŠ” 경우가 아니ë¼ë©´ í”„ë¡œí† ì½œì„ ìž…ë ¥í•˜ì§€ ì•Šì•„ë„ ë©ë‹ˆë‹¤. SSLì„ ì‚¬ìš©í•˜ë ¤ë©´ ldaps://를 ìž…ë ¥í•˜ì‹ì‹œì˜¤.", "Base DN" => "기본 DN", +"One Base DN per line" => "기본 DNì„ í•œ ì¤„ì— í•˜ë‚˜ì”© ìž…ë ¥í•˜ì‹ì‹œì˜¤", "You can specify Base DN for users and groups in the Advanced tab" => "ê³ ê¸‰ íƒì—서 ì‚¬ìš©ìž ë° ê·¸ë£¹ì— ëŒ€í•œ 기본 DNì„ ì§€ì •í• ìˆ˜ 있습니다.", "User DN" => "ì‚¬ìš©ìž DN", "The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." => "ë°”ì¸ë”© ìž‘ì—…ì„ ìˆ˜í–‰í• í´ë¼ì´ì–¸íЏ ì‚¬ìš©ìž DN입니다. 예를 들어서 uid=agent,dc=example,dc=com입니다. ìµëª… ì ‘ê·¼ì„ í—ˆìš©í•˜ë ¤ë©´ DNê³¼ 암호를 비워 ë‘ì‹ì‹œì˜¤.", @@ -18,21 +21,23 @@ "Defines the filter to apply, when retrieving groups." => "ê·¸ë£¹ì„ ê²€ìƒ‰í• ë•Œ ì ìš©í• í•„í„°ë¥¼ ì •ì˜í•©ë‹ˆë‹¤.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "ìžë¦¬ 비움ìžë¥¼ ì‚¬ìš©í• ìˆ˜ 없습니다. ì˜ˆì œ: \"objectClass=posixGroup\"", "Port" => "í¬íЏ", -"Base User Tree" => "기본 ì‚¬ìš©ìž íŠ¸ë¦¬", -"Base Group Tree" => "기본 그룹 트리", -"Group-Member association" => "그룹-íšŒì› ì—°ê²°", "Use TLS" => "TLS 사용", "Do not use it for SSL connections, it will fail." => "SSL ì—°ê²° 시 사용하는 경우 ì—°ê²°ë˜ì§€ 않습니다.", "Case insensitve LDAP server (Windows)" => "서버ì—서 대소문ìžë¥¼ 구분하지 ì•ŠìŒ (Windows)", "Turn off SSL certificate validation." => "SSL ì¸ì¦ì„œ ìœ íš¨ì„± 검사를 í•´ì œí•©ë‹ˆë‹¤.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "ì´ ì˜µì…˜ì„ ì‚¬ìš©í•´ì•¼ ì—°ê²°í• ìˆ˜ 있는 경우ì—는 LDAP ì„œë²„ì˜ SSL ì¸ì¦ì„œë¥¼ ownCloud로 ê°€ì ¸ì˜¬ 수 있습니다.", "Not recommended, use for testing only." => "추천하지 않ìŒ, 테스트로만 사용하ì‹ì‹œì˜¤.", +"in seconds. A change empties the cache." => "ì´ˆ. í•목 변경 시 ìºì‹œê°€ ê°±ì‹ ë©ë‹ˆë‹¤.", "User Display Name Field" => "사용ìžì˜ 표시 ì´ë¦„ 필드", "The LDAP attribute to use to generate the user`s ownCloud name." => "LDAP ì†ì„±ì€ 사용ìžì˜ ownCloud ì´ë¦„ì„ ìƒì„±í•˜ê¸° 위해 사용합니다.", +"Base User Tree" => "기본 ì‚¬ìš©ìž íŠ¸ë¦¬", +"One User Base DN per line" => "ì‚¬ìš©ìž DNì„ í•œ ì¤„ì— í•˜ë‚˜ì”© ìž…ë ¥í•˜ì‹ì‹œì˜¤", "Group Display Name Field" => "ê·¸ë£¹ì˜ í‘œì‹œ ì´ë¦„ 필드", "The LDAP attribute to use to generate the groups`s ownCloud name." => "LDAP ì†ì„±ì€ ê·¸ë£¹ì˜ ownCloud ì´ë¦„ì„ ìƒì„±í•˜ê¸° 위해 사용합니다.", +"Base Group Tree" => "기본 그룹 트리", +"One Group Base DN per line" => "그룹 기본 DNì„ í•œ ì¤„ì— í•˜ë‚˜ì”© ìž…ë ¥í•˜ì‹ì‹œì˜¤", +"Group-Member association" => "그룹-íšŒì› ì—°ê²°", "in bytes" => "ë°”ì´íЏ", -"in seconds. A change empties the cache." => "ì´ˆ. í•목 변경 시 ìºì‹œê°€ ê°±ì‹ ë©ë‹ˆë‹¤.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "ì‚¬ìš©ìž ì´ë¦„ì„ ì‚¬ìš©í•˜ë ¤ë©´ 비워 ë‘ì‹ì‹œì˜¤(기본값). 기타 경우 LDAP/AD ì†ì„±ì„ ì§€ì •í•˜ì‹ì‹œì˜¤.", "Help" => "ë„움ë§" ); diff --git a/apps/user_ldap/l10n/lb.php b/apps/user_ldap/l10n/lb.php index 6d70f682ddb..39ed627ce2c 100644 --- a/apps/user_ldap/l10n/lb.php +++ b/apps/user_ldap/l10n/lb.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Konnt net läschen", "Password" => "Passwuert", "Help" => "Hëllef" ); diff --git a/apps/user_ldap/l10n/lt_LT.php b/apps/user_ldap/l10n/lt_LT.php index 809ed571bd0..aa21dd2d3c1 100644 --- a/apps/user_ldap/l10n/lt_LT.php +++ b/apps/user_ldap/l10n/lt_LT.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "IÅ¡trinti nepavyko", "Password" => "Slaptažodis", "Group Filter" => "GrupÄ—s filtras", "Port" => "Prievadas", diff --git a/apps/user_ldap/l10n/lv.php b/apps/user_ldap/l10n/lv.php index 52353472e4d..48cee737c74 100644 --- a/apps/user_ldap/l10n/lv.php +++ b/apps/user_ldap/l10n/lv.php @@ -1,3 +1,69 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "NeizdevÄs izdzÄ“st servera konfigurÄciju", +"The configuration is valid and the connection could be established!" => "KonfigurÄcija ir derÄ«ga un varÄ“ja izveidot savienojumu!", +"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "KonfigurÄcija ir derÄ«ga, bet sasaiste neizdevÄs. LÅ«dzu, pÄrbaudiet servera iestatÄ«jumus un akreditÄcijas datus.", +"The configuration is invalid. Please look in the ownCloud log for further details." => "KonfigurÄcija ir nederÄ«ga. LÅ«dzu, apskatiet ownCloud žurnÄlu, lai uzzinÄtu vairÄk.", +"Deletion failed" => "NeizdevÄs izdzÄ“st", +"Take over settings from recent server configuration?" => "Paņemt iestatÄ«jumus no nesenas servera konfigurÄcijas?", +"Keep settings?" => "PaturÄ“t iestatÄ«jumus?", +"Cannot add server configuration" => "Nevar pievienot servera konfigurÄciju", +"Connection test succeeded" => "Savienojuma tests ir veiksmÄ«gs", +"Connection test failed" => "Savienojuma tests cieta neveiksmi", +"Do you really want to delete the current Server Configuration?" => "Vai tieÅ¡Äm vÄ“laties dzÄ“st paÅ¡reizÄ“jo servera konfigurÄciju?", +"Confirm Deletion" => "ApstiprinÄt dzēšanu", +"<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>BrÄ«dinÄjums:</b> lietotnes user_ldap un user_webdavauth ir nesavietojamas. TÄs var izraisÄ«t negaidÄ«tu uzvedÄ«bu. LÅ«dzu, prasiet savam sistÄ“mas administratoram kÄdu no tÄm deaktivÄ“t.", +"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>BrÄ«dinÄjums:</b> PHP LDAP modulis nav uzinstalÄ“ts, aizmugure nedarbosies. LÅ«dzu, prasiet savam sistÄ“mas administratoram kÄdu no tÄm deaktivÄ“t.", +"Server configuration" => "Servera konfigurÄcija", +"Add Server Configuration" => "Pievienot servera konfigurÄciju", +"Host" => "Resursdators", +"You can omit the protocol, except you require SSL. Then start with ldaps://" => "Var neiekļaut protokolu, izņemot, ja vajag SSL. Tad sÄkums ir ldaps://", +"Base DN" => "BÄzes DN", +"One Base DN per line" => "Viena bÄzes DN rindÄ", +"You can specify Base DN for users and groups in the Advanced tab" => "LietotÄjiem un grupÄm bÄzes DN var norÄdÄ«t cilnÄ“ “PaplaÅ¡inÄtiâ€", +"User DN" => "LietotÄja DN", +"The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." => "Klienta lietotÄja DN, ar ko veiks sasaisti, piemÄ“ram, uid=agent,dc=example,dc=com. Lai piekļūtu anonÄ«mi, atstÄjiet DN un paroli tukÅ¡u.", +"Password" => "Parole", +"For anonymous access, leave DN and Password empty." => "Lai piekļūtu anonÄ«mi, atstÄjiet DN un paroli tukÅ¡u.", +"User Login Filter" => "LietotÄja ierakstīšanÄs filtrs", +"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action." => "DefinÄ“ filtru, ko izmantot, kad mēģina ierakstÄ«ties. %%uid ierakstīšanÄs darbÄ«bÄ aizstÄj lietotÄjvÄrdu.", +"use %%uid placeholder, e.g. \"uid=%%uid\"" => "lieto %%uid vietturi, piemÄ“ram, \"uid=%%uid\"", +"User List Filter" => "LietotÄju saraksta filtrs", +"Defines the filter to apply, when retrieving users." => "DefinÄ“ filtru, ko izmantot, kad saņem lietotÄju sarakstu.", +"without any placeholder, e.g. \"objectClass=person\"." => "bez jebkÄdiem vietturiem, piemÄ“ram, \"objectClass=person\".", +"Group Filter" => "Grupu filtrs", +"Defines the filter to apply, when retrieving groups." => "DefinÄ“ filtru, ko izmantot, kad saņem grupu sarakstu.", +"without any placeholder, e.g. \"objectClass=posixGroup\"." => "bez jebkÄdiem vietturiem, piemÄ“ram, \"objectClass=posixGroup\".", +"Connection Settings" => "Savienojuma iestatÄ«jumi", +"Configuration Active" => "KonfigurÄcija ir aktÄ«va", +"When unchecked, this configuration will be skipped." => "Ja nav atzÄ«mÄ“ts, šī konfigurÄcija tiks izlaista.", +"Port" => "Ports", +"Backup (Replica) Host" => "Rezerves (kopija) serveris", +"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "NorÄdi rezerves serveri (nav obligÄti). Tam ir jÄbÅ«t galvenÄ LDAP/AD servera kopijai.", +"Backup (Replica) Port" => "Rezerves (kopijas) ports", +"Disable Main Server" => "DeaktivÄ“t galveno serveri", +"When switched on, ownCloud will only connect to the replica server." => "Kad ieslÄ“gts, ownCloud savienosies tikai ar kopijas serveri.", +"Use TLS" => "Lietot TLS", +"Do not use it for SSL connections, it will fail." => "Neizmanto to SSL savienojumiem, tas neizdosies.", +"Case insensitve LDAP server (Windows)" => "ReÄ£istrnejutÄ«gs LDAP serveris (Windows)", +"Turn off SSL certificate validation." => "IzslÄ“gt SSL sertifikÄtu validēšanu.", +"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Ja savienojums darbojas ar Å¡o opciju, importÄ“ LDAP serveru SSL sertifikÄtu savÄ ownCloud serverÄ«.", +"Not recommended, use for testing only." => "Nav ieteicams, izmanto tikai testēšanai!", +"in seconds. A change empties the cache." => "sekundÄ“s. Izmaiņas iztukÅ¡os keÅ¡atmiņu.", +"Directory Settings" => "Direktorijas iestatÄ«jumi", +"User Display Name Field" => "LietotÄja redzamÄ vÄrda lauks", +"The LDAP attribute to use to generate the user`s ownCloud name." => "LDAP atribÅ«ts, ko izmantot lietotÄja ownCloud vÄrda veidoÅ¡anai.", +"Base User Tree" => "BÄzes lietotÄju koks", +"One User Base DN per line" => "Viena lietotÄju bÄzes DN rindÄ", +"User Search Attributes" => "LietotÄju meklēšanas atribÅ«ts", +"Optional; one attribute per line" => "NeobligÄti; viens atribÅ«ts rindÄ", +"Group Display Name Field" => "Grupas redzamÄ nosaukuma lauks", +"The LDAP attribute to use to generate the groups`s ownCloud name." => "LDAP atribÅ«ts, ko izmantot grupas ownCloud nosaukuma veidoÅ¡anai.", +"Base Group Tree" => "BÄzes grupu koks", +"One Group Base DN per line" => "Viena grupu bÄzes DN rindÄ", +"Group Search Attributes" => "Grupu meklēšanas atribÅ«ts", +"Group-Member association" => "Grupu piederÄ«bas asociÄcija", +"Special Attributes" => "ĪpaÅ¡ie atribÅ«ti", +"in bytes" => "baitos", +"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "AtstÄt tukÅ¡u lietotÄja vÄrdam (noklusÄ“juma). CitÄdi, norÄdi LDAP/AD atribÅ«tu.", "Help" => "PalÄ«dzÄ«ba" ); diff --git a/apps/user_ldap/l10n/mk.php b/apps/user_ldap/l10n/mk.php index 4c231b516d4..7d34ff49492 100644 --- a/apps/user_ldap/l10n/mk.php +++ b/apps/user_ldap/l10n/mk.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Бришењето е неуÑпешно", "Host" => "Домаќин", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Може да го Ñкокнете протколот оÑвен ако не ви треба SSL. Тогаш Ñтавете ldaps://", "Password" => "Лозинка", diff --git a/apps/user_ldap/l10n/ms_MY.php b/apps/user_ldap/l10n/ms_MY.php index 077a5390cf8..17a6cbe2cb6 100644 --- a/apps/user_ldap/l10n/ms_MY.php +++ b/apps/user_ldap/l10n/ms_MY.php @@ -1,3 +1,4 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Pemadaman gagal", "Help" => "Bantuan" ); diff --git a/apps/user_ldap/l10n/nb_NO.php b/apps/user_ldap/l10n/nb_NO.php index a5f4657d045..295166b0a50 100644 --- a/apps/user_ldap/l10n/nb_NO.php +++ b/apps/user_ldap/l10n/nb_NO.php @@ -1,11 +1,12 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Sletting feilet", "Password" => "Passord", "Group Filter" => "Gruppefilter", "Port" => "Port", "Use TLS" => "Bruk TLS", "Do not use it for SSL connections, it will fail." => "Ikke bruk for SSL tilkoblinger, dette vil ikke fungere.", "Not recommended, use for testing only." => "Ikke anbefalt, bruk kun for testing", -"in bytes" => "i bytes", "in seconds. A change empties the cache." => "i sekunder. En endring tømmer bufferen.", +"in bytes" => "i bytes", "Help" => "Hjelp" ); diff --git a/apps/user_ldap/l10n/nl.php b/apps/user_ldap/l10n/nl.php index 27c4407360e..cc5e85fc30b 100644 --- a/apps/user_ldap/l10n/nl.php +++ b/apps/user_ldap/l10n/nl.php @@ -1,6 +1,19 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "Verwijderen serverconfiguratie mislukt", +"The configuration is valid and the connection could be established!" => "De configuratie is geldig en de verbinding is geslaagd!", +"The configuration is invalid. Please look in the ownCloud log for further details." => "De configuratie is ongeldig. Controleer de ownCloud log voor meer details.", +"Deletion failed" => "Verwijderen mislukt", +"Take over settings from recent server configuration?" => "Overnemen instellingen van de recente serverconfiguratie?", +"Keep settings?" => "Instellingen bewaren?", +"Cannot add server configuration" => "Kon de serverconfiguratie niet toevoegen", +"Connection test succeeded" => "Verbindingstest geslaagd", +"Connection test failed" => "Verbindingstest mislukt", +"Do you really want to delete the current Server Configuration?" => "Wilt u werkelijk de huidige Serverconfiguratie verwijderen?", +"Confirm Deletion" => "Bevestig verwijderen", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Waarschuwing:</b> De Apps user_ldap en user_webdavauth zijn incompatible. U kunt onverwacht gedrag ervaren. Vraag uw beheerder om een van beide apps de deactiveren.", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Waarschuwing:</b> De PHP LDAP module is niet geïnstalleerd, het backend zal niet werken. Vraag uw systeembeheerder om de module te installeren.", +"Server configuration" => "Serverconfiguratie", +"Add Server Configuration" => "Toevoegen serverconfiguratie", "Host" => "Host", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Je kunt het protocol weglaten, tenzij je SSL vereist. Start in dat geval met ldaps://", "Base DN" => "Base DN", @@ -19,24 +32,30 @@ "Group Filter" => "Groep Filter", "Defines the filter to apply, when retrieving groups." => "Definiëerd de toe te passen filter voor het ophalen van groepen.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "zonder een placeholder, bijv. \"objectClass=posixGroup\"", +"Configuration Active" => "Configuratie actief", "Port" => "Poort", -"Base User Tree" => "Basis Gebruikers Structuur", -"One User Base DN per line" => "Een User Base DN per regel", -"Base Group Tree" => "Basis Groupen Structuur", -"One Group Base DN per line" => "Een Group Base DN per regel", -"Group-Member association" => "Groepslid associatie", +"Backup (Replica) Host" => "Backup (Replica) Host", +"Backup (Replica) Port" => "Backup (Replica) Poort", +"Disable Main Server" => "Deactiveren hoofdserver", +"When switched on, ownCloud will only connect to the replica server." => "Wanneer ingeschakeld, zal ownCloud allen verbinden met de replicaserver.", "Use TLS" => "Gebruik TLS", "Do not use it for SSL connections, it will fail." => "Gebruik niet voor SSL connecties, deze mislukken.", "Case insensitve LDAP server (Windows)" => "Niet-hoofdlettergevoelige LDAP server (Windows)", "Turn off SSL certificate validation." => "Schakel SSL certificaat validatie uit.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Als de connectie alleen werkt met deze optie, importeer dan het LDAP server SSL certificaat naar je ownCloud server.", "Not recommended, use for testing only." => "Niet aangeraden, gebruik alleen voor test doeleinden.", +"in seconds. A change empties the cache." => "in seconden. Een verandering maakt de cache leeg.", "User Display Name Field" => "Gebruikers Schermnaam Veld", "The LDAP attribute to use to generate the user`s ownCloud name." => "Het te gebruiken LDAP attribuut voor het genereren van de ownCloud naam voor de gebruikers.", +"Base User Tree" => "Basis Gebruikers Structuur", +"One User Base DN per line" => "Een User Base DN per regel", +"Optional; one attribute per line" => "Optioneel; één attribuut per regel", "Group Display Name Field" => "Groep Schermnaam Veld", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Het te gebruiken LDAP attribuut voor het genereren van de ownCloud naam voor de groepen.", +"Base Group Tree" => "Basis Groupen Structuur", +"One Group Base DN per line" => "Een Group Base DN per regel", +"Group-Member association" => "Groepslid associatie", "in bytes" => "in bytes", -"in seconds. A change empties the cache." => "in seconden. Een verandering maakt de cache leeg.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Laat leeg voor de gebruikersnaam (standaard). Of, specificeer een LDAP/AD attribuut.", "Help" => "Help" ); diff --git a/apps/user_ldap/l10n/oc.php b/apps/user_ldap/l10n/oc.php index 0bf27d74f2f..a128638172a 100644 --- a/apps/user_ldap/l10n/oc.php +++ b/apps/user_ldap/l10n/oc.php @@ -1,3 +1,4 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Fracà s d'escafatge", "Help" => "Ajuda" ); diff --git a/apps/user_ldap/l10n/pl.php b/apps/user_ldap/l10n/pl.php index 55110b8a830..83a8d1615ae 100644 --- a/apps/user_ldap/l10n/pl.php +++ b/apps/user_ldap/l10n/pl.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Skasowanie nie powiodÅ‚o siÄ™", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Ostrzeżenie:</b> Aplikacje user_ldap i user_webdavauth nie sÄ… kompatybilne. MogÄ… powodować nieoczekiwane zachowanie. PoproÅ› administratora o wyłączenie jednej z nich.", "Host" => "Host", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Można pominąć protokół, z wyjÄ…tkiem wymaganego protokoÅ‚u SSL. NastÄ™pnie uruchom z ldaps://", @@ -18,21 +19,21 @@ "Defines the filter to apply, when retrieving groups." => "Definiuje filtry do zastosowania, podczas pobierania grup.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "bez żadnych symboli zastÄ™pczych np. \"objectClass=posixGroup\".", "Port" => "Port", -"Base User Tree" => "Drzewo bazy użytkowników", -"Base Group Tree" => "Drzewo bazy grup", -"Group-Member association" => "CzÅ‚onek grupy stowarzyszenia", "Use TLS" => "Użyj TLS", "Do not use it for SSL connections, it will fail." => "Nie używaj SSL dla połączeÅ„, jeÅ›li siÄ™ nie powiedzie.", "Case insensitve LDAP server (Windows)" => "Wielkość liter serwera LDAP (Windows)", "Turn off SSL certificate validation." => "Wyłączyć sprawdzanie poprawnoÅ›ci certyfikatu SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "JeÅ›li połączenie dziaÅ‚a tylko z tÄ… opcjÄ…, zaimportuj certyfikat SSL serwera LDAP w serwerze ownCloud.", "Not recommended, use for testing only." => "Niezalecane, użyj tylko testowo.", +"in seconds. A change empties the cache." => "w sekundach. Zmiana opróżnia pamięć podrÄ™cznÄ….", "User Display Name Field" => "Pole wyÅ›wietlanej nazwy użytkownika", "The LDAP attribute to use to generate the user`s ownCloud name." => "Atrybut LDAP sÅ‚uży do generowania nazwy użytkownika ownCloud.", +"Base User Tree" => "Drzewo bazy użytkowników", "Group Display Name Field" => "Pole wyÅ›wietlanej nazwy grupy", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Atrybut LDAP sÅ‚uży do generowania nazwy grup ownCloud.", +"Base Group Tree" => "Drzewo bazy grup", +"Group-Member association" => "CzÅ‚onek grupy stowarzyszenia", "in bytes" => "w bajtach", -"in seconds. A change empties the cache." => "w sekundach. Zmiana opróżnia pamięć podrÄ™cznÄ….", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Pozostaw puste dla user name (domyÅ›lnie). W przeciwnym razie podaj atrybut LDAP/AD.", "Help" => "Pomoc" ); diff --git a/apps/user_ldap/l10n/pt_BR.php b/apps/user_ldap/l10n/pt_BR.php index 18eed6d0142..79e56eeb652 100644 --- a/apps/user_ldap/l10n/pt_BR.php +++ b/apps/user_ldap/l10n/pt_BR.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Remoção falhou", "Host" => "Host", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Você pode omitir o protocolo, exceto quando requerer SSL. Então inicie com ldaps://", "Base DN" => "DN Base", @@ -17,21 +18,21 @@ "Defines the filter to apply, when retrieving groups." => "Define o filtro a aplicar ao obter grupos.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "sem nenhum espaço reservado, ex. \"objectClass=posixGroup\"", "Port" => "Porta", -"Base User Tree" => "Ãrvore de Usuário Base", -"Base Group Tree" => "Ãrvore de Grupo Base", -"Group-Member association" => "Associação Grupo-Membro", "Use TLS" => "Usar TLS", "Do not use it for SSL connections, it will fail." => "Não use-o para conexões SSL, pois falhará.", "Case insensitve LDAP server (Windows)" => "Servidor LDAP sensÃvel à caixa alta (Windows)", "Turn off SSL certificate validation." => "Desligar validação de certificado SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Se a conexão só funciona com essa opção, importe o certificado SSL do servidor LDAP no seu servidor ownCloud.", "Not recommended, use for testing only." => "Não recomendado, use somente para testes.", +"in seconds. A change empties the cache." => "em segundos. Uma mudança esvaziará o cache.", "User Display Name Field" => "Campo Nome de Exibição de Usuário", "The LDAP attribute to use to generate the user`s ownCloud name." => "O atributo LDAP para usar para gerar nome ownCloud do usuário.", +"Base User Tree" => "Ãrvore de Usuário Base", "Group Display Name Field" => "Campo Nome de Exibição de Grupo", "The LDAP attribute to use to generate the groups`s ownCloud name." => "O atributo LDAP para usar para gerar nome ownCloud do grupo.", +"Base Group Tree" => "Ãrvore de Grupo Base", +"Group-Member association" => "Associação Grupo-Membro", "in bytes" => "em bytes", -"in seconds. A change empties the cache." => "em segundos. Uma mudança esvaziará o cache.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Deixe vazio para nome de usuário (padrão). Caso contrário, especifique um atributo LDAP/AD.", "Help" => "Ajuda" ); diff --git a/apps/user_ldap/l10n/pt_PT.php b/apps/user_ldap/l10n/pt_PT.php index 9059f178769..21735b497c6 100644 --- a/apps/user_ldap/l10n/pt_PT.php +++ b/apps/user_ldap/l10n/pt_PT.php @@ -1,6 +1,20 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "Erro ao eliminar as configurações do servidor", +"The configuration is valid and the connection could be established!" => "A configuração está correcta e foi possÃvel estabelecer a ligação!", +"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "A configuração está correcta, mas não foi possÃvel estabelecer o \"laço\", por favor, verifique as configurações do servidor e as credenciais.", +"The configuration is invalid. Please look in the ownCloud log for further details." => "A configuração é inválida. Por favor, veja o log do ownCloud para mais detalhes.", +"Deletion failed" => "Erro ao apagar", +"Take over settings from recent server configuration?" => "Assumir as configurações da configuração do servidor mais recente?", +"Keep settings?" => "Manter as definições?", +"Cannot add server configuration" => "Não foi possÃvel adicionar as configurações do servidor.", +"Connection test succeeded" => "Teste de conecção passado com sucesso.", +"Connection test failed" => "Erro no teste de conecção.", +"Do you really want to delete the current Server Configuration?" => "Deseja realmente apagar as configurações de servidor actuais?", +"Confirm Deletion" => "Confirmar a operação de apagar", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Aviso:</b> A aplicação user_ldap e user_webdavauth são incompativeis. A aplicação pode tornar-se instável. Por favor, peça ao seu administrador para desactivar uma das aplicações.", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Aviso:</b> O módulo PHP LDAP não está instalado, logo não irá funcionar. Por favor peça ao administrador para o instalar.", +"Server configuration" => "Configurações do servidor", +"Add Server Configuration" => "Adicionar configurações do servidor", "Host" => "Anfitrião", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Pode omitir o protocolo, excepto se necessitar de SSL. Neste caso, comece com ldaps://", "Base DN" => "DN base", @@ -19,24 +33,34 @@ "Group Filter" => "Filtrar por grupo", "Defines the filter to apply, when retrieving groups." => "Defina o filtro a aplicar, ao recuperar grupos.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "Sem nenhuma variável. Exemplo: \"objectClass=posixGroup\".", +"Configuration Active" => "Configuração activa", +"When unchecked, this configuration will be skipped." => "Se não estiver marcada, esta definição não será tida em conta.", "Port" => "Porto", -"Base User Tree" => "Base da árvore de utilizadores.", -"One User Base DN per line" => "Uma base de utilizador DN por linha", -"Base Group Tree" => "Base da árvore de grupos.", -"One Group Base DN per line" => "Uma base de grupo DN por linha", -"Group-Member association" => "Associar utilizador ao grupo.", +"Backup (Replica) Host" => "Servidor de Backup (Réplica)", +"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Forneça um servidor (anfitrião) de backup. Deve ser uma réplica do servidor principal de LDAP/AD ", +"Backup (Replica) Port" => "Porta do servidor de backup (Replica)", +"Disable Main Server" => "Desactivar servidor principal", +"When switched on, ownCloud will only connect to the replica server." => "Se estiver ligado, o ownCloud vai somente ligar-se a este servidor de réplicas.", "Use TLS" => "Usar TLS", "Do not use it for SSL connections, it will fail." => "Não use para ligações SSL, irá falhar.", "Case insensitve LDAP server (Windows)" => "Servidor LDAP (Windows) não sensÃvel a maiúsculas.", "Turn off SSL certificate validation." => "Desligar a validação de certificado SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Se a ligação apenas funcionar com está opção, importe o certificado SSL do servidor LDAP para o seu servidor do ownCloud.", "Not recommended, use for testing only." => "Não recomendado, utilizado apenas para testes!", +"in seconds. A change empties the cache." => "em segundos. Uma alteração esvazia a cache.", "User Display Name Field" => "Mostrador do nome de utilizador.", "The LDAP attribute to use to generate the user`s ownCloud name." => "Atributo LDAP para gerar o nome de utilizador do ownCloud.", +"Base User Tree" => "Base da árvore de utilizadores.", +"One User Base DN per line" => "Uma base de utilizador DN por linha", +"User Search Attributes" => "Utilizar atributos de pesquisa", +"Optional; one attribute per line" => "Opcional; Um atributo por linha", "Group Display Name Field" => "Mostrador do nome do grupo.", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Atributo LDAP para gerar o nome do grupo do ownCloud.", +"Base Group Tree" => "Base da árvore de grupos.", +"One Group Base DN per line" => "Uma base de grupo DN por linha", +"Group Search Attributes" => "Atributos de pesquisa de grupo", +"Group-Member association" => "Associar utilizador ao grupo.", "in bytes" => "em bytes", -"in seconds. A change empties the cache." => "em segundos. Uma alteração esvazia a cache.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Deixe vazio para nome de utilizador (padrão). De outro modo, especifique um atributo LDAP/AD.", "Help" => "Ajuda" ); diff --git a/apps/user_ldap/l10n/ro.php b/apps/user_ldap/l10n/ro.php index d83c890b747..3e7e7500429 100644 --- a/apps/user_ldap/l10n/ro.php +++ b/apps/user_ldap/l10n/ro.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Ștergerea a eÈ™uat", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Atentie:</b> Apps user_ldap si user_webdavauth sunt incompatibile. Este posibil sa experimentati un comportament neasteptat. Vă rugăm să întrebaÈ›i administratorul de sistem pentru a dezactiva una dintre ele.", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>AtenÈ›ie</b> Modulul PHP LDAP nu este instalat, infrastructura nu va funcÈ›iona. Contactează administratorul sistemului pentru al instala.", "Host" => "Gazdă", @@ -20,23 +21,23 @@ "Defines the filter to apply, when retrieving groups." => "DefineÈ™te filtrele care se aplică, când se preiau grupurile.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "fără substituenÈ›i, d.e. \"objectClass=posixGroup\"", "Port" => "Portul", -"Base User Tree" => "Arborele de bază al Utilizatorilor", -"One User Base DN per line" => "Un User Base DN pe linie", -"Base Group Tree" => "Arborele de bază al Grupurilor", -"One Group Base DN per line" => "Un Group Base DN pe linie", -"Group-Member association" => "Asocierea Grup-Membru", "Use TLS" => "Utilizează TLS", "Do not use it for SSL connections, it will fail." => "A nu se utiliza pentru conexiuni SSL, va eÈ™ua.", "Case insensitve LDAP server (Windows)" => "Server LDAP insensibil la majuscule (Windows)", "Turn off SSL certificate validation." => "OpreÈ™te validarea certificatelor SSL ", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Dacă conexiunea lucrează doar cu această opÈ›iune, importează certificatul SSL al serverului LDAP în serverul ownCloud.", "Not recommended, use for testing only." => "Nu este recomandat, a se utiliza doar pentru testare.", +"in seconds. A change empties the cache." => "în secunde. O schimbare curăță memoria tampon.", "User Display Name Field" => "Câmpul cu numele vizibil al utilizatorului", "The LDAP attribute to use to generate the user`s ownCloud name." => "Atributul LDAP folosit pentru a genera numele de utilizator din ownCloud.", +"Base User Tree" => "Arborele de bază al Utilizatorilor", +"One User Base DN per line" => "Un User Base DN pe linie", "Group Display Name Field" => "Câmpul cu numele grupului", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Atributul LDAP folosit pentru a genera numele grupurilor din ownCloud", +"Base Group Tree" => "Arborele de bază al Grupurilor", +"One Group Base DN per line" => "Un Group Base DN pe linie", +"Group-Member association" => "Asocierea Grup-Membru", "in bytes" => "în octeÈ›i", -"in seconds. A change empties the cache." => "în secunde. O schimbare curăță memoria tampon.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "LăsaÈ›i gol pentru numele de utilizator (implicit). ÃŽn caz contrar, specificaÈ›i un atribut LDAP / AD.", "Help" => "Ajutor" ); diff --git a/apps/user_ldap/l10n/ru.php b/apps/user_ldap/l10n/ru.php index 42fba32f43f..45f6c171bf3 100644 --- a/apps/user_ldap/l10n/ru.php +++ b/apps/user_ldap/l10n/ru.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Удаление не удалоÑÑŒ", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Внимание:</b>ÐŸÑ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ user_ldap и user_webdavauth неÑовмеÑтимы. Ð’Ñ‹ можете ÑтолкнутьÑÑ Ñ Ð½ÐµÐ¾Ð¶Ð¸Ð´Ð°Ð½Ð½Ñ‹Ð¼ поведением. ПожалуйÑта, обратитеÑÑŒ к ÑиÑтемному админиÑтратору, чтобы отключить одно из них.", "Host" => "Сервер", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Можно опуÑтить протокол, за иÑключением того, когда вам требуетÑÑ SSL. Тогда начните Ñ ldaps :/ /", @@ -18,21 +19,21 @@ "Defines the filter to apply, when retrieving groups." => "ОпределÑет фильтр Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸ получении группы.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "без заполнениÑ, например \"objectClass=posixGroup\".", "Port" => "Порт", -"Base User Tree" => "База пользовательÑкого дерева", -"Base Group Tree" => "База группового дерева", -"Group-Member association" => "ÐÑÑÐ¾Ñ†Ð¸Ð°Ñ†Ð¸Ñ Ð“Ñ€ÑƒÐ¿Ð¿Ð°-УчаÑтник", "Use TLS" => "ИÑпользовать TLS", "Do not use it for SSL connections, it will fail." => "Ðе иÑпользуйте Ð´Ð»Ñ Ñоединений SSL", "Case insensitve LDAP server (Windows)" => "ÐечувÑтвительный к региÑтру Ñервер LDAP (Windows)", "Turn off SSL certificate validation." => "Отключить проверку Ñертификата SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "ЕÑли Ñоединение работает только Ñ Ñтой опцией, импортируйте на ваш Ñервер ownCloud Ñертификат SSL Ñервера LDAP.", "Not recommended, use for testing only." => "Ðе рекомендуетÑÑ, иÑпользуйте только Ð´Ð»Ñ Ñ‚ÐµÑтированиÑ.", +"in seconds. A change empties the cache." => "в Ñекундах. Изменение очиÑтит кÑш.", "User Display Name Field" => "Поле отображаемого имени пользователÑ", "The LDAP attribute to use to generate the user`s ownCloud name." => "Ðтрибут LDAP Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ð¸ имени Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ ownCloud.", +"Base User Tree" => "База пользовательÑкого дерева", "Group Display Name Field" => "Поле отображаемого имени группы", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Ðтрибут LDAP Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ð¸ имени группы ownCloud.", +"Base Group Tree" => "База группового дерева", +"Group-Member association" => "ÐÑÑÐ¾Ñ†Ð¸Ð°Ñ†Ð¸Ñ Ð“Ñ€ÑƒÐ¿Ð¿Ð°-УчаÑтник", "in bytes" => "в байтах", -"in seconds. A change empties the cache." => "в Ñекундах. Изменение очиÑтит кÑш.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "ОÑтавьте Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¿ÑƒÑтым (по умолчанию). Иначе укажите атрибут LDAP/AD.", "Help" => "Помощь" ); diff --git a/apps/user_ldap/l10n/ru_RU.php b/apps/user_ldap/l10n/ru_RU.php index 03d83b80a43..f62d2cd4eaf 100644 --- a/apps/user_ldap/l10n/ru_RU.php +++ b/apps/user_ldap/l10n/ru_RU.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Удаление не удалоÑÑŒ", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Предупреждение:</b> ÐŸÑ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ user_ldap и user_webdavauth неÑовмеÑтимы. Ð’Ñ‹ можете ÑтолкнутьÑÑ Ñ Ð½ÐµÐ¾Ð¶Ð¸Ð´Ð°Ð½Ð½Ñ‹Ð¼ поведением ÑиÑтемы. ПожалуйÑта, обратитеÑÑŒ к ÑиÑтемному админиÑтратору Ð´Ð»Ñ Ð¾Ñ‚ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð¾Ð´Ð½Ð¾Ð³Ð¾ из них.", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Предупреждение:</b> Модуль PHP LDAP не уÑтановлен, бÑкÑнд не будет работать. ПожалуйÑта, обратитеÑÑŒ к Вашему ÑиÑтемному админиÑтратору, чтобы уÑтановить его.", "Host" => "ХоÑÑ‚", @@ -20,23 +21,23 @@ "Defines the filter to apply, when retrieving groups." => "Задает фильтр, применÑемый при получении групп.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "без каких-либо заполнителей, например, \"objectClass=posixGroup\".", "Port" => "Порт", -"Base User Tree" => "Базовое дерево пользователей", -"One User Base DN per line" => "Одно пользовательÑкое базовое DN на линию", -"Base Group Tree" => "Базовое дерево групп", -"One Group Base DN per line" => "Одно групповое базовое DN на линию", -"Group-Member association" => "СвÑзь член-группа", "Use TLS" => "ИÑпользовать TLS", "Do not use it for SSL connections, it will fail." => "Ðе иÑпользуйте Ñто SSL-Ñоединений, Ñто не будет выполнено.", "Case insensitve LDAP server (Windows)" => "ÐечувÑтвительный к региÑтру LDAP-Ñервер (Windows)", "Turn off SSL certificate validation." => "Выключить проверку Ñертификата SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "ЕÑли Ñоединение работает только Ñ Ñтой опцией, импортируйте SSL-Ñертификат LDAP Ñервера в ваш ownCloud Ñервер.", "Not recommended, use for testing only." => "Ðе рекомендовано, иÑпользуйте только Ð´Ð»Ñ Ñ‚ÐµÑтированиÑ.", +"in seconds. A change empties the cache." => "в Ñекундах. Изменение очищает кÑш.", "User Display Name Field" => "Поле, отображаемое как Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ", "The LDAP attribute to use to generate the user`s ownCloud name." => "Ðтрибут LDAP, иÑпользуемый Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸Ð¼ÐµÐ½Ð¸ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² ownCloud.", +"Base User Tree" => "Базовое дерево пользователей", +"One User Base DN per line" => "Одно пользовательÑкое базовое DN на линию", "Group Display Name Field" => "Поле, отображаемое как Ð¸Ð¼Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ñ‹", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Ðтрибут LDAP, иÑпользуемый Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ð¾Ð²Ð¾Ð³Ð¾ имени в ownCloud.", +"Base Group Tree" => "Базовое дерево групп", +"One Group Base DN per line" => "Одно групповое базовое DN на линию", +"Group-Member association" => "СвÑзь член-группа", "in bytes" => "в байтах", -"in seconds. A change empties the cache." => "в Ñекундах. Изменение очищает кÑш.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "ОÑтавьте пуÑтым под Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ (по умолчанию). Ð’ противном Ñлучае задайте LDAP/AD атрибут.", "Help" => "Помощь" ); diff --git a/apps/user_ldap/l10n/si_LK.php b/apps/user_ldap/l10n/si_LK.php index fc8099e25e5..50124e4d54f 100644 --- a/apps/user_ldap/l10n/si_LK.php +++ b/apps/user_ldap/l10n/si_LK.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "මකà·à¶¯à·à¶¸à·“ම à¶…à·ƒà·à¶»à·Šà¶®à¶šà¶ºà·’", "Host" => "à·ƒà¶à·Šà¶šà·à¶»à¶šà¶º", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "SSL à¶…à·€à·à·Šâ€à¶ºà¶º වන විට පමණක් à·„à·à¶», අන් අවස්ථà·à·€à¶±à·Šà·„ිදී à¶´à·Šâ€à¶»à·œà¶§à·œà¶šà·à¶½à¶º à¶…à¶à·Š à·„à·à¶»à·’ය à·„à·à¶š. à¶·à·à·€à·’à¶à· කරන විට ldaps:// ලෙස ආරම්භ කරන්න", "Password" => "මුර පදය", diff --git a/apps/user_ldap/l10n/sk_SK.php b/apps/user_ldap/l10n/sk_SK.php index 2b340c8573d..77cb039c7ed 100644 --- a/apps/user_ldap/l10n/sk_SK.php +++ b/apps/user_ldap/l10n/sk_SK.php @@ -1,7 +1,24 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "Zlyhalo zmazanie nastavenia servera.", +"The configuration is valid and the connection could be established!" => "Nastavenie je v poriadku a pripojenie je stabilné.", +"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "Nastavenie je v poriadku, ale pripojenie zlyhalo. Skontrolujte nastavenia servera a prihlasovacie údaje.", +"The configuration is invalid. Please look in the ownCloud log for further details." => "Nastavenia sú neplatné. Podrobnosti hľadajte v logu ownCloud.", +"Deletion failed" => "Odstránenie zlyhalo", +"Take over settings from recent server configuration?" => "PrebraÅ¥ nastavenia z nedávneho nastavenia servera?", +"Keep settings?" => "PonechaÅ¥ nastavenia?", +"Cannot add server configuration" => "Nemožno pridaÅ¥ nastavenie servera", +"Connection test succeeded" => "Test pripojenia bol úspeÅ¡ný", +"Connection test failed" => "Test pripojenia zlyhal", +"Do you really want to delete the current Server Configuration?" => "Naozaj chcete zmazaÅ¥ súÄasné nastavenie servera?", +"Confirm Deletion" => "PotvrdiÅ¥ vymazanie", +"<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Upozornenie:</b> Aplikácie user_ldap a user_webdavauth nie sú kompatibilné. Môže nastávaÅ¥ neoÄakávané správanie. Požiadajte správcu systému aby jednu z nich zakázal.", +"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Upozornenie:</b> nie je nainÅ¡talovaný LDAP modul pre PHP, backend vrstva nebude fungovaÅ¥. Požádejte správcu systému aby ho nainÅ¡taloval.", +"Server configuration" => "Nastavenia servera", +"Add Server Configuration" => "PridaÅ¥ nastavenia servera.", "Host" => "Hostiteľ", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Môžete vynechaÅ¥ protokol, s výnimkou požadovania SSL. Vtedy zaÄnite s ldaps://", "Base DN" => "Základné DN", +"One Base DN per line" => "Jedno základné DN na riadok", "You can specify Base DN for users and groups in the Advanced tab" => "V rozÅ¡Ãrenom nastavenà môžete zadaÅ¥ základné DN pre použÃvateľov a skupiny", "User DN" => "PoužÃvateľské DN", "The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty." => "DN klientského použÃvateľa, ku ktorému tvorÃte väzbu, napr. uid=agent,dc=example,dc=com. Pre anonymný prÃstup ponechajte údaje DN a Heslo prázdne.", @@ -16,22 +33,37 @@ "Group Filter" => "Filter skupiny", "Defines the filter to apply, when retrieving groups." => "Definuje použitý filter, pre zÃskanie skupÃn.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "bez zástupných znakov, napr. \"objectClass=posixGroup\"", +"Connection Settings" => "Nastavenie pripojenia", +"Configuration Active" => "Nastavenia sú aktÃvne ", +"When unchecked, this configuration will be skipped." => "Ak nie je zaÅ¡krtnuté, nastavenie bude preskoÄené.", "Port" => "Port", -"Base User Tree" => "Základný použÃvateľský strom", -"Base Group Tree" => "Základný skupinový strom", -"Group-Member association" => "Asociácia Älena skupiny", +"Backup (Replica) Host" => "Záložný server (kópia) hosÅ¥", +"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Zadajte záložný LDAP/AD. Musà to byÅ¥ kópia hlavného LDAP/AD servera.", +"Backup (Replica) Port" => "Záložný server (kópia) port", +"Disable Main Server" => "ZakázaÅ¥ hlavný server", +"When switched on, ownCloud will only connect to the replica server." => "Pri zapnutà sa ownCloud pripojà len k záložnému serveru.", "Use TLS" => "Použi TLS", "Do not use it for SSL connections, it will fail." => "NepoužÃvajte pre pripojenie SSL, pripojenie zlyhá.", "Case insensitve LDAP server (Windows)" => "LDAP server nerozliÅ¡uje veľkosÅ¥ znakov (Windows)", "Turn off SSL certificate validation." => "Vypnúť overovanie SSL certifikátu.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Ak pripojenie pracuje len s touto možnosÅ¥ou, tak importujte SSL certifikát LDAP serveru do vášho servera ownCloud.", "Not recommended, use for testing only." => "Nie je doporuÄované, len pre testovacie úÄely.", +"in seconds. A change empties the cache." => "v sekundách. Zmena vyprázdni vyrovnávaciu pamäť.", +"Directory Settings" => "Nastavenie prieÄinka", "User Display Name Field" => "Pole pre zobrazenia mena použÃvateľa", "The LDAP attribute to use to generate the user`s ownCloud name." => "Atribút LDAP použitý na vygenerovanie mena použÃvateľa ownCloud ", +"Base User Tree" => "Základný použÃvateľský strom", +"One User Base DN per line" => "Jedna použÃvateľská základná DN na riadok", +"User Search Attributes" => "Atribúty vyhľadávania použÃvateľov", +"Optional; one attribute per line" => "Voliteľné, jeden atribút na jeden riadok", "Group Display Name Field" => "Pole pre zobrazenie mena skupiny", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Atribút LDAP použitý na vygenerovanie mena skupiny ownCloud ", +"Base Group Tree" => "Základný skupinový strom", +"One Group Base DN per line" => "Jedna skupinová základná DN na riadok", +"Group Search Attributes" => "Atribúty vyhľadávania skupÃn", +"Group-Member association" => "Asociácia Älena skupiny", +"Special Attributes" => "Å peciálne atribúty", "in bytes" => "v bajtoch", -"in seconds. A change empties the cache." => "v sekundách. Zmena vyprázdni vyrovnávaciu pamäť.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Nechajte prázdne pre použÃvateľské meno (predvolené). Inak uveÄte atribút LDAP/AD.", "Help" => "Pomoc" ); diff --git a/apps/user_ldap/l10n/sl.php b/apps/user_ldap/l10n/sl.php index 247f2bfdcbd..133d7ee9119 100644 --- a/apps/user_ldap/l10n/sl.php +++ b/apps/user_ldap/l10n/sl.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Brisanje je spodletelo.", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Opozorilo:</b> Aplikaciji user_ldap in user_webdavauth nista združljivi. Morda boste opazili nepriÄakovano obnaÅ¡anje sistema. Prosimo, prosite vaÅ¡ega skrbnika, da eno od aplikacij onemogoÄi.", "Host" => "Gostitelj", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Protokol je lahko izpuÅ¡Äen, Äe ni posebej zahtevan SSL. V tem primeru se mora naslov zaÄeti z ldaps://", @@ -18,21 +19,21 @@ "Defines the filter to apply, when retrieving groups." => "DoloÄi filter za uporabo med pridobivanjem skupin.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "Brez katerekoli vsebnika, npr. \"objectClass=posixGroup\".", "Port" => "Vrata", -"Base User Tree" => "Osnovno uporabniÅ¡ko drevo", -"Base Group Tree" => "Osnovno drevo skupine", -"Group-Member association" => "Povezava Älana skupine", "Use TLS" => "Uporabi TLS", "Do not use it for SSL connections, it will fail." => "Uporaba SSL za povezave bo spodletela.", "Case insensitve LDAP server (Windows)" => "Strežnik LDAP ne upoÅ¡teva velikosti Ärk (Windows)", "Turn off SSL certificate validation." => "OnemogoÄi potrditev veljavnosti potrdila SSL.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "V primeru, da povezava deluje le s to možnostjo, uvozite potrdilo SSL iz strežnika LDAP na vaÅ¡ strežnik ownCloud.", "Not recommended, use for testing only." => "Dejanje ni priporoÄeno; uporabljeno naj bo le za preizkuÅ¡anje delovanja.", +"in seconds. A change empties the cache." => "v sekundah. Sprememba izprazni predpomnilnik.", "User Display Name Field" => "Polje za uporabnikovo prikazano ime", "The LDAP attribute to use to generate the user`s ownCloud name." => "Atribut LDAP, uporabljen pri ustvarjanju uporabniÅ¡kih imen ownCloud.", +"Base User Tree" => "Osnovno uporabniÅ¡ko drevo", "Group Display Name Field" => "Polje za prikazano ime skupine", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Atribut LDAP, uporabljen pri ustvarjanju imen skupin ownCloud.", +"Base Group Tree" => "Osnovno drevo skupine", +"Group-Member association" => "Povezava Älana skupine", "in bytes" => "v bajtih", -"in seconds. A change empties the cache." => "v sekundah. Sprememba izprazni predpomnilnik.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Pustite prazno za uporabniÅ¡ko ime (privzeto). V nasprotnem primeru navedite atribut LDAP/AD.", "Help" => "PomoÄ" ); diff --git a/apps/user_ldap/l10n/sr.php b/apps/user_ldap/l10n/sr.php index fff39aadc24..f16e59273cd 100644 --- a/apps/user_ldap/l10n/sr.php +++ b/apps/user_ldap/l10n/sr.php @@ -1,3 +1,4 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "БриÑање није уÑпело", "Help" => "Помоћ" ); diff --git a/apps/user_ldap/l10n/sv.php b/apps/user_ldap/l10n/sv.php index 25abfdd7ddb..b1da09ad3e1 100644 --- a/apps/user_ldap/l10n/sv.php +++ b/apps/user_ldap/l10n/sv.php @@ -1,6 +1,18 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "Misslyckades med att radera serverinställningen", +"The configuration is valid and the connection could be established!" => "Inställningen är giltig och anslutningen kunde upprättas!", +"The configuration is invalid. Please look in the ownCloud log for further details." => "Inställningen är ogiltig. Vänligen se ownCloud-loggen för fler detaljer.", +"Deletion failed" => "Raderingen misslyckades", +"Keep settings?" => "BehÃ¥ll inställningarna?", +"Cannot add server configuration" => "Kunde inte lägga till serverinställning", +"Connection test succeeded" => "Anslutningstestet lyckades", +"Connection test failed" => "Anslutningstestet misslyckades", +"Do you really want to delete the current Server Configuration?" => "Vill du verkligen radera den nuvarande serverinställningen?", +"Confirm Deletion" => "Bekräfta radering", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Varning:</b> Apps user_ldap och user_webdavauth är inkompatibla. Oväntade problem kan uppstÃ¥. Be din systemadministratör att inaktivera en av dom.", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>Varning:</b> PHP LDAP - modulen är inte installerad, serversidan kommer inte att fungera. Kontakta din systemadministratör för installation.", +"Server configuration" => "Serverinställning", +"Add Server Configuration" => "Lägg till serverinställning", "Host" => "Server", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Du behöver inte ange protokoll förutom om du använder SSL. Starta dÃ¥ med ldaps://", "Base DN" => "Start DN", @@ -20,23 +32,24 @@ "Defines the filter to apply, when retrieving groups." => "Definierar filter att tillämpa vid listning av grupper.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "utan platshÃ¥llare, t.ex. \"objectClass=posixGroup\".", "Port" => "Port", -"Base User Tree" => "Bas för användare i katalogtjänst", -"One User Base DN per line" => "En Användare start DN per rad", -"Base Group Tree" => "Bas för grupper i katalogtjänst", -"One Group Base DN per line" => "En Grupp start DN per rad", -"Group-Member association" => "Attribut för gruppmedlemmar", +"Disable Main Server" => "Inaktivera huvudserver", "Use TLS" => "Använd TLS", "Do not use it for SSL connections, it will fail." => "Använd inte för SSL-anslutningar, det kommer inte att fungera.", "Case insensitve LDAP server (Windows)" => "LDAP-servern är okänslig för gemener och versaler (Windows)", "Turn off SSL certificate validation." => "Stäng av verifiering av SSL-certifikat.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Om anslutningen bara fungerar med det här alternativet, importera LDAP-serverns SSL-certifikat i din ownCloud-server.", "Not recommended, use for testing only." => "Rekommenderas inte, använd bara för test. ", +"in seconds. A change empties the cache." => "i sekunder. En förändring tömmer cache.", "User Display Name Field" => "Attribut för användarnamn", "The LDAP attribute to use to generate the user`s ownCloud name." => "Attribut som används för att generera användarnamn i ownCloud.", +"Base User Tree" => "Bas för användare i katalogtjänst", +"One User Base DN per line" => "En Användare start DN per rad", "Group Display Name Field" => "Attribut för gruppnamn", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Attribut som används för att generera gruppnamn i ownCloud.", +"Base Group Tree" => "Bas för grupper i katalogtjänst", +"One Group Base DN per line" => "En Grupp start DN per rad", +"Group-Member association" => "Attribut för gruppmedlemmar", "in bytes" => "i bytes", -"in seconds. A change empties the cache." => "i sekunder. En förändring tömmer cache.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Lämnas tomt för användarnamn (standard). Ange annars ett LDAP/AD-attribut.", "Help" => "Hjälp" ); diff --git a/apps/user_ldap/l10n/ta_LK.php b/apps/user_ldap/l10n/ta_LK.php index 2028becaf98..d617f49700f 100644 --- a/apps/user_ldap/l10n/ta_LK.php +++ b/apps/user_ldap/l10n/ta_LK.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "நீகà¯à®•ம௠தோலà¯à®µà®¿à®¯à®Ÿà¯ˆà®¨à¯à®¤à®¤à¯", "Host" => "ஓமà¯à®ªà¯à®©à®°à¯", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "நீஙà¯à®•ள௠SSL சேவையை தவிர உடனà¯à®ªà®Ÿà¯ வரைமà¯à®±à¯ˆà®¯à¯ˆ தவிரà¯à®•à¯à®• à®®à¯à®Ÿà®¿à®¯à¯à®®à¯. பிறக௠ldaps:.// உடன௠ஆரமà¯à®ªà®¿à®•à¯à®•வà¯à®®à¯", "Base DN" => "தள DN", @@ -7,21 +8,21 @@ "Password" => "கடவà¯à®šà¯à®šà¯Šà®²à¯", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "எநà¯à®¤ ஒதà¯à®•à¯à®•ீடà¯à®®à¯ இலà¯à®²à®¾à®®à®²à¯, உதாரணமà¯. \"objectClass=posixGroup\".", "Port" => "தà¯à®±à¯ˆ ", -"Base User Tree" => "தள பயனாளர௠மரமà¯", -"Base Group Tree" => "தள கà¯à®´à¯ மரமà¯", -"Group-Member association" => "கà¯à®´à¯ உறà¯à®ªà¯à®ªà®¿à®©à®°à¯ சஙà¯à®•à®®à¯", "Use TLS" => "TLS ஠பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à®µà¯à®®à¯", "Do not use it for SSL connections, it will fail." => "SSL இணைபà¯à®ªà®¿à®±à¯à®•௠பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à®µà¯‡à®£à¯à®Ÿà®¾à®®à¯, அத௠தோலà¯à®µà®¿à®¯à®Ÿà¯ˆà®¯à¯à®®à¯.", "Case insensitve LDAP server (Windows)" => "உணரà¯à®šà¯à®šà®¿à®¯à®¾à®© LDAP சேவையகம௠(சாளரஙà¯à®•ளà¯)", "Turn off SSL certificate validation." => "SSL சானà¯à®±à®¿à®¤à®´à®¿à®©à¯ செலà¯à®²à¯à®ªà®Ÿà®¿à®¯à¯ˆ நிறà¯à®¤à¯à®¤à®¿à®µà®¿à®Ÿà®µà¯à®®à¯", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "இநà¯à®¤ தெரிவà¯à®•ளில௠மடà¯à®Ÿà¯à®®à¯ இணைபà¯à®ªà¯ வேலைசெயà¯à®¤à®¾à®²à¯, உஙà¯à®•ளà¯à®Ÿà¯ˆà®¯ owncloud சேவையகதà¯à®¤à®¿à®²à®¿à®°à¯à®¨à¯à®¤à¯ LDAP சேவையகதà¯à®¤à®¿à®©à¯ SSL சானà¯à®±à®¿à®¤à®´à¯ˆ இறகà¯à®•à¯à®®à®¤à®¿ செயà¯à®¯à®µà¯à®®à¯", "Not recommended, use for testing only." => "பரிநà¯à®¤à¯à®°à¯ˆà®•à¯à®•பà¯à®ªà®Ÿà®µà®¿à®²à¯à®²à¯ˆ, சோதனைகà¯à®•ாக மடà¯à®Ÿà¯à®®à¯ பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à®µà¯à®®à¯.", +"in seconds. A change empties the cache." => "செகà¯à®•னà¯à®•ளிலà¯. ஒர௠மாறà¯à®±à®®à¯ இடைமாறà¯à®±à¯à®¨à®¿à®©à¯ˆà®µà®•தà¯à®¤à¯ˆ வெறà¯à®±à®¿à®Ÿà®®à®¾à®•à¯à®•à¯à®®à¯.", "User Display Name Field" => "பயனாளர௠காடà¯à®šà®¿à®ªà¯à®ªà¯†à®¯à®°à¯ பà¯à®²à®®à¯", "The LDAP attribute to use to generate the user`s ownCloud name." => "பயனாளரின௠ownCloud பெயரை உரà¯à®µà®¾à®•à¯à®• LDAP பணà¯à®ªà¯à®•à¯à®•ூறை பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à®µà¯à®®à¯.", +"Base User Tree" => "தள பயனாளர௠மரமà¯", "Group Display Name Field" => "கà¯à®´à¯à®µà®¿à®©à¯ காடà¯à®šà®¿ பெயர௠பà¯à®²à®®à¯ ", "The LDAP attribute to use to generate the groups`s ownCloud name." => "ownCloud கà¯à®´à¯à®•à¯à®•ளின௠பெயரà¯à®•ளை உரà¯à®µà®¾à®•à¯à®• LDAP பணà¯à®ªà¯à®•à¯à®•ூறை பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à®µà¯à®®à¯.", +"Base Group Tree" => "தள கà¯à®´à¯ மரமà¯", +"Group-Member association" => "கà¯à®´à¯ உறà¯à®ªà¯à®ªà®¿à®©à®°à¯ சஙà¯à®•à®®à¯", "in bytes" => "bytes களில௠", -"in seconds. A change empties the cache." => "செகà¯à®•னà¯à®•ளிலà¯. ஒர௠மாறà¯à®±à®®à¯ இடைமாறà¯à®±à¯à®¨à®¿à®©à¯ˆà®µà®•தà¯à®¤à¯ˆ வெறà¯à®±à®¿à®Ÿà®®à®¾à®•à¯à®•à¯à®®à¯.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "பயனாளர௠பெயரிறà¯à®•௠வெறà¯à®±à®¿à®Ÿà®®à®¾à®• விடவà¯à®®à¯ (பொத௠இரà¯à®ªà¯à®ªà¯). இலà¯à®²à®¾à®µà®¿à®Ÿà®¿à®©à¯ LDAP/AD பணà¯à®ªà¯à®•à¯à®•ூறை கà¯à®±à®¿à®ªà¯à®ªà®¿à®Ÿà®µà¯à®®à¯.", "Help" => "உதவி" ); diff --git a/apps/user_ldap/l10n/th_TH.php b/apps/user_ldap/l10n/th_TH.php index e3a941c4244..07dbc835b31 100644 --- a/apps/user_ldap/l10n/th_TH.php +++ b/apps/user_ldap/l10n/th_TH.php @@ -1,6 +1,19 @@ <?php $TRANSLATIONS = array( +"Failed to delete the server configuration" => "à¸à¸²à¸£à¸¥à¸šà¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าเซิร์ฟเวà¸à¸£à¹Œà¸¥à¹‰à¸¡à¹€à¸«à¸¥à¸§", +"The configuration is valid and the connection could be established!" => "à¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าถูà¸à¸•้à¸à¸‡à¹à¸¥à¸°à¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¸ªà¸²à¸¡à¸²à¸£à¸–เชื่à¸à¸¡à¸•่à¸à¹„ด้!", +"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "à¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าถูà¸à¸•้à¸à¸‡, à¹à¸•่à¸à¸²à¸£à¸œà¸¹à¸à¸‚้à¸à¸¡à¸¹à¸¥à¸¥à¹‰à¸¡à¹€à¸«à¸¥à¸§, à¸à¸£à¸¸à¸“าตรวจสà¸à¸šà¸à¸²à¸£à¸•ั้งค่าเซิร์ฟเวà¸à¸£à¹Œà¹à¸¥à¸°à¸‚้à¸à¸¡à¸¹à¸¥à¸à¸²à¸£à¹€à¸‚้าใช้งาน", +"The configuration is invalid. Please look in the ownCloud log for further details." => "à¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าไม่ถูà¸à¸•้à¸à¸‡ à¸à¸£à¸¸à¸“าดูรายละเà¸à¸µà¸¢à¸”จาà¸à¸šà¸±à¸™à¸—ึà¸à¸à¸²à¸£à¹€à¸›à¸¥à¸µà¹ˆà¸¢à¸™à¹à¸›à¸¥à¸‡à¸‚à¸à¸‡ ownCloud สำหรับรายละเà¸à¸µà¸¢à¸”เพิ่มเติม", +"Deletion failed" => "à¸à¸²à¸£à¸¥à¸šà¸—ิ้งล้มเหลว", +"Keep settings?" => "รัà¸à¸©à¸²à¸à¸²à¸£à¸•ั้งค่าไว้?", +"Cannot add server configuration" => "ไม่สามารถเพิ่มค่าà¸à¸³à¸«à¸™à¸”เซิร์ฟเวà¸à¸£à¹Œà¹„ด้", +"Connection test succeeded" => "ทดสà¸à¸šà¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¸ªà¸³à¹€à¸£à¹‡à¸ˆ", +"Connection test failed" => "ทดสà¸à¸šà¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¸¥à¹‰à¸¡à¹€à¸«à¸¥à¸§", +"Do you really want to delete the current Server Configuration?" => "คุณà¹à¸™à¹ˆà¹ƒà¸ˆà¹à¸¥à¹‰à¸§à¸«à¸£à¸·à¸à¸§à¹ˆà¸²à¸•้à¸à¸‡à¸à¸²à¸£à¸¥à¸šà¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าเซิร์ฟเวà¸à¸£à¹Œà¸›à¸±à¸ˆà¸ˆà¸¸à¸šà¸±à¸™à¸—ิ้งไป?", +"Confirm Deletion" => "ยืนยันà¸à¸²à¸£à¸¥à¸šà¸—ิ้ง", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>คำเตืà¸à¸™:</b> à¹à¸à¸›à¸¯ user_ldap à¹à¸¥à¸° user_webdavauth ไม่สามารถใช้งานร่วมà¸à¸±à¸™à¹„ด้. คุณà¸à¸²à¸ˆà¸›à¸£à¸°à¸ªà¸žà¸›à¸±à¸à¸«à¸²à¸—ี่ไม่คาดคิดจาà¸à¹€à¸«à¸•ุà¸à¸²à¸£à¸“์ดังà¸à¸¥à¹ˆà¸²à¸§ à¸à¸£à¸¸à¸“าติดต่à¸à¸œà¸¹à¹‰à¸”ูà¹à¸¥à¸£à¸°à¸šà¸šà¸‚à¸à¸‡à¸„ุณเพื่à¸à¸£à¸°à¸‡à¸±à¸šà¸à¸²à¸£à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¹à¸à¸›à¸¯ ตัวใดตัวหนึ่งข้างต้น", "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "<b>คำเตืà¸à¸™:</b> โมดูล PHP LDAP ยังไม่ได้ถูà¸à¸•ิดตั้ง, ระบบด้านหลังจะไม่สามารถทำงานได้ à¸à¸£à¸¸à¸“าติดต่à¸à¸œà¸¹à¹‰à¸”ูà¹à¸¥à¸£à¸°à¸šà¸šà¸‚à¸à¸‡à¸„ุณเพื่à¸à¸—ำà¸à¸²à¸£à¸•ิดตั้งโมดูลดังà¸à¸¥à¹ˆà¸²à¸§", +"Server configuration" => "à¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าเซิร์ฟเวà¸à¸£à¹Œ", +"Add Server Configuration" => "เพิ่มà¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าเซิร์ฟเวà¸à¸£à¹Œ", "Host" => "โฮสต์", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "คุณสามารถปล่à¸à¸¢à¸Šà¹ˆà¸à¸‡à¹‚ปรโตคà¸à¸¥à¹€à¸§à¹‰à¸™à¹„ว้ได้, ยà¸à¹€à¸§à¹‰à¸™à¸à¸£à¸“ีที่คุณต้à¸à¸‡à¸à¸²à¸£à¹ƒà¸Šà¹‰ SSL จาà¸à¸™à¸±à¹‰à¸™à¹€à¸£à¸´à¹ˆà¸¡à¸•้นด้วย ldaps://", "Base DN" => "DN à¸à¸²à¸™", @@ -19,24 +32,31 @@ "Group Filter" => "ตัวà¸à¸£à¸à¸‡à¸‚้à¸à¸¡à¸¹à¸¥à¸à¸¥à¸¸à¹ˆà¸¡", "Defines the filter to apply, when retrieving groups." => "ระบุตัวà¸à¸£à¸à¸‡à¸‚้à¸à¸¡à¸¹à¸¥à¸—ี่ต้à¸à¸‡à¸à¸²à¸£à¸™à¸³à¹„ปใช้งาน, เมื่à¸à¸”ึงข้à¸à¸¡à¸¹à¸¥à¸à¸¥à¸¸à¹ˆà¸¡", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "โดยไม่ต้à¸à¸‡à¸¡à¸µà¸•ัวยึดใดๆ, เช่น \"objectClass=posixGroup\",", +"Connection Settings" => "ตั้งค่าà¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸", "Port" => "พà¸à¸£à¹Œà¸•", -"Base User Tree" => "รายà¸à¸²à¸£à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¸«à¸¥à¸±à¸à¹à¸šà¸š Tree", -"One User Base DN per line" => "หนึ่ง User Base DN ต่à¸à¸šà¸£à¸£à¸—ัด", -"Base Group Tree" => "รายà¸à¸²à¸£à¸à¸¥à¸¸à¹ˆà¸¡à¸«à¸¥à¸±à¸à¹à¸šà¸š Tree", -"One Group Base DN per line" => "หนึ่ง Group Base DN ต่à¸à¸šà¸£à¸£à¸—ัด", -"Group-Member association" => "ความสัมพันธ์ขà¸à¸‡à¸ªà¸¡à¸²à¸Šà¸´à¸à¹ƒà¸™à¸à¸¥à¸¸à¹ˆà¸¡", +"Disable Main Server" => "ปิดใช้งานเซิร์ฟเวà¸à¸£à¹Œà¸«à¸¥à¸±à¸", "Use TLS" => "ใช้ TLS", "Do not use it for SSL connections, it will fail." => "à¸à¸£à¸¸à¸“าà¸à¸¢à¹ˆà¸²à¹ƒà¸Šà¹‰à¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¹à¸šà¸š SSL à¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¸ˆà¸°à¹€à¸à¸´à¸”à¸à¸²à¸£à¸¥à¹‰à¸¡à¹€à¸«à¸¥à¸§", "Case insensitve LDAP server (Windows)" => "เซิร์ฟเวà¸à¸£à¹Œ LDAP ประเภท Case insensitive (วินโดวส์)", "Turn off SSL certificate validation." => "ปิดใช้งานà¸à¸²à¸£à¸•รวจสà¸à¸šà¸„วามถูà¸à¸•้à¸à¸‡à¸‚à¸à¸‡à¹ƒà¸šà¸£à¸±à¸šà¸£à¸à¸‡à¸„วามปลà¸à¸”ภัย SSL", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "หาà¸à¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¸ªà¸²à¸¡à¸²à¸£à¸–ทำงานได้เฉพาะà¸à¸±à¸šà¸•ัวเลืà¸à¸à¸™à¸µà¹‰à¹€à¸—่านั้น, ให้นำเข้าข้à¸à¸¡à¸¹à¸¥à¹ƒà¸šà¸£à¸±à¸šà¸£à¸à¸‡à¸„วามปลà¸à¸”ภัยà¹à¸šà¸š SSL ขà¸à¸‡à¹€à¸‹à¸´à¸£à¹Œà¸Ÿà¹€à¸§à¸à¸£à¹Œ LDAP ดังà¸à¸¥à¹ˆà¸²à¸§à¹€à¸‚้าไปไว้ในเซิร์ฟเวà¸à¸£à¹Œ ownCloud", "Not recommended, use for testing only." => "ไม่à¹à¸™à¸°à¸™à¸³à¹ƒà¸«à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™, ใช้สำหรับà¸à¸²à¸£à¸—ดสà¸à¸šà¹€à¸—่านั้น", +"in seconds. A change empties the cache." => "ในà¸à¸µà¸à¹„ม่à¸à¸µà¹ˆà¸§à¸´à¸™à¸²à¸—ี ระบบจะเปลี่ยนà¹à¸›à¸¥à¸‡à¸‚้à¸à¸¡à¸¹à¸¥à¹ƒà¸™à¹à¸„ชให้ว่างเปล่า", +"Directory Settings" => "ตั้งค่าไดเร็à¸à¸—à¸à¸£à¸µà¹ˆ", "User Display Name Field" => "ช่à¸à¸‡à¹à¸ªà¸”งชื่à¸à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¸—ี่ต้à¸à¸‡à¸à¸²à¸£", "The LDAP attribute to use to generate the user`s ownCloud name." => "คุณลัà¸à¸©à¸“ะ LDAP ที่ต้à¸à¸‡à¸à¸²à¸£à¹ƒà¸Šà¹‰à¸ªà¸³à¸«à¸£à¸±à¸šà¸ªà¸£à¹‰à¸²à¸‡à¸Šà¸·à¹ˆà¸à¸‚à¸à¸‡à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™ ownCloud", +"Base User Tree" => "รายà¸à¸²à¸£à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¸«à¸¥à¸±à¸à¹à¸šà¸š Tree", +"One User Base DN per line" => "หนึ่ง User Base DN ต่à¸à¸šà¸£à¸£à¸—ัด", +"User Search Attributes" => "คุณลัà¸à¸©à¸“ะà¸à¸²à¸£à¸„้นหาชื่à¸à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰", +"Optional; one attribute per line" => "ตัวเลืà¸à¸à¹€à¸žà¸´à¹ˆà¸¡à¹€à¸•ิม; หนึ่งคุณลัà¸à¸©à¸“ะต่à¸à¸šà¸£à¸£à¸—ัด", "Group Display Name Field" => "ช่à¸à¸‡à¹à¸ªà¸”งชื่à¸à¸à¸¥à¸¸à¹ˆà¸¡à¸—ี่ต้à¸à¸‡à¸à¸²à¸£", "The LDAP attribute to use to generate the groups`s ownCloud name." => "คุณลัà¸à¸©à¸“ะ LDAP ที่ต้à¸à¸‡à¸à¸²à¸£à¹ƒà¸Šà¹‰à¸ªà¸£à¹‰à¸²à¸‡à¸Šà¸·à¹ˆà¸à¸à¸¥à¸¸à¹ˆà¸¡à¸‚à¸à¸‡ ownCloud", +"Base Group Tree" => "รายà¸à¸²à¸£à¸à¸¥à¸¸à¹ˆà¸¡à¸«à¸¥à¸±à¸à¹à¸šà¸š Tree", +"One Group Base DN per line" => "หนึ่ง Group Base DN ต่à¸à¸šà¸£à¸£à¸—ัด", +"Group Search Attributes" => "คุณลัà¸à¸©à¸“ะà¸à¸²à¸£à¸„้นหาà¹à¸šà¸šà¸à¸¥à¸¸à¹ˆà¸¡", +"Group-Member association" => "ความสัมพันธ์ขà¸à¸‡à¸ªà¸¡à¸²à¸Šà¸´à¸à¹ƒà¸™à¸à¸¥à¸¸à¹ˆà¸¡", +"Special Attributes" => "คุณลัà¸à¸©à¸“ะพิเศษ", "in bytes" => "ในหน่วยไบต์", -"in seconds. A change empties the cache." => "ในà¸à¸µà¸à¹„ม่à¸à¸µà¹ˆà¸§à¸´à¸™à¸²à¸—ี ระบบจะเปลี่ยนà¹à¸›à¸¥à¸‡à¸‚้à¸à¸¡à¸¹à¸¥à¹ƒà¸™à¹à¸„ชให้ว่างเปล่า", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "เว้นว่างไว้สำหรับ ชื่à¸à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰ (ค่าเริ่มต้น) หรืà¸à¹„ม่à¸à¸£à¸¸à¸“าระบุคุณลัà¸à¸©à¸“ะขà¸à¸‡ LDAP/AD", "Help" => "ช่วยเหลืà¸" ); diff --git a/apps/user_ldap/l10n/tr.php b/apps/user_ldap/l10n/tr.php index 6da65d9832b..8ded27a2952 100644 --- a/apps/user_ldap/l10n/tr.php +++ b/apps/user_ldap/l10n/tr.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Silme baÅŸarısız oldu", "Host" => "Konak", "Base DN" => "Base DN", "User DN" => "User DN", @@ -10,15 +11,15 @@ "without any placeholder, e.g. \"objectClass=person\"." => "bir yer tutucusu olmadan, örneÄŸin \"objectClass=person\"", "Group Filter" => "Grup Süzgeci", "Port" => "Port", -"Base User Tree" => "Temel Kullanıcı AÄŸacı", -"Base Group Tree" => "Temel Grup AÄŸacı", -"Group-Member association" => "Grup-Üye iÅŸbirliÄŸi", "Use TLS" => "TLS kullan", "Do not use it for SSL connections, it will fail." => "SSL baÄŸlantıları ile kullanmayın, baÅŸarısız olacaktır.", "Turn off SSL certificate validation." => "SSL sertifika doÄŸrulamasını kapat.", "Not recommended, use for testing only." => "Önerilmez, sadece test için kullanın.", -"in bytes" => "byte cinsinden", "in seconds. A change empties the cache." => "saniye cinsinden. Bir deÄŸiÅŸiklik önbelleÄŸi temizleyecektir.", +"Base User Tree" => "Temel Kullanıcı AÄŸacı", +"Base Group Tree" => "Temel Grup AÄŸacı", +"Group-Member association" => "Grup-Üye iÅŸbirliÄŸi", +"in bytes" => "byte cinsinden", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Kullanıcı adı bölümünü boÅŸ bırakın (varsayılan). ", "Help" => "Yardım" ); diff --git a/apps/user_ldap/l10n/uk.php b/apps/user_ldap/l10n/uk.php index d617d939265..4dd1256ee33 100644 --- a/apps/user_ldap/l10n/uk.php +++ b/apps/user_ldap/l10n/uk.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Ð’Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð½Ðµ було виконано", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>Увага:</b> ЗаÑтоÑунки user_ldap та user_webdavauth не ÑуміÑні. Ви можете зіткнутиÑÑ Ð· неÑподіваною поведінкою. Будь лаÑка, звернітьÑÑ Ð´Ð¾ ÑиÑтемного адмініÑтратора, щоб відключити одну з них.", "Host" => "ХоÑÑ‚", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Можна не вказувати протокол, Ñкщо вам не потрібен SSL. Тоді почніть з ldaps://", @@ -18,21 +19,21 @@ "Defines the filter to apply, when retrieving groups." => "Визначає фільтр, Ñкий заÑтоÑовуєтьÑÑ Ð¿Ñ€Ð¸ отриманні груп.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "без будь-Ñкого заповнювача, наприклад: \"objectClass=posixGroup\".", "Port" => "Порт", -"Base User Tree" => "ОÑновне Дерево КориÑтувачів", -"Base Group Tree" => "ОÑновне Дерево Груп", -"Group-Member association" => "ÐÑÐ¾Ñ†Ñ–Ð°Ñ†Ñ–Ñ Ð“Ñ€ÑƒÐ¿Ð°-Член", "Use TLS" => "ВикориÑтовуйте TLS", "Do not use it for SSL connections, it will fail." => "Ðе викориÑтовуйте його Ð´Ð»Ñ SSL з'єднань, це не буде виконано.", "Case insensitve LDAP server (Windows)" => "Ðечутливий до регіÑтру LDAP Ñервер (Windows)", "Turn off SSL certificate validation." => "Вимкнути перевірку SSL Ñертифіката.", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Якщо з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð¿Ñ€Ð°Ñ†ÑŽÑ” лише з цією опцією, імпортуйте SSL Ñертифікат LDAP Ñервера у ваший ownCloud Ñервер.", "Not recommended, use for testing only." => "Ðе рекомендуєтьÑÑ, викориÑтовуйте лише Ð´Ð»Ñ Ñ‚ÐµÑтів.", +"in seconds. A change empties the cache." => "в Ñекундах. Зміна очищує кеш.", "User Display Name Field" => "Поле, Ñке відображає Ім'Ñ ÐšÐ¾Ñ€Ð¸Ñтувача", "The LDAP attribute to use to generate the user`s ownCloud name." => "Ðтрибут LDAP, Ñкий викориÑтовуєтьÑÑ Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ñ–Ñ— імен кориÑтувачів ownCloud.", +"Base User Tree" => "ОÑновне Дерево КориÑтувачів", "Group Display Name Field" => "Поле, Ñке відображає Ім'Ñ Ð“Ñ€ÑƒÐ¿Ð¸", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Ðтрибут LDAP, Ñкий викориÑтовуєтьÑÑ Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ñ–Ñ— імен груп ownCloud.", +"Base Group Tree" => "ОÑновне Дерево Груп", +"Group-Member association" => "ÐÑÐ¾Ñ†Ñ–Ð°Ñ†Ñ–Ñ Ð“Ñ€ÑƒÐ¿Ð°-Член", "in bytes" => "в байтах", -"in seconds. A change empties the cache." => "в Ñекундах. Зміна очищує кеш.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Залиште порожнім Ð´Ð»Ñ Ñ–Ð¼ÐµÐ½Ñ– кориÑтувача (за замовчаннÑм). Інакше, вкажіть атрибут LDAP/AD.", "Help" => "Допомога" ); diff --git a/apps/user_ldap/l10n/vi.php b/apps/user_ldap/l10n/vi.php index 3d32c8125b8..76ff6fe33a4 100644 --- a/apps/user_ldap/l10n/vi.php +++ b/apps/user_ldap/l10n/vi.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "Xóa thất bại", "Host" => "Máy chá»§", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "Bạn có thể bá» qua các giao thức, ngoại trừ SSL. Sau đó bắt đầu vá»›i ldaps://", "Base DN" => "DN cÆ¡ bản", @@ -17,21 +18,21 @@ "Defines the filter to apply, when retrieving groups." => "Xác định các bá»™ lá»c để áp dụng, khi nhóm sá» dụng.", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "mà không giữ chá»— nà o, và dụ như \"objectClass = osixGroup\".", "Port" => "Cổng", -"Base User Tree" => "Cây ngưá»i dùng cÆ¡ bản", -"Base Group Tree" => "Cây nhóm cÆ¡ bản", -"Group-Member association" => "Nhóm thà nh viên Cá»™ng đồng", "Use TLS" => "Sá» dụng TLS", "Do not use it for SSL connections, it will fail." => "Kết nối SSL bị lá»—i. ", "Case insensitve LDAP server (Windows)" => "Trưá»ng hợp insensitve LDAP máy chá»§ (Windows)", "Turn off SSL certificate validation." => "Tắt xác thá»±c chứng nháºn SSL", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Nếu kết nối chỉ hoạt động vá»›i tùy chá»n nà y, vui lòng import LDAP certificate SSL trong máy chá»§ ownCloud cá»§a bạn.", "Not recommended, use for testing only." => "Không khuyến khÃch, Chỉ sá» dụng để thá» nghiệm.", +"in seconds. A change empties the cache." => "trong và i giây. Má»™t sá»± thay đổi bá»™ nhá»› cache.", "User Display Name Field" => "Hiển thị tên ngưá»i sá» dụng", "The LDAP attribute to use to generate the user`s ownCloud name." => "Các thuá»™c tÃnh LDAP sá» dụng để tạo tên ngưá»i dùng ownCloud.", +"Base User Tree" => "Cây ngưá»i dùng cÆ¡ bản", "Group Display Name Field" => "Hiển thị tên nhóm", "The LDAP attribute to use to generate the groups`s ownCloud name." => "Các thuá»™c tÃnh LDAP sá» dụng để tạo các nhóm ownCloud.", +"Base Group Tree" => "Cây nhóm cÆ¡ bản", +"Group-Member association" => "Nhóm thà nh viên Cá»™ng đồng", "in bytes" => "Theo Byte", -"in seconds. A change empties the cache." => "trong và i giây. Má»™t sá»± thay đổi bá»™ nhá»› cache.", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Äể trống tên ngưá»i dùng (mặc định). Nếu không chỉ định thuá»™c tÃnh LDAP/AD", "Help" => "Giúp đỡ" ); diff --git a/apps/user_ldap/l10n/zh_CN.GB2312.php b/apps/user_ldap/l10n/zh_CN.GB2312.php index 8b906aea5ce..91b059afd0b 100644 --- a/apps/user_ldap/l10n/zh_CN.GB2312.php +++ b/apps/user_ldap/l10n/zh_CN.GB2312.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "åˆ é™¤å¤±è´¥", "Host" => "主机", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "您å¯ä»¥å¿½ç•¥åè®®ï¼Œé™¤éžæ‚¨éœ€è¦ SSL。然åŽç”¨ ldaps:// 开头", "Base DN" => "基本判别å", @@ -17,21 +18,21 @@ "Defines the filter to apply, when retrieving groups." => "定义撷å–群组时è¦åº”用的过滤器", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "ä¸èƒ½ä½¿ç”¨å ä½ç¬¦ï¼Œä¾‹å¦‚ \"objectClass=posixGroup\"。", "Port" => "端å£", -"Base User Tree" => "åŸºæœ¬ç”¨æˆ·æ ‘", -"Base Group Tree" => "åŸºæœ¬ç¾¤ç»„æ ‘", -"Group-Member association" => "群组-æˆå‘˜ç»„åˆ", "Use TLS" => "使用 TLS", "Do not use it for SSL connections, it will fail." => "ä¸è¦ä½¿ç”¨å®ƒè¿›è¡Œ SSL 连接,会失败的。", "Case insensitve LDAP server (Windows)" => "大å°å†™ä¸æ•感的 LDAP æœåС噍 (Windows)", "Turn off SSL certificate validation." => "å…³é— SSL è¯ä¹¦æ ¡éªŒã€‚", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "å¦‚æžœåªæœ‰ä½¿ç”¨æ¤é€‰é¡¹æ‰èƒ½è¿žæŽ¥ï¼Œè¯·å¯¼å…¥ LDAP æœåŠ¡å™¨çš„ SSL è¯ä¹¦åˆ°æ‚¨çš„ ownCloud æœåŠ¡å™¨ã€‚", "Not recommended, use for testing only." => "䏿ލè,仅供测试", +"in seconds. A change empties the cache." => "以秒计。修改会清空缓å˜ã€‚", "User Display Name Field" => "用户显示åç§°å—æ®µ", "The LDAP attribute to use to generate the user`s ownCloud name." => "用于生æˆç”¨æˆ·çš„ ownCloud åç§°çš„ LDAP 属性。", +"Base User Tree" => "åŸºæœ¬ç”¨æˆ·æ ‘", "Group Display Name Field" => "群组显示åç§°å—æ®µ", "The LDAP attribute to use to generate the groups`s ownCloud name." => "用于生æˆç¾¤ç»„çš„ ownCloud åç§°çš„ LDAP 属性。", +"Base Group Tree" => "åŸºæœ¬ç¾¤ç»„æ ‘", +"Group-Member association" => "群组-æˆå‘˜ç»„åˆ", "in bytes" => "以å—节计", -"in seconds. A change empties the cache." => "以秒计。修改会清空缓å˜ã€‚", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "用户å请留空 (默认)。å¦åˆ™ï¼Œè¯·æŒ‡å®šä¸€ä¸ª LDAP/AD 属性。", "Help" => "帮助" ); diff --git a/apps/user_ldap/l10n/zh_CN.php b/apps/user_ldap/l10n/zh_CN.php index ed5041eff06..d0c32e94e08 100644 --- a/apps/user_ldap/l10n/zh_CN.php +++ b/apps/user_ldap/l10n/zh_CN.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "åˆ é™¤å¤±è´¥", "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "<b>è¦å‘Šï¼š</b>应用 user_ldap å’Œ user_webdavauth ä¸å…¼å®¹ã€‚您å¯èƒ½é釿œªé¢„料的行为。请垂询您的系统管ç†å‘˜ç¦ç”¨å…¶ä¸ä¸€ä¸ªã€‚", "Host" => "主机", "You can omit the protocol, except you require SSL. Then start with ldaps://" => "å¯ä»¥å¿½ç•¥å议,但如è¦ä½¿ç”¨SSL,则需以ldaps://开头", @@ -18,21 +19,21 @@ "Defines the filter to apply, when retrieving groups." => "定义拉å–ç»„ä¿¡æ¯æ—¶çš„过滤器", "without any placeholder, e.g. \"objectClass=posixGroup\"." => "æ— éœ€å ä½ç¬¦ï¼Œä¾‹å¦‚\"objectClass=posixGroup\"", "Port" => "端å£", -"Base User Tree" => "åŸºç¡€ç”¨æˆ·æ ‘", -"Base Group Tree" => "åŸºç¡€ç»„æ ‘", -"Group-Member association" => "组æˆå‘˜å…³è”", "Use TLS" => "使用TLS", "Do not use it for SSL connections, it will fail." => "ä¸è¦åœ¨SSL链接ä¸ä½¿ç”¨æ¤é€‰é¡¹ï¼Œä¼šå¯¼è‡´å¤±è´¥ã€‚", "Case insensitve LDAP server (Windows)" => "大å°å†™æ•感LDAPæœåС噍(Windows)", "Turn off SSL certificate validation." => "å…³é—SSLè¯ä¹¦éªŒè¯", "If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "如果链接仅在æ¤é€‰é¡¹æ—¶å¯ç”¨ï¼Œåœ¨æ‚¨çš„ownCloudæœåС噍ä¸å¯¼å…¥LDAPæœåŠ¡å™¨çš„SSLè¯ä¹¦ã€‚", "Not recommended, use for testing only." => "æš‚ä¸æŽ¨è,仅供测试", +"in seconds. A change empties the cache." => "以秒计。修改将清空缓å˜ã€‚", "User Display Name Field" => "用户显示åç§°å—æ®µ", "The LDAP attribute to use to generate the user`s ownCloud name." => "用æ¥ç”Ÿæˆç”¨æˆ·çš„ownCloudåç§°çš„ LDAP属性", +"Base User Tree" => "åŸºç¡€ç”¨æˆ·æ ‘", "Group Display Name Field" => "组显示åç§°å—æ®µ", "The LDAP attribute to use to generate the groups`s ownCloud name." => "用æ¥ç”Ÿæˆç»„çš„ownCloudåç§°çš„LDAP属性", +"Base Group Tree" => "åŸºç¡€ç»„æ ‘", +"Group-Member association" => "组æˆå‘˜å…³è”", "in bytes" => "å—节数", -"in seconds. A change empties the cache." => "以秒计。修改将清空缓å˜ã€‚", "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "将用户å称留空(默认)。å¦åˆ™æŒ‡å®šä¸€ä¸ªLDAP/AD属性", "Help" => "帮助" ); diff --git a/apps/user_ldap/l10n/zh_TW.php b/apps/user_ldap/l10n/zh_TW.php index 506ae0f0fbd..9a12bad0747 100644 --- a/apps/user_ldap/l10n/zh_TW.php +++ b/apps/user_ldap/l10n/zh_TW.php @@ -1,4 +1,5 @@ <?php $TRANSLATIONS = array( +"Deletion failed" => "移除失敗", "Host" => "主機", "Password" => "密碼", "Port" => "連接阜", diff --git a/apps/user_ldap/lib/access.php b/apps/user_ldap/lib/access.php index 422e43fc003..68cbe4a5e75 100644 --- a/apps/user_ldap/lib/access.php +++ b/apps/user_ldap/lib/access.php @@ -719,6 +719,50 @@ abstract class Access { return $combinedFilter; } + /** + * @brief creates a filter part for to perfrom search for users + * @param string $search the search term + * @return string the final filter part to use in LDAP searches + */ + public function getFilterPartForUserSearch($search) { + return $this->getFilterPartForSearch($search, $this->connection->ldapAttributesForUserSearch, $this->connection->ldapUserDisplayName); + } + + /** + * @brief creates a filter part for to perfrom search for groups + * @param string $search the search term + * @return string the final filter part to use in LDAP searches + */ + public function getFilterPartForGroupSearch($search) { + return $this->getFilterPartForSearch($search, $this->connection->ldapAttributesForGroupSearch, $this->connection->ldapGroupDisplayName); + } + + /** + * @brief creates a filter part for searches + * @param string $search the search term + * @param string $fallbackAttribute a fallback attribute in case the user + * did not define search attributes. Typically the display name attribute. + * @returns string the final filter part to use in LDAP searches + */ + private function getFilterPartForSearch($search, $searchAttributes, $fallbackAttribute) { + $filter = array(); + $search = empty($search) ? '*' : '*'.$search.'*'; + if(!is_array($searchAttributes) || count($searchAttributes) == 0) { + if(empty($fallbackAttribute)) { + return ''; + } + $filter[] = $fallbackAttribute . '=' . $search; + } else { + foreach($searchAttributes as $attribute) { + $filter[] = $attribute . '=' . $search; + } + } + if(count($filter) == 1) { + return '('.$filter[0].')'; + } + return $this->combineFilterWithOr($filter); + } + public function areCredentialsValid($name, $password) { $name = $this->DNasBaseParameter($name); $testConnection = clone $this->connection; @@ -912,7 +956,7 @@ abstract class Access { $reOffset = ($offset - $limit) < 0 ? 0 : $offset - $limit; //a bit recursive, $offset of 0 is the exit \OCP\Util::writeLog('user_ldap', 'Looking for cookie L/O '.$limit.'/'.$reOffset, \OCP\Util::INFO); - $this->search($filter, $base, $attr, $limit, $reOffset, true); + $this->search($filter, array($base), $attr, $limit, $reOffset, true); $cookie = $this->getPagedResultCookie($base, $filter, $limit, $offset); //still no cookie? obviously, the server does not like us. Let's skip paging efforts. //TODO: remember this, probably does not change in the next request... diff --git a/apps/user_ldap/lib/connection.php b/apps/user_ldap/lib/connection.php index 7046cbbfc78..acc33e047c6 100644 --- a/apps/user_ldap/lib/connection.php +++ b/apps/user_ldap/lib/connection.php @@ -4,7 +4,7 @@ * ownCloud – LDAP Access * * @author Arthur Schiwon - * @copyright 2012 Arthur Schiwon blizzz@owncloud.com + * @copyright 2012, 2013 Arthur Schiwon blizzz@owncloud.com * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE @@ -25,6 +25,7 @@ namespace OCA\user_ldap\lib; class Connection { private $ldapConnectionRes = null; + private $configPrefix; private $configID; private $configured = false; @@ -35,6 +36,8 @@ class Connection { protected $config = array( 'ldapHost' => null, 'ldapPort' => null, + 'ldapBackupHost' => null, + 'ldapBackupPort' => null, 'ldapBase' => null, 'ldapBaseUsers' => null, 'ldapBaseGroups' => null, @@ -48,6 +51,7 @@ class Connection { 'ldapUserFilter' => null, 'ldapGroupFilter' => null, 'ldapGroupDisplayName' => null, + 'ldapGroupMemberAssocAttr' => null, 'ldapLoginFilter' => null, 'ldapQuotaAttribute' => null, 'ldapQuotaDefault' => null, @@ -55,15 +59,24 @@ class Connection { 'ldapCacheTTL' => null, 'ldapUuidAttribute' => null, 'ldapOverrideUuidAttribute' => null, + 'ldapOverrideMainServer' => false, + 'ldapConfigurationActive' => false, + 'ldapAttributesForUserSearch' => null, + 'ldapAttributesForGroupSearch' => null, 'homeFolderNamingRule' => null, 'hasPagedResultSupport' => false, ); - public function __construct($configID = 'user_ldap') { + /** + * @brief Constructor + * @param $configPrefix a string with the prefix for the configkey column (appconfig table) + * @param $configID a string with the value for the appid column (appconfig table) or null for on-the-fly connections + */ + public function __construct($configPrefix = '', $configID = 'user_ldap') { + $this->configPrefix = $configPrefix; $this->configID = $configID; $this->cache = \OC_Cache::getGlobalCache(); $this->config['hasPagedResultSupport'] = (function_exists('ldap_control_paged_result') && function_exists('ldap_control_paged_result_response')); - \OCP\Util::writeLog('user_ldap', 'PHP supports paged results? '.print_r($this->config['hasPagedResultSupport'], true), \OCP\Util::INFO); } public function __destruct() { @@ -84,12 +97,12 @@ class Connection { public function __set($name, $value) { $changed = false; - //omly few options are writable + //only few options are writable if($name == 'ldapUuidAttribute') { \OCP\Util::writeLog('user_ldap', 'Set config ldapUuidAttribute to '.$value, \OCP\Util::DEBUG); $this->config[$name] = $value; if(!empty($this->configID)) { - \OCP\Config::setAppValue($this->configID, 'ldap_uuid_attribute', $value); + \OCP\Config::setAppValue($this->configID, $this->configPrefix.'ldap_uuid_attribute', $value); } $changed = true; } @@ -126,7 +139,7 @@ class Connection { } private function getCacheKey($key) { - $prefix = 'LDAP-'.$this->configID.'-'; + $prefix = 'LDAP-'.$this->configID.'-'.$this->configPrefix.'-'; if(is_null($key)) { return $prefix; } @@ -164,7 +177,8 @@ class Connection { if(!$this->configured) { $this->readConfiguration(); } - if(!$this->config['ldapCacheTTL']) { + if(!$this->config['ldapCacheTTL'] + || !$this->config['ldapConfigurationActive']) { return null; } $key = $this->getCacheKey($key); @@ -176,43 +190,97 @@ class Connection { $this->cache->clear($this->getCacheKey(null)); } + private function getValue($varname) { + static $defaults; + if(is_null($defaults)){ + $defaults = $this->getDefaults(); + } + return \OCP\Config::getAppValue($this->configID, + $this->configPrefix.$varname, + $defaults[$varname]); + } + + private function setValue($varname, $value) { + \OCP\Config::setAppValue($this->configID, + $this->configPrefix.$varname, + $value); + } + /** * Caches the general LDAP configuration. */ private function readConfiguration($force = false) { - \OCP\Util::writeLog('user_ldap', 'Checking conf state: isConfigured? '.print_r($this->configured, true).' isForce? '.print_r($force, true).' configID? '.print_r($this->configID, true), \OCP\Util::DEBUG); if((!$this->configured || $force) && !is_null($this->configID)) { - \OCP\Util::writeLog('user_ldap', 'Reading the configuration', \OCP\Util::DEBUG); - $this->config['ldapHost'] = \OCP\Config::getAppValue($this->configID, 'ldap_host', ''); - $this->config['ldapPort'] = \OCP\Config::getAppValue($this->configID, 'ldap_port', 389); - $this->config['ldapAgentName'] = \OCP\Config::getAppValue($this->configID, 'ldap_dn', ''); - $this->config['ldapAgentPassword'] = base64_decode(\OCP\Config::getAppValue($this->configID, 'ldap_agent_password', '')); - $this->config['ldapBase'] = preg_split('/\r\n|\r|\n/', \OCP\Config::getAppValue($this->configID, 'ldap_base', '')); - $this->config['ldapBaseUsers'] = preg_split('/\r\n|\r|\n/', \OCP\Config::getAppValue($this->configID, 'ldap_base_users', $this->config['ldapBase'])); - $this->config['ldapBaseGroups'] = preg_split('/\r\n|\r|\n/', \OCP\Config::getAppValue($this->configID, 'ldap_base_groups', $this->config['ldapBase'])); - $this->config['ldapTLS'] = \OCP\Config::getAppValue($this->configID, 'ldap_tls', 0); - $this->config['ldapNoCase'] = \OCP\Config::getAppValue($this->configID, 'ldap_nocase', 0); - $this->config['turnOffCertCheck'] = \OCP\Config::getAppValue($this->configID, 'ldap_turn_off_cert_check', 0); - $this->config['ldapUserDisplayName'] = mb_strtolower(\OCP\Config::getAppValue($this->configID, 'ldap_display_name', 'uid'), 'UTF-8'); - $this->config['ldapUserFilter'] = \OCP\Config::getAppValue($this->configID, 'ldap_userlist_filter', 'objectClass=person'); - $this->config['ldapGroupFilter'] = \OCP\Config::getAppValue($this->configID, 'ldap_group_filter', '(objectClass=posixGroup)'); - $this->config['ldapLoginFilter'] = \OCP\Config::getAppValue($this->configID, 'ldap_login_filter', '(uid=%uid)'); - $this->config['ldapGroupDisplayName'] = mb_strtolower(\OCP\Config::getAppValue($this->configID, 'ldap_group_display_name', 'uid'), 'UTF-8'); - $this->config['ldapQuotaAttribute'] = \OCP\Config::getAppValue($this->configID, 'ldap_quota_attr', ''); - $this->config['ldapQuotaDefault'] = \OCP\Config::getAppValue($this->configID, 'ldap_quota_def', ''); - $this->config['ldapEmailAttribute'] = \OCP\Config::getAppValue($this->configID, 'ldap_email_attr', ''); - $this->config['ldapGroupMemberAssocAttr'] = \OCP\Config::getAppValue($this->configID, 'ldap_group_member_assoc_attribute', 'uniqueMember'); - $this->config['ldapIgnoreNamingRules'] = \OCP\Config::getSystemValue('ldapIgnoreNamingRules', false); - $this->config['ldapCacheTTL'] = \OCP\Config::getAppValue($this->configID, 'ldap_cache_ttl', 10*60); - $this->config['ldapUuidAttribute'] = \OCP\Config::getAppValue($this->configID, 'ldap_uuid_attribute', 'auto'); - $this->config['ldapOverrideUuidAttribute'] = \OCP\Config::getAppValue($this->configID, 'ldap_override_uuid_attribute', 0); - $this->config['homeFolderNamingRule'] = \OCP\Config::getAppValue($this->configID, 'home_folder_naming_rule', 'opt:username'); + $defaults = $this->getDefaults(); + $v = 'getValue'; + $this->config['ldapHost'] = $this->$v('ldap_host'); + $this->config['ldapBackupHost'] = $this->$v('ldap_backup_host'); + $this->config['ldapPort'] = $this->$v('ldap_port'); + $this->config['ldapBackupPort'] = $this->$v('ldap_backup_port'); + $this->config['ldapOverrideMainServer'] + = $this->$v('ldap_override_main_server'); + $this->config['ldapAgentName'] = $this->$v('ldap_dn'); + $this->config['ldapAgentPassword'] + = base64_decode($this->$v('ldap_agent_password')); + $rawLdapBase = $this->$v('ldap_base'); + $this->config['ldapBase'] + = preg_split('/\r\n|\r|\n/', $rawLdapBase); + $this->config['ldapBaseUsers'] + = preg_split('/\r\n|\r|\n/', ($this->$v('ldap_base_users'))); + $this->config['ldapBaseGroups'] + = preg_split('/\r\n|\r|\n/', $this->$v('ldap_base_groups')); + unset($rawLdapBase); + $this->config['ldapTLS'] = $this->$v('ldap_tls'); + $this->config['ldapNoCase'] = $this->$v('ldap_nocase'); + $this->config['turnOffCertCheck'] + = $this->$v('ldap_turn_off_cert_check'); + $this->config['ldapUserDisplayName'] + = mb_strtolower($this->$v('ldap_display_name'),'UTF-8'); + $this->config['ldapUserFilter'] + = $this->$v('ldap_userlist_filter'); + $this->config['ldapGroupFilter'] = $this->$v('ldap_group_filter'); + $this->config['ldapLoginFilter'] = $this->$v('ldap_login_filter'); + $this->config['ldapGroupDisplayName'] + = mb_strtolower($this->$v('ldap_group_display_name'), 'UTF-8'); + $this->config['ldapQuotaAttribute'] + = $this->$v('ldap_quota_attr'); + $this->config['ldapQuotaDefault'] + = $this->$v('ldap_quota_def'); + $this->config['ldapEmailAttribute'] + = $this->$v('ldap_email_attr'); + $this->config['ldapGroupMemberAssocAttr'] + = $this->$v('ldap_group_member_assoc_attribute'); + $this->config['ldapIgnoreNamingRules'] + = \OCP\Config::getSystemValue('ldapIgnoreNamingRules', false); + $this->config['ldapCacheTTL'] = $this->$v('ldap_cache_ttl'); + $this->config['ldapUuidAttribute'] + = $this->$v('ldap_uuid_attribute'); + $this->config['ldapOverrideUuidAttribute'] + = $this->$v('ldap_override_uuid_attribute'); + $this->config['homeFolderNamingRule'] + = $this->$v('home_folder_naming_rule'); + $this->config['ldapConfigurationActive'] + = $this->$v('ldap_configuration_active'); + $this->config['ldapAttributesForUserSearch'] + = preg_split('/\r\n|\r|\n/', $this->$v('ldap_attributes_for_user_search')); + $this->config['ldapAttributesForGroupSearch'] + = preg_split('/\r\n|\r|\n/', $this->$v('ldap_attributes_for_group_search')); $this->configured = $this->validateConfiguration(); } } /** + * @return returns an array that maps internal variable names to database fields + */ + private function getConfigTranslationArray() { + static $array = array('ldap_host'=>'ldapHost', 'ldap_port'=>'ldapPort', 'ldap_backup_host'=>'ldapBackupHost', 'ldap_backup_port'=>'ldapBackupPort', 'ldap_override_main_server' => 'ldapOverrideMainServer', 'ldap_dn'=>'ldapAgentName', 'ldap_agent_password'=>'ldapAgentPassword', 'ldap_base'=>'ldapBase', 'ldap_base_users'=>'ldapBaseUsers', 'ldap_base_groups'=>'ldapBaseGroups', 'ldap_userlist_filter'=>'ldapUserFilter', 'ldap_login_filter'=>'ldapLoginFilter', 'ldap_group_filter'=>'ldapGroupFilter', 'ldap_display_name'=>'ldapUserDisplayName', 'ldap_group_display_name'=>'ldapGroupDisplayName', + + 'ldap_tls'=>'ldapTLS', 'ldap_nocase'=>'ldapNoCase', 'ldap_quota_def'=>'ldapQuotaDefault', 'ldap_quota_attr'=>'ldapQuotaAttribute', 'ldap_email_attr'=>'ldapEmailAttribute', 'ldap_group_member_assoc_attribute'=>'ldapGroupMemberAssocAttr', 'ldap_cache_ttl'=>'ldapCacheTTL', 'home_folder_naming_rule' => 'homeFolderNamingRule', 'ldap_turn_off_cert_check' => 'turnOffCertCheck', 'ldap_configuration_active' => 'ldapConfigurationActive', 'ldap_attributes_for_user_search' => 'ldapAttributesForUserSearch', 'ldap_attributes_for_group_search' => 'ldapAttributesForGroupSearch'); + return $array; + } + + /** * @brief set LDAP configuration with values delivered by an array, not read from configuration * @param $config array that holds the config parameters in an associated array * @param &$setParameters optional; array where the set fields will be given to @@ -223,9 +291,7 @@ class Connection { return false; } - $params = array('ldap_host'=>'ldapHost', 'ldap_port'=>'ldapPort', 'ldap_dn'=>'ldapAgentName', 'ldap_agent_password'=>'ldapAgentPassword', 'ldap_base'=>'ldapBase', 'ldap_base_users'=>'ldapBaseUsers', 'ldap_base_groups'=>'ldapBaseGroups', 'ldap_userlist_filter'=>'ldapUserFilter', 'ldap_login_filter'=>'ldapLoginFilter', 'ldap_group_filter'=>'ldapGroupFilter', 'ldap_display_name'=>'ldapUserDisplayName', 'ldap_group_display_name'=>'ldapGroupDisplayName', - - 'ldap_tls'=>'ldapTLS', 'ldap_nocase'=>'ldapNoCase', 'ldap_quota_def'=>'ldapQuotaDefault', 'ldap_quota_attr'=>'ldapQuotaAttribute', 'ldap_email_attr'=>'ldapEmailAttribute', 'ldap_group_member_assoc_attribute'=>'ldapGroupMemberAssocAttr', 'ldap_cache_ttl'=>'ldapCacheTTL', 'home_folder_naming_rule' => 'homeFolderNamingRule'); + $params = $this->getConfigTranslationArray(); foreach($config as $parameter => $value) { if(isset($this->config[$parameter])) { @@ -247,6 +313,71 @@ class Connection { } /** + * @brief saves the current Configuration in the database + */ + public function saveConfiguration() { + $trans = array_flip($this->getConfigTranslationArray()); + foreach($this->config as $key => $value) { + \OCP\Util::writeLog('user_ldap', 'LDAP: storing key '.$key.' value '.$value, \OCP\Util::DEBUG); + switch ($key) { + case 'ldapAgentPassword': + $value = base64_encode($value); + break; + case 'homeFolderNamingRule': + $value = empty($value) ? 'opt:username' : 'attr:'.$value; + break; + case 'ldapBase': + case 'ldapBaseUsers': + case 'ldapBaseGroups': + case 'ldapAttributesForUserSearch': + case 'ldapAttributesForGroupSearch': + if(is_array($value)){ + $value = implode("\n", $value); + } + break; + case 'ldapIgnoreNamingRules': + case 'ldapOverrideUuidAttribute': + case 'ldapUuidAttribute': + case 'hasPagedResultSupport': + continue 2; + } + if(is_null($value)) { + $value = ''; + } + + $this->setValue($trans[$key], $value); + } + $this->clearCache(); + } + + /** + * @brief get the current LDAP configuration + * @return array + */ + public function getConfiguration() { + $this->readConfiguration(); + $trans = $this->getConfigTranslationArray(); + $config = array(); + foreach($trans as $dbKey => $classKey) { + if($classKey == 'homeFolderNamingRule') { + if(strpos($this->config[$classKey], 'opt') === 0) { + $config[$dbKey] = ''; + } else { + $config[$dbKey] = substr($this->config[$classKey], 5); + } + continue; + } else if((strpos($classKey, 'ldapBase') !== false) + || (strpos($classKey, 'ldapAttributes') !== false)) { + $config[$dbKey] = implode("\n", $this->config[$classKey]); + continue; + } + $config[$dbKey] = $this->config[$classKey]; + } + + return $config; + } + + /** * @brief Validates the user specified configuration * @returns true if configuration seems OK, false otherwise */ @@ -264,9 +395,21 @@ class Connection { \OCP\Util::writeLog('user_ldap', 'No group filter is specified, LDAP group feature will not be used.', \OCP\Util::INFO); } if(!in_array($this->config['ldapUuidAttribute'], array('auto', 'entryuuid', 'nsuniqueid', 'objectguid')) && (!is_null($this->configID))) { - \OCP\Config::setAppValue($this->configID, 'ldap_uuid_attribute', 'auto'); + \OCP\Config::setAppValue($this->configID, $this->configPrefix.'ldap_uuid_attribute', 'auto'); \OCP\Util::writeLog('user_ldap', 'Illegal value for the UUID Attribute, reset to autodetect.', \OCP\Util::INFO); } + if(empty($this->config['ldapBackupPort'])) { + //force default + $this->config['ldapBackupPort'] = $this->config['ldapPort']; + } + foreach(array('ldapAttributesForUserSearch', 'ldapAttributesForGroupSearch') as $key) { + if(is_array($this->config[$key]) + && count($this->config[$key]) == 1 + && empty($this->config[$key][0])) { + $this->config[$key] = array(); + } + } + //second step: critical checks. If left empty or filled wrong, set as unconfigured and give a warning. @@ -311,9 +454,50 @@ class Connection { } /** + * @returns an associative array with the default values. Keys are correspond + * to config-value entries in the database table + */ + public function getDefaults() { + return array( + 'ldap_host' => '', + 'ldap_port' => '389', + 'ldap_backup_host' => '', + 'ldap_backup_port' => '', + 'ldap_override_main_server' => '', + 'ldap_dn' => '', + 'ldap_agent_password' => '', + 'ldap_base' => '', + 'ldap_base_users' => '', + 'ldap_base_groups' => '', + 'ldap_userlist_filter' => 'objectClass=person', + 'ldap_login_filter' => 'uid=%uid', + 'ldap_group_filter' => 'objectClass=posixGroup', + 'ldap_display_name' => 'cn', + 'ldap_group_display_name' => 'cn', + 'ldap_tls' => 1, + 'ldap_nocase' => 0, + 'ldap_quota_def' => '', + 'ldap_quota_attr' => '', + 'ldap_email_attr' => '', + 'ldap_group_member_assoc_attribute' => 'uniqueMember', + 'ldap_cache_ttl' => 600, + 'ldap_uuid_attribute' => 'auto', + 'ldap_override_uuid_attribute' => 0, + 'home_folder_naming_rule' => 'opt:username', + 'ldap_turn_off_cert_check' => 0, + 'ldap_configuration_active' => 1, + 'ldap_attributes_for_user_search' => '', + 'ldap_attributes_for_group_search' => '', + ); + } + + /** * Connects and Binds to LDAP */ private function establishConnection() { + if(!$this->config['ldapConfigurationActive']) { + return null; + } static $phpLDAPinstalled = true; if(!$phpLDAPinstalled) { return false; @@ -336,16 +520,40 @@ class Connection { \OCP\Util::writeLog('user_ldap', 'Could not turn off SSL certificate validation.', \OCP\Util::WARN); } } - $this->ldapConnectionRes = ldap_connect($this->config['ldapHost'], $this->config['ldapPort']); - if(ldap_set_option($this->ldapConnectionRes, LDAP_OPT_PROTOCOL_VERSION, 3)) { - if(ldap_set_option($this->ldapConnectionRes, LDAP_OPT_REFERRALS, 0)) { - if($this->config['ldapTLS']) { - ldap_start_tls($this->ldapConnectionRes); + if(!$this->config['ldapOverrideMainServer'] && !$this->getFromCache('overrideMainServer')) { + $this->doConnect($this->config['ldapHost'], $this->config['ldapPort']); + $bindStatus = $this->bind(); + $error = ldap_errno($this->ldapConnectionRes); + } else { + $bindStatus = false; + $error = null; + } + + $error = null; + //if LDAP server is not reachable, try the Backup (Replica!) Server + if((!$bindStatus && ($error == -1)) + || $this->config['ldapOverrideMainServer'] + || $this->getFromCache('overrideMainServer')) { + $this->doConnect($this->config['ldapBackupHost'], $this->config['ldapBackupPort']); + $bindStatus = $this->bind(); + if($bindStatus && $error == -1) { + //when bind to backup server succeeded and failed to main server, + //skip contacting him until next cache refresh + $this->writeToCache('overrideMainServer', true); } - } } + return $bindStatus; + } + } - return $this->bind(); + private function doConnect($host, $port) { + $this->ldapConnectionRes = ldap_connect($host, $port); + if(ldap_set_option($this->ldapConnectionRes, LDAP_OPT_PROTOCOL_VERSION, 3)) { + if(ldap_set_option($this->ldapConnectionRes, LDAP_OPT_REFERRALS, 0)) { + if($this->config['ldapTLS']) { + ldap_start_tls($this->ldapConnectionRes); + } + } } } @@ -353,6 +561,9 @@ class Connection { * Binds to LDAP */ public function bind() { + if(!$this->config['ldapConfigurationActive']) { + return false; + } $ldapLogin = @ldap_bind($this->getConnectionResource(), $this->config['ldapAgentName'], $this->config['ldapAgentPassword']); if(!$ldapLogin) { \OCP\Util::writeLog('user_ldap', 'Bind failed: ' . ldap_errno($this->ldapConnectionRes) . ': ' . ldap_error($this->ldapConnectionRes), \OCP\Util::ERROR); diff --git a/apps/user_ldap/lib/helper.php b/apps/user_ldap/lib/helper.php new file mode 100644 index 00000000000..29ce998dae7 --- /dev/null +++ b/apps/user_ldap/lib/helper.php @@ -0,0 +1,105 @@ +<?php + +/** + * ownCloud – LDAP Helper + * + * @author Arthur Schiwon + * @copyright 2013 Arthur Schiwon blizzz@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ + +namespace OCA\user_ldap\lib; + +class Helper { + + /** + * @brief returns prefixes for each saved LDAP/AD server configuration. + * @param bool optional, whether only active configuration shall be + * retrieved, defaults to false + * @return array with a list of the available prefixes + * + * Configuration prefixes are used to set up configurations for n LDAP or + * AD servers. Since configuration is stored in the database, table + * appconfig under appid user_ldap, the common identifiers in column + * 'configkey' have a prefix. The prefix for the very first server + * configuration is empty. + * Configkey Examples: + * Server 1: ldap_login_filter + * Server 2: s1_ldap_login_filter + * Server 3: s2_ldap_login_filter + * + * The prefix needs to be passed to the constructor of Connection class, + * except the default (first) server shall be connected to. + * + */ + static public function getServerConfigurationPrefixes($activeConfigurations = false) { + $referenceConfigkey = 'ldap_configuration_active'; + + $query = ' + SELECT DISTINCT `configkey` + FROM `*PREFIX*appconfig` + WHERE `configkey` LIKE ? + '; + if($activeConfigurations) { + $query .= ' AND `configvalue` = 1'; + } + $query = \OCP\DB::prepare($query); + + $serverConfigs = $query->execute(array('%'.$referenceConfigkey))->fetchAll(); + $prefixes = array(); + + foreach($serverConfigs as $serverConfig) { + $len = strlen($serverConfig['configkey']) - strlen($referenceConfigkey); + $prefixes[] = substr($serverConfig['configkey'], 0, $len); + } + + return $prefixes; + } + + /** + * @brief deletes a given saved LDAP/AD server configuration. + * @param string the configuration prefix of the config to delete + * @return bool true on success, false otherwise + */ + static public function deleteServerConfiguration($prefix) { + //just to be on the safe side + \OCP\User::checkAdminUser(); + + if(!in_array($prefix, self::getServerConfigurationPrefixes())) { + return false; + } + + $query = \OCP\DB::prepare(' + DELETE + FROM `*PREFIX*appconfig` + WHERE `configkey` LIKE ? + AND `appid` = "user_ldap" + AND `configkey` NOT IN ("enabled", "installed_version", "types", "bgjUpdateGroupsLastRun") + '); + $res = $query->execute(array($prefix.'%')); + + if(\OCP\DB::isError($res)) { + return false; + } + + if($res->numRows() == 0) { + return false; + } + + return true; + } +} + diff --git a/apps/user_ldap/lib/proxy.php b/apps/user_ldap/lib/proxy.php new file mode 100644 index 00000000000..c80e2163475 --- /dev/null +++ b/apps/user_ldap/lib/proxy.php @@ -0,0 +1,104 @@ +<?php + +/** + * ownCloud – LDAP Backend Proxy + * + * @author Arthur Schiwon + * @copyright 2013 Arthur Schiwon blizzz@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ + +namespace OCA\user_ldap\lib; + +abstract class Proxy { + static private $connectors = array(); + + public function __construct() { + $this->cache = \OC_Cache::getGlobalCache(); + } + + private function addConnector($configPrefix) { + self::$connectors[$configPrefix] = new \OCA\user_ldap\lib\Connection($configPrefix); + } + + protected function getConnector($configPrefix) { + if(!isset(self::$connectors[$configPrefix])) { + $this->addConnector($configPrefix); + } + return self::$connectors[$configPrefix]; + } + + protected function getConnectors() { + return self::$connectors; + } + + protected function getUserCacheKey($uid) { + return 'user-'.$uid.'-lastSeenOn'; + } + + protected function getGroupCacheKey($gid) { + return 'group-'.$gid.'-lastSeenOn'; + } + + abstract protected function callOnLastSeenOn($id, $method, $parameters); + abstract protected function walkBackends($id, $method, $parameters); + + /** + * @brief Takes care of the request to the User backend + * @param $uid string, the uid connected to the request + * @param $method string, the method of the user backend that shall be called + * @param $parameters an array of parameters to be passed + * @return mixed, the result of the specified method + */ + protected function handleRequest($id, $method, $parameters) { + if(!$result = $this->callOnLastSeenOn($id, $method, $parameters)) { + $result = $this->walkBackends($id, $method, $parameters); + } + return $result; + } + + private function getCacheKey($key) { + $prefix = 'LDAP-Proxy-'; + if(is_null($key)) { + return $prefix; + } + return $prefix.md5($key); + } + + public function getFromCache($key) { + if(!$this->isCached($key)) { + return null; + } + $key = $this->getCacheKey($key); + + return unserialize(base64_decode($this->cache->get($key))); + } + + public function isCached($key) { + $key = $this->getCacheKey($key); + return $this->cache->hasKey($key); + } + + public function writeToCache($key, $value) { + $key = $this->getCacheKey($key); + $value = base64_encode(serialize($value)); + $this->cache->set($key, $value, '2592000'); + } + + public function clearCache() { + $this->cache->clear($this->getCacheKey(null)); + } +}
\ No newline at end of file diff --git a/apps/user_ldap/settings.php b/apps/user_ldap/settings.php index 58ec8e7f7a4..d5d2f648b38 100644 --- a/apps/user_ldap/settings.php +++ b/apps/user_ldap/settings.php @@ -23,58 +23,46 @@ OC_Util::checkAdminUser(); -$params = array('ldap_host', 'ldap_port', 'ldap_dn', 'ldap_agent_password', 'ldap_base', 'ldap_base_users', 'ldap_base_groups', 'ldap_userlist_filter', 'ldap_login_filter', 'ldap_group_filter', 'ldap_display_name', 'ldap_group_display_name', 'ldap_tls', 'ldap_turn_off_cert_check', 'ldap_nocase', 'ldap_quota_def', 'ldap_quota_attr', 'ldap_email_attr', 'ldap_group_member_assoc_attribute', 'ldap_cache_ttl', 'home_folder_naming_rule'); +$params = array('ldap_host', 'ldap_port', 'ldap_backup_host', + 'ldap_backup_port', 'ldap_override_main_server', 'ldap_dn', + 'ldap_agent_password', 'ldap_base', 'ldap_base_users', + 'ldap_base_groups', 'ldap_userlist_filter', + 'ldap_login_filter', 'ldap_group_filter', 'ldap_display_name', + 'ldap_group_display_name', 'ldap_tls', + 'ldap_turn_off_cert_check', 'ldap_nocase', 'ldap_quota_def', + 'ldap_quota_attr', 'ldap_email_attr', + 'ldap_group_member_assoc_attribute', 'ldap_cache_ttl', + 'home_folder_naming_rule' + ); OCP\Util::addscript('user_ldap', 'settings'); OCP\Util::addstyle('user_ldap', 'settings'); -if ($_POST) { - $clearCache = false; - foreach($params as $param) { - if(isset($_POST[$param])) { - $clearCache = true; - if('ldap_agent_password' == $param) { - OCP\Config::setAppValue('user_ldap', $param, base64_encode($_POST[$param])); - } elseif('home_folder_naming_rule' == $param) { - $value = empty($_POST[$param]) ? 'opt:username' : 'attr:'.$_POST[$param]; - OCP\Config::setAppValue('user_ldap', $param, $value); - } else { - OCP\Config::setAppValue('user_ldap', $param, $_POST[$param]); - } - } - elseif('ldap_tls' == $param) { - // unchecked checkboxes are not included in the post paramters - OCP\Config::setAppValue('user_ldap', $param, 0); - } - elseif('ldap_nocase' == $param) { - OCP\Config::setAppValue('user_ldap', $param, 0); - } - elseif('ldap_turn_off_cert_check' == $param) { - OCP\Config::setAppValue('user_ldap', $param, 0); - } - } - if($clearCache) { - $ldap = new \OCA\user_ldap\lib\Connection('user_ldap'); - $ldap->clearCache(); - } +// fill template +$tmpl = new OCP\Template('user_ldap', 'settings'); + +$prefixes = \OCA\user_ldap\lib\Helper::getServerConfigurationPrefixes(); +$scoHtml = ''; +$i = 1; +$sel = ' selected'; +foreach($prefixes as $prefix) { + $scoHtml .= '<option value="'.$prefix.'"'.$sel.'>'.$i++.'. Server</option>'; + $sel = ''; +} +if(count($prefixes) == 0) { + $scoHtml .= '<option value="" selected>1. Server</option>'; } +$tmpl->assign('serverConfigurationOptions', $scoHtml, false); -// fill template -$tmpl = new OCP\Template( 'user_ldap', 'settings'); -foreach($params as $param) { - $value = OCP\Config::getAppValue('user_ldap', $param, ''); - $tmpl->assign($param, $value); +// assign default values +if(!isset($ldap)) { + $ldap = new \OCA\user_ldap\lib\Connection(); +} +$defaults = $ldap->getDefaults(); +foreach($defaults as $key => $default) { + $tmpl->assign($key.'_default', $default); } -// settings with default values -$tmpl->assign( 'ldap_port', OCP\Config::getAppValue('user_ldap', 'ldap_port', '389')); -$tmpl->assign( 'ldap_display_name', OCP\Config::getAppValue('user_ldap', 'ldap_display_name', 'uid')); -$tmpl->assign( 'ldap_group_display_name', OCP\Config::getAppValue('user_ldap', 'ldap_group_display_name', 'cn')); -$tmpl->assign( 'ldap_group_member_assoc_attribute', OCP\Config::getAppValue('user_ldap', 'ldap_group_member_assoc_attribute', 'uniqueMember')); -$tmpl->assign( 'ldap_agent_password', base64_decode(OCP\Config::getAppValue('user_ldap', 'ldap_agent_password'))); -$tmpl->assign( 'ldap_cache_ttl', OCP\Config::getAppValue('user_ldap', 'ldap_cache_ttl', '600')); -$hfnr = OCP\Config::getAppValue('user_ldap', 'home_folder_naming_rule', 'opt:username'); -$hfnr = ($hfnr == 'opt:username') ? '' : substr($hfnr, strlen('attr:')); -$tmpl->assign( 'home_folder_naming_rule', $hfnr, ''); +// $tmpl->assign(); return $tmpl->fetchPage(); diff --git a/apps/user_ldap/templates/settings.php b/apps/user_ldap/templates/settings.php index b24c6e2f025..eb3840a611b 100644 --- a/apps/user_ldap/templates/settings.php +++ b/apps/user_ldap/templates/settings.php @@ -12,31 +12,54 @@ } ?> <fieldset id="ldapSettings-1"> - <p><label for="ldap_host"><?php echo $l->t('Host');?></label><input type="text" id="ldap_host" name="ldap_host" value="<?php echo $_['ldap_host']; ?>" title="<?php echo $l->t('You can omit the protocol, except you require SSL. Then start with ldaps://');?>"></p> - <p><label for="ldap_base"><?php echo $l->t('Base DN');?></label><textarea id="ldap_base" name="ldap_base" placeholder="<?php echo $l->t('One Base DN per line');?>" title="<?php echo $l->t('You can specify Base DN for users and groups in the Advanced tab');?>"><?php echo $_['ldap_base']; ?></textarea></p> - <p><label for="ldap_dn"><?php echo $l->t('User DN');?></label><input type="text" id="ldap_dn" name="ldap_dn" value="<?php echo $_['ldap_dn']; ?>" title="<?php echo $l->t('The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty.');?>" /></p> - <p><label for="ldap_agent_password"><?php echo $l->t('Password');?></label><input type="password" id="ldap_agent_password" name="ldap_agent_password" value="<?php echo $_['ldap_agent_password']; ?>" title="<?php echo $l->t('For anonymous access, leave DN and Password empty.');?>" /></p> - <p><label for="ldap_login_filter"><?php echo $l->t('User Login Filter');?></label><input type="text" id="ldap_login_filter" name="ldap_login_filter" value="<?php echo $_['ldap_login_filter']; ?>" title="<?php echo $l->t('Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action.');?>" /><br /><small><?php echo $l->t('use %%uid placeholder, e.g. "uid=%%uid"');?></small></p> - <p><label for="ldap_userlist_filter"><?php echo $l->t('User List Filter');?></label><input type="text" id="ldap_userlist_filter" name="ldap_userlist_filter" value="<?php echo $_['ldap_userlist_filter']; ?>" title="<?php echo $l->t('Defines the filter to apply, when retrieving users.');?>" /><br /><small><?php echo $l->t('without any placeholder, e.g. "objectClass=person".');?></small></p> - <p><label for="ldap_group_filter"><?php echo $l->t('Group Filter');?></label><input type="text" id="ldap_group_filter" name="ldap_group_filter" value="<?php echo $_['ldap_group_filter']; ?>" title="<?php echo $l->t('Defines the filter to apply, when retrieving groups.');?>" /><br /><small><?php echo $l->t('without any placeholder, e.g. "objectClass=posixGroup".');?></small></p> + <p><label for="ldap_serverconfig_chooser"><?php echo $l->t('Server configuration');?></label><select id="ldap_serverconfig_chooser" name="ldap_serverconfig_chooser"> + <?php echo $_['serverConfigurationOptions']; ?> + <option value="NEW"><?php echo $l->t('Add Server Configuration');?></option> + </select> + <button id="ldap_action_delete_configuration" name="ldap_action_delete_configuration">Delete Configuration</button> + </p> + <p><label for="ldap_host"><?php echo $l->t('Host');?></label><input type="text" id="ldap_host" name="ldap_host" data-default="<?php echo $_['ldap_host_default']; ?>" title="<?php echo $l->t('You can omit the protocol, except you require SSL. Then start with ldaps://');?>"></p> + <p><label for="ldap_base"><?php echo $l->t('Base DN');?></label><textarea id="ldap_base" name="ldap_base" placeholder="<?php echo $l->t('One Base DN per line');?>" title="<?php echo $l->t('You can specify Base DN for users and groups in the Advanced tab');?>" data-default="<?php echo $_['ldap_base_default']; ?>" ></textarea></p> + <p><label for="ldap_dn"><?php echo $l->t('User DN');?></label><input type="text" id="ldap_dn" name="ldap_dn" data-default="<?php echo $_['ldap_dn_default']; ?>" title="<?php echo $l->t('The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password empty.');?>" /></p> + <p><label for="ldap_agent_password"><?php echo $l->t('Password');?></label><input type="password" id="ldap_agent_password" name="ldap_agent_password" data-default="<?php echo $_['ldap_agent_password_default']; ?>" title="<?php echo $l->t('For anonymous access, leave DN and Password empty.');?>" /></p> + <p><label for="ldap_login_filter"><?php echo $l->t('User Login Filter');?></label><input type="text" id="ldap_login_filter" name="ldap_login_filter" data-default="<?php echo $_['ldap_login_filter_default']; ?>" title="<?php echo $l->t('Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action.');?>" /><br /><small><?php echo $l->t('use %%uid placeholder, e.g. "uid=%%uid"');?></small></p> + <p><label for="ldap_userlist_filter"><?php echo $l->t('User List Filter');?></label><input type="text" id="ldap_userlist_filter" name="ldap_userlist_filter" data-default="<?php echo $_['ldap_userlist_filter_default']; ?>" title="<?php echo $l->t('Defines the filter to apply, when retrieving users.');?>" /><br /><small><?php echo $l->t('without any placeholder, e.g. "objectClass=person".');?></small></p> + <p><label for="ldap_group_filter"><?php echo $l->t('Group Filter');?></label><input type="text" id="ldap_group_filter" name="ldap_group_filter" data-default="<?php echo $_['ldap_group_filter_default']; ?>" title="<?php echo $l->t('Defines the filter to apply, when retrieving groups.');?>" /><br /><small><?php echo $l->t('without any placeholder, e.g. "objectClass=posixGroup".');?></small></p> </fieldset> <fieldset id="ldapSettings-2"> - <p><label for="ldap_port"><?php echo $l->t('Port');?></label><input type="text" id="ldap_port" name="ldap_port" value="<?php echo $_['ldap_port']; ?>" /></p> - <p><label for="ldap_base_users"><?php echo $l->t('Base User Tree');?></label><textarea id="ldap_base_users" name="ldap_base_users" placeholder="<?php echo $l->t('One User Base DN per line');?>" title="<?php echo $l->t('Base User Tree');?>"><?php echo $_['ldap_base_users']; ?></textarea></p> - <p><label for="ldap_base_groups"><?php echo $l->t('Base Group Tree');?></label><textarea id="ldap_base_groups" name="ldap_base_groups" placeholder="<?php echo $l->t('One Group Base DN per line');?>" title="<?php echo $l->t('Base Group Tree');?>"><?php echo $_['ldap_base_groups']; ?></textarea></p> - <p><label for="ldap_group_member_assoc_attribute"><?php echo $l->t('Group-Member association');?></label><select id="ldap_group_member_assoc_attribute" name="ldap_group_member_assoc_attribute"><option value="uniqueMember"<?php if (isset($_['ldap_group_member_assoc_attribute']) && ($_['ldap_group_member_assoc_attribute'] == 'uniqueMember')) echo ' selected'; ?>>uniqueMember</option><option value="memberUid"<?php if (isset($_['ldap_group_member_assoc_attribute']) && ($_['ldap_group_member_assoc_attribute'] == 'memberUid')) echo ' selected'; ?>>memberUid</option><option value="member"<?php if (isset($_['ldap_group_member_assoc_attribute']) && ($_['ldap_group_member_assoc_attribute'] == 'member')) echo ' selected'; ?>>member (AD)</option></select></p> - <p><label for="ldap_tls"><?php echo $l->t('Use TLS');?></label><input type="checkbox" id="ldap_tls" name="ldap_tls" value="1"<?php if ($_['ldap_tls']) echo ' checked'; ?> title="<?php echo $l->t('Do not use it for SSL connections, it will fail.');?>" /></p> - <p><label for="ldap_nocase"><?php echo $l->t('Case insensitve LDAP server (Windows)');?></label> <input type="checkbox" id="ldap_nocase" name="ldap_nocase" value="1"<?php if (isset($_['ldap_nocase']) && ($_['ldap_nocase'])) echo ' checked'; ?>></p> - <p><label for="ldap_turn_off_cert_check"><?php echo $l->t('Turn off SSL certificate validation.');?></label><input type="checkbox" id="ldap_turn_off_cert_check" name="ldap_turn_off_cert_check" title="<?php echo $l->t('If connection only works with this option, import the LDAP server\'s SSL certificate in your ownCloud server.');?>" value="1"<?php if ($_['ldap_turn_off_cert_check']) echo ' checked'; ?>><br/><small><?php echo $l->t('Not recommended, use for testing only.');?></small></p> - <p><label for="ldap_display_name"><?php echo $l->t('User Display Name Field');?></label><input type="text" id="ldap_display_name" name="ldap_display_name" value="<?php echo $_['ldap_display_name']; ?>" title="<?php echo $l->t('The LDAP attribute to use to generate the user`s ownCloud name.');?>" /></p> - <p><label for="ldap_group_display_name"><?php echo $l->t('Group Display Name Field');?></label><input type="text" id="ldap_group_display_name" name="ldap_group_display_name" value="<?php echo $_['ldap_group_display_name']; ?>" title="<?php echo $l->t('The LDAP attribute to use to generate the groups`s ownCloud name.');?>" /></p> - <p><label for="ldap_quota_attr">Quota Field</label><input type="text" id="ldap_quota_attr" name="ldap_quota_attr" value="<?php echo $_['ldap_quota_attr']; ?>" /></p> - <p><label for="ldap_quota_def">Quota Default</label><input type="text" id="ldap_quota_def" name="ldap_quota_def" value="<?php if (isset($_['ldap_quota_def'])) echo $_['ldap_quota_def']; ?>" title="<?php echo $l->t('in bytes');?>" /></p> - <p><label for="ldap_email_attr">Email Field</label><input type="text" id="ldap_email_attr" name="ldap_email_attr" value="<?php echo $_['ldap_email_attr']; ?>" /></p> - <p><label for="ldap_cache_ttl">Cache Time-To-Live</label><input type="text" id="ldap_cache_ttl" name="ldap_cache_ttl" value="<?php echo $_['ldap_cache_ttl']; ?>" title="<?php echo $l->t('in seconds. A change empties the cache.');?>" /></p> - <p><label for="home_folder_naming_rule">User Home Folder Naming Rule</label><input type="text" id="home_folder_naming_rule" name="home_folder_naming_rule" value="<?php echo $_['home_folder_naming_rule']; ?>" title="<?php echo $l->t('Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute.');?>" /></p> + <div id="ldapAdvancedAccordion"> + <h3><?php echo $l->t('Connection Settings');?></h3> + <div> + <p><label for="ldap_configuration_active"><?php echo $l->t('Configuration Active');?></label><input type="checkbox" id="ldap_configuration_active" name="ldap_configuration_active" value="1" data-default="<?php echo $_['ldap_configuration_active_default']; ?>" title="<?php echo $l->t('When unchecked, this configuration will be skipped.');?>" /></p> + <p><label for="ldap_port"><?php echo $l->t('Port');?></label><input type="number" id="ldap_port" name="ldap_port" data-default="<?php echo $_['ldap_port_default']; ?>" /></p> + <p><label for="ldap_backup_host"><?php echo $l->t('Backup (Replica) Host');?></label><input type="text" id="ldap_backup_host" name="ldap_backup_host" data-default="<?php echo $_['ldap_backup_host_default']; ?>" title="<?php echo $l->t('Give an optional backup host. It must be a replica of the main LDAP/AD server.');?>"></p> + <p><label for="ldap_backup_port"><?php echo $l->t('Backup (Replica) Port');?></label><input type="number" id="ldap_backup_port" name="ldap_backup_port" data-default="<?php echo $_['ldap_backup_port_default']; ?>" /></p> + <p><label for="ldap_override_main_server"><?php echo $l->t('Disable Main Server');?></label><input type="checkbox" id="ldap_override_main_server" name="ldap_override_main_server" value="1" data-default="<?php echo $_['ldap_override_main_server_default']; ?>" title="<?php echo $l->t('When switched on, ownCloud will only connect to the replica server.');?>" /></p> + <p><label for="ldap_tls"><?php echo $l->t('Use TLS');?></label><input type="checkbox" id="ldap_tls" name="ldap_tls" value="1" data-default="<?php echo $_['ldap_tls_default']; ?>" title="<?php echo $l->t('Do not use it for SSL connections, it will fail.');?>" /></p> + <p><label for="ldap_nocase"><?php echo $l->t('Case insensitve LDAP server (Windows)');?></label><input type="checkbox" id="ldap_nocase" name="ldap_nocase" data-default="<?php echo $_['ldap_nocase_default']; ?>" value="1"<?php if (isset($_['ldap_nocase']) && ($_['ldap_nocase'])) echo ' checked'; ?>></p> + <p><label for="ldap_turn_off_cert_check"><?php echo $l->t('Turn off SSL certificate validation.');?></label><input type="checkbox" id="ldap_turn_off_cert_check" name="ldap_turn_off_cert_check" title="<?php echo $l->t('If connection only works with this option, import the LDAP server\'s SSL certificate in your ownCloud server.');?>" data-default="<?php echo $_['ldap_turn_off_cert_check_default']; ?>" value="1"><br/><small><?php echo $l->t('Not recommended, use for testing only.');?></small></p> + <p><label for="ldap_cache_ttl">Cache Time-To-Live</label><input type="number" id="ldap_cache_ttl" name="ldap_cache_ttl" title="<?php echo $l->t('in seconds. A change empties the cache.');?>" data-default="<?php echo $_['ldap_cache_ttl_default']; ?>" /></p> + </div> + <h3><?php echo $l->t('Directory Settings');?></h3> + <div> + <p><label for="ldap_display_name"><?php echo $l->t('User Display Name Field');?></label><input type="text" id="ldap_display_name" name="ldap_display_name" data-default="<?php echo $_['ldap_display_name_default']; ?>" title="<?php echo $l->t('The LDAP attribute to use to generate the user`s ownCloud name.');?>" /></p> + <p><label for="ldap_base_users"><?php echo $l->t('Base User Tree');?></label><textarea id="ldap_base_users" name="ldap_base_users" placeholder="<?php echo $l->t('One User Base DN per line');?>" data-default="<?php echo $_['ldap_base_users_default']; ?>" title="<?php echo $l->t('Base User Tree');?>"></textarea></p> + <p><label for="ldap_attributes_for_user_search"><?php echo $l->t('User Search Attributes');?></label><textarea id="ldap_attributes_for_user_search" name="ldap_attributes_for_user_search" placeholder="<?php echo $l->t('Optional; one attribute per line');?>" data-default="<?php echo $_['ldap_attributes_for_user_search_default']; ?>" title="<?php echo $l->t('User Search Attributes');?>"></textarea></p> + <p><label for="ldap_group_display_name"><?php echo $l->t('Group Display Name Field');?></label><input type="text" id="ldap_group_display_name" name="ldap_group_display_name" data-default="<?php echo $_['ldap_group_display_name_default']; ?>" title="<?php echo $l->t('The LDAP attribute to use to generate the groups`s ownCloud name.');?>" /></p> + <p><label for="ldap_base_groups"><?php echo $l->t('Base Group Tree');?></label><textarea id="ldap_base_groups" name="ldap_base_groups" placeholder="<?php echo $l->t('One Group Base DN per line');?>" data-default="<?php echo $_['ldap_base_groups_default']; ?>" title="<?php echo $l->t('Base Group Tree');?>"></textarea></p> + <p><label for="ldap_attributes_for_group_search"><?php echo $l->t('Group Search Attributes');?></label><textarea id="ldap_attributes_for_group_search" name="ldap_attributes_for_group_search" placeholder="<?php echo $l->t('Optional; one attribute per line');?>" data-default="<?php echo $_['ldap_attributes_for_group_search_default']; ?>" title="<?php echo $l->t('Group Search Attributes');?>"></textarea></p> + <p><label for="ldap_group_member_assoc_attribute"><?php echo $l->t('Group-Member association');?></label><select id="ldap_group_member_assoc_attribute" name="ldap_group_member_assoc_attribute" data-default="<?php echo $_['ldap_group_member_assoc_attribute_default']; ?>" ><option value="uniqueMember"<?php if (isset($_['ldap_group_member_assoc_attribute']) && ($_['ldap_group_member_assoc_attribute'] == 'uniqueMember')) echo ' selected'; ?>>uniqueMember</option><option value="memberUid"<?php if (isset($_['ldap_group_member_assoc_attribute']) && ($_['ldap_group_member_assoc_attribute'] == 'memberUid')) echo ' selected'; ?>>memberUid</option><option value="member"<?php if (isset($_['ldap_group_member_assoc_attribute']) && ($_['ldap_group_member_assoc_attribute'] == 'member')) echo ' selected'; ?>>member (AD)</option></select></p> + </div> + <h3><?php echo $l->t('Special Attributes');?></h3> + <div> + <p><label for="ldap_quota_attr">Quota Field</label><input type="text" id="ldap_quota_attr" name="ldap_quota_attr" data-default="<?php echo $_['ldap_quota_attr_default']; ?>"/></p> + <p><label for="ldap_quota_def">Quota Default</label><input type="text" id="ldap_quota_def" name="ldap_quota_def" data-default="<?php echo $_['ldap_quota_def_default']; ?>" title="<?php echo $l->t('in bytes');?>" /></p> + <p><label for="ldap_email_attr">Email Field</label><input type="text" id="ldap_email_attr" name="ldap_email_attr" data-default="<?php echo $_['ldap_email_attr_default']; ?>" /></p> + <p><label for="home_folder_naming_rule">User Home Folder Naming Rule</label><input type="text" id="home_folder_naming_rule" name="home_folder_naming_rule" title="<?php echo $l->t('Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute.');?>" data-default="<?php echo $_['home_folder_naming_rule_default']; ?>" /></p> + </div> + </div> </fieldset> - <input type="submit" value="Save" /> <button id="ldap_action_test_connection" name="ldap_action_test_connection">Test Configuration</button> <a href="http://owncloud.org/support/ldap-backend/" target="_blank"><img src="<?php echo OCP\Util::imagePath('', 'actions/info.png'); ?>" style="height:1.75ex" /> <?php echo $l->t('Help');?></a> + <input id="ldap_submit" type="submit" value="Save" /> <button id="ldap_action_test_connection" name="ldap_action_test_connection">Test Configuration</button> <a href="http://doc.owncloud.org/server/5.0/admin_manual/auth_ldap.html" target="_blank"><img src="<?php echo OCP\Util::imagePath('', 'actions/info.png'); ?>" style="height:1.75ex" /> <?php echo $l->t('Help');?></a> </div> </form> diff --git a/apps/user_ldap/user_ldap.php b/apps/user_ldap/user_ldap.php index b3180e11358..6aa8cd9b83c 100644 --- a/apps/user_ldap/user_ldap.php +++ b/apps/user_ldap/user_ldap.php @@ -116,10 +116,9 @@ class USER_LDAP extends lib\Access implements \OCP\UserInterface { if($limit <= 0) { $limit = null; } - $search = empty($search) ? '*' : '*'.$search.'*'; $filter = $this->combineFilterWithAnd(array( $this->connection->ldapUserFilter, - $this->connection->ldapUserDisplayName.'='.$search + $this->getFilterPartForUserSearch($search) )); \OCP\Util::writeLog('user_ldap', 'getUsers: Options: search '.$search.' limit '.$limit.' offset '.$offset.' Filter: '.$filter, \OCP\Util::DEBUG); diff --git a/apps/user_ldap/user_proxy.php b/apps/user_ldap/user_proxy.php new file mode 100644 index 00000000000..a94be3354fc --- /dev/null +++ b/apps/user_ldap/user_proxy.php @@ -0,0 +1,186 @@ +<?php + +/** + * ownCloud + * + * @author Artuhr Schiwon + * @copyright 2013 Arthur Schiwon blizzz@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ + +namespace OCA\user_ldap; + +class User_Proxy extends lib\Proxy implements \OCP\UserInterface { + private $backends = array(); + private $refBackend = null; + + /** + * @brief Constructor + * @param $serverConfigPrefixes array containing the config Prefixes + */ + public function __construct($serverConfigPrefixes) { + parent::__construct(); + foreach($serverConfigPrefixes as $configPrefix) { + $this->backends[$configPrefix] = new \OCA\user_ldap\USER_LDAP(); + $connector = $this->getConnector($configPrefix); + $this->backends[$configPrefix]->setConnector($connector); + if(is_null($this->refBackend)) { + $this->refBackend = &$this->backends[$configPrefix]; + } + } + } + + /** + * @brief Tries the backends one after the other until a positive result is returned from the specified method + * @param $uid string, the uid connected to the request + * @param $method string, the method of the user backend that shall be called + * @param $parameters an array of parameters to be passed + * @return mixed, the result of the method or false + */ + protected function walkBackends($uid, $method, $parameters) { + $cacheKey = $this->getUserCacheKey($uid); + foreach($this->backends as $configPrefix => $backend) { + if($result = call_user_func_array(array($backend, $method), $parameters)) { + $this->writeToCache($cacheKey, $configPrefix); + return $result; + } + } + return false; + } + + /** + * @brief Asks the backend connected to the server that supposely takes care of the uid from the request. + * @param $uid string, the uid connected to the request + * @param $method string, the method of the user backend that shall be called + * @param $parameters an array of parameters to be passed + * @return mixed, the result of the method or false + */ + protected function callOnLastSeenOn($uid, $method, $parameters) { + $cacheKey = $this->getUserCacheKey($uid); + $prefix = $this->getFromCache($cacheKey); + //in case the uid has been found in the past, try this stored connection first + if(!is_null($prefix)) { + if(isset($this->backends[$prefix])) { + $result = call_user_func_array(array($this->backends[$prefix], $method), $parameters); + if(!$result) { + //not found here, reset cache to null + $this->writeToCache($cacheKey, null); + } + return $result; + } + } + return false; + } + + /** + * @brief Check if backend implements actions + * @param $actions bitwise-or'ed actions + * @returns boolean + * + * Returns the supported actions as int to be + * compared with OC_USER_BACKEND_CREATE_USER etc. + */ + public function implementsActions($actions) { + //it's the same across all our user backends obviously + return $this->refBackend->implementsActions($actions); + } + + /** + * @brief Get a list of all users + * @returns array with all uids + * + * Get a list of all users. + */ + public function getUsers($search = '', $limit = 10, $offset = 0) { + //we do it just as the /OC_User implementation: do not play around with limit and offset but ask all backends + $users = array(); + foreach($this->backends as $backend) { + $backendUsers = $backend->getUsers($search, $limit, $offset); + if (is_array($backendUsers)) { + $users = array_merge($users, $backendUsers); + } + } + return $users; + } + + /** + * @brief check if a user exists + * @param string $uid the username + * @return boolean + */ + public function userExists($uid) { + return $this->handleRequest($uid, 'userExists', array($uid)); + } + + /** + * @brief Check if the password is correct + * @param $uid The username + * @param $password The password + * @returns true/false + * + * Check if the password is correct without logging in the user + */ + public function checkPassword($uid, $password) { + return $this->handleRequest($uid, 'checkPassword', array($uid, $password)); + } + + /** + * @brief get the user's home directory + * @param string $uid the username + * @return boolean + */ + public function getHome($uid) { + return $this->handleRequest($uid, 'getHome', array($uid)); + } + + /** + * @brief get display name of the user + * @param $uid user ID of the user + * @return display name + */ + public function getDisplayName($uid) { + return $this->handleRequest($uid, 'getDisplayName', array($uid)); + } + + /** + * @brief Get a list of all display names + * @returns array with all displayNames (value) and the corresponding uids (key) + * + * Get a list of all display names and user ids. + */ + public function getDisplayNames($search = '', $limit = null, $offset = null) { + //we do it just as the /OC_User implementation: do not play around with limit and offset but ask all backends + $users = array(); + foreach($this->backends as $backend) { + $backendUsers = $backend->getDisplayNames($search, $limit, $offset); + if (is_array($backendUsers)) { + $users = array_merge($users, $backendUsers); + } + } + return $users; + } + + /** + * @brief delete a user + * @param $uid The username of the user to delete + * @returns true/false + * + * Deletes a user + */ + public function deleteUser($uid) { + return false; + } +}
\ No newline at end of file diff --git a/apps/user_webdavauth/appinfo/info.xml b/apps/user_webdavauth/appinfo/info.xml index e51f2e9ec4f..f62f03577e8 100755 --- a/apps/user_webdavauth/appinfo/info.xml +++ b/apps/user_webdavauth/appinfo/info.xml @@ -7,7 +7,7 @@ This app is not compatible to the LDAP user and group backend.</description> <licence>AGPL</licence> <author>Frank Karlitschek</author> - <require>4.9</require> + <require>4.91</require> <shipped>true</shipped> <types> <authentication/> diff --git a/apps/user_webdavauth/l10n/es_AR.php b/apps/user_webdavauth/l10n/es_AR.php index 245a5101341..103c3738e2d 100644 --- a/apps/user_webdavauth/l10n/es_AR.php +++ b/apps/user_webdavauth/l10n/es_AR.php @@ -1,3 +1,5 @@ <?php $TRANSLATIONS = array( -"URL: http://" => "URL: http://" +"WebDAV Authentication" => "Autenticación de WevDAV", +"URL: http://" => "URL: http://", +"ownCloud will send the user credentials to this URL. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials." => "onwCloud enviará las credenciales de usuario a esta URL. Este complemento verifica la respuesta e interpretará los códigos de respuesta HTTP 401 y 403 como credenciales inválidas y todas las otras respuestas como credenciales válidas." ); diff --git a/apps/user_webdavauth/l10n/id.php b/apps/user_webdavauth/l10n/id.php new file mode 100644 index 00000000000..4324ee8ff52 --- /dev/null +++ b/apps/user_webdavauth/l10n/id.php @@ -0,0 +1,5 @@ +<?php $TRANSLATIONS = array( +"WebDAV Authentication" => "Otentikasi WebDAV", +"URL: http://" => "URL: http://", +"ownCloud will send the user credentials to this URL. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials." => "ownCloud akan mengirimkan informasi pengguna ke URL ini. Pengaya akan mengecek respon dan menginterpretasikan kode status HTTP 401 serta 403 sebagai informasi yang keliru, sedangkan respon lainnya dianggap benar." +); diff --git a/apps/user_webdavauth/l10n/ko.php b/apps/user_webdavauth/l10n/ko.php index 245a5101341..578ff35e721 100644 --- a/apps/user_webdavauth/l10n/ko.php +++ b/apps/user_webdavauth/l10n/ko.php @@ -1,3 +1,5 @@ <?php $TRANSLATIONS = array( -"URL: http://" => "URL: http://" +"WebDAV Authentication" => "WebDAV ì¸ì¦", +"URL: http://" => "URL: http://", +"ownCloud will send the user credentials to this URL. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials." => "ownCloudì—서 ì´ URL로 ì‚¬ìš©ìž ì¸ì¦ ì •ë³´ë¥¼ 보냅니다. ì´ í”ŒëŸ¬ê·¸ì¸ì€ ì‘ë‹µì„ í™•ì¸í•˜ì—¬ HTTP ìƒíƒœ 코드 401ì´ë‚˜ 403ì´ ëŒì•„온 ê²½ìš°ì— ìž˜ëª»ëœ ì¸ì¦ ì •ë³´ë¡œ 간주합니다. 다른 ëª¨ë“ ìƒíƒœ 코드는 올바른 ì¸ì¦ ì •ë³´ë¡œ 간주합니다." ); diff --git a/apps/user_webdavauth/l10n/lv.php b/apps/user_webdavauth/l10n/lv.php new file mode 100644 index 00000000000..d0043df9f07 --- /dev/null +++ b/apps/user_webdavauth/l10n/lv.php @@ -0,0 +1,5 @@ +<?php $TRANSLATIONS = array( +"WebDAV Authentication" => "WebDAV autentifikÄcija", +"URL: http://" => "URL: http://", +"ownCloud will send the user credentials to this URL. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials." => "ownCloud sÅ«tÄ«s lietotÄja akreditÄcijas datus uz Å¡o URL. Å is spraudnis pÄrbauda atbildi un interpretÄ“ HTTP statusa kodus 401 un 403 kÄ nederÄ«gus akreditÄcijas datus un visas citas atbildes kÄ derÄ«gus akreditÄcijas datus." +); diff --git a/apps/user_webdavauth/l10n/pt_BR.php b/apps/user_webdavauth/l10n/pt_BR.php index 991c746a221..6ddd00ccc3e 100644 --- a/apps/user_webdavauth/l10n/pt_BR.php +++ b/apps/user_webdavauth/l10n/pt_BR.php @@ -1,3 +1,5 @@ <?php $TRANSLATIONS = array( -"WebDAV URL: http://" => "URL do WebDAV: http://" +"WebDAV Authentication" => "Autenticação WebDAV", +"URL: http://" => "URL: http://", +"ownCloud will send the user credentials to this URL. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials." => "O ownCloud enviará as credenciais do usuário para esta URL. Este plugin verifica a resposta e interpreta o os códigos de status do HTTP 401 e 403 como credenciais inválidas, e todas as outras respostas como credenciais válidas." ); diff --git a/apps/user_webdavauth/l10n/ru_RU.php b/apps/user_webdavauth/l10n/ru_RU.php index 245a5101341..46f74cb972f 100644 --- a/apps/user_webdavauth/l10n/ru_RU.php +++ b/apps/user_webdavauth/l10n/ru_RU.php @@ -1,3 +1,4 @@ <?php $TRANSLATIONS = array( +"WebDAV Authentication" => "WebDAV аутентификациÑ", "URL: http://" => "URL: http://" ); diff --git a/apps/user_webdavauth/l10n/sk_SK.php b/apps/user_webdavauth/l10n/sk_SK.php index 27f84a24f8b..c4e6dfddc7b 100644 --- a/apps/user_webdavauth/l10n/sk_SK.php +++ b/apps/user_webdavauth/l10n/sk_SK.php @@ -1,5 +1,5 @@ <?php $TRANSLATIONS = array( "WebDAV Authentication" => "WebDAV overenie", "URL: http://" => "URL: http://", -"ownCloud will send the user credentials to this URL. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials." => "ownCloud odoÅ¡le použÃvateľské údajena zadanú URL. Plugin skontroluje odpoveÄ a považuje návratovou hodnotu HTTP 401 a 403 za neplatné údaje a vÅ¡etky ostatné hodnoty ako platné prihlasovacie údaje." +"ownCloud will send the user credentials to this URL. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials." => "ownCloud odoÅ¡le použÃvateľské údaje na zadanú URL. Plugin skontroluje odpoveÄ a považuje návratovú hodnotu HTTP 401 a 403 za neplatné údaje a vÅ¡etky ostatné hodnoty ako platné prihlasovacie údaje." ); diff --git a/apps/user_webdavauth/l10n/sr.php b/apps/user_webdavauth/l10n/sr.php new file mode 100644 index 00000000000..518fcbe9be5 --- /dev/null +++ b/apps/user_webdavauth/l10n/sr.php @@ -0,0 +1,5 @@ +<?php $TRANSLATIONS = array( +"WebDAV Authentication" => "WebDAV провера идентитета", +"URL: http://" => "ÐдреÑа: http://", +"ownCloud will send the user credentials to this URL. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials." => "ownCloud ће поÑлати акредитиве кориÑника на ову адреÑу. Овај прикључак проверава одговор и тумачи HTTP ÑтатуÑне кодове 401 и 403 као неиÑправне акредитиве, а Ñве оÑтале одговоре као иÑправне." +); diff --git a/apps/user_webdavauth/settings.php b/apps/user_webdavauth/settings.php index 41d7fa51cd2..7eabb0d48cc 100755 --- a/apps/user_webdavauth/settings.php +++ b/apps/user_webdavauth/settings.php @@ -24,7 +24,9 @@ OC_Util::checkAdminUser(); if($_POST) { - + // CSRF check + OCP\JSON::callCheck(); + if(isset($_POST['webdav_url'])) { OC_CONFIG::setValue('user_webdavauth_url', strip_tags($_POST['webdav_url'])); } diff --git a/apps/user_webdavauth/templates/settings.php b/apps/user_webdavauth/templates/settings.php index 880b77ac959..45f4d81aecf 100755 --- a/apps/user_webdavauth/templates/settings.php +++ b/apps/user_webdavauth/templates/settings.php @@ -2,6 +2,7 @@ <fieldset class="personalblock"> <legend><strong><?php echo $l->t('WebDAV Authentication');?></strong></legend> <p><label for="webdav_url"><?php echo $l->t('URL: http://');?><input type="text" id="webdav_url" name="webdav_url" value="<?php echo $_['webdav_url']; ?>"></label> + <input type="hidden" name="requesttoken" value="<?php echo $_['requesttoken'] ?>" id="requesttoken"> <input type="submit" value="Save" /> <br /><?php echo $l->t('ownCloud will send the user credentials to this URL. This plugin checks the response and will interpret the HTTP statuscodes 401 and 403 as invalid credentials, and all other responses as valid credentials.'); ?> </fieldset> diff --git a/config/config.sample.php b/config/config.sample.php index 78d513c7f23..9ac39c439d4 100644 --- a/config/config.sample.php +++ b/config/config.sample.php @@ -32,12 +32,21 @@ $CONFIG = array( /* Force use of HTTPS connection (true = use HTTPS) */ "forcessl" => false, +/* Blacklist a specific file and disallow the upload of files with this name - WARNING: USE THIS ONLY IF YOU KNOW WHAT YOU ARE DOING. */ +"blacklisted_files" => array('.htaccess'), + /* The automatic hostname detection of ownCloud can fail in certain reverse proxy situations. This option allows to manually override the automatic detection. You can also add a port. For example "www.example.com:88" */ "overwritehost" => "", /* The automatic protocol detection of ownCloud can fail in certain reverse proxy situations. This option allows to manually override the protocol detection. For example "https" */ "overwriteprotocol" => "", +/* The automatic webroot detection of ownCloud can fail in certain reverse proxy situations. This option allows to manually override the automatic detection. For example "/domain.tld/ownCloud" */ +"overwritewebroot" => "", + +/* The automatic detection of ownCloud can fail in certain reverse proxy situations. This option allows to define a manually override condition as regular expression for the remote ip address. For example "^10\.0\.0\.[1-3]$" */ +"overwritecondaddr" => "", + /* A proxy to use to connect to the internet. For example "myproxy.org:88" */ "proxy" => "", @@ -102,6 +111,9 @@ $CONFIG = array( /* Password to use for sendmail mail, depends on mail_smtpauth if this is used */ "mail_smtppassword" => "", +/* How long should ownCloud keep deleted files in the trash bin, default value: 180 days */ +'trashbin_retention_obligation' => 180, + /* Check 3rdparty apps for malicious code fragments */ "appcodechecker" => "", @@ -121,7 +133,7 @@ $CONFIG = array( "remember_login_cookie_lifetime" => 60*60*24*15, /* Custom CSP policy, changing this will overwrite the standard policy */ -"custom_csp_policy" => "default-src \'self\'; script-src \'self\' \'unsafe-eval\'; style-src \'self\' \'unsafe-inline\'; frame-src *; img-src *", +"custom_csp_policy" => "default-src \'self\'; script-src \'self\' \'unsafe-eval\'; style-src \'self\' \'unsafe-inline\'; frame-src *; img-src *; font-src \'self\' data:", /* The directory where the user data is stored, default to data in the owncloud * directory. The sqlite database is also stored here, when sqlite is used. diff --git a/core/css/styles.css b/core/css/styles.css index 7fb800f79e2..19cfad76268 100644 --- a/core/css/styles.css +++ b/core/css/styles.css @@ -16,8 +16,8 @@ body { background:#fefefe; font:normal .8em/1.6em "Lucida Grande", Arial, Verdan /* HEADERS */ -#body-user #header, #body-settings #header { position:fixed; top:0; left:0; right:0; z-index:100; height:2.5em; line-height:2.5em; padding:.5em; background:#1d2d44; -moz-box-shadow:0 0 10px rgba(0, 0, 0, .5), inset 0 -2px 10px #222; -webkit-box-shadow:0 0 10px rgba(0, 0, 0, .5), inset 0 -2px 10px #222; box-shadow:0 0 10px rgba(0, 0, 0, .5), inset 0 -2px 10px #222; } -#body-login #header { margin:-2em auto 0; text-align:center; height:10em; padding:1em 0 .5em; +#body-user #header, #body-settings #header { position:fixed; top:0; left:0; right:0; z-index:100; height:45px; line-height:2.5em; background:#1d2d44; -moz-box-shadow:0 0 10px rgba(0, 0, 0, .5), inset 0 -2px 10px #222; -webkit-box-shadow:0 0 10px rgba(0, 0, 0, .5), inset 0 -2px 10px #222; box-shadow:0 0 10px rgba(0, 0, 0, .5), inset 0 -2px 10px #222; } +#body-login #header { margin: -2em auto 0; text-align:center; height:10em; padding:1em 0 .5em; -moz-box-shadow:0 0 1em rgba(0, 0, 0, .5); -webkit-box-shadow:0 0 1em rgba(0, 0, 0, .5); box-shadow:0 0 1em rgba(0, 0, 0, .5); background:#1d2d44; /* Old browsers */ background:-moz-linear-gradient(top, #35537a 0%, #1d2d42 100%); /* FF3.6+ */ @@ -28,7 +28,7 @@ background:-ms-linear-gradient(top, #35537a 0%,#1d2d42 100%); /* IE10+ */ background:linear-gradient(top, #35537a 0%,#1d2d42 100%); /* W3C */ filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#35537a', endColorstr='#1d2d42',GradientType=0 ); /* IE6-9 */ } -#owncloud { float:left; vertical-align:middle; } +#owncloud { position:absolute; top:0; left:0; padding:6px; padding-bottom:0; } .header-right { float:right; vertical-align:middle; padding:0 0.5em; } .header-right > * { vertical-align:middle; } @@ -53,17 +53,43 @@ input[type="checkbox"]:hover+label, input[type="checkbox"]:focus+label { color:# #quota { cursor:default; } +/* SCROLLING */ +::-webkit-scrollbar { width:8px; } +::-webkit-scrollbar-track-piece { background-color:transparent; } +::-webkit-scrollbar-thumb { background:#ddd; } + + +#show { float: right; position: absolute; right: 1em; top: 0.8em; display:none; } +#login form input[name="show"] + label { background: url("../img/actions/toggle.png") no-repeat; opacity:0.3; +float: right; width: 24px; position: absolute !important; height: 14px; right: 1em; top: 1.25em;} +#login form input[name="show"]:checked + label { background:url("../img/actions/toggle.png") no-repeat; opacity:0.8; } + + + +/* SHOW PASSWORD TOGGLE */ +#show { + position:absolute; right:1em; top:.8em; float:right; + display:none; +} +#login form input[name="show"] + label { + position:absolute !important; height:14px; width:24px; right:1em; top:1.25em; float:right; + background-image:url("../img/actions/toggle.png"); background-repeat:no-repeat; opacity:.3; +} +#login form input[name="show"]:checked + label { opacity:.8; } + + /* BUTTONS */ input[type="submit"], input[type="button"], button, .button, #quota, div.jp-progress, select, .pager li a { width:auto; padding:.4em; - background-color:rgba(230,230,230,.5); font-weight:bold; color:#555; text-shadow:#fff 0 1px 0; border:1px solid #bbb; border:1px solid rgba(180,180,180,.5); cursor:pointer; - -moz-box-shadow:0 1px 1px #fff, 0 1px 1px #fff inset; -webkit-box-shadow:0 1px 1px #fff, 0 1px 1px #fff inset; box-shadow:0 1px 1px #fff, 0 1px 1px #fff inset; + background-color:rgba(240,240,240,.9); font-weight:bold; color:#555; text-shadow:rgba(255,255,255,.9) 0 1px 0; border:1px solid rgba(190,190,190,.9); cursor:pointer; + -moz-box-shadow:0 1px 1px rgba(255,255,255,.9), 0 1px 1px rgba(255,255,255,.9) inset; -webkit-box-shadow:0 1px 1px rgba(255,255,255,.9), 0 1px 1px rgba(255,255,255,.9) inset; box-shadow:0 1px 1px rgba(255,255,255,.9), 0 1px 1px rgba(255,255,255,.9) inset; -moz-border-radius:.5em; -webkit-border-radius:.5em; border-radius:.5em; } input[type="submit"]:hover, input[type="submit"]:focus, input[type="button"]:hover, select:hover, select:focus, select:active, input[type="button"]:focus, .button:hover { - background:rgba(255,255,255,.5); color:#333; + background:rgba(250,250,250,.9); color:#333; } input[type="submit"] img, input[type="button"] img, button img, .button img { cursor:pointer; } +#header .button { border:none; -moz-box-shadow:none; -webkit-box-shadow:none; box-shadow:none; } /* Primary action button, use sparingly */ .primary, input[type="submit"].primary, input[type="button"].primary, button.primary, .button.primary { @@ -88,21 +114,30 @@ input[type="submit"] img, input[type="button"] img, button img, .button img { cu #body-login input[type="text"], #body-login input[type="password"] { width:13em; } #body-login input.login { width:auto; float:right; } #remember_login { margin:.8em .2em 0 1em; } -.searchbox input[type="search"] { font-size:1.2em; padding:.2em .5em .2em 1.5em; background:#fff url('../img/actions/search.svg') no-repeat .5em center; border:0; -moz-border-radius:1em; -webkit-border-radius:1em; border-radius:1em; -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; filter:alpha(opacity=70);opacity:.7; -webkit-transition:opacity 300ms; -moz-transition:opacity 300ms; -o-transition:opacity 300ms; transition:opacity 300ms; } +.searchbox input[type="search"] { font-size:1.2em; padding:.2em .5em .2em 1.5em; background:#fff url('../img/actions/search.svg') no-repeat .5em center; border:0; -moz-border-radius:1em; -webkit-border-radius:1em; border-radius:1em; -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; filter:alpha(opacity=70);opacity:.7; -webkit-transition:opacity 300ms; -moz-transition:opacity 300ms; -o-transition:opacity 300ms; transition:opacity 300ms; margin-top:10px; float:right; } input[type="submit"].enabled { background:#66f866; border:1px solid #5e5; -moz-box-shadow:0 1px 1px #f8f8f8, 0 1px 1px #cfc inset; -webkit-box-shadow:0 1px 1px #f8f8f8, 0 1px 1px #cfc inset; box-shadow:0 1px 1px #f8f8f8, 0 1px 1px #cfc inset; } #select_all{ margin-top:.4em !important;} + /* CONTENT ------------------------------------------------------------------ */ #controls { padding:0 0.5em; width:100%; top:3.5em; height:2.8em; margin:0; background:#f7f7f7; border-bottom:1px solid #eee; position:fixed; z-index:50; -moz-box-shadow:0 -3px 7px #000; -webkit-box-shadow:0 -3px 7px #000; box-shadow:0 -3px 7px #000; } #controls .button { display:inline-block; } -#content { height: 100%; width: 100%; position: relative; } -#content-wrapper { height: 100%; width: 100%; padding-top: 3.5em; padding-left: 12.5em; box-sizing: border-box; -moz-box-sizing: border-box; position: absolute;} -#leftcontent, .leftcontent { position:fixed; top: 0; overflow:auto; width:20em; background:#f8f8f8; border-right:1px solid #ddd; box-sizing: border-box; -moz-box-sizing: border-box; height: 100%; padding-top: 6.4em } + +#content { position:relative; height:100%; width:100%; } +#content-wrapper { + position:absolute; height:100%; width:100%; padding-top:3.5em; padding-left:64px; + -moz-box-sizing:border-box; box-sizing:border-box; +} +#leftcontent, .leftcontent { + position:fixed; overflow:auto; top:0; width:20em; height:100%; + background:#f8f8f8; border-right:1px solid #ddd; + -moz-box-sizing:border-box; box-sizing:border-box; padding-top:6.4em; +} #leftcontent li, .leftcontent li { background:#f8f8f8; padding:.5em .8em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; -webkit-transition:background-color 200ms; -moz-transition:background-color 200ms; -o-transition:background-color 200ms; transition:background-color 200ms; } #leftcontent li:hover, #leftcontent li:active, #leftcontent li.active, .leftcontent li:hover, .leftcontent li:active, .leftcontent li.active { background:#eee; } #leftcontent li.active, .leftcontent li.active { font-weight:bold; } #leftcontent li:hover, .leftcontent li:hover { color:#333; background:#ddd; } #leftcontent a { height:100%; display:block; margin:0; padding:0 1em 0 0; float:left; } -#rightcontent, .rightcontent { position:fixed; top:6.4em; left:32.5em; overflow:auto } +#rightcontent, .rightcontent { position:fixed; top:6.4em; left:24.5em; overflow:auto } /* LOG IN & INSTALLATION ------------------------------------------------------------ */ @@ -126,12 +161,13 @@ input[type="submit"].enabled { background:#66f866; border:1px solid #5e5; -moz-b /* Icons for username and password fields to better recognize them */ #adminlogin, #adminpass, #user, #password { width:11.7em!important; padding-left:1.8em; } -#adminlogin+label, #adminpass+label, #user+label, #password+label { left:2.2em; } #adminlogin+label+img, #adminpass+label+img, #user+label+img, #password+label+img { position:absolute; left:1.25em; top:1.65em; opacity:.3; } #adminpass+label+img, #password+label+img { top:1.1em; } +input[name="password-clone"] { padding-left:1.8em; width:11.7em !important; } +#pass_image { position: absolute; top: 1.2em; left: 1.4em; opacity: 0.3; } /* Nicely grouping input field sets */ @@ -155,7 +191,7 @@ input[type="submit"].enabled { background:#66f866; border:1px solid #5e5; -moz-b /* NEEDED FOR INFIELD LABELS */ p.infield { position:relative; } label.infield { cursor:text !important; top:1.05em; left:.85em; } -#login form label.infield { position:absolute; font-size:19px; color:#aaa; white-space:nowrap; } +#login form label.infield { position:absolute; font-size:19px; color:#aaa; white-space:nowrap; padding-left:1.2em; } #login form input[type="checkbox"]+label { position:relative; margin:0; font-size:1em; text-shadow:#fff 0 1px 0; } #login form .errors { background:#fed7d7; border:1px solid #f00; list-style-indent:inside; margin:0 0 2em; padding:1em; } @@ -177,14 +213,37 @@ fieldset.warning legend { color:#b94a48 !important; } /* NAVIGATION ------------------------------------------------------------- */ -#navigation { position:fixed; top:3.5em; float:left; width:12.5em; padding:0; z-index:75; height:100%; background:#eee; border-right:1px #ccc solid; -moz-box-shadow:-3px 0 7px #000; -webkit-box-shadow:-3px 0 7px #000; box-shadow:-3px 0 7px #000; overflow:hidden;} -#navigation a { display:block; padding:.6em .5em .4em 2.5em; background:#eee 1em center no-repeat; border-bottom:1px solid #ddd; border-top:1px solid #fff; text-decoration:none; font-size:1.2em; color:#666; text-shadow:#f8f8f8 0 1px 0; } -#navigation a.active, #navigation a:hover, #navigation a:focus { background-color:#dbdbdb; border-top:1px solid #d4d4d4; border-bottom:1px solid #ccc; color:#333; } -#navigation a.active { background-color:#ddd; } -#navigation #settings { position:absolute; bottom:3.5em; width:100%; } -#expand { position:relative; z-index:100; margin-bottom:-.5em; padding:.5em 10.1em .7em 1.2em; cursor:pointer; } -#expand+span { position:absolute; z-index:99; margin:-1.7em 0 0 2.5em; font-size:1.2em; color:#666; text-shadow:#f8f8f8 0 1px 0; -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; filter:alpha(opacity=0); opacity:0; -webkit-transition:opacity 300ms; -moz-transition:opacity 300ms; -o-transition:opacity 300ms; transition:opacity 300ms; } -#expand:hover+span, #expand+span:hover { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; cursor:pointer; } +#navigation { + position:fixed; top:3.5em; float:left; width:64px; padding:0; z-index:75; height:100%; + background:#30343a url('../img/noise.png') repeat; border-right:1px #333 solid; + -moz-box-shadow:0 0 7px #000; -webkit-box-shadow:0 0 7px #000; box-shadow:0 0 7px #000; + overflow-x:scroll; +} +#navigation a { + display:block; padding:8px 0 4px; + text-decoration:none; font-size:10px; text-align:center; + color:#fff; text-shadow:#000 0 -1px 0; opacity:.4; + white-space:nowrap; overflow:hidden; text-overflow:ellipsis; // ellipsize long app names +} + #navigation a:hover, #navigation a:focus { opacity:.8; } + #navigation a.active { opacity:1; } + #navigation .icon { display:block; width:32px; height:32px; margin:0 16px 0; } + #navigation .enabled-app:hover, #navigation .enabled-app:focus { opacity:1; } + #navigation .enabled-app img { opacity:0.3; cursor:pointer;} + #navigation .enabled-app a {padding:4px 0 4px; } + #navigation .enabled-app:hover a, #navigation .enabled-app:focus a {opacity:0.8; } + #navigation .enabled-app:hover img, #navigation .enabled-app:focus img {opacity:0.8; } + #navigation li:first-child a { padding-top:16px; } +#settings { float:right; margin-top:7px; color:#bbb; text-shadow:0 -1px 0 #000; } +#expand { padding:15px; cursor:pointer; font-weight:bold; } +#expand:hover, #expand:focus, #expand:active { color:#fff; } +#expand img { opacity:.7; margin-bottom:-2px; } +#expand:hover img, #expand:focus img, #expand:active img { opacity:1; } +#expanddiv { position:absolute; right:0; top:45px; background-color:#444; border-bottom-left-radius:7px; box-shadow: 0 0 20px rgb(29,45,68); z-index:76; } + #expanddiv a { display:block; color:#fff; text-shadow:0 -1px 0 #000; padding:0 8px; opacity:.7; } + #expanddiv a img { margin-bottom:-3px; } + #expanddiv a:hover, #expanddiv a:focus, #expanddiv a:active { opacity:1; } + /* VARIOUS REUSABLE SELECTORS */ .hidden { display:none; } @@ -259,6 +318,7 @@ a.bookmarklet { background-color:#ddd; border:1px solid #ccc; padding:5px;paddin .arrow.down { -webkit-transform:rotate(180deg); -moz-transform:rotate(180deg); -o-transform:rotate(180deg); -ms-transform:rotate(180deg); transform:rotate(180deg); } /* ---- BREADCRUMB ---- */ -div.crumb { float:left; display:block; background:no-repeat right 0; padding:.75em 1.5em 0 1em; height:2.9em; } -div.crumb:first-child { padding-left:1em; } -div.crumb.last { font-weight:bold; } +div.crumb { float:left; display:block; background:url('../img/breadcrumb.svg') no-repeat right 0; padding:.75em 1.5em 0 1em; height:2.9em; } +div.crumb:first-child { padding:10px 20px 10px 5px; } +div.crumb.last { font-weight:bold; background:none; padding-right:10px; } +div.crumb a{ padding: 0.9em 0 0.7em 0; } diff --git a/core/img/actions/caret.png b/core/img/actions/caret.png Binary files differnew file mode 100644 index 00000000000..e0ae969a943 --- /dev/null +++ b/core/img/actions/caret.png diff --git a/core/img/actions/caret.svg b/core/img/actions/caret.svg new file mode 100644 index 00000000000..7bb0c59cde2 --- /dev/null +++ b/core/img/actions/caret.svg @@ -0,0 +1,112 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.0" + width="10" + height="10" + id="svg2403" + inkscape:version="0.48.3.1 r9886" + sodipodi:docname="logout.svg" + inkscape:export-filename="caret.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90"> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="1280" + inkscape:window-height="800" + id="namedview3047" + showgrid="false" + inkscape:zoom="25.279067" + inkscape:cx="3.6223673" + inkscape:cy="6.0978375" + inkscape:window-x="0" + inkscape:window-y="-31" + inkscape:window-maximized="1" + inkscape:current-layer="svg2403" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" /> + <metadata + id="metadata15"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <defs + id="defs2405"> + <linearGradient + x1="11.644068" + y1="2.4988678" + x2="11.644068" + y2="15.00281" + id="linearGradient2392" + xlink:href="#linearGradient3678" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(1.0000001,1.1920928e-8)" /> + <linearGradient + x1="8.4964771" + y1="-0.061573759" + x2="8.4964771" + y2="8.083209" + id="linearGradient2395" + xlink:href="#linearGradient3678" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0526316,0,0,0.9843625,0.5789474,0.06024281)" /> + <linearGradient + id="linearGradient3678"> + <stop + id="stop3680" + style="stop-color:#ffffff;stop-opacity:1" + offset="0" /> + <stop + id="stop3682" + style="stop-color:#e6e6e6;stop-opacity:1" + offset="1" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3678" + id="linearGradient2993" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0526316,0,0,0.9843625,-3.4210526,1.060243)" + x1="8.4964771" + y1="-0.061573759" + x2="8.4964771" + y2="8.083209" /> + </defs> + <path + sodipodi:nodetypes="cccc" + inkscape:connector-curvature="0" + id="path3023" + d="M 1,2 5,10 9,2.011 z" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.5;color:#000000;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:url(#linearGradient2993);fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" + d="M 1,1 5,9 9,1.011 z" + id="path3716" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cccc" /> +</svg> diff --git a/core/img/actions/logout.png b/core/img/actions/logout.png Binary files differindex 37f62543ac2..e2f4b7af12e 100644 --- a/core/img/actions/logout.png +++ b/core/img/actions/logout.png diff --git a/core/img/actions/logout.svg b/core/img/actions/logout.svg index 0281fad43e7..e5edc24895d 100644 --- a/core/img/actions/logout.svg +++ b/core/img/actions/logout.svg @@ -33,7 +33,7 @@ id="namedview3047" showgrid="false" inkscape:zoom="25.279067" - inkscape:cx="5.0341304" + inkscape:cx="-1.6512429" inkscape:cy="6.4537904" inkscape:window-x="0" inkscape:window-y="27" @@ -47,7 +47,7 @@ <dc:format>image/svg+xml</dc:format> <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title></dc:title> + <dc:title /> </cc:Work> </rdf:RDF> </metadata> @@ -164,14 +164,15 @@ y2="15.216674" /> </defs> <path + sodipodi:nodetypes="sccsccsccssscscssscscc" + inkscape:connector-curvature="0" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" + d="m 8.0000634,0 c -0.4714045,0 -0.9610304,0.5419023 -0.95,1 l 0,6 c -0.00747,0.5283126 0.4216346,1 0.95,1 0.5283654,0 0.957472,-0.4716874 0.95,-1 l 0,-6 c 0.014622,-0.605105 -0.4785955,-1 -0.95,-1 z m -3.34375,2.5 c -0.087186,0.019294 -0.1716251,0.050959 -0.25,0.09375 -2.9994999,1.5715133 -3.91842874,4.7978566 -3.125,7.46875 C 2.0747421,12.733393 4.5611725,15 7.9688134,15 11.327833,15 13.846204,12.850562 14.687563,10.21875 15.528922,7.5869378 14.630363,4.3955638 11.562563,2.625 11.128957,2.3713639 10.503661,2.535122 10.250038,2.9687356 9.9964154,3.4023491 10.160192,4.0276401 10.593813,4.28125 c 2.390793,1.3798311 2.882452,3.4944109 2.28125,5.375 -0.601202,1.880589 -2.344037,3.4375 -4.9062496,3.4375 -2.575923,0 -4.297634,-1.650181 -4.875,-3.59375 C 2.5164474,7.5564313 3.0469519,5.451888 5.2813134,4.28125 5.6599659,4.0748887 5.8603711,3.5887067 5.7371222,3.1754605 5.6138734,2.7622144 5.1798937,2.4652349 4.7500634,2.5 4.7188384,2.49846 4.6875384,2.49846 4.6563134,2.5 z" + id="path3781" /> + <path id="path3927" d="m 8.0000634,1 c -0.4714045,0 -0.9610304,0.5419023 -0.95,1 l 0,6 c -0.00747,0.5283126 0.4216346,1 0.95,1 0.5283654,0 0.957472,-0.4716874 0.95,-1 l 0,-6 c 0.014622,-0.605105 -0.4785955,-1 -0.95,-1 z m -3.34375,2.5 c -0.087186,0.019294 -0.1716251,0.050959 -0.25,0.09375 -2.9994999,1.5715133 -3.91842874,4.7978566 -3.125,7.46875 C 2.0747421,13.733393 4.5611725,16 7.9688134,16 11.327833,16 13.846204,13.850562 14.687563,11.21875 15.528922,8.5869378 14.630363,5.3955638 11.562563,3.625 11.128957,3.3713639 10.503661,3.535122 10.250038,3.9687356 9.9964154,4.4023491 10.160192,5.0276401 10.593813,5.28125 c 2.390793,1.3798311 2.882452,3.4944109 2.28125,5.375 -0.601202,1.880589 -2.344037,3.4375 -4.9062496,3.4375 -2.575923,0 -4.297634,-1.650181 -4.875,-3.59375 C 2.5164474,8.5564313 3.0469519,6.451888 5.2813134,5.28125 5.6599659,5.0748887 5.8603711,4.5887067 5.7371222,4.1754605 5.6138734,3.7622144 5.1798937,3.4652349 4.7500634,3.5 4.7188384,3.49846 4.6875384,3.49846 4.6563134,3.5 z" - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.5;color:#000000;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:1;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" inkscape:connector-curvature="0" sodipodi:nodetypes="sccsccsccssscscssscscc" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:url(#linearGradient3942);fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" - d="m 8.0000634,0 c -0.4714045,0 -1.0110304,0.54190231 -1,1 l 0,6 c -0.00747,0.5283126 0.4716346,1 1,1 0.5283654,0 1.007472,-0.4716874 1,-1 l 0,-6 c 0.014622,-0.60510499 -0.5285955,-1 -1,-1 z m -3.34375,2.5 a 0.95009499,0.95009499 0 0 0 -0.25,0.09375 C 1.4068135,4.1652633 0.48788466,7.3916066 1.2813134,10.0625 2.0747421,12.733393 4.5611725,15 7.9688134,15 c 3.3590196,0 5.8773906,-2.149438 6.7187496,-4.78125 0.841359,-2.6318122 -0.0572,-5.8231862 -3.125,-7.59375 a 0.95938009,0.95938009 0 1 0 -0.96875,1.65625 c 2.390793,1.3798311 2.882452,3.4944109 2.28125,5.375 -0.601202,1.880589 -2.344037,3.4375 -4.9062496,3.4375 -2.575923,0 -4.297634,-1.650181 -4.875,-3.59375 -0.577366,-1.9435687 -0.046862,-4.048112 2.1875,-5.21875 A 0.95009499,0.95009499 0 0 0 4.7500634,2.5 a 0.95009499,0.95009499 0 0 0 -0.09375,0 z" - id="path3716" - inkscape:connector-curvature="0" /> </svg> diff --git a/core/img/actions/toggle.png b/core/img/actions/toggle.png Binary files differnew file mode 100644 index 00000000000..6ef3f2227b7 --- /dev/null +++ b/core/img/actions/toggle.png diff --git a/core/img/actions/toggle.svg b/core/img/actions/toggle.svg new file mode 100644 index 00000000000..82a5171477e --- /dev/null +++ b/core/img/actions/toggle.svg @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.1" + x="0px" + y="0px" + width="16px" + height="9px" + viewBox="0 0 16 9" + overflow="visible" + enable-background="new 0 0 16 9" + xml:space="preserve" + id="svg2" + inkscape:version="0.48.3.1 r9886" + sodipodi:docname="eye_all.svg"><metadata + id="metadata12"><rdf:RDF><cc:Work + rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="1920" + inkscape:window-height="1021" + id="namedview10" + showgrid="false" + inkscape:zoom="20.75" + inkscape:cx="8.0963855" + inkscape:cy="4.5" + inkscape:window-x="0" + inkscape:window-y="27" + inkscape:window-maximized="1" + inkscape:current-layer="svg2" /> +<defs + id="defs4"> +</defs> +<path + fill="#575756" + d="M7.999,0C4.89,0,2.073,1.719,0,4.5C2.073,7.281,4.89,9,7.999,9C11.11,9,13.927,7.281,16,4.5 C13.927,1.719,11.108,0,7.999,0z M8,7.5c-1.657,0-3-1.343-3-3s1.343-3,3-3c1.657,0,3,1.343,3,3S9.657,7.5,8,7.5z" + id="path6" + style="fill:#222222;fill-opacity:1" /> +<circle + fill="#575756" + cx="8" + cy="4.501" + r="1.5" + id="circle8" + style="fill:#222222;fill-opacity:1" /> +</svg>
\ No newline at end of file diff --git a/core/img/actions/undelete.png b/core/img/actions/undelete.png Binary files differnew file mode 100644 index 00000000000..d712527ef61 --- /dev/null +++ b/core/img/actions/undelete.png diff --git a/core/img/noise.png b/core/img/noise.png Binary files differnew file mode 100644 index 00000000000..8fdda17b5e3 --- /dev/null +++ b/core/img/noise.png diff --git a/core/img/places/files.png b/core/img/places/files.png Binary files differnew file mode 100644 index 00000000000..9c7ff2642f9 --- /dev/null +++ b/core/img/places/files.png diff --git a/core/img/places/files.svg b/core/img/places/files.svg new file mode 100644 index 00000000000..8ebf861f6d5 --- /dev/null +++ b/core/img/places/files.svg @@ -0,0 +1,128 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="32" + height="32" + id="svg3349" + version="1.1" + inkscape:version="0.48.3.1 r9886" + sodipodi:docname="files.svg" + inkscape:export-filename="files.png" + inkscape:export-xdpi="90" + inkscape:export-ydpi="90"> + <defs + id="defs3351"> + <linearGradient + id="linearGradient3754"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop3756" /> + <stop + style="stop-color:#ffffff;stop-opacity:0.70779222;" + offset="1" + id="stop3758" /> + </linearGradient> + <linearGradient + y2="1013.451" + x2="209.34245" + y1="998.45801" + x1="209.34245" + gradientUnits="userSpaceOnUse" + id="linearGradient3528" + xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-55-2" + inkscape:collect="always" /> + <linearGradient + id="linearGradient3587-6-5-3-4-5-4-0-1-55-2"> + <stop + offset="0" + style="stop-color:#000000;stop-opacity:1" + id="stop3589-9-2-2-3-2-53-4-3-95-4" /> + <stop + offset="1" + style="stop-color:#363636;stop-opacity:1" + id="stop3591-7-4-73-7-9-86-9-3-6-3" /> + </linearGradient> + <linearGradient + id="linearGradient3587-6-5-2-1"> + <stop + id="stop3589-9-2-8-2" + style="stop-color:#000000;stop-opacity:1" + offset="0" /> + <stop + id="stop3591-7-4-0-2" + style="stop-color:#363636;stop-opacity:1" + offset="1" /> + </linearGradient> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="16" + inkscape:cx="9.6005683" + inkscape:cy="17.34375" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" + inkscape:window-width="1280" + inkscape:window-height="773" + inkscape:window-x="0" + inkscape:window-y="-1" + inkscape:window-maximized="1"> + <inkscape:grid + type="xygrid" + id="grid4530" + empspacing="4" + visible="true" + enabled="true" + snapvisiblegridlinesonly="true" + dotted="true" /> + </sodipodi:namedview> + <metadata + id="metadata3354"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(573.14286,110.2963)"> + <path + inkscape:connector-curvature="0" + d="m -570.22204,-108.29572 c -0.50115,0 -0.92082,0.41966 -0.92082,0.92081 l 0,24.157882 c 0,0.51739 0.40324,0.920728 0.92082,0.920728 l 26.15768,0 c 0.51756,0 0.92081,-0.403165 0.92081,-0.920728 l 6.9e-4,-14.154116 c 0,-0.501097 -0.41966,-0.925235 -0.92081,-0.925235 l -21.07897,0 -7e-4,11.004713 c 0,0.480123 -0.52409,0.97706 -1.00422,0.97706 -0.48012,0 -0.99573,-0.496937 -0.99573,-0.97706 l 7e-4,-12.142797 c 0,-0.480124 0.40484,-0.862147 0.88497,-0.862147 l 4.59443,0 14.52051,5.2e-4 -7e-4,-2.95163 c 0,-0.56713 -0.42551,-1.04812 -0.99245,-1.04812 l -13.00724,0 0,-3.07907 c 0,-0.50118 -0.40586,-0.92081 -0.90701,-0.92081 z" + id="path5073" + sodipodi:nodetypes="ccccccccccsccccccccccc" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;display:inline" /> + <path + style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;display:inline" + sodipodi:nodetypes="ccccccccccsccccccccccc" + id="rect3845-5" + d="m -570.22204,-107.2957 c -0.50115,0 -0.92082,0.41966 -0.92082,0.92081 l 0,24.157884 c 0,0.51739 0.40324,0.920728 0.92082,0.920728 l 26.15768,0 c 0.51756,0 0.92081,-0.403165 0.92081,-0.920728 l 6.9e-4,-14.154116 c 0,-0.501097 -0.41966,-0.925235 -0.92081,-0.925235 l -21.07897,0 -7e-4,11.004713 c 0,0.480123 -0.52409,0.97706 -1.00422,0.97706 -0.48012,0 -0.99573,-0.496937 -0.99573,-0.97706 l 7e-4,-12.142797 c 0,-0.480124 0.40484,-0.862143 0.88497,-0.862143 l 4.59443,0 14.52051,5.2e-4 -7e-4,-2.951636 c 0,-0.56713 -0.42551,-1.04812 -0.99245,-1.04812 l -13.00724,0 0,-3.07907 c 0,-0.50118 -0.40586,-0.92081 -0.90701,-0.92081 z" + inkscape:connector-curvature="0" /> + </g> +</svg> diff --git a/core/img/places/home.png b/core/img/places/home.png Binary files differindex c3dbd3e3538..2945b84e868 100644 --- a/core/img/places/home.png +++ b/core/img/places/home.png diff --git a/core/img/places/home.svg b/core/img/places/home.svg index 4b45ef12bcb..a836a5999f0 100644 --- a/core/img/places/home.svg +++ b/core/img/places/home.svg @@ -14,9 +14,9 @@ width="16" height="16" id="svg11300" - inkscape:version="0.48.1 r9760" - sodipodi:docname="help.svg" - inkscape:export-filename="/home/jancborchardt/jancborchardt/ownCloud/icons/help.png" + inkscape:version="0.48.3.1 r9886" + sodipodi:docname="home.svg" + inkscape:export-filename="home.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90"> <metadata @@ -27,7 +27,7 @@ <dc:format>image/svg+xml</dc:format> <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title></dc:title> + <dc:title /> </cc:Work> </rdf:RDF> </metadata> @@ -41,16 +41,16 @@ inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1280" - inkscape:window-height="776" + inkscape:window-height="773" id="namedview24" showgrid="true" showguides="true" inkscape:guide-bbox="true" - inkscape:zoom="22.627418" - inkscape:cx="14.025105" - inkscape:cy="9.2202448" + inkscape:zoom="16.000001" + inkscape:cx="2.7409248" + inkscape:cy="8.4568105" inkscape:window-x="0" - inkscape:window-y="24" + inkscape:window-y="-1" inkscape:window-maximized="1" inkscape:current-layer="g4146"> <inkscape:grid @@ -65,6 +65,17 @@ <defs id="defs3"> <linearGradient + id="linearGradient4085"> + <stop + offset="0" + style="stop-color:#000000;stop-opacity:1" + id="stop4087" /> + <stop + offset="1" + style="stop-color:#363636;stop-opacity:0.7" + id="stop4089" /> + </linearGradient> + <linearGradient id="linearGradient4136"> <stop offset="0" @@ -1743,6 +1754,44 @@ id="linearGradient3475" xlink:href="#linearGradient3587-6-5-26" inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3587-6-5-26" + id="linearGradient4074" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(13.927091,-3.426613)" + x1="-2.4040222" + y1="4.4573336" + x2="-2.4040222" + y2="18.967093" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4085" + id="linearGradient4083" + x1="8" + y1="1" + x2="8" + y2="15.458407" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4085" + id="linearGradient4121" + gradientUnits="userSpaceOnUse" + x1="8" + y1="1" + x2="8" + y2="15.458407" + gradientTransform="translate(-20,0)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4085" + id="linearGradient4436" + x1="8" + y1="1" + x2="8" + y2="15" + gradientUnits="userSpaceOnUse" /> </defs> <g transform="matrix(0.78786264,0,0,0.78786264,-3.1483699,0.44173984)" @@ -1761,19 +1810,10 @@ style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1" /> <g id="g4146"> - <g - id="g4550" - transform="translate(0,-20)"> - <path - inkscape:connector-curvature="0" - d="M 8,22.03072 0,30 l 3,0 0,6 10,0 0,-6 3,0 L 13,26.969459 13,23 l -3.0000001,0 0,1.081152 L 8,22.03072 z" - id="path3887" - style="opacity:0.6;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> - <path - inkscape:connector-curvature="0" - d="M 8,21.03072 0,29 l 3,0 0,6 10,0 0,-6 3,0 L 13,25.969459 13,22 l -3.0000001,0 0,1.081152 L 8,21.03072 z" - id="path3883" - style="opacity:0.7;fill:url(#linearGradient3475);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> - </g> + <path + inkscape:connector-curvature="0" + d="M 8,1.030589 0,9 l 3,0 0,6.0001 10,0 L 13,9 l 3,0 -3,-3.030592 0,-3.969524 -3,0 0,1.081169 -2,-2.050464 z" + id="path3328" + style="fill:url(#linearGradient4436);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;opacity:0.7" /> </g> </svg> diff --git a/core/img/places/music.png b/core/img/places/music.png Binary files differindex 85ee2474cd1..5b71e19ee3c 100644 --- a/core/img/places/music.png +++ b/core/img/places/music.png diff --git a/core/img/places/music.svg b/core/img/places/music.svg index 1f397660970..e8f91f46166 100644 --- a/core/img/places/music.svg +++ b/core/img/places/music.svg @@ -7,1664 +7,67 @@ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - version="1.0" - width="16" - height="16" - id="svg11300" - inkscape:version="0.48.1 r9760" - sodipodi:docname="search.svg" - inkscape:export-filename="/home/jancborchardt/jancborchardt/ownCloud/icons/search.png" + width="32" + height="32" + id="svg4375" + version="1.1" + inkscape:version="0.48.3.1 r9886" + sodipodi:docname="music.svg" + inkscape:export-filename="music.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90"> + <defs + id="defs4377" /> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="11.2" + inkscape:cx="7.9636746" + inkscape:cy="12.572189" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="false" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" + inkscape:window-width="1280" + inkscape:window-height="745" + inkscape:window-x="0" + inkscape:window-y="27" + inkscape:window-maximized="1" /> <metadata - id="metadata26"> + id="metadata4380"> <rdf:RDF> <cc:Work rdf:about=""> <dc:format>image/svg+xml</dc:format> <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title></dc:title> + <dc:title /> </cc:Work> </rdf:RDF> </metadata> - <sodipodi:namedview - pagecolor="#cccccc" - bordercolor="#666666" - borderopacity="1" - objecttolerance="10" - gridtolerance="10" - guidetolerance="10" - inkscape:pageopacity="0" - inkscape:pageshadow="2" - inkscape:window-width="1280" - inkscape:window-height="776" - id="namedview24" - showgrid="true" - showguides="true" - inkscape:guide-bbox="true" - inkscape:zoom="22.627418" - inkscape:cx="-2.2078397" - inkscape:cy="6.5568429" - inkscape:window-x="0" - inkscape:window-y="24" - inkscape:window-maximized="1" - inkscape:current-layer="svg11300"> - <inkscape:grid - type="xygrid" - id="grid4330" - empspacing="5" - dotted="true" - visible="true" - enabled="true" - snapvisiblegridlinesonly="true" /> - </sodipodi:namedview> - <defs - id="defs3"> - <linearGradient - id="linearGradient4136"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1;" - id="stop4138" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop4140" /> - </linearGradient> - <linearGradient - id="linearGradient4303"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop4305" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop4307" /> - </linearGradient> - <linearGradient - id="linearGradient4297"> - <stop - id="stop4299" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4301" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient4115"> - <stop - id="stop4117" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4119" - style="stop-color:#363636;stop-opacity:0.698" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient3785"> - <stop - id="stop3787" - style="stop-color:#b8b8b8;stop-opacity:1" - offset="0" /> - <stop - id="stop3789" - style="stop-color:#878787;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient6954"> - <stop - id="stop6960" - style="stop-color:#f5f5f5;stop-opacity:1" - offset="0" /> - <stop - id="stop6962" - style="stop-color:#d2d2d2;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient3341"> - <stop - id="stop3343" - style="stop-color:white;stop-opacity:1" - offset="0" /> - <stop - id="stop3345" - style="stop-color:white;stop-opacity:0" - offset="1" /> - </linearGradient> - <radialGradient - cx="24.999998" - cy="28.659998" - r="16" - fx="24.999998" - fy="28.659998" - id="radialGradient2856" - xlink:href="#linearGradient6954" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.56186795,0,0,0.15787922,-6.1682604,5.3385209)" /> - <linearGradient - x1="30" - y1="25.084745" - x2="30" - y2="45" - id="linearGradient2858" - xlink:href="#linearGradient3785" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.42808986,0,0,0.42296591,-2.823809,-3.2486024)" /> - <radialGradient - cx="26.375898" - cy="12.31301" - r="8" - fx="26.375898" - fy="12.31301" - id="radialGradient2860" - xlink:href="#linearGradient6954" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.55250164,-0.0426402,0.04315608,0.50971914,-6.3026675,-1.9765067)" /> - <linearGradient - x1="30" - y1="5" - x2="30" - y2="44.678879" - id="linearGradient2862" - xlink:href="#linearGradient3785" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.33685737,0,0,0.32161283,-0.10572085,-0.29529973)" /> - <linearGradient - x1="30" - y1="0.91818392" - x2="30" - y2="25.792814" - id="linearGradient2864" - xlink:href="#linearGradient3341" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.33685737,0,0,0.32161283,-0.10572085,-0.29529973)" /> - <linearGradient - x1="29.955881" - y1="21.86607" - x2="29.955881" - y2="43.144382" - id="linearGradient2866" - xlink:href="#linearGradient3341" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.42808986,0,0,0.42296591,-2.823809,-3.2486024)" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient7308" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.54681372,0,0,0.39376081,3.7325729,-0.29182867)" - x1="34.992828" - y1="0.94087797" - x2="34.992828" - y2="33.955856" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient3796" - x1="8.3635759" - y1="15.028702" - x2="15.937561" - y2="11.00073" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient3798" - x1="6.9951797" - y1="4.7478018" - x2="13.00482" - y2="4.7478018" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient3815" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-5" - id="linearGradient3815-3" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" - gradientUnits="userSpaceOnUse" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-5"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-9" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-0" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-5" - id="linearGradient3831" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" - gradientUnits="userSpaceOnUse" /> - <linearGradient - id="linearGradient3833"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3835" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3837" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient3874" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-2" - id="linearGradient3892-2" - x1="8.7094374" - y1="1.0035814" - x2="8.6826077" - y2="16.052532" - gradientUnits="userSpaceOnUse" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4" /> - </linearGradient> - <linearGradient - gradientTransform="matrix(0.96967712,0,0,0.96967712,0.26437941,-0.96950812)" - y2="16.052532" - x2="8.6826077" - y1="1.0035814" - x1="8.7094374" - gradientUnits="userSpaceOnUse" - id="linearGradient3909" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-2" - inkscape:collect="always" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient3984" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2-1"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1-4" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4-6" /> - </linearGradient> - <linearGradient - gradientTransform="matrix(0.78786264,0,0,0.78786264,-1.5726929,-0.7389112)" - y2="16.052532" - x2="8.6826077" - y1="1.0035814" - x1="8.7094374" - gradientUnits="userSpaceOnUse" - id="linearGradient3909-3" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-2-2" - inkscape:collect="always" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2-2"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1-7" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4-5" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4115-9" - id="linearGradient4113-3" - x1="0.86849999" - y1="13.895414" - x2="0.44923753" - y2="28.776533" - gradientUnits="userSpaceOnUse" /> - <linearGradient - id="linearGradient4115-9"> - <stop - id="stop4117-5" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4119-6" - style="stop-color:#363636;stop-opacity:0.698" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3104" - id="linearGradient3815-4" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.23426255,0,0,0.2859159,18.734419,0.35950872)" - x1="-51.786404" - y1="50.786446" - x2="-51.786404" - y2="2.9062471" /> - <linearGradient - id="linearGradient3104"> - <stop - id="stop3106" - style="stop-color:#aaaaaa;stop-opacity:1" - offset="0" /> - <stop - id="stop3108" - style="stop-color:#c8c8c8;stop-opacity:1" - offset="1" /> - </linearGradient> - <radialGradient - cx="13.138569" - cy="25.625349" - r="13.931416" - fx="13.138569" - fy="25.625349" - id="radialGradient2965" - xlink:href="#linearGradient3690-451" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0,0.92614711,-1.0546317,0,32.402583,-9.3345932)" /> - <linearGradient - id="linearGradient3690-451"> - <stop - id="stop2857" - style="stop-color:#e8e8e8;stop-opacity:1" - offset="0" /> - <stop - id="stop2859" - style="stop-color:#d8d8d8;stop-opacity:1" - offset="0.26238" /> - <stop - id="stop2861" - style="stop-color:#c2c2c2;stop-opacity:1" - offset="0.66093999" /> - <stop - id="stop2863" - style="stop-color:#a5a5a5;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="21.483376" - y1="36.255058" - x2="21.483376" - y2="9.5799999" - id="linearGradient2967" - xlink:href="#linearGradient3603-84" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.55048262,0,0,0.57815823,-3.8262247,-5.2762279)" /> - <linearGradient - id="linearGradient3603-84"> - <stop - id="stop2867" - style="stop-color:#707070;stop-opacity:1" - offset="0" /> - <stop - id="stop2869" - style="stop-color:#9e9e9e;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="11.566265" - y1="22.292103" - x2="15.214532" - y2="33.95525" - id="linearGradient3674-262" - xlink:href="#linearGradient8265-821-176-38-919-66-249-529" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4893617,0,0,0.4893617,1.7131795,22.728095)" /> - <linearGradient - id="linearGradient8265-821-176-38-919-66-249-529"> - <stop - id="stop2873" - style="stop-color:#ffffff;stop-opacity:0.27450982" - offset="0" /> - <stop - id="stop2875" - style="stop-color:#ffffff;stop-opacity:0" - offset="1" /> - </linearGradient> - <linearGradient - x1="24.046366" - y1="11.673002" - x2="24.046366" - y2="34.713669" - id="linearGradient3677-116" - xlink:href="#linearGradient3642-81" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.55048262,0,0,0.57815823,-3.8262247,-5.2762276)" /> - <linearGradient - id="linearGradient3642-81"> - <stop - id="stop2879" - style="stop-color:#ffffff;stop-opacity:1" - offset="0" /> - <stop - id="stop2881" - style="stop-color:#ffffff;stop-opacity:0" - offset="1" /> - </linearGradient> - <linearGradient - y2="34.713669" - x2="24.046366" - y1="11.673002" - x1="24.046366" - gradientTransform="matrix(0.55048262,0,0,0.57815823,-3.8262247,-5.2762276)" - gradientUnits="userSpaceOnUse" - id="linearGradient3037" - xlink:href="#linearGradient3642-81" - inkscape:collect="always" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3155-40" - id="linearGradient8639" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.415777,-0.4174938,0.518983,0.5146192,-15.747227,2.6503673)" - spreadMethod="pad" - x1="23.575972" - y1="25.356892" - x2="23.575972" - y2="31.210939" /> - <linearGradient - id="linearGradient3155-40"> - <stop - id="stop2541" - offset="0" - style="stop-color:#181818;stop-opacity:1;" /> - <stop - style="stop-color:#dbdbdb;stop-opacity:1;" - offset="0.13482948" - id="stop2543" /> - <stop - id="stop2545" - offset="0.20224422" - style="stop-color:#a4a4a4;stop-opacity:1;" /> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0.26965895" - id="stop2547" /> - <stop - id="stop2549" - offset="0.44650277" - style="stop-color:#8d8d8d;stop-opacity:1;" /> - <stop - style="stop-color:#959595;stop-opacity:1;" - offset="0.57114136" - id="stop2551" /> - <stop - id="stop2553" - offset="0.72038066" - style="stop-color:#cecece;stop-opacity:1;" /> - <stop - id="stop2555" - offset="1" - style="stop-color:#181818;stop-opacity:1;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3240-279" - id="linearGradient8641" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.6022679,-17.867764,0.6930272)" - x1="30.037716" - y1="24.989594" - x2="30.037716" - y2="30.000141" /> - <linearGradient - id="linearGradient3240-279"> - <stop - style="stop-color:#565656;stop-opacity:1;" - offset="0" - id="stop2559" /> - <stop - id="stop2561" - offset="0.5" - style="stop-color:#9a9a9a;stop-opacity:1;" /> - <stop - style="stop-color:#545454;stop-opacity:1;" - offset="1" - id="stop2563" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3223-789" - id="linearGradient8643" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.6022679,-17.983472,0.8092126)" - x1="30.037716" - y1="24.989594" - x2="30.037716" - y2="30.000141" /> - <linearGradient - id="linearGradient3223-789"> - <stop - id="stop2567" - offset="0" - style="stop-color:#b1b1b1;stop-opacity:1;" /> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0.5" - id="stop2569" /> - <stop - id="stop2571" - offset="1" - style="stop-color:#8f8f8f;stop-opacity:1;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3240-686" - id="linearGradient8645" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.6022679,-17.465684,0.2892868)" - x1="30.037716" - y1="24.989594" - x2="30.037716" - y2="30.000141" /> - <linearGradient - id="linearGradient3240-686"> - <stop - style="stop-color:#565656;stop-opacity:1;" - offset="0" - id="stop2575" /> - <stop - id="stop2577" - offset="0.5" - style="stop-color:#9a9a9a;stop-opacity:1;" /> - <stop - style="stop-color:#545454;stop-opacity:1;" - offset="1" - id="stop2579" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3223-768" - id="linearGradient8647" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.6022679,-17.581392,0.4054707)" - x1="30.037716" - y1="24.989594" - x2="30.037716" - y2="30.000141" /> - <linearGradient - id="linearGradient3223-768"> - <stop - id="stop2583" - offset="0" - style="stop-color:#b1b1b1;stop-opacity:1;" /> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0.5" - id="stop2585" /> - <stop - id="stop2587" - offset="1" - style="stop-color:#8f8f8f;stop-opacity:1;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3240-907" - id="linearGradient8649" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.6022679,-17.061661,-0.1164056)" - x1="30.037716" - y1="24.989594" - x2="30.037716" - y2="30.000141" /> - <linearGradient - id="linearGradient3240-907"> - <stop - style="stop-color:#565656;stop-opacity:1;" - offset="0" - id="stop2591" /> - <stop - id="stop2593" - offset="0.5" - style="stop-color:#9a9a9a;stop-opacity:1;" /> - <stop - style="stop-color:#545454;stop-opacity:1;" - offset="1" - id="stop2595" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3223-699" - id="linearGradient8651" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.6022679,-17.177369,-2.1969969e-4)" - x1="30.037716" - y1="24.989594" - x2="30.037716" - y2="30.000141" /> - <linearGradient - id="linearGradient3223-699"> - <stop - id="stop2599" - offset="0" - style="stop-color:#b1b1b1;stop-opacity:1;" /> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0.5" - id="stop2601" /> - <stop - id="stop2603" - offset="1" - style="stop-color:#8f8f8f;stop-opacity:1;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3290-678" - id="linearGradient8653" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.602268,-17.636692,0.462492)" - x1="9" - y1="29.056757" - x2="9" - y2="26.02973" /> - <linearGradient - id="linearGradient3290-678"> - <stop - id="stop2607" - offset="0" - style="stop-color:#ece5a5;stop-opacity:1;" /> - <stop - id="stop2609" - offset="1" - style="stop-color:#fcfbf2;stop-opacity:1;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3191-577" - id="linearGradient8655" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.3763801,0.03615261,0.03669995,0.374874,-2.2182805,-1.1331002)" - x1="5.5178981" - y1="37.371799" - x2="9.5220556" - y2="41.391716" /> - <linearGradient - id="linearGradient3191-577"> - <stop - id="stop2613" - offset="0" - style="stop-color:#dbce48;stop-opacity:1;" /> - <stop - id="stop2615" - offset="1" - style="stop-color:#c5b625;stop-opacity:1;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-2-1-0" - id="linearGradient3934-0" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.99998838,0,0,0.99998838,-1.9961264,-41.000004)" - x1="8.7094374" - y1="1.0035814" - x2="8.6826077" - y2="16.052532" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2-1-0"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1-4-9" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4-6-0" /> - </linearGradient> - <linearGradient - y2="16.052532" - x2="8.6826077" - y1="1.0035814" - x1="8.7094374" - gradientTransform="matrix(0.99998838,0,0,0.99998838,-1.9961264,-41.000004)" - gradientUnits="userSpaceOnUse" - id="linearGradient4154-8" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-2-1-0-9" - inkscape:collect="always" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2-1-0-9"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1-4-9-8" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4-6-0-4" /> - </linearGradient> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2-1-0-9-0"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1-4-9-8-3" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4-6-0-4-8" /> - </linearGradient> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2-1-0-3"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1-4-9-3" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4-6-0-6" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5" - id="linearGradient4326" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.6858824,0,0,0.68591053,-5.3691237,-18.974705)" - x1="14.501121" - y1="-1.4095211" - x2="14.152531" - y2="20.074369" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5" - id="linearGradient4328" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.99998838,0,0,0.99998838,-1.9961264,-41.000004)" - x1="8.7094374" - y1="1.0035814" - x2="8.6826077" - y2="16.052532" /> - <linearGradient - x1="-2.4040222" - y1="4.4573336" - x2="-2.4040222" - y2="18.967093" - id="linearGradient3878" - xlink:href="#linearGradient3587-6-5" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(13.927091,-3.4266134)" /> - <linearGradient - id="linearGradient3587-6-5"> - <stop - id="stop3589-9-2" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5" - id="linearGradient4357" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0344828,0,0,1.0344828,8.0707628,-14.513825)" - x1="0.86849999" - y1="13.895414" - x2="0.44923753" - y2="28.776533" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient4405" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-55" - id="linearGradient4413-7" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-55"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-95" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-6" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2" - id="linearGradient4411-3" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - id="linearGradient3587-6-5-2"> - <stop - id="stop3589-9-2-8" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-0" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4" - id="linearGradient4466-9" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.23426255,0,0,0.2859159,18.734419,60.359508)" - x1="-41.553459" - y1="2.2401412" - x2="-41.553459" - y2="54.703121" /> - <linearGradient - id="linearGradient3587-6-5-2-4"> - <stop - id="stop3589-9-2-8-7" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - y2="54.703121" - x2="-41.553459" - y1="2.2401412" - x1="-41.553459" - gradientTransform="matrix(0.21864454,0,0,0.26685422,17.618755,60.402242)" - gradientUnits="userSpaceOnUse" - id="linearGradient4483-3" - xlink:href="#linearGradient3587-6-5-2-4-9" - inkscape:collect="always" /> - <linearGradient - id="linearGradient3587-6-5-2-4-9"> - <stop - id="stop3589-9-2-8-7-2" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-0-3-8" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-55" - id="linearGradient4564" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5" - id="linearGradient4566" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(13.927091,16.573387)" - x1="-2.4040222" - y1="4.4573336" - x2="-2.4040222" - y2="18.967093" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2" - id="linearGradient4578" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-55" - id="linearGradient4580" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3" - id="linearGradient4359-4" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.99998838,0,0,0.99998838,29.038238,-21.358617)" - x1="8.7094374" - y1="1.0035814" - x2="8.6826077" - y2="16.052532" /> - <linearGradient - id="linearGradient3587-6-5-3"> - <stop - id="stop3589-9-2-6" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-5" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3" - id="linearGradient4361-4" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.6858824,0,0,0.68591053,25.66524,-19.333318)" - x1="8.7094374" - y1="1.0035814" - x2="8.6826077" - y2="16.052532" /> - <linearGradient - id="linearGradient4597"> - <stop - id="stop4599" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4601" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - y2="16.052532" - x2="8.6826077" - y1="1.0035814" - x1="8.7094374" - gradientTransform="matrix(0.6858824,0,0,0.68591053,25.66524,-19.333318)" - gradientUnits="userSpaceOnUse" - id="linearGradient4610" - xlink:href="#linearGradient3587-6-5-3" - inkscape:collect="always" /> - <linearGradient - x1="1.3333321" - y1="6.6666665" - x2="1.3333321" - y2="33.333332" - id="linearGradient2422" - xlink:href="#linearGradient3587-6-5-5" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4090909,0,0,0.375,7.4545459,0.5)" /> - <linearGradient - id="linearGradient3587-6-5-5"> - <stop - id="stop3589-9-2-4" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-3" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" - id="linearGradient3189" - xlink:href="#linearGradient3587-6-5-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,7.5,0.5)" /> - <linearGradient - id="linearGradient3587-6-5-8"> - <stop - id="stop3589-9-2-67" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-2" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" - id="linearGradient3203" - xlink:href="#linearGradient3587-6-5-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5000001,0.5)" /> - <linearGradient - id="linearGradient3120"> - <stop - id="stop3122" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3124" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" - id="linearGradient3207" - xlink:href="#linearGradient3587-6-5-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,7.5,7.499999)" /> - <linearGradient - id="linearGradient3127"> - <stop - id="stop3129" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3131" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" - id="linearGradient3211" - xlink:href="#linearGradient3587-6-5-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5,7.5)" /> - <linearGradient - id="linearGradient3134"> - <stop - id="stop3136" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3138" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="11" - y1="6" - x2="11" - y2="17" - id="linearGradient2409" - xlink:href="#linearGradient3587-6-5-1" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.2403101,0,0,0.8988764,10.387597,0.2247191)" /> - <linearGradient - id="linearGradient3587-6-5-1"> - <stop - id="stop3589-9-2-0" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-21" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="40.805084" - y1="5.6271191" - x2="40.805084" - y2="17.627119" - id="linearGradient3206" - xlink:href="#linearGradient3587-8-5" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(-32.805085,-3.6271193)" /> - <linearGradient - id="linearGradient3587-8-5"> - <stop - id="stop3589-2-7" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-3-5" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - y2="17.627119" - x2="40.805084" - y1="5.6271191" - x1="40.805084" - gradientTransform="translate(-32.805085,-3.6271193)" - gradientUnits="userSpaceOnUse" - id="linearGradient3180" - xlink:href="#linearGradient3587-8-5" - inkscape:collect="always" /> - <linearGradient - x1="1.3333321" - y1="6.6666665" - x2="1.3333321" - y2="33.333332" - id="linearGradient2422-1" - xlink:href="#linearGradient3587-6-5-86" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2727273,0,0,0.375,9.636365,1.5)" /> - <linearGradient - id="linearGradient3587-6-5-86"> - <stop - id="stop3589-9-2-65" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-9" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="11" - y1="6" - x2="11" - y2="17" - id="linearGradient2427" - xlink:href="#linearGradient3587-6-5-86" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4651163,0,0,0.3370786,4.3953488,1.5842703)" /> - <linearGradient - id="linearGradient3207-3"> - <stop - id="stop3209" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3211" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="11" - y1="6" - x2="11" - y2="17" - id="linearGradient2436" - xlink:href="#linearGradient3587-6-5-86" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4651163,0,0,0.3370786,4.3953488,9.58427)" /> - <linearGradient - id="linearGradient3214"> - <stop - id="stop3216" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3218" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="11" - y1="6" - x2="11" - y2="17" - id="linearGradient2442" - xlink:href="#linearGradient3587-6-5-86" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4651163,0,0,0.3370786,4.3953488,5.5842706)" /> - <linearGradient - id="linearGradient3221"> - <stop - id="stop3223" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3225" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="1.3333321" - y1="4.9755898" - x2="1.3333321" - y2="37.373981" - id="linearGradient2422-1-0" - xlink:href="#linearGradient3587-6-5-0" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.39871888,0,0,0.3091132,71.812715,15.470662)" /> - <linearGradient - id="linearGradient3587-6-5-0"> - <stop - id="stop3589-9-2-5" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-1" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="46.395508" - y1="12.707516" - x2="46.395508" - y2="38.409042" - id="linearGradient3795-2" - xlink:href="#linearGradient3587-6-5-3-5-7" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(-0.4100229,0,0,0.5447147,28.02322,-5.9219706)" /> - <linearGradient - id="linearGradient3587-6-5-3-5-7"> - <stop - id="stop3589-9-2-2-6-2" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-73-5-1" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient3587-6-5-3-5"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-6" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-5" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-5" - id="linearGradient4872" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(-0.4100229,0,0,0.5447147,19.329265,-26.729116)" - x1="100.77747" - y1="17.859186" - x2="100.77747" - y2="38.055252" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient4894" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5000001,0.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient4900" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,7.5,0.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient4906" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,7.5,7.499999)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient4912" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5,7.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - id="linearGradient3587-6-5-8-6"> - <stop - id="stop3589-9-2-67-3" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-2-3" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient4935"> - <stop - id="stop4937" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4939" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient4942"> - <stop - id="stop4944" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4946" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8-6" - id="linearGradient4912-4" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5,7.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - id="linearGradient4949"> - <stop - id="stop4951" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4953" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient5012" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5,7.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient5015" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,7.5,7.499999)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient5018" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5000001,0.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient5021" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,7.5,0.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4" - id="linearGradient3335" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.21864454,0,0,0.26685422,18.618755,-19.597758)" - x1="-41.553459" - y1="2.2401412" - x2="-41.553459" - y2="54.703121" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4136" - id="linearGradient4134" - x1="9" - y1="0" - x2="9" - y2="15" - gradientUnits="userSpaceOnUse" - spreadMethod="pad" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4136" - id="linearGradient4150" - gradientUnits="userSpaceOnUse" - spreadMethod="pad" - x1="9" - y1="0" - x2="9" - y2="15" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4-6" - id="linearGradient3335-7" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2186487,0,0,0.26685422,76.619476,1.402242)" - x1="-41.553459" - y1="2.2401412" - x2="-41.755585" - y2="47.208389" /> - <linearGradient - id="linearGradient3587-6-5-2-4-6"> - <stop - id="stop3589-9-2-8-7-8" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3-4" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4-6-0" - id="linearGradient3335-7-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2186487,0,0,0.26685422,16.619476,0.402242)" - x1="-41.553459" - y1="2.2401412" - x2="-41.553459" - y2="54.703121" /> - <linearGradient - id="linearGradient3587-6-5-2-4-6-0"> - <stop - id="stop3589-9-2-8-7-8-7" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3-4-7" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4-6-4" - id="linearGradient3335-7-7" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2186487,0,0,0.26685422,16.619476,0.402242)" - x1="-41.553459" - y1="2.2401412" - x2="-41.553459" - y2="54.703121" /> - <linearGradient - id="linearGradient3587-6-5-2-4-6-4"> - <stop - id="stop3589-9-2-8-7-8-2" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3-4-2" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4-6-7" - id="linearGradient3335-7-3" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2186487,0,0,0.26685422,16.619476,1.402242)" - x1="-41.553459" - y1="2.2401412" - x2="-41.755585" - y2="47.208389" /> - <linearGradient - id="linearGradient3587-6-5-2-4-6-7"> - <stop - id="stop3589-9-2-8-7-8-4" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3-4-5" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4-6-2" - id="linearGradient3335-7-1" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2186487,0,0,0.26685422,56.619476,1.4022422)" - x1="-39.421574" - y1="-5.2547116" - x2="-39.421574" - y2="47.208389" /> - <linearGradient - id="linearGradient3587-6-5-2-4-6-2"> - <stop - id="stop3589-9-2-8-7-8-77" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3-4-9" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4136-9" - id="linearGradient4150-0" - gradientUnits="userSpaceOnUse" - spreadMethod="pad" - x1="9" - y1="0" - x2="9" - y2="15" /> - <linearGradient - id="linearGradient4136-9"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1;" - id="stop4138-6" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop4140-3" /> - </linearGradient> - <linearGradient - y2="15" - x2="9" - y1="0" - x1="9" - spreadMethod="pad" - gradientUnits="userSpaceOnUse" - id="linearGradient3374" - xlink:href="#linearGradient4136-9" - inkscape:collect="always" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4136-9" - id="linearGradient3457" - gradientUnits="userSpaceOnUse" - spreadMethod="pad" - x1="9" - y1="0" - x2="9" - y2="15" /> - </defs> <g - transform="matrix(0.78786264,0,0,0.78786264,-3.1483699,0.44173984)" - id="g3743-3" - style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1" /> - <rect - style="color:#000000;fill:#ccc000;fill-opacity:0;fill-rule:nonzero;stroke:none;stroke-width:1px;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" - id="rect3136" - width="163.31035" - height="97.986206" - x="-62.896553" - y="-32.993103" /> - <g - transform="matrix(0.99998873,0,0,0.99998873,-3.996044,-20.001608)" - id="g3743-9-4" - style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1" /> - <g - id="g4146"> + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(581.71429,-2.0764682)"> <path - style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:none" - id="path4031" - d="m 13.36218,1.0010808 c -2.357103,0.379835 -5.5116295,0.770846 -7.8621805,1.1718941 -0.622438,0.303692 -0.482505,1.085702 -0.510043,1.653123 0,2.531942 0,5.063885 0,7.5958261 -1.311726,-0.246608 -2.911355,0.837273 -2.980733,2.553424 -0.113252,1.068438 0.834207,1.998453 1.864482,2.023461 1.844664,0.04478 3.106285,-1.179076 3.126294,-2.726857 -0.02014,-2.599407 0.0057,-5.1998371 0,-7.7996441 0.285577,-0.02115 4.6110295,-0.846503 4.9999995,-0.901457 0,1.947147 0,3.894295 0,5.8414421 -1.146387,-0.274636 -2.6118965,0.478721 -2.9752685,2.017253 -0.15337,0.862385 0.136496,1.944831 1.0115455,2.309984 1.708237,0.784936 4.053268,-0.805037 3.957931,-2.671065 -0.02646,-3.4661721 0.02169,-6.9337631 0,-10.4003062 C 13.949347,1.3424008 13.7286,0.97756684 13.36218,1.0010808 z" + style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" + id="path4291" + d="m -554.98993,2.0786484 c -4.7142,0.75967 -11.02325,1.541691 -15.72435,2.343787 -1.24488,0.607384 -0.96502,2.171403 -1.02008,3.306244 0,5.0638836 0,10.1277666 0,15.1916436 -2.62346,-0.493215 -5.82272,1.674544 -5.96148,5.106844 -0.2265,2.136875 1.66842,3.996904 3.72898,4.04692 3.68932,0.08956 6.21256,-2.358151 6.25258,-5.453711 -0.0402,-5.198808 0.012,-10.399665 0,-15.599277 0.57116,-0.0423 9.22205,-1.6930062 9.99999,-1.8029142 0,3.8942932 0,7.7885872 0,11.6828792 -2.29278,-0.549271 -5.22379,0.957442 -5.95053,4.0345 -0.30674,1.72477 0.273,3.88966 2.0231,4.619966 3.41645,1.569871 8.10651,-1.610073 7.91585,-5.342127 -0.053,-6.932337 0.0434,-13.867516 0,-20.8005996 -0.0898,-0.651515 -0.53122,-1.381183 -1.26406,-1.334155 z" inkscape:connector-curvature="0" /> <path - style="opacity:0.7;fill:url(#linearGradient3457);fill-opacity:1;fill-rule:nonzero;stroke:none" + inkscape:connector-curvature="0" + d="m -554.98993,3.0786486 c -4.7142,0.75967 -11.02325,1.541691 -15.72435,2.343787 -1.24488,0.607384 -0.96502,2.171403 -1.02008,3.306244 0,5.0638834 0,10.1277664 0,15.1916434 -2.62346,-0.493215 -5.82272,1.674544 -5.96148,5.106844 -0.2265,2.136875 1.66842,3.996904 3.72898,4.04692 3.68932,0.08956 6.21256,-2.358151 6.25258,-5.453711 -0.0402,-5.198808 0.012,-10.399665 0,-15.599277 0.57116,-0.0423 9.22205,-1.693006 9.99999,-1.802914 0,3.894293 0,7.788587 0,11.682879 -2.29278,-0.549271 -5.22379,0.957442 -5.95053,4.0345 -0.30674,1.72477 0.273,3.88966 2.0231,4.619966 3.41645,1.569871 8.10651,-1.610073 7.91585,-5.342127 -0.053,-6.932337 0.0434,-13.867516 0,-20.8005994 -0.0898,-0.651515 -0.53122,-1.381183 -1.26406,-1.334155 z" id="path4031-1" - d="m 13.36218,0.00108226 c -2.357103,0.379835 -5.5116293,0.770846 -7.8621803,1.17189404 -0.6224381,0.303692 -0.4825051,1.085702 -0.5100431,1.653123 0,2.531942 0,5.063885 0,7.5958257 -1.3117261,-0.246608 -2.9113551,0.837272 -2.9807331,2.553423 -0.113252,1.068438 0.834207,1.998453 1.864482,2.023461 1.8446642,0.04478 3.1062852,-1.179076 3.1262942,-2.726857 -0.02014,-2.5994053 0.0057,-5.1998357 0,-7.7996427 0.285577,-0.02115 4.6110293,-0.846503 4.9999993,-0.901457 0,1.947147 0,3.894295 0,5.8414424 -1.146387,-0.274636 -2.6118963,0.478721 -2.9752683,2.0172513 -0.15337,0.862385 0.136496,1.944831 1.0115453,2.309984 1.708237,0.784936 4.053268,-0.805037 3.957931,-2.671065 -0.02646,-3.4661707 0.02169,-6.9337617 0,-10.40030474 -0.04486,-0.325758 -0.265607,-0.69059202 -0.632027,-0.667078 z" - inkscape:connector-curvature="0" /> + style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> </g> </svg> diff --git a/core/img/places/picture.png b/core/img/places/picture.png Binary files differindex 9abcd09722c..a278240a6d6 100644 --- a/core/img/places/picture.png +++ b/core/img/places/picture.png diff --git a/core/img/places/picture.svg b/core/img/places/picture.svg index 26c3d6312c2..aba68e62063 100644 --- a/core/img/places/picture.svg +++ b/core/img/places/picture.svg @@ -7,1691 +7,69 @@ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - version="1.0" - width="16" - height="16" - id="svg11300" - inkscape:version="0.48.1 r9760" - sodipodi:docname="audio.svg" - inkscape:export-filename="/home/jancborchardt/jancborchardt/ownCloud/icons/audio.png" + width="32" + height="32" + id="svg4375" + version="1.1" + inkscape:version="0.48.3.1 r9886" + sodipodi:docname="picture.svg" + inkscape:export-filename="picture.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90"> + <defs + id="defs4377" /> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="11.2" + inkscape:cx="13.989783" + inkscape:cy="8.9886524" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="false" + fit-margin-top="0" + fit-margin-left="0" + fit-margin-right="0" + fit-margin-bottom="0" + inkscape:window-width="1280" + inkscape:window-height="745" + inkscape:window-x="0" + inkscape:window-y="27" + inkscape:window-maximized="1" /> <metadata - id="metadata26"> + id="metadata4380"> <rdf:RDF> <cc:Work rdf:about=""> <dc:format>image/svg+xml</dc:format> <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title></dc:title> + <dc:title /> </cc:Work> </rdf:RDF> </metadata> - <sodipodi:namedview - pagecolor="#cccccc" - bordercolor="#666666" - borderopacity="1" - objecttolerance="10" - gridtolerance="10" - guidetolerance="10" - inkscape:pageopacity="0" - inkscape:pageshadow="2" - inkscape:window-width="1280" - inkscape:window-height="776" - id="namedview24" - showgrid="true" - showguides="true" - inkscape:guide-bbox="true" - inkscape:zoom="22.627418" - inkscape:cx="14.025105" - inkscape:cy="9.2202448" - inkscape:window-x="0" - inkscape:window-y="24" - inkscape:window-maximized="1" - inkscape:current-layer="g4146"> - <inkscape:grid - type="xygrid" - id="grid4330" - empspacing="5" - dotted="true" - visible="true" - enabled="true" - snapvisiblegridlinesonly="true" /> - </sodipodi:namedview> - <defs - id="defs3"> - <linearGradient - id="linearGradient4136"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1;" - id="stop4138" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop4140" /> - </linearGradient> - <linearGradient - id="linearGradient4303"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop4305" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop4307" /> - </linearGradient> - <linearGradient - id="linearGradient4297"> - <stop - id="stop4299" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4301" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient4115"> - <stop - id="stop4117" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4119" - style="stop-color:#363636;stop-opacity:0.698" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient3785"> - <stop - id="stop3787" - style="stop-color:#b8b8b8;stop-opacity:1" - offset="0" /> - <stop - id="stop3789" - style="stop-color:#878787;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient6954"> - <stop - id="stop6960" - style="stop-color:#f5f5f5;stop-opacity:1" - offset="0" /> - <stop - id="stop6962" - style="stop-color:#d2d2d2;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient3341"> - <stop - id="stop3343" - style="stop-color:white;stop-opacity:1" - offset="0" /> - <stop - id="stop3345" - style="stop-color:white;stop-opacity:0" - offset="1" /> - </linearGradient> - <radialGradient - cx="24.999998" - cy="28.659998" - r="16" - fx="24.999998" - fy="28.659998" - id="radialGradient2856" - xlink:href="#linearGradient6954" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.56186795,0,0,0.15787922,-6.1682604,5.3385209)" /> - <linearGradient - x1="30" - y1="25.084745" - x2="30" - y2="45" - id="linearGradient2858" - xlink:href="#linearGradient3785" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.42808986,0,0,0.42296591,-2.823809,-3.2486024)" /> - <radialGradient - cx="26.375898" - cy="12.31301" - r="8" - fx="26.375898" - fy="12.31301" - id="radialGradient2860" - xlink:href="#linearGradient6954" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.55250164,-0.0426402,0.04315608,0.50971914,-6.3026675,-1.9765067)" /> - <linearGradient - x1="30" - y1="5" - x2="30" - y2="44.678879" - id="linearGradient2862" - xlink:href="#linearGradient3785" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.33685737,0,0,0.32161283,-0.10572085,-0.29529973)" /> - <linearGradient - x1="30" - y1="0.91818392" - x2="30" - y2="25.792814" - id="linearGradient2864" - xlink:href="#linearGradient3341" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.33685737,0,0,0.32161283,-0.10572085,-0.29529973)" /> - <linearGradient - x1="29.955881" - y1="21.86607" - x2="29.955881" - y2="43.144382" - id="linearGradient2866" - xlink:href="#linearGradient3341" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.42808986,0,0,0.42296591,-2.823809,-3.2486024)" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient7308" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.54681372,0,0,0.39376081,3.7325729,-0.29182867)" - x1="34.992828" - y1="0.94087797" - x2="34.992828" - y2="33.955856" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient3796" - x1="8.3635759" - y1="15.028702" - x2="15.937561" - y2="11.00073" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient3798" - x1="6.9951797" - y1="4.7478018" - x2="13.00482" - y2="4.7478018" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient3815" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-5" - id="linearGradient3815-3" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" - gradientUnits="userSpaceOnUse" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-5"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-9" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-0" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-5" - id="linearGradient3831" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" - gradientUnits="userSpaceOnUse" /> - <linearGradient - id="linearGradient3833"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3835" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3837" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient3874" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-2" - id="linearGradient3892-2" - x1="8.7094374" - y1="1.0035814" - x2="8.6826077" - y2="16.052532" - gradientUnits="userSpaceOnUse" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4" /> - </linearGradient> - <linearGradient - gradientTransform="matrix(0.96967712,0,0,0.96967712,0.26437941,-0.96950812)" - y2="16.052532" - x2="8.6826077" - y1="1.0035814" - x1="8.7094374" - gradientUnits="userSpaceOnUse" - id="linearGradient3909" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-2" - inkscape:collect="always" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient3984" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2-1"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1-4" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4-6" /> - </linearGradient> - <linearGradient - gradientTransform="matrix(0.78786264,0,0,0.78786264,-1.5726929,-0.7389112)" - y2="16.052532" - x2="8.6826077" - y1="1.0035814" - x1="8.7094374" - gradientUnits="userSpaceOnUse" - id="linearGradient3909-3" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-2-2" - inkscape:collect="always" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2-2"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1-7" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4-5" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4115-9" - id="linearGradient4113-3" - x1="0.86849999" - y1="13.895414" - x2="0.44923753" - y2="28.776533" - gradientUnits="userSpaceOnUse" /> - <linearGradient - id="linearGradient4115-9"> - <stop - id="stop4117-5" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4119-6" - style="stop-color:#363636;stop-opacity:0.698" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3104" - id="linearGradient3815-4" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.23426255,0,0,0.2859159,18.734419,0.35950872)" - x1="-51.786404" - y1="50.786446" - x2="-51.786404" - y2="2.9062471" /> - <linearGradient - id="linearGradient3104"> - <stop - id="stop3106" - style="stop-color:#aaaaaa;stop-opacity:1" - offset="0" /> - <stop - id="stop3108" - style="stop-color:#c8c8c8;stop-opacity:1" - offset="1" /> - </linearGradient> - <radialGradient - cx="13.138569" - cy="25.625349" - r="13.931416" - fx="13.138569" - fy="25.625349" - id="radialGradient2965" - xlink:href="#linearGradient3690-451" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0,0.92614711,-1.0546317,0,32.402583,-9.3345932)" /> - <linearGradient - id="linearGradient3690-451"> - <stop - id="stop2857" - style="stop-color:#e8e8e8;stop-opacity:1" - offset="0" /> - <stop - id="stop2859" - style="stop-color:#d8d8d8;stop-opacity:1" - offset="0.26238" /> - <stop - id="stop2861" - style="stop-color:#c2c2c2;stop-opacity:1" - offset="0.66093999" /> - <stop - id="stop2863" - style="stop-color:#a5a5a5;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="21.483376" - y1="36.255058" - x2="21.483376" - y2="9.5799999" - id="linearGradient2967" - xlink:href="#linearGradient3603-84" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.55048262,0,0,0.57815823,-3.8262247,-5.2762279)" /> - <linearGradient - id="linearGradient3603-84"> - <stop - id="stop2867" - style="stop-color:#707070;stop-opacity:1" - offset="0" /> - <stop - id="stop2869" - style="stop-color:#9e9e9e;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="11.566265" - y1="22.292103" - x2="15.214532" - y2="33.95525" - id="linearGradient3674-262" - xlink:href="#linearGradient8265-821-176-38-919-66-249-529" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4893617,0,0,0.4893617,1.7131795,22.728095)" /> - <linearGradient - id="linearGradient8265-821-176-38-919-66-249-529"> - <stop - id="stop2873" - style="stop-color:#ffffff;stop-opacity:0.27450982" - offset="0" /> - <stop - id="stop2875" - style="stop-color:#ffffff;stop-opacity:0" - offset="1" /> - </linearGradient> - <linearGradient - x1="24.046366" - y1="11.673002" - x2="24.046366" - y2="34.713669" - id="linearGradient3677-116" - xlink:href="#linearGradient3642-81" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.55048262,0,0,0.57815823,-3.8262247,-5.2762276)" /> - <linearGradient - id="linearGradient3642-81"> - <stop - id="stop2879" - style="stop-color:#ffffff;stop-opacity:1" - offset="0" /> - <stop - id="stop2881" - style="stop-color:#ffffff;stop-opacity:0" - offset="1" /> - </linearGradient> - <linearGradient - y2="34.713669" - x2="24.046366" - y1="11.673002" - x1="24.046366" - gradientTransform="matrix(0.55048262,0,0,0.57815823,-3.8262247,-5.2762276)" - gradientUnits="userSpaceOnUse" - id="linearGradient3037" - xlink:href="#linearGradient3642-81" - inkscape:collect="always" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3155-40" - id="linearGradient8639" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.415777,-0.4174938,0.518983,0.5146192,-15.747227,2.6503673)" - spreadMethod="pad" - x1="23.575972" - y1="25.356892" - x2="23.575972" - y2="31.210939" /> - <linearGradient - id="linearGradient3155-40"> - <stop - id="stop2541" - offset="0" - style="stop-color:#181818;stop-opacity:1;" /> - <stop - style="stop-color:#dbdbdb;stop-opacity:1;" - offset="0.13482948" - id="stop2543" /> - <stop - id="stop2545" - offset="0.20224422" - style="stop-color:#a4a4a4;stop-opacity:1;" /> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0.26965895" - id="stop2547" /> - <stop - id="stop2549" - offset="0.44650277" - style="stop-color:#8d8d8d;stop-opacity:1;" /> - <stop - style="stop-color:#959595;stop-opacity:1;" - offset="0.57114136" - id="stop2551" /> - <stop - id="stop2553" - offset="0.72038066" - style="stop-color:#cecece;stop-opacity:1;" /> - <stop - id="stop2555" - offset="1" - style="stop-color:#181818;stop-opacity:1;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3240-279" - id="linearGradient8641" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.6022679,-17.867764,0.6930272)" - x1="30.037716" - y1="24.989594" - x2="30.037716" - y2="30.000141" /> - <linearGradient - id="linearGradient3240-279"> - <stop - style="stop-color:#565656;stop-opacity:1;" - offset="0" - id="stop2559" /> - <stop - id="stop2561" - offset="0.5" - style="stop-color:#9a9a9a;stop-opacity:1;" /> - <stop - style="stop-color:#545454;stop-opacity:1;" - offset="1" - id="stop2563" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3223-789" - id="linearGradient8643" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.6022679,-17.983472,0.8092126)" - x1="30.037716" - y1="24.989594" - x2="30.037716" - y2="30.000141" /> - <linearGradient - id="linearGradient3223-789"> - <stop - id="stop2567" - offset="0" - style="stop-color:#b1b1b1;stop-opacity:1;" /> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0.5" - id="stop2569" /> - <stop - id="stop2571" - offset="1" - style="stop-color:#8f8f8f;stop-opacity:1;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3240-686" - id="linearGradient8645" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.6022679,-17.465684,0.2892868)" - x1="30.037716" - y1="24.989594" - x2="30.037716" - y2="30.000141" /> - <linearGradient - id="linearGradient3240-686"> - <stop - style="stop-color:#565656;stop-opacity:1;" - offset="0" - id="stop2575" /> - <stop - id="stop2577" - offset="0.5" - style="stop-color:#9a9a9a;stop-opacity:1;" /> - <stop - style="stop-color:#545454;stop-opacity:1;" - offset="1" - id="stop2579" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3223-768" - id="linearGradient8647" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.6022679,-17.581392,0.4054707)" - x1="30.037716" - y1="24.989594" - x2="30.037716" - y2="30.000141" /> - <linearGradient - id="linearGradient3223-768"> - <stop - id="stop2583" - offset="0" - style="stop-color:#b1b1b1;stop-opacity:1;" /> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0.5" - id="stop2585" /> - <stop - id="stop2587" - offset="1" - style="stop-color:#8f8f8f;stop-opacity:1;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3240-907" - id="linearGradient8649" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.6022679,-17.061661,-0.1164056)" - x1="30.037716" - y1="24.989594" - x2="30.037716" - y2="30.000141" /> - <linearGradient - id="linearGradient3240-907"> - <stop - style="stop-color:#565656;stop-opacity:1;" - offset="0" - id="stop2591" /> - <stop - id="stop2593" - offset="0.5" - style="stop-color:#9a9a9a;stop-opacity:1;" /> - <stop - style="stop-color:#545454;stop-opacity:1;" - offset="1" - id="stop2595" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3223-699" - id="linearGradient8651" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.6022679,-17.177369,-2.1969969e-4)" - x1="30.037716" - y1="24.989594" - x2="30.037716" - y2="30.000141" /> - <linearGradient - id="linearGradient3223-699"> - <stop - id="stop2599" - offset="0" - style="stop-color:#b1b1b1;stop-opacity:1;" /> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0.5" - id="stop2601" /> - <stop - id="stop2603" - offset="1" - style="stop-color:#8f8f8f;stop-opacity:1;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3290-678" - id="linearGradient8653" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4040235,-0.4056919,0.6073752,0.602268,-17.636692,0.462492)" - x1="9" - y1="29.056757" - x2="9" - y2="26.02973" /> - <linearGradient - id="linearGradient3290-678"> - <stop - id="stop2607" - offset="0" - style="stop-color:#ece5a5;stop-opacity:1;" /> - <stop - id="stop2609" - offset="1" - style="stop-color:#fcfbf2;stop-opacity:1;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3191-577" - id="linearGradient8655" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.3763801,0.03615261,0.03669995,0.374874,-2.2182805,-1.1331002)" - x1="5.5178981" - y1="37.371799" - x2="9.5220556" - y2="41.391716" /> - <linearGradient - id="linearGradient3191-577"> - <stop - id="stop2613" - offset="0" - style="stop-color:#dbce48;stop-opacity:1;" /> - <stop - id="stop2615" - offset="1" - style="stop-color:#c5b625;stop-opacity:1;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-2-1-0" - id="linearGradient3934-0" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.99998838,0,0,0.99998838,-1.9961264,-41.000004)" - x1="8.7094374" - y1="1.0035814" - x2="8.6826077" - y2="16.052532" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2-1-0"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1-4-9" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4-6-0" /> - </linearGradient> - <linearGradient - y2="16.052532" - x2="8.6826077" - y1="1.0035814" - x1="8.7094374" - gradientTransform="matrix(0.99998838,0,0,0.99998838,-1.9961264,-41.000004)" - gradientUnits="userSpaceOnUse" - id="linearGradient4154-8" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-2-1-0-9" - inkscape:collect="always" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2-1-0-9"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1-4-9-8" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4-6-0-4" /> - </linearGradient> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2-1-0-9-0"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1-4-9-8-3" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4-6-0-4-8" /> - </linearGradient> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-2-1-0-3"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-1-4-9-3" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-4-6-0-6" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5" - id="linearGradient4326" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.6858824,0,0,0.68591053,-5.3691237,-18.974705)" - x1="14.501121" - y1="-1.4095211" - x2="14.152531" - y2="20.074369" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5" - id="linearGradient4328" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.99998838,0,0,0.99998838,-1.9961264,-41.000004)" - x1="8.7094374" - y1="1.0035814" - x2="8.6826077" - y2="16.052532" /> - <linearGradient - x1="-2.4040222" - y1="4.4573336" - x2="-2.4040222" - y2="18.967093" - id="linearGradient3878" - xlink:href="#linearGradient3587-6-5" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(13.927091,-3.4266134)" /> - <linearGradient - id="linearGradient3587-6-5"> - <stop - id="stop3589-9-2" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5" - id="linearGradient4357" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0344828,0,0,1.0344828,8.0707628,-14.513825)" - x1="0.86849999" - y1="13.895414" - x2="0.44923753" - y2="28.776533" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1" - id="linearGradient4405" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-55" - id="linearGradient4413-7" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - id="linearGradient3587-6-5-3-4-5-4-0-1-55"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-3-2-53-4-3-95" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-7-9-86-9-3-6" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2" - id="linearGradient4411-3" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - id="linearGradient3587-6-5-2"> - <stop - id="stop3589-9-2-8" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-0" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4" - id="linearGradient4466-9" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.23426255,0,0,0.2859159,18.734419,60.359508)" - x1="-41.553459" - y1="2.2401412" - x2="-41.553459" - y2="54.703121" /> - <linearGradient - id="linearGradient3587-6-5-2-4"> - <stop - id="stop3589-9-2-8-7" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - y2="54.703121" - x2="-41.553459" - y1="2.2401412" - x1="-41.553459" - gradientTransform="matrix(0.21864454,0,0,0.26685422,17.618755,60.402242)" - gradientUnits="userSpaceOnUse" - id="linearGradient4483-3" - xlink:href="#linearGradient3587-6-5-2-4-9" - inkscape:collect="always" /> - <linearGradient - id="linearGradient3587-6-5-2-4-9"> - <stop - id="stop3589-9-2-8-7-2" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-0-3-8" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-55" - id="linearGradient4564" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5" - id="linearGradient4566" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(13.927091,16.573387)" - x1="-2.4040222" - y1="4.4573336" - x2="-2.4040222" - y2="18.967093" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2" - id="linearGradient4578" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-4-5-4-0-1-55" - id="linearGradient4580" - gradientUnits="userSpaceOnUse" - x1="209.34245" - y1="998.45801" - x2="209.34245" - y2="1013.451" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3" - id="linearGradient4359-4" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.99998838,0,0,0.99998838,29.038238,-21.358617)" - x1="8.7094374" - y1="1.0035814" - x2="8.6826077" - y2="16.052532" /> - <linearGradient - id="linearGradient3587-6-5-3"> - <stop - id="stop3589-9-2-6" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-5" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3" - id="linearGradient4361-4" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.6858824,0,0,0.68591053,25.66524,-19.333318)" - x1="8.7094374" - y1="1.0035814" - x2="8.6826077" - y2="16.052532" /> - <linearGradient - id="linearGradient4597"> - <stop - id="stop4599" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4601" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - y2="16.052532" - x2="8.6826077" - y1="1.0035814" - x1="8.7094374" - gradientTransform="matrix(0.6858824,0,0,0.68591053,25.66524,-19.333318)" - gradientUnits="userSpaceOnUse" - id="linearGradient4610" - xlink:href="#linearGradient3587-6-5-3" - inkscape:collect="always" /> - <linearGradient - x1="1.3333321" - y1="6.6666665" - x2="1.3333321" - y2="33.333332" - id="linearGradient2422" - xlink:href="#linearGradient3587-6-5-5" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4090909,0,0,0.375,7.4545459,0.5)" /> - <linearGradient - id="linearGradient3587-6-5-5"> - <stop - id="stop3589-9-2-4" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-3" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" - id="linearGradient3189" - xlink:href="#linearGradient3587-6-5-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,7.5,0.5)" /> - <linearGradient - id="linearGradient3587-6-5-8"> - <stop - id="stop3589-9-2-67" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-2" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" - id="linearGradient3203" - xlink:href="#linearGradient3587-6-5-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5000001,0.5)" /> - <linearGradient - id="linearGradient3120"> - <stop - id="stop3122" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3124" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" - id="linearGradient3207" - xlink:href="#linearGradient3587-6-5-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,7.5,7.499999)" /> - <linearGradient - id="linearGradient3127"> - <stop - id="stop3129" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3131" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" - id="linearGradient3211" - xlink:href="#linearGradient3587-6-5-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5,7.5)" /> - <linearGradient - id="linearGradient3134"> - <stop - id="stop3136" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3138" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="11" - y1="6" - x2="11" - y2="17" - id="linearGradient2409" - xlink:href="#linearGradient3587-6-5-1" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.2403101,0,0,0.8988764,10.387597,0.2247191)" /> - <linearGradient - id="linearGradient3587-6-5-1"> - <stop - id="stop3589-9-2-0" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-21" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="40.805084" - y1="5.6271191" - x2="40.805084" - y2="17.627119" - id="linearGradient3206" - xlink:href="#linearGradient3587-8-5" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(-32.805085,-3.6271193)" /> - <linearGradient - id="linearGradient3587-8-5"> - <stop - id="stop3589-2-7" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-3-5" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - y2="17.627119" - x2="40.805084" - y1="5.6271191" - x1="40.805084" - gradientTransform="translate(-32.805085,-3.6271193)" - gradientUnits="userSpaceOnUse" - id="linearGradient3180" - xlink:href="#linearGradient3587-8-5" - inkscape:collect="always" /> - <linearGradient - x1="1.3333321" - y1="6.6666665" - x2="1.3333321" - y2="33.333332" - id="linearGradient2422-1" - xlink:href="#linearGradient3587-6-5-86" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2727273,0,0,0.375,9.636365,1.5)" /> - <linearGradient - id="linearGradient3587-6-5-86"> - <stop - id="stop3589-9-2-65" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-9" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="11" - y1="6" - x2="11" - y2="17" - id="linearGradient2427" - xlink:href="#linearGradient3587-6-5-86" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4651163,0,0,0.3370786,4.3953488,1.5842703)" /> - <linearGradient - id="linearGradient3207-3"> - <stop - id="stop3209" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3211" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="11" - y1="6" - x2="11" - y2="17" - id="linearGradient2436" - xlink:href="#linearGradient3587-6-5-86" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4651163,0,0,0.3370786,4.3953488,9.58427)" /> - <linearGradient - id="linearGradient3214"> - <stop - id="stop3216" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3218" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="11" - y1="6" - x2="11" - y2="17" - id="linearGradient2442" - xlink:href="#linearGradient3587-6-5-86" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4651163,0,0,0.3370786,4.3953488,5.5842706)" /> - <linearGradient - id="linearGradient3221"> - <stop - id="stop3223" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3225" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="1.3333321" - y1="4.9755898" - x2="1.3333321" - y2="37.373981" - id="linearGradient2422-1-0" - xlink:href="#linearGradient3587-6-5-0" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.39871888,0,0,0.3091132,71.812715,15.470662)" /> - <linearGradient - id="linearGradient3587-6-5-0"> - <stop - id="stop3589-9-2-5" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-1" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - x1="46.395508" - y1="12.707516" - x2="46.395508" - y2="38.409042" - id="linearGradient3795-2" - xlink:href="#linearGradient3587-6-5-3-5-7" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(-0.4100229,0,0,0.5447147,28.02322,-5.9219706)" /> - <linearGradient - id="linearGradient3587-6-5-3-5-7"> - <stop - id="stop3589-9-2-2-6-2" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-73-5-1" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient3587-6-5-3-5"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1" - id="stop3589-9-2-2-6" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop3591-7-4-73-5" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-3-5" - id="linearGradient4872" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(-0.4100229,0,0,0.5447147,19.329265,-26.729116)" - x1="100.77747" - y1="17.859186" - x2="100.77747" - y2="38.055252" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient4894" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5000001,0.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient4900" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,7.5,0.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient4906" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,7.5,7.499999)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient4912" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5,7.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - id="linearGradient3587-6-5-8-6"> - <stop - id="stop3589-9-2-67-3" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop3591-7-4-2-3" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient4935"> - <stop - id="stop4937" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4939" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - id="linearGradient4942"> - <stop - id="stop4944" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4946" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8-6" - id="linearGradient4912-4" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5,7.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - id="linearGradient4949"> - <stop - id="stop4951" - style="stop-color:#000000;stop-opacity:1" - offset="0" /> - <stop - id="stop4953" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient5012" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5,7.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient5015" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,7.5,7.499999)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient5018" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,-0.5000001,0.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-8" - id="linearGradient5021" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.375,0,0,0.375,7.5,0.5)" - x1="26.045763" - y1="9.6223383" - x2="26.045763" - y2="19.490837" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4" - id="linearGradient3335" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.21864454,0,0,0.26685422,18.618755,-19.597758)" - x1="-41.553459" - y1="2.2401412" - x2="-41.553459" - y2="54.703121" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4136" - id="linearGradient4134" - x1="9" - y1="0" - x2="9" - y2="15" - gradientUnits="userSpaceOnUse" - spreadMethod="pad" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4136" - id="linearGradient4150" - gradientUnits="userSpaceOnUse" - spreadMethod="pad" - x1="9" - y1="0" - x2="9" - y2="15" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4-6" - id="linearGradient3335-7" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2186487,0,0,0.26685422,76.619476,1.402242)" - x1="-41.553459" - y1="2.2401412" - x2="-41.755585" - y2="47.208389" /> - <linearGradient - id="linearGradient3587-6-5-2-4-6"> - <stop - id="stop3589-9-2-8-7-8" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3-4" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4-6-0" - id="linearGradient3335-7-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2186487,0,0,0.26685422,16.619476,0.402242)" - x1="-41.553459" - y1="2.2401412" - x2="-41.553459" - y2="54.703121" /> - <linearGradient - id="linearGradient3587-6-5-2-4-6-0"> - <stop - id="stop3589-9-2-8-7-8-7" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3-4-7" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4-6-4" - id="linearGradient3335-7-7" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2186487,0,0,0.26685422,16.619476,0.402242)" - x1="-41.553459" - y1="2.2401412" - x2="-41.553459" - y2="54.703121" /> - <linearGradient - id="linearGradient3587-6-5-2-4-6-4"> - <stop - id="stop3589-9-2-8-7-8-2" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3-4-2" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4-6-7" - id="linearGradient3335-7-3" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2186487,0,0,0.26685422,16.619476,1.402242)" - x1="-41.553459" - y1="2.2401412" - x2="-41.755585" - y2="47.208389" /> - <linearGradient - id="linearGradient3587-6-5-2-4-6-7"> - <stop - id="stop3589-9-2-8-7-8-4" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3-4-5" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4-6-2" - id="linearGradient3335-7-1" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2186487,0,0,0.26685422,56.619476,1.4022422)" - x1="-39.421574" - y1="-5.2547116" - x2="-39.421574" - y2="47.208389" /> - <linearGradient - id="linearGradient3587-6-5-2-4-6-2"> - <stop - id="stop3589-9-2-8-7-8-77" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3-4-9" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4136-9" - id="linearGradient4150-0" - gradientUnits="userSpaceOnUse" - spreadMethod="pad" - x1="9" - y1="0" - x2="9" - y2="15" /> - <linearGradient - id="linearGradient4136-9"> - <stop - offset="0" - style="stop-color:#000000;stop-opacity:1;" - id="stop4138-6" /> - <stop - offset="1" - style="stop-color:#363636;stop-opacity:1" - id="stop4140-3" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4136-9" - id="linearGradient3457" - gradientUnits="userSpaceOnUse" - spreadMethod="pad" - x1="9" - y1="0" - x2="9" - y2="15" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-2-4-6-2-6" - id="linearGradient3335-7-1-7" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2186487,0,0,0.26685422,56.619476,1.4022422)" - x1="-39.421574" - y1="-5.2547116" - x2="-39.421574" - y2="47.208389" /> - <linearGradient - id="linearGradient3587-6-5-2-4-6-2-6"> - <stop - id="stop3589-9-2-8-7-8-77-4" - style="stop-color:#000000;stop-opacity:1;" - offset="0" /> - <stop - id="stop3591-7-4-0-3-4-9-3" - style="stop-color:#363636;stop-opacity:1" - offset="1" /> - </linearGradient> - <linearGradient - y2="47.208389" - x2="-39.421574" - y1="-5.2547116" - x1="-39.421574" - gradientTransform="matrix(0.2186487,0,0,0.26685422,56.619476,1.4022422)" - gradientUnits="userSpaceOnUse" - id="linearGradient3397" - xlink:href="#linearGradient3587-6-5-2-4-6-2-6" - inkscape:collect="always" /> - </defs> - <g - transform="matrix(0.78786264,0,0,0.78786264,-3.1483699,0.44173984)" - id="g3743-3" - style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1" /> - <rect - style="color:#000000;fill:#ccc000;fill-opacity:0;fill-rule:nonzero;stroke:none;stroke-width:1px;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" - id="rect3136" - width="163.31035" - height="97.986206" - x="-62.896553" - y="-32.993103" /> - <g - transform="matrix(0.99998873,0,0,0.99998873,-3.996044,-20.001608)" - id="g3743-9-4" - style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1" /> <g - id="g4146"> - <g - transform="translate(-39.999799,1)" - id="g3376"> - <path - sodipodi:nodetypes="cccccccccccccc" - inkscape:connector-curvature="0" - id="path4160-9-9-0" - d="m 43.35011,1.0020512 c -0.197474,0.03825 -0.35356,0.233327 -0.350004,0.437439 l -3.07e-4,13.1230708 c 4e-6,0.229041 0.205223,0.437433 0.430774,0.437439 l 10.14024,0 c 0.225551,-6e-6 0.430768,-0.208398 0.430774,-0.437439 l 3.07e-4,-12.9606108 c -3.29e-4,-0.336436 -0.265499,-0.601856 -0.516871,-0.599899 0,0 -7.760335,0 -10.134913,0 z M 44,11 l 9,0 4.13e-4,3 L 44,14 z" - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.6;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.99992162;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" /> - <path - sodipodi:nodetypes="cccccccccccccc" - inkscape:connector-curvature="0" - id="path4160-9-9-8" - d="m 43.35011,0.0020508 c -0.197474,0.03825 -0.35356,0.233327 -0.350004,0.437439 l -3.07e-4,13.1230712 c 4e-6,0.229041 0.205223,0.437433 0.430774,0.437439 l 10.14024,0 c 0.225551,-6e-6 0.430768,-0.208398 0.430774,-0.437439 L 54.001894,0.6019496 C 54.001565,0.265514 53.736395,9.38e-5 53.485023,0.0020508 c 0,0 -7.760335,0 -10.134913,0 z M 44,10 l 9,0 4.13e-4,3 L 44,13 z" - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.7;color:#000000;fill:url(#linearGradient3397);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.99992162;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" /> - </g> + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(581.71429,-2.0764682)"> + <path + sodipodi:nodetypes="cccccccccccccc" + inkscape:connector-curvature="0" + id="path3770" + d="m -575.01366,3.0805705 c -0.39495,0.0765 -0.70712,0.466654 -0.70001,0.874878 l -6.2e-4,26.2461415 c 10e-6,0.458082 0.41045,0.874866 0.86155,0.874878 l 20.28048,0 c 0.4511,-1.2e-5 0.86154,-0.416796 0.86155,-0.874878 l 6.1e-4,-25.9212225 c -6.5e-4,-0.672871 -0.53099,-1.203711 -1.03374,-1.199797 0,0 -15.52067,0 -20.26982,0 z m 1.29978,19.9958975 18,0 8.2e-4,6 -18.00082,0 z" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.99992161999999996;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:1;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.99992161999999996;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" + d="m -575.01366,4.0805703 c -0.39495,0.0765 -0.70712,0.466654 -0.70001,0.874878 l -6.2e-4,26.2461417 c 10e-6,0.458082 0.41045,0.874866 0.86155,0.874878 l 20.28048,0 c 0.4511,-1.2e-5 0.86154,-0.416796 0.86155,-0.874878 l 6.1e-4,-25.9212227 c -6.5e-4,-0.672871 -0.53099,-1.203711 -1.03374,-1.199797 0,0 -15.52067,0 -20.26982,0 z m 1.29978,19.9958977 18,0 8.2e-4,6 -18.00082,0 z" + id="path4160-9-9-8" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cccccccccccccc" /> </g> </svg> diff --git a/core/js/js.js b/core/js/js.js index 01e47edf268..6b0c289850c 100644 --- a/core/js/js.js +++ b/core/js/js.js @@ -354,7 +354,6 @@ OC.Breadcrumb={ } var crumb=$('<div/>'); crumb.addClass('crumb').addClass('last'); - crumb.attr('style','background-image:url("'+OC.imagePath('core','breadcrumb')+'")'); var crumbLink=$('<a/>'); crumbLink.attr('href',link); @@ -547,7 +546,6 @@ function object(o) { return new F(); } - /** * Fills height of window. (more precise than height: 100%;) */ @@ -624,6 +622,7 @@ $(document).ready(function(){ }); // 'show password' checkbox + $('#password').showPassword(); $('#pass2').showPassword(); //use infield labels @@ -664,14 +663,13 @@ $(document).ready(function(){ event.stopPropagation(); }); $(window).click(function(){//hide the settings menu when clicking outside it - if($('body').attr("id")==="body-user"){ - $('#settings #expanddiv').slideUp(); - } + $('#settings #expanddiv').slideUp(); }); // all the tipsy stuff needs to be here (in reverse order) to work $('.jp-controls .jp-previous').tipsy({gravity:'nw', fade:true, live:true}); $('.jp-controls .jp-next').tipsy({gravity:'n', fade:true, live:true}); + $('.displayName .action').tipsy({gravity:'se', fade:true, live:true}); $('.password .action').tipsy({gravity:'se', fade:true, live:true}); $('#upload').tipsy({gravity:'w', fade:true}); $('.selectedActions a').tipsy({gravity:'s', fade:true, live:true}); diff --git a/core/js/oc-vcategories.js b/core/js/oc-vcategories.js index 609703f2cc9..3e75767c49c 100644 --- a/core/js/oc-vcategories.js +++ b/core/js/oc-vcategories.js @@ -50,7 +50,7 @@ var OCCategories= { $('#category_dialog').remove(); }, open : function(event, ui) { - $('#category_addinput').live('input',function() { + $('#category_addinput').on('input',function() { if($(this).val().length > 0) { $('#category_addbutton').removeAttr('disabled'); } @@ -61,7 +61,7 @@ var OCCategories= { $('#category_addbutton').attr('disabled', 'disabled'); return false; }); - $('#category_addbutton').live('click',function(e) { + $('#category_addbutton').on('click',function(e) { e.preventDefault(); if($('#category_addinput').val().length > 0) { OCCategories.add($('#category_addinput').val()); diff --git a/core/js/share.js b/core/js/share.js index 0c45765bd8b..6ad4130690d 100644 --- a/core/js/share.js +++ b/core/js/share.js @@ -410,7 +410,7 @@ $(document).ready(function() { firstDay: firstDay }); } - $('a.share').live('click', function(event) { + $('#fileList').on('click', 'a.share', function(event) { event.stopPropagation(); if ($(this).data('item-type') !== undefined && $(this).data('item') !== undefined) { var itemType = $(this).data('item-type'); @@ -444,12 +444,12 @@ $(document).ready(function() { } }); - $('#shareWithList li').live('mouseenter', function(event) { + $('#fileList').on('mouseenter', '#dropdown #shareWithList li', function(event) { // Show permissions and unshare button $(':hidden', this).filter(':not(.cruds)').show(); }); - $('#shareWithList li').live('mouseleave', function(event) { + $('#fileList').on('mouseleave', '#dropdown #shareWithList li', function(event) { // Hide permissions and unshare button if (!$('.cruds', this).is(':visible')) { $('a', this).hide(); @@ -462,11 +462,11 @@ $(document).ready(function() { } }); - $('.showCruds').live('click', function() { + $('#fileList').on('click', '#dropdown .showCruds', function() { $(this).parent().find('.cruds').toggle(); }); - $('.unshare').live('click', function() { + $('#fileList').on('click', '#dropdown .unshare', function() { var li = $(this).parent(); var itemType = $('#dropdown').data('item-type'); var itemSource = $('#dropdown').data('item-source'); @@ -483,7 +483,7 @@ $(document).ready(function() { }); }); - $('.permissions').live('change', function() { + $('#fileList').on('change', '#dropdown .permissions', function() { if ($(this).attr('name') == 'edit') { var li = $(this).parent().parent() var checkboxes = $('.permissions', li); @@ -510,7 +510,7 @@ $(document).ready(function() { OC.Share.setPermissions($('#dropdown').data('item-type'), $('#dropdown').data('item-source'), $(li).data('share-type'), $(li).data('share-with'), permissions); }); - $('#linkCheckbox').live('change', function() { + $('#fileList').on('change', '#dropdown #linkCheckbox', function() { var itemType = $('#dropdown').data('item-type'); var itemSource = $('#dropdown').data('item-source'); if (this.checked) { @@ -532,12 +532,12 @@ $(document).ready(function() { } }); - $('#linkText').live('click', function() { + $('#fileList').on('click', '#dropdown #linkText', function() { $(this).focus(); $(this).select(); }); - $('#showPassword').live('click', function() { + $('#fileList').on('click', '#dropdown #showPassword', function() { $('#linkPass').toggle('blind'); if (!$('#showPassword').is(':checked') ) { var itemType = $('#dropdown').data('item-type'); @@ -548,7 +548,7 @@ $(document).ready(function() { } }); - $('#linkPassText').live('focusout keyup', function(event) { + $('#fileList').on('focusout keyup', '#dropdown #linkPassText', function(event) { if ( $('#linkPassText').val() != '' && (event.type == 'focusout' || event.keyCode == 13) ) { var itemType = $('#dropdown').data('item-type'); var itemSource = $('#dropdown').data('item-source'); @@ -560,7 +560,7 @@ $(document).ready(function() { } }); - $('#expirationCheckbox').live('click', function() { + $('#fileList').on('click', '#dropdown #expirationCheckbox', function() { if (this.checked) { OC.Share.showExpirationDate(''); } else { @@ -575,7 +575,7 @@ $(document).ready(function() { } }); - $('#expirationDate').live('change', function() { + $('#fileList').on('change', '#dropdown #expirationDate', function() { var itemType = $('#dropdown').data('item-type'); var itemSource = $('#dropdown').data('item-source'); $.post(OC.filePath('core', 'ajax', 'share.php'), { action: 'setExpirationDate', itemType: itemType, itemSource: itemSource, date: $(this).val() }, function(result) { @@ -586,7 +586,7 @@ $(document).ready(function() { }); - $('#emailPrivateLink').live('submit', function(event) { + $('#fileList').on('submit', '#dropdown #emailPrivateLink', function(event) { event.preventDefault(); var link = $('#linkText').val(); var itemType = $('#dropdown').data('item-type'); diff --git a/core/l10n/af_ZA.php b/core/l10n/af_ZA.php new file mode 100644 index 00000000000..f5f27d2af58 --- /dev/null +++ b/core/l10n/af_ZA.php @@ -0,0 +1,33 @@ +<?php $TRANSLATIONS = array( +"Settings" => "Instellings", +"Password" => "Wagwoord", +"Use the following link to reset your password: {link}" => "Gebruik die volgende skakel om jou wagwoord te herstel: {link}", +"You will receive a link to reset your password via Email." => "Jy sal `n skakel via e-pos ontvang om jou wagwoord te herstel.", +"Username" => "Gebruikersnaam", +"Request reset" => "Herstel-versoek", +"Your password was reset" => "Jou wagwoord is herstel", +"To login page" => "Na aanteken-bladsy", +"New password" => "Nuwe wagwoord", +"Reset password" => "Herstel wagwoord", +"Personal" => "Persoonlik", +"Users" => "Gebruikers", +"Apps" => "Toepassings", +"Admin" => "Admin", +"Help" => "Hulp", +"Cloud not found" => "Wolk nie gevind", +"Create an <strong>admin account</strong>" => "Skep `n <strong>admin-rekening</strong>", +"Advanced" => "Gevorderd", +"Configure the database" => "Stel databasis op", +"will be used" => "sal gebruik word", +"Database user" => "Databasis-gebruiker", +"Database password" => "Databasis-wagwoord", +"Database name" => "Databasis naam", +"Finish setup" => "Maak opstelling klaar", +"web services under your control" => "webdienste onder jou beheer", +"Log out" => "Teken uit", +"Lost your password?" => "Jou wagwoord verloor?", +"remember" => "onthou", +"Log in" => "Teken aan", +"prev" => "vorige", +"next" => "volgende" +); diff --git a/core/l10n/ar.php b/core/l10n/ar.php index 495bfbd0eac..218eeed0722 100644 --- a/core/l10n/ar.php +++ b/core/l10n/ar.php @@ -32,6 +32,7 @@ "Yes" => "نعم", "Ok" => "مواÙÙ‚", "Error" => "خطأ", +"Share" => "شارك", "Error while sharing" => "ØØµÙ„ خطأ عند عملية المشاركة", "Error while unsharing" => "ØØµÙ„ خطأ عند عملية إزالة المشاركة", "Error while changing permissions" => "ØØµÙ„ خطأ عند عملية إعادة تعيين Ø§Ù„ØªØµØ±ÙŠØ Ø¨Ø§Ù„ØªÙˆØµÙ„", diff --git a/core/l10n/bg_BG.php b/core/l10n/bg_BG.php index 9a2716277a3..587991499a9 100644 --- a/core/l10n/bg_BG.php +++ b/core/l10n/bg_BG.php @@ -9,6 +9,7 @@ "last year" => "поÑледната година", "years ago" => "поÑледните години", "Error" => "Грешка", +"Share" => "СподелÑне", "Password" => "Парола", "Personal" => "Лични", "Users" => "Потребители", diff --git a/core/l10n/bn_BD.php b/core/l10n/bn_BD.php index 2f13a497948..deac6afa359 100644 --- a/core/l10n/bn_BD.php +++ b/core/l10n/bn_BD.php @@ -53,6 +53,8 @@ "Error" => "সমসà§à¦¯à¦¾", "The app name is not specified." => "অà§à¦¯à¦¾à¦ªà§‡à¦° নামটি সà§à¦¨à¦¿à¦°à§à¦¦à¦¿à¦·à§à¦Ÿ নয়।", "The required file {file} is not installed!" => "আবশà§à¦¯à¦¿à¦• {file} টি সংসà§à¦¥à¦¾à¦ªà¦¿à¦¤ নেই !", +"Share" => "à¦à¦¾à¦—াà¦à¦¾à¦—ি কর", +"Shared" => "à¦à¦¾à¦—াà¦à¦¾à¦—িকৃত", "Error while sharing" => "à¦à¦¾à¦—াà¦à¦¾à¦—ি করতে সমসà§à¦¯à¦¾ দেখা দিয়েছে ", "Error while unsharing" => "à¦à¦¾à¦—াà¦à¦¾à¦—ি বাতিল করতে সমসà§à¦¯à¦¾ দেখা দিয়েছে", "Error while changing permissions" => "অনà§à¦®à¦¤à¦¿à¦¸à¦®à§‚হ পরিবরà§à¦¤à¦¨ করতে সমসà§à¦¯à¦¾ দেখা দিয়েছে", diff --git a/core/l10n/ca.php b/core/l10n/ca.php index c737f9aa42f..780366aaf0e 100644 --- a/core/l10n/ca.php +++ b/core/l10n/ca.php @@ -53,6 +53,8 @@ "Error" => "Error", "The app name is not specified." => "No s'ha especificat el nom de l'aplicació.", "The required file {file} is not installed!" => "El fitxer requerit {file} no està instal·lat!", +"Share" => "Comparteix", +"Shared" => "Compartit", "Error while sharing" => "Error en compartir", "Error while unsharing" => "Error en deixar de compartir", "Error while changing permissions" => "Error en canviar els permisos", diff --git a/core/l10n/cs_CZ.php b/core/l10n/cs_CZ.php index 848415d6eac..a8fa035711c 100644 --- a/core/l10n/cs_CZ.php +++ b/core/l10n/cs_CZ.php @@ -53,6 +53,8 @@ "Error" => "Chyba", "The app name is not specified." => "Nenà urÄen název aplikace.", "The required file {file} is not installed!" => "Požadovaný soubor {file} nenà nainstalován.", +"Share" => "SdÃlet", +"Shared" => "SdÃlené", "Error while sharing" => "Chyba pÅ™i sdÃlenÃ", "Error while unsharing" => "Chyba pÅ™i ruÅ¡enà sdÃlenÃ", "Error while changing permissions" => "Chyba pÅ™i zmÄ›nÄ› oprávnÄ›nÃ", diff --git a/core/l10n/da.php b/core/l10n/da.php index 3252dcf495e..ca23b622289 100644 --- a/core/l10n/da.php +++ b/core/l10n/da.php @@ -53,6 +53,7 @@ "Error" => "Fejl", "The app name is not specified." => "Den app navn er ikke angivet.", "The required file {file} is not installed!" => "Den krævede fil {file} er ikke installeret!", +"Share" => "Del", "Error while sharing" => "Fejl under deling", "Error while unsharing" => "Fejl under annullering af deling", "Error while changing permissions" => "Fejl under justering af rettigheder", diff --git a/core/l10n/de.php b/core/l10n/de.php index b67234189fe..bc7a7dada1d 100644 --- a/core/l10n/de.php +++ b/core/l10n/de.php @@ -53,6 +53,8 @@ "Error" => "Fehler", "The app name is not specified." => "Der App-Name ist nicht angegeben.", "The required file {file} is not installed!" => "Die benötigte Datei {file} ist nicht installiert.", +"Share" => "Freigeben", +"Shared" => "Freigegeben", "Error while sharing" => "Fehler beim Freigeben", "Error while unsharing" => "Fehler beim Aufheben der Freigabe", "Error while changing permissions" => "Fehler beim Ändern der Rechte", @@ -82,7 +84,7 @@ "Error setting expiration date" => "Fehler beim Setzen des Ablaufdatums", "Sending ..." => "Sende ...", "Email sent" => "E-Mail wurde verschickt", -"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>." => "Das Update ist fehlgeschlagen. Bitte melden Sie dieses Problem an die <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud Gemeinschaft</a>.", +"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>." => "Das Update ist fehlgeschlagen. Bitte melden Sie dieses Problem an die <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud Community</a>.", "The update was successful. Redirecting you to ownCloud now." => "Das Update war erfolgreich. Sie werden nun zu ownCloud weitergeleitet.", "ownCloud password reset" => "ownCloud-Passwort zurücksetzen", "Use the following link to reset your password: {link}" => "Nutze den nachfolgenden Link, um Dein Passwort zurückzusetzen: {link}", diff --git a/core/l10n/de_DE.php b/core/l10n/de_DE.php index 59b05bbe7c1..ca5b843a832 100644 --- a/core/l10n/de_DE.php +++ b/core/l10n/de_DE.php @@ -53,6 +53,8 @@ "Error" => "Fehler", "The app name is not specified." => "Der App-Name ist nicht angegeben.", "The required file {file} is not installed!" => "Die benötigte Datei {file} ist nicht installiert.", +"Share" => "Freigeben", +"Shared" => "Freigegeben", "Error while sharing" => "Fehler bei der Freigabe", "Error while unsharing" => "Fehler bei der Aufhebung der Freigabe", "Error while changing permissions" => "Fehler bei der Änderung der Rechte", diff --git a/core/l10n/el.php b/core/l10n/el.php index 79cffb0685d..74ec378b9df 100644 --- a/core/l10n/el.php +++ b/core/l10n/el.php @@ -53,6 +53,7 @@ "Error" => "Σφάλμα", "The app name is not specified." => "Δεν καθοÏίστηκε το όνομα της εφαÏμογής.", "The required file {file} is not installed!" => "Το απαιτοÏμενο αÏχείο {file} δεν εγκαταστάθηκε!", +"Share" => "ΔιαμοιÏασμός", "Error while sharing" => "Σφάλμα κατά τον διαμοιÏασμό", "Error while unsharing" => "Σφάλμα κατά το σταμάτημα του διαμοιÏασμοÏ", "Error while changing permissions" => "Σφάλμα κατά την αλλαγή των δικαιωμάτων", diff --git a/core/l10n/eo.php b/core/l10n/eo.php index 0839cfe9f6f..7c0e65f4e03 100644 --- a/core/l10n/eo.php +++ b/core/l10n/eo.php @@ -53,6 +53,7 @@ "Error" => "Eraro", "The app name is not specified." => "Ne indikiÄis nomo de la aplikaĵo.", "The required file {file} is not installed!" => "La necesa dosiero {file} ne instaliÄis!", +"Share" => "Kunhavigi", "Error while sharing" => "Eraro dum kunhavigo", "Error while unsharing" => "Eraro dum malkunhavigo", "Error while changing permissions" => "Eraro dum ÅanÄo de permesoj", diff --git a/core/l10n/es.php b/core/l10n/es.php index 4bdbcac0e95..e046e3bf7a0 100644 --- a/core/l10n/es.php +++ b/core/l10n/es.php @@ -53,6 +53,8 @@ "Error" => "Fallo", "The app name is not specified." => "El nombre de la app no se ha especificado.", "The required file {file} is not installed!" => "El fichero {file} requerido, no está instalado.", +"Share" => "Compartir", +"Shared" => "Compartido", "Error while sharing" => "Error compartiendo", "Error while unsharing" => "Error descompartiendo", "Error while changing permissions" => "Error cambiando permisos", @@ -82,6 +84,8 @@ "Error setting expiration date" => "Error estableciendo fecha de caducidad", "Sending ..." => "Enviando...", "Email sent" => "Correo electrónico enviado", +"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>." => "La actualización ha fracasado. Por favor, informe este problema a la <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">Comunidad de ownCloud</ a>.", +"The update was successful. Redirecting you to ownCloud now." => "La actualización se ha realizado correctamente. Redireccionando a ownCloud ahora.", "ownCloud password reset" => "Reiniciar contraseña de ownCloud", "Use the following link to reset your password: {link}" => "Utiliza el siguiente enlace para restablecer tu contraseña: {link}", "You will receive a link to reset your password via Email." => "Recibirás un enlace por correo electrónico para restablecer tu contraseña", diff --git a/core/l10n/es_AR.php b/core/l10n/es_AR.php index d588ac950c9..1ce26416f6e 100644 --- a/core/l10n/es_AR.php +++ b/core/l10n/es_AR.php @@ -53,6 +53,8 @@ "Error" => "Error", "The app name is not specified." => "El nombre de la aplicación no esta especificado.", "The required file {file} is not installed!" => "¡El archivo requerido {file} no está instalado!", +"Share" => "Compartir", +"Shared" => "Compartido", "Error while sharing" => "Error al compartir", "Error while unsharing" => "Error en el procedimiento de ", "Error while changing permissions" => "Error al cambiar permisos", @@ -82,6 +84,8 @@ "Error setting expiration date" => "Error al asignar fecha de vencimiento", "Sending ..." => "Enviando...", "Email sent" => "Email enviado", +"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>." => "La actualización no pudo ser completada. Por favor, reportá el inconveniente a la comunidad <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud</a>.", +"The update was successful. Redirecting you to ownCloud now." => "La actualización fue exitosa. Estás siendo redirigido a ownCloud.", "ownCloud password reset" => "Restablecer contraseña de ownCloud", "Use the following link to reset your password: {link}" => "Usá este enlace para restablecer tu contraseña: {link}", "You will receive a link to reset your password via Email." => "Vas a recibir un enlace por e-mail para restablecer tu contraseña", diff --git a/core/l10n/et_EE.php b/core/l10n/et_EE.php index 4e3c003c9f6..f4328de9901 100644 --- a/core/l10n/et_EE.php +++ b/core/l10n/et_EE.php @@ -38,6 +38,7 @@ "Yes" => "Jah", "Ok" => "Ok", "Error" => "Viga", +"Share" => "Jaga", "Error while sharing" => "Viga jagamisel", "Error while unsharing" => "Viga jagamise lõpetamisel", "Error while changing permissions" => "Viga õiguste muutmisel", diff --git a/core/l10n/eu.php b/core/l10n/eu.php index da6aad73383..ed919d64d9d 100644 --- a/core/l10n/eu.php +++ b/core/l10n/eu.php @@ -53,6 +53,8 @@ "Error" => "Errorea", "The app name is not specified." => "App izena ez dago zehaztuta.", "The required file {file} is not installed!" => "Beharrezkoa den {file} fitxategia ez dago instalatuta!", +"Share" => "Elkarbanatu", +"Shared" => "Elkarbanatuta", "Error while sharing" => "Errore bat egon da elkarbanatzean", "Error while unsharing" => "Errore bat egon da elkarbanaketa desegitean", "Error while changing permissions" => "Errore bat egon da baimenak aldatzean", diff --git a/core/l10n/fa.php b/core/l10n/fa.php index 7ed2831d821..359eddb73ef 100644 --- a/core/l10n/fa.php +++ b/core/l10n/fa.php @@ -53,6 +53,7 @@ "Error" => "خطا", "The app name is not specified." => "نام برنامه تعیین نشده است.", "The required file {file} is not installed!" => "پرونده { پرونده} درخواست شده نصب نشده است !", +"Share" => "اشتراک‌گزاری", "Error while sharing" => "خطا Ø¯Ø±ØØ§Ù„ به اشتراک گذاشتن", "Error while unsharing" => "خطا Ø¯Ø±ØØ§Ù„ لغو اشتراک", "Error while changing permissions" => "خطا در ØØ§Ù„ تغییر مجوز", @@ -101,6 +102,7 @@ "Add" => "Ø§ÙØ²ÙˆØ¯Ù†", "Security Warning" => "اخطار امنیتی", "No secure random number generator is available, please enable the PHP OpenSSL extension." => "هیچ مولد تصادÙÛŒ امن در دسترس نیست، Ù„Ø·ÙØ§ ÙØ±Ù…ت PHP OpenSSL را ÙØ¹Ø§Ù„ نمایید.", +"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "بدون وجود یک تولید کننده اعداد تصادÙÛŒ امن ØŒ یک مهاجم ممکن است این قابلیت را داشته باشد Ú©Ù‡ پیشگویی کند پسوورد های راه انداز Ú¯Ø±ÙØªÙ‡ شده Ùˆ کنترلی روی ØØ³Ø§Ø¨ کاربری شما داشته باشد .", "Create an <strong>admin account</strong>" => "Ù„Ø·ÙØ§ یک <strong> شناسه برای مدیر</strong> بسازید", "Advanced" => "ØØ±ÙÙ‡ ای", "Data folder" => "پوشه اطلاعاتی", diff --git a/core/l10n/fi_FI.php b/core/l10n/fi_FI.php index 6b5a833f36e..1f2568f9513 100644 --- a/core/l10n/fi_FI.php +++ b/core/l10n/fi_FI.php @@ -49,6 +49,7 @@ "Error" => "Virhe", "The app name is not specified." => "Sovelluksen nimeä ei ole määritelty.", "The required file {file} is not installed!" => "Vaadittua tiedostoa {file} ei ole asennettu!", +"Share" => "Jaa", "Error while sharing" => "Virhe jaettaessa", "Error while unsharing" => "Virhe jakoa peruttaessa", "Error while changing permissions" => "Virhe oikeuksia muuttaessa", @@ -77,6 +78,8 @@ "Error setting expiration date" => "Virhe päättymispäivää asettaessa", "Sending ..." => "Lähetetään...", "Email sent" => "Sähköposti lähetetty", +"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>." => "Päivitys epäonnistui. Ilmoita ongelmasta <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud-yhteisölle</a>.", +"The update was successful. Redirecting you to ownCloud now." => "Päivitys onnistui. Selain ohjautuu nyt ownCloudiisi.", "ownCloud password reset" => "ownCloud-salasanan nollaus", "Use the following link to reset your password: {link}" => "Voit palauttaa salasanasi seuraavassa osoitteessa: {link}", "You will receive a link to reset your password via Email." => "Saat sähköpostitse linkin nollataksesi salasanan.", diff --git a/core/l10n/fr.php b/core/l10n/fr.php index 46aac990bd2..e3b70836521 100644 --- a/core/l10n/fr.php +++ b/core/l10n/fr.php @@ -53,6 +53,8 @@ "Error" => "Erreur", "The app name is not specified." => "Le nom de l'application n'est pas spécifié.", "The required file {file} is not installed!" => "Le fichier requis {file} n'est pas installé !", +"Share" => "Partager", +"Shared" => "Partagé", "Error while sharing" => "Erreur lors de la mise en partage", "Error while unsharing" => "Erreur lors de l'annulation du partage", "Error while changing permissions" => "Erreur lors du changement des permissions", diff --git a/core/l10n/gl.php b/core/l10n/gl.php index a45d45d908c..e96d6962c90 100644 --- a/core/l10n/gl.php +++ b/core/l10n/gl.php @@ -53,6 +53,7 @@ "Error" => "Erro", "The app name is not specified." => "Non se especificou o nome do aplicativo.", "The required file {file} is not installed!" => "Non está instalado o ficheiro {file} que se precisa", +"Share" => "Compartir", "Error while sharing" => "Produciuse un erro ao compartir", "Error while unsharing" => "Produciuse un erro ao deixar de compartir", "Error while changing permissions" => "Produciuse un erro ao cambiar os permisos", diff --git a/core/l10n/he.php b/core/l10n/he.php index 88da2e8ddea..b7292c6edee 100644 --- a/core/l10n/he.php +++ b/core/l10n/he.php @@ -53,6 +53,7 @@ "Error" => "שגי××”", "The app name is not specified." => "×©× ×”×™×™×©×•× ×œ× ×¦×•×™×Ÿ.", "The required file {file} is not installed!" => "הקובץ ×”× ×“×¨×© {file} ××™× ×• מותקן!", +"Share" => "שתף", "Error while sharing" => "שגי××” במהלך השיתוף", "Error while unsharing" => "שגי××” במהלך ביטול השיתוף", "Error while changing permissions" => "שגי××” במהלך ×©×™× ×•×™ ההגדרות", diff --git a/core/l10n/hr.php b/core/l10n/hr.php index 32e3779ee4b..78b767305a3 100644 --- a/core/l10n/hr.php +++ b/core/l10n/hr.php @@ -35,6 +35,7 @@ "Yes" => "Da", "Ok" => "U redu", "Error" => "PogreÅ¡ka", +"Share" => "Podijeli", "Error while sharing" => "GreÅ¡ka prilikom djeljenja", "Error while unsharing" => "GreÅ¡ka prilikom iskljuÄivanja djeljenja", "Error while changing permissions" => "GreÅ¡ka prilikom promjena prava", diff --git a/core/l10n/hu_HU.php b/core/l10n/hu_HU.php index e03c6af27f5..30ddc7b8677 100644 --- a/core/l10n/hu_HU.php +++ b/core/l10n/hu_HU.php @@ -53,6 +53,7 @@ "Error" => "Hiba", "The app name is not specified." => "Az alkalmazás neve nincs megadva.", "The required file {file} is not installed!" => "A szükséges fájl: {file} nincs telepÃtve!", +"Share" => "Megosztás", "Error while sharing" => "Nem sikerült létrehozni a megosztást", "Error while unsharing" => "Nem sikerült visszavonni a megosztást", "Error while changing permissions" => "Nem sikerült módosÃtani a jogosultságokat", diff --git a/core/l10n/ia.php b/core/l10n/ia.php index 08f283450f8..7f2eac17367 100644 --- a/core/l10n/ia.php +++ b/core/l10n/ia.php @@ -21,6 +21,7 @@ "December" => "Decembre", "Settings" => "Configurationes", "Cancel" => "Cancellar", +"Share" => "Compartir", "Password" => "Contrasigno", "ownCloud password reset" => "Reinitialisation del contrasigno de ownCLoud", "Username" => "Nomine de usator", diff --git a/core/l10n/id.php b/core/l10n/id.php index 2c66ea8ce3d..896d444e833 100644 --- a/core/l10n/id.php +++ b/core/l10n/id.php @@ -36,6 +36,7 @@ "Yes" => "Ya", "Ok" => "Oke", "Error" => "gagal", +"Share" => "berbagi", "Error while sharing" => "gagal ketika membagikan", "Error while unsharing" => "gagal ketika membatalkan pembagian", "Error while changing permissions" => "gagal ketika merubah perijinan", diff --git a/core/l10n/is.php b/core/l10n/is.php index 6df2573100e..98766efc2c9 100644 --- a/core/l10n/is.php +++ b/core/l10n/is.php @@ -53,6 +53,7 @@ "Error" => "Villa", "The app name is not specified." => "Nafn forrits ekki tilgreint", "The required file {file} is not installed!" => "Umbeðina skráin {file} ekki tiltæk!", +"Share" => "Deila", "Error while sharing" => "Villa við deilingu", "Error while unsharing" => "Villa við að hætta deilingu", "Error while changing permissions" => "Villa við að breyta aðgangsheimildum", diff --git a/core/l10n/it.php b/core/l10n/it.php index 88749320d5b..ec094f643a4 100644 --- a/core/l10n/it.php +++ b/core/l10n/it.php @@ -53,6 +53,8 @@ "Error" => "Errore", "The app name is not specified." => "Il nome dell'applicazione non è specificato.", "The required file {file} is not installed!" => "Il file richiesto {file} non è installato!", +"Share" => "Condividi", +"Shared" => "Condivisi", "Error while sharing" => "Errore durante la condivisione", "Error while unsharing" => "Errore durante la rimozione della condivisione", "Error while changing permissions" => "Errore durante la modifica dei permessi", @@ -122,12 +124,12 @@ "web services under your control" => "servizi web nelle tue mani", "Log out" => "Esci", "Automatic logon rejected!" => "Accesso automatico rifiutato.", -"If you did not change your password recently, your account may be compromised!" => "Se non hai cambiato la password recentemente, il tuo account potrebbe essere stato compromesso.", +"If you did not change your password recently, your account may be compromised!" => "Se non hai cambiato la password recentemente, il tuo account potrebbe essere compromesso.", "Please change your password to secure your account again." => "Cambia la password per rendere nuovamente sicuro il tuo account.", "Lost your password?" => "Hai perso la password?", "remember" => "ricorda", "Log in" => "Accedi", "prev" => "precedente", "next" => "successivo", -"Updating ownCloud to version %s, this may take a while." => "Aggiornamento di ownCloud alla versione %s in corso, potrebbe richiedere del tempo." +"Updating ownCloud to version %s, this may take a while." => "Aggiornamento di ownCloud alla versione %s in corso, ciò potrebbe richiedere del tempo." ); diff --git a/core/l10n/ja_JP.php b/core/l10n/ja_JP.php index 7995147f062..155c201d9b7 100644 --- a/core/l10n/ja_JP.php +++ b/core/l10n/ja_JP.php @@ -53,6 +53,8 @@ "Error" => "エラー", "The app name is not specified." => "アプリåãŒã—ã¦ã„ã•れã¦ã„ã¾ã›ã‚“。", "The required file {file} is not installed!" => "å¿…è¦ãªãƒ•ァイル {file} ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“ï¼", +"Share" => "共有", +"Shared" => "共有ä¸", "Error while sharing" => "共有ã§ã‚¨ãƒ©ãƒ¼ç™ºç”Ÿ", "Error while unsharing" => "共有解除ã§ã‚¨ãƒ©ãƒ¼ç™ºç”Ÿ", "Error while changing permissions" => "権é™å¤‰æ›´ã§ã‚¨ãƒ©ãƒ¼ç™ºç”Ÿ", diff --git a/core/l10n/ka_GE.php b/core/l10n/ka_GE.php index 58771e080b3..ab4045601f9 100644 --- a/core/l10n/ka_GE.php +++ b/core/l10n/ka_GE.php @@ -38,6 +38,7 @@ "Yes" => "კი", "Ok" => "დიáƒáƒ®", "Error" => "შეცდáƒáƒ›áƒ", +"Share" => "გáƒáƒ–იáƒáƒ ებáƒ", "Error while sharing" => "შეცდáƒáƒ›áƒ გáƒáƒ–იáƒáƒ ების დრáƒáƒ¡", "Error while unsharing" => "შეცდáƒáƒ›áƒ გáƒáƒ–იáƒáƒ ების გáƒáƒ£áƒ¥áƒ›áƒ”ბის დრáƒáƒ¡", "Error while changing permissions" => "შეცდáƒáƒ›áƒ დáƒáƒ¨áƒ•ების ცვლილების დრáƒáƒ¡", diff --git a/core/l10n/ko.php b/core/l10n/ko.php index 5897b890ec5..91c00c4a570 100644 --- a/core/l10n/ko.php +++ b/core/l10n/ko.php @@ -1,8 +1,8 @@ <?php $TRANSLATIONS = array( -"User %s shared a file with you" => "User %s ê°€ ë‹¹ì‹ ê³¼ 파ì¼ì„ ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤.", -"User %s shared a folder with you" => "User %s ê°€ ë‹¹ì‹ ê³¼ í´ë”를 ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤.", -"User %s shared the file \"%s\" with you. It is available for download here: %s" => "User %s ê°€ íŒŒì¼ \"%s\"를 ë‹¹ì‹ ê³¼ ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤. 다운로드는 여기서 %s í• ìˆ˜ 있습니다.", -"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "User %s ê°€ í´ë” \"%s\"를 ë‹¹ì‹ ê³¼ ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤. 다운로드는 여기서 %s í• ìˆ˜ 있습니다.", +"User %s shared a file with you" => "%s ë‹˜ì´ íŒŒì¼ì„ ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤", +"User %s shared a folder with you" => "%s ë‹˜ì´ í´ë”를 ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤", +"User %s shared the file \"%s\" with you. It is available for download here: %s" => "%s ë‹˜ì´ íŒŒì¼ \"%s\"ì„(를) ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤. 여기ì—서 ë‹¤ìš´ë¡œë“œí• ìˆ˜ 있습니다: %s", +"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "%s ë‹˜ì´ í´ë” \"%s\"ì„(를) ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤. 여기ì—서 ë‹¤ìš´ë¡œë“œí• ìˆ˜ 있습니다: %s", "Category type not provided." => "분류 형ì‹ì´ ì œê³µë˜ì§€ 않았습니다.", "No category to add?" => "ì¶”ê°€í• ë¶„ë¥˜ê°€ 없습니까?", "This category already exists: " => "ì´ ë¶„ë¥˜ëŠ” ì´ë¯¸ 존재합니다:", @@ -53,6 +53,8 @@ "Error" => "오류", "The app name is not specified." => "앱 ì´ë¦„ì´ ì§€ì •ë˜ì§€ 않았습니다.", "The required file {file} is not installed!" => "필요한 íŒŒì¼ {file}ì´(ê°€) 설치ë˜ì§€ 않았습니다!", +"Share" => "ê³µìœ ", +"Shared" => "ê³µìœ ë¨", "Error while sharing" => "ê³µìœ í•˜ëŠ” 중 오류 ë°œìƒ", "Error while unsharing" => "ê³µìœ í•´ì œí•˜ëŠ” 중 오류 ë°œìƒ", "Error while changing permissions" => "권한 변경하는 중 오류 ë°œìƒ", @@ -82,6 +84,8 @@ "Error setting expiration date" => "만료 ë‚ ì§œ ì„¤ì • 오류", "Sending ..." => "ì „ì†¡ 중...", "Email sent" => "ì´ë©”ì¼ ë°œì†¡ë¨", +"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>." => "ì—…ë°ì´íŠ¸ê°€ 실패하였습니다. ì´ ë¬¸ì œë¥¼ <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud 커뮤니티</a>ì— ë³´ê³ í•´ 주ì‹ì‹œì˜¤.", +"The update was successful. Redirecting you to ownCloud now." => "ì—…ë°ì´íŠ¸ê°€ 성공하였습니다. ownCloud로 ëŒì•„갑니다.", "ownCloud password reset" => "ownCloud 암호 ìž¬ì„¤ì •", "Use the following link to reset your password: {link}" => "ë‹¤ìŒ ë§í¬ë¥¼ 사용하여 암호를 ìž¬ì„¤ì •í• ìˆ˜ 있습니다: {link}", "You will receive a link to reset your password via Email." => "ì´ë©”ì¼ë¡œ 암호 ìž¬ì„¤ì • ë§í¬ë¥¼ 보냈습니다.", @@ -127,5 +131,5 @@ "Log in" => "로그ì¸", "prev" => "ì´ì „", "next" => "다ìŒ", -"Updating ownCloud to version %s, this may take a while." => "ownCloud 를 ë²„ì ¼ %s로 ì—…ë°ì´íЏ 하는 중, ì‹œê°„ì´ ì†Œìš”ë©ë‹ˆë‹¤." +"Updating ownCloud to version %s, this may take a while." => "ownCloud를 ë²„ì „ %s(으)로 ì—…ë°ì´íŠ¸í•©ë‹ˆë‹¤. ìž ì‹œ ê¸°ë‹¤ë ¤ 주ì‹ì‹œì˜¤." ); diff --git a/core/l10n/lb.php b/core/l10n/lb.php index 85d83d1f953..4069a778365 100644 --- a/core/l10n/lb.php +++ b/core/l10n/lb.php @@ -35,6 +35,7 @@ "Yes" => "Jo", "Ok" => "OK", "Error" => "Fehler", +"Share" => "Deelen", "Password" => "Passwuert", "Unshare" => "Net méi deelen", "create" => "erstellen", diff --git a/core/l10n/lt_LT.php b/core/l10n/lt_LT.php index 040a5a7f7fc..c2dc47c826c 100644 --- a/core/l10n/lt_LT.php +++ b/core/l10n/lt_LT.php @@ -38,6 +38,7 @@ "Yes" => "Taip", "Ok" => "Gerai", "Error" => "Klaida", +"Share" => "Dalintis", "Error while sharing" => "Klaida, dalijimosi metu", "Error while unsharing" => "Klaida, kai atÅ¡aukiamas dalijimasis", "Error while changing permissions" => "Klaida, keiÄiant privilegijas", diff --git a/core/l10n/lv.php b/core/l10n/lv.php index 66866249e76..a145c50464f 100644 --- a/core/l10n/lv.php +++ b/core/l10n/lv.php @@ -1,4 +1,16 @@ <?php $TRANSLATIONS = array( +"User %s shared a file with you" => "LietotÄjs %s ar jums dalÄ«jÄs ar datni.", +"User %s shared a folder with you" => "LietotÄjs %s ar jums dalÄ«jÄs ar mapi.", +"User %s shared the file \"%s\" with you. It is available for download here: %s" => "LietotÄjs %s ar jums dalÄ«jÄs ar datni “%sâ€. To var lejupielÄdÄ“t Å¡eit — %s", +"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "LietotÄjs %s ar jums dalÄ«jÄs ar mapi “%sâ€. To var lejupielÄdÄ“t Å¡eit — %s", +"Category type not provided." => "Kategorijas tips nav norÄdÄ«ts.", +"No category to add?" => "Nav kategoriju, ko pievienot?", +"This category already exists: " => "Å Äda kategorija jau eksistÄ“:", +"Object type not provided." => "Objekta tips nav norÄdÄ«ts.", +"%s ID not provided." => "%s ID nav norÄdÄ«ts.", +"Error adding %s to favorites." => "Kļūda, pievienojot %s izlasei.", +"No categories selected for deletion." => "Neviena kategorija nav izvÄ“lÄ“ta dzēšanai", +"Error removing %s from favorites." => "Kļūda, izņemot %s no izlases.", "Sunday" => "SvÄ“tdiena", "Monday" => "Pirmdiena", "Tuesday" => "Otrdiena", @@ -19,12 +31,66 @@ "November" => "Novembris", "December" => "Decembris", "Settings" => "IestatÄ«jumi", +"seconds ago" => "sekundes atpakaļ", +"1 minute ago" => "pirms 1 minÅ«tes", +"{minutes} minutes ago" => "pirms {minutes} minÅ«tÄ“m", +"1 hour ago" => "pirms 1 stundas", +"{hours} hours ago" => "pirms {hours} stundÄm", +"today" => "Å¡odien", +"yesterday" => "vakar", +"{days} days ago" => "pirms {days} dienÄm", +"last month" => "pagÄjuÅ¡ajÄ mÄ“nesÄ«", +"{months} months ago" => "pirms {months} mÄ“neÅ¡iem", +"months ago" => "mÄ“neÅ¡us atpakaļ", +"last year" => "gÄjuÅ¡ajÄ gadÄ", +"years ago" => "gadus atpakaļ", +"Choose" => "IzvÄ“lieties", "Cancel" => "Atcelt", -"Error" => "Kļūme", +"No" => "NÄ“", +"Yes" => "JÄ", +"Ok" => "Labi", +"The object type is not specified." => "Nav norÄdÄ«ts objekta tips.", +"Error" => "Kļūda", +"The app name is not specified." => "Nav norÄdÄ«ts lietotnes nosaukums.", +"The required file {file} is not installed!" => "PieprasÄ«tÄ datne {file} nav instalÄ“ta!", +"Share" => "DalÄ«ties", +"Shared" => "KopÄ«gs", +"Error while sharing" => "Kļūda, daloties", +"Error while unsharing" => "Kļūda, beidzot dalÄ«ties", +"Error while changing permissions" => "Kļūda, mainot atļaujas", +"Shared with you and the group {group} by {owner}" => "{owner} dalÄ«jÄs ar jums un grupu {group}", +"Shared with you by {owner}" => "{owner} dalÄ«jÄs ar jums", +"Share with" => "DalÄ«ties ar", +"Share with link" => "DalÄ«ties ar saiti", +"Password protect" => "AizsargÄt ar paroli", "Password" => "Parole", -"Unshare" => "PÄrtraukt lÄ«dzdalīšanu", -"Use the following link to reset your password: {link}" => "Izmantojiet Å¡o linku lai mainÄ«tu paroli", +"Email link to person" => "SÅ«tÄ«t saiti personai pa e-pastu", +"Send" => "SÅ«tÄ«t", +"Set expiration date" => "Iestaties termiņa datumu", +"Expiration date" => "Termiņa datums", +"Share via email:" => "DalÄ«ties, izmantojot e-pastu:", +"No people found" => "Nav atrastu cilvÄ“ku", +"Resharing is not allowed" => "AtkÄrtota dalīšanÄs nav atļauta", +"Shared in {item} with {user}" => "DalÄ«jÄs ar {item} ar {user}", +"Unshare" => "Beigt dalÄ«ties", +"can edit" => "var rediģēt", +"access control" => "piekļuves vadÄ«ba", +"create" => "izveidot", +"update" => "atjauninÄt", +"delete" => "dzÄ“st", +"share" => "dalÄ«ties", +"Password protected" => "AizsargÄts ar paroli", +"Error unsetting expiration date" => "Kļūda, noņemot termiņa datumu", +"Error setting expiration date" => "Kļūda, iestatot termiņa datumu", +"Sending ..." => "SÅ«ta...", +"Email sent" => "VÄ“stule nosÅ«tÄ«ta", +"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>." => "AtjauninÄÅ¡ana beidzÄs nesekmÄ«gi. LÅ«dzu, ziņojiet par Å¡o problÄ“mu <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud kopienai</a>.", +"The update was successful. Redirecting you to ownCloud now." => "AtjauninÄÅ¡ana beidzÄs sekmÄ«gi. Tagad pÄrsÅ«ta jÅ«s uz ownCloud.", +"ownCloud password reset" => "ownCloud paroles maiņa", +"Use the following link to reset your password: {link}" => "Izmantojiet Å¡o saiti, lai mainÄ«tu paroli: {link}", "You will receive a link to reset your password via Email." => "JÅ«s savÄ epastÄ saņemsiet interneta saiti, caur kuru varÄ“siet atjaunot paroli.", +"Reset email send." => "AtstatÄ«t e-pasta sÅ«tīšanu.", +"Request failed!" => "PieprasÄ«jums neizdevÄs!", "Username" => "LietotÄjvÄrds", "Request reset" => "PieprasÄ«t paroles maiņu", "Your password was reset" => "JÅ«su parole tika nomainÄ«ta", @@ -33,23 +99,37 @@ "Reset password" => "MainÄ«t paroli", "Personal" => "PersonÄ«gi", "Users" => "LietotÄji", -"Apps" => "AplikÄcijas", +"Apps" => "Lietotnes", "Admin" => "Administrators", "Help" => "PalÄ«dzÄ«ba", +"Access forbidden" => "Pieeja ir liegta", "Cloud not found" => "MÄkonis netika atrasts", +"Edit categories" => "Rediģēt kategoriju", +"Add" => "Pievienot", "Security Warning" => "BrÄ«dinÄjums par drošību", +"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Nav pieejams droÅ¡s nejauÅ¡u skaitļu Ä£enerators. LÅ«dzu, aktivÄ“jiet PHP OpenSSL paplaÅ¡inÄjumu.", +"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Bez droÅ¡a nejauÅ¡u skaitļu Ä£eneratora uzbrucÄ“js var paredzÄ“t paroļu atjaunoÅ¡anas marÄ·ierus un pÄrņem jÅ«su kontu.", +"Your data directory and your files are probably accessible from the internet. The .htaccess file that ownCloud provides is not working. We strongly suggest that you configure your webserver in a way that the data directory is no longer accessible or you move the data directory outside the webserver document root." => "JÅ«su datu direktorija un datnes visdrÄ«zÄk ir pieejamas no interneta. ownCloud nodroÅ¡inÄtÄ .htaccess datne nedarbojas. MÄ“s iesakÄm konfigurÄ“t serveri tÄ, lai datu direktorija vairs nebÅ«tu pieejama, vai arÄ« pÄrvietojiet datu direktoriju Ärpus tÄ«mekļa servera dokumentu saknes.", +"Create an <strong>admin account</strong>" => "Izveidot <strong>administratora kontu</strong>", +"Advanced" => "PaplaÅ¡inÄti", "Data folder" => "Datu mape", -"Configure the database" => "NokonfigurÄ“t datubÄzi", +"Configure the database" => "KonfigurÄ“t datubÄzi", "will be used" => "tiks izmantots", "Database user" => "DatubÄzes lietotÄjs", "Database password" => "DatubÄzes parole", "Database name" => "DatubÄzes nosaukums", -"Database host" => "DatubÄzes mÄjvieta", -"Finish setup" => "Pabeigt uzstÄdÄ«jumus", -"Log out" => "Izlogoties", +"Database tablespace" => "DatubÄzes tabulas telpa", +"Database host" => "DatubÄzes serveris", +"Finish setup" => "Pabeigt iestatīšanu", +"web services under your control" => "jÅ«su vadÄ«bÄ esoÅ¡ie tÄ«mekļa servisi", +"Log out" => "IzrakstÄ«ties", +"Automatic logon rejected!" => "AutomÄtiskÄ ierakstīšanÄs ir noraidÄ«ta!", +"If you did not change your password recently, your account may be compromised!" => "Ja neesat pÄ“dÄ“jÄ laikÄ mainÄ«jis paroli, iespÄ“jams, ka jÅ«su konts ir kompromitÄ“ts.", +"Please change your password to secure your account again." => "LÅ«dzu, nomainiet savu paroli, lai atkal nodroÅ¡inÄtu savu kontu.", "Lost your password?" => "AizmirsÄt paroli?", "remember" => "atcerÄ“ties", -"Log in" => "Ielogoties", +"Log in" => "IerakstÄ«ties", "prev" => "iepriekšējÄ", -"next" => "nÄkamÄ" +"next" => "nÄkamÄ", +"Updating ownCloud to version %s, this may take a while." => "Atjaunina ownCloud uz versiju %s. Tas var aizņemt kÄdu laiciņu." ); diff --git a/core/l10n/mk.php b/core/l10n/mk.php index 3a8991437ba..0b202fa6667 100644 --- a/core/l10n/mk.php +++ b/core/l10n/mk.php @@ -53,6 +53,7 @@ "Error" => "Грешка", "The app name is not specified." => "Името на апликацијата не е Ñпецифицирано.", "The required file {file} is not installed!" => "Задолжителната датотека {file} не е инÑталирана!", +"Share" => "Сподели", "Error while sharing" => "Грешка при Ñподелување", "Error while unsharing" => "Грешка при прекин на Ñподелување", "Error while changing permissions" => "Грешка при промена на привилегии", diff --git a/core/l10n/ms_MY.php b/core/l10n/ms_MY.php index 3eff044ac55..477e82ea9f1 100644 --- a/core/l10n/ms_MY.php +++ b/core/l10n/ms_MY.php @@ -27,6 +27,7 @@ "Yes" => "Ya", "Ok" => "Ok", "Error" => "Ralat", +"Share" => "Kongsi", "Password" => "Kata laluan", "ownCloud password reset" => "Set semula kata lalaun ownCloud", "Use the following link to reset your password: {link}" => "Guna pautan berikut untuk menetapkan semula kata laluan anda: {link}", diff --git a/core/l10n/nb_NO.php b/core/l10n/nb_NO.php index a39e5d44bc4..65d6ea00cce 100644 --- a/core/l10n/nb_NO.php +++ b/core/l10n/nb_NO.php @@ -41,6 +41,7 @@ "Yes" => "Ja", "Ok" => "Ok", "Error" => "Feil", +"Share" => "Del", "Error while sharing" => "Feil under deling", "Share with" => "Del med", "Share with link" => "Del med link", diff --git a/core/l10n/nl.php b/core/l10n/nl.php index 27d32cfcc5e..aca9b11cd12 100644 --- a/core/l10n/nl.php +++ b/core/l10n/nl.php @@ -53,6 +53,8 @@ "Error" => "Fout", "The app name is not specified." => "De app naam is niet gespecificeerd.", "The required file {file} is not installed!" => "Het vereiste bestand {file} is niet geïnstalleerd!", +"Share" => "Delen", +"Shared" => "Gedeeld", "Error while sharing" => "Fout tijdens het delen", "Error while unsharing" => "Fout tijdens het stoppen met delen", "Error while changing permissions" => "Fout tijdens het veranderen van permissies", @@ -82,6 +84,8 @@ "Error setting expiration date" => "Fout tijdens het instellen van de vervaldatum", "Sending ..." => "Versturen ...", "Email sent" => "E-mail verzonden", +"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>." => "De update is niet geslaagd. Meld dit probleem aan bij de <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>.", +"The update was successful. Redirecting you to ownCloud now." => "De update is geslaagd. U wordt teruggeleid naar uw eigen ownCloud.", "ownCloud password reset" => "ownCloud wachtwoord herstellen", "Use the following link to reset your password: {link}" => "Gebruik de volgende link om je wachtwoord te resetten: {link}", "You will receive a link to reset your password via Email." => "U ontvangt een link om uw wachtwoord opnieuw in te stellen via e-mail.", diff --git a/core/l10n/oc.php b/core/l10n/oc.php index 3443f9d501e..5b399dd8264 100644 --- a/core/l10n/oc.php +++ b/core/l10n/oc.php @@ -36,6 +36,7 @@ "Yes" => "Ã’c", "Ok" => "D'accòrdi", "Error" => "Error", +"Share" => "Parteja", "Error while sharing" => "Error al partejar", "Error while unsharing" => "Error al non partejar", "Error while changing permissions" => "Error al cambiar permissions", diff --git a/core/l10n/pl.php b/core/l10n/pl.php index 142593930d0..1376fa1359d 100644 --- a/core/l10n/pl.php +++ b/core/l10n/pl.php @@ -53,6 +53,8 @@ "Error" => "Błąd", "The app name is not specified." => "Nazwa aplikacji nie jest okreÅ›lona.", "The required file {file} is not installed!" => "Żądany plik {file} nie jest zainstalowany!", +"Share" => "UdostÄ™pnij", +"Shared" => "UdostÄ™pniono", "Error while sharing" => "Błąd podczas współdzielenia", "Error while unsharing" => "Błąd podczas zatrzymywania współdzielenia", "Error while changing permissions" => "Błąd przy zmianie uprawnieÅ„", diff --git a/core/l10n/pt_BR.php b/core/l10n/pt_BR.php index 8ca2dd4fd0e..929f298c4c3 100644 --- a/core/l10n/pt_BR.php +++ b/core/l10n/pt_BR.php @@ -1,4 +1,8 @@ <?php $TRANSLATIONS = array( +"User %s shared a file with you" => "O usuário %s compartilhou um arquivo com você", +"User %s shared a folder with you" => "O usuário %s compartilhou uma pasta com você", +"User %s shared the file \"%s\" with you. It is available for download here: %s" => "O usuário %s compartilhou com você o arquivo \"%s\", que está disponÃvel para download em: %s", +"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "O usuário %s compartilhou com você a pasta \"%s\", que está disponÃvel para download em: %s", "Category type not provided." => "Tipo de categoria não fornecido.", "No category to add?" => "Nenhuma categoria adicionada?", "This category already exists: " => "Essa categoria já existe", @@ -49,6 +53,8 @@ "Error" => "Erro", "The app name is not specified." => "O nome do app não foi especificado.", "The required file {file} is not installed!" => "O arquivo {file} necessário não está instalado!", +"Share" => "Compartilhar", +"Shared" => "Compartilhados", "Error while sharing" => "Erro ao compartilhar", "Error while unsharing" => "Erro ao descompartilhar", "Error while changing permissions" => "Erro ao mudar permissões", @@ -58,6 +64,8 @@ "Share with link" => "Compartilhar com link", "Password protect" => "Proteger com senha", "Password" => "Senha", +"Email link to person" => "Enviar link por e-mail", +"Send" => "Enviar", "Set expiration date" => "Definir data de expiração", "Expiration date" => "Data de expiração", "Share via email:" => "Compartilhar via e-mail:", @@ -74,6 +82,10 @@ "Password protected" => "Protegido com senha", "Error unsetting expiration date" => "Erro ao remover data de expiração", "Error setting expiration date" => "Erro ao definir data de expiração", +"Sending ..." => "Enviando ...", +"Email sent" => "E-mail enviado", +"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>." => "A atualização falhou. Por favor, relate este problema para a <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">comunidade ownCloud</a>.", +"The update was successful. Redirecting you to ownCloud now." => "A atualização teve êxito. Você será redirecionado ao ownCloud agora.", "ownCloud password reset" => "Redefinir senha ownCloud", "Use the following link to reset your password: {link}" => "Use o seguinte link para redefinir sua senha: {link}", "You will receive a link to reset your password via Email." => "Você receberá um link para redefinir sua senha via e-mail.", @@ -118,5 +130,6 @@ "remember" => "lembrete", "Log in" => "Log in", "prev" => "anterior", -"next" => "próximo" +"next" => "próximo", +"Updating ownCloud to version %s, this may take a while." => "Atualizando ownCloud para a versão %s, isto pode levar algum tempo." ); diff --git a/core/l10n/pt_PT.php b/core/l10n/pt_PT.php index 4f60bf2694d..2189a7e811c 100644 --- a/core/l10n/pt_PT.php +++ b/core/l10n/pt_PT.php @@ -53,6 +53,8 @@ "Error" => "Erro", "The app name is not specified." => "O nome da aplicação não foi especificado", "The required file {file} is not installed!" => "O ficheiro necessário {file} não está instalado!", +"Share" => "Partilhar", +"Shared" => "Partilhado", "Error while sharing" => "Erro ao partilhar", "Error while unsharing" => "Erro ao deixar de partilhar", "Error while changing permissions" => "Erro ao mudar permissões", diff --git a/core/l10n/ro.php b/core/l10n/ro.php index 3e389bfab0c..83587fa4a76 100644 --- a/core/l10n/ro.php +++ b/core/l10n/ro.php @@ -53,6 +53,7 @@ "Error" => "Eroare", "The app name is not specified." => "Numele aplicaÈ›iei nu a fost specificat", "The required file {file} is not installed!" => "FiÈ™ierul obligatoriu {file} nu este instalat!", +"Share" => "Partajează", "Error while sharing" => "Eroare la partajare", "Error while unsharing" => "Eroare la anularea partajării", "Error while changing permissions" => "Eroare la modificarea permisiunilor", diff --git a/core/l10n/ru.php b/core/l10n/ru.php index fd6a7c6094a..7b11ea43a4b 100644 --- a/core/l10n/ru.php +++ b/core/l10n/ru.php @@ -53,6 +53,7 @@ "Error" => "Ошибка", "The app name is not specified." => "Ð˜Ð¼Ñ Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð½Ðµ указано", "The required file {file} is not installed!" => "Ðеобходимый файл {file} не уÑтановлен!", +"Share" => "Открыть доÑтуп", "Error while sharing" => "Ошибка при открытии доÑтупа", "Error while unsharing" => "Ошибка при закрытии доÑтупа", "Error while changing permissions" => "Ошибка при Ñмене разрешений", diff --git a/core/l10n/ru_RU.php b/core/l10n/ru_RU.php index c706d1c6a1e..53a3b9b0d59 100644 --- a/core/l10n/ru_RU.php +++ b/core/l10n/ru_RU.php @@ -53,6 +53,8 @@ "Error" => "Ошибка", "The app name is not specified." => "Ð˜Ð¼Ñ Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð½Ðµ указано.", "The required file {file} is not installed!" => "Требуемый файл {файл} не уÑтановлен!", +"Share" => "Сделать общим", +"Shared" => "Опубликовано", "Error while sharing" => "Ошибка ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¾Ð±Ñ‰ÐµÐ³Ð¾ доÑтупа", "Error while unsharing" => "Ошибка Ð¾Ñ‚ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð¾Ð±Ñ‰ÐµÐ³Ð¾ доÑтупа", "Error while changing permissions" => "Ошибка при изменении прав доÑтупа", diff --git a/core/l10n/si_LK.php b/core/l10n/si_LK.php index 3c4e69e89be..eab1ba10018 100644 --- a/core/l10n/si_LK.php +++ b/core/l10n/si_LK.php @@ -34,6 +34,7 @@ "Yes" => "ඔව්", "Ok" => "හරි", "Error" => "දà·à·‚යක්", +"Share" => "බෙද෠හද෠ගන්න", "Share with" => "බෙදà·à¶œà¶±à·Šà¶±", "Share with link" => "යොමුවක් මඟින් බෙදà·à¶œà¶±à·Šà¶±", "Password protect" => "මුර පදයකින් ආරක්à·à·à¶šà¶»à¶±à·Šà¶±", diff --git a/core/l10n/sk_SK.php b/core/l10n/sk_SK.php index ba488532f5e..ad5ae0ea371 100644 --- a/core/l10n/sk_SK.php +++ b/core/l10n/sk_SK.php @@ -53,6 +53,8 @@ "Error" => "Chyba", "The app name is not specified." => "NeÅ¡pecifikované meno aplikácie.", "The required file {file} is not installed!" => "Požadovaný súbor {file} nie je inÅ¡talovaný!", +"Share" => "Zdieľaj", +"Shared" => "Zdieľané", "Error while sharing" => "Chyba poÄas zdieľania", "Error while unsharing" => "Chyba poÄas ukonÄenia zdieľania", "Error while changing permissions" => "Chyba poÄas zmeny oprávnenÃ", diff --git a/core/l10n/sl.php b/core/l10n/sl.php index 413a46ffc79..54cf817a7a0 100644 --- a/core/l10n/sl.php +++ b/core/l10n/sl.php @@ -53,6 +53,7 @@ "Error" => "Napaka", "The app name is not specified." => "Ime aplikacije ni podano.", "The required file {file} is not installed!" => "Zahtevana datoteka {file} ni nameÅ¡Äena!", +"Share" => "Souporaba", "Error while sharing" => "Napaka med souporabo", "Error while unsharing" => "Napaka med odstranjevanjem souporabe", "Error while changing permissions" => "Napaka med spreminjanjem dovoljenj", diff --git a/core/l10n/sr.php b/core/l10n/sr.php index e8547c58acc..ecd316b7cfb 100644 --- a/core/l10n/sr.php +++ b/core/l10n/sr.php @@ -51,6 +51,7 @@ "Error" => "Грешка", "The app name is not specified." => "Име програма није унето.", "The required file {file} is not installed!" => "Потребна датотека {file} није инÑталирана.", +"Share" => "Дељење", "Error while sharing" => "Грешка у дељењу", "Error while unsharing" => "Грешка код иÑкључења дељења", "Error while changing permissions" => "Грешка код промене дозвола", diff --git a/core/l10n/sv.php b/core/l10n/sv.php index 1e461282c0b..a0dde652693 100644 --- a/core/l10n/sv.php +++ b/core/l10n/sv.php @@ -53,6 +53,8 @@ "Error" => "Fel", "The app name is not specified." => " Namnet pÃ¥ appen är inte specificerad.", "The required file {file} is not installed!" => "Den nödvändiga filen {file} är inte installerad!", +"Share" => "Dela", +"Shared" => "Delad", "Error while sharing" => "Fel vid delning", "Error while unsharing" => "Fel när delning skulle avslutas", "Error while changing permissions" => "Fel vid ändring av rättigheter", diff --git a/core/l10n/ta_LK.php b/core/l10n/ta_LK.php index f4f204968ff..2b8829c717f 100644 --- a/core/l10n/ta_LK.php +++ b/core/l10n/ta_LK.php @@ -49,6 +49,7 @@ "Error" => "வழà¯", "The app name is not specified." => "செயலி பெயர௠கà¯à®±à®¿à®ªà¯à®ªà®¿à®Ÿà®ªà¯à®ªà®Ÿà®µà®¿à®²à¯à®²à¯ˆ.", "The required file {file} is not installed!" => "தேவைபà¯à®ªà®Ÿà¯à®Ÿ கோபà¯à®ªà¯ {கோபà¯à®ªà¯} நிறà¯à®µà®ªà¯à®ªà®Ÿà®µà®¿à®²à¯à®²à¯ˆ!", +"Share" => "பகிரà¯à®µà¯", "Error while sharing" => "பகிரà¯à®®à¯ போதான வழà¯", "Error while unsharing" => "பகிராமல௠உளà¯à®³à®ªà¯à®ªà¯‹à®¤à®¾à®© வழà¯", "Error while changing permissions" => "அனà¯à®®à®¤à®¿à®•ள௠மாறà¯à®®à¯à®ªà¯‹à®¤à®¾à®© வழà¯", diff --git a/core/l10n/th_TH.php b/core/l10n/th_TH.php index 9b491d24eae..ffab0bb9564 100644 --- a/core/l10n/th_TH.php +++ b/core/l10n/th_TH.php @@ -53,6 +53,8 @@ "Error" => "พบข้à¸à¸œà¸´à¸”พลาด", "The app name is not specified." => "ชื่à¸à¸‚à¸à¸‡à¹à¸à¸›à¸¢à¸±à¸‡à¹„ม่ได้รับà¸à¸²à¸£à¸£à¸°à¸šà¸¸à¸Šà¸·à¹ˆà¸", "The required file {file} is not installed!" => "ไฟล์ {file} ซึ่งเป็นไฟล์ที่จำเป็นต้à¸à¸‡à¹„ด้รับà¸à¸²à¸£à¸•ิดตั้งไว้à¸à¹ˆà¸à¸™ ยังไม่ได้ถูà¸à¸•ิดตั้ง", +"Share" => "à¹à¸Šà¸£à¹Œ", +"Shared" => "à¹à¸Šà¸£à¹Œà¹à¸¥à¹‰à¸§", "Error while sharing" => "เà¸à¸´à¸”ข้à¸à¸œà¸´à¸”พลาดในระหว่างà¸à¸²à¸£à¹à¸Šà¸£à¹Œà¸‚้à¸à¸¡à¸¹à¸¥", "Error while unsharing" => "เà¸à¸´à¸”ข้à¸à¸œà¸´à¸”พลาดในà¸à¸²à¸£à¸¢à¸à¹€à¸¥à¸´à¸à¸à¸²à¸£à¹à¸Šà¸£à¹Œà¸‚้à¸à¸¡à¸¹à¸¥", "Error while changing permissions" => "เà¸à¸´à¸”ข้à¸à¸œà¸´à¸”พลาดในà¸à¸²à¸£à¹€à¸›à¸¥à¸µà¹ˆà¸¢à¸™à¸ªà¸´à¸—ธิ์à¸à¸²à¸£à¹€à¸‚้าใช้งาน", diff --git a/core/l10n/tr.php b/core/l10n/tr.php index f64ecbedd5a..624887674d1 100644 --- a/core/l10n/tr.php +++ b/core/l10n/tr.php @@ -53,6 +53,7 @@ "Error" => "Hata", "The app name is not specified." => "uygulama adı belirtilmedi.", "The required file {file} is not installed!" => "İhtiyaç duyulan {file} dosyası kurulu deÄŸil.", +"Share" => "PaylaÅŸ", "Error while sharing" => "Paylaşım sırasında hata ", "Error while unsharing" => "Paylaşım iptal ediliyorken hata", "Error while changing permissions" => "İzinleri deÄŸiÅŸtirirken hata oluÅŸtu", diff --git a/core/l10n/uk.php b/core/l10n/uk.php index 34387cc914e..fa8150e7c9d 100644 --- a/core/l10n/uk.php +++ b/core/l10n/uk.php @@ -53,6 +53,7 @@ "Error" => "Помилка", "The app name is not specified." => "Ðе визначено ім'Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸.", "The required file {file} is not installed!" => "Ðеобхідний файл {file} не вÑтановлено!", +"Share" => "ПоділитиÑÑ", "Error while sharing" => "Помилка під Ñ‡Ð°Ñ Ð¿ÑƒÐ±Ð»Ñ–ÐºÐ°Ñ†Ñ–Ñ—", "Error while unsharing" => "Помилка під Ñ‡Ð°Ñ Ð²Ñ–Ð´Ð¼Ñ–Ð½Ð¸ публікації", "Error while changing permissions" => "Помилка при зміні повноважень", diff --git a/core/l10n/vi.php b/core/l10n/vi.php index 1d538e99dbb..078cfa8dd8c 100644 --- a/core/l10n/vi.php +++ b/core/l10n/vi.php @@ -53,6 +53,7 @@ "Error" => "Lá»—i", "The app name is not specified." => "Tên ứng dụng không được chỉ định.", "The required file {file} is not installed!" => "Táºp tin cần thiết {file} không được cà i đặt!", +"Share" => "Chia sẻ", "Error while sharing" => "Lá»—i trong quá trình chia sẻ", "Error while unsharing" => "Lá»—i trong quá trình gỡ chia sẻ", "Error while changing permissions" => "Lá»—i trong quá trình phân quyá»n", diff --git a/core/l10n/zh_CN.GB2312.php b/core/l10n/zh_CN.GB2312.php index a76c3a6c796..9617d7260dc 100644 --- a/core/l10n/zh_CN.GB2312.php +++ b/core/l10n/zh_CN.GB2312.php @@ -38,6 +38,7 @@ "Yes" => "是", "Ok" => "好的", "Error" => "错误", +"Share" => "分享", "Error while sharing" => "分享出错", "Error while unsharing" => "å–æ¶ˆåˆ†äº«å‡ºé”™", "Error while changing permissions" => "å˜æ›´æƒé™å‡ºé”™", diff --git a/core/l10n/zh_CN.php b/core/l10n/zh_CN.php index 3918cd165d6..f18fd6b357d 100644 --- a/core/l10n/zh_CN.php +++ b/core/l10n/zh_CN.php @@ -53,6 +53,8 @@ "Error" => "错误", "The app name is not specified." => "未指定Appå称。", "The required file {file} is not installed!" => "所需文件{file}未安装ï¼", +"Share" => "共享", +"Shared" => "已共享", "Error while sharing" => "共享时出错", "Error while unsharing" => "å–æ¶ˆå…±äº«æ—¶å‡ºé”™", "Error while changing permissions" => "修改æƒé™æ—¶å‡ºé”™", diff --git a/core/l10n/zh_TW.php b/core/l10n/zh_TW.php index 78a069a63dc..35183194d2a 100644 --- a/core/l10n/zh_TW.php +++ b/core/l10n/zh_TW.php @@ -53,6 +53,8 @@ "Error" => "錯誤", "The app name is not specified." => "沒有指定 app å稱。", "The required file {file} is not installed!" => "æ²’æœ‰å®‰è£æ‰€éœ€çš„æª”案 {file} ï¼", +"Share" => "分享", +"Shared" => "已分享", "Error while sharing" => "分享時發生錯誤", "Error while unsharing" => "å–æ¶ˆåˆ†äº«æ™‚發生錯誤", "Error while changing permissions" => "ä¿®æ”¹æ¬Šé™æ™‚發生錯誤", @@ -82,6 +84,8 @@ "Error setting expiration date" => "錯誤的到期日è¨å®š", "Sending ..." => "æ£åœ¨å¯„出...", "Email sent" => "Email 已寄出", +"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>." => "å‡ç´šå¤±æ•—,請將æ¤å•é¡Œå›žå ± <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud 社群</a>。", +"The update was successful. Redirecting you to ownCloud now." => "å‡ç´šæˆåŠŸï¼Œæ£å°‡æ‚¨é‡æ–°å°Žå‘至 ownCloud 。", "ownCloud password reset" => "ownCloud 密碼é‡è¨", "Use the following link to reset your password: {link}" => "請循以下è¯çµé‡è¨ä½ 的密碼: {link}", "You will receive a link to reset your password via Email." => "é‡è¨å¯†ç¢¼çš„連çµå°‡æœƒå¯„åˆ°ä½ çš„é›»å郵件信箱。", diff --git a/core/templates/layout.user.php b/core/templates/layout.user.php index 2886c3c5a2e..de505486f75 100644 --- a/core/templates/layout.user.php +++ b/core/templates/layout.user.php @@ -29,8 +29,30 @@ </div> <header><div id="header"> <a href="<?php echo link_to('', 'index.php'); ?>" title="" id="owncloud"><img class="svg" src="<?php echo image_path('', 'logo-wide.svg'); ?>" alt="ownCloud" /></a> - <a class="header-right header-action" id="logout" href="<?php echo link_to('', 'index.php'); ?>?logout=true"><img class="svg" alt="<?php echo $l->t('Log out');?>" title="<?php echo $l->t('Log out'); echo OC_User::getUser()?' ('.OC_User::getUser().') ':'' ?>" src="<?php echo image_path('', 'actions/logout.svg'); ?>" /></a> - <form class="searchbox header-right" action="#" method="post"> + + <ul id="settings" class="svg"> + <span id="expand"> + <?php echo OCP\User::getDisplayName($user=null)?OCP\User::getDisplayName($user=null):(OC_User::getUser()?OC_User::getUser():'') ?> + <img class="svg" src="<?php echo image_path('', 'actions/caret.svg'); ?>" /> + </span> + <div id="expanddiv" <?php if($_['bodyid'] == 'body-user') echo 'style="display:none;"'; ?>> + <?php foreach($_['settingsnavigation'] as $entry):?> + <li> + <a href="<?php echo $entry['href']; ?>" title="" <?php if( $entry["active"] ): ?> class="active"<?php endif; ?>> + <img class="svg" alt="" src="<?php echo $entry['icon']; ?>"> + <?php echo $entry['name'] ?> + </a> + </li> + <?php endforeach; ?> + <li> + <a id="logout" href="<?php echo link_to('', 'index.php'); ?>?logout=true"> + <img class="svg" alt="" src="<?php echo image_path('', 'actions/logout.svg'); ?>" /> <?php echo $l->t('Log out');?> + </a> + </li> + </div> + </ul> + + <form class="searchbox" action="#" method="post"> <input id="searchbox" class="svg" type="search" name="query" value="<?php if(isset($_POST['query'])) {echo OC_Util::sanitizeHTML($_POST['query']);};?>" autocomplete="off" x-webkit-speech /> </form> </div></header> @@ -38,20 +60,14 @@ <nav><div id="navigation"> <ul id="apps" class="svg"> <?php foreach($_['navigation'] as $entry): ?> - <li data-id="<?php echo $entry['id']; ?>"><a style="background-image:url(<?php echo $entry['icon']; ?>)" href="<?php echo $entry['href']; ?>" title="" <?php if( $entry['active'] ): ?> class="active"<?php endif; ?>><?php echo $entry['name']; ?></a> + <li data-id="<?php echo $entry['id']; ?>"> + <a href="<?php echo $entry['href']; ?>" title="" <?php if( $entry['active'] ): ?> class="active"<?php endif; ?>> + <img class="icon" src="<?php echo $entry['icon']; ?>"/> + <?php echo $entry['name']; ?> + </a> </li> <?php endforeach; ?> </ul> - - <ul id="settings" class="svg"> - <img role=button tabindex=0 id="expand" class="svg" alt="<?php echo $l->t('Settings');?>" src="<?php echo image_path('', 'actions/settings.svg'); ?>" /> - <span><?php echo $l->t('Settings');?></span> - <div id="expanddiv" <?php if($_['bodyid'] == 'body-user') echo 'style="display:none;"'; ?>> - <?php foreach($_['settingsnavigation'] as $entry):?> - <li><a style="background-image:url(<?php echo $entry['icon']; ?>)" href="<?php echo $entry['href']; ?>" title="" <?php if( $entry["active"] ): ?> class="active"<?php endif; ?>><?php echo $entry['name'] ?></a></li> - <?php endforeach; ?> - </div> - </ul> </div></nav> <div id="content-wrapper"> diff --git a/core/templates/login.php b/core/templates/login.php index c82d2cafa2e..59b685eabff 100644 --- a/core/templates/login.php +++ b/core/templates/login.php @@ -30,10 +30,12 @@ </p> <p class="infield groupbottom"> - <input type="password" name="password" id="password" value="" + <input type="password" name="password" id="password" value="" data-typetoggle="#show" required<?php echo $_['user_autofocus'] ? '' : ' autofocus'; ?> /> <label for="password" class="infield"><?php echo $l->t('Password'); ?></label> - <img class="svg" src="<?php echo image_path('', 'actions/password.svg'); ?>" alt=""/> + <img class="svg" id="pass_image" src="<?php echo image_path('', 'actions/password.svg'); ?>" alt=""/> + <input type="checkbox" id="show" name="show" /> + <label for="show"></label> </p> <input type="checkbox" name="remember_login" value="1" id="remember_login"/><label for="remember_login"><?php echo $l->t('remember'); ?></label> diff --git a/db_structure.xml b/db_structure.xml index e878eac7690..f4111bfabd0 100644 --- a/db_structure.xml +++ b/db_structure.xml @@ -60,125 +60,186 @@ <table> - <name>*dbprefix*fscache</name> + <name>*dbprefix*storages</name> <declaration> <field> <name>id</name> - <autoincrement>1</autoincrement> + <type>text</type> + <default></default> + <notnull>true</notnull> + <length>64</length> + </field> + + <field> + <name>numeric_id</name> <type>integer</type> <default>0</default> <notnull>true</notnull> + <autoincrement>1</autoincrement> <length>4</length> </field> + <index> + <name>storages_id_index</name> + <unique>true</unique> + <field> + <name>id</name> + <sorting>ascending</sorting> + </field> + </index> + + </declaration> + + </table> + + <table> + + <name>*dbprefix*mimetypes</name> + + <declaration> + <field> - <name>path</name> - <type>text</type> - <default></default> + <name>id</name> + <type>integer</type> + <default>0</default> <notnull>true</notnull> - <length>512</length> + <autoincrement>1</autoincrement> + <length>4</length> </field> <field> - <name>path_hash</name> + <name>mimetype</name> <type>text</type> <default></default> <notnull>true</notnull> - <length>32</length> + <length>255</length> </field> + <index> + <name>mimetype_id_index</name> + <unique>true</unique> + <field> + <name>mimetype</name> + <sorting>ascending</sorting> + </field> + </index> + + </declaration> + + </table> + + <table> + + <name>*dbprefix*filecache</name> + + <declaration> + <field> - <name>parent</name> + <name>fileid</name> <type>integer</type> <default>0</default> <notnull>true</notnull> - <length>8</length> + <autoincrement>1</autoincrement> + <length>4</length> </field> <field> - <name>name</name> - <type>text</type> + <name>storage</name> + <type>integer</type> <default></default> <notnull>true</notnull> - <length>300</length> + <length>4</length> </field> <field> - <name>user</name> + <name>path</name> <type>text</type> <default></default> <notnull>true</notnull> - <length>64</length> + <length>512</length> </field> <field> - <name>size</name> - <type>integer</type> - <default>0</default> + <name>path_hash</name> + <type>text</type> + <default></default> <notnull>true</notnull> - <length>8</length> + <length>32</length> </field> <field> - <name>ctime</name> + <name>parent</name> <type>integer</type> - <default>0</default> + <default></default> <notnull>true</notnull> - <length>8</length> + <length>4</length> </field> <field> - <name>mtime</name> - <type>integer</type> - <default>0</default> + <name>name</name> + <type>text</type> + <default></default> <notnull>true</notnull> - <length>8</length> + <length>250</length> </field> <field> <name>mimetype</name> - <type>text</type> + <type>integer</type> <default></default> <notnull>true</notnull> - <length>96</length> + <length>4</length> </field> <field> <name>mimepart</name> - <type>text</type> + <type>integer</type> <default></default> <notnull>true</notnull> - <length>32</length> + <length>4</length> </field> <field> - <name>encrypted</name> + <name>size</name> <type>integer</type> - <default>0</default> + <default></default> <notnull>true</notnull> - <length>1</length> + <length>4</length> </field> <field> - <name>versioned</name> + <name>mtime</name> <type>integer</type> - <default>0</default> + <default></default> <notnull>true</notnull> - <length>1</length> + <length>4</length> </field> <field> - <name>writable</name> + <name>encrypted</name> <type>integer</type> <default>0</default> <notnull>true</notnull> - <length>1</length> + <length>4</length> + </field> + + <field> + <name>etag</name> + <type>text</type> + <default></default> + <notnull>true</notnull> + <length>40</length> </field> <index> - <name>fscache_path_hash_index</name> + <name>fs_storage_path_hash</name> + <unique>true</unique> + <field> + <name>storage</name> + <sorting>ascending</sorting> + </field> <field> <name>path_hash</name> <sorting>ascending</sorting> @@ -186,29 +247,84 @@ </index> <index> - <name>parent_index</name> + <name>fs_parent_name_hash</name> <field> <name>parent</name> <sorting>ascending</sorting> </field> + <field> + <name>name</name> + <sorting>ascending</sorting> + </field> </index> <index> - <name>name_index</name> + <name>fs_storage_mimetype</name> <field> - <name>name</name> + <name>storage</name> + <sorting>ascending</sorting> + </field> + <field> + <name>mimetype</name> <sorting>ascending</sorting> </field> </index> <index> - <name>parent_name_index</name> + <name>fs_storage_mimepart</name> <field> - <name>parent</name> + <name>storage</name> <sorting>ascending</sorting> </field> <field> - <name>name</name> + <name>mimepart</name> + <sorting>ascending</sorting> + </field> + </index> + + </declaration> + + </table> + + <table> + + <name>*dbprefix*permissions</name> + + <declaration> + + <field> + <name>fileid</name> + <type>integer</type> + <default>0</default> + <notnull>true</notnull> + <length>4</length> + </field> + + <field> + <name>user</name> + <type>text</type> + <default></default> + <notnull>true</notnull> + <length>64</length> + </field> + + <field> + <name>permissions</name> + <type>integer</type> + <default>0</default> + <notnull>true</notnull> + <length>4</length> + </field> + + <index> + <name>id_user_index</name> + <unique>true</unique> + <field> + <name>fileid</name> + <sorting>ascending</sorting> + </field> + <field> + <name>user</name> <sorting>ascending</sorting> </field> </index> diff --git a/index.html b/index.html new file mode 100644 index 00000000000..69d42e3a0b3 --- /dev/null +++ b/index.html @@ -0,0 +1,6 @@ +<!DOCTYPE html> +<html> +<head> + <meta http-equiv="refresh" content="0; URL=index.php"> +</head> +</html> diff --git a/l10n/.tx/config b/l10n/.tx/config index 2aac0feedc5..b6589d8112d 100644 --- a/l10n/.tx/config +++ b/l10n/.tx/config @@ -40,6 +40,12 @@ source_file = templates/files_sharing.pot source_lang = en type = PO +[owncloud.files_trashbin] +file_filter = <lang>/files_trashbin.po +source_file = templates/files_trashbin.pot +source_lang = en +type = PO + [owncloud.files_versions] file_filter = <lang>/files_versions.po source_file = templates/files_versions.pot diff --git a/l10n/af_ZA/core.po b/l10n/af_ZA/core.po new file mode 100644 index 00000000000..cee3db1d1b3 --- /dev/null +++ b/l10n/af_ZA/core.po @@ -0,0 +1,585 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Jano Barnard <translate@janobarnard.co.za>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 17:00+0000\n" +"Last-Translator: Jano Barnard <translate@janobarnard.co.za>\n" +"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: af_ZA\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ajax/share.php:85 +#, php-format +msgid "User %s shared a file with you" +msgstr "" + +#: ajax/share.php:87 +#, php-format +msgid "User %s shared a folder with you" +msgstr "" + +#: ajax/share.php:89 +#, php-format +msgid "" +"User %s shared the file \"%s\" with you. It is available for download here: " +"%s" +msgstr "" + +#: ajax/share.php:91 +#, php-format +msgid "" +"User %s shared the folder \"%s\" with you. It is available for download " +"here: %s" +msgstr "" + +#: ajax/vcategories/add.php:26 ajax/vcategories/edit.php:25 +msgid "Category type not provided." +msgstr "" + +#: ajax/vcategories/add.php:30 +msgid "No category to add?" +msgstr "" + +#: ajax/vcategories/add.php:37 +msgid "This category already exists: " +msgstr "" + +#: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27 +#: ajax/vcategories/favorites.php:24 +#: ajax/vcategories/removeFromFavorites.php:26 +msgid "Object type not provided." +msgstr "" + +#: ajax/vcategories/addToFavorites.php:30 +#: ajax/vcategories/removeFromFavorites.php:30 +#, php-format +msgid "%s ID not provided." +msgstr "" + +#: ajax/vcategories/addToFavorites.php:35 +#, php-format +msgid "Error adding %s to favorites." +msgstr "" + +#: ajax/vcategories/delete.php:35 js/oc-vcategories.js:136 +msgid "No categories selected for deletion." +msgstr "" + +#: ajax/vcategories/removeFromFavorites.php:35 +#, php-format +msgid "Error removing %s from favorites." +msgstr "" + +#: js/config.php:32 +msgid "Sunday" +msgstr "" + +#: js/config.php:32 +msgid "Monday" +msgstr "" + +#: js/config.php:32 +msgid "Tuesday" +msgstr "" + +#: js/config.php:32 +msgid "Wednesday" +msgstr "" + +#: js/config.php:32 +msgid "Thursday" +msgstr "" + +#: js/config.php:32 +msgid "Friday" +msgstr "" + +#: js/config.php:32 +msgid "Saturday" +msgstr "" + +#: js/config.php:33 +msgid "January" +msgstr "" + +#: js/config.php:33 +msgid "February" +msgstr "" + +#: js/config.php:33 +msgid "March" +msgstr "" + +#: js/config.php:33 +msgid "April" +msgstr "" + +#: js/config.php:33 +msgid "May" +msgstr "" + +#: js/config.php:33 +msgid "June" +msgstr "" + +#: js/config.php:33 +msgid "July" +msgstr "" + +#: js/config.php:33 +msgid "August" +msgstr "" + +#: js/config.php:33 +msgid "September" +msgstr "" + +#: js/config.php:33 +msgid "October" +msgstr "" + +#: js/config.php:33 +msgid "November" +msgstr "" + +#: js/config.php:33 +msgid "December" +msgstr "" + +#: js/js.js:280 +msgid "Settings" +msgstr "Instellings" + +#: js/js.js:760 +msgid "seconds ago" +msgstr "" + +#: js/js.js:761 +msgid "1 minute ago" +msgstr "" + +#: js/js.js:762 +msgid "{minutes} minutes ago" +msgstr "" + +#: js/js.js:763 +msgid "1 hour ago" +msgstr "" + +#: js/js.js:764 +msgid "{hours} hours ago" +msgstr "" + +#: js/js.js:765 +msgid "today" +msgstr "" + +#: js/js.js:766 +msgid "yesterday" +msgstr "" + +#: js/js.js:767 +msgid "{days} days ago" +msgstr "" + +#: js/js.js:768 +msgid "last month" +msgstr "" + +#: js/js.js:769 +msgid "{months} months ago" +msgstr "" + +#: js/js.js:770 +msgid "months ago" +msgstr "" + +#: js/js.js:771 +msgid "last year" +msgstr "" + +#: js/js.js:772 +msgid "years ago" +msgstr "" + +#: js/oc-dialogs.js:126 +msgid "Choose" +msgstr "" + +#: js/oc-dialogs.js:146 js/oc-dialogs.js:166 +msgid "Cancel" +msgstr "" + +#: js/oc-dialogs.js:162 +msgid "No" +msgstr "" + +#: js/oc-dialogs.js:163 +msgid "Yes" +msgstr "" + +#: js/oc-dialogs.js:180 +msgid "Ok" +msgstr "" + +#: js/oc-vcategories.js:5 js/oc-vcategories.js:85 js/oc-vcategories.js:102 +#: js/oc-vcategories.js:117 js/oc-vcategories.js:132 js/oc-vcategories.js:162 +msgid "The object type is not specified." +msgstr "" + +#: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136 +#: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571 +#: js/share.js:583 +msgid "Error" +msgstr "" + +#: js/oc-vcategories.js:179 +msgid "The app name is not specified." +msgstr "" + +#: js/oc-vcategories.js:194 +msgid "The required file {file} is not installed!" +msgstr "" + +#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 +msgid "Share" +msgstr "" + +#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 +msgid "Shared" +msgstr "" + +#: js/share.js:141 js/share.js:611 +msgid "Error while sharing" +msgstr "" + +#: js/share.js:152 +msgid "Error while unsharing" +msgstr "" + +#: js/share.js:159 +msgid "Error while changing permissions" +msgstr "" + +#: js/share.js:168 +msgid "Shared with you and the group {group} by {owner}" +msgstr "" + +#: js/share.js:170 +msgid "Shared with you by {owner}" +msgstr "" + +#: js/share.js:175 +msgid "Share with" +msgstr "" + +#: js/share.js:180 +msgid "Share with link" +msgstr "" + +#: js/share.js:183 +msgid "Password protect" +msgstr "" + +#: js/share.js:185 templates/installation.php:44 templates/login.php:35 +msgid "Password" +msgstr "Wagwoord" + +#: js/share.js:189 +msgid "Email link to person" +msgstr "" + +#: js/share.js:190 +msgid "Send" +msgstr "" + +#: js/share.js:194 +msgid "Set expiration date" +msgstr "" + +#: js/share.js:195 +msgid "Expiration date" +msgstr "" + +#: js/share.js:227 +msgid "Share via email:" +msgstr "" + +#: js/share.js:229 +msgid "No people found" +msgstr "" + +#: js/share.js:256 +msgid "Resharing is not allowed" +msgstr "" + +#: js/share.js:292 +msgid "Shared in {item} with {user}" +msgstr "" + +#: js/share.js:313 +msgid "Unshare" +msgstr "" + +#: js/share.js:325 +msgid "can edit" +msgstr "" + +#: js/share.js:327 +msgid "access control" +msgstr "" + +#: js/share.js:330 +msgid "create" +msgstr "" + +#: js/share.js:333 +msgid "update" +msgstr "" + +#: js/share.js:336 +msgid "delete" +msgstr "" + +#: js/share.js:339 +msgid "share" +msgstr "" + +#: js/share.js:373 js/share.js:558 +msgid "Password protected" +msgstr "" + +#: js/share.js:571 +msgid "Error unsetting expiration date" +msgstr "" + +#: js/share.js:583 +msgid "Error setting expiration date" +msgstr "" + +#: js/share.js:598 +msgid "Sending ..." +msgstr "" + +#: js/share.js:609 +msgid "Email sent" +msgstr "" + +#: js/update.js:14 +msgid "" +"The update was unsuccessful. Please report this issue to the <a " +"href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud " +"community</a>." +msgstr "" + +#: js/update.js:18 +msgid "The update was successful. Redirecting you to ownCloud now." +msgstr "" + +#: lostpassword/controller.php:47 +msgid "ownCloud password reset" +msgstr "" + +#: lostpassword/templates/email.php:2 +msgid "Use the following link to reset your password: {link}" +msgstr "Gebruik die volgende skakel om jou wagwoord te herstel: {link}" + +#: lostpassword/templates/lostpassword.php:3 +msgid "You will receive a link to reset your password via Email." +msgstr "Jy sal `n skakel via e-pos ontvang om jou wagwoord te herstel." + +#: lostpassword/templates/lostpassword.php:5 +msgid "Reset email send." +msgstr "" + +#: lostpassword/templates/lostpassword.php:8 +msgid "Request failed!" +msgstr "" + +#: lostpassword/templates/lostpassword.php:11 templates/installation.php:39 +#: templates/login.php:28 +msgid "Username" +msgstr "Gebruikersnaam" + +#: lostpassword/templates/lostpassword.php:14 +msgid "Request reset" +msgstr "Herstel-versoek" + +#: lostpassword/templates/resetpassword.php:4 +msgid "Your password was reset" +msgstr "Jou wagwoord is herstel" + +#: lostpassword/templates/resetpassword.php:5 +msgid "To login page" +msgstr "Na aanteken-bladsy" + +#: lostpassword/templates/resetpassword.php:8 +msgid "New password" +msgstr "Nuwe wagwoord" + +#: lostpassword/templates/resetpassword.php:11 +msgid "Reset password" +msgstr "Herstel wagwoord" + +#: strings.php:5 +msgid "Personal" +msgstr "Persoonlik" + +#: strings.php:6 +msgid "Users" +msgstr "Gebruikers" + +#: strings.php:7 +msgid "Apps" +msgstr "Toepassings" + +#: strings.php:8 +msgid "Admin" +msgstr "Admin" + +#: strings.php:9 +msgid "Help" +msgstr "Hulp" + +#: templates/403.php:12 +msgid "Access forbidden" +msgstr "" + +#: templates/404.php:12 +msgid "Cloud not found" +msgstr "Wolk nie gevind" + +#: templates/edit_categories_dialog.php:4 +msgid "Edit categories" +msgstr "" + +#: templates/edit_categories_dialog.php:16 +msgid "Add" +msgstr "" + +#: templates/installation.php:23 templates/installation.php:31 +msgid "Security Warning" +msgstr "" + +#: templates/installation.php:24 +msgid "" +"No secure random number generator is available, please enable the PHP " +"OpenSSL extension." +msgstr "" + +#: templates/installation.php:26 +msgid "" +"Without a secure random number generator an attacker may be able to predict " +"password reset tokens and take over your account." +msgstr "" + +#: templates/installation.php:32 +msgid "" +"Your data directory and your files are probably accessible from the " +"internet. The .htaccess file that ownCloud provides is not working. We " +"strongly suggest that you configure your webserver in a way that the data " +"directory is no longer accessible or you move the data directory outside the" +" webserver document root." +msgstr "" + +#: templates/installation.php:36 +msgid "Create an <strong>admin account</strong>" +msgstr "Skep `n <strong>admin-rekening</strong>" + +#: templates/installation.php:50 +msgid "Advanced" +msgstr "Gevorderd" + +#: templates/installation.php:52 +msgid "Data folder" +msgstr "" + +#: templates/installation.php:59 +msgid "Configure the database" +msgstr "Stel databasis op" + +#: templates/installation.php:64 templates/installation.php:75 +#: templates/installation.php:85 templates/installation.php:95 +msgid "will be used" +msgstr "sal gebruik word" + +#: templates/installation.php:107 +msgid "Database user" +msgstr "Databasis-gebruiker" + +#: templates/installation.php:111 +msgid "Database password" +msgstr "Databasis-wagwoord" + +#: templates/installation.php:115 +msgid "Database name" +msgstr "Databasis naam" + +#: templates/installation.php:123 +msgid "Database tablespace" +msgstr "" + +#: templates/installation.php:129 +msgid "Database host" +msgstr "" + +#: templates/installation.php:134 +msgid "Finish setup" +msgstr "Maak opstelling klaar" + +#: templates/layout.guest.php:34 +msgid "web services under your control" +msgstr "webdienste onder jou beheer" + +#: templates/layout.user.php:49 +msgid "Log out" +msgstr "Teken uit" + +#: templates/login.php:10 +msgid "Automatic logon rejected!" +msgstr "" + +#: templates/login.php:11 +msgid "" +"If you did not change your password recently, your account may be " +"compromised!" +msgstr "" + +#: templates/login.php:13 +msgid "Please change your password to secure your account again." +msgstr "" + +#: templates/login.php:19 +msgid "Lost your password?" +msgstr "Jou wagwoord verloor?" + +#: templates/login.php:41 +msgid "remember" +msgstr "onthou" + +#: templates/login.php:43 +msgid "Log in" +msgstr "Teken aan" + +#: templates/part.pagenavi.php:3 +msgid "prev" +msgstr "vorige" + +#: templates/part.pagenavi.php:20 +msgid "next" +msgstr "volgende" + +#: templates/update.php:3 +#, php-format +msgid "Updating ownCloud to version %s, this may take a while." +msgstr "" diff --git a/l10n/af_ZA/files.po b/l10n/af_ZA/files.po new file mode 100644 index 00000000000..3814f1cfa0c --- /dev/null +++ b/l10n/af_ZA/files.po @@ -0,0 +1,296 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2011-08-13 02:19+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: af_ZA\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ajax/upload.php:17 +msgid "No file was uploaded. Unknown error" +msgstr "" + +#: ajax/upload.php:24 +msgid "There is no error, the file uploaded with success" +msgstr "" + +#: ajax/upload.php:25 +msgid "" +"The uploaded file exceeds the upload_max_filesize directive in php.ini: " +msgstr "" + +#: ajax/upload.php:27 +msgid "" +"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in " +"the HTML form" +msgstr "" + +#: ajax/upload.php:29 +msgid "The uploaded file was only partially uploaded" +msgstr "" + +#: ajax/upload.php:30 +msgid "No file was uploaded" +msgstr "" + +#: ajax/upload.php:31 +msgid "Missing a temporary folder" +msgstr "" + +#: ajax/upload.php:32 +msgid "Failed to write to disk" +msgstr "" + +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "" + +#: ajax/upload.php:82 +msgid "Invalid directory." +msgstr "" + +#: appinfo/app.php:10 +msgid "Files" +msgstr "" + +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 +msgid "Unshare" +msgstr "" + +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 +msgid "Delete" +msgstr "" + +#: js/fileactions.js:185 +msgid "Rename" +msgstr "" + +#: js/filelist.js:208 js/filelist.js:210 +msgid "{new_name} already exists" +msgstr "" + +#: js/filelist.js:208 js/filelist.js:210 +msgid "replace" +msgstr "" + +#: js/filelist.js:208 +msgid "suggest name" +msgstr "" + +#: js/filelist.js:208 js/filelist.js:210 +msgid "cancel" +msgstr "" + +#: js/filelist.js:253 +msgid "replaced {new_name}" +msgstr "" + +#: js/filelist.js:253 js/filelist.js:255 +msgid "undo" +msgstr "" + +#: js/filelist.js:255 +msgid "replaced {new_name} with {old_name}" +msgstr "" + +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" + +#: js/files.js:52 +msgid "'.' is an invalid file name." +msgstr "" + +#: js/files.js:56 +msgid "File name cannot be empty." +msgstr "" + +#: js/files.js:64 +msgid "" +"Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not " +"allowed." +msgstr "" + +#: js/files.js:78 +msgid "Your storage is full, files can not be updated or synced anymore!" +msgstr "" + +#: js/files.js:82 +msgid "Your storage is almost full ({usedSpacePercent}%)" +msgstr "" + +#: js/files.js:224 +msgid "" +"Your download is being prepared. This might take some time if the files are " +"big." +msgstr "" + +#: js/files.js:261 +msgid "Unable to upload your file as it is a directory or has 0 bytes" +msgstr "" + +#: js/files.js:261 +msgid "Upload Error" +msgstr "" + +#: js/files.js:278 +msgid "Close" +msgstr "" + +#: js/files.js:297 js/files.js:413 js/files.js:444 +msgid "Pending" +msgstr "" + +#: js/files.js:317 +msgid "1 file uploading" +msgstr "" + +#: js/files.js:320 js/files.js:375 js/files.js:390 +msgid "{count} files uploading" +msgstr "" + +#: js/files.js:393 js/files.js:428 +msgid "Upload cancelled." +msgstr "" + +#: js/files.js:502 +msgid "" +"File upload is in progress. Leaving the page now will cancel the upload." +msgstr "" + +#: js/files.js:575 +msgid "URL cannot be empty." +msgstr "" + +#: js/files.js:580 +msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" +msgstr "" + +#: js/files.js:949 templates/index.php:67 +msgid "Name" +msgstr "" + +#: js/files.js:950 templates/index.php:78 +msgid "Size" +msgstr "" + +#: js/files.js:951 templates/index.php:80 +msgid "Modified" +msgstr "" + +#: js/files.js:970 +msgid "1 folder" +msgstr "" + +#: js/files.js:972 +msgid "{count} folders" +msgstr "" + +#: js/files.js:980 +msgid "1 file" +msgstr "" + +#: js/files.js:982 +msgid "{count} files" +msgstr "" + +#: lib/helper.php:11 templates/index.php:18 +msgid "Upload" +msgstr "" + +#: templates/admin.php:5 +msgid "File handling" +msgstr "" + +#: templates/admin.php:7 +msgid "Maximum upload size" +msgstr "" + +#: templates/admin.php:10 +msgid "max. possible: " +msgstr "" + +#: templates/admin.php:15 +msgid "Needed for multi-file and folder downloads." +msgstr "" + +#: templates/admin.php:17 +msgid "Enable ZIP-download" +msgstr "" + +#: templates/admin.php:20 +msgid "0 is unlimited" +msgstr "" + +#: templates/admin.php:22 +msgid "Maximum input size for ZIP files" +msgstr "" + +#: templates/admin.php:26 +msgid "Save" +msgstr "" + +#: templates/index.php:7 +msgid "New" +msgstr "" + +#: templates/index.php:10 +msgid "Text file" +msgstr "" + +#: templates/index.php:12 +msgid "Folder" +msgstr "" + +#: templates/index.php:14 +msgid "From link" +msgstr "" + +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 +msgid "Cancel upload" +msgstr "" + +#: templates/index.php:59 +msgid "Nothing in here. Upload something!" +msgstr "" + +#: templates/index.php:73 +msgid "Download" +msgstr "" + +#: templates/index.php:105 +msgid "Upload too large" +msgstr "" + +#: templates/index.php:107 +msgid "" +"The files you are trying to upload exceed the maximum size for file uploads " +"on this server." +msgstr "" + +#: templates/index.php:112 +msgid "Files are being scanned, please wait." +msgstr "" + +#: templates/index.php:115 +msgid "Current scanning" +msgstr "" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/af_ZA/files_encryption.po b/l10n/af_ZA/files_encryption.po new file mode 100644 index 00000000000..c2b5564d0c3 --- /dev/null +++ b/l10n/af_ZA/files_encryption.po @@ -0,0 +1,82 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2012-08-12 22:33+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: af_ZA\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/settings-personal.js:17 +msgid "" +"Please switch to your ownCloud client and change your encryption password to" +" complete the conversion." +msgstr "" + +#: js/settings-personal.js:17 +msgid "switched to client side encryption" +msgstr "" + +#: js/settings-personal.js:21 +msgid "Change encryption password to login password" +msgstr "" + +#: js/settings-personal.js:25 +msgid "Please check your passwords and try again." +msgstr "" + +#: js/settings-personal.js:25 +msgid "Could not change your file encryption password to your login password" +msgstr "" + +#: templates/settings-personal.php:3 templates/settings.php:5 +msgid "Choose encryption mode:" +msgstr "" + +#: templates/settings-personal.php:20 templates/settings.php:24 +msgid "" +"Client side encryption (most secure but makes it impossible to access your " +"data from the web interface)" +msgstr "" + +#: templates/settings-personal.php:30 templates/settings.php:36 +msgid "" +"Server side encryption (allows you to access your files from the web " +"interface and the desktop client)" +msgstr "" + +#: templates/settings-personal.php:41 templates/settings.php:60 +msgid "None (no encryption at all)" +msgstr "" + +#: templates/settings.php:10 +msgid "" +"Important: Once you selected an encryption mode there is no way to change it" +" back" +msgstr "" + +#: templates/settings.php:48 +msgid "User specific (let the user decide)" +msgstr "" + +#: templates/settings.php:65 +msgid "Encryption" +msgstr "" + +#: templates/settings.php:67 +msgid "Exclude the following file types from encryption" +msgstr "" + +#: templates/settings.php:71 +msgid "None" +msgstr "" diff --git a/l10n/af_ZA/files_external.po b/l10n/af_ZA/files_external.po new file mode 100644 index 00000000000..fab8ff9b425 --- /dev/null +++ b/l10n/af_ZA/files_external.po @@ -0,0 +1,120 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2012-08-12 22:34+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: af_ZA\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/dropbox.js:7 js/dropbox.js:25 js/google.js:7 js/google.js:23 +msgid "Access granted" +msgstr "" + +#: js/dropbox.js:28 js/dropbox.js:74 js/dropbox.js:79 js/dropbox.js:86 +msgid "Error configuring Dropbox storage" +msgstr "" + +#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:40 +msgid "Grant access" +msgstr "" + +#: js/dropbox.js:73 js/google.js:72 +msgid "Fill out all required fields" +msgstr "" + +#: js/dropbox.js:85 +msgid "Please provide a valid Dropbox app key and secret." +msgstr "" + +#: js/google.js:26 js/google.js:73 js/google.js:78 +msgid "Error configuring Google Drive storage" +msgstr "" + +#: lib/config.php:405 +msgid "" +"<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares " +"is not possible. Please ask your system administrator to install it." +msgstr "" + +#: lib/config.php:406 +msgid "" +"<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." +msgstr "" + +#: templates/settings.php:3 +msgid "External Storage" +msgstr "" + +#: templates/settings.php:8 templates/settings.php:22 +msgid "Mount point" +msgstr "" + +#: templates/settings.php:9 +msgid "Backend" +msgstr "" + +#: templates/settings.php:10 +msgid "Configuration" +msgstr "" + +#: templates/settings.php:11 +msgid "Options" +msgstr "" + +#: templates/settings.php:12 +msgid "Applicable" +msgstr "" + +#: templates/settings.php:27 +msgid "Add mount point" +msgstr "" + +#: templates/settings.php:85 +msgid "None set" +msgstr "" + +#: templates/settings.php:86 +msgid "All Users" +msgstr "" + +#: templates/settings.php:87 +msgid "Groups" +msgstr "" + +#: templates/settings.php:95 +msgid "Users" +msgstr "Gebruikers" + +#: templates/settings.php:108 templates/settings.php:109 +#: templates/settings.php:144 templates/settings.php:145 +msgid "Delete" +msgstr "" + +#: templates/settings.php:124 +msgid "Enable User External Storage" +msgstr "" + +#: templates/settings.php:125 +msgid "Allow users to mount their own external storage" +msgstr "" + +#: templates/settings.php:136 +msgid "SSL root certificates" +msgstr "" + +#: templates/settings.php:153 +msgid "Import Root Certificate" +msgstr "" diff --git a/l10n/af_ZA/files_sharing.po b/l10n/af_ZA/files_sharing.po new file mode 100644 index 00000000000..13198e5bec2 --- /dev/null +++ b/l10n/af_ZA/files_sharing.po @@ -0,0 +1,48 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2012-08-12 22:35+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: af_ZA\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: templates/authenticate.php:4 +msgid "Password" +msgstr "Wagwoord" + +#: templates/authenticate.php:6 +msgid "Submit" +msgstr "" + +#: templates/public.php:9 +#, php-format +msgid "%s shared the folder %s with you" +msgstr "" + +#: templates/public.php:11 +#, php-format +msgid "%s shared the file %s with you" +msgstr "" + +#: templates/public.php:14 templates/public.php:30 +msgid "Download" +msgstr "" + +#: templates/public.php:29 +msgid "No preview available for" +msgstr "" + +#: templates/public.php:35 +msgid "web services under your control" +msgstr "webdienste onder jou beheer" diff --git a/l10n/af_ZA/files_trashbin.po b/l10n/af_ZA/files_trashbin.po new file mode 100644 index 00000000000..ca4278cffc8 --- /dev/null +++ b/l10n/af_ZA/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: af_ZA\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/af_ZA/files_versions.po b/l10n/af_ZA/files_versions.po new file mode 100644 index 00000000000..6cb41d2c080 --- /dev/null +++ b/l10n/af_ZA/files_versions.po @@ -0,0 +1,30 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2012-08-12 22:37+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: af_ZA\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/versions.js:16 +msgid "History" +msgstr "" + +#: templates/settings.php:3 +msgid "Files Versioning" +msgstr "" + +#: templates/settings.php:4 +msgid "Enable" +msgstr "" diff --git a/l10n/af_ZA/lib.po b/l10n/af_ZA/lib.po new file mode 100644 index 00000000000..e03f329b9b7 --- /dev/null +++ b/l10n/af_ZA/lib.po @@ -0,0 +1,156 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2012-07-27 22:23+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: af_ZA\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: app.php:312 +msgid "Help" +msgstr "Hulp" + +#: app.php:319 +msgid "Personal" +msgstr "Persoonlik" + +#: app.php:324 +msgid "Settings" +msgstr "Instellings" + +#: app.php:329 +msgid "Users" +msgstr "Gebruikers" + +#: app.php:336 +msgid "Apps" +msgstr "Toepassings" + +#: app.php:338 +msgid "Admin" +msgstr "Admin" + +#: files.php:202 +msgid "ZIP download is turned off." +msgstr "" + +#: files.php:203 +msgid "Files need to be downloaded one by one." +msgstr "" + +#: files.php:203 files.php:228 +msgid "Back to Files" +msgstr "" + +#: files.php:227 +msgid "Selected files too large to generate zip file." +msgstr "" + +#: helper.php:226 +msgid "couldn't be determined" +msgstr "" + +#: json.php:28 +msgid "Application is not enabled" +msgstr "" + +#: json.php:39 json.php:62 json.php:73 +msgid "Authentication error" +msgstr "" + +#: json.php:51 +msgid "Token expired. Please reload page." +msgstr "" + +#: search/provider/file.php:17 search/provider/file.php:35 +msgid "Files" +msgstr "" + +#: search/provider/file.php:26 search/provider/file.php:33 +msgid "Text" +msgstr "" + +#: search/provider/file.php:29 +msgid "Images" +msgstr "" + +#: template.php:113 +msgid "seconds ago" +msgstr "" + +#: template.php:114 +msgid "1 minute ago" +msgstr "" + +#: template.php:115 +#, php-format +msgid "%d minutes ago" +msgstr "" + +#: template.php:116 +msgid "1 hour ago" +msgstr "" + +#: template.php:117 +#, php-format +msgid "%d hours ago" +msgstr "" + +#: template.php:118 +msgid "today" +msgstr "" + +#: template.php:119 +msgid "yesterday" +msgstr "" + +#: template.php:120 +#, php-format +msgid "%d days ago" +msgstr "" + +#: template.php:121 +msgid "last month" +msgstr "" + +#: template.php:122 +#, php-format +msgid "%d months ago" +msgstr "" + +#: template.php:123 +msgid "last year" +msgstr "" + +#: template.php:124 +msgid "years ago" +msgstr "" + +#: updater.php:75 +#, php-format +msgid "%s is available. Get <a href=\"%s\">more information</a>" +msgstr "" + +#: updater.php:77 +msgid "up to date" +msgstr "" + +#: updater.php:80 +msgid "updates check is disabled" +msgstr "" + +#: vcategories.php:188 vcategories.php:249 +#, php-format +msgid "Could not find category \"%s\"" +msgstr "" diff --git a/l10n/af_ZA/settings.po b/l10n/af_ZA/settings.po new file mode 100644 index 00000000000..f621a8914be --- /dev/null +++ b/l10n/af_ZA/settings.po @@ -0,0 +1,311 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 17:00+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: af_ZA\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ajax/apps/ocs.php:20 +msgid "Unable to load list from App Store" +msgstr "" + +#: ajax/creategroup.php:10 +msgid "Group already exists" +msgstr "" + +#: ajax/creategroup.php:19 +msgid "Unable to add group" +msgstr "" + +#: ajax/enableapp.php:11 +msgid "Could not enable app. " +msgstr "" + +#: ajax/lostpassword.php:12 +msgid "Email saved" +msgstr "" + +#: ajax/lostpassword.php:14 +msgid "Invalid email" +msgstr "" + +#: ajax/removegroup.php:13 +msgid "Unable to delete group" +msgstr "" + +#: ajax/removeuser.php:15 ajax/setquota.php:15 ajax/togglegroups.php:18 +msgid "Authentication error" +msgstr "" + +#: ajax/removeuser.php:24 +msgid "Unable to delete user" +msgstr "" + +#: ajax/setlanguage.php:15 +msgid "Language changed" +msgstr "" + +#: ajax/setlanguage.php:17 ajax/setlanguage.php:20 +msgid "Invalid request" +msgstr "" + +#: ajax/togglegroups.php:12 +msgid "Admins can't remove themself from the admin group" +msgstr "" + +#: ajax/togglegroups.php:28 +#, php-format +msgid "Unable to add user to group %s" +msgstr "" + +#: ajax/togglegroups.php:34 +#, php-format +msgid "Unable to remove user from group %s" +msgstr "" + +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 +msgid "Disable" +msgstr "" + +#: js/apps.js:36 js/apps.js:64 +msgid "Enable" +msgstr "" + +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + +#: js/personal.js:69 +msgid "Saving..." +msgstr "" + +#: personal.php:34 personal.php:35 +msgid "__language_name__" +msgstr "" + +#: templates/apps.php:10 +msgid "Add your App" +msgstr "" + +#: templates/apps.php:11 +msgid "More Apps" +msgstr "" + +#: templates/apps.php:24 +msgid "Select an App" +msgstr "" + +#: templates/apps.php:28 +msgid "See application page at apps.owncloud.com" +msgstr "" + +#: templates/apps.php:29 +msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" +msgstr "" + +#: templates/apps.php:31 +msgid "Update" +msgstr "" + +#: templates/help.php:3 +msgid "User Documentation" +msgstr "" + +#: templates/help.php:4 +msgid "Administrator Documentation" +msgstr "" + +#: templates/help.php:6 +msgid "Online Documentation" +msgstr "" + +#: templates/help.php:7 +msgid "Forum" +msgstr "" + +#: templates/help.php:9 +msgid "Bugtracker" +msgstr "" + +#: templates/help.php:11 +msgid "Commercial Support" +msgstr "" + +#: templates/personal.php:8 +#, php-format +msgid "You have used <strong>%s</strong> of the available <strong>%s</strong>" +msgstr "" + +#: templates/personal.php:12 +msgid "Clients" +msgstr "" + +#: templates/personal.php:13 +msgid "Download Desktop Clients" +msgstr "" + +#: templates/personal.php:14 +msgid "Download Android Client" +msgstr "" + +#: templates/personal.php:15 +msgid "Download iOS Client" +msgstr "" + +#: templates/personal.php:21 templates/users.php:23 templates/users.php:81 +msgid "Password" +msgstr "Wagwoord" + +#: templates/personal.php:22 +msgid "Your password was changed" +msgstr "" + +#: templates/personal.php:23 +msgid "Unable to change your password" +msgstr "" + +#: templates/personal.php:24 +msgid "Current password" +msgstr "" + +#: templates/personal.php:25 +msgid "New password" +msgstr "Nuwe wagwoord" + +#: templates/personal.php:26 +msgid "show" +msgstr "" + +#: templates/personal.php:27 +msgid "Change password" +msgstr "" + +#: templates/personal.php:33 +msgid "Email" +msgstr "" + +#: templates/personal.php:34 +msgid "Your email address" +msgstr "" + +#: templates/personal.php:35 +msgid "Fill in an email address to enable password recovery" +msgstr "" + +#: templates/personal.php:41 templates/personal.php:42 +msgid "Language" +msgstr "" + +#: templates/personal.php:47 +msgid "Help translate" +msgstr "" + +#: templates/personal.php:52 +msgid "WebDAV" +msgstr "" + +#: templates/personal.php:54 +msgid "Use this address to connect to your ownCloud in your file manager" +msgstr "" + +#: templates/personal.php:63 +msgid "Version" +msgstr "" + +#: templates/personal.php:65 +msgid "" +"Developed by the <a href=\"http://ownCloud.org/contact\" " +"target=\"_blank\">ownCloud community</a>, the <a " +"href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is " +"licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" " +"target=\"_blank\"><abbr title=\"Affero General Public " +"License\">AGPL</abbr></a>." +msgstr "" + +#: templates/users.php:21 templates/users.php:79 +msgid "Login Name" +msgstr "" + +#: templates/users.php:26 templates/users.php:82 templates/users.php:107 +msgid "Groups" +msgstr "" + +#: templates/users.php:32 +msgid "Create" +msgstr "" + +#: templates/users.php:35 +msgid "Default Storage" +msgstr "" + +#: templates/users.php:42 templates/users.php:142 +msgid "Unlimited" +msgstr "" + +#: templates/users.php:60 templates/users.php:157 +msgid "Other" +msgstr "" + +#: templates/users.php:80 +msgid "Display Name" +msgstr "" + +#: templates/users.php:84 templates/users.php:121 +msgid "Group Admin" +msgstr "" + +#: templates/users.php:86 +msgid "Storage" +msgstr "" + +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + +#: templates/users.php:137 +msgid "Default" +msgstr "" + +#: templates/users.php:165 +msgid "Delete" +msgstr "" diff --git a/l10n/af_ZA/user_ldap.po b/l10n/af_ZA/user_ldap.po new file mode 100644 index 00000000000..dd30840b779 --- /dev/null +++ b/l10n/af_ZA/user_ldap.po @@ -0,0 +1,309 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 16:31+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: af_ZA\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + +#: templates/settings.php:8 +msgid "" +"<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" +" experience unexpected behaviour. Please ask your system administrator to " +"disable one of them." +msgstr "" + +#: templates/settings.php:11 +msgid "" +"<b>Warning:</b> The PHP LDAP module is not installed, the backend will not " +"work. Please ask your system administrator to install it." +msgstr "" + +#: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 +msgid "Host" +msgstr "" + +#: templates/settings.php:21 +msgid "" +"You can omit the protocol, except you require SSL. Then start with ldaps://" +msgstr "" + +#: templates/settings.php:22 +msgid "Base DN" +msgstr "" + +#: templates/settings.php:22 +msgid "One Base DN per line" +msgstr "" + +#: templates/settings.php:22 +msgid "You can specify Base DN for users and groups in the Advanced tab" +msgstr "" + +#: templates/settings.php:23 +msgid "User DN" +msgstr "" + +#: templates/settings.php:23 +msgid "" +"The DN of the client user with which the bind shall be done, e.g. " +"uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " +"empty." +msgstr "" + +#: templates/settings.php:24 +msgid "Password" +msgstr "Wagwoord" + +#: templates/settings.php:24 +msgid "For anonymous access, leave DN and Password empty." +msgstr "" + +#: templates/settings.php:25 +msgid "User Login Filter" +msgstr "" + +#: templates/settings.php:25 +#, php-format +msgid "" +"Defines the filter to apply, when login is attempted. %%uid replaces the " +"username in the login action." +msgstr "" + +#: templates/settings.php:25 +#, php-format +msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" +msgstr "" + +#: templates/settings.php:26 +msgid "User List Filter" +msgstr "" + +#: templates/settings.php:26 +msgid "Defines the filter to apply, when retrieving users." +msgstr "" + +#: templates/settings.php:26 +msgid "without any placeholder, e.g. \"objectClass=person\"." +msgstr "" + +#: templates/settings.php:27 +msgid "Group Filter" +msgstr "" + +#: templates/settings.php:27 +msgid "Defines the filter to apply, when retrieving groups." +msgstr "" + +#: templates/settings.php:27 +msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." +msgstr "" + +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 +msgid "Port" +msgstr "" + +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" + +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "" + +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" + +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "" + +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" + +#: templates/settings.php:38 +msgid "Use TLS" +msgstr "" + +#: templates/settings.php:38 +msgid "Do not use it for SSL connections, it will fail." +msgstr "" + +#: templates/settings.php:39 +msgid "Case insensitve LDAP server (Windows)" +msgstr "" + +#: templates/settings.php:40 +msgid "Turn off SSL certificate validation." +msgstr "" + +#: templates/settings.php:40 +msgid "" +"If connection only works with this option, import the LDAP server's SSL " +"certificate in your ownCloud server." +msgstr "" + +#: templates/settings.php:40 +msgid "Not recommended, use for testing only." +msgstr "" + +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 +msgid "User Display Name Field" +msgstr "" + +#: templates/settings.php:45 +msgid "The LDAP attribute to use to generate the user`s ownCloud name." +msgstr "" + +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 +msgid "Group Display Name Field" +msgstr "" + +#: templates/settings.php:48 +msgid "The LDAP attribute to use to generate the groups`s ownCloud name." +msgstr "" + +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 +msgid "" +"Leave empty for user name (default). Otherwise, specify an LDAP/AD " +"attribute." +msgstr "" + +#: templates/settings.php:62 +msgid "Help" +msgstr "Hulp" diff --git a/l10n/af_ZA/user_webdavauth.po b/l10n/af_ZA/user_webdavauth.po new file mode 100644 index 00000000000..5ccd72fea35 --- /dev/null +++ b/l10n/af_ZA/user_webdavauth.po @@ -0,0 +1,33 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2012-11-09 09:06+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Afrikaans (South Africa) (http://www.transifex.com/projects/p/owncloud/language/af_ZA/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: af_ZA\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: templates/settings.php:3 +msgid "WebDAV Authentication" +msgstr "" + +#: templates/settings.php:4 +msgid "URL: http://" +msgstr "" + +#: templates/settings.php:6 +msgid "" +"ownCloud will send the user credentials to this URL. This plugin checks the " +"response and will interpret the HTTP statuscodes 401 and 403 as invalid " +"credentials, and all other responses as valid credentials." +msgstr "" diff --git a/l10n/ar/core.po b/l10n/ar/core.po index 0ce541f850c..100a7f42a6e 100644 --- a/l10n/ar/core.po +++ b/l10n/ar/core.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Arabic (http://www.transifex.com/projects/p/owncloud/language/ar/)\n" "MIME-Version: 1.0\n" @@ -157,59 +157,59 @@ msgstr "تشرين الثاني" msgid "December" msgstr "كانون الاول" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "تعديلات" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "منذ ثواني" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "منذ دقيقة" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} منذ دقائق" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "اليوم" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "" @@ -254,7 +254,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "شارك" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -542,7 +542,7 @@ msgstr "انهاء التعديلات" msgid "web services under your control" msgstr "خدمات الوب ØªØØª تصرÙÙƒ" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "الخروج" diff --git a/l10n/ar/files.po b/l10n/ar/files.po index 7063715d2f0..eefbee4f65e 100644 --- a/l10n/ar/files.po +++ b/l10n/ar/files.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Arabic (http://www.transifex.com/projects/p/owncloud/language/ar/)\n" "MIME-Version: 1.0\n" @@ -18,20 +18,6 @@ msgstr "" "Language: ar\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -67,11 +53,11 @@ msgstr "المجلد المؤقت غير موجود" msgid "Failed to write to disk" msgstr "" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -79,15 +65,15 @@ msgstr "" msgid "Files" msgstr "Ø§Ù„Ù…Ù„ÙØ§Øª" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "إلغاء مشاركة" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Ù…ØØ°ÙˆÙ" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "" @@ -111,7 +97,7 @@ msgstr "" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "" @@ -119,12 +105,8 @@ msgstr "" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -149,86 +131,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "إغلق" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "الاسم" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "ØØ¬Ù…" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "معدل" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -284,32 +258,40 @@ msgstr "مجلد" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "لا يوجد شيء هنا. Ø¥Ø±ÙØ¹ بعض Ø§Ù„Ù…Ù„ÙØ§Øª!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "تØÙ…يل" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "ØØ¬Ù… الترÙيع أعلى من المسموØ" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "ØØ¬Ù… Ø§Ù„Ù…Ù„ÙØ§Øª التي تريد ترÙيعها أعلى من Ø§Ù„Ù…Ø³Ù…ÙˆØ Ø¹Ù„Ù‰ الخادم." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/ar/files_trashbin.po b/l10n/ar/files_trashbin.po new file mode 100644 index 00000000000..d892fd2a983 --- /dev/null +++ b/l10n/ar/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Arabic (http://www.transifex.com/projects/p/owncloud/language/ar/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ar\n" +"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "اسم" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/ar/settings.po b/l10n/ar/settings.po index a2178a82e0a..c3a33123458 100644 --- a/l10n/ar/settings.po +++ b/l10n/ar/settings.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Arabic (http://www.transifex.com/projects/p/owncloud/language/ar/)\n" "MIME-Version: 1.0\n" @@ -78,14 +78,42 @@ msgstr "ÙØ´Ù„ Ø¥Ø¶Ø§ÙØ© المستخدم الى المجموعة %s" msgid "Unable to remove user from group %s" msgstr "ÙØ´Ù„ إزالة المستخدم من المجموعة %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "إيقاÙ" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "ØªÙØ¹ÙŠÙ„" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "خطأ" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "ØÙظ" @@ -114,6 +142,10 @@ msgstr "راجع ØµÙØØ© التطبيق على apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-ترخيص من قبل <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "ØØ¯Ø«" + #: templates/help.php:3 msgid "User Documentation" msgstr "كتاب توثيق المستخدم" @@ -265,6 +297,14 @@ msgstr "مدير المجموعة" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/ar/user_ldap.po b/l10n/ar/user_ldap.po index ab2b79bb6c3..d723f7f7d7d 100644 --- a/l10n/ar/user_ldap.po +++ b/l10n/ar/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 21:57+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Arabic (http://www.transifex.com/projects/p/owncloud/language/ar/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: ar\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "ÙØ´Ù„ Ø§Ù„ØØ°Ù" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "كلمة المرور" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "المساعدة" diff --git a/l10n/bg_BG/core.po b/l10n/bg_BG/core.po index 1e66831c050..692a844f771 100644 --- a/l10n/bg_BG/core.po +++ b/l10n/bg_BG/core.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Bulgarian (Bulgaria) (http://www.transifex.com/projects/p/owncloud/language/bg_BG/)\n" "MIME-Version: 1.0\n" @@ -159,59 +159,59 @@ msgstr "" msgid "December" msgstr "" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "ÐаÑтройки" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "преди Ñекунди" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "преди 1 минута" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "преди 1 чаÑ" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "днеÑ" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "вчера" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "поÑледниÑÑ‚ меÑец" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "поÑледната година" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "поÑледните години" @@ -256,7 +256,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "СподелÑне" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -544,7 +544,7 @@ msgstr "" msgid "web services under your control" msgstr "уеб уÑлуги под Ваш контрол" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "" diff --git a/l10n/bg_BG/files.po b/l10n/bg_BG/files.po index 2de8fabb143..b1a38c33dba 100644 --- a/l10n/bg_BG/files.po +++ b/l10n/bg_BG/files.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Bulgarian (Bulgaria) (http://www.transifex.com/projects/p/owncloud/language/bg_BG/)\n" "MIME-Version: 1.0\n" @@ -19,20 +19,6 @@ msgstr "" "Language: bg_BG\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -68,11 +54,11 @@ msgstr "ЛипÑва временна папка" msgid "Failed to write to disk" msgstr "" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -80,15 +66,15 @@ msgstr "" msgid "Files" msgstr "Файлове" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Изтриване" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Преименуване" @@ -112,7 +98,7 @@ msgstr "отказ" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "възтановÑване" @@ -120,12 +106,8 @@ msgstr "възтановÑване" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -150,86 +132,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Качването е ÑпрÑно." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Име" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Размер" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Променено" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -285,32 +259,40 @@ msgstr "Папка" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "ÐÑма нищо тук. Качете нещо." -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "ИзтеглÑне" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Файлът който Ñте избрали за качване е прекалено голÑм" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/bg_BG/files_trashbin.po b/l10n/bg_BG/files_trashbin.po new file mode 100644 index 00000000000..61fe9f67efc --- /dev/null +++ b/l10n/bg_BG/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Bulgarian (Bulgaria) (http://www.transifex.com/projects/p/owncloud/language/bg_BG/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: bg_BG\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Име" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/bg_BG/settings.po b/l10n/bg_BG/settings.po index 71667fa12a1..f056463c578 100644 --- a/l10n/bg_BG/settings.po +++ b/l10n/bg_BG/settings.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Bulgarian (Bulgaria) (http://www.transifex.com/projects/p/owncloud/language/bg_BG/)\n" "MIME-Version: 1.0\n" @@ -78,14 +78,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Включено" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Грешка" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "" @@ -114,6 +142,10 @@ msgstr "" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "ОбновÑване" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -265,6 +297,14 @@ msgstr "" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/bg_BG/user_ldap.po b/l10n/bg_BG/user_ldap.po index 0ec1c50339e..932ba233880 100644 --- a/l10n/bg_BG/user_ldap.po +++ b/l10n/bg_BG/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Bulgarian (Bulgaria) (http://www.transifex.com/projects/p/owncloud/language/bg_BG/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: bg_BG\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Парола" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Помощ" diff --git a/l10n/bn_BD/core.po b/l10n/bn_BD/core.po index dcaa8094dcd..00bc3030b2f 100644 --- a/l10n/bn_BD/core.po +++ b/l10n/bn_BD/core.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# <paul_shubhra@yahoo.com>, 2013. # Shubhra Paul <paul_shubhra@yahoo.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 13:58+0000\n" +"Last-Translator: Shubhra Paul <paul_shubhra@yahoo.com>\n" "Language-Team: Bengali (Bangladesh) (http://www.transifex.com/projects/p/owncloud/language/bn_BD/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -156,59 +157,59 @@ msgstr "নà¦à§‡à¦®à§à¦¬à¦°" msgid "December" msgstr "ডিসেমà§à¦¬à¦°" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "নিয়ামকসমূহ" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "সেকেনà§à¦¡ পূরà§à¦¬à§‡" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 মিনিট পূরà§à¦¬à§‡" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} মিনিট পূরà§à¦¬à§‡" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 ঘনà§à¦Ÿà¦¾ পূরà§à¦¬à§‡" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} ঘনà§à¦Ÿà¦¾ পূরà§à¦¬à§‡" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "আজ" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "গতকাল" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} দিন পূরà§à¦¬à§‡" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "গতমাস" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} মাস পূরà§à¦¬à§‡" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "মাস পূরà§à¦¬à§‡" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "গত বছর" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "বছর পূরà§à¦¬à§‡" @@ -253,11 +254,11 @@ msgstr "আবশà§à¦¯à¦¿à¦• {file} টি সংসà§à¦¥à¦¾à¦ªà¦¿à¦¤ নেঠ#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "à¦à¦¾à¦—াà¦à¦¾à¦—ি কর" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "à¦à¦¾à¦—াà¦à¦¾à¦—িকৃত" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -541,7 +542,7 @@ msgstr "সেটআপ সà§à¦¸à¦®à§à¦ªà¦¨à§à¦¨ কর" msgid "web services under your control" msgstr "ওয়েব সারà§à¦à¦¿à¦¸à§‡à¦° নিয়নà§à¦¤à§à¦°à¦£ আপনার হাতের মà§à¦ à§‹à§Ÿ" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "পà§à¦°à¦¸à§à¦¥à¦¾à¦¨" diff --git a/l10n/bn_BD/files.po b/l10n/bn_BD/files.po index 5d15b8d5bad..8192e6fedfc 100644 --- a/l10n/bn_BD/files.po +++ b/l10n/bn_BD/files.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Bengali (Bangladesh) (http://www.transifex.com/projects/p/owncloud/language/bn_BD/)\n" "MIME-Version: 1.0\n" @@ -18,20 +18,6 @@ msgstr "" "Language: bn_BD\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "%s কে সà§à¦¥à¦¾à¦¨à¦¾à¦¨à§à¦¤à¦° করা সমà§à¦à¦¬ হলো না - à¦à¦‡ নামের ফাইল বিদà§à¦¯à¦®à¦¾à¦¨" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "%s কে সà§à¦¥à¦¾à¦¨à¦¾à¦¨à§à¦¤à¦° করা সমà§à¦à¦¬ হলো না" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "ফাইলের নাম পরিবরà§à¦¤à¦¨ করা সমà§à¦à¦¬ হলো না" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "কোন ফাইল আপলোড করা হয় নি। সমসà§à¦¯à¦¾ অজà§à¦žà¦¾à¦¤à¥¤" @@ -67,11 +53,11 @@ msgstr "অসà§à¦¥à¦¾à§Ÿà§€ ফোলà§à¦¡à¦¾à¦° খোয়া গিয়েছ msgid "Failed to write to disk" msgstr "ডিসà§à¦•ে লিখতে বà§à¦¯à¦°à§à¦¥" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "যথেষà§à¦ পরিমাণ সà§à¦¥à¦¾à¦¨ নেই" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "à¦à§à¦² ডিরেকà§à¦Ÿà¦°à¦¿" @@ -79,15 +65,15 @@ msgstr "à¦à§à¦² ডিরেকà§à¦Ÿà¦°à¦¿" msgid "Files" msgstr "ফাইল" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "à¦à¦¾à¦—াà¦à¦¾à¦—ি বাতিল " -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "মà§à¦›à§‡ ফেল" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "পূনঃনামকরণ" @@ -111,7 +97,7 @@ msgstr "বাতিল" msgid "replaced {new_name}" msgstr "{new_name} পà§à¦°à¦¤à¦¿à¦¸à§à¦¥à¦¾à¦ªà¦¨ করা হয়েছে" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "কà§à¦°à¦¿à§Ÿà¦¾ পà§à¦°à¦¤à§à¦¯à¦¾à¦¹à¦¾à¦°" @@ -119,13 +105,9 @@ msgstr "কà§à¦°à¦¿à§Ÿà¦¾ পà§à¦°à¦¤à§à¦¯à¦¾à¦¹à¦¾à¦°" msgid "replaced {new_name} with {old_name}" msgstr "{new_name} কে {old_name} নামে পà§à¦°à¦¤à¦¿à¦¸à§à¦¥à¦¾à¦ªà¦¨ করা হয়েছে" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "{files} à¦à¦¾à¦—াà¦à¦¾à¦—ি বাতিল কর" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "{files} মà§à¦›à§‡ ফেলা হয়েছে" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -149,86 +131,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "আপনার ফাইলটি আপলোড করা সমà§à¦à¦¬ হলো না, কেননা à¦à¦Ÿà¦¿ হয় à¦à¦•টি ফোলà§à¦¡à¦¾à¦° কিংবা à¦à¦° আকার ০ বাইট" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "আপলোড করতে সমসà§à¦¯à¦¾ " -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "বনà§à¦§" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "মà§à¦²à¦¤à§à¦¬à¦¿" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "১টি ফাইল আপলোড করা হচà§à¦›à§‡" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} টি ফাইল আপলোড করা হচà§à¦›à§‡" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "আপলোড বাতিল করা হয়েছে।" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "ফাইল আপলোড চলমান। à¦à¦‡ পৃষà§à¦ া পরিতà§à¦¯à¦¾à¦— করলে আপলোড বাতিল করা হবে।" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL ফাà¦à¦•া রাখা যাবে না।" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "ফোলà§à¦¡à¦¾à¦°à§‡à¦° নামটি সঠিক নয়। 'à¦à¦¾à¦—াà¦à¦¾à¦—ি করা' শà§à¦§à§à¦®à¦¾à¦¤à§à¦° Owncloud à¦à¦° জনà§à¦¯ সংরকà§à¦·à¦¿à¦¤à¥¤" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} টি ফাইল সà§à¦•à§à¦¯à¦¾à¦¨ করা হয়েছে" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "সà§à¦•à§à¦¯à¦¾à¦¨ করার সময় সমসà§à¦¯à¦¾ দেখা দিয়েছে" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "নাম" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "আকার" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "পরিবরà§à¦¤à¦¿à¦¤" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "১টি ফোলà§à¦¡à¦¾à¦°" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} টি ফোলà§à¦¡à¦¾à¦°" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "১টি ফাইল" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} টি ফাইল" @@ -284,32 +258,40 @@ msgstr "ফোলà§à¦¡à¦¾à¦°" msgid "From link" msgstr " লিংক থেকে" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "আপলোড বাতিল কর" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "à¦à¦–ানে কিছà§à¦‡ নেই। কিছৠআপলোড করà§à¦¨ !" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "ডাউনলোড" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "আপলোডের আকারটি অনেক বড়" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "আপনি à¦à¦‡ সারà§à¦à¦¾à¦°à§‡ আপলোড করার জনà§à¦¯ অনà§à¦®à§‹à¦¦à¦¿à¦¤ ফাইলের সরà§à¦¬à§‹à¦šà§à¦š আকারের চেয়ে বৃহদাকার ফাইল আপলোড করার চেষà§à¦Ÿà¦¾ করছেন " -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "ফাইলগà§à¦²à§‹ সà§à¦•à§à¦¯à¦¾à¦¨ করা হচà§à¦›à§‡, দয়া করে অপেকà§à¦·à¦¾ করà§à¦¨à¥¤" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "বরà§à¦¤à¦®à¦¾à¦¨ সà§à¦•à§à¦¯à¦¾à¦¨à¦¿à¦‚" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/bn_BD/files_trashbin.po b/l10n/bn_BD/files_trashbin.po new file mode 100644 index 00000000000..8cb4d9688e8 --- /dev/null +++ b/l10n/bn_BD/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Bengali (Bangladesh) (http://www.transifex.com/projects/p/owncloud/language/bn_BD/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: bn_BD\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "রাম" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "১টি ফোলà§à¦¡à¦¾à¦°" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} টি ফোলà§à¦¡à¦¾à¦°" + +#: js/trash.js:120 +msgid "1 file" +msgstr "১টি ফাইল" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} টি ফাইল" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/bn_BD/settings.po b/l10n/bn_BD/settings.po index 681984d8be6..e5911603308 100644 --- a/l10n/bn_BD/settings.po +++ b/l10n/bn_BD/settings.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Bengali (Bangladesh) (http://www.transifex.com/projects/p/owncloud/language/bn_BD/)\n" "MIME-Version: 1.0\n" @@ -76,14 +76,42 @@ msgstr " %s গোষà§à¦ ীতে বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারী যোগ msgid "Unable to remove user from group %s" msgstr "%s গোষà§à¦ à§€ থেকে বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারীকে অপসারণ করা সমà§à¦à¦¬ হলো না" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "নিষà§à¦•à§à¦°à¦¿à§Ÿ" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "সকà§à¦°à¦¿à§Ÿ " +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "সমসà§à¦¯à¦¾" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "সংরকà§à¦·à¦£ করা হচà§à¦›à§‡.." @@ -112,6 +140,10 @@ msgstr "apps.owncloud.com ঠঅà§à¦¯à¦¾à¦ªà§à¦²à¦¿à¦•েসন পৃষà§à msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-লাইসেনà§à¦¸à¦§à¦¾à¦°à§€ <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "পরিবরà§à¦§à¦¨" + #: templates/help.php:3 msgid "User Documentation" msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারী সহায়িকা" @@ -263,6 +295,14 @@ msgstr "গোষà§à¦ à§€ পà§à¦°à¦¶à¦¾à¦¸à¦•" msgid "Storage" msgstr "সংরকà§à¦·à¦£à¦¾à¦—ার" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "পূরà§à¦¬à¦¨à¦¿à¦°à§à¦§à¦¾à¦°à¦¿à¦¤" diff --git a/l10n/bn_BD/user_ldap.po b/l10n/bn_BD/user_ldap.po index 68b329db2f1..2f79910e815 100644 --- a/l10n/bn_BD/user_ldap.po +++ b/l10n/bn_BD/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Bengali (Bangladesh) (http://www.transifex.com/projects/p/owncloud/language/bn_BD/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: bn_BD\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "হোসà§à¦Ÿ" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "SSL আবশà§à¦¯à¦• না হলে আপনি à¦à¦‡ পà§à¦°à¦Ÿà§‹à¦•লটি মà§à¦›à§‡ ফেলতে পারেন । à¦à¦°à¦ªà¦° শà§à¦°à§ করà§à¦¨ à¦à¦Ÿà¦¾ দিয়ে ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "à¦à¦¿à¦¤à§à¦¤à¦¿ DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "সà§à¦šà¦¾à¦°à§ টà§à¦¯à¦…বে গিয়ে আপনি বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারি à¦à¦¬à¦‚ গোষà§à¦ ীসমূহের জনà§à¦¯ à¦à¦¿à¦¤à§à¦¤à¦¿ DN নিরà§à¦§à¦¾à¦°à¦£ করতে পারেন।" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারি DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "The DN of the client user with which the bind shall be done, e.g. uid=agent,dc=example,dc=com. পরিচয় গোপন রেখে অধিগমনের জনà§à¦¯ DN à¦à¦¬à¦‚ কূটশবà§à¦¦à¦Ÿà¦¿ ফাà¦à¦•া রাখà§à¦¨à¥¤" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "কূটশবà§à¦¦" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "অজà§à¦žà¦¾à¦¤à¦•à§à¦²à¦¶à§€à¦² অধিগমনের জনà§à¦¯ DN à¦à¦¬à¦‚ কূটশবà§à¦¦à¦Ÿà¦¿ ফাà¦à¦•া রাখà§à¦¨à¥¤" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারির পà§à¦°à¦¬à§‡à¦¶ ছাà¦à¦•নী" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "পà§à¦°à¦¬à§‡à¦¶à§‡à¦° চেষà§à¦Ÿà¦¾ করার সময় পà§à¦°à¦¯à§‹à¦œà§à¦¯ ছাà¦à¦•নীটি নিরà§à¦§à¦¾à¦°à¦£ করবে। পà§à¦°à¦¬à§‡à¦¶à§‡à¦° সময় বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারী নামটি %%uid দিয়ে পà§à¦°à¦¤à¦¿à¦¸à§à¦¥à¦¾à¦ªà¦¿à¦¤ হবে।" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "%%uid সà§à¦¥à¦¾à¦¨à¦§à¦¾à¦°à¦• বà§à¦¯à¦¬à¦¹à¦¾à¦° করà§à¦¨, উদাহরণঃ \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারী তালিকা ছাà¦à¦•নী" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারী উদà§à¦§à¦¾à¦° করার সময় পà§à¦°à§Ÿà§‹à¦—ের জনà§à¦¯ ছাà¦à¦•নী নিরà§à¦§à¦¾à¦°à¦£ করবে।" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "কোন সà§à¦¥à¦¾à¦¨à¦§à¦¾à¦°à¦• বà§à¦¯à¦¤à§€à¦¤, যেমনঃ \"objectClass=person\"।" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "গোষà§à¦ à§€ ছাà¦à¦•নী" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "গোষà§à¦ ীসমূহ উদà§à¦§à¦¾à¦° করার সময় পà§à¦°à§Ÿà§‹à¦—ের জনà§à¦¯ ছাà¦à¦•নী নিরà§à¦§à¦¾à¦°à¦£ করবে।" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "কোন সà§à¦¥à¦¾à¦¨ ধারক বà§à¦¯à¦¤à§€à¦¤, উদাহরণঃ\"objectClass=posixGroup\"।" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "পোরà§à¦Ÿ" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "à¦à¦¿à¦¤à§à¦¤à¦¿ বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারি বৃকà§à¦·à¦¾à¦•ারে" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "à¦à¦¿à¦¤à§à¦¤à¦¿ গোষà§à¦ à§€ বৃকà§à¦·à¦¾à¦•ারে" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "গোষà§à¦ à§€-সদসà§à¦¯ সংসà§à¦¥à¦¾à¦ªà¦¨" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "TLS বà§à¦¯à¦¬à¦¹à¦¾à¦° কর" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "SSL সংযোগের জনà§à¦¯ à¦à¦Ÿà¦¿ বà§à¦¯à¦¬à¦¹à¦¾à¦° করবেন না, তাহলে বà§à¦¯à¦°à§à¦¥ হবেনই।" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "বরà§à¦£ অসংবেদী LDAP সারà§à¦à¦¾à¦° (উইনà§à¦¡à§‹à¦œ)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "SSL সনদপতà§à¦° যাচাইকরণ বনà§à¦§ রাক।" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "শà§à¦§à§à¦®à¦¾à¦¤à§à¦° যদি à¦à¦‡ বিকলà§à¦ªà¦Ÿà¦¿ বà§à¦¯à¦¬à¦¹à¦¾à¦° করেই সংযোগ কারà§à¦¯à¦•রী হয় তবে আপনার ownCloud সারà§à¦à¦¾à¦°à§‡ LDAP সারà§à¦à¦¾à¦°à§‡à¦° SSL সনদপতà§à¦°à¦Ÿà¦¿ আমদানি করà§à¦¨à¥¤" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "অনà§à¦®à§‹à¦¦à¦¿à¦¤ নয়, শà§à¦§à§à¦®à¦¾à¦¤à§à¦° পরীকà§à¦·à¦¾à¦®à§‚লক বà§à¦¯à¦¬à¦¹à¦¾à¦°à§‡à¦° জনà§à¦¯à¥¤" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "সেকেনà§à¦¡à§‡à¥¤ কোন পরিবরà§à¦¤à¦¨ কà§à¦¯à¦¾à¦¸à§‡ খালি করবে।" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারীর পà§à¦°à¦¦à¦°à§à¦¶à¦¿à¦¤à¦¬à§à¦¯ নামের কà§à¦·à§‡à¦¤à§à¦°" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারীর ownCloud নাম তৈরি করার জনà§à¦¯ বà§à¦¯à¦à¦¹à§ƒà¦¤ LDAP বৈশিষà§à¦Ÿà§à¦¯à¥¤" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "à¦à¦¿à¦¤à§à¦¤à¦¿ বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারি বৃকà§à¦·à¦¾à¦•ারে" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "গোষà§à¦ ীর পà§à¦°à¦¦à¦°à§à¦¶à¦¿à¦¤à¦¬à§à¦¯ নামের কà§à¦·à§‡à¦¤à§à¦°" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "গোষà§à¦ ীর ownCloud নাম তৈরি করার জনà§à¦¯ বà§à¦¯à¦à¦¹à§ƒà¦¤ LDAP বৈশিষà§à¦Ÿà§à¦¯à¥¤" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "à¦à¦¿à¦¤à§à¦¤à¦¿ গোষà§à¦ à§€ বৃকà§à¦·à¦¾à¦•ারে" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "গোষà§à¦ à§€-সদসà§à¦¯ সংসà§à¦¥à¦¾à¦ªà¦¨" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "বাইটে" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "সেকেনà§à¦¡à§‡à¥¤ কোন পরিবরà§à¦¤à¦¨ কà§à¦¯à¦¾à¦¸à§‡ খালি করবে।" - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারী নামের জনà§à¦¯ ফাà¦à¦•া রাখà§à¦¨ (পূরà§à¦¬à¦¨à¦¿à¦°à§à¦§à¦¾à¦°à¦¿à¦¤)। অনà§à¦¯à¦¥à¦¾à§Ÿ, LDAP/AD বৈশিষà§à¦Ÿà§à¦¯ নিরà§à¦§à¦¾à¦°à¦£ করà§à¦¨à¥¤" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "সহায়িকা" diff --git a/l10n/ca/core.po b/l10n/ca/core.po index 3fe5703a2f8..4c045d1fe1e 100644 --- a/l10n/ca/core.po +++ b/l10n/ca/core.po @@ -10,9 +10,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" +"Last-Translator: rogerc <rcalvoi@yahoo.com>\n" "Language-Team: Catalan (http://www.transifex.com/projects/p/owncloud/language/ca/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -158,59 +158,59 @@ msgstr "Novembre" msgid "December" msgstr "Desembre" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Arranjament" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "segons enrere" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "fa 1 minut" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "fa {minutes} minuts" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "fa 1 hora" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "fa {hours} hores" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "avui" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "ahir" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "fa {days} dies" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "el mes passat" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "fa {months} mesos" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "mesos enrere" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "l'any passat" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "anys enrere" @@ -255,11 +255,11 @@ msgstr "El fitxer requerit {file} no està instal·lat!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Comparteix" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Compartit" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -543,7 +543,7 @@ msgstr "Acaba la configuració" msgid "web services under your control" msgstr "controleu els vostres serveis web" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Surt" diff --git a/l10n/ca/files.po b/l10n/ca/files.po index fef5f92725c..758bde167ae 100644 --- a/l10n/ca/files.po +++ b/l10n/ca/files.po @@ -14,8 +14,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-28 00:04+0100\n" -"PO-Revision-Date: 2013-01-27 15:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 08:40+0000\n" "Last-Translator: rogerc <rcalvoi@yahoo.com>\n" "Language-Team: Catalan (http://www.transifex.com/projects/p/owncloud/language/ca/)\n" "MIME-Version: 1.0\n" @@ -24,20 +24,6 @@ msgstr "" "Language: ca\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "No s'ha pogut moure %s - Ja hi ha un fitxer amb aquest nom" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr " No s'ha pogut moure %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "No es pot canviar el nom del fitxer" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "No s'ha carregat cap fitxer. Error desconegut" @@ -73,11 +59,11 @@ msgstr "S'ha perdut un fitxer temporal" msgid "Failed to write to disk" msgstr "Ha fallat en escriure al disc" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "No hi ha prou espai disponible" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Directori no và lid." @@ -85,15 +71,15 @@ msgstr "Directori no và lid." msgid "Files" msgstr "Fitxers" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Deixa de compartir" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Suprimeix" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Reanomena" @@ -117,7 +103,7 @@ msgstr "cancel·la" msgid "replaced {new_name}" msgstr "s'ha substituït {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "desfés" @@ -125,13 +111,9 @@ msgstr "desfés" msgid "replaced {new_name} with {old_name}" msgstr "s'ha substituït {old_name} per {new_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "no compartits {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "eliminats {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "executa d'operació d'esborrar" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -155,86 +137,78 @@ msgstr "El vostre espai d'emmagatzemament és ple, els fitxers ja no es poden ac msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "El vostre espai d'emmagatzemament és gairebé ple ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "S'està preparant la baixada. Pot trigar una estona si els fitxers són grans." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "No es pot pujar el fitxer perquè és una carpeta o té 0 bytes" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Error en la pujada" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Tanca" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Pendents" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 fitxer pujant" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} fitxers en pujada" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "La pujada s'ha cancel·lat." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Hi ha una pujada en curs. Si abandoneu la pà gina la pujada es cancel·larà ." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "La URL no pot ser buida" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Nom de carpeta no và lid. L'ús de 'Shared' està reservat per Owncloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} fitxers escannejats" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "error durant l'escaneig" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nom" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Mida" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Modificat" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 carpeta" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} carpetes" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 fitxer" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} fitxers" @@ -290,32 +264,40 @@ msgstr "Carpeta" msgid "From link" msgstr "Des d'enllaç" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "Esborra" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Cancel·la la pujada" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Res per aquÃ. Pugeu alguna cosa!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Baixa" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "La pujada és massa gran" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Els fitxers que esteu intentant pujar excedeixen la mida mà xima de pujada del servidor" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "S'estan escanejant els fitxers, espereu" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Actualment escanejant" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Actualitzant la memòria de cau del sistema de fitxers..." diff --git a/l10n/ca/files_trashbin.po b/l10n/ca/files_trashbin.po new file mode 100644 index 00000000000..3bb530ebc63 --- /dev/null +++ b/l10n/ca/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# <rcalvoi@yahoo.com>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Catalan (http://www.transifex.com/projects/p/owncloud/language/ca/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ca\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "executa l'operació de restauració" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nom" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "Eliminat" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 carpeta" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} carpetes" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 fitxer" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} fitxers" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "La paperera està buida!" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Recupera" diff --git a/l10n/ca/settings.po b/l10n/ca/settings.po index 1efd6df00e1..4ad389d707e 100644 --- a/l10n/ca/settings.po +++ b/l10n/ca/settings.po @@ -7,14 +7,15 @@ # <joan@montane.cat>, 2012. # <josep_tomas@hotmail.com>, 2012. # Josep Tomà s <jtomas.binsoft@gmail.com>, 2012. +# <rcalvoi@yahoo.com>, 2013. # <rcalvoi@yahoo.com>, 2011-2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 16:48+0000\n" +"Last-Translator: rogerc <rcalvoi@yahoo.com>\n" "Language-Team: Catalan (http://www.transifex.com/projects/p/owncloud/language/ca/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -80,14 +81,42 @@ msgstr "No es pot afegir l'usuari al grup %s" msgid "Unable to remove user from group %s" msgstr "No es pot eliminar l'usuari del grup %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "No s'ha pogut actualitzar l'aplicació." + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "Actualitza a {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Desactiva" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Activa" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "Espereu..." + +#: js/apps.js:84 +msgid "Updating...." +msgstr "Actualitzant..." + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "Error en actualitzar l'aplicació" + +#: js/apps.js:87 +msgid "Error" +msgstr "Error" + +#: js/apps.js:90 +msgid "Updated" +msgstr "Actualitzada" + #: js/personal.js:69 msgid "Saving..." msgstr "S'està desant..." @@ -116,6 +145,10 @@ msgstr "Mireu la pà gina d'aplicacions a apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-propietat de <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Actualitza" + #: templates/help.php:3 msgid "User Documentation" msgstr "Documentació d'usuari" @@ -233,7 +266,7 @@ msgstr "Desenvolupat per la <a href=\"http://ownCloud.org/contact\" target=\"_bl #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Nom d'accés" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -257,7 +290,7 @@ msgstr "Un altre" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Nom a mostrar" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -267,6 +300,14 @@ msgstr "Grup Admin" msgid "Storage" msgstr "Emmagatzemament" +#: templates/users.php:97 +msgid "change display name" +msgstr "canvia el nom a mostrar" + +#: templates/users.php:101 +msgid "set new password" +msgstr "estableix nova contrasenya" + #: templates/users.php:137 msgid "Default" msgstr "Per defecte" diff --git a/l10n/ca/user_ldap.po b/l10n/ca/user_ldap.po index 8cf04dcae1b..09de26a1cc2 100644 --- a/l10n/ca/user_ldap.po +++ b/l10n/ca/user_ldap.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# <rcalvoi@yahoo.com>, 2013. # <rcalvoi@yahoo.com>, 2012-2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-17 00:26+0100\n" -"PO-Revision-Date: 2013-01-16 07:21+0000\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 08:50+0000\n" "Last-Translator: rogerc <rcalvoi@yahoo.com>\n" "Language-Team: Catalan (http://www.transifex.com/projects/p/owncloud/language/ca/)\n" "MIME-Version: 1.0\n" @@ -18,6 +19,58 @@ msgstr "" "Language: ca\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "Ha fallat en eliminar la configuració del servidor" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "La configuració és và lida i s'ha pogut establir la comunicació!" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "La configuració és và lida, però ha fallat el Bind. Comproveu les credencials i l'arranjament del servidor." + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "La configuració no és và lida. Per més detalls mireu al registre d'ownCloud." + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Eliminació fallida" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "Voleu prendre l'arranjament de la configuració actual del servidor?" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "Voleu mantenir la configuració?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "No es pot afegir la configuració del servidor" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "La prova de connexió ha reeixit" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "La prova de connexió ha fallat" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "Voleu eliminar la configuració actual del servidor?" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "Confirma l'eliminació" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +85,227 @@ msgid "" msgstr "<b>AvÃs:</b> El mòdul PHP LDAP no està instal·lat, el dorsal no funcionarà . Demaneu a l'administrador del sistema que l'instal·li." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "Configuració del servidor" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "Afegeix la configuració del servidor" + +#: templates/settings.php:21 msgid "Host" msgstr "Mà quina" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Podeu ometre el protocol, excepte si requeriu SSL. Llavors comenceu amb ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "DN Base" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "Una DN Base per lÃnia" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Podeu especificar DN Base per usuaris i grups a la pestanya Avançat" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN Usuari" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "La DN de l'usuari client amb la que s'haurà de fer, per exemple uid=agent,dc=exemple,dc=com. Per un accés anònim, deixeu la DN i la contrasenya en blanc." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Contrasenya" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Per un accés anònim, deixeu la DN i la contrasenya en blanc." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filtre d'inici de sessió d'usuari" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Defineix el filtre a aplicar quan s'intenta l'inici de sessió. %%uid reemplaça el nom d'usuari en l'acció d'inici de sessió." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "useu el parà metre de substitució %%uid, per exemple \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Llista de filtres d'usuari" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Defineix el filtre a aplicar quan es mostren usuaris" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "sense cap parà metre de substitució, per exemple \"objectClass=persona\"" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Filtre de grup" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Defineix el filtre a aplicar quan es mostren grups." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "sense cap parà metre de substitució, per exemple \"objectClass=grupPosix\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "Arranjaments de connexió" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "Configuració activa" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "Si està desmarcat, aquesta configuració s'ometrà ." + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Arbre base d'usuaris" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "Mà quina de còpia de serguretat (rèplica)" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "Una DN Base d'Usuari per lÃnia" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "Afegiu una mà quina de còpia de seguretat opcional. Ha de ser una rèplica del servidor LDAP/AD principal." -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Arbre base de grups" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "Port de la còpia de seguretat (rèplica)" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "Una DN Base de Grup per lÃnia" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "Desactiva el servidor principal" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Associació membres-grup" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "Quan està connectat, ownCloud només es connecta al servidor de la rèplica." -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Usa TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "No ho useu en connexions SSL, fallarà ." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Servidor LDAP sense distinció entre majúscules i minúscules (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Desactiva la validació de certificat SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Si la connexió només funciona amb aquesta opció, importeu el certificat SSL del servidor LDAP en el vostre servidor ownCloud." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "No recomanat, ús només per proves." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "en segons. Un canvi buidarà la memòria de cau." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "Arranjaments de carpetes" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Camp per mostrar el nom d'usuari" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Atribut LDAP a usar per generar el nom d'usuari ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Arbre base d'usuaris" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Una DN Base d'Usuari per lÃnia" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "Atributs de cerca d'usuari" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "Opcional; Un atribut per lÃnia" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Camp per mostrar el nom del grup" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Atribut LDAP a usar per generar el nom de grup ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Arbre base de grups" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Una DN Base de Grup per lÃnia" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "Atributs de cerca de grup" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Associació membres-grup" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "Atributs especials" + +#: templates/settings.php:56 msgid "in bytes" msgstr "en bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "en segons. Un canvi buidarà la memòria de cau." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Deixeu-ho buit pel nom d'usuari (per defecte). Altrament, especifiqueu un atribut LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Ajuda" diff --git a/l10n/cs_CZ/core.po b/l10n/cs_CZ/core.po index c65ccce2da5..1f2c45b65f5 100644 --- a/l10n/cs_CZ/core.po +++ b/l10n/cs_CZ/core.po @@ -11,9 +11,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" +"Last-Translator: Tomáš Chvátal <tomas.chvatal@gmail.com>\n" "Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/owncloud/language/cs_CZ/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -159,59 +159,59 @@ msgstr "Listopad" msgid "December" msgstr "Prosinec" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "NastavenÃ" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "pÅ™ed pár vteÅ™inami" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "pÅ™ed minutou" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "pÅ™ed {minutes} minutami" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "pÅ™ed hodinou" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "pÅ™ed {hours} hodinami" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "dnes" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "vÄera" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "pÅ™ed {days} dny" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "minulý mesÃc" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "pÅ™ed {months} mÄ›sÃci" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "pÅ™ed mÄ›sÃci" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "minulý rok" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "pÅ™ed lety" @@ -256,11 +256,11 @@ msgstr "Požadovaný soubor {file} nenà nainstalován." #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "SdÃlet" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "SdÃlené" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -544,7 +544,7 @@ msgstr "DokonÄit nastavenÃ" msgid "web services under your control" msgstr "webové služby pod Vašà kontrolou" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Odhlásit se" diff --git a/l10n/cs_CZ/files.po b/l10n/cs_CZ/files.po index de2fbc84153..36e541de84c 100644 --- a/l10n/cs_CZ/files.po +++ b/l10n/cs_CZ/files.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-29 00:04+0100\n" -"PO-Revision-Date: 2013-01-28 07:07+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:40+0000\n" "Last-Translator: Tomáš Chvátal <tomas.chvatal@gmail.com>\n" "Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/owncloud/language/cs_CZ/)\n" "MIME-Version: 1.0\n" @@ -20,20 +20,6 @@ msgstr "" "Language: cs_CZ\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Nelze pÅ™esunout %s - existuje soubor se stejným názvem" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Nelze pÅ™esunout %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Nelze pÅ™ejmenovat soubor" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Soubor nebyl odeslán. Neznámá chyba" @@ -69,11 +55,11 @@ msgstr "Chybà adresář pro doÄasné soubory" msgid "Failed to write to disk" msgstr "Zápis na disk selhal" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "Nedostatek dostupného úložného prostoru" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Nedostatek dostupného mÃsta" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Neplatný adresář" @@ -81,15 +67,15 @@ msgstr "Neplatný adresář" msgid "Files" msgstr "Soubory" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "ZruÅ¡it sdÃlenÃ" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Smazat" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "PÅ™ejmenovat" @@ -113,7 +99,7 @@ msgstr "zruÅ¡it" msgid "replaced {new_name}" msgstr "nahrazeno {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "zpÄ›t" @@ -121,13 +107,9 @@ msgstr "zpÄ›t" msgid "replaced {new_name} with {old_name}" msgstr "nahrazeno {new_name} s {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "sdÃlenà zruÅ¡eno pro {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "smazáno {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "provést smazánÃ" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -151,86 +133,78 @@ msgstr "VaÅ¡e úložiÅ¡tÄ› je plné, nelze aktualizovat ani synchronizovat soubo msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "VaÅ¡e úložiÅ¡tÄ› je téměř plné ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "VaÅ¡e soubory ke staženà se pÅ™ipravujÃ. Pokud jsou velké může to chvÃli trvat." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Nelze odeslat Váš soubor, protože je to adresář nebo má velikost 0 bajtů" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Chyba odesÃlánÃ" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "ZavÅ™Ãt" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "ÄŒekajÃcÃ" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "odesÃlá se 1 soubor" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "odesÃlám {count} souborů" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "OdesÃlánà zruÅ¡eno." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "ProbÃhá odesÃlánà souboru. OpuÅ¡tÄ›nà stránky vyústà ve zruÅ¡enà nahrávánÃ." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL nemůže být prázdná" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Neplatný název složky. Použità 'Shared' je rezervováno pro vnitÅ™nà potÅ™eby Owncloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "prozkoumáno {count} souborů" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "chyba pÅ™i prohledávánÃ" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Název" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Velikost" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "ZmÄ›nÄ›no" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 složka" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} složky" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 soubor" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} soubory" @@ -286,32 +260,40 @@ msgstr "Složka" msgid "From link" msgstr "Z odkazu" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "KoÅ¡" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "ZruÅ¡it odesÃlánÃ" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Žádný obsah. Nahrajte nÄ›co." -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Stáhnout" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Odeslaný soubor je pÅ™ÃliÅ¡ velký" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Soubory, které se snažÃte odeslat, pÅ™ekraÄujà limit velikosti odesÃlánà na tomto serveru." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Soubory se prohledávajÃ, prosÃm Äekejte." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Aktuálnà prohledávánÃ" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Aktualizuji mezipaměť souborového systému..." diff --git a/l10n/cs_CZ/files_trashbin.po b/l10n/cs_CZ/files_trashbin.po new file mode 100644 index 00000000000..29c424b5de7 --- /dev/null +++ b/l10n/cs_CZ/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Tomáš Chvátal <tomas.chvatal@gmail.com>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/owncloud/language/cs_CZ/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: cs_CZ\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "provést obnovu" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Název" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "Smazáno" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 složka" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} složky" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 soubor" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} soubory" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Žádný obsah. Váš koÅ¡ je prázdný." + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Obnovit" diff --git a/l10n/cs_CZ/settings.po b/l10n/cs_CZ/settings.po index 4157e0094b6..c232c3b36df 100644 --- a/l10n/cs_CZ/settings.po +++ b/l10n/cs_CZ/settings.po @@ -8,14 +8,14 @@ # Martin <fireball@atlas.cz>, 2011-2012. # Michal HruÅ¡ecký <Michal@hrusecky.net>, 2012. # <Michal@hrusecky.net>, 2012. -# Tomáš Chvátal <tomas.chvatal@gmail.com>, 2012. +# Tomáš Chvátal <tomas.chvatal@gmail.com>, 2012-2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 08:10+0000\n" +"Last-Translator: Tomáš Chvátal <tomas.chvatal@gmail.com>\n" "Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/owncloud/language/cs_CZ/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -81,14 +81,42 @@ msgstr "Nelze pÅ™idat uživatele do skupiny %s" msgid "Unable to remove user from group %s" msgstr "Nelze odstranit uživatele ze skupiny %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "Nelze aktualizovat aplikaci." + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "Aktualizovat na {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Zakázat" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Povolit" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "ÄŒekejte prosÃm..." + +#: js/apps.js:84 +msgid "Updating...." +msgstr "Aktualizuji..." + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "Chyba pÅ™i aktualizaci aplikace" + +#: js/apps.js:87 +msgid "Error" +msgstr "Chyba" + +#: js/apps.js:90 +msgid "Updated" +msgstr "Aktualizováno" + #: js/personal.js:69 msgid "Saving..." msgstr "Ukládám..." @@ -117,6 +145,10 @@ msgstr "VÃce na stránce s aplikacemi na apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licencováno <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Aktualizovat" + #: templates/help.php:3 msgid "User Documentation" msgstr "Uživatelská dokumentace" @@ -234,7 +266,7 @@ msgstr "Vyvinuto <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komun #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "PÅ™ihlaÅ¡ovacà jméno" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -258,7 +290,7 @@ msgstr "Jiná" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Zobrazované jméno" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -268,6 +300,14 @@ msgstr "Správa skupiny" msgid "Storage" msgstr "ÚložiÅ¡tÄ›" +#: templates/users.php:97 +msgid "change display name" +msgstr "zmÄ›nit zobrazované jméno" + +#: templates/users.php:101 +msgid "set new password" +msgstr "nastavit nové heslo" + #: templates/users.php:137 msgid "Default" msgstr "VýchozÃ" diff --git a/l10n/cs_CZ/user_ldap.po b/l10n/cs_CZ/user_ldap.po index 225c039f836..9ef32071e27 100644 --- a/l10n/cs_CZ/user_ldap.po +++ b/l10n/cs_CZ/user_ldap.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 11:09+0000\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-03 07:40+0000\n" "Last-Translator: Tomáš Chvátal <tomas.chvatal@gmail.com>\n" "Language-Team: Czech (Czech Republic) (http://www.transifex.com/projects/p/owncloud/language/cs_CZ/)\n" "MIME-Version: 1.0\n" @@ -19,6 +19,58 @@ msgstr "" "Language: cs_CZ\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "Selhalo smazánà konfigurace serveru" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "Nastavenà je v pořádku a spojenà bylo navázáno." + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "Konfigurace je v pořádku, ale spojenà selhalo. Zkontrolujte, prosÃm, nastavenà serveru a pÅ™ihlaÅ¡ovacà údaje." + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "Nastavenà je neplatné. Zkontrolujte, prosÃm, záznam ownCloud pro dalšà podrobnosti." + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Mazánà selhalo." + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "PÅ™evzÃt nastavenà z nedávného nastavenà serveru?" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "Ponechat nastavenÃ?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "Nelze pÅ™idat nastavenà serveru" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "Test spojenà byl úspěšný" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "Test spojenà selhal" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "Opravdu si pÅ™ejete smazat souÄasné nastavenà serveru?" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "Potvrdit smazánÃ" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -33,165 +85,227 @@ msgid "" msgstr "<b>VarovánÃ:</b> nenà nainstalován LDAP modul pro PHP, podpůrná vrstva nebude fungovat. Požádejte, prosÃm, správce systému aby jej nainstaloval." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "Nastavenà serveru" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "PÅ™idat nastavenà serveru" + +#: templates/settings.php:21 msgid "Host" msgstr "PoÄÃtaÄ" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Můžete vynechat protokol, vyjma pokud požadujete SSL. Tehdy zaÄnÄ›te s ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Základnà DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "Jedna základnà DN na řádku" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "V rozÅ¡ÃÅ™eném nastavenà můžete urÄit základnà DN pro uživatele a skupiny" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "Uživatelské DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "DN klentského uživatele ke kterému tvoÅ™Ãte vazbu, napÅ™. uid=agent,dc=example,dc=com. Pro anonymnà pÅ™Ãstup ponechte údaje DN and Heslo prázdné." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Heslo" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Pro anonymnà pÅ™Ãstup, ponechte údaje DN and heslo prázdné." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filtr pÅ™ihlášenà uživatelů" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "UrÄuje použitý filtr, pÅ™i pokusu o pÅ™ihlášenÃ. %%uid nahrazuje uživatelské jméno v Äinnosti pÅ™ihlášenÃ." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "použijte zástupný vzor %%uid, napÅ™. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Filtr uživatelských seznamů" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "UrÄuje použitý filtr, pro zÃskávanà uživatelů." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "bez zástupných znaků, napÅ™. \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Filtr skupin" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "UrÄuje použitý filtr, pro zÃskávanà skupin." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "bez zástupných znaků, napÅ™. \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "Nastavenà spojenÃ" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "Nastavenà aktivnÃ" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "Pokud nenà zaÅ¡krtnuto, bude nastavenà pÅ™eskoÄeno." + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Základnà uživatelský strom" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "Záložnà (kopie) hostitel" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "Jedna uživatelská základnà DN na řádku" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "Zadejte volitelného záložnÃho hostitele. Musà to být kopie hlavnÃho serveru LDAP/AD." -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Základnà skupinový strom" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "Záložnà (kopie) port" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "Jedna skupinová základnà DN na řádku" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "Zakázat hlavnà serveru" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Asociace Älena skupiny" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "PÅ™i zapnutà se ownCloud pÅ™ipojà pouze k záložnÃmu serveru" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "PoužÃt TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "NepoužÃvejte pro pÅ™ipojenà pomocà SSL, pÅ™ipojenà selže." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "LDAP server nerozliÅ¡ujÃcà velikost znaků (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Vypnout ověřovánà SSL certifikátu." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Pokud pÅ™ipojenà pracuje pouze s touto možnostÃ, tak importujte SSL certifikát SSL serveru do VaÅ¡eho serveru ownCloud" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Nenà doporuÄeno, pouze pro testovacà úÄely." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "ve vteÅ™inách. ZmÄ›na vyprázdnà vyrovnávacà paměť." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "Nastavenà adresáře" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Pole pro zobrazované jméno uživatele" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Atribut LDAP použitý k vytvoÅ™enà jména uživatele ownCloud" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Základnà uživatelský strom" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Jedna uživatelská základnà DN na řádku" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "Atributy vyhledávánà uživatelů" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "Volitelné, atribut na řádku" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Pole pro zobrazenà jména skupiny" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Atribut LDAP použitý k vytvoÅ™enà jména skupiny ownCloud" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Základnà skupinový strom" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Jedna skupinová základnà DN na řádku" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "Atributy vyhledávánà skupin" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Asociace Älena skupiny" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "Speciálnà atributy" + +#: templates/settings.php:56 msgid "in bytes" msgstr "v bajtech" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "ve vteÅ™inách. ZmÄ›na vyprázdnà vyrovnávacà paměť." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Ponechte prázdné pro uživatelské jméno (výchozÃ). Jinak uveÄte LDAP/AD parametr." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "NápovÄ›da" diff --git a/l10n/da/core.po b/l10n/da/core.po index 4f1fdd3523e..d3a5c7d2f98 100644 --- a/l10n/da/core.po +++ b/l10n/da/core.po @@ -16,8 +16,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n" "MIME-Version: 1.0\n" @@ -164,59 +164,59 @@ msgstr "November" msgid "December" msgstr "December" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Indstillinger" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "sekunder siden" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 minut siden" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} minutter siden" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 time siden" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} timer siden" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "i dag" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "i gÃ¥r" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} dage siden" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "sidste mÃ¥ned" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} mÃ¥neder siden" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "mÃ¥neder siden" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "sidste Ã¥r" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "Ã¥r siden" @@ -261,7 +261,7 @@ msgstr "Den krævede fil {file} er ikke installeret!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Del" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -549,7 +549,7 @@ msgstr "Afslut opsætning" msgid "web services under your control" msgstr "Webtjenester under din kontrol" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Log ud" diff --git a/l10n/da/files.po b/l10n/da/files.po index 2654e4e323c..2768aaf4490 100644 --- a/l10n/da/files.po +++ b/l10n/da/files.po @@ -15,9 +15,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 11:55+0000\n" -"Last-Translator: Morten Juhl-Johansen Zölde-Fejér <morten@writtenandread.net>\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -25,20 +25,6 @@ msgstr "" "Language: da\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Kunne ikke flytte %s - der findes allerede en fil med dette navn" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Kunne ikke flytte %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Kunne ikke omdøbe fil" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Ingen fil blev uploadet. Ukendt fejl." @@ -74,11 +60,11 @@ msgstr "Mangler en midlertidig mappe" msgid "Failed to write to disk" msgstr "Fejl ved skrivning til disk." -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "Der er ikke nok plads til rÃ¥dlighed" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Ugyldig mappe." @@ -86,15 +72,15 @@ msgstr "Ugyldig mappe." msgid "Files" msgstr "Filer" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Fjern deling" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Slet" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Omdøb" @@ -118,7 +104,7 @@ msgstr "fortryd" msgid "replaced {new_name}" msgstr "erstattede {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "fortryd" @@ -126,13 +112,9 @@ msgstr "fortryd" msgid "replaced {new_name} with {old_name}" msgstr "erstattede {new_name} med {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "ikke delte {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "slettede {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -156,86 +138,78 @@ msgstr "Din opbevaringsplads er fyldt op, filer kan ikke opdateres eller synkron msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "Din opbevaringsplads er næsten fyldt op ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Dit download forberedes. Dette kan tage lidt tid ved større filer." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Kunne ikke uploade din fil, da det enten er en mappe eller er tom" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Fejl ved upload" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Luk" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Afventer" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 fil uploades" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} filer uploades" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Upload afbrudt." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Fil upload kører. Hvis du forlader siden nu, vil uploadet blive annuleret." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URLen kan ikke være tom." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Ugyldigt mappenavn. Brug af \"Shared\" er forbeholdt Owncloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} filer skannet" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "fejl under scanning" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Navn" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Størrelse" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Ændret" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 mappe" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} mapper" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 fil" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} filer" @@ -291,32 +265,40 @@ msgstr "Mappe" msgid "From link" msgstr "Fra link" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Fortryd upload" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Her er tomt. Upload noget!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Download" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Upload for stor" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Filerne, du prøver at uploade, er større end den maksimale størrelse for fil-upload pÃ¥ denne server." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Filerne bliver indlæst, vent venligst." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Indlæser" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/da/files_trashbin.po b/l10n/da/files_trashbin.po new file mode 100644 index 00000000000..34a7ae71319 --- /dev/null +++ b/l10n/da/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: da\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Navn" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 mappe" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} mapper" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 fil" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} filer" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Gendan" diff --git a/l10n/da/settings.po b/l10n/da/settings.po index 6df46a3c46c..297100e94e2 100644 --- a/l10n/da/settings.po +++ b/l10n/da/settings.po @@ -17,8 +17,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n" "MIME-Version: 1.0\n" @@ -85,14 +85,42 @@ msgstr "Brugeren kan ikke tilføjes til gruppen %s" msgid "Unable to remove user from group %s" msgstr "Brugeren kan ikke fjernes fra gruppen %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Deaktiver" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Aktiver" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Fejl" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Gemmer..." @@ -121,6 +149,10 @@ msgstr "Se applikationens side pÃ¥ apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licenseret af <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Opdater" + #: templates/help.php:3 msgid "User Documentation" msgstr "Brugerdokumentation" @@ -272,6 +304,14 @@ msgstr "Gruppe Administrator" msgid "Storage" msgstr "Opbevaring" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "Standard" diff --git a/l10n/da/user_ldap.po b/l10n/da/user_ldap.po index a0d0e27bed6..63c885ecaa7 100644 --- a/l10n/da/user_ldap.po +++ b/l10n/da/user_ldap.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:19+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n" "MIME-Version: 1.0\n" @@ -22,6 +22,58 @@ msgstr "" "Language: da\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Fejl ved sletning" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -36,165 +88,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Host" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Du kan udelade protokollen, medmindre du skal bruge SSL. Start i sÃ¥ fald med ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Base DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "You can specify Base DN for users and groups in the Advanced tab" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "Bruger DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Kodeord" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "For anonym adgang, skal du lade DN og Adgangskode tomme." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Bruger Login Filter" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Brugerliste Filter" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Definere filteret der bruges ved indlæsning af brugere." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Gruppe Filter" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Definere filteret der bruges nÃ¥r der indlæses grupper." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Base Bruger Træ" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Brug TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Brug ikke til SSL forbindelser, da den vil fejle." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Deaktiver SSL certifikat validering" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Anbefales ikke, brug kun for at teste." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "User Display Name Field" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Base Bruger Træ" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" -msgstr "i bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Base Group Tree" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Group-Member association" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "i bytes" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Hjælp" diff --git a/l10n/de/core.po b/l10n/de/core.po index b9615f97a4a..b46bf407176 100644 --- a/l10n/de/core.po +++ b/l10n/de/core.po @@ -3,7 +3,7 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: -# <admin@s-goecker.de>, 2011, 2012. +# <admin@s-goecker.de>, 2011-2012. # <alex.hotz@gmail.com>, 2011. # <blobbyjj@ymail.com>, 2012. # <georg.stefan.germany@googlemail.com>, 2011. @@ -23,8 +23,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 00:10+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n" "MIME-Version: 1.0\n" @@ -171,59 +171,59 @@ msgstr "November" msgid "December" msgstr "Dezember" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Einstellungen" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "Gerade eben" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "vor einer Minute" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "Vor {minutes} Minuten" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "Vor einer Stunde" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "Vor {hours} Stunden" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "Heute" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "Gestern" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "Vor {days} Tag(en)" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "Letzten Monat" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "Vor {months} Monaten" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "Vor Monaten" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "Letztes Jahr" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "Vor Jahren" @@ -268,11 +268,11 @@ msgstr "Die benötigte Datei {file} ist nicht installiert." #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Freigeben" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Freigegeben" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -395,7 +395,7 @@ msgid "" "The update was unsuccessful. Please report this issue to the <a " "href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud " "community</a>." -msgstr "Das Update ist fehlgeschlagen. Bitte melden Sie dieses Problem an die <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud Gemeinschaft</a>." +msgstr "Das Update ist fehlgeschlagen. Bitte melden Sie dieses Problem an die <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud Community</a>." #: js/update.js:18 msgid "The update was successful. Redirecting you to ownCloud now." @@ -556,7 +556,7 @@ msgstr "Installation abschließen" msgid "web services under your control" msgstr "Web-Services unter Ihrer Kontrolle" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Abmelden" diff --git a/l10n/de/files.po b/l10n/de/files.po index 15ecd3bc993..06930bfca5c 100644 --- a/l10n/de/files.po +++ b/l10n/de/files.po @@ -23,13 +23,14 @@ # <transifex.3.mensaje@spamgourmet.com>, 2012. # <transifex.com@mail.simonzoellner.de>, 2013. # <uu.kabum@gmail.com>, 2013. +# <wachhund@wachhund.to>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:01+0000\n" -"Last-Translator: Marcel Kühlhorn <susefan93@gmx.de>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 00:10+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -37,20 +38,6 @@ msgstr "" "Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Konnte %s nicht verschieben - Datei mit diesem Namen existiert bereits." - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Konnte %s nicht verschieben" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Konnte Datei nicht umbenennen" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Keine Datei hochgeladen. Unbekannter Fehler" @@ -86,27 +73,27 @@ msgstr "Temporärer Ordner fehlt." msgid "Failed to write to disk" msgstr "Fehler beim Schreiben auf die Festplatte" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "Nicht genug Speicherplatz verfügbar" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." -msgstr "Ungültiges Verzeichnis" +msgstr "Ungültiges Verzeichnis." #: appinfo/app.php:10 msgid "Files" msgstr "Dateien" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Nicht mehr freigeben" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Löschen" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Umbenennen" @@ -130,7 +117,7 @@ msgstr "abbrechen" msgid "replaced {new_name}" msgstr "{new_name} wurde ersetzt" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "rückgängig machen" @@ -138,21 +125,17 @@ msgstr "rückgängig machen" msgid "replaced {new_name} with {old_name}" msgstr "{old_name} ersetzt durch {new_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "Freigabe von {files} aufgehoben" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "{files} gelöscht" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "Löschvorgang ausführen" #: js/files.js:52 msgid "'.' is an invalid file name." -msgstr "'.' ist kein gültiger Dateiname" +msgstr "'.' ist kein gültiger Dateiname." #: js/files.js:56 msgid "File name cannot be empty." -msgstr "Der Dateiname darf nicht leer sein" +msgstr "Der Dateiname darf nicht leer sein." #: js/files.js:64 msgid "" @@ -168,86 +151,78 @@ msgstr "Ihr Speicherplatz ist voll, Dateien können nicht mehr aktualisiert oder msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "Ihr Speicherplatz ist fast aufgebraucht ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Dein Download wird vorbereitet. Dies kann bei größeren Dateien etwas dauern." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Deine Datei kann nicht hochgeladen werden, da sie entweder ein Verzeichnis oder 0 Bytes groß ist." -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Fehler beim Upload" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Schließen" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Ausstehend" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "Eine Datei wird hoch geladen" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} Dateien werden hochgeladen" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Upload abgebrochen." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Dateiupload läuft. Wenn Du die Seite jetzt verlässt, wird der Upload abgebrochen." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." -msgstr "Die URL darf nicht leer sein" +msgstr "Die URL darf nicht leer sein." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Ungültiger Verzeichnisname. Die Nutzung von \"Shared\" ist ownCloud vorbehalten." -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} Dateien wurden gescannt" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "Fehler beim Scannen" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Name" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Größe" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Bearbeitet" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 Ordner" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} Ordner" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 Datei" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} Dateien" @@ -303,32 +278,40 @@ msgstr "Ordner" msgid "From link" msgstr "Von einem Link" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "Papierkorb" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Upload abbrechen" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Alles leer. Lade etwas hoch!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Herunterladen" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Upload zu groß" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Die Datei überschreitet die Maximalgröße für Uploads auf diesem Server." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Dateien werden gescannt, bitte warten." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Scanne" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Dateisystem-Cache wird aktualisiert ..." diff --git a/l10n/de/files_encryption.po b/l10n/de/files_encryption.po index 934dce6d114..2407e4ec911 100644 --- a/l10n/de/files_encryption.po +++ b/l10n/de/files_encryption.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:15+0000\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 12:47+0000\n" "Last-Translator: Marcel Kühlhorn <susefan93@gmx.de>\n" "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n" "MIME-Version: 1.0\n" diff --git a/l10n/de/files_trashbin.po b/l10n/de/files_trashbin.po new file mode 100644 index 00000000000..ae8505b00e4 --- /dev/null +++ b/l10n/de/files_trashbin.po @@ -0,0 +1,56 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# I Robot <owncloud-bot@tmit.eu>, 2013. +# <wachhund@wachhund.to>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "Wiederherstellung ausführen" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Name" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "gelöscht" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 Ordner" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} Ordner" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 Datei" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} Dateien" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Nichts zu löschen, der Papierkorb ist leer!" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Wiederherstellen" diff --git a/l10n/de/settings.po b/l10n/de/settings.po index c26bb84c091..25f769704b0 100644 --- a/l10n/de/settings.po +++ b/l10n/de/settings.po @@ -6,7 +6,7 @@ # <admin@s-goecker.de>, 2011, 2012. # <blobbyjj@ymail.com>, 2012. # <icewind1991@gmail.com>, 2012. -# I Robot <owncloud-bot@tmit.eu>, 2012. +# I Robot <owncloud-bot@tmit.eu>, 2012-2013. # I Robot <thomas.mueller@tmit.eu>, 2012. # Jan-Christoph Borchardt <JanCBorchardt@fsfe.org>, 2011. # Jan T <jan-temesinko@web.de>, 2012. @@ -21,12 +21,13 @@ # <thomas.mueller@tmit.eu>, 2012. # <transifex.3.mensaje@spamgourmet.com>, 2012. # Tristan <blobbyjj@ymail.com>, 2013. +# <wachhund@wachhund.to>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n" "MIME-Version: 1.0\n" @@ -93,14 +94,42 @@ msgstr "Der Benutzer konnte nicht zur Gruppe %s hinzugefügt werden" msgid "Unable to remove user from group %s" msgstr "Der Benutzer konnte nicht aus der Gruppe %s entfernt werden" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Deaktivieren" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Aktivieren" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "Fehler beim Aktualisieren der App" + +#: js/apps.js:87 +msgid "Error" +msgstr "Fehler" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Speichern..." @@ -129,6 +158,10 @@ msgstr "Weitere Anwendungen findest Du auf apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-lizenziert von <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Update durchführen" + #: templates/help.php:3 msgid "User Documentation" msgstr "Dokumentation für Benutzer" @@ -246,7 +279,7 @@ msgstr "Entwickelt von der <a href=\"http://ownCloud.org/contact\" target=\"_bla #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Loginname" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -270,7 +303,7 @@ msgstr "Andere" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Anzeigename" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -280,6 +313,14 @@ msgstr "Gruppenadministrator" msgid "Storage" msgstr "Speicher" +#: templates/users.php:97 +msgid "change display name" +msgstr "Anzeigenamen ändern" + +#: templates/users.php:101 +msgid "set new password" +msgstr "Neues Passwort setzen" + #: templates/users.php:137 msgid "Default" msgstr "Standard" diff --git a/l10n/de/user_ldap.po b/l10n/de/user_ldap.po index 95aabcd2e67..ff8dbae3048 100644 --- a/l10n/de/user_ldap.po +++ b/l10n/de/user_ldap.po @@ -4,7 +4,7 @@ # # Translators: # <blobbyjj@ymail.com>, 2012. -# I Robot <owncloud-bot@tmit.eu>, 2012. +# I Robot <owncloud-bot@tmit.eu>, 2012-2013. # I Robot <thomas.mueller@tmit.eu>, 2012. # Marcel Kühlhorn <susefan93@gmx.de>, 2013. # Maurice Preuß <>, 2012. @@ -16,9 +16,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:08+0000\n" -"Last-Translator: Marcel Kühlhorn <susefan93@gmx.de>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -26,6 +26,58 @@ msgstr "" "Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Löschen fehlgeschlagen" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "Einstellungen beibehalten?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -37,168 +89,230 @@ msgstr "<b>Warnung:</b> Die Anwendungen user_ldap und user_webdavauth sind inkom msgid "" "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not " "work. Please ask your system administrator to install it." -msgstr "<b>Warnung:</b> Da das PHP-Modul für LDAP ist nicht installiert, das Backend wird nicht funktionieren. Bitten Sie Ihren Systemadministrator das Modul zu installieren." +msgstr "<b>Warnung:</b> Da das PHP-Modul für LDAP nicht installiert ist, wird das Backend nicht funktionieren. Bitten Sie Ihren Systemadministrator das Modul zu installieren." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Host" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Du kannst das Protokoll auslassen, außer wenn Du SSL benötigst. Beginne dann mit ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Basis-DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "Ein Base DN pro Zeile" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Du kannst Basis-DN für Benutzer und Gruppen in dem \"Erweitert\"-Reiter konfigurieren" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "Benutzer-DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "Der DN des Benutzers für LDAP-Bind, z.B.: uid=agent,dc=example,dc=com. Für anonymen Zugriff lasse DN und Passwort leer." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Passwort" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Lasse die Felder von DN und Passwort für anonymen Zugang leer." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Benutzer-Login-Filter" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Bestimmt den angewendeten Filter, wenn eine Anmeldung versucht wird. %%uid ersetzt den Benutzernamen bei dem Anmeldeversuch." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "verwende %%uid Platzhalter, z. B. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Benutzer-Filter-Liste" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Definiert den Filter für die Anfrage der Benutzer." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "ohne Platzhalter, z.B.: \"objectClass=person\"" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Gruppen-Filter" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Definiert den Filter für die Anfrage der Gruppen." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "ohne Platzhalter, z.B.: \"objectClass=posixGroup\"" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Basis-Benutzerbaum" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "Ein Benutzer Base DN pro Zeile" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Basis-Gruppenbaum" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "Ein Gruppen Base DN pro Zeile" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Assoziation zwischen Gruppe und Benutzer" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Nutze TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Verwende dies nicht für SSL-Verbindungen, es wird fehlschlagen." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "LDAP-Server (Windows: Groß- und Kleinschreibung bleibt unbeachtet)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Schalte die SSL-Zertifikatsprüfung aus." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Falls die Verbindung es erfordert, muss das SSL-Zertifikat des LDAP-Server importiert werden." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Nicht empfohlen, nur zu Testzwecken." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "in Sekunden. Eine Änderung leert den Cache." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Feld für den Anzeigenamen des Benutzers" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Das LDAP-Attribut für die Generierung des Benutzernamens in ownCloud. " -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Basis-Benutzerbaum" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Ein Benutzer Base DN pro Zeile" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Feld für den Anzeigenamen der Gruppe" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Das LDAP-Attribut für die Generierung des Gruppennamens in ownCloud. " -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Basis-Gruppenbaum" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Ein Gruppen Base DN pro Zeile" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Assoziation zwischen Gruppe und Benutzer" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "in Bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "in Sekunden. Eine Änderung leert den Cache." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Ohne Eingabe wird der Benutzername (Standard) verwendet. Anderenfall trage ein LDAP/AD-Attribut ein." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Hilfe" diff --git a/l10n/de_DE/core.po b/l10n/de_DE/core.po index 0d1dcf34486..9ec9f4bed29 100644 --- a/l10n/de_DE/core.po +++ b/l10n/de_DE/core.po @@ -24,8 +24,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n" "MIME-Version: 1.0\n" @@ -172,59 +172,59 @@ msgstr "November" msgid "December" msgstr "Dezember" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Einstellungen" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "Gerade eben" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "Vor 1 Minute" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "Vor {minutes} Minuten" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "Vor einer Stunde" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "Vor {hours} Stunden" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "Heute" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "Gestern" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "Vor {days} Tag(en)" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "Letzten Monat" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "Vor {months} Monaten" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "Vor Monaten" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "Letztes Jahr" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "Vor Jahren" @@ -269,11 +269,11 @@ msgstr "Die benötigte Datei {file} ist nicht installiert." #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Freigeben" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Freigegeben" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -557,7 +557,7 @@ msgstr "Installation abschließen" msgid "web services under your control" msgstr "Web-Services unter Ihrer Kontrolle" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Abmelden" diff --git a/l10n/de_DE/files.po b/l10n/de_DE/files.po index d81df74a94a..474d7e5ab28 100644 --- a/l10n/de_DE/files.po +++ b/l10n/de_DE/files.po @@ -20,6 +20,7 @@ # <nelsonfritsch@gmail.com>, 2012. # <niko@nik-o-mat.de>, 2012. # Phi Lieb <>, 2012. +# Phillip Schichtel <quick_wango@code-infection.de>, 2013. # <Steve_Reichert@gmx.de>, 2013. # <thomas.mueller@tmit.eu>, 2012. # Thomas Müller <>, 2012. @@ -28,9 +29,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-29 00:04+0100\n" -"PO-Revision-Date: 2013-01-28 21:38+0000\n" -"Last-Translator: a.tangemann <a.tangemann@web.de>\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 19:21+0000\n" +"Last-Translator: quick_wango <quick_wango@code-infection.de>\n" "Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -38,20 +39,6 @@ msgstr "" "Language: de_DE\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Konnte %s nicht verschieben - Datei mit diesem Namen existiert bereits" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Konnte %s nicht verschieben" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Konnte Datei nicht umbenennen" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Keine Datei hochgeladen. Unbekannter Fehler" @@ -87,11 +74,11 @@ msgstr "Der temporäre Ordner fehlt." msgid "Failed to write to disk" msgstr "Fehler beim Schreiben auf die Festplatte" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "Nicht genug Speicher vorhanden." +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Nicht genügend Speicherplatz verfügbar" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Ungültiges Verzeichnis." @@ -99,15 +86,15 @@ msgstr "Ungültiges Verzeichnis." msgid "Files" msgstr "Dateien" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Nicht mehr freigeben" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Löschen" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Umbenennen" @@ -131,7 +118,7 @@ msgstr "abbrechen" msgid "replaced {new_name}" msgstr "{new_name} wurde ersetzt" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "rückgängig machen" @@ -139,13 +126,9 @@ msgstr "rückgängig machen" msgid "replaced {new_name} with {old_name}" msgstr "{old_name} wurde ersetzt durch {new_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "Freigabe für {files} beendet" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "{files} gelöscht" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "Führe das Löschen aus" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -169,86 +152,78 @@ msgstr "Ihr Speicher ist voll. Daher können keine Dateien mehr aktualisiert ode msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "Ihr Speicher ist fast voll ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Ihr Download wird vorbereitet. Dies kann bei größeren Dateien einen Moment dauern." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Ihre Datei kann nicht hochgeladen werden, da sie entweder ein Verzeichnis oder 0 Bytes groß ist." -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Fehler beim Upload" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Schließen" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Ausstehend" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 Datei wird hochgeladen" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} Dateien wurden hochgeladen" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Upload abgebrochen." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Der Dateiupload läuft. Wenn Sie die Seite jetzt verlassen, wird der Upload abgebrochen." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "Die URL darf nicht leer sein." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Ungültiger Verzeichnisname. Die Nutzung von \"Shared\" ist ownCloud vorbehalten" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} Dateien wurden gescannt" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "Fehler beim Scannen" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Name" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Größe" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Bearbeitet" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 Ordner" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} Ordner" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 Datei" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} Dateien" @@ -304,32 +279,40 @@ msgstr "Ordner" msgid "From link" msgstr "Von einem Link" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "Abfall" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Upload abbrechen" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Alles leer. Bitte laden Sie etwas hoch!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Herunterladen" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Der Upload ist zu groß" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Die Datei überschreitet die Maximalgröße für Uploads auf diesem Server." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Dateien werden gescannt, bitte warten." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Scanne" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Aktualisiere den Dateisystem-Cache" diff --git a/l10n/de_DE/files_encryption.po b/l10n/de_DE/files_encryption.po index 7521754abfd..daeb5466e57 100644 --- a/l10n/de_DE/files_encryption.po +++ b/l10n/de_DE/files_encryption.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:14+0000\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 12:47+0000\n" "Last-Translator: Marcel Kühlhorn <susefan93@gmx.de>\n" "Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n" "MIME-Version: 1.0\n" diff --git a/l10n/de_DE/files_trashbin.po b/l10n/de_DE/files_trashbin.po new file mode 100644 index 00000000000..f08dcbd0043 --- /dev/null +++ b/l10n/de_DE/files_trashbin.po @@ -0,0 +1,56 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# I Robot <owncloud-bot@tmit.eu>, 2013. +# Phillip Schichtel <quick_wango@code-infection.de>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de_DE\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "Führe die Wiederherstellung aus" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Name" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "Gelöscht" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 Ordner" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} Ordner" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 Datei" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} Dateien" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Nichts zu löschen, Ihr Papierkorb ist leer!" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Wiederherstellen" diff --git a/l10n/de_DE/settings.po b/l10n/de_DE/settings.po index 0c99f265629..ffbcc368ff6 100644 --- a/l10n/de_DE/settings.po +++ b/l10n/de_DE/settings.po @@ -6,17 +6,20 @@ # <admin@s-goecker.de>, 2011-2012. # <blobbyjj@ymail.com>, 2012. # <icewind1991@gmail.com>, 2012. -# I Robot <owncloud-bot@tmit.eu>, 2012. +# I Robot <owncloud-bot@tmit.eu>, 2012-2013. # I Robot <thomas.mueller@tmit.eu>, 2012. # Jan-Christoph Borchardt <JanCBorchardt@fsfe.org>, 2011. # Jan T <jan-temesinko@web.de>, 2012. +# Lukas Reschke <lukas@statuscode.ch>, 2013. # <lukas@statuscode.ch>, 2012. # <mail@felixmoeller.de>, 2012. # Marcel Kühlhorn <susefan93@gmx.de>, 2012. # <nelsonfritsch@gmail.com>, 2012. # <niko@nik-o-mat.de>, 2012. # Phi Lieb <>, 2012. +# Phillip Schichtel <quick_wango@code-infection.de>, 2013. # <seeed@freenet.de>, 2012. +# <stefan.niedermann@googlemail.com>, 2013. # <thomas.mueller@tmit.eu>, 2012. # <transifex-2.7.mensaje@spamgourmet.com>, 2012. # <transifex.3.mensaje@spamgourmet.com>, 2012. @@ -25,9 +28,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 00:10+0000\n" +"Last-Translator: Lukas Reschke <lukas@statuscode.ch>\n" "Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -93,14 +96,42 @@ msgstr "Der Benutzer konnte nicht zur Gruppe %s hinzugefügt werden" msgid "Unable to remove user from group %s" msgstr "Der Benutzer konnte nicht aus der Gruppe %s entfernt werden" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "Die App konnte nicht geupdated werden." + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "Update zu {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Deaktivieren" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Aktivieren" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "Bitte warten...." + +#: js/apps.js:84 +msgid "Updating...." +msgstr "Update..." + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "Es ist ein Fehler während des Updates aufgetreten" + +#: js/apps.js:87 +msgid "Error" +msgstr "Fehler" + +#: js/apps.js:90 +msgid "Updated" +msgstr "Geupdated" + #: js/personal.js:69 msgid "Saving..." msgstr "Speichern..." @@ -129,6 +160,10 @@ msgstr "Weitere Anwendungen finden Sie auf apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-lizenziert von <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Update durchführen" + #: templates/help.php:3 msgid "User Documentation" msgstr "Dokumentation für Benutzer" @@ -246,7 +281,7 @@ msgstr "Entwickelt von der <a href=\"http://ownCloud.org/contact\" target=\"_bla #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Loginname" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -270,7 +305,7 @@ msgstr "Andere" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Anzeigename" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -280,6 +315,14 @@ msgstr "Gruppenadministrator" msgid "Storage" msgstr "Speicher" +#: templates/users.php:97 +msgid "change display name" +msgstr "Anzeigenamen ändern" + +#: templates/users.php:101 +msgid "set new password" +msgstr "Neues Passwort setzen" + #: templates/users.php:137 msgid "Default" msgstr "Standard" diff --git a/l10n/de_DE/user_ldap.po b/l10n/de_DE/user_ldap.po index e1d07152a62..663cfdb1af7 100644 --- a/l10n/de_DE/user_ldap.po +++ b/l10n/de_DE/user_ldap.po @@ -10,15 +10,17 @@ # Maurice Preuß <>, 2012. # <niko@nik-o-mat.de>, 2012. # Phi Lieb <>, 2012. +# <stefan.niedermann@googlemail.com>, 2013. +# Susi <>, 2013. # <transifex-2.7.mensaje@spamgourmet.com>, 2012. # <transifex.3.mensaje@spamgourmet.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:08+0000\n" -"Last-Translator: Marcel Kühlhorn <susefan93@gmx.de>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 13:50+0000\n" +"Last-Translator: Susi <>\n" "Language-Team: German (Germany) (http://www.transifex.com/projects/p/owncloud/language/de_DE/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -26,6 +28,58 @@ msgstr "" "Language: de_DE\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "Das Löschen der Server-Konfiguration schlug fehl" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "Die Konfiguration ist valide und eine Verbindung konnte hergestellt werden!" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "Die Konfiguration ist valide, aber das Herstellen einer Verbindung schlug fehl. Bitte überprüfen Sie die Server-Einstellungen und Zertifikate." + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "Die Konfiguration ist nicht valide. Weitere Details können Sie im ownCloud-Log nachlesen." + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Löschen fehlgeschlagen" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "Sollen die Einstellungen der letzten Server-Konfiguration übernommen werden?" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "Einstellungen behalten?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "Das Hinzufügen der Server-Konfiguration schlug fehl" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "Verbindungs-Test erfolgreich" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "Verbindungs-Test fehlgeschlagen" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "Möchten Sie wirklich die Server-Konfiguration löschen?" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "Löschung bestätigen" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -40,165 +94,227 @@ msgid "" msgstr "<b>Warnung:</b> Da das PHP-Modul für LDAP ist nicht installiert, das Backend wird nicht funktionieren. Bitten Sie Ihren Systemadministrator das Modul zu installieren." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "Server-Konfiguration" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "Server-Konfiguration hinzufügen" + +#: templates/settings.php:21 msgid "Host" msgstr "Host" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Sie können das Protokoll auslassen, außer wenn Sie SSL benötigen. Beginnen Sie dann mit ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Basis-DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "Ein Base DN pro Zeile" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Sie können Basis-DN für Benutzer und Gruppen in dem \"Erweitert\"-Reiter konfigurieren" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "Benutzer-DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "Der DN des Benutzers für LDAP-Bind, z.B.: uid=agent,dc=example,dc=com. Für anonymen Zugriff lassen Sie DN und Passwort leer." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Passwort" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Lassen Sie die Felder von DN und Passwort für anonymen Zugang leer." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Benutzer-Login-Filter" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Bestimmt den angewendeten Filter, wenn eine Anmeldung versucht wird. %%uid ersetzt den Benutzernamen bei dem Anmeldeversuch." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "verwenden Sie %%uid Platzhalter, z. B. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Benutzer-Filter-Liste" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Definiert den Filter für die Anfrage der Benutzer." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "ohne Platzhalter, z.B.: \"objectClass=person\"" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Gruppen-Filter" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Definiert den Filter für die Anfrage der Gruppen." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "ohne Platzhalter, z.B.: \"objectClass=posixGroup\"" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "Verbindungs-Einstellungen" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "Konfiguration aktiv" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "Wenn nicht angehakt, wird diese Konfiguration übersprungen." + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Basis-Benutzerbaum" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "Back-Up (Replikation) Host" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "Ein Benutzer Base DN pro Zeile" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "Optionaler Backup Host. Es muss ein Replikat des eigentlichen LDAP/AD Servers sein." -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Basis-Gruppenbaum" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "Back-Up (Replikation) Port" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "Ein Gruppen Base DN pro Zeile" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "Hauptserver deaktivieren" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Assoziation zwischen Gruppe und Benutzer" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "Wenn eingeschaltet wird sich ownCloud nur mit dem Replilat-Server verbinden." -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Nutze TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Verwenden Sie dies nicht für SSL-Verbindungen, es wird fehlschlagen." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "LDAP-Server (Windows: Groß- und Kleinschreibung bleibt unbeachtet)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Schalten Sie die SSL-Zertifikatsprüfung aus." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Falls die Verbindung es erfordert, muss das SSL-Zertifikat des LDAP-Server importiert werden." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Nicht empfohlen, nur zu Testzwecken." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "in Sekunden. Eine Änderung leert den Cache." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "Verzeichnis-Einstellungen" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Feld für den Anzeigenamen des Benutzers" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Das LDAP-Attribut für die Generierung des Benutzernamens in ownCloud. " -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Basis-Benutzerbaum" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Ein Benutzer Base DN pro Zeile" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "Benutzer-Suche Eigenschaften" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "Optional; Ein Attribut pro Zeile" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Feld für den Anzeigenamen der Gruppe" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Das LDAP-Attribut für die Generierung des Gruppennamens in ownCloud. " -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Basis-Gruppenbaum" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Ein Gruppen Base DN pro Zeile" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "Gruppen-Suche Eigenschaften" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Assoziation zwischen Gruppe und Benutzer" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "besondere Eigenschaften" + +#: templates/settings.php:56 msgid "in bytes" msgstr "in Bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "in Sekunden. Eine Änderung leert den Cache." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Ohne Eingabe wird der Benutzername (Standard) verwendet. Anderenfall trage ein LDAP/AD-Attribut ein." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Hilfe" diff --git a/l10n/el/core.po b/l10n/el/core.po index 6ad17c2deb6..1f2543369b0 100644 --- a/l10n/el/core.po +++ b/l10n/el/core.po @@ -15,8 +15,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Greek (http://www.transifex.com/projects/p/owncloud/language/el/)\n" "MIME-Version: 1.0\n" @@ -163,59 +163,59 @@ msgstr "ÎοÎμβÏιος" msgid "December" msgstr "ΔεκÎμβÏιος" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Ρυθμίσεις" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "δευτεÏόλεπτα Ï€Ïιν" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 λεπτό Ï€Ïιν" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} λεπτά Ï€Ïιν" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 ÏŽÏα Ï€Ïιν" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} ÏŽÏες Ï€Ïιν" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "σήμεÏα" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "χτες" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} ημÎÏες Ï€Ïιν" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "τελευταίο μήνα" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} μήνες Ï€Ïιν" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "μήνες Ï€Ïιν" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "τελευταίο χÏόνο" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "χÏόνια Ï€Ïιν" @@ -260,7 +260,7 @@ msgstr "Το απαιτοÏμενο αÏχείο {file} δεν εγκαταστΠ#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "ΔιαμοιÏασμός" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -548,7 +548,7 @@ msgstr "ΟλοκλήÏωση εγκατάστασης" msgid "web services under your control" msgstr "ΥπηÏεσίες web υπό τον Îλεγχό σας" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "ΑποσÏνδεση" diff --git a/l10n/el/files.po b/l10n/el/files.po index d756e7d0b9e..233012d37cb 100644 --- a/l10n/el/files.po +++ b/l10n/el/files.po @@ -15,9 +15,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-29 00:04+0100\n" -"PO-Revision-Date: 2013-01-28 02:25+0000\n" -"Last-Translator: Efstathios Iosifidis <iefstathios@gmail.com>\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Greek (http://www.transifex.com/projects/p/owncloud/language/el/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -25,20 +25,6 @@ msgstr "" "Language: el\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Αδυναμία μετακίνησης του %s - υπάÏχει ήδη αÏχείο με αυτό το όνομα" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Αδυναμία μετακίνησης του %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Αδυναμία μετονομασίας αÏχείου" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Δεν ανÎβηκε κάποιο αÏχείο. Άγνωστο σφάλμα" @@ -74,11 +60,11 @@ msgstr "Λείπει ο Ï€ÏοσωÏινός φάκελος" msgid "Failed to write to disk" msgstr "Αποτυχία εγγÏαφής στο δίσκο" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "Μη επαÏκής διαθÎσιμος αποθηκευτικός χώÏος" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Δεν υπάÏχει αÏκετός διαθÎσιμος χώÏος" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Μη ÎγκυÏος φάκελος." @@ -86,15 +72,15 @@ msgstr "Μη ÎγκυÏος φάκελος." msgid "Files" msgstr "ΑÏχεία" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Διακοπή κοινής χÏήσης" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "ΔιαγÏαφή" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Μετονομασία" @@ -118,7 +104,7 @@ msgstr "ακÏÏωση" msgid "replaced {new_name}" msgstr "{new_name} αντικαταστάθηκε" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "αναίÏεση" @@ -126,13 +112,9 @@ msgstr "αναίÏεση" msgid "replaced {new_name} with {old_name}" msgstr "αντικαταστάθηκε το {new_name} με {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "μη διαμοιÏασμÎνα {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "διαγÏαμμÎνα {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -156,86 +138,78 @@ msgstr "Ο αποθηκευτικός σας χώÏος είναι Î³ÎµÎ¼Î¬Ï„Î¿Ï msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "Ο αποθηκευτικός χώÏος είναι σχεδόν γεμάτος ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Η λήψη Ï€Ïοετοιμάζεται. Αυτό μποÏεί να πάÏει ÏŽÏα εάν τα αÏχεία Îχουν μεγάλο μÎγεθος." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Αδυναμία στην αποστολή του αÏχείου σας Î±Ï†Î¿Ï ÎµÎ¯Î½Î±Î¹ φάκελος ή Îχει 0 bytes" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Σφάλμα Αποστολής" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Κλείσιμο" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "ΕκκÏεμεί" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 αÏχείο ανεβαίνει" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} αÏχεία ανεβαίνουν" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Η αποστολή ακυÏώθηκε." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Η αποστολή του αÏχείου βÏίσκεται σε εξÎλιξη. Το κλείσιμο της σελίδας θα ακυÏώσει την αποστολή." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "Η URL δεν Ï€ÏÎπει να είναι κενή." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Μη ÎγκυÏο όνομα φακÎλου. Η χÏήση του 'ΚοινόχÏηστος' χÏησιμοποιείται από ο Owncloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} αÏχεία ανιχνεÏτηκαν" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "σφάλμα κατά την ανίχνευση" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Όνομα" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "ΜÎγεθος" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "ΤÏοποποιήθηκε" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 φάκελος" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} φάκελοι" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 αÏχείο" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} αÏχεία" @@ -291,32 +265,40 @@ msgstr "Φάκελος" msgid "From link" msgstr "Από σÏνδεσμο" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "ΑκÏÏωση αποστολής" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Δεν υπάÏχει τίποτα εδώ. ΑνÎβασε κάτι!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Λήψη" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Î Î¿Î»Ï Î¼ÎµÎ³Î¬Î»Î¿ αÏχείο Ï€Ïος αποστολή" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Τα αÏχεία που Ï€Ïοσπαθείτε να ανεβάσετε υπεÏβαίνουν το μÎγιστο μÎγεθος αποστολής αÏχείων σε αυτόν τον διακομιστή." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Τα αÏχεία σαÏώνονται, παÏακαλώ πεÏιμÎνετε" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "ΤÏÎχουσα αναζήτηση " + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/el/files_trashbin.po b/l10n/el/files_trashbin.po new file mode 100644 index 00000000000..e29ec4d6caf --- /dev/null +++ b/l10n/el/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Greek (http://www.transifex.com/projects/p/owncloud/language/el/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: el\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Όνομα" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 φάκελος" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} φάκελοι" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 αÏχείο" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} αÏχεία" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "ΕπαναφοÏά" diff --git a/l10n/el/settings.po b/l10n/el/settings.po index 4e99eae3d5a..ffd6028e9c1 100644 --- a/l10n/el/settings.po +++ b/l10n/el/settings.po @@ -19,8 +19,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Greek (http://www.transifex.com/projects/p/owncloud/language/el/)\n" "MIME-Version: 1.0\n" @@ -87,14 +87,42 @@ msgstr "Αδυναμία Ï€Ïοσθήκη χÏήστη στην ομάδα %s" msgid "Unable to remove user from group %s" msgstr "Αδυναμία αφαίÏεσης χÏήστη από την ομάδα %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "ΑπενεÏγοποίηση" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "ΕνεÏγοποίηση" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Σφάλμα" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Αποθήκευση..." @@ -123,6 +151,10 @@ msgstr "Δείτε την σελίδα εφαÏμογών στο apps.owncloud.c msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-άδεια από <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "ΕνημÎÏωση" + #: templates/help.php:3 msgid "User Documentation" msgstr "ΤεκμηÏίωση ΧÏήστη" @@ -274,6 +306,14 @@ msgstr "Ομάδα ΔιαχειÏιστών" msgid "Storage" msgstr "Αποθήκευση" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "Î ÏοκαθοÏισμÎνο" diff --git a/l10n/el/user_ldap.po b/l10n/el/user_ldap.po index 9edcb771d61..0bc933973ea 100644 --- a/l10n/el/user_ldap.po +++ b/l10n/el/user_ldap.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Greek (http://www.transifex.com/projects/p/owncloud/language/el/)\n" "MIME-Version: 1.0\n" @@ -22,6 +22,58 @@ msgstr "" "Language: el\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Η διαγÏαφή απÎτυχε" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -36,165 +88,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Διακομιστής" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "ΜποÏείτε να παÏαλείψετε το Ï€Ïωτόκολλο, εκτός αν απαιτείται SSL. Σε αυτή την πεÏίπτωση ξεκινήστε με ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Base DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "ΜποÏείτε να καθοÏίσετε το Base DN για χÏήστες και ομάδες από την καÏÏ„Îλα Î ÏοηγμÎνες Ïυθμίσεις" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "User DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "Το DN του χÏήστη πελάτη με το οποίο θα Ï€ÏÎπει να γίνει η σÏνδεση, Ï€.χ. uid=agent,dc=example,dc=com. Για χÏήση χωÏίς πιστοποίηση, αφήστε το DN και τον Κωδικό κενά." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Συνθηματικό" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Για ανώνυμη Ï€Ïόσβαση, αφήστε κενά τα πεδία DN και Pasword." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "User Login Filter" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "ΚαθοÏίζει το φίλτÏο που θα ισχÏει κατά την Ï€Ïοσπάθεια σÏνδεσης χÏήστη. %%uid αντικαθιστά το όνομα χÏήστη κατά τη σÏνδεση. " -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "χÏησιμοποιήστε τη μεταβλητή %%uid, Ï€.χ. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "User List Filter" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "ΚαθοÏίζει το φίλτÏο που θα ισχÏει κατά την ανάκτηση επαφών." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "χωÏίς κάποια μεταβλητή, Ï€.χ. \"objectClass=άτομο\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Group Filter" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "ΚαθοÏίζει το φίλτÏο που θα ισχÏει κατά την ανάκτηση ομάδων." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "χωÏίς κάποια μεταβλητή, Ï€.χ. \"objectClass=ΟμάδαPosix\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "ΘÏÏα" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "ΧÏήση TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Μην χÏησιμοποιείτε για συνδÎσεις SSL, θα αποτÏχει." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "LDAP server (Windows) με διάκÏιση πεζών-ΚΕΦΑΛΑΙΩÎ" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "ΑπενεÏγοποίηση επικÏÏωσης Ï€Î¹ÏƒÏ„Î¿Ï€Î¿Î¹Î·Ï„Î¹ÎºÎ¿Ï SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Εάν η σÏνδεση δουλεÏει μόνο με αυτή την επιλογή, εισάγετε το LDAP SSL πιστοποιητικό του διακομιστή στον ownCloud server σας." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Δεν Ï€Ïοτείνεται, χÏήση μόνο για δοκιμÎÏ‚." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "σε δευτεÏόλεπτα. Μια αλλαγή αδειάζει την μνήμη cache." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Πεδίο Ονόματος ΧÏήστη" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Η ιδιότητα LDAP που θα χÏησιμοποιείται για τη δημιουÏγία του ονόματος χÏήστη του ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Base User Tree" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Group Display Name Field" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Η ιδιότητα LDAP που θα χÏησιμοποιείται για τη δημιουÏγία του ονόματος ομάδας του ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Base Group Tree" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Group-Member association" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "σε bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "σε δευτεÏόλεπτα. Μια αλλαγή αδειάζει την μνήμη cache." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Αφήστε το κενό για το όνομα χÏήστη (Ï€Ïοεπιλογή). ΔιαφοÏετικά, συμπληÏώστε μία ιδιότητα LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Βοήθεια" diff --git a/l10n/eo/core.po b/l10n/eo/core.po index 01b8ff631db..f9f3c0cd8f2 100644 --- a/l10n/eo/core.po +++ b/l10n/eo/core.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Esperanto (http://www.transifex.com/projects/p/owncloud/language/eo/)\n" "MIME-Version: 1.0\n" @@ -158,59 +158,59 @@ msgstr "Novembro" msgid "December" msgstr "Decembro" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Agordo" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "sekundoj antaÅe" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "antaÅ 1 minuto" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "antaÅ {minutes} minutoj" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "antaÅ 1 horo" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "antaÅ {hours} horoj" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "hodiaÅ" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "hieraÅ" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "antaÅ {days} tagoj" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "lastamonate" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "antaÅ {months} monatoj" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "monatoj antaÅe" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "lastajare" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "jaroj antaÅe" @@ -255,7 +255,7 @@ msgstr "La necesa dosiero {file} ne instaliÄis!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Kunhavigi" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -543,7 +543,7 @@ msgstr "Fini la instalon" msgid "web services under your control" msgstr "TTT-servoj sub via kontrolo" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Elsaluti" diff --git a/l10n/eo/files.po b/l10n/eo/files.po index 024dea90b07..d4406185134 100644 --- a/l10n/eo/files.po +++ b/l10n/eo/files.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Esperanto (http://www.transifex.com/projects/p/owncloud/language/eo/)\n" "MIME-Version: 1.0\n" @@ -20,20 +20,6 @@ msgstr "" "Language: eo\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Ne eblis movi %s: dosiero kun ĉi tiu nomo jam ekzistas" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Ne eblis movi %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Ne eblis alinomigi dosieron" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Neniu dosiero alÅutiÄis. Nekonata eraro." @@ -69,11 +55,11 @@ msgstr "Mankas tempa dosierujo" msgid "Failed to write to disk" msgstr "Malsukcesis skribo al disko" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Ne haveblas sufiĉa spaco" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Nevalida dosierujo." @@ -81,15 +67,15 @@ msgstr "Nevalida dosierujo." msgid "Files" msgstr "Dosieroj" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Malkunhavigi" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Forigi" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Alinomigi" @@ -113,7 +99,7 @@ msgstr "nuligi" msgid "replaced {new_name}" msgstr "anstataÅiÄis {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "malfari" @@ -121,13 +107,9 @@ msgstr "malfari" msgid "replaced {new_name} with {old_name}" msgstr "anstataÅiÄis {new_name} per {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "malkunhaviÄis {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "foriÄis {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -151,86 +133,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Via elÅuto pretiÄatas. Ĉi tio povas daÅri iom da tempo se la dosieroj grandas." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Ne eblis alÅuti vian dosieron ĉar Äi estas dosierujo aÅ havas 0 duumokojn" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "AlÅuta eraro" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Fermi" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Traktotaj" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 dosiero estas alÅutata" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} dosieroj alÅutatas" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "La alÅuto nuliÄis." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "DosieralÅuto plenumiÄas. Lasi la paÄon nun nuligus la alÅuton." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL ne povas esti malplena." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Nevalida dosierujnomo. Uzo de “Shared†rezervatas de Owncloud." -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} dosieroj skaniÄis" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "eraro dum skano" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nomo" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Grando" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Modifita" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 dosierujo" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} dosierujoj" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 dosiero" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} dosierujoj" @@ -286,32 +260,40 @@ msgstr "Dosierujo" msgid "From link" msgstr "El ligilo" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Nuligi alÅuton" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Nenio estas ĉi tie. AlÅutu ion!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "ElÅuti" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "ElÅuto tro larÄa" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "La dosieroj, kiujn vi provas alÅuti, transpasas la maksimuman grandon por dosieralÅutoj en ĉi tiu servilo." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Dosieroj estas skanataj, bonvolu atendi." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Nuna skano" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/eo/files_trashbin.po b/l10n/eo/files_trashbin.po new file mode 100644 index 00000000000..c1491a33446 --- /dev/null +++ b/l10n/eo/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Esperanto (http://www.transifex.com/projects/p/owncloud/language/eo/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: eo\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nomo" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 dosierujo" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} dosierujoj" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 dosiero" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} dosierujoj" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "RestaÅri" diff --git a/l10n/eo/settings.po b/l10n/eo/settings.po index 4c842f018fb..f422c123005 100644 --- a/l10n/eo/settings.po +++ b/l10n/eo/settings.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Esperanto (http://www.transifex.com/projects/p/owncloud/language/eo/)\n" "MIME-Version: 1.0\n" @@ -78,14 +78,42 @@ msgstr "Ne eblis aldoni la uzanton al la grupo %s" msgid "Unable to remove user from group %s" msgstr "Ne eblis forigi la uzantan el la grupo %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Malkapabligi" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Kapabligi" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Eraro" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Konservante..." @@ -114,6 +142,10 @@ msgstr "Vidu la paÄon pri aplikaĵoj ĉe apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"</span>-permesilhavigita de <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Äœisdatigi" + #: templates/help.php:3 msgid "User Documentation" msgstr "Dokumentaro por uzantoj" @@ -265,6 +297,14 @@ msgstr "Grupadministranto" msgid "Storage" msgstr "Konservejo" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "DefaÅlta" diff --git a/l10n/eo/user_ldap.po b/l10n/eo/user_ldap.po index 39f84ca0391..9bdab74d0f3 100644 --- a/l10n/eo/user_ldap.po +++ b/l10n/eo/user_ldap.po @@ -9,9 +9,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-21 00:04+0100\n" -"PO-Revision-Date: 2013-01-20 01:34+0000\n" -"Last-Translator: Mariano <mstreet@kde.org.ar>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Esperanto (http://www.transifex.com/projects/p/owncloud/language/eo/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,6 +19,58 @@ msgstr "" "Language: eo\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Forigo malsukcesis" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -33,165 +85,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Gastigo" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Vi povas neglekti la protokolon, escepte se vi bezonas SSL-on. Tiuokaze, komencu per ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Bazo-DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "Uzanto-DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Pasvorto" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Por sennoman aliron, lasu DN-on kaj Pasvorton malplenaj." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filtrilo de uzantensaluto" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Äœi difinas la filtrilon aplikotan, kiam oni provas ensaluti. %%uid anstataÅigas la uzantonomon en la ensaluta ago." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "uzu la referencilon %%uid, ekz.: \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Filtrilo de uzantolisto" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Äœi difinas la filtrilon aplikotan, kiam veniÄas uzantoj." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "sen ajna referencilo, ekz.: \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Filtrilo de grupo" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Äœi difinas la filtrilon aplikotan, kiam veniÄas grupoj." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "sen ajna referencilo, ekz.: \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Pordo" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Baza uzantarbo" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Baza gruparbo" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Asocio de grupo kaj membro" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Uzi TLS-on" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Ne uzu Äin por SSL-konektoj, Äi malsukcesos." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "LDAP-servilo blinda je litergrandeco (Vindozo)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Malkapabligi validkontrolon de SSL-atestiloj." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Se la konekto nur funkcias kun ĉi tiu malnepro, enportu la SSL-atestilo de la LDAP-servilo en via ownCloud-servilo." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Ne rekomendata, uzu Äin nur por testoj." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "sekunde. Ajna ÅanÄo malplenigas la kaÅmemoron." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Kampo de vidignomo de uzanto" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "La atributo de LDAP uzota por generi la ownCloud-an nomon de la uzanto." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Baza uzantarbo" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Kampo de vidignomo de grupo" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "La atributo de LDAP uzota por generi la ownCloud-an nomon de la grupo." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Baza gruparbo" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Asocio de grupo kaj membro" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "duumoke" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "sekunde. Ajna ÅanÄo malplenigas la kaÅmemoron." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Lasu malplena por uzantonomo (defaÅlto). Alie, specifu LDAP/AD-atributon." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Helpo" diff --git a/l10n/es/core.po b/l10n/es/core.po index 03aade72afd..ecd1cbf9176 100644 --- a/l10n/es/core.po +++ b/l10n/es/core.po @@ -3,6 +3,7 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# Felix Liberio <felix.liberio@gmail.com>, 2013. # <javierkaiser@gmail.com>, 2012. # Javier Llorente <javier@opensuse.org>, 2012. # <juanma@kde.org.ar>, 2011-2013. @@ -18,9 +19,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" +"Last-Translator: felix.liberio <felix.liberio@gmail.com>\n" "Language-Team: Spanish (http://www.transifex.com/projects/p/owncloud/language/es/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -166,59 +167,59 @@ msgstr "Noviembre" msgid "December" msgstr "Diciembre" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Ajustes" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "hace segundos" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "hace 1 minuto" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "hace {minutes} minutos" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "Hace 1 hora" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "Hace {hours} horas" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "hoy" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "ayer" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "hace {days} dÃas" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "mes pasado" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "Hace {months} meses" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "hace meses" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "año pasado" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "hace años" @@ -263,11 +264,11 @@ msgstr "El fichero {file} requerido, no está instalado." #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Compartir" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Compartido" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -390,11 +391,11 @@ msgid "" "The update was unsuccessful. Please report this issue to the <a " "href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud " "community</a>." -msgstr "" +msgstr "La actualización ha fracasado. Por favor, informe este problema a la <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">Comunidad de ownCloud</ a>." #: js/update.js:18 msgid "The update was successful. Redirecting you to ownCloud now." -msgstr "" +msgstr "La actualización se ha realizado correctamente. Redireccionando a ownCloud ahora." #: lostpassword/controller.php:47 msgid "ownCloud password reset" @@ -551,7 +552,7 @@ msgstr "Completar la instalación" msgid "web services under your control" msgstr "servicios web bajo tu control" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Salir" diff --git a/l10n/es/files.po b/l10n/es/files.po index db49dbe66b4..b2bb1203414 100644 --- a/l10n/es/files.po +++ b/l10n/es/files.po @@ -16,8 +16,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Spanish (http://www.transifex.com/projects/p/owncloud/language/es/)\n" "MIME-Version: 1.0\n" @@ -26,20 +26,6 @@ msgstr "" "Language: es\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "No se puede mover %s - Ya existe un archivo con ese nombre" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "No se puede mover %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "No se puede renombrar el archivo" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Fallo no se subió el fichero" @@ -75,11 +61,11 @@ msgstr "Falta un directorio temporal" msgid "Failed to write to disk" msgstr "La escritura en disco ha fallado" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "No hay suficiente espacio disponible" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Directorio invalido." @@ -87,15 +73,15 @@ msgstr "Directorio invalido." msgid "Files" msgstr "Archivos" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Dejar de compartir" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Eliminar" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Renombrar" @@ -119,7 +105,7 @@ msgstr "cancelar" msgid "replaced {new_name}" msgstr "reemplazado {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "deshacer" @@ -127,13 +113,9 @@ msgstr "deshacer" msgid "replaced {new_name} with {old_name}" msgstr "reemplazado {new_name} con {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "{files} descompartidos" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "{files} eliminados" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -157,86 +139,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Tu descarga esta siendo preparada. Esto puede tardar algun tiempo si los archivos son muy grandes." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "No ha sido posible subir tu archivo porque es un directorio o tiene 0 bytes" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Error al subir el archivo" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "cerrrar" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Pendiente" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "subiendo 1 archivo" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "Subiendo {count} archivos" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Subida cancelada." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "La subida del archivo está en proceso. Salir de la página ahora cancelará la subida." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "La URL no puede estar vacÃa." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Nombre de carpeta invalido. El uso de \"Shared\" esta reservado para Owncloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} archivos escaneados" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "error escaneando" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nombre" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Tamaño" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Modificado" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 carpeta" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} carpetas" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 archivo" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} archivos" @@ -292,32 +266,40 @@ msgstr "Carpeta" msgid "From link" msgstr "Desde el enlace" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Cancelar subida" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Aquà no hay nada. ¡Sube algo!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Descargar" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "El archivo es demasiado grande" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Los archivos que estás intentando subir sobrepasan el tamaño máximo permitido por este servidor." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Se están escaneando los archivos, por favor espere." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Ahora escaneando" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/es/files_encryption.po b/l10n/es/files_encryption.po index 14b030edb0e..fa6fcc6a7b7 100644 --- a/l10n/es/files_encryption.po +++ b/l10n/es/files_encryption.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 22:40+0000\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 14:50+0000\n" "Last-Translator: felix.liberio <felix.liberio@gmail.com>\n" "Language-Team: Spanish (http://www.transifex.com/projects/p/owncloud/language/es/)\n" "MIME-Version: 1.0\n" @@ -28,11 +28,11 @@ msgstr "Por favor, cambie su cliente de ownCloud y cambie su clave de cifrado pa #: js/settings-personal.js:17 msgid "switched to client side encryption" -msgstr "Cambiar a encriptación en lado cliente" +msgstr "Cambiar a cifrado del lado del cliente" #: js/settings-personal.js:21 msgid "Change encryption password to login password" -msgstr "Cambie la clave de cifrado para ingresar su contraseña" +msgstr "Cambie la clave de cifrado para su contraseña de inicio de sesión" #: js/settings-personal.js:25 msgid "Please check your passwords and try again." @@ -40,37 +40,37 @@ msgstr "Por favor revise su contraseña e intentelo de nuevo." #: js/settings-personal.js:25 msgid "Could not change your file encryption password to your login password" -msgstr "" +msgstr "No se pudo cambiar la contraseña de cifrado de archivos de su contraseña de inicio de sesión" #: templates/settings-personal.php:3 templates/settings.php:5 msgid "Choose encryption mode:" -msgstr "Elegir el modo de encriptado:" +msgstr "Elegir el modo de cifrado:" #: templates/settings-personal.php:20 templates/settings.php:24 msgid "" "Client side encryption (most secure but makes it impossible to access your " "data from the web interface)" -msgstr "" +msgstr "Cifrado del lado del Cliente ( es el más seguro, pero hace que sea imposible acceder a sus datos desde la interfaz web)" #: templates/settings-personal.php:30 templates/settings.php:36 msgid "" "Server side encryption (allows you to access your files from the web " "interface and the desktop client)" -msgstr "" +msgstr "Cifrado del lado del Servidor (le permite acceder a sus archivos desde la interfaz web y el cliente de escritorio)" #: templates/settings-personal.php:41 templates/settings.php:60 msgid "None (no encryption at all)" -msgstr "" +msgstr "Ninguno (ningún cifrado en absoluto)" #: templates/settings.php:10 msgid "" "Important: Once you selected an encryption mode there is no way to change it" " back" -msgstr "" +msgstr "Importante: Una vez que haya seleccionado un modo de cifrado no existe forma de cambiarlo de nuevo" #: templates/settings.php:48 msgid "User specific (let the user decide)" -msgstr "" +msgstr "EspecÃfico del usuario (dejar que el usuario decida)" #: templates/settings.php:65 msgid "Encryption" diff --git a/l10n/es/files_trashbin.po b/l10n/es/files_trashbin.po new file mode 100644 index 00000000000..81d77e8689a --- /dev/null +++ b/l10n/es/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Spanish (http://www.transifex.com/projects/p/owncloud/language/es/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: es\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nombre" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 carpeta" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} carpetas" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 archivo" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} archivos" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Recuperar" diff --git a/l10n/es/settings.po b/l10n/es/settings.po index d650521c6f8..775bcdb6d92 100644 --- a/l10n/es/settings.po +++ b/l10n/es/settings.po @@ -19,8 +19,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Spanish (http://www.transifex.com/projects/p/owncloud/language/es/)\n" "MIME-Version: 1.0\n" @@ -87,14 +87,42 @@ msgstr "Imposible añadir el usuario al grupo %s" msgid "Unable to remove user from group %s" msgstr "Imposible eliminar al usuario del grupo %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Desactivar" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Activar" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Error" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Guardando..." @@ -123,6 +151,10 @@ msgstr "Echa un vistazo a la web de aplicaciones apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licenciado por <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Actualizar" + #: templates/help.php:3 msgid "User Documentation" msgstr "Documentación del usuario" @@ -274,6 +306,14 @@ msgstr "Grupo admin" msgid "Storage" msgstr "Alamacenamiento" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "Predeterminado" diff --git a/l10n/es/user_ldap.po b/l10n/es/user_ldap.po index 8a1cee622dd..048364d885d 100644 --- a/l10n/es/user_ldap.po +++ b/l10n/es/user_ldap.po @@ -3,6 +3,7 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# Felix Liberio <felix.liberio@gmail.com>, 2013. # Javier Llorente <javier@opensuse.org>, 2012. # <juanma@kde.org.ar>, 2012. # <manudeloz86@gmail.com>, 2012. @@ -13,9 +14,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-03 06:10+0000\n" +"Last-Translator: felix.liberio <felix.liberio@gmail.com>\n" "Language-Team: Spanish (http://www.transifex.com/projects/p/owncloud/language/es/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -23,6 +24,58 @@ msgstr "" "Language: es\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "No se pudo borrar la configuración del servidor" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "La configuración es válida y la conexión puede establecerse!" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "La configuración es válida, pero falló el Enlace. Por favor, compruebe la configuración del servidor y las credenciales." + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "La configuración no es válida. Por favor, busque en el log de ownCloud para más detalles." + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Falló el borrado" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "Mantener la configuración?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "No se puede añadir la configuración del servidor" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "La prueba de conexión fue exitosa" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "La prueba de conexión falló" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "¿Realmente desea eliminar la configuración actual del servidor?" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "Confirmar eliminación" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -34,168 +87,230 @@ msgstr "<b>Advertencia:</b> Los Apps user_ldap y user_webdavauth son incompatibl msgid "" "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not " "work. Please ask your system administrator to install it." -msgstr "" +msgstr "<b>Advertencia:</b> El módulo LDAP de PHP no está instalado, el sistema no funcionará. Por favor consulte al administrador del sistema para instalarlo." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "Configuración del Servidor" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" -msgstr "Servidor" +msgstr "Máquina" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Puede omitir el protocolo, excepto si requiere SSL. En ese caso, empiece con ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "DN base" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" -msgstr "" +msgstr "Un DN Base por lÃnea" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Puede especificar el DN base para usuarios y grupos en la pestaña Avanzado" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN usuario" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "El DN del usuario cliente con el que se hará la asociación, p.ej. uid=agente,dc=ejemplo,dc=com. Para acceso anónimo, deje DN y contraseña vacÃos." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Contraseña" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Para acceso anónimo, deje DN y contraseña vacÃos." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filtro de inicio de sesión de usuario" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Define el filtro a aplicar cuando se ha realizado un login. %%uid remplazrá el nombre de usuario en el proceso de login." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "usar %%uid como placeholder, ej: \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Lista de filtros de usuario" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Define el filtro a aplicar, cuando se obtienen usuarios." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "Sin placeholder, ej: \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Filtro de grupo" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Define el filtro a aplicar, cuando se obtienen grupos." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "Con cualquier placeholder, ej: \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Puerto" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Ãrbol base de usuario" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Ãrbol base de grupo" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Asociación Grupo-Miembro" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Usar TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "No usarlo para SSL, habrá error." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Servidor de LDAP sensible a mayúsculas/minúsculas (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Apagar la validación por certificado SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Si la conexión sólo funciona con esta opción, importe el certificado SSL del servidor LDAP en su servidor ownCloud." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "No recomendado, sólo para pruebas." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "en segundos. Un cambio vacÃa la cache." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Campo de nombre de usuario a mostrar" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "El atributo LDAP a usar para generar el nombre de usuario de ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Ãrbol base de usuario" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Un DN Base de Usuario por lÃnea" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Campo de nombre de grupo a mostrar" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "El atributo LDAP a usar para generar el nombre de los grupos de ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Ãrbol base de grupo" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Un DN Base de Grupo por lÃnea" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Asociación Grupo-Miembro" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "en bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "en segundos. Un cambio vacÃa la cache." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "VacÃo para el nombre de usuario (por defecto). En otro caso, especifique un atributo LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Ayuda" diff --git a/l10n/es_AR/core.po b/l10n/es_AR/core.po index 65487408405..b8625fa972f 100644 --- a/l10n/es_AR/core.po +++ b/l10n/es_AR/core.po @@ -3,15 +3,16 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# CJTess <claudio.tessone@gmail.com>, 2013. # <claudio.tessone@gmail.com>, 2012-2013. # <javierkaiser@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" +"Last-Translator: cjtess <claudio.tessone@gmail.com>\n" "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -157,59 +158,59 @@ msgstr "Noviembre" msgid "December" msgstr "Diciembre" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Ajustes" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "segundos atrás" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "hace 1 minuto" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "hace {minutes} minutos" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "Hace 1 hora" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} horas atrás" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "hoy" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "ayer" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "hace {days} dÃas" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "el mes pasado" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} meses atrás" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "meses atrás" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "el año pasado" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "años atrás" @@ -254,11 +255,11 @@ msgstr "¡El archivo requerido {file} no está instalado!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Compartir" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Compartido" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -381,11 +382,11 @@ msgid "" "The update was unsuccessful. Please report this issue to the <a " "href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud " "community</a>." -msgstr "" +msgstr "La actualización no pudo ser completada. Por favor, reportá el inconveniente a la comunidad <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud</a>." #: js/update.js:18 msgid "The update was successful. Redirecting you to ownCloud now." -msgstr "" +msgstr "La actualización fue exitosa. Estás siendo redirigido a ownCloud." #: lostpassword/controller.php:47 msgid "ownCloud password reset" @@ -542,7 +543,7 @@ msgstr "Completar la instalación" msgid "web services under your control" msgstr "servicios web sobre los que tenés control" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Cerrar la sesión" diff --git a/l10n/es_AR/files.po b/l10n/es_AR/files.po index 7de3e1c837a..16fb351cdfb 100644 --- a/l10n/es_AR/files.po +++ b/l10n/es_AR/files.po @@ -4,13 +4,14 @@ # # Translators: # Agustin Ferrario <agustin.ferrario@hotmail.com.ar>, 2012-2013. +# CJTess <claudio.tessone@gmail.com>, 2013. # <claudio.tessone@gmail.com>, 2012-2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n" "MIME-Version: 1.0\n" @@ -19,20 +20,6 @@ msgstr "" "Language: es_AR\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "No se pudo mover %s - Un archivo con este nombre ya existe" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "No se pudo mover %s " - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "No fue posible cambiar el nombre al archivo" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "El archivo no fue subido. Error desconocido" @@ -68,11 +55,11 @@ msgstr "Falta un directorio temporal" msgid "Failed to write to disk" msgstr "Error al escribir en el disco" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "No hay suficiente espacio disponible" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Directorio invalido." @@ -80,15 +67,15 @@ msgstr "Directorio invalido." msgid "Files" msgstr "Archivos" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Dejar de compartir" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Borrar" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Cambiar nombre" @@ -112,7 +99,7 @@ msgstr "cancelar" msgid "replaced {new_name}" msgstr "reemplazado {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "deshacer" @@ -120,13 +107,9 @@ msgstr "deshacer" msgid "replaced {new_name} with {old_name}" msgstr "reemplazado {new_name} con {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "{files} se dejaron de compartir" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "{files} borrados" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -144,92 +127,84 @@ msgstr "Nombre invalido, '\\', '/', '<', '>', ':', '\"', '|', '?' y '*' no está #: js/files.js:78 msgid "Your storage is full, files can not be updated or synced anymore!" -msgstr "" +msgstr "El almacenamiento está lleno, los archivos no se pueden seguir actualizando ni sincronizando" #: js/files.js:82 msgid "Your storage is almost full ({usedSpacePercent}%)" -msgstr "" +msgstr "El almacenamiento está casi lleno ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Tu descarga esta siendo preparada. Esto puede tardar algun tiempo si los archivos son muy grandes." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "No fue posible subir el archivo porque es un directorio o porque su tamaño es 0 bytes" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Error al subir el archivo" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Cerrar" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Pendiente" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "Subiendo 1 archivo" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "Subiendo {count} archivos" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "La subida fue cancelada" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "La subida del archivo está en proceso. Si salÃs de la página ahora, la subida se cancelará." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "La URL no puede estar vacÃa" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Nombre de carpeta inválido. El uso de 'Shared' está reservado por ownCloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} archivos escaneados" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "error mientras se escaneaba" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nombre" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Tamaño" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Modificado" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 directorio" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} directorios" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 archivo" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} archivos" @@ -285,32 +260,40 @@ msgstr "Carpeta" msgid "From link" msgstr "Desde enlace" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Cancelar subida" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "No hay nada. ¡Subà contenido!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Descargar" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "El archivo es demasiado grande" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Los archivos que intentás subir sobrepasan el tamaño máximo " -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Se están escaneando los archivos, por favor esperá." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Escaneo actual" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/es_AR/files_encryption.po b/l10n/es_AR/files_encryption.po index 63c4ec00584..11ac9c0c6d7 100644 --- a/l10n/es_AR/files_encryption.po +++ b/l10n/es_AR/files_encryption.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# CJTess <claudio.tessone@gmail.com>, 2013. # <claudio.tessone@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-23 00:05+0100\n" -"PO-Revision-Date: 2013-01-22 23:05+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 16:11+0000\n" +"Last-Translator: cjtess <claudio.tessone@gmail.com>\n" "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -22,53 +23,53 @@ msgstr "" msgid "" "Please switch to your ownCloud client and change your encryption password to" " complete the conversion." -msgstr "" +msgstr "Por favor, cambiá uu cliente de ownCloud y cambiá tu clave de encriptado para completar la conversión." #: js/settings-personal.js:17 msgid "switched to client side encryption" -msgstr "" +msgstr "Cambiado a encriptación por parte del cliente" #: js/settings-personal.js:21 msgid "Change encryption password to login password" -msgstr "" +msgstr "Cambiá la clave de encriptado para tu contraseña de inicio de sesión" #: js/settings-personal.js:25 msgid "Please check your passwords and try again." -msgstr "" +msgstr "Por favor, revisá tu contraseña e intentalo de nuevo." #: js/settings-personal.js:25 msgid "Could not change your file encryption password to your login password" -msgstr "" +msgstr "No se pudo cambiar la contraseña de encriptación de archivos de tu contraseña de inicio de sesión" #: templates/settings-personal.php:3 templates/settings.php:5 msgid "Choose encryption mode:" -msgstr "" +msgstr "Elegir el modo de encriptación:" #: templates/settings-personal.php:20 templates/settings.php:24 msgid "" "Client side encryption (most secure but makes it impossible to access your " "data from the web interface)" -msgstr "" +msgstr "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)" #: templates/settings-personal.php:30 templates/settings.php:36 msgid "" "Server side encryption (allows you to access your files from the web " "interface and the desktop client)" -msgstr "" +msgstr "Encriptación por parte del servidor (te permite acceder a tus archivos desde la interfaz web y desde el cliente de escritorio)" #: templates/settings-personal.php:41 templates/settings.php:60 msgid "None (no encryption at all)" -msgstr "" +msgstr "Ninguno (ninguna encriptación en absoluto)" #: templates/settings.php:10 msgid "" "Important: Once you selected an encryption mode there is no way to change it" " back" -msgstr "" +msgstr "Importante: Una vez que haya seleccionado un modo de encriptación, no existe forma de cambiarlo nuevamente" #: templates/settings.php:48 msgid "User specific (let the user decide)" -msgstr "" +msgstr "EspecÃfico por usuario (deja que el usuario decida)" #: templates/settings.php:65 msgid "Encryption" diff --git a/l10n/es_AR/files_trashbin.po b/l10n/es_AR/files_trashbin.po new file mode 100644 index 00000000000..7352752bf48 --- /dev/null +++ b/l10n/es_AR/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: es_AR\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nombre" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 directorio" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} directorios" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 archivo" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} archivos" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Recuperar" diff --git a/l10n/es_AR/settings.po b/l10n/es_AR/settings.po index e5e3ae2bc01..8310f58c95c 100644 --- a/l10n/es_AR/settings.po +++ b/l10n/es_AR/settings.po @@ -4,13 +4,14 @@ # # Translators: # Agustin Ferrario <agustin.ferrario@hotmail.com.ar>, 2012. +# CJTess <claudio.tessone@gmail.com>, 2013. # <claudio.tessone@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n" "MIME-Version: 1.0\n" @@ -77,14 +78,42 @@ msgstr "No fue posible añadir el usuario al grupo %s" msgid "Unable to remove user from group %s" msgstr "No es posible eliminar al usuario del grupo %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Desactivar" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Activar" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Error" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Guardando..." @@ -113,6 +142,10 @@ msgstr "Mirá la web de aplicaciones apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licenciado por <span class=\"author\">" +#: templates/apps.php:31 +msgid "Update" +msgstr "Actualizar" + #: templates/help.php:3 msgid "User Documentation" msgstr "Documentación de Usuario" @@ -123,7 +156,7 @@ msgstr "Documentación de Administrador" #: templates/help.php:6 msgid "Online Documentation" -msgstr "Documentación en linea" +msgstr "Documentación en lÃnea" #: templates/help.php:7 msgid "Forum" @@ -230,7 +263,7 @@ msgstr "Desarrollado por la <a href=\"http://ownCloud.org/contact\" target=\"_bl #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Nombre de " #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -254,7 +287,7 @@ msgstr "Otro" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Nombre a mostrar" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -264,6 +297,14 @@ msgstr "Grupo Administrador" msgid "Storage" msgstr "Almacenamiento" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "Predeterminado" diff --git a/l10n/es_AR/user_ldap.po b/l10n/es_AR/user_ldap.po index a3b11101f5b..e6a7fb9d269 100644 --- a/l10n/es_AR/user_ldap.po +++ b/l10n/es_AR/user_ldap.po @@ -4,13 +4,14 @@ # # Translators: # Agustin Ferrario <agustin.ferrario@hotmail.com.ar>, 2013. +# CJTess <claudio.tessone@gmail.com>, 2013. # <claudio.tessone@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n" "MIME-Version: 1.0\n" @@ -19,6 +20,58 @@ msgstr "" "Language: es_AR\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Error al borrar" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -30,168 +83,230 @@ msgstr "<b>Advertencia:</b> Los Apps user_ldap y user_webdavauth son incompatibl msgid "" "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not " "work. Please ask your system administrator to install it." -msgstr "" +msgstr "<b>Atención:</b> El módulo PHP LDAP no está instalado, este elemento no va a funcionar. Por favor, pedile al administrador que lo instale." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Servidor" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Podés omitir el protocolo, excepto si SSL es requerido. En ese caso, empezá con ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "DN base" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" -msgstr "" +msgstr "Una DN base por lÃnea" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Podés especificar el DN base para usuarios y grupos en la pestaña \"Avanzado\"" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN usuario" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "El DN del usuario cliente con el que se hará la asociación, p.ej. uid=agente,dc=ejemplo,dc=com. Para acceso anónimo, dejá DN y contraseña vacÃos." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Contraseña" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Para acceso anónimo, dejá DN y contraseña vacÃos." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filtro de inicio de sesión de usuario" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Define el filtro a aplicar cuando se ha realizado un login. %%uid remplazará el nombre de usuario en el proceso de inicio de sesión." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "usar %%uid como plantilla, p. ej.: \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Lista de filtros de usuario" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Define el filtro a aplicar, cuando se obtienen usuarios." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "Sin plantilla, p. ej.: \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Filtro de grupo" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Define el filtro a aplicar cuando se obtienen grupos." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "Sin ninguna plantilla, p. ej.: \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Puerto" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Ãrbol base de usuario" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Ãrbol base de grupo" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Asociación Grupo-Miembro" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Usar TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "No usarlo para SSL, dará error." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Servidor de LDAP sensible a mayúsculas/minúsculas (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Desactivar la validación por certificado SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Si la conexión sólo funciona con esta opción, importá el certificado SSL del servidor LDAP en tu servidor ownCloud." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "No recomendado, sólo para pruebas." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "en segundos. Cambiarlo vacÃa la cache." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Campo de nombre de usuario a mostrar" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "El atributo LDAP a usar para generar el nombre de usuario de ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Ãrbol base de usuario" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Una DN base de usuario por lÃnea" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Campo de nombre de grupo a mostrar" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "El atributo LDAP a usar para generar el nombre de los grupos de ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Ãrbol base de grupo" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Una DN base de grupo por lÃnea" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Asociación Grupo-Miembro" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "en bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "en segundos. Cambiarlo vacÃa la cache." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "VacÃo para el nombre de usuario (por defecto). En otro caso, especificá un atributo LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Ayuda" diff --git a/l10n/es_AR/user_webdavauth.po b/l10n/es_AR/user_webdavauth.po index 429680ee8c6..6c88cac3fd0 100644 --- a/l10n/es_AR/user_webdavauth.po +++ b/l10n/es_AR/user_webdavauth.po @@ -4,14 +4,15 @@ # # Translators: # Agustin Ferrario <agustin.ferrario@hotmail.com.ar>, 2012. +# CJTess <claudio.tessone@gmail.com>, 2013. # <claudio.tessone@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-15 00:03+0100\n" -"PO-Revision-Date: 2013-01-14 23:04+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 16:22+0000\n" +"Last-Translator: cjtess <claudio.tessone@gmail.com>\n" "Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/owncloud/language/es_AR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,7 +22,7 @@ msgstr "" #: templates/settings.php:3 msgid "WebDAV Authentication" -msgstr "" +msgstr "Autenticación de WevDAV" #: templates/settings.php:4 msgid "URL: http://" @@ -32,4 +33,4 @@ msgid "" "ownCloud will send the user credentials to this URL. This plugin checks the " "response and will interpret the HTTP statuscodes 401 and 403 as invalid " "credentials, and all other responses as valid credentials." -msgstr "" +msgstr "onwCloud enviará las credenciales de usuario a esta URL. Este complemento verifica la respuesta e interpretará los códigos de respuesta HTTP 401 y 403 como credenciales inválidas y todas las otras respuestas como credenciales válidas." diff --git a/l10n/et_EE/core.po b/l10n/et_EE/core.po index 62f3fd70152..319bddaf875 100644 --- a/l10n/et_EE/core.po +++ b/l10n/et_EE/core.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n" "MIME-Version: 1.0\n" @@ -156,59 +156,59 @@ msgstr "November" msgid "December" msgstr "Detsember" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Seaded" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "sekundit tagasi" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 minut tagasi" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} minutit tagasi" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "täna" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "eile" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} päeva tagasi" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "viimasel kuul" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "kuu tagasi" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "viimasel aastal" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "aastat tagasi" @@ -253,7 +253,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Jaga" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -541,7 +541,7 @@ msgstr "Lõpeta seadistamine" msgid "web services under your control" msgstr "veebiteenused sinu kontrolli all" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Logi välja" diff --git a/l10n/et_EE/files.po b/l10n/et_EE/files.po index ad6acde581c..deecc6e8688 100644 --- a/l10n/et_EE/files.po +++ b/l10n/et_EE/files.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n" "MIME-Version: 1.0\n" @@ -19,20 +19,6 @@ msgstr "" "Language: et_EE\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Ühtegi faili ei laetud üles. Tundmatu viga" @@ -68,11 +54,11 @@ msgstr "Ajutiste failide kaust puudub" msgid "Failed to write to disk" msgstr "Kettale kirjutamine ebaõnnestus" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -80,15 +66,15 @@ msgstr "" msgid "Files" msgstr "Failid" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Lõpeta jagamine" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Kustuta" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "ümber" @@ -112,7 +98,7 @@ msgstr "loobu" msgid "replaced {new_name}" msgstr "asendatud nimega {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "tagasi" @@ -120,13 +106,9 @@ msgstr "tagasi" msgid "replaced {new_name} with {old_name}" msgstr "asendas nime {old_name} nimega {new_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "jagamata {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "kustutatud {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -150,86 +132,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Sinu faili üleslaadimine ebaõnnestus, kuna see on kaust või selle suurus on 0 baiti" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Üleslaadimise viga" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Sulge" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Ootel" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 faili üleslaadimisel" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} faili üleslaadimist" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Üleslaadimine tühistati." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Faili üleslaadimine on töös. Lehelt lahkumine katkestab selle üleslaadimise." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL ei saa olla tühi." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} faili skännitud" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "viga skännimisel" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nimi" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Suurus" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Muudetud" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 kaust" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} kausta" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 fail" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} faili" @@ -285,32 +259,40 @@ msgstr "Kaust" msgid "From link" msgstr "Allikast" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Tühista üleslaadimine" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Siin pole midagi. Lae midagi üles!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Lae alla" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Üleslaadimine on liiga suur" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Failid, mida sa proovid üles laadida, ületab serveri poolt üleslaetavatele failidele määratud maksimaalse suuruse." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Faile skannitakse, palun oota" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Praegune skannimine" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/et_EE/files_trashbin.po b/l10n/et_EE/files_trashbin.po new file mode 100644 index 00000000000..818c4c31a5d --- /dev/null +++ b/l10n/et_EE/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: et_EE\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nimi" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 kaust" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} kausta" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 fail" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} faili" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/et_EE/settings.po b/l10n/et_EE/settings.po index 3f55c738851..1dbc6e9f6fd 100644 --- a/l10n/et_EE/settings.po +++ b/l10n/et_EE/settings.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n" "MIME-Version: 1.0\n" @@ -77,14 +77,42 @@ msgstr "Kasutajat ei saa lisada gruppi %s" msgid "Unable to remove user from group %s" msgstr "Kasutajat ei saa eemaldada grupist %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Lülita välja" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Lülita sisse" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Viga" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Salvestamine..." @@ -113,6 +141,10 @@ msgstr "Vaata rakenduste lehte aadressil apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-litsenseeritud <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Uuenda" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -264,6 +296,14 @@ msgstr "Grupi admin" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/et_EE/user_ldap.po b/l10n/et_EE/user_ldap.po index f0bcf31f96a..fe16678ea5e 100644 --- a/l10n/et_EE/user_ldap.po +++ b/l10n/et_EE/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:19+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Estonian (Estonia) (http://www.transifex.com/projects/p/owncloud/language/et_EE/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: et_EE\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Kustutamine ebaõnnestus" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Host" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Sa ei saa protokolli ära jätta, välja arvatud siis, kui sa nõuad SSL-ühendust. Sel juhul alusta eesliitega ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Baas DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Sa saad kasutajate ja gruppide baas DN-i määrata lisavalikute vahekaardilt" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "Kasutaja DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "Klientkasutaja DN, kellega seotakse, nt. uid=agent,dc=näidis,dc=com. Anonüümseks ligipääsuks jäta DN ja parool tühjaks." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Parool" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Anonüümseks ligipääsuks jäta DN ja parool tühjaks." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Kasutajanime filter" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Määrab sisselogimisel kasutatava filtri. %%uid asendab sisselogimistegevuses kasutajanime." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "kasuta %%uid kohatäitjat, nt. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Kasutajate nimekirja filter" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Määrab kasutajaid hankides filtri, mida rakendatakse." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "ilma ühegi kohatäitjata, nt. \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Grupi filter" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Määrab gruppe hankides filtri, mida rakendatakse." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "ilma ühegi kohatäitjata, nt. \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Baaskasutaja puu" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Baasgrupi puu" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Grupiliikme seotus" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Kasutaja TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Ära kasuta seda SSL ühenduse jaoks, see ei toimi." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Mittetõstutundlik LDAP server (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Lülita SSL sertifikaadi kontrollimine välja." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Kui ühendus toimib ainult selle valikuga, siis impordi LDAP serveri SSL sertifikaat oma ownCloud serverisse." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Pole soovitatav, kasuta ainult testimiseks." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "sekundites. Muudatus tühjendab vahemälu." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Kasutaja näidatava nime väli" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "LDAP omadus, mida kasutatakse kasutaja ownCloudi nime loomiseks." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Baaskasutaja puu" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Grupi näidatava nime väli" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "LDAP omadus, mida kasutatakse ownCloudi grupi nime loomiseks." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Baasgrupi puu" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Grupiliikme seotus" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "baitides" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "sekundites. Muudatus tühjendab vahemälu." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Kasutajanime (vaikeväärtus) kasutamiseks jäta tühjaks. Vastasel juhul määra LDAP/AD omadus." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Abiinfo" diff --git a/l10n/eu/core.po b/l10n/eu/core.po index 7bc85012c50..33b40f3114c 100644 --- a/l10n/eu/core.po +++ b/l10n/eu/core.po @@ -11,9 +11,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" +"Last-Translator: asieriko <asieriko@gmail.com>\n" "Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -159,59 +159,59 @@ msgstr "Azaroa" msgid "December" msgstr "Abendua" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Ezarpenak" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "segundu" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "orain dela minutu 1" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "orain dela {minutes} minutu" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "orain dela ordu bat" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "orain dela {hours} ordu" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "gaur" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "atzo" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "orain dela {days} egun" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "joan den hilabetean" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "orain dela {months} hilabete" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "hilabete" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "joan den urtean" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "urte" @@ -256,11 +256,11 @@ msgstr "Beharrezkoa den {file} fitxategia ez dago instalatuta!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Elkarbanatu" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Elkarbanatuta" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -544,7 +544,7 @@ msgstr "Bukatu konfigurazioa" msgid "web services under your control" msgstr "web zerbitzuak zure kontrolpean" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Saioa bukatu" diff --git a/l10n/eu/files.po b/l10n/eu/files.po index a769d2ce3c3..2c3f16305dd 100644 --- a/l10n/eu/files.po +++ b/l10n/eu/files.po @@ -11,9 +11,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-28 00:04+0100\n" -"PO-Revision-Date: 2013-01-27 15:41+0000\n" -"Last-Translator: Piarres Beobide <pi@beobide.net>\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,20 +21,6 @@ msgstr "" "Language: eu\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Ezin da %s mugitu - Izen hau duen fitxategia dagoeneko existitzen da" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Ezin dira fitxategiak mugitu %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Ezin izan da fitxategia berrizendatu" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Ez da fitxategirik igo. Errore ezezaguna" @@ -70,11 +56,11 @@ msgstr "Aldi baterako karpeta falta da" msgid "Failed to write to disk" msgstr "Errore bat izan da diskoan idazterakoan" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "Ez dago behar aina leku erabilgarri," +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Ez dago leku nahikorik." -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Baliogabeko karpeta." @@ -82,15 +68,15 @@ msgstr "Baliogabeko karpeta." msgid "Files" msgstr "Fitxategiak" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Ez elkarbanatu" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Ezabatu" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Berrizendatu" @@ -114,7 +100,7 @@ msgstr "ezeztatu" msgid "replaced {new_name}" msgstr "ordezkatua {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "desegin" @@ -122,13 +108,9 @@ msgstr "desegin" msgid "replaced {new_name} with {old_name}" msgstr " {new_name}-k {old_name} ordezkatu du" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "elkarbanaketa utzita {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "ezabatuta {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -152,86 +134,78 @@ msgstr "Zure biltegiratzea beterik dago, ezingo duzu aurrerantzean fitxategirik msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "Zure biltegiratzea nahiko beterik dago (%{usedSpacePercent})" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Zure deskarga prestatu egin behar da. Denbora bat har lezake fitxategiak handiak badira. " -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Ezin da zure fitxategia igo, karpeta bat da edo 0 byt ditu" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Igotzean errore bat suertatu da" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Itxi" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Zain" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "fitxategi 1 igotzen" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} fitxategi igotzen" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Igoera ezeztatuta" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Fitxategien igoera martxan da. Orria orain uzteak igoera ezeztatutko du." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URLa ezin da hutsik egon." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Baliogabeako karpeta izena. 'Shared' izena Owncloudek erreserbatzen du" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} fitxategi eskaneatuta" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "errore bat egon da eskaneatzen zen bitartean" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Izena" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Tamaina" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Aldatuta" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "karpeta bat" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} karpeta" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "fitxategi bat" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} fitxategi" @@ -287,32 +261,40 @@ msgstr "Karpeta" msgid "From link" msgstr "Estekatik" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Ezeztatu igoera" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Ez dago ezer. Igo zerbait!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Deskargatu" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Igotakoa handiegia da" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Igotzen saiatzen ari zaren fitxategiak zerbitzari honek igotzeko onartzen duena baino handiagoak dira." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Fitxategiak eskaneatzen ari da, itxoin mezedez." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Orain eskaneatzen ari da" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/eu/files_trashbin.po b/l10n/eu/files_trashbin.po new file mode 100644 index 00000000000..a0ee131403b --- /dev/null +++ b/l10n/eu/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: eu\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Izena" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "karpeta bat" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} karpeta" + +#: js/trash.js:120 +msgid "1 file" +msgstr "fitxategi bat" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} fitxategi" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Berrezarri" diff --git a/l10n/eu/settings.po b/l10n/eu/settings.po index 9ff185b18fb..7b268d3a9d6 100644 --- a/l10n/eu/settings.po +++ b/l10n/eu/settings.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n" "MIME-Version: 1.0\n" @@ -79,14 +79,42 @@ msgstr "Ezin izan da erabiltzailea %s taldera gehitu" msgid "Unable to remove user from group %s" msgstr "Ezin izan da erabiltzailea %s taldetik ezabatu" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Ez-gaitu" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Gaitu" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Errorea" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Gordetzen..." @@ -115,6 +143,10 @@ msgstr "Ikusi programen orria apps.owncloud.com en" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-lizentziatua <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Eguneratu" + #: templates/help.php:3 msgid "User Documentation" msgstr "Erabiltzaile dokumentazioa" @@ -232,7 +264,7 @@ msgstr "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud komun #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Sarrera Izena" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -256,7 +288,7 @@ msgstr "Besteak" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Bistaratze Izena" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -266,6 +298,14 @@ msgstr "Talde administradorea" msgid "Storage" msgstr "Biltegiratzea" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "Lehenetsia" diff --git a/l10n/eu/user_ldap.po b/l10n/eu/user_ldap.po index 546e28b0d75..f55cb063518 100644 --- a/l10n/eu/user_ldap.po +++ b/l10n/eu/user_ldap.po @@ -9,9 +9,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-20 00:05+0100\n" -"PO-Revision-Date: 2013-01-19 00:01+0000\n" -"Last-Translator: asieriko <asieriko@gmail.com>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Basque (http://www.transifex.com/projects/p/owncloud/language/eu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,6 +19,58 @@ msgstr "" "Language: eu\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Ezabaketak huts egin du" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -33,165 +85,227 @@ msgid "" msgstr "<b>Abisua:</b> PHPk behar duen LDAP modulua ez dago instalaturik, motorrak ez du funtzionatuko. Mesedez eskatu zure sistema kudeatzaileari instala dezan." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Hostalaria" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Protokoloa ez da beharrezkoa, SSL behar baldin ez baduzu. Honela bada hasi ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Oinarrizko DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "DN Oinarri bat lerroko" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Erabiltzaile eta taldeentzako Oinarrizko DN zehaztu dezakezu Aurreratu fitxan" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "Erabiltzaile DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "Lotura egingo den bezero erabiltzailearen DNa, adb. uid=agent,dc=example,dc=com. Sarrera anonimoak gaitzeko utzi DN eta Pasahitza hutsik." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Pasahitza" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Sarrera anonimoak gaitzeko utzi DN eta Pasahitza hutsik." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Erabiltzaileen saioa hasteko iragazkia" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Saioa hastean erabiliko den iragazkia zehazten du. %%uid-ek erabiltzaile izena ordezkatzen du saioa hasterakoan." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "erabili %%uid txantiloia, adb. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Erabiltzaile zerrendaren Iragazkia" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Erabiltzaileak jasotzen direnean ezarriko den iragazkia zehazten du." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "txantiloirik gabe, adb. \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Taldeen iragazkia" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Taldeak jasotzen direnean ezarriko den iragazkia zehazten du." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "txantiloirik gabe, adb. \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Portua" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Oinarrizko Erabiltzaile Zuhaitza" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "Erabiltzaile DN Oinarri bat lerroko" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Oinarrizko Talde Zuhaitza" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "Talde DN Oinarri bat lerroko" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Talde-Kide elkarketak" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Erabili TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Ez erabili SSL konexioetan, huts egingo du." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Maiuskulak eta minuskulak ezberditzen ez dituen LDAP zerbitzaria (windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Ezgaitu SSL ziurtagirien egiaztapena." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Konexioa aukera hau ezinbestekoa badu, inportatu LDAP zerbitzariaren SSL ziurtagiria zure ownCloud zerbitzarian." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Ez da aholkatzen, erabili bakarrik frogak egiteko." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "segundutan. Aldaketak katxea husten du." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Erabiltzaileen bistaratzeko izena duen eremua" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "ownCloud erabiltzailearen izena sortzeko erabiliko den LDAP atributua" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Oinarrizko Erabiltzaile Zuhaitza" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Erabiltzaile DN Oinarri bat lerroko" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Taldeen bistaratzeko izena duen eremua" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "ownCloud taldearen izena sortzeko erabiliko den LDAP atributua" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Oinarrizko Talde Zuhaitza" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Talde DN Oinarri bat lerroko" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Talde-Kide elkarketak" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "bytetan" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "segundutan. Aldaketak katxea husten du." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Utzi hutsik erabiltzaile izenarako (lehentsia). Bestela zehaztu LDAP/AD atributua." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Laguntza" diff --git a/l10n/fa/core.po b/l10n/fa/core.po index b14c7903db5..7ac12d0c3a7 100644 --- a/l10n/fa/core.po +++ b/l10n/fa/core.po @@ -9,9 +9,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 14:04+0000\n" +"Last-Translator: miki_mika1362 <miki_mika1362@yahoo.com>\n" "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -157,59 +157,59 @@ msgstr "نوامبر" msgid "December" msgstr "دسامبر" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "تنظیمات" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "ثانیه‌ها پیش" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 دقیقه پیش" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{دقیقه ها} دقیقه های پیش" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 ساعت پیش" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{ساعت ها} ساعت ها پیش" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "امروز" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "دیروز" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{روزها} روزهای پیش" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "ماه قبل" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{ماه ها} ماه ها پیش" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "ماه‌های قبل" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "سال قبل" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "سال‌های قبل" @@ -254,7 +254,7 @@ msgstr "پرونده { پرونده} درخواست شده نصب نشده Ø§Ø³Ø #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "اشتراک‌گزاری" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -482,7 +482,7 @@ msgstr "هیچ مولد تصادÙÛŒ امن در دسترس نیست، Ù„Ø·ÙØ§ msgid "" "Without a secure random number generator an attacker may be able to predict " "password reset tokens and take over your account." -msgstr "" +msgstr "بدون وجود یک تولید کننده اعداد تصادÙÛŒ امن ØŒ یک مهاجم ممکن است این قابلیت را داشته باشد Ú©Ù‡ پیشگویی کند پسوورد های راه انداز Ú¯Ø±ÙØªÙ‡ شده Ùˆ کنترلی روی ØØ³Ø§Ø¨ کاربری شما داشته باشد ." #: templates/installation.php:32 msgid "" @@ -542,7 +542,7 @@ msgstr "اتمام نصب" msgid "web services under your control" msgstr "سرویس وب ØªØØª کنترل شما" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "خروج" diff --git a/l10n/fa/files.po b/l10n/fa/files.po index b153a65abbf..c0c54f59a62 100644 --- a/l10n/fa/files.po +++ b/l10n/fa/files.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 11:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n" "MIME-Version: 1.0\n" @@ -21,20 +21,6 @@ msgstr "" "Language: fa\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "%s نمی تواند ØØ±Ú©Øª کند - در ØØ§Ù„ ØØ§Ø¶Ø± پرونده با این نام وجود دارد. " - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "%s نمی تواند ØØ±Ú©Øª کند " - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "قادر به تغییر نام پرونده نیست." - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "هیچ ÙØ§ÛŒÙ„ÛŒ آپلود نشد.خطای ناشناس" @@ -70,11 +56,11 @@ msgstr "یک پوشه موقت Ú¯Ù… شده است" msgid "Failed to write to disk" msgstr "نوشتن بر روی دیسک سخت ناموÙÙ‚ بود" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "ÙØ¶Ø§ÛŒ کاÙÛŒ در دسترس نیست" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Ùهرست راهنما نامعتبر Ù…ÛŒ باشد." @@ -82,15 +68,15 @@ msgstr "Ùهرست راهنما نامعتبر Ù…ÛŒ باشد." msgid "Files" msgstr "ÙØ§ÛŒÙ„ ها" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "لغو اشتراک" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "پاک کردن" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "تغییرنام" @@ -114,7 +100,7 @@ msgstr "لغو" msgid "replaced {new_name}" msgstr "{نام _جدید} جایگزین شد " -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "بازگشت" @@ -122,13 +108,9 @@ msgstr "بازگشت" msgid "replaced {new_name} with {old_name}" msgstr "{نام_جدید} با { نام_قدیمی} جایگزین شد." -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "{ ÙØ§ÛŒÙ„ های } قسمت نشده" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "{ ÙØ§ÛŒÙ„ های } پاک شده" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -152,86 +134,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "دانلود شما در ØØ§Ù„ آماده شدن است. در صورتیکه پرونده ها بزرگ باشند ممکن است مدتی طول بکشد." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "ناتوان در بارگذاری یا ÙØ§ÛŒÙ„ یک پوشه است یا 0بایت دارد" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "خطا در بار گذاری" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "بستن" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "در انتظار" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 پرونده آپلود شد." -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{ شمار } ÙØ§ÛŒÙ„ های در ØØ§Ù„ آپلود" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "بار گذاری لغو شد" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "آپلودکردن پرونده در ØØ§Ù„ Ù¾ÛŒØ´Ø±ÙØª است. در صورت خروج از ØµÙØÙ‡ آپلود لغو میگردد. " -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL نمی تواند خالی باشد." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "نام پوشه نامعتبر است. Ø§Ø³ØªÙØ§Ø¯Ù‡ از \" به اشتراک گذاشته شده \" متعلق به سایت Owncloud است." -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{ شمار } ÙØ§ÛŒÙ„ های اسکن شده" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "خطا در ØØ§Ù„ انجام اسکن " - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "نام" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "اندازه" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "تغییر ÛŒØ§ÙØªÙ‡" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 پوشه" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{ شمار} پوشه ها" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 پرونده" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{ شمار } ÙØ§ÛŒÙ„ ها" @@ -287,32 +261,40 @@ msgstr "پوشه" msgid "From link" msgstr "از پیوند" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "متوق٠کردن بار گذاری" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "اینجا هیچ چیز نیست." -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "بارگیری" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "ØØ¬Ù… بارگذاری بسیار زیاد است" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "ÙØ§ÛŒÙ„ها بیش از ØØ¯ تعیین شده در این سرور هستند\nمترجم:با تغییر ÙØ§ÛŒÙ„ php,ini میتوان این Ù…ØØ¯ÙˆØ¯ÛŒØª را برطر٠کرد" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "پرونده ها در ØØ§Ù„ بازرسی هستند Ù„Ø·ÙØ§ صبر کنید" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "بازرسی کنونی" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/fa/files_external.po b/l10n/fa/files_external.po index 76d4d5289bf..075c47b4356 100644 --- a/l10n/fa/files_external.po +++ b/l10n/fa/files_external.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# mahdi Kereshteh <miki_mika1362@yahoo.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2012-12-13 00:17+0100\n" -"PO-Revision-Date: 2012-12-11 23:22+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-04 00:04+0100\n" +"PO-Revision-Date: 2013-02-03 05:40+0000\n" +"Last-Translator: miki_mika1362 <miki_mika1362@yahoo.com>\n" "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -25,11 +26,11 @@ msgstr "" msgid "Error configuring Dropbox storage" msgstr "" -#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:40 +#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:41 msgid "Grant access" msgstr "" -#: js/dropbox.js:73 js/google.js:72 +#: js/dropbox.js:73 js/google.js:73 msgid "Fill out all required fields" msgstr "" @@ -37,17 +38,17 @@ msgstr "" msgid "Please provide a valid Dropbox app key and secret." msgstr "" -#: js/google.js:26 js/google.js:73 js/google.js:78 +#: js/google.js:26 js/google.js:74 js/google.js:79 msgid "Error configuring Google Drive storage" msgstr "" -#: lib/config.php:434 +#: lib/config.php:405 msgid "" "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares " "is not possible. Please ask your system administrator to install it." msgstr "" -#: lib/config.php:435 +#: lib/config.php:406 msgid "" "<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 " @@ -56,7 +57,7 @@ msgstr "" #: templates/settings.php:3 msgid "External Storage" -msgstr "" +msgstr "ØØ§Ùظه خارجی" #: templates/settings.php:8 templates/settings.php:22 msgid "Mount point" @@ -68,15 +69,15 @@ msgstr "" #: templates/settings.php:10 msgid "Configuration" -msgstr "" +msgstr "پیکربندی" #: templates/settings.php:11 msgid "Options" -msgstr "" +msgstr "تنظیمات" #: templates/settings.php:12 msgid "Applicable" -msgstr "" +msgstr "قابل اجرا" #: templates/settings.php:27 msgid "Add mount point" @@ -99,22 +100,22 @@ msgid "Users" msgstr "کاربران" #: templates/settings.php:108 templates/settings.php:109 -#: templates/settings.php:149 templates/settings.php:150 +#: templates/settings.php:144 templates/settings.php:145 msgid "Delete" msgstr "ØØ°Ù" #: templates/settings.php:124 msgid "Enable User External Storage" -msgstr "" +msgstr "ÙØ¹Ø§Ù„ سازی ØØ§Ùظه خارجی کاربر" #: templates/settings.php:125 msgid "Allow users to mount their own external storage" msgstr "" -#: templates/settings.php:139 +#: templates/settings.php:136 msgid "SSL root certificates" msgstr "" -#: templates/settings.php:158 +#: templates/settings.php:153 msgid "Import Root Certificate" msgstr "" diff --git a/l10n/fa/files_sharing.po b/l10n/fa/files_sharing.po index f7b3799df12..e72b1ce1dc6 100644 --- a/l10n/fa/files_sharing.po +++ b/l10n/fa/files_sharing.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# Amir Reza Asadi <amirreza.asadi@live.com>, 2013. # Mohammad Dashtizadeh <mohammad@dashtizadeh.net>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2012-09-22 01:14+0200\n" -"PO-Revision-Date: 2012-09-21 23:15+0000\n" -"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 11:20+0000\n" +"Last-Translator: Amir Reza Asadi <amirreza.asadi@live.com>\n" "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -20,30 +21,30 @@ msgstr "" #: templates/authenticate.php:4 msgid "Password" -msgstr "" +msgstr "گذرواژه" #: templates/authenticate.php:6 msgid "Submit" -msgstr "" +msgstr "ثبت" #: templates/public.php:9 #, php-format msgid "%s shared the folder %s with you" -msgstr "" +msgstr "%sپوشه %s را با شما به اشتراک گذاشت" #: templates/public.php:11 #, php-format msgid "%s shared the file %s with you" -msgstr "" +msgstr "%sÙØ§ÛŒÙ„ %s را با شما به اشتراک گذاشت" #: templates/public.php:14 templates/public.php:30 msgid "Download" -msgstr "" +msgstr "دانلود" #: templates/public.php:29 msgid "No preview available for" -msgstr "" +msgstr "هیچگونه پیش نمایشی موجود نیست" -#: templates/public.php:37 +#: templates/public.php:35 msgid "web services under your control" -msgstr "" +msgstr "سرویس های ØªØØª وب در کنترل شما" diff --git a/l10n/fa/files_trashbin.po b/l10n/fa/files_trashbin.po new file mode 100644 index 00000000000..d0801cffe9f --- /dev/null +++ b/l10n/fa/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-03 12:40+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fa\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "نام" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 پوشه" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{ شمار} پوشه ها" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 پرونده" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{ شمار } ÙØ§ÛŒÙ„ ها" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "بازیابی" diff --git a/l10n/fa/files_versions.po b/l10n/fa/files_versions.po index 7e657a47ca6..276a3e16135 100644 --- a/l10n/fa/files_versions.po +++ b/l10n/fa/files_versions.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# mahdi Kereshteh <miki_mika1362@yahoo.com>, 2013. # Mohammad Dashtizadeh <mohammad@dashtizadeh.net>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-15 00:03+0100\n" -"PO-Revision-Date: 2013-01-14 23:04+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-03 11:40+0000\n" +"Last-Translator: miki_mika1362 <miki_mika1362@yahoo.com>\n" "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -20,7 +21,7 @@ msgstr "" #: js/versions.js:16 msgid "History" -msgstr "" +msgstr "تاریخچه" #: templates/settings.php:3 msgid "Files Versioning" @@ -28,4 +29,4 @@ msgstr "" #: templates/settings.php:4 msgid "Enable" -msgstr "" +msgstr "ÙØ¹Ø§Ù„" diff --git a/l10n/fa/lib.po b/l10n/fa/lib.po index 7cceb3e4f3a..4fb46ee3443 100644 --- a/l10n/fa/lib.po +++ b/l10n/fa/lib.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# Amir Reza Asadi <amirreza.asadi@live.com>, 2013. # Mohammad Dashtizadeh <mohammad@dashtizadeh.net>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 13:36+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 14:01+0000\n" +"Last-Translator: Amir Reza Asadi <amirreza.asadi@live.com>\n" "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -18,53 +19,53 @@ msgstr "" "Language: fa\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: app.php:301 +#: app.php:312 msgid "Help" msgstr "راه‌نما" -#: app.php:308 +#: app.php:319 msgid "Personal" msgstr "شخصی" -#: app.php:313 +#: app.php:324 msgid "Settings" msgstr "تنظیمات" -#: app.php:318 +#: app.php:329 msgid "Users" msgstr "کاربران" -#: app.php:325 +#: app.php:336 msgid "Apps" -msgstr "" +msgstr " برنامه ها" -#: app.php:327 +#: app.php:338 msgid "Admin" msgstr "مدیر" -#: files.php:365 +#: files.php:202 msgid "ZIP download is turned off." -msgstr "" +msgstr "دانلود به صورت ÙØ´Ø±Ø¯Ù‡ غیر ÙØ¹Ø§Ù„ است" -#: files.php:366 +#: files.php:203 msgid "Files need to be downloaded one by one." -msgstr "" +msgstr "ÙØ§ÛŒÙ„ ها باید به صورت یکی یکی دانلود شوند" -#: files.php:366 files.php:391 +#: files.php:203 files.php:228 msgid "Back to Files" -msgstr "" +msgstr "بازگشت به ÙØ§ÛŒÙ„ ها" -#: files.php:390 +#: files.php:227 msgid "Selected files too large to generate zip file." -msgstr "" +msgstr "ÙØ§ÛŒÙ„ های انتخاب شده بزرگتر از آن هستند Ú©Ù‡ بتوان یک ÙØ§ÛŒÙ„ ÙØ´Ø±Ø¯Ù‡ تولید کرد" -#: helper.php:229 +#: helper.php:226 msgid "couldn't be determined" msgstr "" #: json.php:28 msgid "Application is not enabled" -msgstr "" +msgstr "برنامه ÙØ¹Ø§Ù„ نشده است" #: json.php:39 json.php:62 json.php:73 msgid "Authentication error" @@ -84,7 +85,7 @@ msgstr "متن" #: search/provider/file.php:29 msgid "Images" -msgstr "" +msgstr "تصاویر" #: template.php:113 msgid "seconds ago" @@ -106,7 +107,7 @@ msgstr "1 ساعت پیش" #: template.php:117 #, php-format msgid "%d hours ago" -msgstr "" +msgstr "%d ساعت پیش" #: template.php:118 msgid "today" @@ -119,7 +120,7 @@ msgstr "دیروز" #: template.php:120 #, php-format msgid "%d days ago" -msgstr "" +msgstr "%d روز پیش" #: template.php:121 msgid "last month" @@ -128,7 +129,7 @@ msgstr "ماه قبل" #: template.php:122 #, php-format msgid "%d months ago" -msgstr "" +msgstr "%dماه پیش" #: template.php:123 msgid "last year" @@ -154,4 +155,4 @@ msgstr "" #: vcategories.php:188 vcategories.php:249 #, php-format msgid "Could not find category \"%s\"" -msgstr "" +msgstr "دسته بندی %s ÛŒØ§ÙØª نشد" diff --git a/l10n/fa/settings.po b/l10n/fa/settings.po index 05c65056307..b53e8d923b6 100644 --- a/l10n/fa/settings.po +++ b/l10n/fa/settings.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 14:31+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n" "MIME-Version: 1.0\n" @@ -79,14 +79,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "ØºÛŒØ±ÙØ¹Ø§Ù„" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "ÙØ¹Ø§Ù„" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "خطا" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Ø¯Ø±ØØ§Ù„ ذخیره ..." @@ -115,6 +143,10 @@ msgstr "ØµÙØÙ‡ این اٌپ را در apps.owncloud.com ببینید" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -266,6 +298,14 @@ msgstr "" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/fa/user_ldap.po b/l10n/fa/user_ldap.po index b9a2a147546..46daefbb3f6 100644 --- a/l10n/fa/user_ldap.po +++ b/l10n/fa/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-03 12:00+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Persian (http://www.transifex.com/projects/p/owncloud/language/fa/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: fa\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "ØØ°Ù کردن انجام نشد" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "میزبانی" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "رمز عبور" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 -msgid "Port" +#: templates/settings.php:31 +msgid "Connection Settings" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:33 +msgid "Configuration Active" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:34 +msgid "Port" +msgstr "درگاه" + +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "" + +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" + +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "راه‌نما" diff --git a/l10n/fi_FI/core.po b/l10n/fi_FI/core.po index 74a6747f32b..34672cc2cb0 100644 --- a/l10n/fi_FI/core.po +++ b/l10n/fi_FI/core.po @@ -14,9 +14,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" +"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n" "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -162,59 +162,59 @@ msgstr "Marraskuu" msgid "December" msgstr "Joulukuu" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Asetukset" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "sekuntia sitten" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 minuutti sitten" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} minuuttia sitten" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 tunti sitten" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} tuntia sitten" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "tänään" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "eilen" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} päivää sitten" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "viime kuussa" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} kuukautta sitten" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "kuukautta sitten" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "viime vuonna" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "vuotta sitten" @@ -259,7 +259,7 @@ msgstr "Vaadittua tiedostoa {file} ei ole asennettu!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Jaa" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -386,11 +386,11 @@ msgid "" "The update was unsuccessful. Please report this issue to the <a " "href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud " "community</a>." -msgstr "" +msgstr "Päivitys epäonnistui. Ilmoita ongelmasta <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud-yhteisölle</a>." #: js/update.js:18 msgid "The update was successful. Redirecting you to ownCloud now." -msgstr "" +msgstr "Päivitys onnistui. Selain ohjautuu nyt ownCloudiisi." #: lostpassword/controller.php:47 msgid "ownCloud password reset" @@ -547,7 +547,7 @@ msgstr "Viimeistele asennus" msgid "web services under your control" msgstr "verkkopalvelut hallinnassasi" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Kirjaudu ulos" diff --git a/l10n/fi_FI/files.po b/l10n/fi_FI/files.po index 16c19a658af..3e3ea718bb0 100644 --- a/l10n/fi_FI/files.po +++ b/l10n/fi_FI/files.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-29 00:04+0100\n" -"PO-Revision-Date: 2013-01-28 18:44+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 13:58+0000\n" "Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n" "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n" "MIME-Version: 1.0\n" @@ -22,20 +22,6 @@ msgstr "" "Language: fi_FI\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Kohteen %s siirto ei onnistunut - Tiedosto samalla nimellä on jo olemassa" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Kohteen %s siirto ei onnistunut" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Tiedoston nimeäminen uudelleen ei onnistunut" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Tiedostoa ei lähetetty. Tuntematon virhe" @@ -71,11 +57,11 @@ msgstr "Väliaikaiskansiota ei ole olemassa" msgid "Failed to write to disk" msgstr "Levylle kirjoitus epäonnistui" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "Tallennustilaa ei ole riittävästi käytettävissä" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Tilaa ei ole riittävästi" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Virheellinen kansio." @@ -83,15 +69,15 @@ msgstr "Virheellinen kansio." msgid "Files" msgstr "Tiedostot" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Peru jakaminen" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Poista" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Nimeä uudelleen" @@ -115,7 +101,7 @@ msgstr "peru" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "kumoa" @@ -123,13 +109,9 @@ msgstr "kumoa" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "suorita poistotoiminto" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -153,86 +135,78 @@ msgstr "Tallennustila on loppu, tiedostoja ei voi enää päivittää tai synkro msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "Tallennustila on melkein loppu ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Lataustasi valmistellaan. Tämä saattaa kestää hetken, jos tiedostot ovat suuria kooltaan." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Tiedoston lähetys epäonnistui, koska sen koko on 0 tavua tai kyseessä on kansio" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Lähetysvirhe." -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Sulje" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Odottaa" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Lähetys peruttu." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Tiedoston lähetys on meneillään. Sivulta poistuminen nyt peruu tiedoston lähetyksen." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "Verkko-osoite ei voi olla tyhjä" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nimi" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Koko" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Muutettu" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 kansio" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} kansiota" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 tiedosto" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} tiedostoa" @@ -288,32 +262,40 @@ msgstr "Kansio" msgid "From link" msgstr "Linkistä" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "Roskakori" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Peru lähetys" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Täällä ei ole mitään. Lähetä tänne jotakin!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Lataa" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Lähetettävä tiedosto on liian suuri" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Lähetettäväksi valitsemasi tiedostot ylittävät palvelimen salliman tiedostokoon rajan." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Tiedostoja tarkistetaan, odota hetki." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Tämänhetkinen tutkinta" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Päivitetään tiedostojärjestelmän välimuistia..." diff --git a/l10n/fi_FI/files_encryption.po b/l10n/fi_FI/files_encryption.po index 5f635937590..69b524af11c 100644 --- a/l10n/fi_FI/files_encryption.po +++ b/l10n/fi_FI/files_encryption.po @@ -3,14 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: -# Jiri Grönroos <jiri.gronroos@iki.fi>, 2012. +# Jiri Grönroos <jiri.gronroos@iki.fi>, 2012-2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-23 00:05+0100\n" -"PO-Revision-Date: 2013-01-22 23:05+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 13:59+0000\n" +"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n" "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -34,7 +34,7 @@ msgstr "" #: js/settings-personal.js:25 msgid "Please check your passwords and try again." -msgstr "" +msgstr "Tarkista salasanasi ja yritä uudelleen." #: js/settings-personal.js:25 msgid "Could not change your file encryption password to your login password" @@ -42,7 +42,7 @@ msgstr "" #: templates/settings-personal.php:3 templates/settings.php:5 msgid "Choose encryption mode:" -msgstr "" +msgstr "Choose encryption mode:" #: templates/settings-personal.php:20 templates/settings.php:24 msgid "" @@ -58,13 +58,13 @@ msgstr "" #: templates/settings-personal.php:41 templates/settings.php:60 msgid "None (no encryption at all)" -msgstr "" +msgstr "Ei mitään (ei lainkaan salausta)" #: templates/settings.php:10 msgid "" "Important: Once you selected an encryption mode there is no way to change it" " back" -msgstr "" +msgstr "Tärkeä huomautus: Kun olet valinnut salaustatavan, sitä ei ole mahdollista vaihtaa" #: templates/settings.php:48 msgid "User specific (let the user decide)" diff --git a/l10n/fi_FI/files_external.po b/l10n/fi_FI/files_external.po index c40ca823386..7b2a88bd1b2 100644 --- a/l10n/fi_FI/files_external.po +++ b/l10n/fi_FI/files_external.po @@ -4,15 +4,15 @@ # # Translators: # <ari.takalo@iki.fi>, 2012. -# Jiri Grönroos <jiri.gronroos@iki.fi>, 2012. +# Jiri Grönroos <jiri.gronroos@iki.fi>, 2012-2013. # <tehoratopato@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2012-12-13 00:17+0100\n" -"PO-Revision-Date: 2012-12-11 23:22+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 14:01+0000\n" +"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n" "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -28,11 +28,11 @@ msgstr "Pääsy sallittu" msgid "Error configuring Dropbox storage" msgstr "Virhe Dropbox levyn asetuksia tehtäessä" -#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:40 +#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:41 msgid "Grant access" msgstr "Salli pääsy" -#: js/dropbox.js:73 js/google.js:72 +#: js/dropbox.js:73 js/google.js:73 msgid "Fill out all required fields" msgstr "Täytä kaikki vaaditut kentät" @@ -40,22 +40,22 @@ msgstr "Täytä kaikki vaaditut kentät" msgid "Please provide a valid Dropbox app key and secret." msgstr "" -#: js/google.js:26 js/google.js:73 js/google.js:78 +#: js/google.js:26 js/google.js:74 js/google.js:79 msgid "Error configuring Google Drive storage" msgstr "Virhe Google Drive levyn asetuksia tehtäessä" -#: lib/config.php:434 +#: lib/config.php:405 msgid "" "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares " "is not possible. Please ask your system administrator to install it." -msgstr "" +msgstr "<b>Varoitus:</b> \"smbclient\" ei ole asennettuna. CIFS-/SMB-jakojen liittäminen ei ole mahdollista. Pyydä järjestelmän ylläpitäjää asentamaan smbclient." -#: lib/config.php:435 +#: lib/config.php:406 msgid "" "<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." -msgstr "" +msgstr "<b>Varoitus:</b> PHP:n FTP-tuki ei ole käytössä tai sitä ei ole asennettu. FTP-jakojen liittäminen ei ole mahdollista. Pyydä järjestelmän ylläpitäjää ottamaan FTP-tuki käyttöön." #: templates/settings.php:3 msgid "External Storage" @@ -102,7 +102,7 @@ msgid "Users" msgstr "Käyttäjät" #: templates/settings.php:108 templates/settings.php:109 -#: templates/settings.php:149 templates/settings.php:150 +#: templates/settings.php:144 templates/settings.php:145 msgid "Delete" msgstr "Poista" @@ -114,10 +114,10 @@ msgstr "Ota käyttöön ulkopuoliset tallennuspaikat" msgid "Allow users to mount their own external storage" msgstr "Salli käyttäjien liittää omia erillisiä tallennusvälineitä" -#: templates/settings.php:139 +#: templates/settings.php:136 msgid "SSL root certificates" msgstr "SSL-juurivarmenteet" -#: templates/settings.php:158 +#: templates/settings.php:153 msgid "Import Root Certificate" msgstr "Tuo juurivarmenne" diff --git a/l10n/fi_FI/files_trashbin.po b/l10n/fi_FI/files_trashbin.po new file mode 100644 index 00000000000..3543c5b1193 --- /dev/null +++ b/l10n/fi_FI/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Jiri Grönroos <jiri.gronroos@iki.fi>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fi_FI\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "suorita palautustoiminto" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nimi" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "Poistettu" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 kansio" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} kansiota" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 tiedosto" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} tiedostoa" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Tyhjää täynnä! Roskakorissa ei ole mitään." + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Palauta" diff --git a/l10n/fi_FI/settings.po b/l10n/fi_FI/settings.po index c662e178989..eb214d66683 100644 --- a/l10n/fi_FI/settings.po +++ b/l10n/fi_FI/settings.po @@ -10,9 +10,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 13:58+0000\n" +"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n" "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -78,14 +78,42 @@ msgstr "Käyttäjän tai ryhmän %s lisääminen ei onnistu" msgid "Unable to remove user from group %s" msgstr "Käyttäjän poistaminen ryhmästä %s ei onnistu" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "Sovelluksen päivitys epäonnistui." + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "Päivitä versioon {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Poista käytöstä" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Käytä" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "Odota hetki..." + +#: js/apps.js:84 +msgid "Updating...." +msgstr "Päivitetään..." + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "Virhe sovellusta päivittäessä" + +#: js/apps.js:87 +msgid "Error" +msgstr "Virhe" + +#: js/apps.js:90 +msgid "Updated" +msgstr "Päivitetty" + #: js/personal.js:69 msgid "Saving..." msgstr "Tallennetaan..." @@ -114,6 +142,10 @@ msgstr "Katso sovellussivu osoitteessa apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-lisensoija <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Päivitä" + #: templates/help.php:3 msgid "User Documentation" msgstr "Käyttäjäohjeistus" @@ -231,7 +263,7 @@ msgstr "Kehityksestä on vastannut <a href=\"http://ownCloud.org/contact\" targe #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Kirjautumisnimi" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -255,7 +287,7 @@ msgstr "Muu" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Näyttönimi" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -265,6 +297,14 @@ msgstr "Ryhmän ylläpitäjä" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "vaihda näyttönimi" + +#: templates/users.php:101 +msgid "set new password" +msgstr "aseta uusi salasana" + #: templates/users.php:137 msgid "Default" msgstr "Oletus" diff --git a/l10n/fi_FI/user_ldap.po b/l10n/fi_FI/user_ldap.po index 94f7ad7b4bb..e0a1ecc049e 100644 --- a/l10n/fi_FI/user_ldap.po +++ b/l10n/fi_FI/user_ldap.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Finnish (Finland) (http://www.transifex.com/projects/p/owncloud/language/fi_FI/)\n" "MIME-Version: 1.0\n" @@ -20,6 +20,58 @@ msgstr "" "Language: fi_FI\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Poisto epäonnistui" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -34,165 +86,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Isäntä" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Voit jättää protokollan määrittämättä, paitsi kun vaadit SSL:ää. Aloita silloin ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Oletus DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Voit määrittää käyttäjien ja ryhmien oletus DN:n (distinguished name) 'tarkemmat asetukset'-välilehdeltä " -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "Käyttäjän DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "Asiakasohjelman DN, jolla yhdistäminen tehdään, ts. uid=agent,dc=example,dc=com. Mahdollistaaksesi anonyymin yhteyden, jätä DN ja salasana tyhjäksi." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Salasana" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Jos haluat mahdollistaa anonyymin pääsyn, jätä DN ja Salasana tyhjäksi " -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Login suodatus" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Määrittelee käytettävän suodattimen, kun sisäänkirjautumista yritetään. %%uid korvaa sisäänkirjautumisessa käyttäjätunnuksen." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "käytä %%uid paikanvaraajaa, ts. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Käyttäjien suodatus" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Määrittelee käytettävän suodattimen, kun käyttäjiä haetaan. " -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "ilman paikanvaraustermiä, ts. \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Ryhmien suodatus" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Määrittelee käytettävän suodattimen, kun ryhmiä haetaan. " -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "ilman paikanvaraustermiä, ts. \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Portti" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Oletuskäyttäjäpuu" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Ryhmien juuri" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Ryhmän ja jäsenen assosiaatio (yhteys)" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Käytä TLS:ää" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Älä käytä SSL-yhteyttä varten, se epäonnistuu. " -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Kirjainkoosta piittamaton LDAP-palvelin (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Poista käytöstä SSL-varmenteen vahvistus" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Jos yhteys toimii vain tällä valinnalla, siirrä LDAP-palvelimen SSL-varmenne ownCloud-palvelimellesi." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Ei suositella, käytä vain testausta varten." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "sekunneissa. Muutos tyhjentää välimuistin." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Käyttäjän näytettävän nimen kenttä" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "LDAP-attribuutti, jota käytetään käyttäjän ownCloud-käyttäjänimenä " -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Oletuskäyttäjäpuu" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Ryhmän \"näytettävä nimi\"-kenttä" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "LDAP-attribuutti, jota käytetään luomaan ryhmän ownCloud-nimi" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Ryhmien juuri" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Ryhmän ja jäsenen assosiaatio (yhteys)" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "tavuissa" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "sekunneissa. Muutos tyhjentää välimuistin." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Jätä tyhjäksi käyttäjänimi (oletusasetus). Muutoin anna LDAP/AD-atribuutti." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Ohje" diff --git a/l10n/fr/core.po b/l10n/fr/core.po index 14e68eae7e2..ca18cbb340c 100644 --- a/l10n/fr/core.po +++ b/l10n/fr/core.po @@ -6,6 +6,7 @@ # Christophe Lherieau <skimpax@gmail.com>, 2012-2013. # David Basquin <dba@alternalease.fr>, 2013. # <dba@alternalease.fr>, 2013. +# Fabian Lemaître <ptit.boogy@gmail.com>, 2013. # <fkhannouf@me.com>, 2012. # <florentin.lemoal@gmail.com>, 2012. # Guillaume Paumier <guillom.pom@gmail.com>, 2012. @@ -19,9 +20,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 14:30+0000\n" +"Last-Translator: ptit_boogy <ptit.boogy@gmail.com>\n" "Language-Team: French (http://www.transifex.com/projects/p/owncloud/language/fr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -167,59 +168,59 @@ msgstr "novembre" msgid "December" msgstr "décembre" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Paramètres" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "il y a quelques secondes" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "il y a une minute" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "il y a {minutes} minutes" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "Il y a une heure" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "Il y a {hours} heures" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "aujourd'hui" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "hier" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "il y a {days} jours" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "le mois dernier" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "Il y a {months} mois" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "il y a plusieurs mois" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "l'année dernière" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "il y a plusieurs années" @@ -264,11 +265,11 @@ msgstr "Le fichier requis {file} n'est pas installé !" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Partager" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Partagé" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -552,7 +553,7 @@ msgstr "Terminer l'installation" msgid "web services under your control" msgstr "services web sous votre contrôle" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Se déconnecter" diff --git a/l10n/fr/files.po b/l10n/fr/files.po index dd7d5c26359..5a5f892a67e 100644 --- a/l10n/fr/files.po +++ b/l10n/fr/files.po @@ -3,6 +3,7 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# Cédric MARTIN <sid50.martin@gmail.com>, 2013. # Christophe Lherieau <skimpax@gmail.com>, 2012-2013. # Cyril Glapa <kyriog@gmail.com>, 2012. # David Basquin <dba@alternalease.fr>, 2013. @@ -20,9 +21,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 09:26+0000\n" -"Last-Translator: dbasquin <dba@alternalease.fr>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 14:30+0000\n" +"Last-Translator: Flywall <sid50.martin@gmail.com>\n" "Language-Team: French (http://www.transifex.com/projects/p/owncloud/language/fr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -30,20 +31,6 @@ msgstr "" "Language: fr\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Impossible de déplacer %s - Un fichier possédant ce nom existe déjà " - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Impossible de déplacer %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Impossible de renommer le fichier" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Aucun fichier n'a été chargé. Erreur inconnue" @@ -79,11 +66,11 @@ msgstr "Il manque un répertoire temporaire" msgid "Failed to write to disk" msgstr "Erreur d'écriture sur le disque" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "Plus assez d'espace de stockage disponible" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Espace disponible insuffisant" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Dossier invalide." @@ -91,15 +78,15 @@ msgstr "Dossier invalide." msgid "Files" msgstr "Fichiers" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Ne plus partager" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Supprimer" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Renommer" @@ -123,7 +110,7 @@ msgstr "annuler" msgid "replaced {new_name}" msgstr "{new_name} a été remplacé" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "annuler" @@ -131,13 +118,9 @@ msgstr "annuler" msgid "replaced {new_name} with {old_name}" msgstr "{new_name} a été remplacé par {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "Fichiers non partagés : {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "Fichiers supprimés : {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "effectuer l'opération de suppression" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -161,86 +144,78 @@ msgstr "Votre espage de stockage est plein, les fichiers ne peuvent plus être t msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "Votre espace de stockage est presque plein ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Votre téléchargement est cours de préparation. Ceci peut nécessiter un certain temps si les fichiers sont volumineux." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Impossible de charger vos fichiers car il s'agit d'un dossier ou le fichier fait 0 octet." -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Erreur de chargement" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Fermer" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "En cours" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 fichier en cours de téléchargement" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} fichiers téléversés" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Chargement annulé." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "L'envoi du fichier est en cours. Quitter cette page maintenant annulera l'envoi du fichier." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "L'URL ne peut-être vide" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Nom de dossier invalide. L'utilisation du mot 'Shared' est réservée à Owncloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} fichiers indexés" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "erreur lors de l'indexation" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nom" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Taille" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Modifié" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 dossier" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} dossiers" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 fichier" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} fichiers" @@ -296,32 +271,40 @@ msgstr "Dossier" msgid "From link" msgstr "Depuis le lien" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "Corbeille" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Annuler l'envoi" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Il n'y a rien ici ! Envoyez donc quelque chose :)" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Télécharger" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Fichier trop volumineux" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Les fichiers que vous essayez d'envoyer dépassent la taille maximale permise par ce serveur." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Les fichiers sont en cours d'analyse, veuillez patienter." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Analyse en cours" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Mise à niveau du cache du système de fichier" diff --git a/l10n/fr/files_trashbin.po b/l10n/fr/files_trashbin.po new file mode 100644 index 00000000000..d8a8b2c7926 --- /dev/null +++ b/l10n/fr/files_trashbin.po @@ -0,0 +1,56 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Cédric MARTIN <sid50.martin@gmail.com>, 2013. +# Romain DEP. <rom1dep@gmail.com>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: French (http://www.transifex.com/projects/p/owncloud/language/fr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "effectuer l'opération de restauration" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nom" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "Effacé" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 dossier" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} dossiers" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 fichier" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} fichiers" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Il n'y a rien ici. Votre corbeille est vide !" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Restaurer" diff --git a/l10n/fr/settings.po b/l10n/fr/settings.po index c2827253a3b..99f4d45ce83 100644 --- a/l10n/fr/settings.po +++ b/l10n/fr/settings.po @@ -4,6 +4,7 @@ # # Translators: # Brice <bmaron@gmail.com>, 2012. +# Cédric MARTIN <sid50.martin@gmail.com>, 2013. # Cyril Glapa <kyriog@gmail.com>, 2012. # <dba@alternalease.fr>, 2013. # <fboulogne@april.org>, 2011. @@ -22,8 +23,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: French (http://www.transifex.com/projects/p/owncloud/language/fr/)\n" "MIME-Version: 1.0\n" @@ -90,14 +91,42 @@ msgstr "Impossible d'ajouter l'utilisateur au groupe %s" msgid "Unable to remove user from group %s" msgstr "Impossible de supprimer l'utilisateur du groupe %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "Impossible de mettre à jour l'application" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "Mettre à jour vers {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Désactiver" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Activer" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "Veuillez patienter…" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "Erreur lors de la mise à jour de l'application" + +#: js/apps.js:87 +msgid "Error" +msgstr "Erreur" + +#: js/apps.js:90 +msgid "Updated" +msgstr "Mise à jour effectuée avec succès" + #: js/personal.js:69 msgid "Saving..." msgstr "Sauvegarde..." @@ -126,6 +155,10 @@ msgstr "Voir la page des applications à l'url apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "Distribué sous licence <span class=\"licence\"></span>, par <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Mettre à jour" + #: templates/help.php:3 msgid "User Documentation" msgstr "Documentation utilisateur" @@ -243,7 +276,7 @@ msgstr "Développé par la <a href=\"http://ownCloud.org/contact\" target=\"_bla #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Nom de la connexion" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -267,7 +300,7 @@ msgstr "Autre" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Nom affiché" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -277,6 +310,14 @@ msgstr "Groupe Admin" msgid "Storage" msgstr "Support de stockage" +#: templates/users.php:97 +msgid "change display name" +msgstr "Changer le nom affiché" + +#: templates/users.php:101 +msgid "set new password" +msgstr "Changer le mot de passe" + #: templates/users.php:137 msgid "Default" msgstr "Défaut" diff --git a/l10n/fr/user_ldap.po b/l10n/fr/user_ldap.po index 1beebaaf58f..33a6365c90e 100644 --- a/l10n/fr/user_ldap.po +++ b/l10n/fr/user_ldap.po @@ -13,9 +13,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-25 00:05+0100\n" -"PO-Revision-Date: 2013-01-24 01:50+0000\n" -"Last-Translator: Romain DEP. <rom1dep@gmail.com>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: French (http://www.transifex.com/projects/p/owncloud/language/fr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -23,6 +23,58 @@ msgstr "" "Language: fr\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "Échec de la suppression de la configuration du serveur" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "La configuration est valide est la connexion peut être établie !" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "La configuration est valide, mais le lien ne peut être établi. Veuillez vérifier les paramètres du serveur ainsi que vos identifiants de connexion." + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "La configuration est invalide. Veuillez vous référer aux fichiers de journaux ownCloud pour plus d'information." + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "La suppression a échoué" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "Récupérer les paramètres depuis une configuration récente du serveur ?" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "Garder ces paramètres ?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "Impossible d'ajouter la configuration du serveur." + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "Test de connexion réussi" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "Le test de connexion a échoué" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "Êtes-vous vraiment sûr de vouloir effacer la configuration actuelle du serveur ?" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "Confirmer la suppression" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -37,165 +89,227 @@ msgid "" msgstr "<b>Attention :</b> Le module php LDAP n'est pas installé, par conséquent cette extension ne pourra fonctionner. Veuillez contacter votre administrateur système afin qu'il l'installe." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "Configuration du serveur" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "Ajouter une configuration du serveur" + +#: templates/settings.php:21 msgid "Host" msgstr "Hôte" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Vous pouvez omettre le protocole, sauf si vous avez besoin de SSL. Dans ce cas préfixez avec ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "DN Racine" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "Un DN racine par ligne" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Vous pouvez spécifier les DN Racines de vos utilisateurs et groupes via l'onglet Avancé" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN Utilisateur (Autorisé à consulter l'annuaire)" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "DN de l'utilisateur client pour lequel la liaison doit se faire, par exemple uid=agent,dc=example,dc=com. Pour un accès anonyme, laisser le DN et le mot de passe vides." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Mot de passe" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Pour un accès anonyme, laisser le DN Utilisateur et le mot de passe vides." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Modèle d'authentification utilisateurs" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Définit le motif à appliquer, lors d'une tentative de connexion. %%uid est remplacé par le nom d'utilisateur lors de la connexion." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "veuillez utiliser le champ %%uid , ex.: \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Filtre d'utilisateurs" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Définit le filtre à appliquer lors de la récupération des utilisateurs." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "sans élément de substitution, par exemple \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Filtre de groupes" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Définit le filtre à appliquer lors de la récupération des groupes." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "sans élément de substitution, par exemple \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "Configuration active" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "Lorsque non cochée, la configuration sera ignorée." + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "DN racine de l'arbre utilisateurs" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "Serveur de backup (réplique)" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "Un DN racine utilisateur par ligne" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "Fournir un serveur de backup optionnel. Il doit s'agir d'une réplique du serveur LDAP/AD principal." -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "DN racine de l'arbre groupes" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "Port du serveur de backup (réplique)" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "Un DN racine groupe par ligne" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "Désactiver le serveur principal" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Association groupe-membre" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "Lorsqu'activé, ownCloud ne se connectera qu'au serveur répliqué." -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Utiliser TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Ne pas utiliser pour les connexions SSL, car cela échouera." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Serveur LDAP insensible à la casse (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Désactiver la validation du certificat SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Si la connexion ne fonctionne qu'avec cette option, importez le certificat SSL du serveur LDAP dans le serveur ownCloud." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Non recommandé, utilisation pour tests uniquement." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "en secondes. Tout changement vide le cache." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Champ \"nom d'affichage\" de l'utilisateur" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "L'attribut LDAP utilisé pour générer les noms d'utilisateurs d'ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "DN racine de l'arbre utilisateurs" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Un DN racine utilisateur par ligne" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "Recherche des attributs utilisateur" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "Optionnel, un attribut par ligne" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Champ \"nom d'affichage\" du groupe" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "L'attribut LDAP utilisé pour générer les noms de groupes d'ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "DN racine de l'arbre groupes" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Un DN racine groupe par ligne" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "Recherche des attributs du groupe" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Association groupe-membre" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "en octets" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "en secondes. Tout changement vide le cache." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Laisser vide " -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Aide" diff --git a/l10n/gl/core.po b/l10n/gl/core.po index e2701a3713b..227dd8bf060 100644 --- a/l10n/gl/core.po +++ b/l10n/gl/core.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n" "MIME-Version: 1.0\n" @@ -158,59 +158,59 @@ msgstr "novembro" msgid "December" msgstr "decembro" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Configuracións" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "segundos atrás" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "hai 1 minuto" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "hai {minutes} minutos" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "hai 1 hora" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "hai {hours} horas" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "hoxe" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "onte" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "hai {days} dÃas" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "último mes" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "hai {months} meses" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "meses atrás" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "último ano" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "anos atrás" @@ -255,7 +255,7 @@ msgstr "Non está instalado o ficheiro {file} que se precisa" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Compartir" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -543,7 +543,7 @@ msgstr "Rematar a configuración" msgid "web services under your control" msgstr "servizos web baixo o seu control" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Desconectar" diff --git a/l10n/gl/files.po b/l10n/gl/files.po index a303b105799..020232e7f37 100644 --- a/l10n/gl/files.po +++ b/l10n/gl/files.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n" "MIME-Version: 1.0\n" @@ -19,20 +19,6 @@ msgstr "" "Language: gl\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Non se moveu %s - Xa existe un ficheiro con ese nome." - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Non se puido mover %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Non se pode renomear o ficheiro" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Non se subiu ningún ficheiro. Erro descoñecido." @@ -68,11 +54,11 @@ msgstr "Falta un cartafol temporal" msgid "Failed to write to disk" msgstr "Erro ao escribir no disco" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "O espazo dispoñÃbel é insuficiente" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "O directorio é incorrecto." @@ -80,15 +66,15 @@ msgstr "O directorio é incorrecto." msgid "Files" msgstr "Ficheiros" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Deixar de compartir" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Eliminar" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Mudar o nome" @@ -112,7 +98,7 @@ msgstr "cancelar" msgid "replaced {new_name}" msgstr "substituÃr {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "desfacer" @@ -120,13 +106,9 @@ msgstr "desfacer" msgid "replaced {new_name} with {old_name}" msgstr "substituÃr {new_name} polo {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "{files} sen compartir" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "{files} eliminados" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -150,86 +132,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Non se puido subir o ficheiro pois ou é un directorio ou ten 0 bytes" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Erro na subida" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Pechar" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Pendentes" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 ficheiro subÃndose" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} ficheiros subÃndose" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Subida cancelada." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "A subida do ficheiro está en curso. SaÃr agora da páxina cancelará a subida." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL non pode quedar baleiro." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Nome de cartafol non válido. O uso de 'Shared' está reservado por Owncloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} ficheiros escaneados" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "erro mentres analizaba" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nome" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Tamaño" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Modificado" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 cartafol" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} cartafoles" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 ficheiro" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} ficheiros" @@ -285,32 +259,40 @@ msgstr "Cartafol" msgid "From link" msgstr "Dende a ligazón" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Cancelar a subida" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Nada por aquÃ. EnvÃa algo." -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Descargar" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "EnvÃo demasiado grande" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Os ficheiros que trata de subir superan o tamaño máximo permitido neste servidor" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Estanse analizando os ficheiros. Agarda." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Análise actual" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/gl/files_trashbin.po b/l10n/gl/files_trashbin.po new file mode 100644 index 00000000000..be7e4127d3a --- /dev/null +++ b/l10n/gl/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: gl\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nome" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 cartafol" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} cartafoles" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 ficheiro" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} ficheiros" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Restablecer" diff --git a/l10n/gl/settings.po b/l10n/gl/settings.po index d5af9d142a9..ccfa410e29f 100644 --- a/l10n/gl/settings.po +++ b/l10n/gl/settings.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n" "MIME-Version: 1.0\n" @@ -78,14 +78,42 @@ msgstr "Non é posÃbel engadir o usuario ao grupo %s" msgid "Unable to remove user from group %s" msgstr "Non é posÃbel eliminar o usuario do grupo %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Desactivar" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Activar" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Erro" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Gardando..." @@ -114,6 +142,10 @@ msgstr "Consulte a páxina do aplicativo en apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licenciado por<span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Actualizar" + #: templates/help.php:3 msgid "User Documentation" msgstr "Documentación do usuario" @@ -265,6 +297,14 @@ msgstr "Grupo Admin" msgid "Storage" msgstr "Almacenamento" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "Predeterminado" diff --git a/l10n/gl/user_ldap.po b/l10n/gl/user_ldap.po index 66d3c446382..fe74411b941 100644 --- a/l10n/gl/user_ldap.po +++ b/l10n/gl/user_ldap.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n" "MIME-Version: 1.0\n" @@ -19,6 +19,58 @@ msgstr "" "Language: gl\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Fallou o borrado" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -33,165 +85,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Servidor" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Pode omitir o protocolo agás que precise de SSL. Nese caso comece con ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "DN base" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Pode especificar a DN base para usuarios e grupos na lapela de «Avanzado»" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN do usuario" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "O DN do cliente do usuario co que hai que estabelecer unha conexión, p.ex uid=axente, dc=exemplo, dc=com. Para o acceso anónimo deixe o DN e o contrasinal baleiros." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Contrasinal" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Para o acceso anónimo deixe o DN e o contrasinal baleiros." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filtro de acceso de usuarios" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Define o filtro que se aplica cando se intenta o acceso. %%uid substitúe o nome de usuario e a acción de acceso." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "usar a marca de posición %%uid, p.ex «uid=%%uid»" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Filtro da lista de usuarios" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Define o filtro a aplicar cando se recompilan os usuarios." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "sen ningunha marca de posición, como p.ex «objectClass=persoa»." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Filtro de grupo" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Define o filtro a aplicar cando se recompilan os grupos." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "sen ningunha marca de posición, como p.ex «objectClass=grupoPosix»." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Porto" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Base da árbore de usuarios" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Base da árbore de grupo" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Asociación de grupos e membros" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Usar TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Non empregalo para conexións SSL: fallará." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Servidor LDAP que non distingue entre maiúsculas e minúsculas (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Desactiva a validación do certificado SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Se a conexión só funciona con esta opción importa o certificado SSL do servidor LDAP no seu servidor ownCloud." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Non se recomenda. Só para probas." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "en segundos. Calquera cambio baleira a caché." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Campo de mostra do nome de usuario" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "O atributo LDAP a empregar para xerar o nome de usuario de ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Base da árbore de usuarios" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Campo de mostra do nome de grupo" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "O atributo LDAP úsase para xerar os nomes dos grupos de ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Base da árbore de grupo" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Asociación de grupos e membros" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "en bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "en segundos. Calquera cambio baleira a caché." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Deixar baleiro para o nome de usuario (predeterminado). Noutro caso, especifique un atributo LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Axuda" diff --git a/l10n/he/core.po b/l10n/he/core.po index c3ae441a83c..8a781cb282f 100644 --- a/l10n/he/core.po +++ b/l10n/he/core.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Hebrew (http://www.transifex.com/projects/p/owncloud/language/he/)\n" "MIME-Version: 1.0\n" @@ -160,59 +160,59 @@ msgstr "× ×•×‘×ž×‘×¨" msgid "December" msgstr "דצמבר" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "הגדרות" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "×©× ×™×•×ª" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "×œ×¤× ×™ דקה ×חת" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "×œ×¤× ×™ {minutes} דקות" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "×œ×¤× ×™ שעה" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "×œ×¤× ×™ {hours} שעות" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "היו×" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "×תמול" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "×œ×¤× ×™ {days} ימי×" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "חודש שעבר" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "×œ×¤× ×™ {months} חודשי×" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "חודשי×" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "×©× ×” שעברה" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "×©× ×™×" @@ -257,7 +257,7 @@ msgstr "הקובץ ×”× ×“×¨×© {file} ××™× ×• מותקן!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "שתף" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -545,7 +545,7 @@ msgstr "×¡×™×•× ×”×ª×§× ×”" msgid "web services under your control" msgstr "שירותי רשת בשליטתך" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "×”×ª× ×ª×§×•×ª" diff --git a/l10n/he/files.po b/l10n/he/files.po index 60b53f30b7d..ed74dc9066f 100644 --- a/l10n/he/files.po +++ b/l10n/he/files.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Hebrew (http://www.transifex.com/projects/p/owncloud/language/he/)\n" "MIME-Version: 1.0\n" @@ -21,20 +21,6 @@ msgstr "" "Language: he\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "×œ× ×”×•×¢×œ×” קובץ. טעות בלתי מזוהה." @@ -70,11 +56,11 @@ msgstr "תיקייה ×–×ž× ×™×ª חסרה" msgid "Failed to write to disk" msgstr "הכתיבה ×œ×›×•× ×Ÿ × ×›×©×œ×”" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -82,15 +68,15 @@ msgstr "" msgid "Files" msgstr "קבצי×" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "הסר שיתוף" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "מחיקה" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "×©×™× ×•×™ ש×" @@ -114,7 +100,7 @@ msgstr "ביטול" msgid "replaced {new_name}" msgstr "{new_name} הוחלף" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "ביטול" @@ -122,13 +108,9 @@ msgstr "ביטול" msgid "replaced {new_name} with {old_name}" msgstr "{new_name} הוחלף ב־{old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "בוטל ×©×™×ª×•×¤× ×©×œ {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "{files} × ×ž×—×§×•" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -152,86 +134,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "×œ× ×™×›×•×œ להעלות ×ת הקובץ מכיוון שזו תקיה ×ו שמשקל הקובץ 0 בתי×" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "שגי×ת העל××”" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "סגירה" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "ממתין" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "קובץ ×חד × ×©×œ×—" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} ×§×‘×¦×™× × ×©×œ×—×™×" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "ההעל××” בוטלה." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "מתבצעת כעת העל×ת קבצי×. עזיבה של העמוד תבטל ×ת ההעל××”." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "קישור ××™× ×• יכול להיות ריק." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} ×§×‘×¦×™× × ×¡×¨×§×•" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "×ירעה שגי××” במהלך הסריקה" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "ש×" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "גודל" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "זמן ×©×™× ×•×™" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "תיקייה ×חת" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} תיקיות" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "קובץ ×חד" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} קבצי×" @@ -287,32 +261,40 @@ msgstr "תיקייה" msgid "From link" msgstr "מקישור" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "ביטול ההעל××”" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "×ין ×›×ן ×©×•× ×“×‘×¨. ×ולי ×‘×¨×¦×•× ×š להעלות משהו?" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "הורדה" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "העל××” גדולה מידי" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "×”×§×‘×¦×™× ×©× ×™×¡×™×ª להעלות חרגו מהגודל המקסימלי להעל×ת ×§×‘×¦×™× ×¢×œ שרת ×–×”." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "×”×§×‘×¦×™× × ×¡×¨×§×™×, × × ×œ×”×ž×ª×™×Ÿ." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "הסריקה ×”× ×•×›×—×™×ª" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/he/files_trashbin.po b/l10n/he/files_trashbin.po new file mode 100644 index 00000000000..e2f9372e88e --- /dev/null +++ b/l10n/he/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Hebrew (http://www.transifex.com/projects/p/owncloud/language/he/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: he\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "ש×" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "תיקייה ×חת" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} תיקיות" + +#: js/trash.js:120 +msgid "1 file" +msgstr "קובץ ×חד" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} קבצי×" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/he/settings.po b/l10n/he/settings.po index 53f1026fb77..cceb07b9d17 100644 --- a/l10n/he/settings.po +++ b/l10n/he/settings.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Hebrew (http://www.transifex.com/projects/p/owncloud/language/he/)\n" "MIME-Version: 1.0\n" @@ -79,14 +79,42 @@ msgstr "×œ× × ×™×ª×Ÿ להוסיף משתמש לקבוצה %s" msgid "Unable to remove user from group %s" msgstr "×œ× × ×™×ª×Ÿ להסיר משתמש מהקבוצה %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "בטל" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "הפעל" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "שגי××”" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "שומר.." @@ -115,6 +143,10 @@ msgstr "צפה בעמוד ×”×™×©×•× ×‘ apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "ברישיון <span class=\"licence\"></span>לטובת <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "עדכון" + #: templates/help.php:3 msgid "User Documentation" msgstr "תיעוד משתמש" @@ -266,6 +298,14 @@ msgstr "×ž× ×”×œ הקבוצה" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/he/user_ldap.po b/l10n/he/user_ldap.po index ec42e5a0854..54ede62468b 100644 --- a/l10n/he/user_ldap.po +++ b/l10n/he/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Hebrew (http://www.transifex.com/projects/p/owncloud/language/he/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: he\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "מחיקה × ×›×©×œ×”" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "מ×רח" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN משתמש" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "סיסמ×" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "לגישה ×× ×•× ×™×ž×™×ª, הש×ר ×ת ×”DM ×•×”×¡×™×¡×ž× ×¨×™×§×™×." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "×¡× ×Ÿ ×›× ×™×¡×ª משתמש" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "×¡× ×Ÿ רשימת משתמשי×" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "×¡× ×Ÿ קבוצה" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "×‘×©× ×™×•×ª. ×©×™× ×•×™ מרוקן ×ת המטמון." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "בבתי×" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "×‘×©× ×™×•×ª. ×©×™× ×•×™ מרוקן ×ת המטמון." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "עזרה" diff --git a/l10n/hi/files.po b/l10n/hi/files.po index 0c74c7074fb..c56da3dc54c 100644 --- a/l10n/hi/files.po +++ b/l10n/hi/files.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-01-31 17:02+0100\n" +"PO-Revision-Date: 2013-01-31 16:02+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Hindi (http://www.transifex.com/projects/p/owncloud/language/hi/)\n" "MIME-Version: 1.0\n" @@ -17,20 +17,6 @@ msgstr "" "Language: hi\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -66,11 +52,11 @@ msgstr "" msgid "Failed to write to disk" msgstr "" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -78,15 +64,15 @@ msgstr "" msgid "Files" msgstr "" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "" @@ -110,7 +96,7 @@ msgstr "" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "" @@ -118,12 +104,8 @@ msgstr "" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -148,86 +130,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -283,32 +257,40 @@ msgstr "" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/hi/files_trashbin.po b/l10n/hi/files_trashbin.po new file mode 100644 index 00000000000..ecec4c0cae6 --- /dev/null +++ b/l10n/hi/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Hindi (http://www.transifex.com/projects/p/owncloud/language/hi/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: hi\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/hi/settings.po b/l10n/hi/settings.po index 9af2a151483..58343582a26 100644 --- a/l10n/hi/settings.po +++ b/l10n/hi/settings.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Hindi (http://www.transifex.com/projects/p/owncloud/language/hi/)\n" "MIME-Version: 1.0\n" @@ -75,14 +75,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "" @@ -111,6 +139,10 @@ msgstr "" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -262,6 +294,14 @@ msgstr "" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/hi/user_ldap.po b/l10n/hi/user_ldap.po index 012f8d3f3aa..7eb23a9a108 100644 --- a/l10n/hi/user_ldap.po +++ b/l10n/hi/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Hindi (http://www.transifex.com/projects/p/owncloud/language/hi/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: hi\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "" diff --git a/l10n/hr/core.po b/l10n/hr/core.po index 2959d09753c..30f2d56afb1 100644 --- a/l10n/hr/core.po +++ b/l10n/hr/core.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Croatian (http://www.transifex.com/projects/p/owncloud/language/hr/)\n" "MIME-Version: 1.0\n" @@ -159,59 +159,59 @@ msgstr "Studeni" msgid "December" msgstr "Prosinac" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Postavke" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "sekundi prije" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "danas" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "juÄer" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "proÅ¡li mjesec" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "mjeseci" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "proÅ¡lu godinu" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "godina" @@ -256,7 +256,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Podijeli" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -544,7 +544,7 @@ msgstr "ZavrÅ¡i postavljanje" msgid "web services under your control" msgstr "web usluge pod vaÅ¡om kontrolom" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Odjava" diff --git a/l10n/hr/files.po b/l10n/hr/files.po index edf64baef15..7a03f6b1977 100644 --- a/l10n/hr/files.po +++ b/l10n/hr/files.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Croatian (http://www.transifex.com/projects/p/owncloud/language/hr/)\n" "MIME-Version: 1.0\n" @@ -20,20 +20,6 @@ msgstr "" "Language: hr\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -69,11 +55,11 @@ msgstr "Nedostaje privremena mapa" msgid "Failed to write to disk" msgstr "Neuspjelo pisanje na disk" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -81,15 +67,15 @@ msgstr "" msgid "Files" msgstr "Datoteke" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Prekini djeljenje" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "BriÅ¡i" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Promjeni ime" @@ -113,7 +99,7 @@ msgstr "odustani" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "vrati" @@ -121,12 +107,8 @@ msgstr "vrati" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -151,86 +133,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Nemoguće poslati datoteku jer je prazna ili je direktorij" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "PogreÅ¡ka pri slanju" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Zatvori" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "U tijeku" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 datoteka se uÄitava" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Slanje poniÅ¡teno." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "UÄitavanje datoteke. NapuÅ¡tanjem stranice će prekinuti uÄitavanje." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "greÄka prilikom skeniranja" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Naziv" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "VeliÄina" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Zadnja promjena" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -286,32 +260,40 @@ msgstr "mapa" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Prekini upload" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Nema niÄega u ovoj mapi. PoÅ¡alji neÅ¡to!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Preuzmi" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Prijenos je preobiman" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Datoteke koje pokuÅ¡avate prenijeti prelaze maksimalnu veliÄinu za prijenos datoteka na ovom poslužitelju." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Datoteke se skeniraju, molimo priÄekajte." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Trenutno skeniranje" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/hr/files_trashbin.po b/l10n/hr/files_trashbin.po new file mode 100644 index 00000000000..0665783c041 --- /dev/null +++ b/l10n/hr/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Croatian (http://www.transifex.com/projects/p/owncloud/language/hr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: hr\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Ime" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/hr/settings.po b/l10n/hr/settings.po index a8be98c5afb..af697fb7817 100644 --- a/l10n/hr/settings.po +++ b/l10n/hr/settings.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Croatian (http://www.transifex.com/projects/p/owncloud/language/hr/)\n" "MIME-Version: 1.0\n" @@ -78,14 +78,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "IskljuÄi" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "UkljuÄi" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "GreÅ¡ka" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Spremanje..." @@ -114,6 +142,10 @@ msgstr "Pogledajte stranicu s aplikacijama na apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -265,6 +297,14 @@ msgstr "Grupa Admin" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/hr/user_ldap.po b/l10n/hr/user_ldap.po index 25cb374e51f..f1c4515d4d2 100644 --- a/l10n/hr/user_ldap.po +++ b/l10n/hr/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 21:57+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Croatian (http://www.transifex.com/projects/p/owncloud/language/hr/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: hr\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Pomoć" diff --git a/l10n/hu_HU/core.po b/l10n/hu_HU/core.po index 4a9be1afdf6..a30b6c37d61 100644 --- a/l10n/hu_HU/core.po +++ b/l10n/hu_HU/core.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n" "MIME-Version: 1.0\n" @@ -160,59 +160,59 @@ msgstr "november" msgid "December" msgstr "december" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "BeállÃtások" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "pár másodperce" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 perce" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} perce" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 órája" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} órája" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "ma" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "tegnap" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} napja" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "múlt hónapban" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} hónapja" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "több hónapja" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "tavaly" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "több éve" @@ -257,7 +257,7 @@ msgstr "A szükséges fájl: {file} nincs telepÃtve!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Megosztás" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -545,7 +545,7 @@ msgstr "A beállÃtások befejezése" msgid "web services under your control" msgstr "webszolgáltatások saját kézben" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Kilépés" diff --git a/l10n/hu_HU/files.po b/l10n/hu_HU/files.po index d5983f63946..595e4cd8217 100644 --- a/l10n/hu_HU/files.po +++ b/l10n/hu_HU/files.po @@ -14,9 +14,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-29 00:04+0100\n" -"PO-Revision-Date: 2013-01-28 08:37+0000\n" -"Last-Translator: akoscomp <nagy.akos@libreoffice.ro>\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -24,20 +24,6 @@ msgstr "" "Language: hu_HU\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "%s áthelyezése nem sikerült - már létezik másik fájl ezzel a névvel" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Nem sikerült %s áthelyezése" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Nem lehet átnevezni a fájlt" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Nem történt feltöltés. Ismeretlen hiba" @@ -73,11 +59,11 @@ msgstr "Hiányzik egy ideiglenes mappa" msgid "Failed to write to disk" msgstr "Nem sikerült a lemezre történÅ‘ Ãrás" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "Nincs elég szabad hely." +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Nincs elég szabad hely" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Érvénytelen mappa." @@ -85,15 +71,15 @@ msgstr "Érvénytelen mappa." msgid "Files" msgstr "Fájlok" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Megosztás visszavonása" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Törlés" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Ãtnevezés" @@ -117,7 +103,7 @@ msgstr "mégse" msgid "replaced {new_name}" msgstr "a(z) {new_name} állományt kicseréltük" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "visszavonás" @@ -125,13 +111,9 @@ msgstr "visszavonás" msgid "replaced {new_name} with {old_name}" msgstr "{new_name} fájlt kicseréltük ezzel: {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "{files} fájl megosztása visszavonva" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "{files} fájl törölve" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -155,86 +137,78 @@ msgstr "A tároló tele van, a fájlok nem frissÃthetÅ‘ek vagy szinkronizálhat msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "A tároló majdnem tele van ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Készül a letöltendÅ‘ állomány. Ez eltarthat egy ideig, ha nagyok a fájlok." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Nem tölthetÅ‘ fel, mert mappa volt, vagy 0 byte méretű" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Feltöltési hiba" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Bezárás" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Folyamatban" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 fájl töltÅ‘dik föl" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} fájl töltÅ‘dik föl" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "A feltöltést megszakÃtottuk." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Fájlfeltöltés van folyamatban. Az oldal elhagyása megszakÃtja a feltöltést." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "Az URL nem lehet semmi." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Érvénytelen mappanév. A név használata csak a Owncloud számára lehetséges." -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} fájlt találtunk" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "Hiba a fájllista-ellenÅ‘rzés során" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Név" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Méret" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "MódosÃtva" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 mappa" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} mappa" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 fájl" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} fájl" @@ -290,32 +264,40 @@ msgstr "Mappa" msgid "From link" msgstr "Feltöltés linkrÅ‘l" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "A feltöltés megszakÃtása" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Itt nincs semmi. Töltsön fel valamit!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Letöltés" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "A feltöltés túl nagy" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "A feltöltendÅ‘ állományok mérete meghaladja a kiszolgálón megengedett maximális méretet." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "A fájllista ellenÅ‘rzése zajlik, kis türelmet!" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "EllenÅ‘rzés alatt" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/hu_HU/files_trashbin.po b/l10n/hu_HU/files_trashbin.po new file mode 100644 index 00000000000..5cabef3a633 --- /dev/null +++ b/l10n/hu_HU/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: hu_HU\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Név" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 mappa" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} mappa" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 fájl" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} fájl" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "VisszaállÃtás" diff --git a/l10n/hu_HU/settings.po b/l10n/hu_HU/settings.po index 5aa7fcfb013..4be00602dd8 100644 --- a/l10n/hu_HU/settings.po +++ b/l10n/hu_HU/settings.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n" "MIME-Version: 1.0\n" @@ -78,14 +78,42 @@ msgstr "A felhasználó nem adható hozzá ehhez a csoporthoz: %s" msgid "Unable to remove user from group %s" msgstr "A felhasználó nem távolÃtható el ebbÅ‘l a csoportból: %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Letiltás" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Engedélyezés" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Hiba" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Mentés..." @@ -114,6 +142,10 @@ msgstr "Lásd apps.owncloud.com, alkalmazások oldal" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-a jogtuladonos <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "FrissÃtés" + #: templates/help.php:3 msgid "User Documentation" msgstr "Felhasználói leÃrás" @@ -265,6 +297,14 @@ msgstr "Csoportadminisztrátor" msgid "Storage" msgstr "Tárhely" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "Alapértelmezett" diff --git a/l10n/hu_HU/user_ldap.po b/l10n/hu_HU/user_ldap.po index 86496480614..83d3b7c227e 100644 --- a/l10n/hu_HU/user_ldap.po +++ b/l10n/hu_HU/user_ldap.po @@ -9,9 +9,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-20 00:05+0100\n" -"PO-Revision-Date: 2013-01-19 15:57+0000\n" -"Last-Translator: Laszlo Tornoci <torlasz@gmail.com>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Hungarian (Hungary) (http://www.transifex.com/projects/p/owncloud/language/hu_HU/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,6 +19,58 @@ msgstr "" "Language: hu_HU\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "A törlés nem sikerült" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -33,165 +85,227 @@ msgid "" msgstr "<b>Figyelmeztetés:</b> Az LDAP PHP modul nincs telepÃtve, ezért ez az alrendszer nem fog működni. Kérje meg a rendszergazdát, hogy telepÃtse!" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Kiszolgáló" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "A protokoll elÅ‘tag elhagyható, kivéve, ha SSL-t kÃván használni. Ebben az esetben kezdje Ãgy: ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "DN-gyökér" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "Soronként egy DN-gyökér" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "A Haladó fülre kattintva külön DN-gyökér állÃtható be a felhasználók és a csoportok számára" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "A kapcsolódó felhasználó DN-je" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "Annak a felhasználónak a DN-je, akinek a nevében bejelentkezve kapcsolódunk a kiszolgálóhoz, pl. uid=agent,dc=example,dc=com. Bejelentkezés nélküli eléréshez ne töltse ki a DN és Jelszó mezÅ‘ket!" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Jelszó" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Bejelentkezés nélküli eléréshez ne töltse ki a DN és Jelszó mezÅ‘ket!" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "SzűrÅ‘ a bejelentkezéshez" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Ez a szűrÅ‘ érvényes a bejelentkezés megkÃsérlésekor. Ekkor az %%uid változó helyére a bejelentkezési név kerül." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "használja az %%uid változót, pl. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "A felhasználók szűrÅ‘je" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Ez a szűrÅ‘ érvényes a felhasználók listázásakor." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "itt ne használjon változót, pl. \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "A csoportok szűrÅ‘je" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Ez a szűrÅ‘ érvényes a csoportok listázásakor." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "itt ne használjunk változót, pl. \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "A felhasználói fa gyökere" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "Soronként egy felhasználói fa gyökerét adhatjuk meg" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "A csoportfa gyökere" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "Soronként egy csoportfa gyökerét adhatjuk meg" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "A csoporttagság attribútuma" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Használjunk TLS-t" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Ne használjuk SSL-kapcsolat esetén, mert nem fog működni!" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Az LDAP-kiszolgáló nem tesz különbséget a kis- és nagybetűk között (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Ne ellenÅ‘rizzük az SSL-tanúsÃtvány érvényességét" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Ha a kapcsolat csak ezzel a beállÃtással működik, akkor importálja az LDAP-kiszolgáló SSL tanúsÃtványát az ownCloud kiszolgálóra!" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Nem javasolt, csak tesztelésre érdemes használni." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "másodpercben. A változtatás törli a cache tartalmát." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "A felhasználónév mezÅ‘je" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "EbbÅ‘l az LDAP attribútumból képzÅ‘dik a felhasználó elnevezése, ami megjelenik az ownCloudban." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "A felhasználói fa gyökere" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Soronként egy felhasználói fa gyökerét adhatjuk meg" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "A csoport nevének mezÅ‘je" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "EbbÅ‘l az LDAP attribútumból képzÅ‘dik a csoport elnevezése, ami megjelenik az ownCloudban." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "A csoportfa gyökere" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Soronként egy csoportfa gyökerét adhatjuk meg" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "A csoporttagság attribútuma" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "bájtban" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "másodpercben. A változtatás törli a cache tartalmát." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Hagyja üresen, ha a felhasználónevet kÃvánja használni. EllenkezÅ‘ esetben adjon meg egy LDAP/AD attribútumot!" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Súgó" diff --git a/l10n/ia/core.po b/l10n/ia/core.po index 0c74f327700..6359a737f3e 100644 --- a/l10n/ia/core.po +++ b/l10n/ia/core.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-01-31 17:02+0100\n" +"PO-Revision-Date: 2013-01-30 23:40+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Interlingua (http://www.transifex.com/projects/p/owncloud/language/ia/)\n" "MIME-Version: 1.0\n" @@ -253,7 +253,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Compartir" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" diff --git a/l10n/ia/files.po b/l10n/ia/files.po index b1a67c83777..43dd321da08 100644 --- a/l10n/ia/files.po +++ b/l10n/ia/files.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Interlingua (http://www.transifex.com/projects/p/owncloud/language/ia/)\n" "MIME-Version: 1.0\n" @@ -19,20 +19,6 @@ msgstr "" "Language: ia\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -68,11 +54,11 @@ msgstr "Manca un dossier temporari" msgid "Failed to write to disk" msgstr "" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -80,15 +66,15 @@ msgstr "" msgid "Files" msgstr "Files" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Deler" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "" @@ -112,7 +98,7 @@ msgstr "" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "" @@ -120,12 +106,8 @@ msgstr "" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -150,86 +132,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Clauder" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nomine" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Dimension" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Modificate" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -285,32 +259,40 @@ msgstr "Dossier" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Nihil hic. Incarga alcun cosa!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Discargar" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Incargamento troppo longe" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/ia/files_trashbin.po b/l10n/ia/files_trashbin.po new file mode 100644 index 00000000000..3d86f721da7 --- /dev/null +++ b/l10n/ia/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Interlingua (http://www.transifex.com/projects/p/owncloud/language/ia/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ia\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nomine" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/ia/settings.po b/l10n/ia/settings.po index 8a5f778dd98..f465615a985 100644 --- a/l10n/ia/settings.po +++ b/l10n/ia/settings.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Interlingua (http://www.transifex.com/projects/p/owncloud/language/ia/)\n" "MIME-Version: 1.0\n" @@ -77,14 +77,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "" @@ -113,6 +141,10 @@ msgstr "" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "Actualisar" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -264,6 +296,14 @@ msgstr "" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/ia/user_ldap.po b/l10n/ia/user_ldap.po index 6a131310437..82ab2dd2acb 100644 --- a/l10n/ia/user_ldap.po +++ b/l10n/ia/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 21:57+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Interlingua (http://www.transifex.com/projects/p/owncloud/language/ia/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: ia\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Adjuta" diff --git a/l10n/id/core.po b/l10n/id/core.po index e3dcf88b98d..17776e800e2 100644 --- a/l10n/id/core.po +++ b/l10n/id/core.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Indonesian (http://www.transifex.com/projects/p/owncloud/language/id/)\n" "MIME-Version: 1.0\n" @@ -159,59 +159,59 @@ msgstr "Nopember" msgid "December" msgstr "Desember" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Setelan" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "beberapa detik yang lalu" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 menit lalu" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "hari ini" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "kemarin" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "bulan kemarin" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "beberapa bulan lalu" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "tahun kemarin" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "beberapa tahun lalu" @@ -256,7 +256,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "berbagi" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -544,7 +544,7 @@ msgstr "Selesaikan instalasi" msgid "web services under your control" msgstr "web service dibawah kontrol anda" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Keluar" diff --git a/l10n/id/files.po b/l10n/id/files.po index 50113614716..67a86d94ba0 100644 --- a/l10n/id/files.po +++ b/l10n/id/files.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Indonesian (http://www.transifex.com/projects/p/owncloud/language/id/)\n" "MIME-Version: 1.0\n" @@ -20,20 +20,6 @@ msgstr "" "Language: id\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -69,11 +55,11 @@ msgstr "Kehilangan folder temporer" msgid "Failed to write to disk" msgstr "Gagal menulis ke disk" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -81,15 +67,15 @@ msgstr "" msgid "Files" msgstr "Berkas" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "batalkan berbagi" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Hapus" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "" @@ -113,7 +99,7 @@ msgstr "batalkan" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "batal dikerjakan" @@ -121,12 +107,8 @@ msgstr "batal dikerjakan" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -151,86 +133,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Gagal mengunggah berkas anda karena berupa direktori atau mempunyai ukuran 0 byte" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Terjadi Galat Pengunggahan" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "tutup" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Menunggu" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Pengunggahan dibatalkan." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "tautan tidak boleh kosong" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nama" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Ukuran" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Dimodifikasi" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -286,32 +260,40 @@ msgstr "Folder" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Batal mengunggah" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Tidak ada apa-apa di sini. Unggah sesuatu!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Unduh" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Unggahan terlalu besar" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Berkas yang anda coba unggah melebihi ukuran maksimum untuk pengunggahan berkas di server ini." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Berkas sedang dipindai, silahkan tunggu." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Sedang memindai" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/id/files_trashbin.po b/l10n/id/files_trashbin.po new file mode 100644 index 00000000000..29afd3eefda --- /dev/null +++ b/l10n/id/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Indonesian (http://www.transifex.com/projects/p/owncloud/language/id/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: id\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "nama" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/id/settings.po b/l10n/id/settings.po index bcaf1c7afee..92aab7dfbf7 100644 --- a/l10n/id/settings.po +++ b/l10n/id/settings.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Indonesian (http://www.transifex.com/projects/p/owncloud/language/id/)\n" "MIME-Version: 1.0\n" @@ -79,14 +79,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "NonAktifkan" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Aktifkan" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "kesalahan" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Menyimpan..." @@ -115,6 +143,10 @@ msgstr "Lihat halaman aplikasi di apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "Pembaruan" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -266,6 +298,14 @@ msgstr "Admin Grup" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/id/user_ldap.po b/l10n/id/user_ldap.po index d1b6b34abf1..ed63af8cccb 100644 --- a/l10n/id/user_ldap.po +++ b/l10n/id/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:19+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Indonesian (http://www.transifex.com/projects/p/owncloud/language/id/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: id\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "penghapusan gagal" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "host" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "kata kunci" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "gunakan saringan login" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "saringan grup" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "port" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "gunakan TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "jangan gunakan untuk koneksi SSL, itu akan gagal." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "matikan validasi sertivikat SSL" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "tidak disarankan, gunakan hanya untuk pengujian." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "dalam detik. perubahan mengosongkan cache" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "dalam bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "dalam detik. perubahan mengosongkan cache" - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "bantuan" diff --git a/l10n/id/user_webdavauth.po b/l10n/id/user_webdavauth.po index 409d046d03e..9ae62e5a2cf 100644 --- a/l10n/id/user_webdavauth.po +++ b/l10n/id/user_webdavauth.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# Widya Walesa <walecha99@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-15 00:03+0100\n" -"PO-Revision-Date: 2013-01-14 23:04+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 02:30+0000\n" +"Last-Translator: w41l <walecha99@gmail.com>\n" "Language-Team: Indonesian (http://www.transifex.com/projects/p/owncloud/language/id/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,15 +20,15 @@ msgstr "" #: templates/settings.php:3 msgid "WebDAV Authentication" -msgstr "" +msgstr "Otentikasi WebDAV" #: templates/settings.php:4 msgid "URL: http://" -msgstr "" +msgstr "URL: http://" -#: templates/settings.php:6 +#: templates/settings.php:7 msgid "" "ownCloud will send the user credentials to this URL. This plugin checks the " "response and will interpret the HTTP statuscodes 401 and 403 as invalid " "credentials, and all other responses as valid credentials." -msgstr "" +msgstr "ownCloud akan mengirimkan informasi pengguna ke URL ini. Pengaya akan mengecek respon dan menginterpretasikan kode status HTTP 401 serta 403 sebagai informasi yang keliru, sedangkan respon lainnya dianggap benar." diff --git a/l10n/is/core.po b/l10n/is/core.po index 4916011fc43..a1d13cee06d 100644 --- a/l10n/is/core.po +++ b/l10n/is/core.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Icelandic (http://www.transifex.com/projects/p/owncloud/language/is/)\n" "MIME-Version: 1.0\n" @@ -157,59 +157,59 @@ msgstr "Nóvember" msgid "December" msgstr "Desember" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Stillingar" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "sek sÃðan" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 min sÃðan" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} min sÃðan" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "Fyrir 1 klst." -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "fyrir {hours} klst." -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "à dag" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "à gær" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} dagar sÃðan" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "sÃðasta mánuði" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "fyrir {months} mánuðum" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "mánuðir sÃðan" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "sÃðasta ári" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "árum sÃðan" @@ -254,7 +254,7 @@ msgstr "Umbeðina skráin {file} ekki tiltæk!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Deila" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -542,7 +542,7 @@ msgstr "Virkja uppsetningu" msgid "web services under your control" msgstr "vefþjónusta undir þinni stjórn" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Útskrá" diff --git a/l10n/is/files.po b/l10n/is/files.po index bd387e20c3f..f2e66b04646 100644 --- a/l10n/is/files.po +++ b/l10n/is/files.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Icelandic (http://www.transifex.com/projects/p/owncloud/language/is/)\n" "MIME-Version: 1.0\n" @@ -18,20 +18,6 @@ msgstr "" "Language: is\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Gat ekki fært %s - Skrá með þessu nafni er þegar til" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Gat ekki fært %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Gat ekki endurskýrt skrá" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Engin skrá var send inn. Óþekkt villa." @@ -67,11 +53,11 @@ msgstr "Vantar bráðabirgðamöppu" msgid "Failed to write to disk" msgstr "Tókst ekki að skrifa á disk" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Ekki nægt pláss tiltækt" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Ógild mappa." @@ -79,15 +65,15 @@ msgstr "Ógild mappa." msgid "Files" msgstr "Skrár" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Hætta deilingu" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Eyða" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Endurskýra" @@ -111,7 +97,7 @@ msgstr "hætta við" msgid "replaced {new_name}" msgstr "endurskýrði {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "afturkalla" @@ -119,13 +105,9 @@ msgstr "afturkalla" msgid "replaced {new_name} with {old_name}" msgstr "yfirskrifaði {new_name} með {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "Hætti við deilingu á {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "eyddi {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -149,86 +131,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Innsending á skrá mistókst, hugsanlega sendir þú möppu eða skráin er 0 bæti." -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Villa við innsendingu" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Loka" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "BÃður" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 skrá innsend" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} skrár innsendar" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Hætt við innsendingu." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Innsending à gangi. Ef þú ferð af þessari sÃðu mun innsending misheppnast." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "Vefslóð má ekki vera tóm." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Óleyfilegt nafn á möppu. Nafnið 'Shared' er frátekið fyrir Owncloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} skrár skimaðar" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "villa við skimun" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nafn" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Stærð" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Breytt" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 mappa" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} möppur" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 skrá" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} skrár" @@ -284,32 +258,40 @@ msgstr "Mappa" msgid "From link" msgstr "Af tengli" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Hætta við innsendingu" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Ekkert hér. Settu eitthvað inn!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Niðurhal" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Innsend skrá er of stór" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Skrárnar sem þú ert að senda inn eru stærri en hámarks innsendingarstærð á þessum netþjóni." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Verið er að skima skrár, vinsamlegast hinkraðu." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Er að skima" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/is/files_trashbin.po b/l10n/is/files_trashbin.po new file mode 100644 index 00000000000..1fc4aad5716 --- /dev/null +++ b/l10n/is/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Icelandic (http://www.transifex.com/projects/p/owncloud/language/is/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: is\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nafn" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 mappa" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} möppur" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 skrá" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} skrár" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/is/settings.po b/l10n/is/settings.po index 15f488a9b26..07750ab9e75 100644 --- a/l10n/is/settings.po +++ b/l10n/is/settings.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Icelandic (http://www.transifex.com/projects/p/owncloud/language/is/)\n" "MIME-Version: 1.0\n" @@ -76,14 +76,42 @@ msgstr "Ekki tókst að bæta notenda við hópinn %s" msgid "Unable to remove user from group %s" msgstr "Ekki tókst að fjarlægja notanda úr hópnum %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Gera óvirkt" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Virkja" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Villa" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Er að vista ..." @@ -112,6 +140,10 @@ msgstr "Skoða sÃðu forrits hjá apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-leyfi skráð af <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Uppfæra" + #: templates/help.php:3 msgid "User Documentation" msgstr "Notenda handbók" @@ -263,6 +295,14 @@ msgstr "Hópstjóri" msgid "Storage" msgstr "gagnapláss" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "Sjálfgefið" diff --git a/l10n/is/user_ldap.po b/l10n/is/user_ldap.po index 98dfe70c84e..7cfe3d0a425 100644 --- a/l10n/is/user_ldap.po +++ b/l10n/is/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Icelandic (http://www.transifex.com/projects/p/owncloud/language/is/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: is\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Netþjónn" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Lykilorð" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Hjálp" diff --git a/l10n/it/core.po b/l10n/it/core.po index 77ec770b0d5..b6f69691eec 100644 --- a/l10n/it/core.po +++ b/l10n/it/core.po @@ -6,15 +6,16 @@ # <cosenal@gmail.com>, 2011. # Francesco Apruzzese <cescoap@gmail.com>, 2011, 2012. # <marco@carnazzo.it>, 2011, 2012. +# <pgcloud@imballaggi.net>, 2013. # <rb.colombo@gmail.com>, 2011. # Vincenzo Reale <vinx.reale@gmail.com>, 2012-2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" +"Last-Translator: pgcloud <pgcloud@imballaggi.net>\n" "Language-Team: Italian (http://www.transifex.com/projects/p/owncloud/language/it/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -160,59 +161,59 @@ msgstr "Novembre" msgid "December" msgstr "Dicembre" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Impostazioni" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "secondi fa" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "Un minuto fa" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} minuti fa" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 ora fa" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} ore fa" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "oggi" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "ieri" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} giorni fa" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "mese scorso" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} mesi fa" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "mesi fa" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "anno scorso" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "anni fa" @@ -257,11 +258,11 @@ msgstr "Il file richiesto {file} non è installato!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Condividi" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Condivisi" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -545,7 +546,7 @@ msgstr "Termina la configurazione" msgid "web services under your control" msgstr "servizi web nelle tue mani" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Esci" @@ -557,7 +558,7 @@ msgstr "Accesso automatico rifiutato." msgid "" "If you did not change your password recently, your account may be " "compromised!" -msgstr "Se non hai cambiato la password recentemente, il tuo account potrebbe essere stato compromesso." +msgstr "Se non hai cambiato la password recentemente, il tuo account potrebbe essere compromesso." #: templates/login.php:13 msgid "Please change your password to secure your account again." @@ -586,4 +587,4 @@ msgstr "successivo" #: templates/update.php:3 #, php-format msgid "Updating ownCloud to version %s, this may take a while." -msgstr "Aggiornamento di ownCloud alla versione %s in corso, potrebbe richiedere del tempo." +msgstr "Aggiornamento di ownCloud alla versione %s in corso, ciò potrebbe richiedere del tempo." diff --git a/l10n/it/files.po b/l10n/it/files.po index 0a161d8c6e3..13d26fc18f2 100644 --- a/l10n/it/files.po +++ b/l10n/it/files.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-28 00:04+0100\n" -"PO-Revision-Date: 2013-01-27 00:03+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: Vincenzo Reale <vinx.reale@gmail.com>\n" "Language-Team: Italian (http://www.transifex.com/projects/p/owncloud/language/it/)\n" "MIME-Version: 1.0\n" @@ -21,20 +21,6 @@ msgstr "" "Language: it\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Impossibile spostare %s - un file con questo nome esiste già " - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Impossibile spostare %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Impossibile rinominare il file" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Nessun file è stato inviato. Errore sconosciuto" @@ -70,11 +56,11 @@ msgstr "Cartella temporanea mancante" msgid "Failed to write to disk" msgstr "Scrittura su disco non riuscita" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "Spazio di archiviazione insufficiente" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Spazio disponibile insufficiente" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Cartella non valida." @@ -82,15 +68,15 @@ msgstr "Cartella non valida." msgid "Files" msgstr "File" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Rimuovi condivisione" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Elimina" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Rinomina" @@ -114,7 +100,7 @@ msgstr "annulla" msgid "replaced {new_name}" msgstr "sostituito {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "annulla" @@ -122,13 +108,9 @@ msgstr "annulla" msgid "replaced {new_name} with {old_name}" msgstr "sostituito {new_name} con {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "non condivisi {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "eliminati {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "esegui l'operazione di eliminazione" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -152,86 +134,78 @@ msgstr "Lo spazio di archiviazione è pieno, i file non possono essere più aggi msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "Lo spazio di archiviazione è quasi pieno ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Il tuo scaricamento è in fase di preparazione. Ciò potrebbe richiedere del tempo se i file sono grandi." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Impossibile inviare il file poiché è una cartella o ha dimensione 0 byte" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Errore di invio" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Chiudi" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "In corso" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 file in fase di caricamento" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} file in fase di caricamentoe" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Invio annullato" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Caricamento del file in corso. La chiusura della pagina annullerà il caricamento." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "L'URL non può essere vuoto." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Nome della cartella non valido. L'uso di 'Shared' è riservato da ownCloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} file analizzati" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "errore durante la scansione" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nome" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Dimensione" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Modificato" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 cartella" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} cartelle" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 file" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} file" @@ -287,32 +261,40 @@ msgstr "Cartella" msgid "From link" msgstr "Da collegamento" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "Cestino" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Annulla invio" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Non c'è niente qui. Carica qualcosa!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Scarica" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Il file caricato è troppo grande" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "I file che stai provando a caricare superano la dimensione massima consentita su questo server." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Scansione dei file in corso, attendi" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Scansione corrente" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Aggiornamento della cache del filesystem in corso..." diff --git a/l10n/it/files_trashbin.po b/l10n/it/files_trashbin.po new file mode 100644 index 00000000000..8efe697487c --- /dev/null +++ b/l10n/it/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Vincenzo Reale <vinx.reale@gmail.com>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Italian (http://www.transifex.com/projects/p/owncloud/language/it/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: it\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "esegui operazione di ripristino" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nome" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "Eliminati" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 cartella" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} cartelle" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 file" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} file" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Qui non c'è niente. Il tuo cestino è vuoto." + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Ripristina" diff --git a/l10n/it/settings.po b/l10n/it/settings.po index 6f1b11dd3f2..dbb539c7bb5 100644 --- a/l10n/it/settings.po +++ b/l10n/it/settings.po @@ -9,14 +9,14 @@ # Jan-Christoph Borchardt <JanCBorchardt@fsfe.org>, 2011. # <marco@carnazzo.it>, 2011-2013. # <rb.colombo@gmail.com>, 2011. -# Vincenzo Reale <vinx.reale@gmail.com>, 2012. +# Vincenzo Reale <vinx.reale@gmail.com>, 2012-2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-01 23:30+0000\n" +"Last-Translator: Vincenzo Reale <vinx.reale@gmail.com>\n" "Language-Team: Italian (http://www.transifex.com/projects/p/owncloud/language/it/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -82,14 +82,42 @@ msgstr "Impossibile aggiungere l'utente al gruppo %s" msgid "Unable to remove user from group %s" msgstr "Impossibile rimuovere l'utente dal gruppo %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "Impossibile aggiornate l'applicazione." + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "Aggiorna a {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Disabilita" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Abilita" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "Attendere..." + +#: js/apps.js:84 +msgid "Updating...." +msgstr "Aggiornamento in corso..." + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "Errore durante l'aggiornamento" + +#: js/apps.js:87 +msgid "Error" +msgstr "Errore" + +#: js/apps.js:90 +msgid "Updated" +msgstr "Aggiornato" + #: js/personal.js:69 msgid "Saving..." msgstr "Salvataggio in corso..." @@ -118,6 +146,10 @@ msgstr "Vedere la pagina dell'applicazione su apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licenziato da <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Aggiorna" + #: templates/help.php:3 msgid "User Documentation" msgstr "Documentazione utente" @@ -235,7 +267,7 @@ msgstr "Sviluppato dalla <a href=\"http://ownCloud.org/contact\" target=\"_blank #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Nome utente" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -259,7 +291,7 @@ msgstr "Altro" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Nome visualizzato" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -269,6 +301,14 @@ msgstr "Gruppi amministrati" msgid "Storage" msgstr "Archiviazione" +#: templates/users.php:97 +msgid "change display name" +msgstr "cambia il nome visualizzato" + +#: templates/users.php:101 +msgid "set new password" +msgstr "imposta una nuova password" + #: templates/users.php:137 msgid "Default" msgstr "Predefinito" diff --git a/l10n/it/user_ldap.po b/l10n/it/user_ldap.po index 5c009d82967..4f07adf6ee3 100644 --- a/l10n/it/user_ldap.po +++ b/l10n/it/user_ldap.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 08:29+0000\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-02 23:30+0000\n" "Last-Translator: Vincenzo Reale <vinx.reale@gmail.com>\n" "Language-Team: Italian (http://www.transifex.com/projects/p/owncloud/language/it/)\n" "MIME-Version: 1.0\n" @@ -19,6 +19,58 @@ msgstr "" "Language: it\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "Eliminazione della configurazione del server non riuscita" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "La configurazione è valida e la connessione può essere stabilita." + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "La configurazione è valida, ma il Bind non è riuscito. Controlla le impostazioni del server e le credenziali." + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "La configurazione non è valida. Controlla il log di ownCloud per ulteriori dettagli." + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Eliminazione non riuscita" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "Vuoi recuperare le impostazioni dalla configurazione recente del server?" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "Vuoi mantenere le impostazioni?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "Impossibile aggiungere la configurazione del server" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "Prova di connessione riuscita" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "Prova di connessione non riuscita" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "Vuoi davvero eliminare la configurazione attuale del server?" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "Conferma l'eliminazione" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -33,165 +85,227 @@ msgid "" msgstr "<b>Avviso:</b> il modulo PHP LDAP non è installato, il motore non funzionerà . Chiedi al tuo amministratore di sistema di installarlo." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "Configurazione del server" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "Aggiungi configurazione del server" + +#: templates/settings.php:21 msgid "Host" msgstr "Host" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "È possibile omettere il protocollo, ad eccezione se è necessario SSL. Quindi inizia con ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "DN base" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "Un DN base per riga" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Puoi specificare una DN base per gli utenti ed i gruppi nella scheda Avanzate" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN utente" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "Il DN per il client dell'utente con cui deve essere associato, ad esempio uid=agent,dc=example,dc=com. Per l'accesso anonimo, lasciare vuoti i campi DN e Password" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Password" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Per l'accesso anonimo, lasciare vuoti i campi DN e Password" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filtro per l'accesso utente" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Specifica quale filtro utilizzare quando si tenta l'accesso. %%uid sostituisce il nome utente all'atto dell'accesso." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "utilizza il segnaposto %%uid, ad esempio \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Filtro per l'elenco utenti" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Specifica quale filtro utilizzare durante il recupero degli utenti." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "senza nessun segnaposto, per esempio \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Filtro per il gruppo" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Specifica quale filtro utilizzare durante il recupero dei gruppi." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "senza nessun segnaposto, per esempio \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "Impostazioni di connessione" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "Configurazione attiva" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "Se deselezionata, questa configurazione sarà saltata." + +#: templates/settings.php:34 msgid "Port" msgstr "Porta" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Struttura base dell'utente" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "Host di backup (Replica)" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "Un DN base utente per riga" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "Fornisci un host di backup opzionale. Deve essere una replica del server AD/LDAP principale." -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Struttura base del gruppo" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "Porta di backup (Replica)" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "Un DN base gruppo per riga" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "Disabilita server principale" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Associazione gruppo-utente " +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "Se abilitata, ownCloud si collegherà solo al server di replica." -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Usa TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Non utilizzare per le connessioni SSL, fallirà ." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Case insensitve LDAP server (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Disattiva il controllo del certificato SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Se la connessione funziona esclusivamente con questa opzione, importa il certificato SSL del server LDAP nel tuo server ownCloud." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Non consigliato, utilizzare solo per test." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "in secondi. Il cambio svuota la cache." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "Impostazioni delle cartelle" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Campo per la visualizzazione del nome utente" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "L'attributo LDAP da usare per generare il nome dell'utente ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Struttura base dell'utente" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Un DN base utente per riga" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "Attributi di ricerca utente" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "Opzionale; un attributo per riga" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Campo per la visualizzazione del nome del gruppo" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "L'attributo LDAP da usare per generare il nome del gruppo ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Struttura base del gruppo" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Un DN base gruppo per riga" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "Attributi di ricerca gruppo" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Associazione gruppo-utente " + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "Attributi speciali" + +#: templates/settings.php:56 msgid "in bytes" msgstr "in byte" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "in secondi. Il cambio svuota la cache." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Lascia vuoto per il nome utente (predefinito). Altrimenti, specifica un attributo LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Aiuto" diff --git a/l10n/ja_JP/core.po b/l10n/ja_JP/core.po index 76db5f78f9b..e2eb92b6806 100644 --- a/l10n/ja_JP/core.po +++ b/l10n/ja_JP/core.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Japanese (Japan) (http://www.transifex.com/projects/p/owncloud/language/ja_JP/)\n" "MIME-Version: 1.0\n" @@ -158,59 +158,59 @@ msgstr "11月" msgid "December" msgstr "12月" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "è¨å®š" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "ç§’å‰" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 分å‰" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} 分å‰" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 時間å‰" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} 時間å‰" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "今日" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "昨日" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} æ—¥å‰" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "一月å‰" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} 月å‰" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "月å‰" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "一年å‰" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "å¹´å‰" @@ -255,11 +255,11 @@ msgstr "å¿…è¦ãªãƒ•ァイル {file} ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“ï #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "共有" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "共有ä¸" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -543,7 +543,7 @@ msgstr "セットアップを完了ã—ã¾ã™" msgid "web services under your control" msgstr "管ç†ä¸‹ã«ã‚るウェブサービス" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "ãƒã‚°ã‚¢ã‚¦ãƒˆ" diff --git a/l10n/ja_JP/files.po b/l10n/ja_JP/files.po index 5a4b882085b..97f0b6b3b73 100644 --- a/l10n/ja_JP/files.po +++ b/l10n/ja_JP/files.po @@ -7,13 +7,14 @@ # Daisuke Deguchi <ddeguchi@nagoya-u.jp>, 2012-2013. # <tetuyano+transi@gmail.com>, 2012. # <tetuyano+transi@gmail.com>, 2012. +# YANO Tetsu <tetuyano+transi@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 01:10+0000\n" -"Last-Translator: Daisuke Deguchi <ddeguchi@nagoya-u.jp>\n" +"POT-Creation-Date: 2013-02-04 00:04+0100\n" +"PO-Revision-Date: 2013-02-03 04:30+0000\n" +"Last-Translator: tt yn <tetuyano+transi@gmail.com>\n" "Language-Team: Japanese (Japan) (http://www.transifex.com/projects/p/owncloud/language/ja_JP/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,60 +22,46 @@ msgstr "" "Language: ja_JP\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "%s を移動ã§ãã¾ã›ã‚“ã§ã—㟠― ã“ã®åå‰ã®ãƒ•ァイルã¯ã™ã§ã«å˜åœ¨ã—ã¾ã™" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "%s を移動ã§ãã¾ã›ã‚“ã§ã—ãŸ" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "ファイルåã®å¤‰æ›´ãŒã§ãã¾ã›ã‚“" - -#: ajax/upload.php:17 +#: ajax/upload.php:19 msgid "No file was uploaded. Unknown error" msgstr "ファイルã¯ä½•もアップãƒãƒ¼ãƒ‰ã•れã¦ã„ã¾ã›ã‚“ã€‚ä¸æ˜Žãªã‚¨ãƒ©ãƒ¼" -#: ajax/upload.php:24 +#: ajax/upload.php:26 msgid "There is no error, the file uploaded with success" msgstr "エラーã¯ã‚りã¾ã›ã‚“。ファイルã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã¯æˆåŠŸã—ã¾ã—ãŸ" -#: ajax/upload.php:25 +#: ajax/upload.php:27 msgid "" "The uploaded file exceeds the upload_max_filesize directive in php.ini: " msgstr "アップãƒãƒ¼ãƒ‰ã•れãŸãƒ•ァイルã¯php.ini ã® upload_max_filesize ã«è¨å®šã•れãŸã‚µã‚¤ã‚ºã‚’è¶…ãˆã¦ã„ã¾ã™:" -#: ajax/upload.php:27 +#: ajax/upload.php:29 msgid "" "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in " "the HTML form" msgstr "アップãƒãƒ¼ãƒ‰ã•れãŸãƒ•ァイルã¯HTMLã®ãƒ•ォームã«è¨å®šã•れãŸMAX_FILE_SIZEã«è¨å®šã•れãŸã‚µã‚¤ã‚ºã‚’è¶…ãˆã¦ã„ã¾ã™" -#: ajax/upload.php:29 +#: ajax/upload.php:31 msgid "The uploaded file was only partially uploaded" msgstr "ファイルã¯ä¸€éƒ¨åˆ†ã—ã‹ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã•れã¾ã›ã‚“ã§ã—ãŸ" -#: ajax/upload.php:30 +#: ajax/upload.php:32 msgid "No file was uploaded" msgstr "ファイルã¯ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã•れã¾ã›ã‚“ã§ã—ãŸ" -#: ajax/upload.php:31 +#: ajax/upload.php:33 msgid "Missing a temporary folder" msgstr "テンãƒãƒ©ãƒªãƒ•ォルダãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“" -#: ajax/upload.php:32 +#: ajax/upload.php:34 msgid "Failed to write to disk" msgstr "ディスクã¸ã®æ›¸ãè¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "ストレージã«å分ãªç©ºã容é‡ãŒã‚りã¾ã›ã‚“" +#: ajax/upload.php:52 +msgid "Not enough space available" +msgstr "利用å¯èƒ½ãªã‚¹ãƒšãƒ¼ã‚¹ãŒå分ã«ã‚りã¾ã›ã‚“" -#: ajax/upload.php:77 +#: ajax/upload.php:83 msgid "Invalid directory." msgstr "無効ãªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ã€‚" @@ -82,15 +69,15 @@ msgstr "無効ãªãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™ã€‚" msgid "Files" msgstr "ファイル" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "共有ã—ãªã„" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "削除" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "åå‰ã®å¤‰æ›´" @@ -114,7 +101,7 @@ msgstr "ã‚ャンセル" msgid "replaced {new_name}" msgstr "{new_name} ã‚’ç½®æ›" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "å…ƒã«æˆ»ã™" @@ -122,13 +109,9 @@ msgstr "å…ƒã«æˆ»ã™" msgid "replaced {new_name} with {old_name}" msgstr "{old_name} ã‚’ {new_name} ã«ç½®æ›" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "未共有 {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "削除 {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "削除を実行" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -152,86 +135,78 @@ msgstr "ã‚ãªãŸã®ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ã¯ä¸€æ¯ã§ã™ã€‚ãƒ•ã‚¡ã‚¤ãƒ«ã®æ›´æ–°ã¨åŒ msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "ã‚ãªãŸã®ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ã¯ã»ã¼ä¸€æ¯ã§ã™ï¼ˆ{usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "ダウンãƒãƒ¼ãƒ‰ã®æº–å‚™ä¸ã§ã™ã€‚ファイルサイズãŒå¤§ãã„å ´åˆã¯å°‘ã—æ™‚é–“ãŒã‹ã‹ã‚‹ã‹ã‚‚ã—れã¾ã›ã‚“。" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "ディレクトリもã—ãã¯0ãƒã‚¤ãƒˆã®ãƒ•ァイルã¯ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã§ãã¾ã›ã‚“" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "アップãƒãƒ¼ãƒ‰ã‚¨ãƒ©ãƒ¼" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "é–‰ã˜ã‚‹" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "ä¿ç•™" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "ファイルを1ã¤ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ä¸" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} ファイルをアップãƒãƒ¼ãƒ‰ä¸" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "アップãƒãƒ¼ãƒ‰ã¯ã‚ャンセルã•れã¾ã—ãŸã€‚" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "ファイル転é€ã‚’実行ä¸ã§ã™ã€‚今ã“ã®ãƒšãƒ¼ã‚¸ã‹ã‚‰ç§»å‹•ã™ã‚‹ã¨ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ãŒä¸æ¢ã•れã¾ã™ã€‚" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URLã¯ç©ºã«ã§ãã¾ã›ã‚“。" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "無効ãªãƒ•ォルダåã§ã™ã€‚'Shared' ã®åˆ©ç”¨ã¯ ownCloud ãŒäºˆç´„済ã¿ã§ã™ã€‚" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} ファイルをスã‚ャン" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "スã‚ャンä¸ã®ã‚¨ãƒ©ãƒ¼" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "åå‰" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "サイズ" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "更新日時" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 フォルダ" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} フォルダ" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 ファイル" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} ファイル" @@ -287,32 +262,40 @@ msgstr "フォルダ" msgid "From link" msgstr "リンク" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "ゴミ箱" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "アップãƒãƒ¼ãƒ‰ã‚’ã‚ャンセル" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "ã“ã“ã«ã¯ä½•ã‚‚ã‚りã¾ã›ã‚“。何ã‹ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã—ã¦ãã ã•ã„。" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "ダウンãƒãƒ¼ãƒ‰" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "ファイルサイズãŒå¤§ãã™ãŽã¾ã™" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "アップãƒãƒ¼ãƒ‰ã—よã†ã¨ã—ã¦ã„るファイルã¯ã€ã‚µãƒ¼ãƒã§è¦å®šã•ã‚ŒãŸæœ€å¤§ã‚µã‚¤ã‚ºã‚’è¶…ãˆã¦ã„ã¾ã™ã€‚" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "ファイルをスã‚ャンã—ã¦ã„ã¾ã™ã€ã—ã°ã‚‰ããŠå¾…ã¡ãã ã•ã„。" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "スã‚ャンä¸" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "ファイルシステムã‚ャッシュを更新ä¸..." diff --git a/l10n/ja_JP/files_trashbin.po b/l10n/ja_JP/files_trashbin.po new file mode 100644 index 00000000000..fb4805b52db --- /dev/null +++ b/l10n/ja_JP/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Daisuke Deguchi <ddeguchi@nagoya-u.jp>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Japanese (Japan) (http://www.transifex.com/projects/p/owncloud/language/ja_JP/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ja_JP\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "復元æ“作を実行ã™ã‚‹" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "åå‰" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "削除済ã¿" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 フォルダ" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} フォルダ" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 ファイル" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} ファイル" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "ã“ã“ã«ã¯ä½•ã‚‚ã‚りã¾ã›ã‚“。ゴミ箱ã¯ç©ºã§ã™ï¼" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "復元" diff --git a/l10n/ja_JP/settings.po b/l10n/ja_JP/settings.po index 4871013dbf6..80f56e5c654 100644 --- a/l10n/ja_JP/settings.po +++ b/l10n/ja_JP/settings.po @@ -7,13 +7,14 @@ # Daisuke Deguchi <ddeguchi@nagoya-u.jp>, 2012-2013. # <tetuyano+transi@gmail.com>, 2012. # <tetuyano+transi@gmail.com>, 2012. +# YANO Tetsu <tetuyano+transi@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-03 04:30+0000\n" +"Last-Translator: tt yn <tetuyano+transi@gmail.com>\n" "Language-Team: Japanese (Japan) (http://www.transifex.com/projects/p/owncloud/language/ja_JP/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -79,14 +80,42 @@ msgstr "ユーザをグループ %s ã«è¿½åŠ ã§ãã¾ã›ã‚“" msgid "Unable to remove user from group %s" msgstr "ユーザをグループ %s ã‹ã‚‰å‰Šé™¤ã§ãã¾ã›ã‚“" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "アプリを更新出æ¥ã¾ã›ã‚“ã§ã—ãŸã€‚" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "{appversion} ã«æ›´æ–°" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "無効" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "有効" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "ã—ã°ã‚‰ããŠå¾…ã¡ãã ã•ã„。" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "æ›´æ–°ä¸...." + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "ã‚¢ãƒ—ãƒªã®æ›´æ–°ä¸ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿ" + +#: js/apps.js:87 +msgid "Error" +msgstr "エラー" + +#: js/apps.js:90 +msgid "Updated" +msgstr "更新済ã¿" + #: js/personal.js:69 msgid "Saving..." msgstr "ä¿å˜ä¸..." @@ -115,6 +144,10 @@ msgstr "apps.owncloud.com ã§ã‚¢ãƒ—リケーションã®ãƒšãƒ¼ã‚¸ã‚’見ã¦ãã msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-ライセンス: <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "æ›´æ–°" + #: templates/help.php:3 msgid "User Documentation" msgstr "ユーザドã‚ュメント" @@ -232,7 +265,7 @@ msgstr "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud commu #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "ãƒã‚°ã‚¤ãƒ³å" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -256,7 +289,7 @@ msgstr "ãã®ä»–" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "表示å" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -266,6 +299,14 @@ msgstr "グループ管ç†è€…" msgid "Storage" msgstr "ストレージ" +#: templates/users.php:97 +msgid "change display name" +msgstr "表示åを変更" + +#: templates/users.php:101 +msgid "set new password" +msgstr "æ–°ã—ã„パスワードをè¨å®š" + #: templates/users.php:137 msgid "Default" msgstr "デフォルト" diff --git a/l10n/ja_JP/user_ldap.po b/l10n/ja_JP/user_ldap.po index 16a20c7207b..f899f457f15 100644 --- a/l10n/ja_JP/user_ldap.po +++ b/l10n/ja_JP/user_ldap.po @@ -6,13 +6,14 @@ # Daisuke Deguchi <ddeguchi@is.nagoya-u.ac.jp>, 2012. # Daisuke Deguchi <ddeguchi@nagoya-u.jp>, 2012-2013. # <tetuyano+transi@gmail.com>, 2012. +# YANO Tetsu <tetuyano+transi@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-17 00:26+0100\n" -"PO-Revision-Date: 2013-01-16 05:47+0000\n" -"Last-Translator: Daisuke Deguchi <ddeguchi@nagoya-u.jp>\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-03 04:40+0000\n" +"Last-Translator: tt yn <tetuyano+transi@gmail.com>\n" "Language-Team: Japanese (Japan) (http://www.transifex.com/projects/p/owncloud/language/ja_JP/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -20,6 +21,58 @@ msgstr "" "Language: ja_JP\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "サーãƒè¨å®šã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "è¨å®šã¯æœ‰åйã§ã‚ã‚Šã€æŽ¥ç¶šã‚’ç¢ºç«‹ã—ã¾ã—ãŸï¼" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "è¨å®šã¯æœ‰åйã§ã™ãŒã€æŽ¥ç¶šã«å¤±æ•—ã—ã¾ã—ãŸã€‚サーãƒè¨å®šã¨è³‡æ ¼æƒ…å ±ã‚’ç¢ºèªã—ã¦ä¸‹ã•ã„。" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "è¨å®šã¯ç„¡åйã§ã™ã€‚詳細㯠ownCloud ã®ãƒã‚°ã‚’見ã¦ä¸‹ã•ã„。" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "削除ã«å¤±æ•—ã—ã¾ã—ãŸ" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "最近ã®ã‚µãƒ¼ãƒè¨å®šã‹ã‚‰è¨å®šã‚’引ãç¶™ãŽã¾ã™ã‹ï¼Ÿ" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "è¨å®šã‚’ä¿æŒã—ã¾ã™ã‹ï¼Ÿ" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "サーãƒè¨å®šã‚’è¿½åŠ ã§ãã¾ã›ã‚“" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "æŽ¥ç¶šãƒ†ã‚¹ãƒˆã«æˆåŠŸã—ã¾ã—ãŸ" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "接続テストã«å¤±æ•—ã—ã¾ã—ãŸ" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "ç¾åœ¨ã®ã‚µãƒ¼ãƒè¨å®šã‚’本当ã«å‰Šé™¤ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿ" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "削除ã®ç¢ºèª" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -34,165 +87,227 @@ msgid "" msgstr "<b>è¦å‘Š:</b> PHP LDAP モジュールãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•れã¦ã„ã¾ã›ã‚“。ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰ãŒæ£ã—ã動作ã—ã¾ã›ã‚“。システム管ç†è€…ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã™ã‚‹ã‚ˆã†å•ã„åˆã‚ã›ã¦ãã ã•ã„。" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "サーãƒè¨å®š" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "サーãƒè¨å®šã‚’è¿½åŠ " + +#: templates/settings.php:21 msgid "Host" msgstr "ホスト" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "SSL通信ã—ãªã„å ´åˆã«ã¯ã€ãƒ—ãƒãƒˆã‚³ãƒ«åã‚’çœç•¥ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãã†ã§ãªã„å ´åˆã«ã¯ã€ldaps:// ã‹ã‚‰å§‹ã‚ã¦ãã ã•ã„。" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "ベースDN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "1行ã«1ã¤ã®ãƒ™ãƒ¼ã‚¹DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "拡張タブã§ãƒ¦ãƒ¼ã‚¶ã¨ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ™ãƒ¼ã‚¹DNを指定ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "ユーザDN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "クライアントユーザーã®DNã¯ã€ç‰¹å®šã®ã‚‚ã®ã«çµã³ã¤ã‘ã‚‹ã“ã¨ã¯ã—ã¾ã›ã‚“。 例ãˆã° uid=agent,dc=example,dc=com. ã ã¨åŒ¿åアクセスã®å ´åˆã€DNã¨ãƒ‘スワードã¯ç©ºã®ã¾ã¾ã§ã™ã€‚" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "パスワード" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "匿åアクセスã®å ´åˆã¯ã€DNã¨ãƒ‘スワードを空ã«ã—ã¦ãã ã•ã„。" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "ユーザãƒã‚°ã‚¤ãƒ³ãƒ•ィルタ" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "ãƒã‚°ã‚¤ãƒ³ã™ã‚‹ã¨ãã«é©ç”¨ã™ã‚‹ãƒ•ィルターを定義ã™ã‚‹ã€‚%%uid ãŒãƒã‚°ã‚¤ãƒ³æ™‚ã«ãƒ¦ãƒ¼ã‚¶ãƒ¼åã«ç½®ãæ›ãˆã‚‰ã‚Œã¾ã™ã€‚" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "%%uid プレースホルダーを利用ã—ã¦ãã ã•ã„。例 \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "ユーザリストフィルタ" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "ユーザーをå–å¾—ã™ã‚‹ã¨ãã«é©ç”¨ã™ã‚‹ãƒ•ィルターを定義ã™ã‚‹ã€‚" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "プレースホルダーを利用ã—ãªã„ã§ãã ã•ã„。例 \"objectClass=person\"" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "グループフィルタ" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "グループをå–å¾—ã™ã‚‹ã¨ãã«é©ç”¨ã™ã‚‹ãƒ•ィルターを定義ã™ã‚‹ã€‚" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "プレースホルダーを利用ã—ãªã„ã§ãã ã•ã„。例 \"objectClass=posixGroup\"" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "接続è¨å®š" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "è¨å®šã¯ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ã§ã™" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "ãƒã‚§ãƒƒã‚¯ã‚’外ã™ã¨ã€ã“ã®è¨å®šã¯ã‚¹ã‚ップã•れã¾ã™ã€‚" + +#: templates/settings.php:34 msgid "Port" msgstr "ãƒãƒ¼ãƒˆ" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "ベースユーザツリー" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—(レプリカ)ホスト" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "1行ã«1ã¤ã®ãƒ¦ãƒ¼ã‚¶ãƒ™ãƒ¼ã‚¹DN" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ãƒ›ã‚¹ãƒˆã‚’ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã§æŒ‡å®šã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚メインã®LDAP/ADサーãƒã®ãƒ¬ãƒ—リカã§ã‚ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "ベースグループツリー" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—(レプリカ)ãƒãƒ¼ãƒˆ" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "1行ã«1ã¤ã®ã‚°ãƒ«ãƒ¼ãƒ—ベースDN" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "メインサーãƒã‚’無効ã«ã™ã‚‹" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "グループã¨ãƒ¡ãƒ³ãƒãƒ¼ã®é–¢é€£ä»˜ã‘" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "有効ã«ã™ã‚‹ã¨ã€ownCloudã¯ãƒ¬ãƒ—リカサーãƒã«ã®ã¿æŽ¥ç¶šã—ã¾ã™ã€‚" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "TLSを利用" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "SSL接続ã«åˆ©ç”¨ã—ãªã„ã§ãã ã•ã„ã€å¤±æ•—ã—ã¾ã™ã€‚" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "大文å—ï¼å°æ–‡å—を区別ã—ãªã„LDAPサーãƒï¼ˆWindows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "SSL証明書ã®ç¢ºèªã‚’無効ã«ã™ã‚‹ã€‚" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "接続ãŒã“ã®ã‚ªãƒ—ションã§ã®ã¿å‹•作ã™ã‚‹å ´åˆã¯ã€LDAPサーãƒã®SSL証明書をownCloudサーãƒã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã—ã¦ãã ã•ã„。" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "推奨ã—ã¾ã›ã‚“ã€ãƒ†ã‚¹ãƒˆç›®çš„ã§ã®ã¿åˆ©ç”¨ã—ã¦ãã ã•ã„。" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "秒。変更後ã«ã‚ャッシュãŒã‚¯ãƒªã‚¢ã•れã¾ã™ã€‚" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "ディレクトリè¨å®š" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "ユーザ表示åã®ãƒ•ィールド" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "ユーザã®ownCloudåã®ç”Ÿæˆã«åˆ©ç”¨ã™ã‚‹LDAP属性。" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "ベースユーザツリー" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "1行ã«1ã¤ã®ãƒ¦ãƒ¼ã‚¶ãƒ™ãƒ¼ã‚¹DN" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "ユーザ検索属性" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "オプション:1行ã«1属性" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "グループ表示åã®ãƒ•ィールド" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "グループã®ownCloudåã®ç”Ÿæˆã«åˆ©ç”¨ã™ã‚‹LDAP属性。" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "ベースグループツリー" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "1行ã«1ã¤ã®ã‚°ãƒ«ãƒ¼ãƒ—ベースDN" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "グループ検索属性" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "グループã¨ãƒ¡ãƒ³ãƒãƒ¼ã®é–¢é€£ä»˜ã‘" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "特殊属性" + +#: templates/settings.php:56 msgid "in bytes" msgstr "ãƒã‚¤ãƒˆ" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "秒。変更後ã«ã‚ャッシュãŒã‚¯ãƒªã‚¢ã•れã¾ã™ã€‚" - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "ユーザåを空ã®ã¾ã¾ã«ã—ã¦ãã ã•ã„(デフォルト)。ãã†ã§ãªã„å ´åˆã¯ã€LDAPã‚‚ã—ãã¯ADã®å±žæ€§ã‚’指定ã—ã¦ãã ã•ã„。" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "ヘルプ" diff --git a/l10n/ka_GE/core.po b/l10n/ka_GE/core.po index 87ed1f83cd4..ab4062e7f60 100644 --- a/l10n/ka_GE/core.po +++ b/l10n/ka_GE/core.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Georgian (Georgia) (http://www.transifex.com/projects/p/owncloud/language/ka_GE/)\n" "MIME-Version: 1.0\n" @@ -156,59 +156,59 @@ msgstr "ნáƒáƒ”მბერი" msgid "December" msgstr "დეკემბერი" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "პáƒáƒ áƒáƒ›áƒ”ტრები" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "წáƒáƒ›áƒ˜áƒ¡ წინ" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 წუთის წინ" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} წუთის წინ" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "დღეს" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "გუშინ" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} დღის წინ" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "გáƒáƒ¡áƒ£áƒš თვეში" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "თვის წინ" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "ბáƒáƒšáƒ წელს" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "წლის წინ" @@ -253,7 +253,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "გáƒáƒ–იáƒáƒ ებáƒ" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -541,7 +541,7 @@ msgstr "კáƒáƒœáƒ¤áƒ˜áƒ’ურáƒáƒªáƒ˜áƒ˜áƒ¡ დáƒáƒ¡áƒ ულებáƒ" msgid "web services under your control" msgstr "თქვენი კáƒáƒœáƒ¢áƒ áƒáƒšáƒ˜áƒ¡ ქვეშ მყáƒáƒ¤áƒ˜ ვებ სერვისები" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "გáƒáƒ›áƒáƒ¡áƒ•ლáƒ" diff --git a/l10n/ka_GE/files.po b/l10n/ka_GE/files.po index 55891c6815d..1866d1f711a 100644 --- a/l10n/ka_GE/files.po +++ b/l10n/ka_GE/files.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Georgian (Georgia) (http://www.transifex.com/projects/p/owncloud/language/ka_GE/)\n" "MIME-Version: 1.0\n" @@ -18,20 +18,6 @@ msgstr "" "Language: ka_GE\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -67,11 +53,11 @@ msgstr "დრáƒáƒ”ბითი სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ე áƒáƒ áƒáƒ სე msgid "Failed to write to disk" msgstr "შეცდáƒáƒ›áƒ დისკზე ჩáƒáƒ¬áƒ”რისáƒáƒ¡" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -79,15 +65,15 @@ msgstr "" msgid "Files" msgstr "ფáƒáƒ˜áƒšáƒ”ბი" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "გáƒáƒ–იáƒáƒ ების მáƒáƒ®áƒ¡áƒœáƒ" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "წáƒáƒ¨áƒšáƒ" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "გáƒáƒ“áƒáƒ ქმევáƒ" @@ -111,7 +97,7 @@ msgstr "უáƒáƒ ყáƒáƒ¤áƒ" msgid "replaced {new_name}" msgstr "{new_name} შეცვლილიáƒ" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "დáƒáƒ‘რუნებáƒ" @@ -119,13 +105,9 @@ msgstr "დáƒáƒ‘რუნებáƒ" msgid "replaced {new_name} with {old_name}" msgstr "{new_name} შეცვლილირ{old_name}–ით" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "გáƒáƒ–იáƒáƒ ებრმáƒáƒ®áƒ¡áƒœáƒ˜áƒšáƒ˜ {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "წáƒáƒ¨áƒšáƒ˜áƒšáƒ˜ {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -149,86 +131,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "თქვენი ფáƒáƒ˜áƒšáƒ˜áƒ¡ áƒáƒ¢áƒ•ირთვრვერმáƒáƒ®áƒ”რხდáƒ. ის áƒáƒ ის სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ე დრშეიცáƒáƒ•ს 0 ბáƒáƒ˜áƒ¢áƒ¡" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "შეცდáƒáƒ›áƒ áƒáƒ¢áƒ•ირთვისáƒáƒ¡" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "დáƒáƒ®áƒ£áƒ ვáƒ" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "მáƒáƒªáƒ“ის რეჟიმში" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 ფáƒáƒ˜áƒšáƒ˜áƒ¡ áƒáƒ¢áƒ•ირთვáƒ" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} ფáƒáƒ˜áƒšáƒ˜ იტვირთებáƒ" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "áƒáƒ¢áƒ•ირთვრშეჩერებულ იქნáƒ." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "მიმდინáƒáƒ ეáƒáƒ‘ს ფáƒáƒ˜áƒšáƒ˜áƒ¡ áƒáƒ¢áƒ•ირთვáƒ. სხვრგვერდზე გáƒáƒ“áƒáƒ¡áƒ•ლრგáƒáƒ›áƒáƒ˜áƒ¬áƒ•ევს áƒáƒ¢áƒ•ირთვის შეჩერებáƒáƒ¡" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} ფáƒáƒ˜áƒšáƒ˜ სკáƒáƒœáƒ˜áƒ ებულიáƒ" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "შეცდáƒáƒ›áƒ სკáƒáƒœáƒ˜áƒ ებისáƒáƒ¡" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "სáƒáƒ®áƒ”ლი" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "ზáƒáƒ›áƒ" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "შეცვლილიáƒ" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ე" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ე" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 ფáƒáƒ˜áƒšáƒ˜" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} ფáƒáƒ˜áƒšáƒ˜" @@ -284,32 +258,40 @@ msgstr "სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ე" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "áƒáƒ¢áƒ•ირთვის გáƒáƒ£áƒ¥áƒ›áƒ”ბáƒ" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "áƒáƒ¥ áƒáƒ áƒáƒ¤áƒ”რი áƒáƒ áƒáƒ ის. áƒáƒ¢áƒ•ირთე რáƒáƒ›áƒ”!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "ჩáƒáƒ›áƒáƒ¢áƒ•ირთვáƒ" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "áƒáƒ¡áƒáƒ¢áƒ•ირთი ფáƒáƒ˜áƒšáƒ˜ ძáƒáƒšáƒ˜áƒáƒœ დიდიáƒ" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "ფáƒáƒ˜áƒšáƒ˜áƒ¡ ზáƒáƒ›áƒ რáƒáƒ›áƒšáƒ˜áƒ¡ áƒáƒ¢áƒ•ირთვáƒáƒ¡áƒáƒª თქვენ áƒáƒžáƒ˜áƒ ებთ, áƒáƒáƒáƒ ბებს სერვერზე დáƒáƒ¨áƒ•ებულ მáƒáƒ¥áƒ¡áƒ˜áƒ›áƒ£áƒ›áƒ¡." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "მიმდინáƒáƒ ეáƒáƒ‘ს ფáƒáƒ˜áƒšáƒ”ბის სკáƒáƒœáƒ˜áƒ ებáƒ, გთხáƒáƒ•თ დáƒáƒ”ლáƒáƒ“áƒáƒ—." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "მიმდინáƒáƒ ე სკáƒáƒœáƒ˜áƒ ებáƒ" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/ka_GE/files_trashbin.po b/l10n/ka_GE/files_trashbin.po new file mode 100644 index 00000000000..92a719c9523 --- /dev/null +++ b/l10n/ka_GE/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Georgian (Georgia) (http://www.transifex.com/projects/p/owncloud/language/ka_GE/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ka_GE\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "სáƒáƒ®áƒ”ლი" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ე" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} სáƒáƒ¥áƒáƒ¦áƒáƒšáƒ“ე" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 ფáƒáƒ˜áƒšáƒ˜" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} ფáƒáƒ˜áƒšáƒ˜" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/ka_GE/settings.po b/l10n/ka_GE/settings.po index 3f35403cfab..7c1f5129d4c 100644 --- a/l10n/ka_GE/settings.po +++ b/l10n/ka_GE/settings.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Georgian (Georgia) (http://www.transifex.com/projects/p/owncloud/language/ka_GE/)\n" "MIME-Version: 1.0\n" @@ -76,14 +76,42 @@ msgstr "მáƒáƒ›áƒ®áƒ›áƒáƒ ებლის დáƒáƒ›áƒáƒ¢áƒ”ბრვერmsgid "Unable to remove user from group %s" msgstr "მáƒáƒ›áƒ®áƒ›áƒáƒ ებლის წáƒáƒ¨áƒšáƒ ვერმáƒáƒ®áƒ”ხდრჯგუფიდáƒáƒœ %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "გáƒáƒ›áƒáƒ თვáƒ" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "ჩáƒáƒ თვáƒ" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "შეცდáƒáƒ›áƒ" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "შენáƒáƒ®áƒ•áƒ..." @@ -112,6 +140,10 @@ msgstr "ნáƒáƒ®áƒ”თ áƒáƒžáƒšáƒ˜áƒ™áƒáƒªáƒ˜áƒ˜áƒ¡ გვერდი apps.o msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-ლიცენსირებულირ<span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "გáƒáƒœáƒáƒ®áƒšáƒ”ბáƒ" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -263,6 +295,14 @@ msgstr "ჯგუფის áƒáƒ“მინისტრáƒáƒ¢áƒáƒ ი" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/ka_GE/user_ldap.po b/l10n/ka_GE/user_ldap.po index 14dbca3fc68..a84ba3cd3c8 100644 --- a/l10n/ka_GE/user_ldap.po +++ b/l10n/ka_GE/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 21:57+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Georgian (Georgia) (http://www.transifex.com/projects/p/owncloud/language/ka_GE/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: ka_GE\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "წáƒáƒ¨áƒšáƒ˜áƒ¡ ველი" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "დáƒáƒ®áƒ›áƒáƒ ებáƒ" diff --git a/l10n/ko/core.po b/l10n/ko/core.po index 8ba96b125ba..765fcfeba04 100644 --- a/l10n/ko/core.po +++ b/l10n/ko/core.po @@ -6,14 +6,15 @@ # <aoiob4305@gmail.com>, 2013. # 남ìžì‚¬ëžŒ <cessnagi@gmail.com>, 2012. # <limonade83@gmail.com>, 2012. +# Park Shinjo <kde@peremen.name>, 2013. # Shinjo Park <kde@peremen.name>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" +"Last-Translator: Shinjo Park <kde@peremen.name>\n" "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -24,26 +25,26 @@ msgstr "" #: ajax/share.php:85 #, php-format msgid "User %s shared a file with you" -msgstr "User %s ê°€ ë‹¹ì‹ ê³¼ 파ì¼ì„ ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤." +msgstr "%s ë‹˜ì´ íŒŒì¼ì„ ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤" #: ajax/share.php:87 #, php-format msgid "User %s shared a folder with you" -msgstr "User %s ê°€ ë‹¹ì‹ ê³¼ í´ë”를 ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤." +msgstr "%s ë‹˜ì´ í´ë”를 ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤" #: ajax/share.php:89 #, php-format msgid "" "User %s shared the file \"%s\" with you. It is available for download here: " "%s" -msgstr "User %s ê°€ íŒŒì¼ \"%s\"를 ë‹¹ì‹ ê³¼ ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤. 다운로드는 여기서 %s í• ìˆ˜ 있습니다." +msgstr "%s ë‹˜ì´ íŒŒì¼ \"%s\"ì„(를) ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤. 여기ì—서 ë‹¤ìš´ë¡œë“œí• ìˆ˜ 있습니다: %s" #: ajax/share.php:91 #, php-format msgid "" "User %s shared the folder \"%s\" with you. It is available for download " "here: %s" -msgstr "User %s ê°€ í´ë” \"%s\"를 ë‹¹ì‹ ê³¼ ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤. 다운로드는 여기서 %s í• ìˆ˜ 있습니다." +msgstr "%s ë‹˜ì´ í´ë” \"%s\"ì„(를) ê³µìœ í•˜ì˜€ìŠµë‹ˆë‹¤. 여기ì—서 ë‹¤ìš´ë¡œë“œí• ìˆ˜ 있습니다: %s" #: ajax/vcategories/add.php:26 ajax/vcategories/edit.php:25 msgid "Category type not provided." @@ -159,59 +160,59 @@ msgstr "11ì›”" msgid "December" msgstr "12ì›”" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "ì„¤ì •" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "ì´ˆ ì „" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1ë¶„ ì „" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes}ë¶„ ì „" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1시간 ì „" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours}시간 ì „" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "오늘" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "ì–´ì œ" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days}ì¼ ì „" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "지난 달" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months}개월 ì „" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "개월 ì „" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "작년" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "ë…„ ì „" @@ -256,11 +257,11 @@ msgstr "필요한 íŒŒì¼ {file}ì´(ê°€) 설치ë˜ì§€ 않았습니다!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "ê³µìœ " #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "ê³µìœ ë¨" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -383,11 +384,11 @@ msgid "" "The update was unsuccessful. Please report this issue to the <a " "href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud " "community</a>." -msgstr "" +msgstr "ì—…ë°ì´íŠ¸ê°€ 실패하였습니다. ì´ ë¬¸ì œë¥¼ <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud 커뮤니티</a>ì— ë³´ê³ í•´ 주ì‹ì‹œì˜¤." #: js/update.js:18 msgid "The update was successful. Redirecting you to ownCloud now." -msgstr "" +msgstr "ì—…ë°ì´íŠ¸ê°€ 성공하였습니다. ownCloud로 ëŒì•„갑니다." #: lostpassword/controller.php:47 msgid "ownCloud password reset" @@ -544,7 +545,7 @@ msgstr "설치 완료" msgid "web services under your control" msgstr "ë‚´ê°€ 관리하는 웹 서비스" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "로그아웃" @@ -585,4 +586,4 @@ msgstr "다ìŒ" #: templates/update.php:3 #, php-format msgid "Updating ownCloud to version %s, this may take a while." -msgstr "ownCloud 를 ë²„ì ¼ %s로 ì—…ë°ì´íЏ 하는 중, ì‹œê°„ì´ ì†Œìš”ë©ë‹ˆë‹¤." +msgstr "ownCloud를 ë²„ì „ %s(으)로 ì—…ë°ì´íŠ¸í•©ë‹ˆë‹¤. ìž ì‹œ ê¸°ë‹¤ë ¤ 주ì‹ì‹œì˜¤." diff --git a/l10n/ko/files.po b/l10n/ko/files.po index 86f4240c0a1..02a13830991 100644 --- a/l10n/ko/files.po +++ b/l10n/ko/files.po @@ -7,13 +7,14 @@ # 남ìžì‚¬ëžŒ <cessnagi@gmail.com>, 2012. # Harim Park <fofwisdom@gmail.com>, 2013. # <limonade83@gmail.com>, 2012. +# Park Shinjo <kde@peremen.name>, 2013. # Shinjo Park <kde@peremen.name>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n" "MIME-Version: 1.0\n" @@ -22,20 +23,6 @@ msgstr "" "Language: ko\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "%s í•ëª©ì„ ì´ë™ì‹œí‚¤ì§€ ëª»í•˜ì˜€ìŒ - íŒŒì¼ ì´ë¦„ì´ ì´ë¯¸ 존재함" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "%s í•ëª©ì„ ì´ë”©ì‹œí‚¤ì§€ 못하였ìŒ" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "íŒŒì¼ ì´ë¦„바꾸기 í• ìˆ˜ ì—†ìŒ" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "파ì¼ì´ 업로드ë˜ì§€ 않았습니다. 알 수 없는 오류입니다" @@ -71,27 +58,27 @@ msgstr "임시 í´ë”ê°€ 사ë¼ì§" msgid "Failed to write to disk" msgstr "디스í¬ì— ì“°ì§€ 못했습니다" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "ì—¬ìœ ê³µê°„ì´ ë¶€ì¡±í•©ë‹ˆë‹¤" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." -msgstr "올바르지 ì•Šì€ ë””ë ‰í† ë¦¬ìž…ë‹ˆë‹¤." +msgstr "올바르지 ì•Šì€ ë””ë ‰í„°ë¦¬ìž…ë‹ˆë‹¤." #: appinfo/app.php:10 msgid "Files" msgstr "파ì¼" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "ê³µìœ í•´ì œ" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "ì‚ì œ" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "ì´ë¦„ 바꾸기" @@ -115,7 +102,7 @@ msgstr "취소" msgid "replaced {new_name}" msgstr "{new_name}ì„(를) 대체함" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "실행 취소" @@ -123,13 +110,9 @@ msgstr "실행 취소" msgid "replaced {new_name} with {old_name}" msgstr "{old_name}ì´(ê°€) {new_name}(으)로 대체ë¨" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "{files} ê³µìœ í•´ì œë¨" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "{files} ì‚ì œë¨" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -137,7 +120,7 @@ msgstr "'.' 는 올바르지 ì•Šì€ íŒŒì¼ ì´ë¦„ 입니다." #: js/files.js:56 msgid "File name cannot be empty." -msgstr "파ì¼ì´ë¦„ì€ ê³µëž€ì´ ë 수 없습니다." +msgstr "íŒŒì¼ ì´ë¦„ì´ ë¹„ì–´ ìžˆì„ ìˆ˜ 없습니다." #: js/files.js:64 msgid "" @@ -147,92 +130,84 @@ msgstr "í´ë” ì´ë¦„ì´ ì˜¬ë°”ë¥´ì§€ 않습니다. ì´ë¦„ì— ë¬¸ìž '\\', '/', #: js/files.js:78 msgid "Your storage is full, files can not be updated or synced anymore!" -msgstr "" +msgstr "ì €ìž¥ ê³µê°„ì´ ê°€ë“ ì°¼ìŠµë‹ˆë‹¤. 파ì¼ì„ ì—…ë°ì´íŠ¸í•˜ê±°ë‚˜ ë™ê¸°í™”í• ìˆ˜ 없습니다!" #: js/files.js:82 msgid "Your storage is almost full ({usedSpacePercent}%)" -msgstr "" +msgstr "ì €ìž¥ ê³µê°„ì´ ê±°ì˜ ê°€ë“ ì°¼ìŠµë‹ˆë‹¤ ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." -msgstr "" +msgstr "다운로드가 준비 중입니다. íŒŒì¼ í¬ê¸°ê°€ í¬ë‹¤ë©´ ì‹œê°„ì´ ì˜¤ëž˜ 걸릴 ìˆ˜ë„ ìžˆìŠµë‹ˆë‹¤." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "ì´ íŒŒì¼ì€ ë””ë ‰í„°ë¦¬ì´ê±°ë‚˜ 비어 있기 ë•Œë¬¸ì— ì—…ë¡œë“œí• ìˆ˜ 없습니다" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "업로드 오류" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "닫기" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "보류 중" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "íŒŒì¼ 1ê°œ 업로드 중" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "íŒŒì¼ {count}ê°œ 업로드 중" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "업로드가 취소ë˜ì—ˆìŠµë‹ˆë‹¤." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "íŒŒì¼ ì—…ë¡œë“œê°€ ì§„í–‰ 중입니다. ì´ íŽ˜ì´ì§€ë¥¼ 벗어나면 업로드가 취소ë©ë‹ˆë‹¤." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URLì„ ìž…ë ¥í•´ì•¼ 합니다." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "í´ë” ì´ë¦„ì´ ìœ íš¨í•˜ì§€ 않습니다. " -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "íŒŒì¼ {count}ê°œ 검색ë¨" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "검색 중 오류 ë°œìƒ" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "ì´ë¦„" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "í¬ê¸°" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "ìˆ˜ì •ë¨" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "í´ë” 1ê°œ" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "í´ë” {count}ê°œ" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "íŒŒì¼ 1ê°œ" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "íŒŒì¼ {count}ê°œ" @@ -288,32 +263,40 @@ msgstr "í´ë”" msgid "From link" msgstr "ë§í¬ì—서" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "업로드 취소" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "ë‚´ìš©ì´ ì—†ìŠµë‹ˆë‹¤. ì—…ë¡œë“œí• ìˆ˜ 있습니다!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "다운로드" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "업로드 용량 초과" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "ì´ íŒŒì¼ì´ 서버ì—서 허용하는 최대 업로드 가능 용량보다 í½ë‹ˆë‹¤." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "파ì¼ì„ ê²€ìƒ‰í•˜ê³ ìžˆìŠµë‹ˆë‹¤. ê¸°ë‹¤ë ¤ 주ì‹ì‹œì˜¤." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "현재 검색" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "íŒŒì¼ ì‹œìŠ¤í…œ ìºì‹œ ì—…ê·¸ë ˆì´ë“œ 중..." diff --git a/l10n/ko/files_encryption.po b/l10n/ko/files_encryption.po index 441ba8cec4b..2988d1f0cf5 100644 --- a/l10n/ko/files_encryption.po +++ b/l10n/ko/files_encryption.po @@ -4,14 +4,14 @@ # # Translators: # 남ìžì‚¬ëžŒ <cessnagi@gmail.com>, 2012. -# Shinjo Park <kde@peremen.name>, 2012. +# Shinjo Park <kde@peremen.name>, 2012-2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-23 00:05+0100\n" -"PO-Revision-Date: 2013-01-22 23:05+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-01-31 17:02+0100\n" +"PO-Revision-Date: 2013-01-31 08:20+0000\n" +"Last-Translator: Shinjo Park <kde@peremen.name>\n" "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -23,53 +23,53 @@ msgstr "" msgid "" "Please switch to your ownCloud client and change your encryption password to" " complete the conversion." -msgstr "" +msgstr "ownCloud로 ì „í™˜í•œ ë‹¤ìŒ ì•”í˜¸í™”ì— ì‚¬ìš©í• ì•”í˜¸ë¥¼ 변경하면 ë³€í™˜ì´ ì™„ë£Œë©ë‹ˆë‹¤." #: js/settings-personal.js:17 msgid "switched to client side encryption" -msgstr "" +msgstr "í´ë¼ì´ì–¸íЏ 암호화로 변경ë¨" #: js/settings-personal.js:21 msgid "Change encryption password to login password" -msgstr "" +msgstr "암호화 암호를 ë¡œê·¸ì¸ ì•”í˜¸ë¡œ 변경" #: js/settings-personal.js:25 msgid "Please check your passwords and try again." -msgstr "" +msgstr "암호를 확ì¸í•œ ë‹¤ìŒ ë‹¤ì‹œ 시ë„하ì‹ì‹œì˜¤." #: js/settings-personal.js:25 msgid "Could not change your file encryption password to your login password" -msgstr "" +msgstr "암호화 암호를 ë¡œê·¸ì¸ ì•”í˜¸ë¡œ ë³€ê²½í• ìˆ˜ 없습니다" #: templates/settings-personal.php:3 templates/settings.php:5 msgid "Choose encryption mode:" -msgstr "" +msgstr "암호화 모드 ì„ íƒ:" #: templates/settings-personal.php:20 templates/settings.php:24 msgid "" "Client side encryption (most secure but makes it impossible to access your " "data from the web interface)" -msgstr "" +msgstr "í´ë¼ì´ì–¸íЏ 암호화 (ì•ˆì „í•˜ì§€ë§Œ 웹ì—서 ë°ì´í„°ì— ì ‘ê·¼í• ìˆ˜ ì—†ìŒ)" #: templates/settings-personal.php:30 templates/settings.php:36 msgid "" "Server side encryption (allows you to access your files from the web " "interface and the desktop client)" -msgstr "" +msgstr "서버 암호화 (웹 ë° ë°ìФí¬í†± í´ë¼ì´ì–¸íЏì—서 ë°ì´í„°ì— ì ‘ê·¼í• ìˆ˜ 있ìŒ)" #: templates/settings-personal.php:41 templates/settings.php:60 msgid "None (no encryption at all)" -msgstr "" +msgstr "ì—†ìŒ (암호화하지 않ìŒ)" #: templates/settings.php:10 msgid "" "Important: Once you selected an encryption mode there is no way to change it" " back" -msgstr "" +msgstr "알림: 암호화 모드를 ì„ íƒí•˜ë©´ 다른 것으로 ë³€ê²½í• ìˆ˜ 없습니다" #: templates/settings.php:48 msgid "User specific (let the user decide)" -msgstr "" +msgstr "ì‚¬ìš©ìž ì§€ì • (사용ìžë³„ ì„¤ì •)" #: templates/settings.php:65 msgid "Encryption" diff --git a/l10n/ko/files_external.po b/l10n/ko/files_external.po index f43b8963773..0c7bf2da326 100644 --- a/l10n/ko/files_external.po +++ b/l10n/ko/files_external.po @@ -5,14 +5,15 @@ # Translators: # <aoiob4305@gmail.com>, 2013. # 남ìžì‚¬ëžŒ <cessnagi@gmail.com>, 2012. +# Park Shinjo <peremen@gmail.com>, 2013. # Shinjo Park <kde@peremen.name>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-08 00:30+0100\n" -"PO-Revision-Date: 2013-01-07 10:07+0000\n" -"Last-Translator: aoiob4305 <aoiob4305@gmail.com>\n" +"POT-Creation-Date: 2013-01-31 17:02+0100\n" +"PO-Revision-Date: 2013-01-31 08:10+0000\n" +"Last-Translator: Shinjo Park <kde@peremen.name>\n" "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -28,11 +29,11 @@ msgstr "ì ‘ê·¼ 허가ë¨" msgid "Error configuring Dropbox storage" msgstr "Dropbox ì €ìž¥ì†Œ ì„¤ì • 오류" -#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:40 +#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:41 msgid "Grant access" msgstr "ì ‘ê·¼ 권한 부여" -#: js/dropbox.js:73 js/google.js:72 +#: js/dropbox.js:73 js/google.js:73 msgid "Fill out all required fields" msgstr "ëª¨ë“ í•„ìˆ˜ í•ëª©ì„ ìž…ë ¥í•˜ì‹ì‹œì˜¤" @@ -40,22 +41,22 @@ msgstr "ëª¨ë“ í•„ìˆ˜ í•ëª©ì„ ìž…ë ¥í•˜ì‹ì‹œì˜¤" msgid "Please provide a valid Dropbox app key and secret." msgstr "올바른 Dropbox 앱 키와 암호를 ìž…ë ¥í•˜ì‹ì‹œì˜¤." -#: js/google.js:26 js/google.js:73 js/google.js:78 +#: js/google.js:26 js/google.js:74 js/google.js:79 msgid "Error configuring Google Drive storage" msgstr "Google 드ë¼ì´ë¸Œ ì €ìž¥ì†Œ ì„¤ì • 오류" -#: lib/config.php:434 +#: lib/config.php:405 msgid "" "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares " "is not possible. Please ask your system administrator to install it." -msgstr "<b>ê²½ê³ </b>\"smbclient\"ê°€ 설치ë˜ì§€ 않았습니다. CIFS/SMB ê³µìœ ì• ì—°ê²°ì´ ë¶ˆê°€ëŠ¥ 합니다.. 시스템 관리ìžì—게 ìš”ì²í•˜ì—¬ 설치하시기 ë°”ëžë‹ˆë‹¤." +msgstr "<b>ê²½ê³ :</b> \"smbclient\"ê°€ 설치ë˜ì§€ 않았습니다. CIFS/SMB ê³µìœ ìžì›ì— ì—°ê²°í• ìˆ˜ 없습니다. 시스템 관리ìžì—게 설치를 ìš”ì²í•˜ì‹ì‹œì˜¤." -#: lib/config.php:435 +#: lib/config.php:406 msgid "" "<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." -msgstr "<b>ê²½ê³ </b>PHPìš© FTP ì§€ì›ì´ 사용 불가능 하거나 설치ë˜ì§€ 않았습니다. FTP ê³µìœ ì— ì—°ê²°ì´ ë¶ˆê°€ëŠ¥ 합니다. 시스템 관리ìžì—게 ìš”ì²í•˜ì—¬ 설치하시기 ë°”ëžë‹ˆë‹¤. " +msgstr "<b>ê²½ê³ :</b> PHP FTP ì§€ì›ì´ 비활성화ë˜ì–´ 있거나 설치ë˜ì§€ 않았습니다. FTP ê³µìœ ë¥¼ ë§ˆìš´íŠ¸í• ìˆ˜ 없습니다. 시스템 관리ìžì—게 설치를 ìš”ì²í•˜ì‹ì‹œì˜¤." #: templates/settings.php:3 msgid "External Storage" diff --git a/l10n/ko/files_trashbin.po b/l10n/ko/files_trashbin.po new file mode 100644 index 00000000000..a87ddd6b8dd --- /dev/null +++ b/l10n/ko/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ko\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "ì´ë¦„" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "í´ë” 1ê°œ" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "í´ë” {count}ê°œ" + +#: js/trash.js:120 +msgid "1 file" +msgstr "íŒŒì¼ 1ê°œ" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "íŒŒì¼ {count}ê°œ" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "ë³µì›" diff --git a/l10n/ko/lib.po b/l10n/ko/lib.po index c759d43ece3..ffbaa11a4ec 100644 --- a/l10n/ko/lib.po +++ b/l10n/ko/lib.po @@ -4,14 +4,15 @@ # # Translators: # 남ìžì‚¬ëžŒ <cessnagi@gmail.com>, 2012. +# Park Shinjo <kde@peremen.name>, 2013. # Shinjo Park <kde@peremen.name>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-17 00:26+0100\n" -"PO-Revision-Date: 2013-01-16 23:26+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-01-31 17:02+0100\n" +"PO-Revision-Date: 2013-01-31 08:10+0000\n" +"Last-Translator: Shinjo Park <kde@peremen.name>\n" "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -43,25 +44,25 @@ msgstr "앱" msgid "Admin" msgstr "관리ìž" -#: files.php:365 +#: files.php:202 msgid "ZIP download is turned off." msgstr "ZIP 다운로드가 비활성화ë˜ì—ˆìŠµë‹ˆë‹¤." -#: files.php:366 +#: files.php:203 msgid "Files need to be downloaded one by one." msgstr "파ì¼ì„ 개별ì 으로 다운로드해야 합니다." -#: files.php:366 files.php:391 +#: files.php:203 files.php:228 msgid "Back to Files" msgstr "파ì¼ë¡œ ëŒì•„가기" -#: files.php:390 +#: files.php:227 msgid "Selected files too large to generate zip file." msgstr "ì„ íƒí•œ 파ì¼ë“¤ì€ ZIP 파ì¼ì„ ìƒì„±í•˜ê¸°ì— 너무 í½ë‹ˆë‹¤." -#: helper.php:228 +#: helper.php:226 msgid "couldn't be determined" -msgstr "" +msgstr "ê²°ì •í• ìˆ˜ ì—†ìŒ" #: json.php:28 msgid "Application is not enabled" diff --git a/l10n/ko/settings.po b/l10n/ko/settings.po index 2236af6d9cd..62097ea4a5a 100644 --- a/l10n/ko/settings.po +++ b/l10n/ko/settings.po @@ -7,13 +7,13 @@ # 남ìžì‚¬ëžŒ <cessnagi@gmail.com>, 2012. # Harim Park <fofwisdom@gmail.com>, 2013. # <limonade83@gmail.com>, 2012. -# Shinjo Park <kde@peremen.name>, 2012. +# Shinjo Park <kde@peremen.name>, 2012-2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n" "MIME-Version: 1.0\n" @@ -80,14 +80,42 @@ msgstr "그룹 %sì— ì‚¬ìš©ìžë¥¼ ì¶”ê°€í• ìˆ˜ 없습니다." msgid "Unable to remove user from group %s" msgstr "그룹 %sì—서 사용ìžë¥¼ ì‚ì œí• ìˆ˜ 없습니다." -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "비활성화" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "활성화" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "오류" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "ì €ìž¥ 중..." @@ -114,11 +142,15 @@ msgstr "apps.owncloud.comì— ìžˆëŠ” 앱 페ì´ì§€ë¥¼ ì°¸ê³ í•˜ì‹ì‹œì˜¤" #: templates/apps.php:29 msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" -msgstr "<span class=\"licence\"></span>-ë¼ì´ì„ 스 ë³´ìœ ìž <span class=\"author\"></span>" +msgstr "<span class=\"licence\"></span>-ë¼ì´ì„ 스ë¨: <span class=\"author\"></span>" + +#: templates/apps.php:31 +msgid "Update" +msgstr "ì—…ë°ì´íЏ" #: templates/help.php:3 msgid "User Documentation" -msgstr "ìœ ì € 문서" +msgstr "ì‚¬ìš©ìž ë¬¸ì„œ" #: templates/help.php:4 msgid "Administrator Documentation" @@ -134,7 +166,7 @@ msgstr "í¬ëŸ¼" #: templates/help.php:9 msgid "Bugtracker" -msgstr "버그트래커" +msgstr "버그 트래커" #: templates/help.php:11 msgid "Commercial Support" @@ -147,11 +179,11 @@ msgstr "현재 공간 <strong>%s</strong>/<strong>%s</strong>ì„(를) 사용 중 #: templates/personal.php:12 msgid "Clients" -msgstr "ê³ ê°" +msgstr "í´ë¼ì´ì–¸íЏ" #: templates/personal.php:13 msgid "Download Desktop Clients" -msgstr "ë°ìФí¬íƒ‘ í´ë¼ì´ì–¸íЏ 다운로드" +msgstr "ë°ìФí¬í†± í´ë¼ì´ì–¸íЏ 다운로드" #: templates/personal.php:14 msgid "Download Android Client" @@ -215,11 +247,11 @@ msgstr "WebDAV" #: templates/personal.php:54 msgid "Use this address to connect to your ownCloud in your file manager" -msgstr "íŒŒì¼ ë§¤ë‹ˆì €ì—서 사용ìžì˜ ownCloudì— ì ‘ì†í•˜ê¸° 위해 ì´ ì£¼ì†Œë¥¼ 사용하ì‹ì‹œìš”." +msgstr "íŒŒì¼ ê´€ë¦¬ìžì—서 ownCloudì— ì ‘ì†í•˜ë ¤ë©´ ì´ ì£¼ì†Œë¥¼ 사용하ì‹ì‹œì˜¤." #: templates/personal.php:63 msgid "Version" -msgstr "ë²„ì ¼" +msgstr "ë²„ì „" #: templates/personal.php:65 msgid "" @@ -233,7 +265,7 @@ msgstr "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud ì»¤ë® #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "ë¡œê·¸ì¸ ì´ë¦„" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -257,7 +289,7 @@ msgstr "기타" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "표시 ì´ë¦„" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -267,6 +299,14 @@ msgstr "그룹 관리ìž" msgid "Storage" msgstr "ì €ìž¥ì†Œ" +#: templates/users.php:97 +msgid "change display name" +msgstr "표시 ì´ë¦„ 변경" + +#: templates/users.php:101 +msgid "set new password" +msgstr "새 암호 ì„¤ì •" + #: templates/users.php:137 msgid "Default" msgstr "기본값" diff --git a/l10n/ko/user_ldap.po b/l10n/ko/user_ldap.po index 53b9f3b081f..93e6a601aa0 100644 --- a/l10n/ko/user_ldap.po +++ b/l10n/ko/user_ldap.po @@ -5,13 +5,13 @@ # Translators: # <aoiob4305@gmail.com>, 2013. # 남ìžì‚¬ëžŒ <cessnagi@gmail.com>, 2012. -# Shinjo Park <kde@peremen.name>, 2012. +# Shinjo Park <kde@peremen.name>, 2012-2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n" "MIME-Version: 1.0\n" @@ -20,179 +20,293 @@ msgstr "" "Language: ko\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "ì‚ì œ 실패" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" " experience unexpected behaviour. Please ask your system administrator to " "disable one of them." -msgstr "<b>ê²½ê³ </b>user_ldap 앱과 user_webdavauth ì•±ì€ í˜¸í™˜ë˜ì§€ 않습니다. 오ë™ìž‘ì„ ì¼ìœ¼í‚¬ 수 있으므로, 시스템 관리ìžì—게 ìš”ì²í•˜ì—¬, 둘 중 하나를 비활성화 하시기 ë°”ëžë‹ˆë‹¤." +msgstr "<b>ê²½ê³ :</b> user_ldap 앱과 user_webdavauth ì•±ì€ í˜¸í™˜ë˜ì§€ 않습니다. 오ë™ìž‘ì„ ì¼ìœ¼í‚¬ 수 있으므로, 시스템 관리ìžì—게 ìš”ì²í•˜ì—¬ 둘 중 하나만 사용하ë„ë¡ í•˜ì‹ì‹œì˜¤." #: templates/settings.php:11 msgid "" "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not " "work. Please ask your system administrator to install it." -msgstr "" +msgstr "<b>ê²½ê³ :</b> PHP LDAP ëª¨ë“ˆì´ ë¹„í™œì„±í™”ë˜ì–´ 있거나 설치ë˜ì–´ 있지 않습니다. 백엔드를 ì‚¬ìš©í• ìˆ˜ 없습니다. 시스템 관리ìžì—게 설치를 ìš”ì²í•˜ì‹ì‹œì˜¤." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "호스트" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "SSLì„ ì‚¬ìš©í•˜ëŠ” 경우가 아니ë¼ë©´ í”„ë¡œí† ì½œì„ ìž…ë ¥í•˜ì§€ ì•Šì•„ë„ ë©ë‹ˆë‹¤. SSLì„ ì‚¬ìš©í•˜ë ¤ë©´ ldaps://를 ìž…ë ¥í•˜ì‹ì‹œì˜¤." -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "기본 DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" -msgstr "" +msgstr "기본 DNì„ í•œ ì¤„ì— í•˜ë‚˜ì”© ìž…ë ¥í•˜ì‹ì‹œì˜¤" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "ê³ ê¸‰ íƒì—서 ì‚¬ìš©ìž ë° ê·¸ë£¹ì— ëŒ€í•œ 기본 DNì„ ì§€ì •í• ìˆ˜ 있습니다." -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "ì‚¬ìš©ìž DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "ë°”ì¸ë”© ìž‘ì—…ì„ ìˆ˜í–‰í• í´ë¼ì´ì–¸íЏ ì‚¬ìš©ìž DN입니다. 예를 들어서 uid=agent,dc=example,dc=com입니다. ìµëª… ì ‘ê·¼ì„ í—ˆìš©í•˜ë ¤ë©´ DNê³¼ 암호를 비워 ë‘ì‹ì‹œì˜¤." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "암호" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "ìµëª… ì ‘ê·¼ì„ í—ˆìš©í•˜ë ¤ë©´ DNê³¼ 암호를 비워 ë‘ì‹ì‹œì˜¤." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "ì‚¬ìš©ìž ë¡œê·¸ì¸ í•„í„°" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "로그ì¸ì„ 시ë„í• ë•Œ ì ìš©í• í•„í„°ìž…ë‹ˆë‹¤. %%uid는 ë¡œê·¸ì¸ ìž‘ì—…ì—ì„œì˜ ì‚¬ìš©ìž ì´ë¦„으로 대체ë©ë‹ˆë‹¤." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "%%uid ìžë¦¬ 비움ìžë¥¼ 사용하ì‹ì‹œì˜¤. ì˜ˆì œ: \"uid=%%uid\"\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "ì‚¬ìš©ìž ëª©ë¡ í•„í„°" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "사용ìžë¥¼ ê²€ìƒ‰í• ë•Œ ì ìš©í• í•„í„°ë¥¼ ì •ì˜í•©ë‹ˆë‹¤." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "ìžë¦¬ 비움ìžë¥¼ ì‚¬ìš©í• ìˆ˜ 없습니다. ì˜ˆì œ: \"objectClass=person\"" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "그룹 í•„í„°" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "ê·¸ë£¹ì„ ê²€ìƒ‰í• ë•Œ ì ìš©í• í•„í„°ë¥¼ ì •ì˜í•©ë‹ˆë‹¤." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "ìžë¦¬ 비움ìžë¥¼ ì‚¬ìš©í• ìˆ˜ 없습니다. ì˜ˆì œ: \"objectClass=posixGroup\"" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "í¬íЏ" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "기본 ì‚¬ìš©ìž íŠ¸ë¦¬" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "기본 그룹 트리" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "그룹-íšŒì› ì—°ê²°" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "TLS 사용" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "SSL ì—°ê²° 시 사용하는 경우 ì—°ê²°ë˜ì§€ 않습니다." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "서버ì—서 대소문ìžë¥¼ 구분하지 ì•ŠìŒ (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "SSL ì¸ì¦ì„œ ìœ íš¨ì„± 검사를 í•´ì œí•©ë‹ˆë‹¤." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "ì´ ì˜µì…˜ì„ ì‚¬ìš©í•´ì•¼ ì—°ê²°í• ìˆ˜ 있는 경우ì—는 LDAP ì„œë²„ì˜ SSL ì¸ì¦ì„œë¥¼ ownCloud로 ê°€ì ¸ì˜¬ 수 있습니다." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "추천하지 않ìŒ, 테스트로만 사용하ì‹ì‹œì˜¤." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "ì´ˆ. í•목 변경 시 ìºì‹œê°€ ê°±ì‹ ë©ë‹ˆë‹¤." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "사용ìžì˜ 표시 ì´ë¦„ 필드" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "LDAP ì†ì„±ì€ 사용ìžì˜ ownCloud ì´ë¦„ì„ ìƒì„±í•˜ê¸° 위해 사용합니다." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "기본 ì‚¬ìš©ìž íŠ¸ë¦¬" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "ì‚¬ìš©ìž DNì„ í•œ ì¤„ì— í•˜ë‚˜ì”© ìž…ë ¥í•˜ì‹ì‹œì˜¤" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "ê·¸ë£¹ì˜ í‘œì‹œ ì´ë¦„ 필드" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "LDAP ì†ì„±ì€ ê·¸ë£¹ì˜ ownCloud ì´ë¦„ì„ ìƒì„±í•˜ê¸° 위해 사용합니다." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "기본 그룹 트리" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "그룹 기본 DNì„ í•œ ì¤„ì— í•˜ë‚˜ì”© ìž…ë ¥í•˜ì‹ì‹œì˜¤" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "그룹-íšŒì› ì—°ê²°" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "ë°”ì´íЏ" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "ì´ˆ. í•목 변경 시 ìºì‹œê°€ ê°±ì‹ ë©ë‹ˆë‹¤." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "ì‚¬ìš©ìž ì´ë¦„ì„ ì‚¬ìš©í•˜ë ¤ë©´ 비워 ë‘ì‹ì‹œì˜¤(기본값). 기타 경우 LDAP/AD ì†ì„±ì„ ì§€ì •í•˜ì‹ì‹œì˜¤." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "ë„움ë§" diff --git a/l10n/ko/user_webdavauth.po b/l10n/ko/user_webdavauth.po index bd135598c7f..f10bd76454e 100644 --- a/l10n/ko/user_webdavauth.po +++ b/l10n/ko/user_webdavauth.po @@ -5,13 +5,14 @@ # Translators: # <aoiob4305@gmail.com>, 2013. # 남ìžì‚¬ëžŒ <cessnagi@gmail.com>, 2012. +# Park Shinjo <kde@peremen.name>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-15 00:03+0100\n" -"PO-Revision-Date: 2013-01-14 23:04+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-01-31 17:02+0100\n" +"PO-Revision-Date: 2013-01-31 08:10+0000\n" +"Last-Translator: Shinjo Park <kde@peremen.name>\n" "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,7 +22,7 @@ msgstr "" #: templates/settings.php:3 msgid "WebDAV Authentication" -msgstr "" +msgstr "WebDAV ì¸ì¦" #: templates/settings.php:4 msgid "URL: http://" @@ -32,4 +33,4 @@ msgid "" "ownCloud will send the user credentials to this URL. This plugin checks the " "response and will interpret the HTTP statuscodes 401 and 403 as invalid " "credentials, and all other responses as valid credentials." -msgstr "" +msgstr "ownCloudì—서 ì´ URL로 ì‚¬ìš©ìž ì¸ì¦ ì •ë³´ë¥¼ 보냅니다. ì´ í”ŒëŸ¬ê·¸ì¸ì€ ì‘ë‹µì„ í™•ì¸í•˜ì—¬ HTTP ìƒíƒœ 코드 401ì´ë‚˜ 403ì´ ëŒì•„온 ê²½ìš°ì— ìž˜ëª»ëœ ì¸ì¦ ì •ë³´ë¡œ 간주합니다. 다른 ëª¨ë“ ìƒíƒœ 코드는 올바른 ì¸ì¦ ì •ë³´ë¡œ 간주합니다." diff --git a/l10n/ku_IQ/core.po b/l10n/ku_IQ/core.po index b06563d7538..f05ab88b030 100644 --- a/l10n/ku_IQ/core.po +++ b/l10n/ku_IQ/core.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Kurdish (Iraq) (http://www.transifex.com/projects/p/owncloud/language/ku_IQ/)\n" "MIME-Version: 1.0\n" @@ -156,59 +156,59 @@ msgstr "" msgid "December" msgstr "" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "ده‌ستكاری" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "" @@ -541,7 +541,7 @@ msgstr "كۆتایی هات ده‌ستكاریه‌كان" msgid "web services under your control" msgstr "ڕاژه‌ی وێب له‌ژێر چاودێریت دایه" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "چوونەدەرەوە" diff --git a/l10n/ku_IQ/files.po b/l10n/ku_IQ/files.po index b3b16e0bc71..d8cb9b82a79 100644 --- a/l10n/ku_IQ/files.po +++ b/l10n/ku_IQ/files.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Kurdish (Iraq) (http://www.transifex.com/projects/p/owncloud/language/ku_IQ/)\n" "MIME-Version: 1.0\n" @@ -17,20 +17,6 @@ msgstr "" "Language: ku_IQ\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -66,11 +52,11 @@ msgstr "" msgid "Failed to write to disk" msgstr "" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -78,15 +64,15 @@ msgstr "" msgid "Files" msgstr "" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "" @@ -110,7 +96,7 @@ msgstr "" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "" @@ -118,12 +104,8 @@ msgstr "" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -148,86 +130,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "داخستن" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "ناونیشانی به‌سته‌ر نابێت به‌تاڵ بێت." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "ناو" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -283,32 +257,40 @@ msgstr "بوخچه" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "داگرتن" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/ku_IQ/files_trashbin.po b/l10n/ku_IQ/files_trashbin.po new file mode 100644 index 00000000000..f1318338be4 --- /dev/null +++ b/l10n/ku_IQ/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Kurdish (Iraq) (http://www.transifex.com/projects/p/owncloud/language/ku_IQ/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ku_IQ\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "ناو" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/ku_IQ/settings.po b/l10n/ku_IQ/settings.po index db582696a95..adb4e79653e 100644 --- a/l10n/ku_IQ/settings.po +++ b/l10n/ku_IQ/settings.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Kurdish (Iraq) (http://www.transifex.com/projects/p/owncloud/language/ku_IQ/)\n" "MIME-Version: 1.0\n" @@ -75,14 +75,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "چالاککردن" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "هه‌ڵه" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "پاشکه‌وتده‌کات..." @@ -111,6 +139,10 @@ msgstr "" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "نوێکردنه‌وه" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -262,6 +294,14 @@ msgstr "" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/ku_IQ/user_ldap.po b/l10n/ku_IQ/user_ldap.po index a6c60224118..33cf75e5ea1 100644 --- a/l10n/ku_IQ/user_ldap.po +++ b/l10n/ku_IQ/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 21:57+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Kurdish (Iraq) (http://www.transifex.com/projects/p/owncloud/language/ku_IQ/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: ku_IQ\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "یارمەتی" diff --git a/l10n/lb/core.po b/l10n/lb/core.po index cf61dda08ca..b365652b49a 100644 --- a/l10n/lb/core.po +++ b/l10n/lb/core.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Luxembourgish (http://www.transifex.com/projects/p/owncloud/language/lb/)\n" "MIME-Version: 1.0\n" @@ -157,59 +157,59 @@ msgstr "November" msgid "December" msgstr "Dezember" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Astellungen" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "vrun 1 Stonn" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "vru {hours} Stonnen" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "Läschte Mount" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "vru {months} Méint" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "Méint hier" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "Läscht Joer" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "Joren hier" @@ -254,7 +254,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Deelen" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -542,7 +542,7 @@ msgstr "Installatioun ofschléissen" msgid "web services under your control" msgstr "Web Servicer ënnert denger Kontroll" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Ausloggen" diff --git a/l10n/lb/files.po b/l10n/lb/files.po index 89400d84768..01de41c0d8e 100644 --- a/l10n/lb/files.po +++ b/l10n/lb/files.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Luxembourgish (http://www.transifex.com/projects/p/owncloud/language/lb/)\n" "MIME-Version: 1.0\n" @@ -18,20 +18,6 @@ msgstr "" "Language: lb\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -67,11 +53,11 @@ msgstr "Et feelt en temporären Dossier" msgid "Failed to write to disk" msgstr "Konnt net op den Disk schreiwen" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -79,15 +65,15 @@ msgstr "" msgid "Files" msgstr "Dateien" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Net méi deelen" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Läschen" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "" @@ -111,7 +97,7 @@ msgstr "ofbriechen" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "réckgängeg man" @@ -119,12 +105,8 @@ msgstr "réckgängeg man" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -149,86 +131,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Kann deng Datei net eroplueden well et en Dossier ass oder 0 byte grouss ass." -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Fehler beim eroplueden" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Zoumaachen" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Upload ofgebrach." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "File Upload am gaang. Wann's de des Säit verléiss gëtt den Upload ofgebrach." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Numm" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Gréisst" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Geännert" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -284,32 +258,40 @@ msgstr "Dossier" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Upload ofbriechen" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Hei ass näischt. Lued eppes rop!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Eroflueden" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Upload ze grouss" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Déi Dateien déi Dir probéiert erop ze lueden sinn méi grouss wei déi Maximal Gréisst déi op dësem Server erlaabt ass." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Fichieren gi gescannt, war weg." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Momentane Scan" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/lb/files_trashbin.po b/l10n/lb/files_trashbin.po new file mode 100644 index 00000000000..7ddea15d47e --- /dev/null +++ b/l10n/lb/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Luxembourgish (http://www.transifex.com/projects/p/owncloud/language/lb/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: lb\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Numm" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/lb/settings.po b/l10n/lb/settings.po index ffe1d795a65..e2d2d5243d3 100644 --- a/l10n/lb/settings.po +++ b/l10n/lb/settings.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Luxembourgish (http://www.transifex.com/projects/p/owncloud/language/lb/)\n" "MIME-Version: 1.0\n" @@ -76,14 +76,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Ofschalten" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Aschalten" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Fehler" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Speicheren..." @@ -112,6 +140,10 @@ msgstr "Kuck dir d'Applicatioun's Säit op apps.owncloud.com un" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -263,6 +295,14 @@ msgstr "Gruppen Admin" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/lb/user_ldap.po b/l10n/lb/user_ldap.po index b48c76aa9b2..a7cdcba6fe6 100644 --- a/l10n/lb/user_ldap.po +++ b/l10n/lb/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 13:36+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Luxembourgish (http://www.transifex.com/projects/p/owncloud/language/lb/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: lb\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Konnt net läschen" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Passwuert" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Hëllef" diff --git a/l10n/lt_LT/core.po b/l10n/lt_LT/core.po index a6aff9a772f..7d3c632fd08 100644 --- a/l10n/lt_LT/core.po +++ b/l10n/lt_LT/core.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/projects/p/owncloud/language/lt_LT/)\n" "MIME-Version: 1.0\n" @@ -157,59 +157,59 @@ msgstr "Lapkritis" msgid "December" msgstr "Gruodis" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Nustatymai" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "prieÅ¡ sekundÄ™" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "PrieÅ¡ 1 minutÄ™" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "PrieÅ¡ {count} minutes" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "Å¡iandien" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "vakar" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "PrieÅ¡ {days} dienas" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "praeitÄ… mÄ—nesį" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "prieÅ¡ mÄ—nesį" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "praeitais metais" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "prieÅ¡ metus" @@ -254,7 +254,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Dalintis" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -542,7 +542,7 @@ msgstr "Baigti diegimÄ…" msgid "web services under your control" msgstr "jÅ«sų valdomos web paslaugos" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Atsijungti" diff --git a/l10n/lt_LT/files.po b/l10n/lt_LT/files.po index ade78b17896..4776b8e8f10 100644 --- a/l10n/lt_LT/files.po +++ b/l10n/lt_LT/files.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/projects/p/owncloud/language/lt_LT/)\n" "MIME-Version: 1.0\n" @@ -20,20 +20,6 @@ msgstr "" "Language: lt_LT\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -69,11 +55,11 @@ msgstr "NÄ—ra laikinojo katalogo" msgid "Failed to write to disk" msgstr "Nepavyko įraÅ¡yti į diskÄ…" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -81,15 +67,15 @@ msgstr "" msgid "Files" msgstr "Failai" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Nebesidalinti" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "IÅ¡trinti" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Pervadinti" @@ -113,7 +99,7 @@ msgstr "atÅ¡aukti" msgid "replaced {new_name}" msgstr "pakeiskite {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "anuliuoti" @@ -121,13 +107,9 @@ msgstr "anuliuoti" msgid "replaced {new_name} with {old_name}" msgstr "pakeiskite {new_name} į {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "nebesidalinti {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "iÅ¡trinti {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -151,86 +133,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Neįmanoma įkelti failo - jo dydis gali bÅ«ti 0 bitų arba tai katalogas" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Ä®kÄ—limo klaida" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Užverti" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Laukiantis" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "įkeliamas 1 failas" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} įkeliami failai" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Ä®kÄ—limas atÅ¡auktas." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Failo įkÄ—limas pradÄ—tas. Jei paliksite šį puslapį, įkÄ—limas nutrÅ«ks." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} praskanuoti failai" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "klaida skanuojant" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Pavadinimas" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Dydis" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Pakeista" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 aplankalas" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} aplankalai" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 failas" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} failai" @@ -286,32 +260,40 @@ msgstr "Katalogas" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "AtÅ¡aukti siuntimÄ…" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "ÄŒia tuÅ¡Äia. Ä®kelkite kÄ… nors!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Atsisiųsti" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Ä®kÄ—limui failas per didelis" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Bandomų įkelti failų dydis virÅ¡ija maksimalų leidžiamÄ… Å¡iame serveryje" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Skenuojami failai, praÅ¡ome palaukti." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Å iuo metu skenuojama" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/lt_LT/files_trashbin.po b/l10n/lt_LT/files_trashbin.po new file mode 100644 index 00000000000..af1841dd647 --- /dev/null +++ b/l10n/lt_LT/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/projects/p/owncloud/language/lt_LT/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: lt_LT\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Pavadinimas" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 aplankalas" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} aplankalai" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 failas" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} failai" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/lt_LT/settings.po b/l10n/lt_LT/settings.po index 4c4d82e432c..1499763e4ff 100644 --- a/l10n/lt_LT/settings.po +++ b/l10n/lt_LT/settings.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/projects/p/owncloud/language/lt_LT/)\n" "MIME-Version: 1.0\n" @@ -77,14 +77,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "IÅ¡jungti" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Ä®jungti" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Klaida" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Saugoma.." @@ -113,6 +141,10 @@ msgstr "" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>- autorius<span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Atnaujinti" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -264,6 +296,14 @@ msgstr "" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/lt_LT/user_ldap.po b/l10n/lt_LT/user_ldap.po index 0abf2d8c2fd..360405cc4d1 100644 --- a/l10n/lt_LT/user_ldap.po +++ b/l10n/lt_LT/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:19+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/projects/p/owncloud/language/lt_LT/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: lt_LT\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "IÅ¡trinti nepavyko" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Slaptažodis" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "GrupÄ—s filtras" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Prievadas" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Naudoti TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "IÅ¡jungti SSL sertifikato tikrinimÄ…." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Nerekomenduojama, naudokite tik testavimui." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Pagalba" diff --git a/l10n/lv/core.po b/l10n/lv/core.po index 723dfe3b854..8c8994628c9 100644 --- a/l10n/lv/core.po +++ b/l10n/lv/core.po @@ -4,13 +4,14 @@ # # Translators: # <aldis@udris.lv>, 2012. +# RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 19:10+0000\n" +"Last-Translator: RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>\n" "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,64 +22,64 @@ msgstr "" #: ajax/share.php:85 #, php-format msgid "User %s shared a file with you" -msgstr "" +msgstr "LietotÄjs %s ar jums dalÄ«jÄs ar datni." #: ajax/share.php:87 #, php-format msgid "User %s shared a folder with you" -msgstr "" +msgstr "LietotÄjs %s ar jums dalÄ«jÄs ar mapi." #: ajax/share.php:89 #, php-format msgid "" "User %s shared the file \"%s\" with you. It is available for download here: " "%s" -msgstr "" +msgstr "LietotÄjs %s ar jums dalÄ«jÄs ar datni “%sâ€. To var lejupielÄdÄ“t Å¡eit — %s" #: ajax/share.php:91 #, php-format msgid "" "User %s shared the folder \"%s\" with you. It is available for download " "here: %s" -msgstr "" +msgstr "LietotÄjs %s ar jums dalÄ«jÄs ar mapi “%sâ€. To var lejupielÄdÄ“t Å¡eit — %s" #: ajax/vcategories/add.php:26 ajax/vcategories/edit.php:25 msgid "Category type not provided." -msgstr "" +msgstr "Kategorijas tips nav norÄdÄ«ts." #: ajax/vcategories/add.php:30 msgid "No category to add?" -msgstr "" +msgstr "Nav kategoriju, ko pievienot?" #: ajax/vcategories/add.php:37 msgid "This category already exists: " -msgstr "" +msgstr "Å Äda kategorija jau eksistÄ“:" #: ajax/vcategories/addToFavorites.php:26 ajax/vcategories/delete.php:27 #: ajax/vcategories/favorites.php:24 #: ajax/vcategories/removeFromFavorites.php:26 msgid "Object type not provided." -msgstr "" +msgstr "Objekta tips nav norÄdÄ«ts." #: ajax/vcategories/addToFavorites.php:30 #: ajax/vcategories/removeFromFavorites.php:30 #, php-format msgid "%s ID not provided." -msgstr "" +msgstr "%s ID nav norÄdÄ«ts." #: ajax/vcategories/addToFavorites.php:35 #, php-format msgid "Error adding %s to favorites." -msgstr "" +msgstr "Kļūda, pievienojot %s izlasei." #: ajax/vcategories/delete.php:35 js/oc-vcategories.js:136 msgid "No categories selected for deletion." -msgstr "" +msgstr "Neviena kategorija nav izvÄ“lÄ“ta dzēšanai" #: ajax/vcategories/removeFromFavorites.php:35 #, php-format msgid "Error removing %s from favorites." -msgstr "" +msgstr "Kļūda, izņemot %s no izlases." #: js/config.php:32 msgid "Sunday" @@ -156,65 +157,65 @@ msgstr "Novembris" msgid "December" msgstr "Decembris" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "IestatÄ«jumi" -#: js/js.js:762 +#: js/js.js:760 msgid "seconds ago" -msgstr "" +msgstr "sekundes atpakaļ" -#: js/js.js:763 +#: js/js.js:761 msgid "1 minute ago" -msgstr "" +msgstr "pirms 1 minÅ«tes" -#: js/js.js:764 +#: js/js.js:762 msgid "{minutes} minutes ago" -msgstr "" +msgstr "pirms {minutes} minÅ«tÄ“m" -#: js/js.js:765 +#: js/js.js:763 msgid "1 hour ago" -msgstr "" +msgstr "pirms 1 stundas" -#: js/js.js:766 +#: js/js.js:764 msgid "{hours} hours ago" -msgstr "" +msgstr "pirms {hours} stundÄm" -#: js/js.js:767 +#: js/js.js:765 msgid "today" -msgstr "" +msgstr "Å¡odien" -#: js/js.js:768 +#: js/js.js:766 msgid "yesterday" -msgstr "" +msgstr "vakar" -#: js/js.js:769 +#: js/js.js:767 msgid "{days} days ago" -msgstr "" +msgstr "pirms {days} dienÄm" -#: js/js.js:770 +#: js/js.js:768 msgid "last month" -msgstr "" +msgstr "pagÄjuÅ¡ajÄ mÄ“nesÄ«" -#: js/js.js:771 +#: js/js.js:769 msgid "{months} months ago" -msgstr "" +msgstr "pirms {months} mÄ“neÅ¡iem" -#: js/js.js:772 +#: js/js.js:770 msgid "months ago" -msgstr "" +msgstr "mÄ“neÅ¡us atpakaļ" -#: js/js.js:773 +#: js/js.js:771 msgid "last year" -msgstr "" +msgstr "gÄjuÅ¡ajÄ gadÄ" -#: js/js.js:774 +#: js/js.js:772 msgid "years ago" -msgstr "" +msgstr "gadus atpakaļ" #: js/oc-dialogs.js:126 msgid "Choose" -msgstr "" +msgstr "IzvÄ“lieties" #: js/oc-dialogs.js:146 js/oc-dialogs.js:166 msgid "Cancel" @@ -222,74 +223,74 @@ msgstr "Atcelt" #: js/oc-dialogs.js:162 msgid "No" -msgstr "" +msgstr "NÄ“" #: js/oc-dialogs.js:163 msgid "Yes" -msgstr "" +msgstr "JÄ" #: js/oc-dialogs.js:180 msgid "Ok" -msgstr "" +msgstr "Labi" #: js/oc-vcategories.js:5 js/oc-vcategories.js:85 js/oc-vcategories.js:102 #: js/oc-vcategories.js:117 js/oc-vcategories.js:132 js/oc-vcategories.js:162 msgid "The object type is not specified." -msgstr "" +msgstr "Nav norÄdÄ«ts objekta tips." #: js/oc-vcategories.js:95 js/oc-vcategories.js:125 js/oc-vcategories.js:136 #: js/oc-vcategories.js:195 js/share.js:152 js/share.js:159 js/share.js:571 #: js/share.js:583 msgid "Error" -msgstr "Kļūme" +msgstr "Kļūda" #: js/oc-vcategories.js:179 msgid "The app name is not specified." -msgstr "" +msgstr "Nav norÄdÄ«ts lietotnes nosaukums." #: js/oc-vcategories.js:194 msgid "The required file {file} is not installed!" -msgstr "" +msgstr "PieprasÄ«tÄ datne {file} nav instalÄ“ta!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "DalÄ«ties" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "KopÄ«gs" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" -msgstr "" +msgstr "Kļūda, daloties" #: js/share.js:152 msgid "Error while unsharing" -msgstr "" +msgstr "Kļūda, beidzot dalÄ«ties" #: js/share.js:159 msgid "Error while changing permissions" -msgstr "" +msgstr "Kļūda, mainot atļaujas" #: js/share.js:168 msgid "Shared with you and the group {group} by {owner}" -msgstr "" +msgstr "{owner} dalÄ«jÄs ar jums un grupu {group}" #: js/share.js:170 msgid "Shared with you by {owner}" -msgstr "" +msgstr "{owner} dalÄ«jÄs ar jums" #: js/share.js:175 msgid "Share with" -msgstr "" +msgstr "DalÄ«ties ar" #: js/share.js:180 msgid "Share with link" -msgstr "" +msgstr "DalÄ«ties ar saiti" #: js/share.js:183 msgid "Password protect" -msgstr "" +msgstr "AizsargÄt ar paroli" #: js/share.js:185 templates/installation.php:44 templates/login.php:35 msgid "Password" @@ -297,102 +298,102 @@ msgstr "Parole" #: js/share.js:189 msgid "Email link to person" -msgstr "" +msgstr "SÅ«tÄ«t saiti personai pa e-pastu" #: js/share.js:190 msgid "Send" -msgstr "" +msgstr "SÅ«tÄ«t" #: js/share.js:194 msgid "Set expiration date" -msgstr "" +msgstr "Iestaties termiņa datumu" #: js/share.js:195 msgid "Expiration date" -msgstr "" +msgstr "Termiņa datums" #: js/share.js:227 msgid "Share via email:" -msgstr "" +msgstr "DalÄ«ties, izmantojot e-pastu:" #: js/share.js:229 msgid "No people found" -msgstr "" +msgstr "Nav atrastu cilvÄ“ku" #: js/share.js:256 msgid "Resharing is not allowed" -msgstr "" +msgstr "AtkÄrtota dalīšanÄs nav atļauta" #: js/share.js:292 msgid "Shared in {item} with {user}" -msgstr "" +msgstr "DalÄ«jÄs ar {item} ar {user}" #: js/share.js:313 msgid "Unshare" -msgstr "PÄrtraukt lÄ«dzdalīšanu" +msgstr "Beigt dalÄ«ties" #: js/share.js:325 msgid "can edit" -msgstr "" +msgstr "var rediģēt" #: js/share.js:327 msgid "access control" -msgstr "" +msgstr "piekļuves vadÄ«ba" #: js/share.js:330 msgid "create" -msgstr "" +msgstr "izveidot" #: js/share.js:333 msgid "update" -msgstr "" +msgstr "atjauninÄt" #: js/share.js:336 msgid "delete" -msgstr "" +msgstr "dzÄ“st" #: js/share.js:339 msgid "share" -msgstr "" +msgstr "dalÄ«ties" #: js/share.js:373 js/share.js:558 msgid "Password protected" -msgstr "" +msgstr "AizsargÄts ar paroli" #: js/share.js:571 msgid "Error unsetting expiration date" -msgstr "" +msgstr "Kļūda, noņemot termiņa datumu" #: js/share.js:583 msgid "Error setting expiration date" -msgstr "" +msgstr "Kļūda, iestatot termiņa datumu" #: js/share.js:598 msgid "Sending ..." -msgstr "" +msgstr "SÅ«ta..." #: js/share.js:609 msgid "Email sent" -msgstr "" +msgstr "VÄ“stule nosÅ«tÄ«ta" #: js/update.js:14 msgid "" "The update was unsuccessful. Please report this issue to the <a " "href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud " "community</a>." -msgstr "" +msgstr "AtjauninÄÅ¡ana beidzÄs nesekmÄ«gi. LÅ«dzu, ziņojiet par Å¡o problÄ“mu <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud kopienai</a>." #: js/update.js:18 msgid "The update was successful. Redirecting you to ownCloud now." -msgstr "" +msgstr "AtjauninÄÅ¡ana beidzÄs sekmÄ«gi. Tagad pÄrsÅ«ta jÅ«s uz ownCloud." #: lostpassword/controller.php:47 msgid "ownCloud password reset" -msgstr "" +msgstr "ownCloud paroles maiņa" #: lostpassword/templates/email.php:2 msgid "Use the following link to reset your password: {link}" -msgstr "Izmantojiet Å¡o linku lai mainÄ«tu paroli" +msgstr "Izmantojiet Å¡o saiti, lai mainÄ«tu paroli: {link}" #: lostpassword/templates/lostpassword.php:3 msgid "You will receive a link to reset your password via Email." @@ -400,11 +401,11 @@ msgstr "JÅ«s savÄ epastÄ saņemsiet interneta saiti, caur kuru varÄ“siet atjau #: lostpassword/templates/lostpassword.php:5 msgid "Reset email send." -msgstr "" +msgstr "AtstatÄ«t e-pasta sÅ«tīšanu." #: lostpassword/templates/lostpassword.php:8 msgid "Request failed!" -msgstr "" +msgstr "PieprasÄ«jums neizdevÄs!" #: lostpassword/templates/lostpassword.php:11 templates/installation.php:39 #: templates/login.php:28 @@ -441,7 +442,7 @@ msgstr "LietotÄji" #: strings.php:7 msgid "Apps" -msgstr "AplikÄcijas" +msgstr "Lietotnes" #: strings.php:8 msgid "Admin" @@ -453,7 +454,7 @@ msgstr "PalÄ«dzÄ«ba" #: templates/403.php:12 msgid "Access forbidden" -msgstr "" +msgstr "Pieeja ir liegta" #: templates/404.php:12 msgid "Cloud not found" @@ -461,11 +462,11 @@ msgstr "MÄkonis netika atrasts" #: templates/edit_categories_dialog.php:4 msgid "Edit categories" -msgstr "" +msgstr "Rediģēt kategoriju" #: templates/edit_categories_dialog.php:16 msgid "Add" -msgstr "" +msgstr "Pievienot" #: templates/installation.php:23 templates/installation.php:31 msgid "Security Warning" @@ -475,13 +476,13 @@ msgstr "BrÄ«dinÄjums par drošību" msgid "" "No secure random number generator is available, please enable the PHP " "OpenSSL extension." -msgstr "" +msgstr "Nav pieejams droÅ¡s nejauÅ¡u skaitļu Ä£enerators. LÅ«dzu, aktivÄ“jiet PHP OpenSSL paplaÅ¡inÄjumu." #: templates/installation.php:26 msgid "" "Without a secure random number generator an attacker may be able to predict " "password reset tokens and take over your account." -msgstr "" +msgstr "Bez droÅ¡a nejauÅ¡u skaitļu Ä£eneratora uzbrucÄ“js var paredzÄ“t paroļu atjaunoÅ¡anas marÄ·ierus un pÄrņem jÅ«su kontu." #: templates/installation.php:32 msgid "" @@ -490,15 +491,15 @@ msgid "" "strongly suggest that you configure your webserver in a way that the data " "directory is no longer accessible or you move the data directory outside the" " webserver document root." -msgstr "" +msgstr "JÅ«su datu direktorija un datnes visdrÄ«zÄk ir pieejamas no interneta. ownCloud nodroÅ¡inÄtÄ .htaccess datne nedarbojas. MÄ“s iesakÄm konfigurÄ“t serveri tÄ, lai datu direktorija vairs nebÅ«tu pieejama, vai arÄ« pÄrvietojiet datu direktoriju Ärpus tÄ«mekļa servera dokumentu saknes." #: templates/installation.php:36 msgid "Create an <strong>admin account</strong>" -msgstr "" +msgstr "Izveidot <strong>administratora kontu</strong>" #: templates/installation.php:50 msgid "Advanced" -msgstr "" +msgstr "PaplaÅ¡inÄti" #: templates/installation.php:52 msgid "Data folder" @@ -506,7 +507,7 @@ msgstr "Datu mape" #: templates/installation.php:59 msgid "Configure the database" -msgstr "NokonfigurÄ“t datubÄzi" +msgstr "KonfigurÄ“t datubÄzi" #: templates/installation.php:64 templates/installation.php:75 #: templates/installation.php:85 templates/installation.php:95 @@ -527,49 +528,49 @@ msgstr "DatubÄzes nosaukums" #: templates/installation.php:123 msgid "Database tablespace" -msgstr "" +msgstr "DatubÄzes tabulas telpa" #: templates/installation.php:129 msgid "Database host" -msgstr "DatubÄzes mÄjvieta" +msgstr "DatubÄzes serveris" #: templates/installation.php:134 msgid "Finish setup" -msgstr "Pabeigt uzstÄdÄ«jumus" +msgstr "Pabeigt iestatīšanu" #: templates/layout.guest.php:34 msgid "web services under your control" -msgstr "" +msgstr "jÅ«su vadÄ«bÄ esoÅ¡ie tÄ«mekļa servisi" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" -msgstr "Izlogoties" +msgstr "IzrakstÄ«ties" #: templates/login.php:10 msgid "Automatic logon rejected!" -msgstr "" +msgstr "AutomÄtiskÄ ierakstīšanÄs ir noraidÄ«ta!" #: templates/login.php:11 msgid "" "If you did not change your password recently, your account may be " "compromised!" -msgstr "" +msgstr "Ja neesat pÄ“dÄ“jÄ laikÄ mainÄ«jis paroli, iespÄ“jams, ka jÅ«su konts ir kompromitÄ“ts." #: templates/login.php:13 msgid "Please change your password to secure your account again." -msgstr "" +msgstr "LÅ«dzu, nomainiet savu paroli, lai atkal nodroÅ¡inÄtu savu kontu." #: templates/login.php:19 msgid "Lost your password?" msgstr "AizmirsÄt paroli?" -#: templates/login.php:39 +#: templates/login.php:41 msgid "remember" msgstr "atcerÄ“ties" -#: templates/login.php:41 +#: templates/login.php:43 msgid "Log in" -msgstr "Ielogoties" +msgstr "IerakstÄ«ties" #: templates/part.pagenavi.php:3 msgid "prev" @@ -582,4 +583,4 @@ msgstr "nÄkamÄ" #: templates/update.php:3 #, php-format msgid "Updating ownCloud to version %s, this may take a while." -msgstr "" +msgstr "Atjaunina ownCloud uz versiju %s. Tas var aizņemt kÄdu laiciņu." diff --git a/l10n/lv/files.po b/l10n/lv/files.po index f5fb737c584..34debdd2e72 100644 --- a/l10n/lv/files.po +++ b/l10n/lv/files.po @@ -5,13 +5,14 @@ # Translators: # <aldis@udris.lv>, 2012. # Imants Liepiņš <imzzinator@gmail.com>, 2012. +# RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 18:40+0000\n" +"Last-Translator: RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>\n" "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,82 +20,68 @@ msgstr "" "Language: lv\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - -#: ajax/upload.php:17 +#: ajax/upload.php:19 msgid "No file was uploaded. Unknown error" -msgstr "" +msgstr "Netika augÅ¡upielÄdÄ“ta neviena datne. NezinÄma kļūda" -#: ajax/upload.php:24 +#: ajax/upload.php:26 msgid "There is no error, the file uploaded with success" -msgstr "Viss kÄrtÄ«bÄ, augÅ¡upielÄde veiksmÄ«ga" +msgstr "AugÅ¡upielÄde pabeigta bez kļūdÄm" -#: ajax/upload.php:25 +#: ajax/upload.php:27 msgid "" "The uploaded file exceeds the upload_max_filesize directive in php.ini: " -msgstr "" +msgstr "AugÅ¡upielÄdÄ“tÄ datne pÄrsniedz upload_max_filesize norÄdÄ«jumu php.ini datnÄ“:" -#: ajax/upload.php:27 +#: ajax/upload.php:29 msgid "" "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in " "the HTML form" -msgstr "" +msgstr "AugÅ¡upielÄdÄ“tÄ datne pÄrsniedz MAX_FILE_SIZE norÄdi, kas ir norÄdÄ«ta HTML formÄ" -#: ajax/upload.php:29 +#: ajax/upload.php:31 msgid "The uploaded file was only partially uploaded" -msgstr "" +msgstr "AugÅ¡upielÄdÄ“tÄ datne ir tikai daļēji augÅ¡upielÄdÄ“ta" -#: ajax/upload.php:30 +#: ajax/upload.php:32 msgid "No file was uploaded" -msgstr "Neviens fails netika augÅ¡uplÄdÄ“ts" +msgstr "Neviena datne netika augÅ¡upielÄdÄ“ta" -#: ajax/upload.php:31 +#: ajax/upload.php:33 msgid "Missing a temporary folder" msgstr "TrÅ«kst pagaidu mapes" -#: ajax/upload.php:32 +#: ajax/upload.php:34 msgid "Failed to write to disk" -msgstr "Nav iespÄ“jams saglabÄt" +msgstr "NeizdevÄs saglabÄt diskÄ" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:52 +msgid "Not enough space available" +msgstr "Nepietiek brÄ«vas vietas" -#: ajax/upload.php:77 +#: ajax/upload.php:83 msgid "Invalid directory." -msgstr "" +msgstr "NederÄ«ga direktorija." #: appinfo/app.php:10 msgid "Files" -msgstr "Faili" +msgstr "Datnes" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" -msgstr "PÄrtraukt lÄ«dzdalīšanu" +msgstr "PÄrtraukt dalīšanos" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" -msgstr "IzdzÄ“st" +msgstr "DzÄ“st" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" -msgstr "PÄrdÄ“vÄ“t" +msgstr "PÄrsaukt" #: js/filelist.js:208 js/filelist.js:210 msgid "{new_name} already exists" -msgstr "" +msgstr "{new_name} jau eksistÄ“" #: js/filelist.js:208 js/filelist.js:210 msgid "replace" @@ -102,7 +89,7 @@ msgstr "aizvietot" #: js/filelist.js:208 msgid "suggest name" -msgstr "Ieteiktais nosaukums" +msgstr "ieteiktais nosaukums" #: js/filelist.js:208 js/filelist.js:210 msgid "cancel" @@ -110,152 +97,140 @@ msgstr "atcelt" #: js/filelist.js:253 msgid "replaced {new_name}" -msgstr "" +msgstr "aizvietots {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" -msgstr "vienu soli atpakaļ" +msgstr "atsaukt" #: js/filelist.js:255 msgid "replaced {new_name} with {old_name}" -msgstr "" +msgstr "aizvietoja {new_name} ar {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "veikt dzēšanas darbÄ«bu" #: js/files.js:52 msgid "'.' is an invalid file name." -msgstr "" +msgstr "'.' ir nederÄ«gs datnes nosaukums." #: js/files.js:56 msgid "File name cannot be empty." -msgstr "" +msgstr "Datnes nosaukums nevar bÅ«t tukÅ¡s." #: js/files.js:64 msgid "" "Invalid name, '\\', '/', '<', '>', ':', '\"', '|', '?' and '*' are not " "allowed." -msgstr "" +msgstr "NederÄ«gs nosaukums, nav atļauti '\\', '/', '<', '>', ':', '\"', '|', '?' un '*'." #: js/files.js:78 msgid "Your storage is full, files can not be updated or synced anymore!" -msgstr "" +msgstr "JÅ«su krÄtuve ir pilna, datnes vairs nevar augÅ¡upielÄdÄ“t vai sinhronizÄ“t!" #: js/files.js:82 msgid "Your storage is almost full ({usedSpacePercent}%)" -msgstr "" +msgstr "JÅ«su krÄtuve ir gandrÄ«z pilna ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." -msgstr "" +msgstr "Tiek sagatavota lejupielÄde. Tas var aizņemt kÄdu laiciņu, ja datnes ir lielas." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" -msgstr "Nav iespÄ“jams augÅ¡uplÄdÄ“t jÅ«su failu, jo tÄds jau eksistÄ“ vai arÄ« failam nav izmÄ“ra (0 baiti)" +msgstr "Nevar augÅ¡upielÄdÄ“t jÅ«su datni, jo tÄ ir direktorija vai arÄ« tÄs izmÄ“rs ir 0 baiti" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" -msgstr "AugÅ¡uplÄdēšanas laikÄ radÄs kļūda" +msgstr "Kļūda augÅ¡upielÄdÄ“jot" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" -msgstr "" +msgstr "AizvÄ“rt" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Gaida savu kÄrtu" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" -msgstr "" +msgstr "AugÅ¡upielÄdÄ“ 1 datni" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" -msgstr "" +msgstr "augÅ¡upielÄdÄ“ {count} datnes" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." -msgstr "AugÅ¡uplÄde ir atcelta" +msgstr "AugÅ¡upielÄde ir atcelta." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Notiek augÅ¡upielÄde. Pametot lapu tagad, tiks atcelta augÅ¡upielÄde." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." -msgstr "" +msgstr "URL nevar bÅ«t tukÅ¡s." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" -msgstr "" +msgstr "NederÄ«gs mapes nosaukums. “Koplietots†izmantojums ir rezervÄ“ts ownCloud servisam." -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:953 templates/index.php:67 msgid "Name" msgstr "Nosaukums" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:954 templates/index.php:78 msgid "Size" msgstr "IzmÄ“rs" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:955 templates/index.php:80 msgid "Modified" -msgstr "IzmainÄ«ts" +msgstr "MainÄ«ts" -#: js/files.js:887 +#: js/files.js:974 msgid "1 folder" -msgstr "" +msgstr "1 mape" -#: js/files.js:889 +#: js/files.js:976 msgid "{count} folders" -msgstr "" +msgstr "{count} mapes" -#: js/files.js:897 +#: js/files.js:984 msgid "1 file" -msgstr "" +msgstr "1 datne" -#: js/files.js:899 +#: js/files.js:986 msgid "{count} files" -msgstr "" +msgstr "{count} datnes" #: lib/helper.php:11 templates/index.php:18 msgid "Upload" -msgstr "AugÅ¡uplÄdet" +msgstr "AugÅ¡upielÄdÄ“t" #: templates/admin.php:5 msgid "File handling" -msgstr "Failu pÄrvaldÄ«ba" +msgstr "Datņu pÄrvaldÄ«ba" #: templates/admin.php:7 msgid "Maximum upload size" -msgstr "MaksimÄlais failu augÅ¡uplÄdes apjoms" +msgstr "MaksimÄlais datņu augÅ¡upielÄdes apjoms" #: templates/admin.php:10 msgid "max. possible: " -msgstr "maksÄ«mÄlais iespÄ“jamais:" +msgstr "maksimÄlais iespÄ“jamais:" #: templates/admin.php:15 msgid "Needed for multi-file and folder downloads." -msgstr "VajadzÄ«gs vairÄku failu un mapju lejuplÄdei" +msgstr "VajadzÄ«gs vairÄku datņu un mapju lejupielÄdēšanai." #: templates/admin.php:17 msgid "Enable ZIP-download" -msgstr "IespÄ“jot ZIP lejuplÄdi" +msgstr "AktivÄ“t ZIP lejupielÄdi" #: templates/admin.php:20 msgid "0 is unlimited" @@ -263,7 +238,7 @@ msgstr "0 ir neierobežots" #: templates/admin.php:22 msgid "Maximum input size for ZIP files" -msgstr "" +msgstr "MaksimÄlais ievades izmÄ“rs ZIP datnÄ“m" #: templates/admin.php:26 msgid "Save" @@ -271,11 +246,11 @@ msgstr "SaglabÄt" #: templates/index.php:7 msgid "New" -msgstr "Jauns" +msgstr "Jauna" #: templates/index.php:10 msgid "Text file" -msgstr "Teksta fails" +msgstr "Teksta datne" #: templates/index.php:12 msgid "Folder" @@ -283,34 +258,42 @@ msgstr "Mape" #: templates/index.php:14 msgid "From link" -msgstr "" +msgstr "No saites" + +#: templates/index.php:40 +msgid "Trash" +msgstr "Miskaste" -#: templates/index.php:41 +#: templates/index.php:46 msgid "Cancel upload" -msgstr "Atcelt augÅ¡uplÄdi" +msgstr "Atcelt augÅ¡upielÄdi" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" -msgstr "Te vÄ“l nekas nav. RÄ«kojies, sÄc augÅ¡uplÄdÄ“t" +msgstr "Te vÄ“l nekas nav. RÄ«kojies, sÄc augÅ¡upielÄdÄ“t!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" -msgstr "LejuplÄdÄ“t" +msgstr "LejupielÄdÄ“t" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" -msgstr "Fails ir par lielu lai to augÅ¡uplÄdetu" +msgstr "Datne ir par lielu, lai to augÅ¡upielÄdÄ“tu" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." -msgstr "JÅ«su augÅ¡uplÄdÄ“jamie faili pÄrsniedz servera pieļaujamo failu augÅ¡upielÄdes apjomu" +msgstr "AugÅ¡upielÄdÄ“jamÄs datnes pÄrsniedz servera pieļaujamo datņu augÅ¡upielÄdes apjomu" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." -msgstr "Faili Å¡obrÄ«d tiek caurskatÄ«ti, nedaudz jÄpagaida." +msgstr "Datnes Å¡obrÄ«d tiek caurskatÄ«tas, lÅ«dzu, uzgaidiet." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" -msgstr "Å obrÄ«d tiek pÄrbaudÄ«ti" +msgstr "Å obrÄ«d tiek caurskatÄ«ts" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Uzlabo datņu sistÄ“mas keÅ¡atmiņu..." diff --git a/l10n/lv/files_encryption.po b/l10n/lv/files_encryption.po index 9ceadebe30c..539b9bd02cb 100644 --- a/l10n/lv/files_encryption.po +++ b/l10n/lv/files_encryption.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-23 00:05+0100\n" -"PO-Revision-Date: 2013-01-22 23:05+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 12:00+0000\n" +"Last-Translator: RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>\n" "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,62 +22,62 @@ msgstr "" msgid "" "Please switch to your ownCloud client and change your encryption password to" " complete the conversion." -msgstr "" +msgstr "LÅ«dzu, pÄrslÄ“dzieties uz savu ownCloud klientu un maniet savu Å¡ifrēšanas paroli, lai pabeigtu pÄrveidoÅ¡anu." #: js/settings-personal.js:17 msgid "switched to client side encryption" -msgstr "" +msgstr "PÄrslÄ“dzÄs uz klienta puses Å¡ifrēšanu" #: js/settings-personal.js:21 msgid "Change encryption password to login password" -msgstr "" +msgstr "MainÄ«t Å¡ifrēšanas paroli uz ierakstīšanÄs paroli" #: js/settings-personal.js:25 msgid "Please check your passwords and try again." -msgstr "" +msgstr "LÅ«dzu, pÄrbaudiet savas paroles un mēģiniet vÄ“lreiz." #: js/settings-personal.js:25 msgid "Could not change your file encryption password to your login password" -msgstr "" +msgstr "NevarÄ“ja mainÄ«t datņu Å¡ifrēšanas paroli uz ierakstīšanÄs paroli" #: templates/settings-personal.php:3 templates/settings.php:5 msgid "Choose encryption mode:" -msgstr "" +msgstr "IzvÄ“lieties Å¡ifrēšanas režīmu:" #: templates/settings-personal.php:20 templates/settings.php:24 msgid "" "Client side encryption (most secure but makes it impossible to access your " "data from the web interface)" -msgstr "" +msgstr "Klienta puses Å¡ifrēšana (visdroÅ¡ÄkÄ, bet nav iespÄ“jams piekļūt saviem datiem no tÄ«mekļa saskarnes)" #: templates/settings-personal.php:30 templates/settings.php:36 msgid "" "Server side encryption (allows you to access your files from the web " "interface and the desktop client)" -msgstr "" +msgstr "Servera puses Å¡ifrēšana (ļauj piekļūt datnÄ“m ar tÄ«mekļa saskarni un ar darbvirsmas klientu)" #: templates/settings-personal.php:41 templates/settings.php:60 msgid "None (no encryption at all)" -msgstr "" +msgstr "Nav (nekÄdas Å¡ifrēšanas)" #: templates/settings.php:10 msgid "" "Important: Once you selected an encryption mode there is no way to change it" " back" -msgstr "" +msgstr "SvarÄ«gi — kad esat izvÄ“lÄ“jies Å¡ifrēšanas režīmu, to nekÄdi nevar mainÄ«t atpakaļ" #: templates/settings.php:48 msgid "User specific (let the user decide)" -msgstr "" +msgstr "LietotÄjam specifiski (ļauj lietotÄjam izlemt)" #: templates/settings.php:65 msgid "Encryption" -msgstr "" +msgstr "Å ifrēšana" #: templates/settings.php:67 msgid "Exclude the following file types from encryption" -msgstr "" +msgstr "SekojoÅ¡os datņu tipus neÅ¡ifrÄ“t" #: templates/settings.php:71 msgid "None" -msgstr "" +msgstr "Nav" diff --git a/l10n/lv/files_external.po b/l10n/lv/files_external.po index 07979d9b1c8..c4fdcae0744 100644 --- a/l10n/lv/files_external.po +++ b/l10n/lv/files_external.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2012-12-13 00:17+0100\n" -"PO-Revision-Date: 2012-12-11 23:22+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 18:30+0000\n" +"Last-Translator: RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>\n" "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,76 +20,76 @@ msgstr "" #: js/dropbox.js:7 js/dropbox.js:25 js/google.js:7 js/google.js:23 msgid "Access granted" -msgstr "" +msgstr "Piešķirta pieeja" #: js/dropbox.js:28 js/dropbox.js:74 js/dropbox.js:79 js/dropbox.js:86 msgid "Error configuring Dropbox storage" -msgstr "" +msgstr "Kļūda, konfigurÄ“jot Dropbox krÄtuvi" #: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:40 msgid "Grant access" -msgstr "" +msgstr "Piešķirt pieeju" #: js/dropbox.js:73 js/google.js:72 msgid "Fill out all required fields" -msgstr "" +msgstr "AizpildÄ«t visus pieprasÄ«tos laukus" #: js/dropbox.js:85 msgid "Please provide a valid Dropbox app key and secret." -msgstr "" +msgstr "LÅ«dzu, norÄdiet derÄ«gu Dropbox lietotnes atslÄ“gu un noslÄ“pumu." #: js/google.js:26 js/google.js:73 js/google.js:78 msgid "Error configuring Google Drive storage" -msgstr "" +msgstr "Kļūda, konfigurÄ“jot Google Drive krÄtuvi" -#: lib/config.php:434 +#: lib/config.php:405 msgid "" "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares " "is not possible. Please ask your system administrator to install it." -msgstr "" +msgstr "<b>BrÄ«dinÄjums:</b> nav uzinstalÄ“ts “smbclientâ€. Nevar montÄ“t CIFS/SMB koplietojumus. LÅ«dzu, vaicÄjiet savam sistÄ“mas administratoram, lai to uzinstalÄ“." -#: lib/config.php:435 +#: lib/config.php:406 msgid "" "<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." -msgstr "" +msgstr "<b>BrÄ«dinÄjums: </b> uz PHP nav aktivÄ“ts vai instalÄ“ts FTP atbalsts. Nevar montÄ“t FTP koplietojumus. LÅ«dzu, vaicÄjiet savam sistÄ“mas administratoram, lai to uzinstalÄ“." #: templates/settings.php:3 msgid "External Storage" -msgstr "" +msgstr "Ä€rÄ“jÄ krÄtuve" #: templates/settings.php:8 templates/settings.php:22 msgid "Mount point" -msgstr "" +msgstr "Montēšanas punkts" #: templates/settings.php:9 msgid "Backend" -msgstr "" +msgstr "Aizmugure" #: templates/settings.php:10 msgid "Configuration" -msgstr "" +msgstr "KonfigurÄcija" #: templates/settings.php:11 msgid "Options" -msgstr "" +msgstr "Opcijas" #: templates/settings.php:12 msgid "Applicable" -msgstr "" +msgstr "PiemÄ“rojams" #: templates/settings.php:27 msgid "Add mount point" -msgstr "" +msgstr "Pievienot montēšanas punktu" #: templates/settings.php:85 msgid "None set" -msgstr "" +msgstr "Neviens nav iestatÄ«ts" #: templates/settings.php:86 msgid "All Users" -msgstr "" +msgstr "Visi lietotÄji" #: templates/settings.php:87 msgid "Groups" @@ -99,22 +100,22 @@ msgid "Users" msgstr "LietotÄji" #: templates/settings.php:108 templates/settings.php:109 -#: templates/settings.php:149 templates/settings.php:150 +#: templates/settings.php:144 templates/settings.php:145 msgid "Delete" -msgstr "IzdzÄ“st" +msgstr "DzÄ“st" #: templates/settings.php:124 msgid "Enable User External Storage" -msgstr "" +msgstr "AktivÄ“t lietotÄja ÄrÄ“jo krÄtuvi" #: templates/settings.php:125 msgid "Allow users to mount their own external storage" -msgstr "" +msgstr "Ä»aut lietotÄjiem montÄ“t paÅ¡iem savu ÄrÄ“jo krÄtuvi" -#: templates/settings.php:139 +#: templates/settings.php:136 msgid "SSL root certificates" -msgstr "" +msgstr "SSL saknes sertifikÄti" -#: templates/settings.php:158 +#: templates/settings.php:153 msgid "Import Root Certificate" -msgstr "" +msgstr "ImportÄ“t saknes sertifikÄtus" diff --git a/l10n/lv/files_sharing.po b/l10n/lv/files_sharing.po index 77168f1b72c..6d52e10de6a 100644 --- a/l10n/lv/files_sharing.po +++ b/l10n/lv/files_sharing.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2012-09-22 01:14+0200\n" -"PO-Revision-Date: 2012-09-21 23:15+0000\n" -"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 18:30+0000\n" +"Last-Translator: RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>\n" "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,30 +20,30 @@ msgstr "" #: templates/authenticate.php:4 msgid "Password" -msgstr "" +msgstr "Parole" #: templates/authenticate.php:6 msgid "Submit" -msgstr "" +msgstr "Iesniegt" #: templates/public.php:9 #, php-format msgid "%s shared the folder %s with you" -msgstr "" +msgstr "%s ar jums dalÄ«jÄs ar mapi %s" #: templates/public.php:11 #, php-format msgid "%s shared the file %s with you" -msgstr "" +msgstr "%s ar jums dalÄ«jÄs ar datni %s" #: templates/public.php:14 templates/public.php:30 msgid "Download" -msgstr "" +msgstr "LejupielÄdÄ“t" #: templates/public.php:29 msgid "No preview available for" -msgstr "" +msgstr "Nav pieejams priekÅ¡skatÄ«jums priekÅ¡" -#: templates/public.php:37 +#: templates/public.php:35 msgid "web services under your control" -msgstr "" +msgstr "jÅ«su vadÄ«bÄ esoÅ¡ie tÄ«mekļa servisi" diff --git a/l10n/lv/files_trashbin.po b/l10n/lv/files_trashbin.po new file mode 100644 index 00000000000..11024c8e1e0 --- /dev/null +++ b/l10n/lv/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-03 21:00+0000\n" +"Last-Translator: RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>\n" +"Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: lv\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "veikt atjaunoÅ¡anu" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nosaukums" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "DzÄ“sts" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 mape" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} mapes" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 datne" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} datnes" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Å eit nekÄ nav. JÅ«su miskaste ir tukÅ¡a!" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Atjaunot" diff --git a/l10n/lv/files_versions.po b/l10n/lv/files_versions.po index 399b82e06fc..fa500081cc3 100644 --- a/l10n/lv/files_versions.po +++ b/l10n/lv/files_versions.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-15 00:03+0100\n" -"PO-Revision-Date: 2013-01-14 23:03+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 10:50+0000\n" +"Last-Translator: RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>\n" "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,12 +20,12 @@ msgstr "" #: js/versions.js:16 msgid "History" -msgstr "" +msgstr "VÄ“sture" #: templates/settings.php:3 msgid "Files Versioning" -msgstr "" +msgstr "Datņu versiju izskoÅ¡ana" #: templates/settings.php:4 msgid "Enable" -msgstr "" +msgstr "AktivÄ“t" diff --git a/l10n/lv/lib.po b/l10n/lv/lib.po index 03dc8d418c3..ae6df933b41 100644 --- a/l10n/lv/lib.po +++ b/l10n/lv/lib.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-17 00:26+0100\n" -"PO-Revision-Date: 2013-01-16 23:26+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 14:31+0000\n" +"Last-Translator: RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>\n" "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -17,140 +18,140 @@ msgstr "" "Language: lv\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" -#: app.php:301 +#: app.php:312 msgid "Help" msgstr "PalÄ«dzÄ«ba" -#: app.php:308 +#: app.php:319 msgid "Personal" msgstr "PersonÄ«gi" -#: app.php:313 +#: app.php:324 msgid "Settings" msgstr "IestatÄ«jumi" -#: app.php:318 +#: app.php:329 msgid "Users" msgstr "LietotÄji" -#: app.php:325 +#: app.php:336 msgid "Apps" -msgstr "" +msgstr "Lietotnes" -#: app.php:327 +#: app.php:338 msgid "Admin" -msgstr "" +msgstr "Administratori" -#: files.php:365 +#: files.php:202 msgid "ZIP download is turned off." -msgstr "" +msgstr "ZIP lejupielÄdēšana ir izslÄ“gta." -#: files.php:366 +#: files.php:203 msgid "Files need to be downloaded one by one." -msgstr "" +msgstr "Datnes var lejupielÄdÄ“t tikai katru atsevišķi." -#: files.php:366 files.php:391 +#: files.php:203 files.php:228 msgid "Back to Files" -msgstr "" +msgstr "Atpakaļ pie datnÄ“m" -#: files.php:390 +#: files.php:227 msgid "Selected files too large to generate zip file." -msgstr "" +msgstr "IzvÄ“lÄ“tÄs datnes ir pÄrÄk lielas, lai izveidotu zip datni." -#: helper.php:228 +#: helper.php:226 msgid "couldn't be determined" -msgstr "" +msgstr "nevarÄ“ja noteikt" #: json.php:28 msgid "Application is not enabled" -msgstr "" +msgstr "Lietotne nav aktivÄ“ta" #: json.php:39 json.php:62 json.php:73 msgid "Authentication error" -msgstr "IelogoÅ¡anÄs kļūme" +msgstr "AutentifikÄcijas kļūda" #: json.php:51 msgid "Token expired. Please reload page." -msgstr "" +msgstr "Pilnvarai ir beidzies termiņš. LÅ«dzu, pÄrlÄdÄ“jiet lapu." #: search/provider/file.php:17 search/provider/file.php:35 msgid "Files" -msgstr "Faili" +msgstr "Datnes" #: search/provider/file.php:26 search/provider/file.php:33 msgid "Text" -msgstr "" +msgstr "Teksts" #: search/provider/file.php:29 msgid "Images" -msgstr "" +msgstr "AttÄ“li" #: template.php:113 msgid "seconds ago" -msgstr "" +msgstr "sekundes atpakaļ" #: template.php:114 msgid "1 minute ago" -msgstr "" +msgstr "pirms 1 minÅ«tes" #: template.php:115 #, php-format msgid "%d minutes ago" -msgstr "" +msgstr "pirms %d minÅ«tÄ“m" #: template.php:116 msgid "1 hour ago" -msgstr "" +msgstr "pirms 1 stundas" #: template.php:117 #, php-format msgid "%d hours ago" -msgstr "" +msgstr "pirms %d stundÄm" #: template.php:118 msgid "today" -msgstr "" +msgstr "Å¡odien" #: template.php:119 msgid "yesterday" -msgstr "" +msgstr "vakar" #: template.php:120 #, php-format msgid "%d days ago" -msgstr "" +msgstr "pirms %d dienÄm" #: template.php:121 msgid "last month" -msgstr "" +msgstr "pagÄjuÅ¡ajÄ mÄ“nesÄ«" #: template.php:122 #, php-format msgid "%d months ago" -msgstr "" +msgstr "pirms %d mÄ“neÅ¡iem" #: template.php:123 msgid "last year" -msgstr "" +msgstr "gÄjuÅ¡ajÄ gadÄ" #: template.php:124 msgid "years ago" -msgstr "" +msgstr "gadus atpakaļ" #: updater.php:75 #, php-format msgid "%s is available. Get <a href=\"%s\">more information</a>" -msgstr "" +msgstr "%s ir pieejams. IegÅ«t <a href=\"%s\">vairÄk informÄcijas</a>" #: updater.php:77 msgid "up to date" -msgstr "" +msgstr "ir aktuÄls" #: updater.php:80 msgid "updates check is disabled" -msgstr "" +msgstr "atjauninÄjumu pÄrbaude ir deaktivÄ“ta" #: vcategories.php:188 vcategories.php:249 #, php-format msgid "Could not find category \"%s\"" -msgstr "" +msgstr "NevarÄ“ja atrast kategoriju “%sâ€" diff --git a/l10n/lv/settings.po b/l10n/lv/settings.po index afc2514715e..72b99de743c 100644 --- a/l10n/lv/settings.po +++ b/l10n/lv/settings.po @@ -5,13 +5,14 @@ # Translators: # <aldis@udris.lv>, 2012. # <elwins@inbox.lv>, 2012. +# RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 19:10+0000\n" +"Last-Translator: RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>\n" "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,7 +22,7 @@ msgstr "" #: ajax/apps/ocs.php:20 msgid "Unable to load list from App Store" -msgstr "Nebija iespÄ“jams lejuplÄdÄ“t sarakstu no aplikÄciju veikala" +msgstr "Nevar lejupielÄdÄ“t sarakstu no lietotņu veikala" #: ajax/creategroup.php:10 msgid "Group already exists" @@ -33,15 +34,15 @@ msgstr "Nevar pievienot grupu" #: ajax/enableapp.php:11 msgid "Could not enable app. " -msgstr "Nevar ieslÄ“gt aplikÄciju." +msgstr "NevarÄ“ja aktivÄ“t lietotni." #: ajax/lostpassword.php:12 msgid "Email saved" -msgstr "Epasts tika saglabÄts" +msgstr "E-pasts tika saglabÄts" #: ajax/lostpassword.php:14 msgid "Invalid email" -msgstr "Nepareizs epasts" +msgstr "NederÄ«gs epasts" #: ajax/removegroup.php:13 msgid "Unable to delete group" @@ -49,7 +50,7 @@ msgstr "Nevar izdzÄ“st grupu" #: ajax/removeuser.php:15 ajax/setquota.php:15 ajax/togglegroups.php:18 msgid "Authentication error" -msgstr "IelogoÅ¡anÄs kļūme" +msgstr "AutentifikÄcijas kļūda" #: ajax/removeuser.php:24 msgid "Unable to delete user" @@ -61,11 +62,11 @@ msgstr "Valoda tika nomainÄ«ta" #: ajax/setlanguage.php:17 ajax/setlanguage.php:20 msgid "Invalid request" -msgstr "Nepareizs vaicÄjums" +msgstr "NederÄ«gs pieprasÄ«jums" #: ajax/togglegroups.php:12 msgid "Admins can't remove themself from the admin group" -msgstr "" +msgstr "Administratori nevar izņemt paÅ¡i sevi no administratoru grupas" #: ajax/togglegroups.php:28 #, php-format @@ -75,15 +76,43 @@ msgstr "Nevar pievienot lietotÄju grupai %s" #: ajax/togglegroups.php:34 #, php-format msgid "Unable to remove user from group %s" -msgstr "Nevar noņemt lietotÄju no grupas %s" +msgstr "Nevar izņemt lietotÄju no grupas %s" + +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "NevarÄ“ja atjauninÄt lietotni." -#: js/apps.js:28 js/apps.js:67 +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "AtjauninÄt uz {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" -msgstr "Atvienot" +msgstr "DeaktivÄ“t" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" -msgstr "Pievienot" +msgstr "AktivÄ“t" + +#: js/apps.js:55 +msgid "Please wait...." +msgstr "LÅ«dzu, uzgaidiet...." + +#: js/apps.js:84 +msgid "Updating...." +msgstr "Atjaunina...." + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "Kļūda, atjauninot lietotni" + +#: js/apps.js:87 +msgid "Error" +msgstr "Kļūda" + +#: js/apps.js:90 +msgid "Updated" +msgstr "AtjauninÄta" #: js/personal.js:69 msgid "Saving..." @@ -95,47 +124,51 @@ msgstr "__valodas_nosaukums__" #: templates/apps.php:10 msgid "Add your App" -msgstr "Pievieno savu aplikÄciju" +msgstr "Pievieno savu lietotni" #: templates/apps.php:11 msgid "More Apps" -msgstr "VairÄk aplikÄciju" +msgstr "VairÄk lietotņu" #: templates/apps.php:24 msgid "Select an App" -msgstr "IzvÄ“lies aplikÄciju" +msgstr "IzvÄ“lies lietotni" #: templates/apps.php:28 msgid "See application page at apps.owncloud.com" -msgstr "Apskatie aplikÄciju lapu - apps.owncloud.com" +msgstr "Apskati lietotņu lapu — apps.owncloud.com" #: templates/apps.php:29 msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licencÄ“ts no <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "AtjauninÄt" + #: templates/help.php:3 msgid "User Documentation" -msgstr "" +msgstr "LietotÄja dokumentÄcija" #: templates/help.php:4 msgid "Administrator Documentation" -msgstr "" +msgstr "Administratora dokumentÄcija" #: templates/help.php:6 msgid "Online Documentation" -msgstr "" +msgstr "TieÅ¡saistes dokumentÄcija" #: templates/help.php:7 msgid "Forum" -msgstr "" +msgstr "Forums" #: templates/help.php:9 msgid "Bugtracker" -msgstr "" +msgstr "Kļūdu sekotÄjs" #: templates/help.php:11 msgid "Commercial Support" -msgstr "" +msgstr "KomerciÄlais atbalsts" #: templates/personal.php:8 #, php-format @@ -148,15 +181,15 @@ msgstr "Klienti" #: templates/personal.php:13 msgid "Download Desktop Clients" -msgstr "" +msgstr "LejupielÄdÄ“t darbvirsmas klientus" #: templates/personal.php:14 msgid "Download Android Client" -msgstr "" +msgstr "LejupielÄdÄ“t Android klientu" #: templates/personal.php:15 msgid "Download iOS Client" -msgstr "" +msgstr "LejupielÄdÄ“t iOS klientu" #: templates/personal.php:21 templates/users.php:23 templates/users.php:81 msgid "Password" @@ -168,7 +201,7 @@ msgstr "JÅ«ru parole tika nomainÄ«ta" #: templates/personal.php:23 msgid "Unable to change your password" -msgstr "Nav iespÄ“jams nomainÄ«t jÅ«su paroli" +msgstr "Nevar nomainÄ«t jÅ«su paroli" #: templates/personal.php:24 msgid "Current password" @@ -184,19 +217,19 @@ msgstr "parÄdÄ«t" #: templates/personal.php:27 msgid "Change password" -msgstr "NomainÄ«t paroli" +msgstr "MainÄ«t paroli" #: templates/personal.php:33 msgid "Email" -msgstr "Epasts" +msgstr "E-pasts" #: templates/personal.php:34 msgid "Your email address" -msgstr "JÅ«su epasta adrese" +msgstr "JÅ«su e-pasta adrese" #: templates/personal.php:35 msgid "Fill in an email address to enable password recovery" -msgstr "Ievadiet epasta adresi, lai vÄ“lak bÅ«tu iespÄ“ja atgÅ«t paroli, ja bÅ«s nepiecieÅ¡amÄ«ba" +msgstr "Ievadiet epasta adresi, lai vÄ“lÄk varÄ“tu atgÅ«t paroli, ja bÅ«s nepiecieÅ¡amÄ«ba" #: templates/personal.php:41 templates/personal.php:42 msgid "Language" @@ -208,15 +241,15 @@ msgstr "PalÄ«dzi tulkot" #: templates/personal.php:52 msgid "WebDAV" -msgstr "" +msgstr "WebDAV" #: templates/personal.php:54 msgid "Use this address to connect to your ownCloud in your file manager" -msgstr "" +msgstr "Izmanto Å¡o adresi, lai, izmantojot datņu pÄrvaldnieku, savienotos ar savu ownCloud" #: templates/personal.php:63 msgid "Version" -msgstr "" +msgstr "Versija" #: templates/personal.php:65 msgid "" @@ -230,7 +263,7 @@ msgstr "IzstrÄdÄjusi<a href=\"http://ownCloud.org/contact\" target=\"_blank\"> #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "IerakstīšanÄs vÄrds" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -242,11 +275,11 @@ msgstr "Izveidot" #: templates/users.php:35 msgid "Default Storage" -msgstr "" +msgstr "NoklusÄ“juma krÄtuve" #: templates/users.php:42 templates/users.php:142 msgid "Unlimited" -msgstr "" +msgstr "Neierobežota" #: templates/users.php:60 templates/users.php:157 msgid "Other" @@ -254,7 +287,7 @@ msgstr "Cits" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Redzamais vÄrds" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -262,12 +295,20 @@ msgstr "Grupas administrators" #: templates/users.php:86 msgid "Storage" -msgstr "" +msgstr "KrÄtuve" + +#: templates/users.php:97 +msgid "change display name" +msgstr "mainÄ«t redzamo vÄrdu" + +#: templates/users.php:101 +msgid "set new password" +msgstr "iestatÄ«t jaunu paroli" #: templates/users.php:137 msgid "Default" -msgstr "" +msgstr "NoklusÄ“juma" #: templates/users.php:165 msgid "Delete" -msgstr "IzdzÄ“st" +msgstr "DzÄ“st" diff --git a/l10n/lv/user_ldap.po b/l10n/lv/user_ldap.po index 737869b743e..ac6a97fa0f2 100644 --- a/l10n/lv/user_ldap.po +++ b/l10n/lv/user_ldap.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 21:57+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 14:21+0000\n" +"Last-Translator: RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>\n" "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -17,179 +18,293 @@ msgstr "" "Language: lv\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "NeizdevÄs izdzÄ“st servera konfigurÄciju" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "KonfigurÄcija ir derÄ«ga un varÄ“ja izveidot savienojumu!" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "KonfigurÄcija ir derÄ«ga, bet sasaiste neizdevÄs. LÅ«dzu, pÄrbaudiet servera iestatÄ«jumus un akreditÄcijas datus." + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "KonfigurÄcija ir nederÄ«ga. LÅ«dzu, apskatiet ownCloud žurnÄlu, lai uzzinÄtu vairÄk." + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "NeizdevÄs izdzÄ“st" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "Paņemt iestatÄ«jumus no nesenas servera konfigurÄcijas?" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "PaturÄ“t iestatÄ«jumus?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "Nevar pievienot servera konfigurÄciju" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "Savienojuma tests ir veiksmÄ«gs" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "Savienojuma tests cieta neveiksmi" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "Vai tieÅ¡Äm vÄ“laties dzÄ“st paÅ¡reizÄ“jo servera konfigurÄciju?" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "ApstiprinÄt dzēšanu" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" " experience unexpected behaviour. Please ask your system administrator to " "disable one of them." -msgstr "" +msgstr "<b>BrÄ«dinÄjums:</b> lietotnes user_ldap un user_webdavauth ir nesavietojamas. TÄs var izraisÄ«t negaidÄ«tu uzvedÄ«bu. LÅ«dzu, prasiet savam sistÄ“mas administratoram kÄdu no tÄm deaktivÄ“t." #: templates/settings.php:11 msgid "" "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not " "work. Please ask your system administrator to install it." -msgstr "" +msgstr "<b>BrÄ«dinÄjums:</b> PHP LDAP modulis nav uzinstalÄ“ts, aizmugure nedarbosies. LÅ«dzu, prasiet savam sistÄ“mas administratoram kÄdu no tÄm deaktivÄ“t." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "Servera konfigurÄcija" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "Pievienot servera konfigurÄciju" + +#: templates/settings.php:21 msgid "Host" -msgstr "" +msgstr "Resursdators" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" -msgstr "" +msgstr "Var neiekļaut protokolu, izņemot, ja vajag SSL. Tad sÄkums ir ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" -msgstr "" +msgstr "BÄzes DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" -msgstr "" +msgstr "Viena bÄzes DN rindÄ" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" -msgstr "" +msgstr "LietotÄjiem un grupÄm bÄzes DN var norÄdÄ«t cilnÄ“ “PaplaÅ¡inÄtiâ€" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" -msgstr "" +msgstr "LietotÄja DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." -msgstr "" +msgstr "Klienta lietotÄja DN, ar ko veiks sasaisti, piemÄ“ram, uid=agent,dc=example,dc=com. Lai piekļūtu anonÄ«mi, atstÄjiet DN un paroli tukÅ¡u." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" -msgstr "" +msgstr "Parole" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." -msgstr "" +msgstr "Lai piekļūtu anonÄ«mi, atstÄjiet DN un paroli tukÅ¡u." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" -msgstr "" +msgstr "LietotÄja ierakstīšanÄs filtrs" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." -msgstr "" +msgstr "DefinÄ“ filtru, ko izmantot, kad mēģina ierakstÄ«ties. %%uid ierakstīšanÄs darbÄ«bÄ aizstÄj lietotÄjvÄrdu." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" -msgstr "" +msgstr "lieto %%uid vietturi, piemÄ“ram, \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" -msgstr "" +msgstr "LietotÄju saraksta filtrs" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." -msgstr "" +msgstr "DefinÄ“ filtru, ko izmantot, kad saņem lietotÄju sarakstu." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." -msgstr "" +msgstr "bez jebkÄdiem vietturiem, piemÄ“ram, \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" -msgstr "" +msgstr "Grupu filtrs" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." -msgstr "" +msgstr "DefinÄ“ filtru, ko izmantot, kad saņem grupu sarakstu." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." -msgstr "" +msgstr "bez jebkÄdiem vietturiem, piemÄ“ram, \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "Savienojuma iestatÄ«jumi" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "KonfigurÄcija ir aktÄ«va" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "Ja nav atzÄ«mÄ“ts, šī konfigurÄcija tiks izlaista." + +#: templates/settings.php:34 msgid "Port" -msgstr "" +msgstr "Ports" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "Rezerves (kopija) serveris" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "NorÄdi rezerves serveri (nav obligÄti). Tam ir jÄbÅ«t galvenÄ LDAP/AD servera kopijai." -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "Rezerves (kopijas) ports" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "DeaktivÄ“t galveno serveri" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "Kad ieslÄ“gts, ownCloud savienosies tikai ar kopijas serveri." -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" -msgstr "" +msgstr "Lietot TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." -msgstr "" +msgstr "Neizmanto to SSL savienojumiem, tas neizdosies." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" -msgstr "" +msgstr "ReÄ£istrnejutÄ«gs LDAP serveris (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." -msgstr "" +msgstr "IzslÄ“gt SSL sertifikÄtu validēšanu." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." -msgstr "" +msgstr "Ja savienojums darbojas ar Å¡o opciju, importÄ“ LDAP serveru SSL sertifikÄtu savÄ ownCloud serverÄ«." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." -msgstr "" +msgstr "Nav ieteicams, izmanto tikai testēšanai!" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "sekundÄ“s. Izmaiņas iztukÅ¡os keÅ¡atmiņu." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "Direktorijas iestatÄ«jumi" + +#: templates/settings.php:45 msgid "User Display Name Field" -msgstr "" +msgstr "LietotÄja redzamÄ vÄrda lauks" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." -msgstr "" +msgstr "LDAP atribÅ«ts, ko izmantot lietotÄja ownCloud vÄrda veidoÅ¡anai." + +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "BÄzes lietotÄju koks" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Viena lietotÄju bÄzes DN rindÄ" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "LietotÄju meklēšanas atribÅ«ts" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "NeobligÄti; viens atribÅ«ts rindÄ" + +#: templates/settings.php:48 msgid "Group Display Name Field" -msgstr "" +msgstr "Grupas redzamÄ nosaukuma lauks" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." -msgstr "" +msgstr "LDAP atribÅ«ts, ko izmantot grupas ownCloud nosaukuma veidoÅ¡anai." -#: templates/settings.php:34 -msgid "in bytes" -msgstr "" +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "BÄzes grupu koks" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "" +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Viena grupu bÄzes DN rindÄ" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "Grupu meklēšanas atribÅ«ts" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Grupu piederÄ«bas asociÄcija" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "ĪpaÅ¡ie atribÅ«ti" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "baitos" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." -msgstr "" +msgstr "AtstÄt tukÅ¡u lietotÄja vÄrdam (noklusÄ“juma). CitÄdi, norÄdi LDAP/AD atribÅ«tu." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "PalÄ«dzÄ«ba" diff --git a/l10n/lv/user_webdavauth.po b/l10n/lv/user_webdavauth.po index 6d3874a0c53..bac06d9c1e3 100644 --- a/l10n/lv/user_webdavauth.po +++ b/l10n/lv/user_webdavauth.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-15 00:03+0100\n" -"PO-Revision-Date: 2013-01-14 23:04+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 11:30+0000\n" +"Last-Translator: RÅ«dolfs Mazurs <rudolfs.mazurs@gmail.com>\n" "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,15 +20,15 @@ msgstr "" #: templates/settings.php:3 msgid "WebDAV Authentication" -msgstr "" +msgstr "WebDAV autentifikÄcija" #: templates/settings.php:4 msgid "URL: http://" -msgstr "" +msgstr "URL: http://" -#: templates/settings.php:6 +#: templates/settings.php:7 msgid "" "ownCloud will send the user credentials to this URL. This plugin checks the " "response and will interpret the HTTP statuscodes 401 and 403 as invalid " "credentials, and all other responses as valid credentials." -msgstr "" +msgstr "ownCloud sÅ«tÄ«s lietotÄja akreditÄcijas datus uz Å¡o URL. Å is spraudnis pÄrbauda atbildi un interpretÄ“ HTTP statusa kodus 401 un 403 kÄ nederÄ«gus akreditÄcijas datus un visas citas atbildes kÄ derÄ«gus akreditÄcijas datus." diff --git a/l10n/mk/core.po b/l10n/mk/core.po index a6cc634a953..a06a664bec0 100644 --- a/l10n/mk/core.po +++ b/l10n/mk/core.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Macedonian (http://www.transifex.com/projects/p/owncloud/language/mk/)\n" "MIME-Version: 1.0\n" @@ -158,59 +158,59 @@ msgstr "Ðоември" msgid "December" msgstr "Декември" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "ПоÑтавки" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "пред Ñекунди" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "пред 1 минута" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "пред {minutes} минути" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "пред 1 чаÑ" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "пред {hours} чаÑови" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "денеÑка" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "вчера" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "пред {days} денови" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "минатиот меÑец" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "пред {months} меÑеци" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "пред меÑеци" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "минатата година" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "пред години" @@ -255,7 +255,7 @@ msgstr "Задолжителната датотека {file} не е инÑтаР#: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Сподели" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -543,7 +543,7 @@ msgstr "Заврши го подеÑувањето" msgid "web services under your control" msgstr "веб ÑервиÑи под Ваша контрола" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Одјава" diff --git a/l10n/mk/files.po b/l10n/mk/files.po index 875893ff2ab..941e084b4a1 100644 --- a/l10n/mk/files.po +++ b/l10n/mk/files.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Macedonian (http://www.transifex.com/projects/p/owncloud/language/mk/)\n" "MIME-Version: 1.0\n" @@ -20,20 +20,6 @@ msgstr "" "Language: mk\n" "Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Ðиту еден фајл не Ñе вчита. Ðепозната грешка" @@ -69,11 +55,11 @@ msgstr "Ðе поÑтои привремена папка" msgid "Failed to write to disk" msgstr "ÐеуÑпеав да запишам на диÑк" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -81,15 +67,15 @@ msgstr "" msgid "Files" msgstr "Датотеки" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Ðе Ñподелувај" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Избриши" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Преименувај" @@ -113,7 +99,7 @@ msgstr "откажи" msgid "replaced {new_name}" msgstr "земенета {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "врати" @@ -121,13 +107,9 @@ msgstr "врати" msgid "replaced {new_name} with {old_name}" msgstr "заменета {new_name} Ñо {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "без Ñподелување {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "избришани {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -151,86 +133,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Ðе може да Ñе преземе вашата датотека бидејќи фолдерот во кој Ñе наоѓа фајлот има големина од 0 бајти" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Грешка при преземање" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Затвои" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Чека" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 датотека Ñе подига" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} датотеки Ñе подигаат" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Преземањето е прекинато." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Подигање на датотека е во тек. Ðапуштење на Ñтраницата ќе го прекине." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "ÐдреÑата неможе да биде празна." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} датотеки Ñкенирани" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "грешка при Ñкенирање" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Име" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Големина" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Променето" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 папка" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} папки" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 датотека" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} датотеки" @@ -286,32 +260,40 @@ msgstr "Папка" msgid "From link" msgstr "Од врÑка" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Откажи прикачување" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Тука нема ништо. Снимете нешто!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Преземи" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Датотеката е премногу голема" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Датотеките кои Ñе обидувате да ги подигнете ја надминуваат макÑималната големина за подигнување датотеки на овој Ñервер." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Се Ñкенираат датотеки, ве молам почекајте." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Моментално Ñкенирам" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/mk/files_trashbin.po b/l10n/mk/files_trashbin.po new file mode 100644 index 00000000000..567a2b7aaef --- /dev/null +++ b/l10n/mk/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Macedonian (http://www.transifex.com/projects/p/owncloud/language/mk/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: mk\n" +"Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Име" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 папка" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} папки" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 датотека" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} датотеки" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/mk/settings.po b/l10n/mk/settings.po index 8468db8e1a8..c863d2c2a33 100644 --- a/l10n/mk/settings.po +++ b/l10n/mk/settings.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Macedonian (http://www.transifex.com/projects/p/owncloud/language/mk/)\n" "MIME-Version: 1.0\n" @@ -78,14 +78,42 @@ msgstr "Ðеможе да додадам кориÑник во група %s" msgid "Unable to remove user from group %s" msgstr "Ðеможе да избришам кориÑник од група %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Оневозможи" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Овозможи" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Грешка" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Снимам..." @@ -114,6 +142,10 @@ msgstr "Види ја Ñтраницата Ñо апликации на apps.own msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-лиценцирано од <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Ðжурирај" + #: templates/help.php:3 msgid "User Documentation" msgstr "КориÑничка документација" @@ -265,6 +297,14 @@ msgstr "ÐдминиÑтратор на група" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/mk/user_ldap.po b/l10n/mk/user_ldap.po index c80a334455b..7380a12ef33 100644 --- a/l10n/mk/user_ldap.po +++ b/l10n/mk/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 21:57+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Macedonian (http://www.transifex.com/projects/p/owncloud/language/mk/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: mk\n" "Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Бришењето е неуÑпешно" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Домаќин" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Може да го Ñкокнете протколот оÑвен ако не ви треба SSL. Тогаш Ñтавете ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Лозинка" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Помош" diff --git a/l10n/ms_MY/core.po b/l10n/ms_MY/core.po index 3a62b704348..0ae9e04e981 100644 --- a/l10n/ms_MY/core.po +++ b/l10n/ms_MY/core.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Malay (Malaysia) (http://www.transifex.com/projects/p/owncloud/language/ms_MY/)\n" "MIME-Version: 1.0\n" @@ -158,59 +158,59 @@ msgstr "November" msgid "December" msgstr "Disember" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Tetapan" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "" @@ -255,7 +255,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Kongsi" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -543,7 +543,7 @@ msgstr "Setup selesai" msgid "web services under your control" msgstr "Perkhidmatan web di bawah kawalan anda" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Log keluar" diff --git a/l10n/ms_MY/files.po b/l10n/ms_MY/files.po index 642cde5a6e6..6e6a0e262c6 100644 --- a/l10n/ms_MY/files.po +++ b/l10n/ms_MY/files.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Malay (Malaysia) (http://www.transifex.com/projects/p/owncloud/language/ms_MY/)\n" "MIME-Version: 1.0\n" @@ -21,20 +21,6 @@ msgstr "" "Language: ms_MY\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Tiada fail dimuatnaik. Ralat tidak diketahui." @@ -70,11 +56,11 @@ msgstr "Folder sementara hilang" msgid "Failed to write to disk" msgstr "Gagal untuk disimpan" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -82,15 +68,15 @@ msgstr "" msgid "Files" msgstr "fail" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Padam" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "" @@ -114,7 +100,7 @@ msgstr "Batal" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "" @@ -122,12 +108,8 @@ msgstr "" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -152,86 +134,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Tidak boleh memuatnaik fail anda kerana mungkin ianya direktori atau saiz fail 0 bytes" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Muat naik ralat" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Tutup" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Dalam proses" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Muatnaik dibatalkan." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nama " -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Saiz" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Dimodifikasi" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -287,32 +261,40 @@ msgstr "Folder" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Batal muat naik" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Tiada apa-apa di sini. Muat naik sesuatu!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Muat turun" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Muat naik terlalu besar" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Fail yang cuba dimuat naik melebihi saiz maksimum fail upload server" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Fail sedang diimbas, harap bersabar." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Imbasan semasa" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/ms_MY/files_trashbin.po b/l10n/ms_MY/files_trashbin.po new file mode 100644 index 00000000000..c3efccaa15d --- /dev/null +++ b/l10n/ms_MY/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Malay (Malaysia) (http://www.transifex.com/projects/p/owncloud/language/ms_MY/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ms_MY\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nama" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/ms_MY/settings.po b/l10n/ms_MY/settings.po index 020c1d29f4a..b9e4261b7a4 100644 --- a/l10n/ms_MY/settings.po +++ b/l10n/ms_MY/settings.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Malay (Malaysia) (http://www.transifex.com/projects/p/owncloud/language/ms_MY/)\n" "MIME-Version: 1.0\n" @@ -79,14 +79,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Nyahaktif" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Aktif" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Ralat" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Simpan..." @@ -115,6 +143,10 @@ msgstr "Lihat halaman applikasi di apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "Kemaskini" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -266,6 +298,14 @@ msgstr "" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/ms_MY/user_ldap.po b/l10n/ms_MY/user_ldap.po index 3c7e352259a..7728f96e12c 100644 --- a/l10n/ms_MY/user_ldap.po +++ b/l10n/ms_MY/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 21:57+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Malay (Malaysia) (http://www.transifex.com/projects/p/owncloud/language/ms_MY/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: ms_MY\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Pemadaman gagal" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Bantuan" diff --git a/l10n/nb_NO/core.po b/l10n/nb_NO/core.po index cf8ff804cf3..594697deef5 100644 --- a/l10n/nb_NO/core.po +++ b/l10n/nb_NO/core.po @@ -14,8 +14,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Norwegian BokmÃ¥l (Norway) (http://www.transifex.com/projects/p/owncloud/language/nb_NO/)\n" "MIME-Version: 1.0\n" @@ -162,59 +162,59 @@ msgstr "November" msgid "December" msgstr "Desember" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Innstillinger" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "sekunder siden" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 minutt siden" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} minutter siden" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 time siden" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} timer siden" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "i dag" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "i gÃ¥r" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} dager siden" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "forrige mÃ¥ned" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} mÃ¥neder siden" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "mÃ¥neder siden" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "forrige Ã¥r" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "Ã¥r siden" @@ -259,7 +259,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Del" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -547,7 +547,7 @@ msgstr "Fullfør oppsetting" msgid "web services under your control" msgstr "nettjenester under din kontroll" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Logg ut" diff --git a/l10n/nb_NO/files.po b/l10n/nb_NO/files.po index 035398726fd..195074affb1 100644 --- a/l10n/nb_NO/files.po +++ b/l10n/nb_NO/files.po @@ -16,8 +16,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Norwegian BokmÃ¥l (Norway) (http://www.transifex.com/projects/p/owncloud/language/nb_NO/)\n" "MIME-Version: 1.0\n" @@ -26,20 +26,6 @@ msgstr "" "Language: nb_NO\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Ingen filer ble lastet opp. Ukjent feil." @@ -75,11 +61,11 @@ msgstr "Mangler en midlertidig mappe" msgid "Failed to write to disk" msgstr "Klarte ikke Ã¥ skrive til disk" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -87,15 +73,15 @@ msgstr "" msgid "Files" msgstr "Filer" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Avslutt deling" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Slett" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Omdøp" @@ -119,7 +105,7 @@ msgstr "avbryt" msgid "replaced {new_name}" msgstr "erstatt {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "angre" @@ -127,14 +113,10 @@ msgstr "angre" msgid "replaced {new_name} with {old_name}" msgstr "erstatt {new_name} med {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "slettet {files}" - #: js/files.js:52 msgid "'.' is an invalid file name." msgstr "" @@ -157,86 +139,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Kan ikke laste opp filen din siden det er en mappe eller den har 0 bytes" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Opplasting feilet" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Lukk" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Ventende" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 fil lastes opp" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} filer laster opp" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Opplasting avbrutt." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Filopplasting pÃ¥gÃ¥r. Forlater du siden nÃ¥ avbrytes opplastingen." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL-en kan ikke være tom." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} filer lest inn" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "feil under skanning" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Navn" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Størrelse" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Endret" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 mappe" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} mapper" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 fil" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} filer" @@ -292,32 +266,40 @@ msgstr "Mappe" msgid "From link" msgstr "Fra link" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Avbryt opplasting" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Ingenting her. Last opp noe!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Last ned" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Opplasting for stor" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Filene du prøver Ã¥ laste opp er for store for Ã¥ laste opp til denne serveren." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Skanner etter filer, vennligst vent." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "PÃ¥gÃ¥ende skanning" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/nb_NO/files_trashbin.po b/l10n/nb_NO/files_trashbin.po new file mode 100644 index 00000000000..bac182fb219 --- /dev/null +++ b/l10n/nb_NO/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Norwegian BokmÃ¥l (Norway) (http://www.transifex.com/projects/p/owncloud/language/nb_NO/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: nb_NO\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Navn" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 mappe" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} mapper" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 fil" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} filer" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/nb_NO/settings.po b/l10n/nb_NO/settings.po index 15ea0f7eb68..a3c72924251 100644 --- a/l10n/nb_NO/settings.po +++ b/l10n/nb_NO/settings.po @@ -15,8 +15,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Norwegian BokmÃ¥l (Norway) (http://www.transifex.com/projects/p/owncloud/language/nb_NO/)\n" "MIME-Version: 1.0\n" @@ -83,14 +83,42 @@ msgstr "Kan ikke legge bruker til gruppen %s" msgid "Unable to remove user from group %s" msgstr "Kan ikke slette bruker fra gruppen %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "SlÃ¥ avBehandle " -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "SlÃ¥ pÃ¥" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Feil" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Lagrer..." @@ -119,6 +147,10 @@ msgstr "Se applikasjonens side pÃ¥ apps.owncloud.org" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "Oppdater" + #: templates/help.php:3 msgid "User Documentation" msgstr "Brukerdokumentasjon" @@ -270,6 +302,14 @@ msgstr "Gruppeadministrator" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/nb_NO/user_ldap.po b/l10n/nb_NO/user_ldap.po index b7660396ac4..26b645f7673 100644 --- a/l10n/nb_NO/user_ldap.po +++ b/l10n/nb_NO/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Norwegian BokmÃ¥l (Norway) (http://www.transifex.com/projects/p/owncloud/language/nb_NO/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: nb_NO\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Sletting feilet" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Passord" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Gruppefilter" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Bruk TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Ikke bruk for SSL tilkoblinger, dette vil ikke fungere." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Ikke anbefalt, bruk kun for testing" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "i sekunder. En endring tømmer bufferen." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "i bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "i sekunder. En endring tømmer bufferen." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Hjelp" diff --git a/l10n/nl/core.po b/l10n/nl/core.po index e331b66a8d7..6f7635cbeb9 100644 --- a/l10n/nl/core.po +++ b/l10n/nl/core.po @@ -21,9 +21,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 08:10+0000\n" +"Last-Translator: André Koot <meneer@tken.net>\n" "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -169,59 +169,59 @@ msgstr "november" msgid "December" msgstr "december" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Instellingen" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "seconden geleden" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 minuut geleden" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} minuten geleden" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 uur geleden" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} uren geleden" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "vandaag" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "gisteren" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} dagen geleden" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "vorige maand" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} maanden geleden" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "maanden geleden" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "vorig jaar" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "jaar geleden" @@ -266,11 +266,11 @@ msgstr "Het vereiste bestand {file} is niet geïnstalleerd!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Delen" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Gedeeld" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -393,11 +393,11 @@ msgid "" "The update was unsuccessful. Please report this issue to the <a " "href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud " "community</a>." -msgstr "" +msgstr "De update is niet geslaagd. Meld dit probleem aan bij de <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud community</a>." #: js/update.js:18 msgid "The update was successful. Redirecting you to ownCloud now." -msgstr "" +msgstr "De update is geslaagd. U wordt teruggeleid naar uw eigen ownCloud." #: lostpassword/controller.php:47 msgid "ownCloud password reset" @@ -554,7 +554,7 @@ msgstr "Installatie afronden" msgid "web services under your control" msgstr "Webdiensten in eigen beheer" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Afmelden" diff --git a/l10n/nl/files.po b/l10n/nl/files.po index 0fcff7925a6..a49996ff6f2 100644 --- a/l10n/nl/files.po +++ b/l10n/nl/files.po @@ -19,9 +19,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 08:10+0000\n" +"Last-Translator: André Koot <meneer@tken.net>\n" "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -29,20 +29,6 @@ msgstr "" "Language: nl\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Kon %s niet verplaatsen - Er bestaat al een bestand met deze naam" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Kon %s niet verplaatsen" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Kan bestand niet hernoemen" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Er was geen bestand geladen. Onbekende fout" @@ -78,11 +64,11 @@ msgstr "Een tijdelijke map mist" msgid "Failed to write to disk" msgstr "Schrijven naar schijf mislukt" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Niet genoeg ruimte beschikbaar" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Ongeldige directory." @@ -90,15 +76,15 @@ msgstr "Ongeldige directory." msgid "Files" msgstr "Bestanden" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Stop delen" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Verwijder" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Hernoem" @@ -122,7 +108,7 @@ msgstr "annuleren" msgid "replaced {new_name}" msgstr "verving {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "ongedaan maken" @@ -130,13 +116,9 @@ msgstr "ongedaan maken" msgid "replaced {new_name} with {old_name}" msgstr "verving {new_name} met {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "delen gestopt {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "verwijderde {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "uitvoeren verwijderactie" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -154,92 +136,84 @@ msgstr "Onjuiste naam; '\\', '/', '<', '>', ':', '\"', '|', '?' en '*' zijn niet #: js/files.js:78 msgid "Your storage is full, files can not be updated or synced anymore!" -msgstr "" +msgstr "Uw opslagruimte zit vol, Bestanden kunnen niet meer worden ge-upload of gesynchroniseerd!" #: js/files.js:82 msgid "Your storage is almost full ({usedSpacePercent}%)" -msgstr "" +msgstr "Uw opslagruimte zit bijna vol ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Uw download wordt voorbereid. Dit kan enige tijd duren bij grote bestanden." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "uploaden van de file mislukt, het is of een directory of de bestandsgrootte is 0 bytes" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Upload Fout" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Sluit" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Wachten" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 bestand wordt ge-upload" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} bestanden aan het uploaden" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Uploaden geannuleerd." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Bestandsupload is bezig. Wanneer de pagina nu verlaten wordt, stopt de upload." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL kan niet leeg zijn." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Ongeldige mapnaam. Gebruik van'Gedeeld' is voorbehouden aan Owncloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} bestanden gescanned" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "Fout tijdens het scannen" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Naam" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Bestandsgrootte" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Laatst aangepast" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 map" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} mappen" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 bestand" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} bestanden" @@ -295,32 +269,40 @@ msgstr "Map" msgid "From link" msgstr "Vanaf link" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "Verwijderen" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Upload afbreken" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Er bevindt zich hier niets. Upload een bestand!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Download" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Bestanden te groot" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "De bestanden die u probeert te uploaden zijn groter dan de maximaal toegestane bestandsgrootte voor deze server." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Bestanden worden gescand, even wachten." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Er wordt gescand" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Upgraden bestandssysteem cache..." diff --git a/l10n/nl/files_encryption.po b/l10n/nl/files_encryption.po index b1ef07dc13e..16c95df107e 100644 --- a/l10n/nl/files_encryption.po +++ b/l10n/nl/files_encryption.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# Lennart Weijl <lenny@weijl.org>, 2013. # Richard Bos <radoeka@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-23 00:05+0100\n" -"PO-Revision-Date: 2013-01-22 23:05+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 10:30+0000\n" +"Last-Translator: Len <lenny@weijl.org>\n" "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -26,23 +27,23 @@ msgstr "" #: js/settings-personal.js:17 msgid "switched to client side encryption" -msgstr "" +msgstr "overgeschakeld naar client side encryptie" #: js/settings-personal.js:21 msgid "Change encryption password to login password" -msgstr "" +msgstr "Verander encryptie wachtwoord naar login wachtwoord" #: js/settings-personal.js:25 msgid "Please check your passwords and try again." -msgstr "" +msgstr "Controleer uw wachtwoorden en probeer het opnieuw." #: js/settings-personal.js:25 msgid "Could not change your file encryption password to your login password" -msgstr "" +msgstr "Kon het bestandsencryptie wachtwoord niet veranderen naar het login wachtwoord" #: templates/settings-personal.php:3 templates/settings.php:5 msgid "Choose encryption mode:" -msgstr "" +msgstr "Kies encryptie mode:" #: templates/settings-personal.php:20 templates/settings.php:24 msgid "" @@ -58,13 +59,13 @@ msgstr "" #: templates/settings-personal.php:41 templates/settings.php:60 msgid "None (no encryption at all)" -msgstr "" +msgstr "Geen (zonder encryptie)" #: templates/settings.php:10 msgid "" "Important: Once you selected an encryption mode there is no way to change it" " back" -msgstr "" +msgstr "Belangrijk: Zodra er voor een encryptie mode is gekozen kan deze niet meer worden gewijzigd." #: templates/settings.php:48 msgid "User specific (let the user decide)" diff --git a/l10n/nl/files_trashbin.po b/l10n/nl/files_trashbin.po new file mode 100644 index 00000000000..3c41fa7376a --- /dev/null +++ b/l10n/nl/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# André Koot <meneer@tken.net>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: nl\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "uitvoeren restore operatie" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Naam" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "Verwijderd" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 map" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} mappen" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 bestand" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} bestanden" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Niets te vinden. Uw prullenbak is leeg!" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Herstellen" diff --git a/l10n/nl/settings.po b/l10n/nl/settings.po index d3d08ece029..e7ce8853525 100644 --- a/l10n/nl/settings.po +++ b/l10n/nl/settings.po @@ -18,8 +18,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n" "MIME-Version: 1.0\n" @@ -86,14 +86,42 @@ msgstr "Niet in staat om gebruiker toe te voegen aan groep %s" msgid "Unable to remove user from group %s" msgstr "Niet in staat om gebruiker te verwijderen uit groep %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "Kon de app niet bijwerken." + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "Bijwerken naar {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Uitschakelen" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Inschakelen" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "Even geduld aub...." + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "Fout bij bijwerken app" + +#: js/apps.js:87 +msgid "Error" +msgstr "Fout" + +#: js/apps.js:90 +msgid "Updated" +msgstr "Bijgewerkt" + #: js/personal.js:69 msgid "Saving..." msgstr "Aan het bewaren....." @@ -122,6 +150,10 @@ msgstr "Zie de applicatiepagina op apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-Gelicenseerd door <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Bijwerken" + #: templates/help.php:3 msgid "User Documentation" msgstr "Gebruikersdocumentatie" @@ -239,7 +271,7 @@ msgstr "Ontwikkeld door de <a href=\"http://ownCloud.org/contact\" target=\"_bla #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Inlognaam" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -263,7 +295,7 @@ msgstr "Andere" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Weergavenaam" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -273,6 +305,14 @@ msgstr "Groep beheerder" msgid "Storage" msgstr "Opslag" +#: templates/users.php:97 +msgid "change display name" +msgstr "wijzig weergavenaam" + +#: templates/users.php:101 +msgid "set new password" +msgstr "Instellen nieuw wachtwoord" + #: templates/users.php:137 msgid "Default" msgstr "Default" diff --git a/l10n/nl/user_ldap.po b/l10n/nl/user_ldap.po index 41b46e70ec4..16374f65707 100644 --- a/l10n/nl/user_ldap.po +++ b/l10n/nl/user_ldap.po @@ -10,9 +10,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-17 00:26+0100\n" -"PO-Revision-Date: 2013-01-16 15:38+0000\n" -"Last-Translator: André Koot <meneer@tken.net>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -20,6 +20,58 @@ msgstr "" "Language: nl\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "Verwijderen serverconfiguratie mislukt" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "De configuratie is geldig en de verbinding is geslaagd!" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "De configuratie is ongeldig. Controleer de ownCloud log voor meer details." + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Verwijderen mislukt" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "Overnemen instellingen van de recente serverconfiguratie?" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "Instellingen bewaren?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "Kon de serverconfiguratie niet toevoegen" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "Verbindingstest geslaagd" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "Verbindingstest mislukt" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "Wilt u werkelijk de huidige Serverconfiguratie verwijderen?" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "Bevestig verwijderen" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -34,165 +86,227 @@ msgid "" msgstr "<b>Waarschuwing:</b> De PHP LDAP module is niet geïnstalleerd, het backend zal niet werken. Vraag uw systeembeheerder om de module te installeren." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "Serverconfiguratie" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "Toevoegen serverconfiguratie" + +#: templates/settings.php:21 msgid "Host" msgstr "Host" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Je kunt het protocol weglaten, tenzij je SSL vereist. Start in dat geval met ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Base DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "Een Base DN per regel" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Je kunt het Base DN voor gebruikers en groepen specificeren in het tab Geavanceerd." -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "User DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "De DN van de client gebruiker waarmee de verbinding zal worden gemaakt, bijv. uid=agent,dc=example,dc=com. Voor anonieme toegang laat je het DN en het wachtwoord leeg." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Wachtwoord" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Voor anonieme toegang, laat de DN en het wachtwoord leeg." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Gebruikers Login Filter" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Definiëerd de toe te passen filter indien er geprobeerd wordt in te loggen. %%uid vervangt de gebruikersnaam in de login actie." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "gebruik %%uid placeholder, bijv. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Gebruikers Lijst Filter" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Definiëerd de toe te passen filter voor het ophalen van gebruikers." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "zonder een placeholder, bijv. \"objectClass=person\"" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Groep Filter" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Definiëerd de toe te passen filter voor het ophalen van groepen." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "zonder een placeholder, bijv. \"objectClass=posixGroup\"" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "Configuratie actief" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Poort" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Basis Gebruikers Structuur" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "Backup (Replica) Host" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "Een User Base DN per regel" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Basis Groupen Structuur" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "Backup (Replica) Poort" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "Een Group Base DN per regel" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "Deactiveren hoofdserver" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Groepslid associatie" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "Wanneer ingeschakeld, zal ownCloud allen verbinden met de replicaserver." -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Gebruik TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Gebruik niet voor SSL connecties, deze mislukken." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Niet-hoofdlettergevoelige LDAP server (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Schakel SSL certificaat validatie uit." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Als de connectie alleen werkt met deze optie, importeer dan het LDAP server SSL certificaat naar je ownCloud server." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Niet aangeraden, gebruik alleen voor test doeleinden." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "in seconden. Een verandering maakt de cache leeg." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Gebruikers Schermnaam Veld" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Het te gebruiken LDAP attribuut voor het genereren van de ownCloud naam voor de gebruikers." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Basis Gebruikers Structuur" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Een User Base DN per regel" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "Optioneel; één attribuut per regel" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Groep Schermnaam Veld" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Het te gebruiken LDAP attribuut voor het genereren van de ownCloud naam voor de groepen." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Basis Groupen Structuur" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Een Group Base DN per regel" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Groepslid associatie" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "in bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "in seconden. Een verandering maakt de cache leeg." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Laat leeg voor de gebruikersnaam (standaard). Of, specificeer een LDAP/AD attribuut." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Help" diff --git a/l10n/nn_NO/core.po b/l10n/nn_NO/core.po index f50e25d9507..e56d60adc1f 100644 --- a/l10n/nn_NO/core.po +++ b/l10n/nn_NO/core.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Norwegian Nynorsk (Norway) (http://www.transifex.com/projects/p/owncloud/language/nn_NO/)\n" "MIME-Version: 1.0\n" @@ -157,59 +157,59 @@ msgstr "November" msgid "December" msgstr "Desember" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Innstillingar" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "" @@ -542,7 +542,7 @@ msgstr "Fullfør oppsettet" msgid "web services under your control" msgstr "Vev tjenester under din kontroll" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Logg ut" diff --git a/l10n/nn_NO/files.po b/l10n/nn_NO/files.po index 3cd6f2dfa04..dd980f0277e 100644 --- a/l10n/nn_NO/files.po +++ b/l10n/nn_NO/files.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Norwegian Nynorsk (Norway) (http://www.transifex.com/projects/p/owncloud/language/nn_NO/)\n" "MIME-Version: 1.0\n" @@ -19,20 +19,6 @@ msgstr "" "Language: nn_NO\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -68,11 +54,11 @@ msgstr "Manglar ei mellombels mappe" msgid "Failed to write to disk" msgstr "" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -80,15 +66,15 @@ msgstr "" msgid "Files" msgstr "Filer" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Slett" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "" @@ -112,7 +98,7 @@ msgstr "" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "" @@ -120,12 +106,8 @@ msgstr "" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -150,86 +132,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Lukk" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Namn" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Storleik" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Endra" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -285,32 +259,40 @@ msgstr "Mappe" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Ingenting her. Last noko opp!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Last ned" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "For stor opplasting" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Filene du prøver Ã¥ laste opp er større enn maksgrensa til denne tenaren." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/nn_NO/files_trashbin.po b/l10n/nn_NO/files_trashbin.po new file mode 100644 index 00000000000..ef89f942345 --- /dev/null +++ b/l10n/nn_NO/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Norwegian Nynorsk (Norway) (http://www.transifex.com/projects/p/owncloud/language/nn_NO/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: nn_NO\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Namn" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/nn_NO/settings.po b/l10n/nn_NO/settings.po index cb70f810e6b..7c203200289 100644 --- a/l10n/nn_NO/settings.po +++ b/l10n/nn_NO/settings.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Norwegian Nynorsk (Norway) (http://www.transifex.com/projects/p/owncloud/language/nn_NO/)\n" "MIME-Version: 1.0\n" @@ -77,14 +77,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "SlÃ¥ av" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "SlÃ¥ pÃ¥" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Feil" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "" @@ -113,6 +141,10 @@ msgstr "" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "Oppdater" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -264,6 +296,14 @@ msgstr "" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/nn_NO/user_ldap.po b/l10n/nn_NO/user_ldap.po index 0046c6c622c..a4e1c38181a 100644 --- a/l10n/nn_NO/user_ldap.po +++ b/l10n/nn_NO/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 21:57+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Norwegian Nynorsk (Norway) (http://www.transifex.com/projects/p/owncloud/language/nn_NO/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: nn_NO\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Hjelp" diff --git a/l10n/oc/core.po b/l10n/oc/core.po index 11903a2bbcf..7e970870521 100644 --- a/l10n/oc/core.po +++ b/l10n/oc/core.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Occitan (post 1500) (http://www.transifex.com/projects/p/owncloud/language/oc/)\n" "MIME-Version: 1.0\n" @@ -156,59 +156,59 @@ msgstr "Novembre" msgid "December" msgstr "Decembre" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Configuracion" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "segonda a" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 minuta a" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "uèi" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "ièr" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "mes passat" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "meses a" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "an passat" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "ans a" @@ -253,7 +253,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Parteja" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -541,7 +541,7 @@ msgstr "Configuracion acabada" msgid "web services under your control" msgstr "Services web jos ton contraròtle" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Sortida" diff --git a/l10n/oc/files.po b/l10n/oc/files.po index 7d952dff63c..f7e8ceb4ea3 100644 --- a/l10n/oc/files.po +++ b/l10n/oc/files.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Occitan (post 1500) (http://www.transifex.com/projects/p/owncloud/language/oc/)\n" "MIME-Version: 1.0\n" @@ -18,20 +18,6 @@ msgstr "" "Language: oc\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -67,11 +53,11 @@ msgstr "Un dorsièr temporari manca" msgid "Failed to write to disk" msgstr "L'escriptura sul disc a fracassat" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -79,15 +65,15 @@ msgstr "" msgid "Files" msgstr "Fichièrs" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Non parteja" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Escafa" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Torna nomenar" @@ -111,7 +97,7 @@ msgstr "anulla" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "defar" @@ -119,12 +105,8 @@ msgstr "defar" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -149,86 +131,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Impossible d'amontcargar lo teu fichièr qu'es un repertòri o que ten pas que 0 octet." -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Error d'amontcargar" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Al esperar" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 fichièr al amontcargar" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Amontcargar anullat." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Un amontcargar es a se far. Daissar aquesta pagina ara tamparà lo cargament. " -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "error pendant l'exploracion" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nom" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Talha" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Modificat" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -284,32 +258,40 @@ msgstr "Dorsièr" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr " Anulla l'amontcargar" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Pas res dedins. Amontcarga qualquaren" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Avalcarga" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Amontcargament tròp gròs" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Los fichièrs que sias a amontcargar son tròp pesucs per la talha maxi pel servidor." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Los fiichièrs son a èsser explorats, " -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Exploracion en cors" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/oc/files_trashbin.po b/l10n/oc/files_trashbin.po new file mode 100644 index 00000000000..f558a70f109 --- /dev/null +++ b/l10n/oc/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Occitan (post 1500) (http://www.transifex.com/projects/p/owncloud/language/oc/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: oc\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nom" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/oc/settings.po b/l10n/oc/settings.po index 624ac3293f6..95c28b3ee25 100644 --- a/l10n/oc/settings.po +++ b/l10n/oc/settings.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Occitan (post 1500) (http://www.transifex.com/projects/p/owncloud/language/oc/)\n" "MIME-Version: 1.0\n" @@ -76,14 +76,42 @@ msgstr "Pas capable d'apondre un usancièr al grop %s" msgid "Unable to remove user from group %s" msgstr "Pas capable de tira un usancièr del grop %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Desactiva" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Activa" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Error" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Enregistra..." @@ -112,6 +140,10 @@ msgstr "Agacha la pagina d'applications en cò de apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licençiat per <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -263,6 +295,14 @@ msgstr "Grop Admin" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/oc/user_ldap.po b/l10n/oc/user_ldap.po index f3e7f309794..db410b6652d 100644 --- a/l10n/oc/user_ldap.po +++ b/l10n/oc/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 21:57+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Occitan (post 1500) (http://www.transifex.com/projects/p/owncloud/language/oc/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: oc\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Fracà s d'escafatge" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Ajuda" diff --git a/l10n/pl/core.po b/l10n/pl/core.po index ba00a2aa5f5..d685740ac94 100644 --- a/l10n/pl/core.po +++ b/l10n/pl/core.po @@ -17,8 +17,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Polish (http://www.transifex.com/projects/p/owncloud/language/pl/)\n" "MIME-Version: 1.0\n" @@ -165,59 +165,59 @@ msgstr "Listopad" msgid "December" msgstr "GrudzieÅ„" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Ustawienia" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "sekund temu" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 minute temu" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} minut temu" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 godzine temu" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} godzin temu" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "dziÅ›" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "wczoraj" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} dni temu" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "ostani miesiÄ…c" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} miesiÄ™cy temu" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "miesiÄ™cy temu" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "ostatni rok" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "lat temu" @@ -262,11 +262,11 @@ msgstr "Żądany plik {file} nie jest zainstalowany!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "UdostÄ™pnij" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "UdostÄ™pniono" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -550,7 +550,7 @@ msgstr "ZakoÅ„cz konfigurowanie" msgid "web services under your control" msgstr "usÅ‚ugi internetowe pod kontrolÄ…" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Wylogowuje użytkownika" diff --git a/l10n/pl/files.po b/l10n/pl/files.po index 273a818baff..b6554c153a8 100644 --- a/l10n/pl/files.po +++ b/l10n/pl/files.po @@ -15,8 +15,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Polish (http://www.transifex.com/projects/p/owncloud/language/pl/)\n" "MIME-Version: 1.0\n" @@ -25,20 +25,6 @@ msgstr "" "Language: pl\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Nie można byÅ‚o przenieść %s - Plik o takiej nazwie już istnieje" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Nie można byÅ‚o przenieść %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Nie można zmienić nazwy pliku" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Plik nie zostaÅ‚ zaÅ‚adowany. Nieznany błąd" @@ -74,11 +60,11 @@ msgstr "Brak katalogu tymczasowego" msgid "Failed to write to disk" msgstr "Błąd zapisu na dysk" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Za maÅ‚o miejsca" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "ZÅ‚a Å›cieżka." @@ -86,15 +72,15 @@ msgstr "ZÅ‚a Å›cieżka." msgid "Files" msgstr "Pliki" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Nie udostÄ™pniaj" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Usuwa element" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "ZmieÅ„ nazwÄ™" @@ -118,7 +104,7 @@ msgstr "anuluj" msgid "replaced {new_name}" msgstr "zastÄ…piony {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "wróć" @@ -126,13 +112,9 @@ msgstr "wróć" msgid "replaced {new_name} with {old_name}" msgstr "zastÄ…piony {new_name} z {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "UdostÄ™pniane wstrzymane {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "usuniÄ™to {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -156,86 +138,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Nie można wczytać pliku jeÅ›li jest katalogiem lub ma 0 bajtów" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Błąd wczytywania" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Zamknij" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "OczekujÄ…ce" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 plik wczytany" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} przesyÅ‚anie plików" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Wczytywanie anulowane." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "WysyÅ‚anie pliku jest w toku. Teraz opuszczajÄ…c stronÄ™ wysyÅ‚anie zostanie anulowane." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL nie może być pusty." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Nazwa folderu nieprawidÅ‚owa. Wykorzystanie \"Shared\" jest zarezerwowane przez Owncloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} pliki skanowane" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "WystÄ…piÅ‚ błąd podczas skanowania" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nazwa" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Rozmiar" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Czas modyfikacji" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 folder" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} foldery" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 plik" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} pliki" @@ -291,32 +265,40 @@ msgstr "Katalog" msgid "From link" msgstr "Z linku" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "PrzestaÅ„ wysyÅ‚ać" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Brak zawartoÅ›ci. ProszÄ™ wysÅ‚ać pliki!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Pobiera element" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "WysyÅ‚any plik ma za duży rozmiar" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Pliki które próbujesz przesÅ‚ać, przekraczajÄ… maksymalnÄ…, dopuszczalnÄ… wielkość." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Skanowanie plików, proszÄ™ czekać." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Aktualnie skanowane" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/pl/files_trashbin.po b/l10n/pl/files_trashbin.po new file mode 100644 index 00000000000..748f62eaace --- /dev/null +++ b/l10n/pl/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Polish (http://www.transifex.com/projects/p/owncloud/language/pl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pl\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nazwa" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 folder" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} foldery" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 plik" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} pliki" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Przywróć" diff --git a/l10n/pl/settings.po b/l10n/pl/settings.po index 3bca8654b80..ffae537e261 100644 --- a/l10n/pl/settings.po +++ b/l10n/pl/settings.po @@ -18,8 +18,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Polish (http://www.transifex.com/projects/p/owncloud/language/pl/)\n" "MIME-Version: 1.0\n" @@ -86,14 +86,42 @@ msgstr "Nie można dodać użytkownika do grupy %s" msgid "Unable to remove user from group %s" msgstr "Nie można usunąć użytkownika z grupy %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Wyłącz" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Włącz" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Błąd" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Zapisywanie..." @@ -122,6 +150,10 @@ msgstr "Zobacz stronÄ™ aplikacji na apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licencjonowane przez <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Zaktualizuj" + #: templates/help.php:3 msgid "User Documentation" msgstr "Dokumentacja użytkownika" @@ -273,6 +305,14 @@ msgstr "Grupa Admin" msgid "Storage" msgstr "Magazyn" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "DomyÅ›lny" diff --git a/l10n/pl/user_ldap.po b/l10n/pl/user_ldap.po index cd8904acc25..1e8b58da0e5 100644 --- a/l10n/pl/user_ldap.po +++ b/l10n/pl/user_ldap.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Polish (http://www.transifex.com/projects/p/owncloud/language/pl/)\n" "MIME-Version: 1.0\n" @@ -20,6 +20,58 @@ msgstr "" "Language: pl\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Skasowanie nie powiodÅ‚o siÄ™" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -34,165 +86,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Host" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Można pominąć protokół, z wyjÄ…tkiem wymaganego protokoÅ‚u SSL. NastÄ™pnie uruchom z ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Baza DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "BazÄ™ DN można okreÅ›lić dla użytkowników i grup w karcie Zaawansowane" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "Użytkownik DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "DN użytkownika klienta, z którym powiÄ…zanie wykonuje siÄ™, np. uid=agent,dc=example,dc=com. Dla dostÄ™pu anonimowego pozostawić DN i hasÅ‚o puste" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "HasÅ‚o" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Dla dostÄ™pu anonimowego pozostawić DN i hasÅ‚o puste." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filtr logowania użytkownika" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Definiuje filtr do zastosowania, gdy podejmowana jest próba logowania. %%uid zastÄ™puje nazwÄ™ użytkownika w dziaÅ‚aniu logowania." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "Użyj %%uid zastÄ™pczy, np. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Lista filtrów użytkownika" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Definiuje filtry do zastosowania, podczas pobierania użytkowników." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "bez żadnych symboli zastÄ™pczych np. \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Grupa filtrów" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Definiuje filtry do zastosowania, podczas pobierania grup." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "bez żadnych symboli zastÄ™pczych np. \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Drzewo bazy użytkowników" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Drzewo bazy grup" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "CzÅ‚onek grupy stowarzyszenia" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Użyj TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Nie używaj SSL dla połączeÅ„, jeÅ›li siÄ™ nie powiedzie." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Wielkość liter serwera LDAP (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Wyłączyć sprawdzanie poprawnoÅ›ci certyfikatu SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "JeÅ›li połączenie dziaÅ‚a tylko z tÄ… opcjÄ…, zaimportuj certyfikat SSL serwera LDAP w serwerze ownCloud." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Niezalecane, użyj tylko testowo." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "w sekundach. Zmiana opróżnia pamięć podrÄ™cznÄ…." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Pole wyÅ›wietlanej nazwy użytkownika" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Atrybut LDAP sÅ‚uży do generowania nazwy użytkownika ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Drzewo bazy użytkowników" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Pole wyÅ›wietlanej nazwy grupy" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Atrybut LDAP sÅ‚uży do generowania nazwy grup ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Drzewo bazy grup" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "CzÅ‚onek grupy stowarzyszenia" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "w bajtach" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "w sekundach. Zmiana opróżnia pamięć podrÄ™cznÄ…." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Pozostaw puste dla user name (domyÅ›lnie). W przeciwnym razie podaj atrybut LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Pomoc" diff --git a/l10n/pl_PL/files.po b/l10n/pl_PL/files.po index 81c77fd71ea..ab00380cb6b 100644 --- a/l10n/pl_PL/files.po +++ b/l10n/pl_PL/files.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-01-31 17:02+0100\n" +"PO-Revision-Date: 2013-01-31 16:02+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Polish (Poland) (http://www.transifex.com/projects/p/owncloud/language/pl_PL/)\n" "MIME-Version: 1.0\n" @@ -17,20 +17,6 @@ msgstr "" "Language: pl_PL\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -66,11 +52,11 @@ msgstr "" msgid "Failed to write to disk" msgstr "" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -78,15 +64,15 @@ msgstr "" msgid "Files" msgstr "" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "" @@ -110,7 +96,7 @@ msgstr "" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "" @@ -118,12 +104,8 @@ msgstr "" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -148,86 +130,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -283,32 +257,40 @@ msgstr "" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/pl_PL/files_trashbin.po b/l10n/pl_PL/files_trashbin.po new file mode 100644 index 00000000000..ce226803d8a --- /dev/null +++ b/l10n/pl_PL/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Polish (Poland) (http://www.transifex.com/projects/p/owncloud/language/pl_PL/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pl_PL\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/pl_PL/settings.po b/l10n/pl_PL/settings.po index 3bf2e6878b8..f95716114e3 100644 --- a/l10n/pl_PL/settings.po +++ b/l10n/pl_PL/settings.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Polish (Poland) (http://www.transifex.com/projects/p/owncloud/language/pl_PL/)\n" "MIME-Version: 1.0\n" @@ -75,14 +75,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "" @@ -111,6 +139,10 @@ msgstr "" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "Uaktualnienie" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -262,6 +294,14 @@ msgstr "" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/pl_PL/user_ldap.po b/l10n/pl_PL/user_ldap.po index 36eb526f464..1b11dc6b24e 100644 --- a/l10n/pl_PL/user_ldap.po +++ b/l10n/pl_PL/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Polish (Poland) (http://www.transifex.com/projects/p/owncloud/language/pl_PL/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: pl_PL\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "" diff --git a/l10n/pt_BR/core.po b/l10n/pt_BR/core.po index 843960355d6..6a49a47bbd4 100644 --- a/l10n/pt_BR/core.po +++ b/l10n/pt_BR/core.po @@ -10,6 +10,7 @@ # Guilherme Maluf Balzana <guimalufb@gmail.com>, 2012. # <henrique@meira.net>, 2012. # <philippi.sedir@gmail.com>, 2012. +# Rodrigo Tavares <rodrigo.st23@hotmail.com>, 2013. # Thiago Vicente <thiagovice@gmail.com>, 2012. # Unforgiving Fallout <>, 2012. # Van Der Fran <transifex@vanderland.com>, 2011, 2012. @@ -17,9 +18,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" +"Last-Translator: rodrigost23 <rodrigo.st23@hotmail.com>\n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -30,26 +31,26 @@ msgstr "" #: ajax/share.php:85 #, php-format msgid "User %s shared a file with you" -msgstr "" +msgstr "O usuário %s compartilhou um arquivo com você" #: ajax/share.php:87 #, php-format msgid "User %s shared a folder with you" -msgstr "" +msgstr "O usuário %s compartilhou uma pasta com você" #: ajax/share.php:89 #, php-format msgid "" "User %s shared the file \"%s\" with you. It is available for download here: " "%s" -msgstr "" +msgstr "O usuário %s compartilhou com você o arquivo \"%s\", que está disponÃvel para download em: %s" #: ajax/share.php:91 #, php-format msgid "" "User %s shared the folder \"%s\" with you. It is available for download " "here: %s" -msgstr "" +msgstr "O usuário %s compartilhou com você a pasta \"%s\", que está disponÃvel para download em: %s" #: ajax/vcategories/add.php:26 ajax/vcategories/edit.php:25 msgid "Category type not provided." @@ -165,59 +166,59 @@ msgstr "Novembro" msgid "December" msgstr "Dezembro" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Configurações" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "segundos atrás" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 minuto atrás" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} minutos atrás" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 hora atrás" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} horas atrás" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "hoje" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "ontem" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} dias atrás" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "último mês" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} meses atrás" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "meses atrás" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "último ano" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "anos atrás" @@ -262,11 +263,11 @@ msgstr "O arquivo {file} necessário não está instalado!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Compartilhar" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Compartilhados" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -306,11 +307,11 @@ msgstr "Senha" #: js/share.js:189 msgid "Email link to person" -msgstr "" +msgstr "Enviar link por e-mail" #: js/share.js:190 msgid "Send" -msgstr "" +msgstr "Enviar" #: js/share.js:194 msgid "Set expiration date" @@ -378,22 +379,22 @@ msgstr "Erro ao definir data de expiração" #: js/share.js:598 msgid "Sending ..." -msgstr "" +msgstr "Enviando ..." #: js/share.js:609 msgid "Email sent" -msgstr "" +msgstr "E-mail enviado" #: js/update.js:14 msgid "" "The update was unsuccessful. Please report this issue to the <a " "href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud " "community</a>." -msgstr "" +msgstr "A atualização falhou. Por favor, relate este problema para a <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">comunidade ownCloud</a>." #: js/update.js:18 msgid "The update was successful. Redirecting you to ownCloud now." -msgstr "" +msgstr "A atualização teve êxito. Você será redirecionado ao ownCloud agora." #: lostpassword/controller.php:47 msgid "ownCloud password reset" @@ -550,7 +551,7 @@ msgstr "Concluir configuração" msgid "web services under your control" msgstr "web services sob seu controle" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Sair" @@ -591,4 +592,4 @@ msgstr "próximo" #: templates/update.php:3 #, php-format msgid "Updating ownCloud to version %s, this may take a while." -msgstr "" +msgstr "Atualizando ownCloud para a versão %s, isto pode levar algum tempo." diff --git a/l10n/pt_BR/files.po b/l10n/pt_BR/files.po index 38713a5ae3c..c00ceb550f5 100644 --- a/l10n/pt_BR/files.po +++ b/l10n/pt_BR/files.po @@ -7,6 +7,7 @@ # <fred.maranhao@gmail.com>, 2012. # Guilherme Maluf Balzana <guimalufb@gmail.com>, 2012. # <philippi.sedir@gmail.com>, 2012. +# Rodrigo Tavares <rodrigo.st23@hotmail.com>, 2013. # <targinosilveira@gmail.com>, 2012. # Thiago Vicente <thiagovice@gmail.com>, 2012. # Unforgiving Fallout <>, 2012. @@ -15,8 +16,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n" "MIME-Version: 1.0\n" @@ -25,20 +26,6 @@ msgstr "" "Language: pt_BR\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Nenhum arquivo foi transferido. Erro desconhecido" @@ -74,27 +61,27 @@ msgstr "Pasta temporária não encontrada" msgid "Failed to write to disk" msgstr "Falha ao escrever no disco" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." -msgstr "" +msgstr "Diretório inválido." #: appinfo/app.php:10 msgid "Files" msgstr "Arquivos" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Descompartilhar" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Excluir" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Renomear" @@ -118,7 +105,7 @@ msgstr "cancelar" msgid "replaced {new_name}" msgstr "substituÃdo {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "desfazer" @@ -126,21 +113,17 @@ msgstr "desfazer" msgid "replaced {new_name} with {old_name}" msgstr "SubstituÃdo {old_name} por {new_name} " -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "{files} não compartilhados" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "{files} apagados" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." -msgstr "" +msgstr "'.' é um nome de arquivo inválido." #: js/files.js:56 msgid "File name cannot be empty." -msgstr "" +msgstr "O nome do arquivo não pode estar vazio." #: js/files.js:64 msgid "" @@ -156,86 +139,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." -msgstr "" +msgstr "Seu download está sendo preparado. Isto pode levar algum tempo se os arquivos forem grandes." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "ImpossÃvel enviar seus arquivo como diretório ou ele tem 0 bytes." -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Erro de envio" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Fechar" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Pendente" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "enviando 1 arquivo" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "Enviando {count} arquivos" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Envio cancelado." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Upload em andamento. Sair da página agora resultará no cancelamento do envio." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL não pode ficar em branco" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" -msgstr "" - -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} arquivos scaneados" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "erro durante verificação" +msgstr "Nome de pasta inválido. O uso de 'Shared' é reservado para o Owncloud" -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nome" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Tamanho" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Modificado" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 pasta" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} pastas" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 arquivo" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} arquivos" @@ -291,32 +266,40 @@ msgstr "Pasta" msgid "From link" msgstr "Do link" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Cancelar upload" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Nada aqui.Carrege alguma coisa!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Baixar" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Arquivo muito grande" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Os arquivos que você está tentando carregar excedeu o tamanho máximo para arquivos no servidor." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Arquivos sendo escaneados, por favor aguarde." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Scanning atual" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/pt_BR/files_encryption.po b/l10n/pt_BR/files_encryption.po index ee24c51910d..5c733f9c615 100644 --- a/l10n/pt_BR/files_encryption.po +++ b/l10n/pt_BR/files_encryption.po @@ -4,13 +4,14 @@ # # Translators: # <philippi.sedir@gmail.com>, 2012. +# Rodrigo Tavares <rodrigo.st23@hotmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-23 00:05+0100\n" -"PO-Revision-Date: 2013-01-22 23:05+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 16:40+0000\n" +"Last-Translator: rodrigost23 <rodrigo.st23@hotmail.com>\n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -22,53 +23,53 @@ msgstr "" msgid "" "Please switch to your ownCloud client and change your encryption password to" " complete the conversion." -msgstr "" +msgstr "Por favor, vá ao seu cliente ownCloud e mude sua criptografia de senha para completar a conversão." #: js/settings-personal.js:17 msgid "switched to client side encryption" -msgstr "" +msgstr "alterado para criptografia por parte do cliente" #: js/settings-personal.js:21 msgid "Change encryption password to login password" -msgstr "" +msgstr "Mudar senha de criptografia para senha de login" #: js/settings-personal.js:25 msgid "Please check your passwords and try again." -msgstr "" +msgstr "Por favor, verifique suas senhas e tente novamente." #: js/settings-personal.js:25 msgid "Could not change your file encryption password to your login password" -msgstr "" +msgstr "Não foi possÃvel mudar sua senha de criptografia de arquivos para sua senha de login" #: templates/settings-personal.php:3 templates/settings.php:5 msgid "Choose encryption mode:" -msgstr "" +msgstr "Escolha o modo de criptografia:" #: templates/settings-personal.php:20 templates/settings.php:24 msgid "" "Client side encryption (most secure but makes it impossible to access your " "data from the web interface)" -msgstr "" +msgstr "Criptografia por parte do cliente (mais segura, mas torna impossÃvel acessar seus dados a partir da interface web)" #: templates/settings-personal.php:30 templates/settings.php:36 msgid "" "Server side encryption (allows you to access your files from the web " "interface and the desktop client)" -msgstr "" +msgstr "Criptografia por parte do servidor (permite que você acesse seus arquivos da interface web e do cliente desktop)" #: templates/settings-personal.php:41 templates/settings.php:60 msgid "None (no encryption at all)" -msgstr "" +msgstr "Nenhuma (sem qualquer criptografia)" #: templates/settings.php:10 msgid "" "Important: Once you selected an encryption mode there is no way to change it" " back" -msgstr "" +msgstr "Importante: Uma vez que tiver escolhido um modo de criptografia, não há um meio de voltar atrás" #: templates/settings.php:48 msgid "User specific (let the user decide)" -msgstr "" +msgstr "EspecÃfico por usuário (deixa o usuário decidir)" #: templates/settings.php:65 msgid "Encryption" diff --git a/l10n/pt_BR/files_external.po b/l10n/pt_BR/files_external.po index cb394018175..3c17453294e 100644 --- a/l10n/pt_BR/files_external.po +++ b/l10n/pt_BR/files_external.po @@ -4,13 +4,14 @@ # # Translators: # <philippi.sedir@gmail.com>, 2012. +# Rodrigo Tavares <rodrigo.st23@hotmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2012-12-13 00:17+0100\n" -"PO-Revision-Date: 2012-12-11 23:22+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 15:50+0000\n" +"Last-Translator: rodrigost23 <rodrigo.st23@hotmail.com>\n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -26,11 +27,11 @@ msgstr "Acesso concedido" msgid "Error configuring Dropbox storage" msgstr "Erro ao configurar armazenamento do Dropbox" -#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:40 +#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:41 msgid "Grant access" msgstr "Permitir acesso" -#: js/dropbox.js:73 js/google.js:72 +#: js/dropbox.js:73 js/google.js:73 msgid "Fill out all required fields" msgstr "Preencha todos os campos obrigatórios" @@ -38,22 +39,22 @@ msgstr "Preencha todos os campos obrigatórios" msgid "Please provide a valid Dropbox app key and secret." msgstr "Por favor forneça um app key e secret válido do Dropbox" -#: js/google.js:26 js/google.js:73 js/google.js:78 +#: js/google.js:26 js/google.js:74 js/google.js:79 msgid "Error configuring Google Drive storage" msgstr "Erro ao configurar armazenamento do Google Drive" -#: lib/config.php:434 +#: lib/config.php:405 msgid "" "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares " "is not possible. Please ask your system administrator to install it." -msgstr "" +msgstr "<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." -#: lib/config.php:435 +#: lib/config.php:406 msgid "" "<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." -msgstr "" +msgstr "<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." #: templates/settings.php:3 msgid "External Storage" @@ -100,7 +101,7 @@ msgid "Users" msgstr "Usuários" #: templates/settings.php:108 templates/settings.php:109 -#: templates/settings.php:149 templates/settings.php:150 +#: templates/settings.php:144 templates/settings.php:145 msgid "Delete" msgstr "Remover" @@ -112,10 +113,10 @@ msgstr "Habilitar Armazenamento Externo do Usuário" msgid "Allow users to mount their own external storage" msgstr "Permitir usuários a montar seus próprios armazenamentos externos" -#: templates/settings.php:139 +#: templates/settings.php:136 msgid "SSL root certificates" msgstr "Certificados SSL raÃz" -#: templates/settings.php:158 +#: templates/settings.php:153 msgid "Import Root Certificate" msgstr "Importar Certificado RaÃz" diff --git a/l10n/pt_BR/files_trashbin.po b/l10n/pt_BR/files_trashbin.po new file mode 100644 index 00000000000..c6586d1029b --- /dev/null +++ b/l10n/pt_BR/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Rodrigo Tavares <rodrigo.st23@hotmail.com>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pt_BR\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "realizar operação de restauração" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nome" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "ExcluÃdo" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 pasta" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} pastas" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 arquivo" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} arquivos" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Nada aqui. Sua lixeira está vazia!" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Restaurar" diff --git a/l10n/pt_BR/files_versions.po b/l10n/pt_BR/files_versions.po index 63442db0efe..d6cf483ba38 100644 --- a/l10n/pt_BR/files_versions.po +++ b/l10n/pt_BR/files_versions.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-15 00:03+0100\n" -"PO-Revision-Date: 2013-01-14 23:04+0000\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 15:50+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n" "MIME-Version: 1.0\n" diff --git a/l10n/pt_BR/lib.po b/l10n/pt_BR/lib.po index f1a550574ba..d20d57c8145 100644 --- a/l10n/pt_BR/lib.po +++ b/l10n/pt_BR/lib.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-17 00:26+0100\n" -"PO-Revision-Date: 2013-01-16 23:26+0000\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 15:50+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n" "MIME-Version: 1.0\n" @@ -44,23 +44,23 @@ msgstr "Aplicações" msgid "Admin" msgstr "Admin" -#: files.php:365 +#: files.php:202 msgid "ZIP download is turned off." msgstr "Download ZIP está desligado." -#: files.php:366 +#: files.php:203 msgid "Files need to be downloaded one by one." msgstr "Arquivos precisam ser baixados um de cada vez." -#: files.php:366 files.php:391 +#: files.php:203 files.php:228 msgid "Back to Files" msgstr "Voltar para Arquivos" -#: files.php:390 +#: files.php:227 msgid "Selected files too large to generate zip file." msgstr "Arquivos selecionados são muito grandes para gerar arquivo zip." -#: helper.php:228 +#: helper.php:226 msgid "couldn't be determined" msgstr "" diff --git a/l10n/pt_BR/settings.po b/l10n/pt_BR/settings.po index 06a011df783..7b1b23da58a 100644 --- a/l10n/pt_BR/settings.po +++ b/l10n/pt_BR/settings.po @@ -17,8 +17,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n" "MIME-Version: 1.0\n" @@ -29,7 +29,7 @@ msgstr "" #: ajax/apps/ocs.php:20 msgid "Unable to load list from App Store" -msgstr "Não foi possivel carregar lista da App Store" +msgstr "Não foi possÃvel carregar lista da App Store" #: ajax/creategroup.php:10 msgid "Group already exists" @@ -37,35 +37,35 @@ msgstr "Grupo já existe" #: ajax/creategroup.php:19 msgid "Unable to add group" -msgstr "Não foi possivel adicionar grupo" +msgstr "Não foi possÃvel adicionar grupo" #: ajax/enableapp.php:11 msgid "Could not enable app. " -msgstr "Não pôde habilitar aplicação" +msgstr "Não foi possÃvel habilitar aplicativo." #: ajax/lostpassword.php:12 msgid "Email saved" -msgstr "Email gravado" +msgstr "E-mail guardado" #: ajax/lostpassword.php:14 msgid "Invalid email" -msgstr "Email inválido" +msgstr "E-mail inválido" #: ajax/removegroup.php:13 msgid "Unable to delete group" -msgstr "Não foi possivel remover grupo" +msgstr "Não foi possÃvel remover grupo" #: ajax/removeuser.php:15 ajax/setquota.php:15 ajax/togglegroups.php:18 msgid "Authentication error" -msgstr "erro de autenticação" +msgstr "Erro de autenticação" #: ajax/removeuser.php:24 msgid "Unable to delete user" -msgstr "Não foi possivel remover usuário" +msgstr "Não foi possÃvel remover usuário" #: ajax/setlanguage.php:15 msgid "Language changed" -msgstr "Mudou Idioma" +msgstr "Idioma alterado" #: ajax/setlanguage.php:17 ajax/setlanguage.php:20 msgid "Invalid request" @@ -78,28 +78,56 @@ msgstr "Admins não podem se remover do grupo admin" #: ajax/togglegroups.php:28 #, php-format msgid "Unable to add user to group %s" -msgstr "Não foi possivel adicionar usuário ao grupo %s" +msgstr "Não foi possÃvel adicionar usuário ao grupo %s" #: ajax/togglegroups.php:34 #, php-format msgid "Unable to remove user from group %s" -msgstr "Não foi possivel remover usuário ao grupo %s" +msgstr "Não foi possÃvel remover usuário do grupo %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" -msgstr "Desabilitado" +msgstr "Desabilitar" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" -msgstr "Habilitado" +msgstr "Habilitar" + +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Erro" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" #: js/personal.js:69 msgid "Saving..." -msgstr "Gravando..." +msgstr "Guardando..." #: personal.php:34 personal.php:35 msgid "__language_name__" -msgstr "Português do Brasil" +msgstr "Português (Brasil)" #: templates/apps.php:10 msgid "Add your App" @@ -111,7 +139,7 @@ msgstr "Mais Apps" #: templates/apps.php:24 msgid "Select an App" -msgstr "Selecione uma Aplicação" +msgstr "Selecione um Aplicativo" #: templates/apps.php:28 msgid "See application page at apps.owncloud.com" @@ -121,21 +149,25 @@ msgstr "Ver página do aplicativo em apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licenciado por <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Atualizar" + #: templates/help.php:3 msgid "User Documentation" -msgstr "" +msgstr "Documentação de Usuário" #: templates/help.php:4 msgid "Administrator Documentation" -msgstr "" +msgstr "Documentação de Administrador" #: templates/help.php:6 msgid "Online Documentation" -msgstr "" +msgstr "Documentação Online" #: templates/help.php:7 msgid "Forum" -msgstr "" +msgstr "Fórum" #: templates/help.php:9 msgid "Bugtracker" @@ -143,7 +175,7 @@ msgstr "" #: templates/help.php:11 msgid "Commercial Support" -msgstr "" +msgstr "Suporte Comercial" #: templates/personal.php:8 #, php-format @@ -156,15 +188,15 @@ msgstr "Clientes" #: templates/personal.php:13 msgid "Download Desktop Clients" -msgstr "" +msgstr "Baixar Clientes Desktop" #: templates/personal.php:14 msgid "Download Android Client" -msgstr "" +msgstr "Baixar Cliente Android" #: templates/personal.php:15 msgid "Download iOS Client" -msgstr "" +msgstr "Baixar Cliente iOS" #: templates/personal.php:21 templates/users.php:23 templates/users.php:81 msgid "Password" @@ -196,15 +228,15 @@ msgstr "Alterar senha" #: templates/personal.php:33 msgid "Email" -msgstr "Email" +msgstr "E-mail" #: templates/personal.php:34 msgid "Your email address" -msgstr "Seu endereço de email" +msgstr "Seu endereço de e-mail" #: templates/personal.php:35 msgid "Fill in an email address to enable password recovery" -msgstr "Preencha um endereço de email para habilitar a recuperação de senha" +msgstr "Preencha um endereço de e-mail para habilitar a recuperação de senha" #: templates/personal.php:41 templates/personal.php:42 msgid "Language" @@ -216,15 +248,15 @@ msgstr "Ajude a traduzir" #: templates/personal.php:52 msgid "WebDAV" -msgstr "" +msgstr "WebDAV" #: templates/personal.php:54 msgid "Use this address to connect to your ownCloud in your file manager" -msgstr "" +msgstr "Usar este endereço para conectar-se ao seu ownCloud no seu gerenciador de arquivos" #: templates/personal.php:63 msgid "Version" -msgstr "" +msgstr "Versão" #: templates/personal.php:65 msgid "" @@ -238,7 +270,7 @@ msgstr "Desenvolvido pela <a href=\"http://ownCloud.org/contact\" target=\"_blan #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Nome de Login" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -250,11 +282,11 @@ msgstr "Criar" #: templates/users.php:35 msgid "Default Storage" -msgstr "" +msgstr "Armazenamento Padrão" #: templates/users.php:42 templates/users.php:142 msgid "Unlimited" -msgstr "" +msgstr "Ilimitado" #: templates/users.php:60 templates/users.php:157 msgid "Other" @@ -262,7 +294,7 @@ msgstr "Outro" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Nome de Exibição" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -270,11 +302,19 @@ msgstr "Grupo Administrativo" #: templates/users.php:86 msgid "Storage" +msgstr "Armazenamento" + +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" msgstr "" #: templates/users.php:137 msgid "Default" -msgstr "" +msgstr "Padrão" #: templates/users.php:165 msgid "Delete" diff --git a/l10n/pt_BR/user_ldap.po b/l10n/pt_BR/user_ldap.po index 7596db8ad37..7c537702150 100644 --- a/l10n/pt_BR/user_ldap.po +++ b/l10n/pt_BR/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: pt_BR\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Remoção falhou" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Host" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Você pode omitir o protocolo, exceto quando requerer SSL. Então inicie com ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "DN Base" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Você pode especificar DN Base para usuários e grupos na guia Avançada" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN Usuário" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "O DN do cliente usuário com qual a ligação deverá ser feita, ex. uid=agent,dc=example,dc=com. Para acesso anônimo, deixe DN e Senha vazios." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Senha" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Para acesso anônimo, deixe DN e Senha vazios." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filtro de Login de Usuário" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Define o filtro pra aplicar ao efetuar uma tentativa de login. %%uuid substitui o nome de usuário na ação de login." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "use %%uid placeholder, ex. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Filtro de Lista de Usuário" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Define filtro a aplicar ao obter usuários." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "sem nenhum espaço reservado, ex. \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Filtro de Grupo" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Define o filtro a aplicar ao obter grupos." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "sem nenhum espaço reservado, ex. \"objectClass=posixGroup\"" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Porta" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Ãrvore de Usuário Base" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Ãrvore de Grupo Base" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Associação Grupo-Membro" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Usar TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Não use-o para conexões SSL, pois falhará." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Servidor LDAP sensÃvel à caixa alta (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Desligar validação de certificado SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Se a conexão só funciona com essa opção, importe o certificado SSL do servidor LDAP no seu servidor ownCloud." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Não recomendado, use somente para testes." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "em segundos. Uma mudança esvaziará o cache." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Campo Nome de Exibição de Usuário" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "O atributo LDAP para usar para gerar nome ownCloud do usuário." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Ãrvore de Usuário Base" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Campo Nome de Exibição de Grupo" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "O atributo LDAP para usar para gerar nome ownCloud do grupo." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Ãrvore de Grupo Base" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Associação Grupo-Membro" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "em bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "em segundos. Uma mudança esvaziará o cache." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Deixe vazio para nome de usuário (padrão). Caso contrário, especifique um atributo LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Ajuda" diff --git a/l10n/pt_BR/user_webdavauth.po b/l10n/pt_BR/user_webdavauth.po index db7d62a36b8..be539b59a8a 100644 --- a/l10n/pt_BR/user_webdavauth.po +++ b/l10n/pt_BR/user_webdavauth.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# Rodrigo Tavares <rodrigo.st23@hotmail.com>, 2013. # <thoriumbr@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-15 00:03+0100\n" -"PO-Revision-Date: 2013-01-14 23:04+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 16:22+0000\n" +"Last-Translator: rodrigost23 <rodrigo.st23@hotmail.com>\n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -20,15 +21,15 @@ msgstr "" #: templates/settings.php:3 msgid "WebDAV Authentication" -msgstr "" +msgstr "Autenticação WebDAV" #: templates/settings.php:4 msgid "URL: http://" -msgstr "" +msgstr "URL: http://" #: templates/settings.php:6 msgid "" "ownCloud will send the user credentials to this URL. This plugin checks the " "response and will interpret the HTTP statuscodes 401 and 403 as invalid " "credentials, and all other responses as valid credentials." -msgstr "" +msgstr "O ownCloud enviará as credenciais do usuário para esta URL. Este plugin verifica a resposta e interpreta o os códigos de status do HTTP 401 e 403 como credenciais inválidas, e todas as outras respostas como credenciais válidas." diff --git a/l10n/pt_PT/core.po b/l10n/pt_PT/core.po index afaa00874d6..2c30f25b723 100644 --- a/l10n/pt_PT/core.po +++ b/l10n/pt_PT/core.po @@ -15,9 +15,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" +"Last-Translator: Duarte Velez Grilo <duartegrilo@gmail.com>\n" "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -163,59 +163,59 @@ msgstr "Novembro" msgid "December" msgstr "Dezembro" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Definições" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "Minutos atrás" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "Há 1 minuto" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} minutos atrás" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "Há 1 hora" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "Há {hours} horas atrás" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "hoje" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "ontem" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} dias atrás" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "ultÃmo mês" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "Há {months} meses atrás" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "meses atrás" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "ano passado" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "anos atrás" @@ -260,11 +260,11 @@ msgstr "O ficheiro necessário {file} não está instalado!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Partilhar" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Partilhado" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -548,7 +548,7 @@ msgstr "Acabar instalação" msgid "web services under your control" msgstr "serviços web sob o seu controlo" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Sair" diff --git a/l10n/pt_PT/files.po b/l10n/pt_PT/files.po index 38429e8ec21..70714ed855d 100644 --- a/l10n/pt_PT/files.po +++ b/l10n/pt_PT/files.po @@ -9,14 +9,15 @@ # Duarte Velez Grilo <duartegrilo@gmail.com>, 2012. # <geral@ricardolameiro.pt>, 2012. # Helder Meneses <helder.meneses@gmail.com>, 2012. +# Miguel Sousa <migueljorgesousa@sapo.pt>, 2013. # <rjgpp.1994@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-29 00:04+0100\n" -"PO-Revision-Date: 2013-01-28 17:06+0000\n" -"Last-Translator: Duarte Velez Grilo <duartegrilo@gmail.com>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 02:40+0000\n" +"Last-Translator: Mouxy <daniel@mouxy.net>\n" "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -24,20 +25,6 @@ msgstr "" "Language: pt_PT\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Não foi possÃvel mover o ficheiro %s - Já existe um ficheiro com esse nome" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Não foi possÃvel move o ficheiro %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Não foi possÃvel renomear o ficheiro" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Nenhum ficheiro foi carregado. Erro desconhecido" @@ -73,11 +60,11 @@ msgstr "Falta uma pasta temporária" msgid "Failed to write to disk" msgstr "Falhou a escrita no disco" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "Não há espaço suficiente em disco" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Espaço em disco insuficiente!" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Directório Inválido" @@ -85,15 +72,15 @@ msgstr "Directório Inválido" msgid "Files" msgstr "Ficheiros" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Deixar de partilhar" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Apagar" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Renomear" @@ -117,7 +104,7 @@ msgstr "cancelar" msgid "replaced {new_name}" msgstr "{new_name} substituido" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "desfazer" @@ -125,13 +112,9 @@ msgstr "desfazer" msgid "replaced {new_name} with {old_name}" msgstr "substituido {new_name} por {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "{files} não partilhado(s)" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "{files} eliminado(s)" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "Executar a tarefa de apagar" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -155,86 +138,78 @@ msgstr "O seu armazenamento está cheio, os ficheiros não podem ser sincronizad msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "O seu espaço de armazenamento está quase cheiro ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "O seu download está a ser preparado. Este processo pode demorar algum tempo se os ficheiros forem grandes." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Não é possÃvel fazer o envio do ficheiro devido a ser uma pasta ou ter 0 bytes" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Erro no envio" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Fechar" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Pendente" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "A enviar 1 ficheiro" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "A carregar {count} ficheiros" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Envio cancelado." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Envio de ficheiro em progresso. Irá cancelar o envio se sair da página agora." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "O URL não pode estar vazio." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Nome de pasta inválido. O Uso de 'shared' é reservado para o ownCloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} ficheiros analisados" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "erro ao analisar" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nome" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Tamanho" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Modificado" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 pasta" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} pastas" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 ficheiro" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} ficheiros" @@ -290,32 +265,40 @@ msgstr "Pasta" msgid "From link" msgstr "Da ligação" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "Lixo" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Cancelar envio" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Vazio. Envie alguma coisa!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Transferir" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Envio muito grande" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Os ficheiros que está a tentar enviar excedem o tamanho máximo de envio permitido neste servidor." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Os ficheiros estão a ser analisados, por favor aguarde." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Análise actual" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Atualizar cache do sistema de ficheiros..." diff --git a/l10n/pt_PT/files_trashbin.po b/l10n/pt_PT/files_trashbin.po new file mode 100644 index 00000000000..3ff3c4b6238 --- /dev/null +++ b/l10n/pt_PT/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Daniel Pinto <daniel@mouxy.net>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 02:40+0000\n" +"Last-Translator: Mouxy <daniel@mouxy.net>\n" +"Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pt_PT\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "Restaurar" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nome" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "Apagado" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 pasta" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} pastas" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 ficheiro" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} ficheiros" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Não ha ficheiros. O lixo está vazio" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Restaurar" diff --git a/l10n/pt_PT/settings.po b/l10n/pt_PT/settings.po index a2de9c1e4c6..9071ca3e16c 100644 --- a/l10n/pt_PT/settings.po +++ b/l10n/pt_PT/settings.po @@ -4,17 +4,20 @@ # # Translators: # <daniel@mouxy.net>, 2012. +# Daniel Pinto <daniel@mouxy.net>, 2013. +# <duartegrilo@gmail.com>, 2013. # Duarte Velez Grilo <duartegrilo@gmail.com>, 2012-2013. # <geral@ricardolameiro.pt>, 2012. # Helder Meneses <helder.meneses@gmail.com>, 2012. +# Miguel Sousa <migueljorgesousa@sapo.pt>, 2013. # <rjgpp.1994@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 02:40+0000\n" +"Last-Translator: Mouxy <daniel@mouxy.net>\n" "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -80,14 +83,42 @@ msgstr "ImpossÃvel acrescentar utilizador ao grupo %s" msgid "Unable to remove user from group %s" msgstr "ImpossÃvel apagar utilizador do grupo %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "Não foi possÃvel actualizar a aplicação." + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "Actualizar para a versão {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Desactivar" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Activar" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "Por favor aguarde..." + +#: js/apps.js:84 +msgid "Updating...." +msgstr "A Actualizar..." + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "Erro enquanto actualizava a aplicação" + +#: js/apps.js:87 +msgid "Error" +msgstr "Erro" + +#: js/apps.js:90 +msgid "Updated" +msgstr "Actualizado" + #: js/personal.js:69 msgid "Saving..." msgstr "A guardar..." @@ -116,6 +147,10 @@ msgstr "Ver a página da aplicação em apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licenciado por <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Actualizar" + #: templates/help.php:3 msgid "User Documentation" msgstr "Documentação de Utilizador" @@ -233,7 +268,7 @@ msgstr "Desenvolvido pela <a href=\"http://ownCloud.org/contact\" target=\"_blan #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Nome de utilizador" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -257,7 +292,7 @@ msgstr "Outro" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Nome público" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -267,6 +302,14 @@ msgstr "Grupo Administrador" msgid "Storage" msgstr "Armazenamento" +#: templates/users.php:97 +msgid "change display name" +msgstr "modificar nome exibido" + +#: templates/users.php:101 +msgid "set new password" +msgstr "definir nova palavra-passe" + #: templates/users.php:137 msgid "Default" msgstr "Padrão" diff --git a/l10n/pt_PT/user_ldap.po b/l10n/pt_PT/user_ldap.po index 734a694ccec..66e002ab89e 100644 --- a/l10n/pt_PT/user_ldap.po +++ b/l10n/pt_PT/user_ldap.po @@ -4,6 +4,7 @@ # # Translators: # <daniel@mouxy.net>, 2012-2013. +# Daniel Pinto <daniel@mouxy.net>, 2013. # Duarte Velez Grilo <duartegrilo@gmail.com>, 2012. # Helder Meneses <helder.meneses@gmail.com>, 2012. # Nelson Rosado <nelsontrosado@gmail.com>, 2012. @@ -11,9 +12,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 00:52+0000\n" -"Last-Translator: Mouxy <daniel@mouxy.net>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,6 +22,58 @@ msgstr "" "Language: pt_PT\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "Erro ao eliminar as configurações do servidor" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "A configuração está correcta e foi possÃvel estabelecer a ligação!" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "A configuração está correcta, mas não foi possÃvel estabelecer o \"laço\", por favor, verifique as configurações do servidor e as credenciais." + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "A configuração é inválida. Por favor, veja o log do ownCloud para mais detalhes." + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Erro ao apagar" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "Assumir as configurações da configuração do servidor mais recente?" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "Manter as definições?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "Não foi possÃvel adicionar as configurações do servidor." + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "Teste de conecção passado com sucesso." + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "Erro no teste de conecção." + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "Deseja realmente apagar as configurações de servidor actuais?" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "Confirmar a operação de apagar" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -35,165 +88,227 @@ msgid "" msgstr "<b>Aviso:</b> O módulo PHP LDAP não está instalado, logo não irá funcionar. Por favor peça ao administrador para o instalar." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "Configurações do servidor" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "Adicionar configurações do servidor" + +#: templates/settings.php:21 msgid "Host" msgstr "Anfitrião" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Pode omitir o protocolo, excepto se necessitar de SSL. Neste caso, comece com ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "DN base" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "Uma base DN por linho" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Pode especificar o ND Base para utilizadores e grupos no separador Avançado" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN do utilizador" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "O DN to cliente " -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Palavra-passe" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Para acesso anónimo, deixe DN e a Palavra-passe vazios." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filtro de login de utilizador" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Define o filtro a aplicar, para aquando de uma tentativa de login. %%uid substitui o nome de utilizador utilizado." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "Use a variável %%uid , exemplo: \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Utilizar filtro" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Defina o filtro a aplicar, ao recuperar utilizadores." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "Sem variável. Exemplo: \"objectClass=pessoa\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Filtrar por grupo" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Defina o filtro a aplicar, ao recuperar grupos." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "Sem nenhuma variável. Exemplo: \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "Configuração activa" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "Se não estiver marcada, esta definição não será tida em conta." + +#: templates/settings.php:34 msgid "Port" msgstr "Porto" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Base da árvore de utilizadores." +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "Servidor de Backup (Réplica)" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "Uma base de utilizador DN por linha" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "Forneça um servidor (anfitrião) de backup. Deve ser uma réplica do servidor principal de LDAP/AD " -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Base da árvore de grupos." +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "Porta do servidor de backup (Replica)" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "Uma base de grupo DN por linha" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "Desactivar servidor principal" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Associar utilizador ao grupo." +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "Se estiver ligado, o ownCloud vai somente ligar-se a este servidor de réplicas." -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Usar TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Não use para ligações SSL, irá falhar." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Servidor LDAP (Windows) não sensÃvel a maiúsculas." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Desligar a validação de certificado SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Se a ligação apenas funcionar com está opção, importe o certificado SSL do servidor LDAP para o seu servidor do ownCloud." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Não recomendado, utilizado apenas para testes!" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "em segundos. Uma alteração esvazia a cache." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Mostrador do nome de utilizador." -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Atributo LDAP para gerar o nome de utilizador do ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Base da árvore de utilizadores." + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Uma base de utilizador DN por linha" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "Utilizar atributos de pesquisa" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "Opcional; Um atributo por linha" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Mostrador do nome do grupo." -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Atributo LDAP para gerar o nome do grupo do ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Base da árvore de grupos." + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Uma base de grupo DN por linha" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "Atributos de pesquisa de grupo" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Associar utilizador ao grupo." + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "em bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "em segundos. Uma alteração esvazia a cache." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Deixe vazio para nome de utilizador (padrão). De outro modo, especifique um atributo LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Ajuda" diff --git a/l10n/ro/core.po b/l10n/ro/core.po index 8bf554fdbea..65658de58b3 100644 --- a/l10n/ro/core.po +++ b/l10n/ro/core.po @@ -13,8 +13,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Romanian (http://www.transifex.com/projects/p/owncloud/language/ro/)\n" "MIME-Version: 1.0\n" @@ -161,59 +161,59 @@ msgstr "Noiembrie" msgid "December" msgstr "Decembrie" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Configurări" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "secunde în urmă" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 minut în urmă" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} minute in urma" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "Acum o ora" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} ore în urmă" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "astăzi" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "ieri" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} zile in urma" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "ultima lună" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} luni în urmă" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "luni în urmă" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "ultimul an" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "ani în urmă" @@ -258,7 +258,7 @@ msgstr "FiÈ™ierul obligatoriu {file} nu este instalat!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Partajează" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -546,7 +546,7 @@ msgstr "Finalizează instalarea" msgid "web services under your control" msgstr "servicii web controlate de tine" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "IeÈ™ire" diff --git a/l10n/ro/files.po b/l10n/ro/files.po index e5a64577ebc..e6df42f7c71 100644 --- a/l10n/ro/files.po +++ b/l10n/ro/files.po @@ -13,8 +13,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Romanian (http://www.transifex.com/projects/p/owncloud/language/ro/)\n" "MIME-Version: 1.0\n" @@ -23,20 +23,6 @@ msgstr "" "Language: ro\n" "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Nu se poate de mutat %s - FiÈ™ier cu acest nume deja există" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Nu s-a putut muta %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Nu s-a putut redenumi fiÈ™ierul" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Nici un fiÈ™ier nu a fost încărcat. Eroare necunoscută" @@ -72,11 +58,11 @@ msgstr "LipseÈ™te un dosar temporar" msgid "Failed to write to disk" msgstr "Eroare la scriere pe disc" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Nu este suficient spaÈ›iu disponibil" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Director invalid." @@ -84,15 +70,15 @@ msgstr "Director invalid." msgid "Files" msgstr "FiÈ™iere" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Anulează partajarea" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Șterge" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Redenumire" @@ -116,7 +102,7 @@ msgstr "anulare" msgid "replaced {new_name}" msgstr "inlocuit {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "Anulează ultima acÈ›iune" @@ -124,13 +110,9 @@ msgstr "Anulează ultima acÈ›iune" msgid "replaced {new_name} with {old_name}" msgstr "{new_name} inlocuit cu {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "nedistribuit {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "Sterse {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -154,86 +136,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Se pregăteÈ™te descărcarea. Aceasta poate să dureze ceva timp dacă fiÈ™ierele sunt mari." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Nu s-a putut încărca fiÈ™ierul tău deoarece pare să fie un director sau are 0 bytes." -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Eroare la încărcare" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "ÃŽnchide" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "ÃŽn aÈ™teptare" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "un fiÈ™ier se încarcă" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} fisiere incarcate" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "ÃŽncărcare anulată." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "FiÈ™ierul este în curs de încărcare. Părăsirea paginii va întrerupe încărcarea." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "Adresa URL nu poate fi goală." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Invalid folder name. Usage of 'Shared' is reserved by Ownclou" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} fisiere scanate" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "eroare la scanarea" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Nume" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Dimensiune" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Modificat" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 folder" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} foldare" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 fisier" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} fisiere" @@ -289,32 +263,40 @@ msgstr "Dosar" msgid "From link" msgstr "de la adresa" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Anulează încărcarea" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Nimic aici. ÃŽncarcă ceva!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Descarcă" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "FiÈ™ierul încărcat este prea mare" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "FiÈ™ierul care l-ai încărcat a depășită limita maximă admisă la încărcare pe acest server." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "FiÈ™ierele sunt scanate, te rog aÈ™teptă." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "ÃŽn curs de scanare" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/ro/files_trashbin.po b/l10n/ro/files_trashbin.po new file mode 100644 index 00000000000..180def499df --- /dev/null +++ b/l10n/ro/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Romanian (http://www.transifex.com/projects/p/owncloud/language/ro/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ro\n" +"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Nume" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 folder" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} foldare" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 fisier" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} fisiere" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/ro/settings.po b/l10n/ro/settings.po index 9773ea8fced..e538f042146 100644 --- a/l10n/ro/settings.po +++ b/l10n/ro/settings.po @@ -14,8 +14,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Romanian (http://www.transifex.com/projects/p/owncloud/language/ro/)\n" "MIME-Version: 1.0\n" @@ -82,14 +82,42 @@ msgstr "Nu s-a putut adăuga utilizatorul la grupul %s" msgid "Unable to remove user from group %s" msgstr "Nu s-a putut elimina utilizatorul din grupul %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "DezactivaÈ›i" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "ActivaÈ›i" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Eroare" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Salvez..." @@ -118,6 +146,10 @@ msgstr "Vizualizează pagina applicaÈ›iei pe apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licenÈ›iat <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Actualizare" + #: templates/help.php:3 msgid "User Documentation" msgstr "DocumentaÈ›ie utilizator" @@ -269,6 +301,14 @@ msgstr "Grupul Admin " msgid "Storage" msgstr "Stocare" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "Implicită" diff --git a/l10n/ro/user_ldap.po b/l10n/ro/user_ldap.po index a57e18531e1..388d6f13f21 100644 --- a/l10n/ro/user_ldap.po +++ b/l10n/ro/user_ldap.po @@ -10,9 +10,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-26 00:09+0100\n" -"PO-Revision-Date: 2013-01-25 23:02+0000\n" -"Last-Translator: Dimon Pockemon <>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Romanian (http://www.transifex.com/projects/p/owncloud/language/ro/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -20,6 +20,58 @@ msgstr "" "Language: ro\n" "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Ștergerea a eÈ™uat" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -34,165 +86,227 @@ msgid "" msgstr "<b>AtenÈ›ie</b> Modulul PHP LDAP nu este instalat, infrastructura nu va funcÈ›iona. Contactează administratorul sistemului pentru al instala." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Gazdă" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "PuteÈ›i omite protocolul, decât dacă folosiÈ›i SSL. Atunci se începe cu ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "DN de bază" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "Un Base DN pe linie" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "PuteÈ›i să specificaÈ›i DN de bază pentru utilizatori È™i grupuri în fila Avansat" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN al utilizatorului" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "DN-ul clientului utilizator cu care se va efectua conectarea, d.e. uid=agent,dc=example,dc=com. Pentru acces anonim, lăsăți DN È™i Parolă libere." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Parolă" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Pentru acces anonim, lăsaÈ›i DN È™i Parolă libere." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filtrare după Nume Utilizator" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "DefineÈ™te fitrele care trebuie aplicate, când se încearcă conectarea. %%uid înlocuieÈ™te numele utilizatorului în procesul de conectare." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "folosiÈ›i substituentul %%uid , d.e. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Filtrarea după lista utilizatorilor" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "DefineÈ™te filtrele care trebui aplicate, când se peiau utilzatorii." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "fără substituenÈ›i, d.e. \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Fitrare Grup" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "DefineÈ™te filtrele care se aplică, când se preiau grupurile." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "fără substituenÈ›i, d.e. \"objectClass=posixGroup\"" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Portul" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Arborele de bază al Utilizatorilor" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "Un User Base DN pe linie" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Arborele de bază al Grupurilor" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "Un Group Base DN pe linie" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Asocierea Grup-Membru" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Utilizează TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "A nu se utiliza pentru conexiuni SSL, va eÈ™ua." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Server LDAP insensibil la majuscule (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "OpreÈ™te validarea certificatelor SSL " -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Dacă conexiunea lucrează doar cu această opÈ›iune, importează certificatul SSL al serverului LDAP în serverul ownCloud." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Nu este recomandat, a se utiliza doar pentru testare." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "în secunde. O schimbare curăță memoria tampon." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Câmpul cu numele vizibil al utilizatorului" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Atributul LDAP folosit pentru a genera numele de utilizator din ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Arborele de bază al Utilizatorilor" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Un User Base DN pe linie" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Câmpul cu numele grupului" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Atributul LDAP folosit pentru a genera numele grupurilor din ownCloud" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Arborele de bază al Grupurilor" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Un Group Base DN pe linie" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Asocierea Grup-Membru" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "în octeÈ›i" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "în secunde. O schimbare curăță memoria tampon." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "LăsaÈ›i gol pentru numele de utilizator (implicit). ÃŽn caz contrar, specificaÈ›i un atribut LDAP / AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Ajutor" diff --git a/l10n/ru/core.po b/l10n/ru/core.po index bcc0d346275..d7d104fdf6b 100644 --- a/l10n/ru/core.po +++ b/l10n/ru/core.po @@ -17,8 +17,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Russian (http://www.transifex.com/projects/p/owncloud/language/ru/)\n" "MIME-Version: 1.0\n" @@ -165,59 +165,59 @@ msgstr "ÐоÑбрь" msgid "December" msgstr "Декабрь" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "ÐаÑтройки" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "неÑколько Ñекунд назад" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 минуту назад" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} минут назад" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "Ñ‡Ð°Ñ Ð½Ð°Ð·Ð°Ð´" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} чаÑов назад" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "ÑегоднÑ" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "вчера" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} дней назад" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "в прошлом меÑÑце" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} меÑÑцев назад" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "неÑколько меÑÑцев назад" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "в прошлом году" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "неÑколько лет назад" @@ -262,7 +262,7 @@ msgstr "Ðеобходимый файл {file} не уÑтановлен!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Открыть доÑтуп" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -550,7 +550,7 @@ msgstr "Завершить уÑтановку" msgid "web services under your control" msgstr "Сетевые Ñлужбы под твоим контролем" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Выйти" diff --git a/l10n/ru/files.po b/l10n/ru/files.po index 0c617eada2f..63ecf244040 100644 --- a/l10n/ru/files.po +++ b/l10n/ru/files.po @@ -18,8 +18,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Russian (http://www.transifex.com/projects/p/owncloud/language/ru/)\n" "MIME-Version: 1.0\n" @@ -28,20 +28,6 @@ msgstr "" "Language: ru\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Ðевозможно перемеÑтить %s - файл Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем уже ÑущеÑтвует" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Ðевозможно перемеÑтить %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Ðевозможно переименовать файл" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Файл не был загружен. ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°" @@ -77,11 +63,11 @@ msgstr "Ðевозможно найти временную папку" msgid "Failed to write to disk" msgstr "Ошибка запиÑи на диÑк" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "ÐедоÑтаточно Ñвободного меÑта" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Ðеправильный каталог." @@ -89,15 +75,15 @@ msgstr "Ðеправильный каталог." msgid "Files" msgstr "Файлы" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Отменить публикацию" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Удалить" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Переименовать" @@ -121,7 +107,7 @@ msgstr "отмена" msgid "replaced {new_name}" msgstr "заменено {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "отмена" @@ -129,13 +115,9 @@ msgstr "отмена" msgid "replaced {new_name} with {old_name}" msgstr "заменено {new_name} на {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "не опубликованные {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "удаленные {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -159,86 +141,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Ðе удаетÑÑ Ð·Ð°Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ файл размером 0 байт в каталог" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Ошибка загрузки" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Закрыть" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Ожидание" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "загружаетÑÑ 1 файл" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} файлов загружаетÑÑ" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Загрузка отменена." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Файл в процеÑÑе загрузки. Покинув Ñтраницу вы прервёте загрузку." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "СÑылка не может быть пуÑтой." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Ðеправильное Ð¸Ð¼Ñ ÐºÐ°Ñ‚Ð°Ð»Ð¾Ð³Ð°. Ð˜Ð¼Ñ 'Shared' зарезервировано." -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} файлов проÑканировано" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "ошибка во Ð²Ñ€ÐµÐ¼Ñ ÑанированиÑ" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Ðазвание" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Размер" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Изменён" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 папка" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} папок" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 файл" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} файлов" @@ -294,32 +268,40 @@ msgstr "Папка" msgid "From link" msgstr "Из ÑÑылки" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Отмена загрузки" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "ЗдеÑÑŒ ничего нет. Загрузите что-нибудь!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Скачать" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Файл Ñлишком большой" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Файлы, которые Ð’Ñ‹ пытаетеÑÑŒ загрузить, превышают лимит Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð² на Ñтом Ñервере." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Подождите, файлы ÑканируютÑÑ." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Текущее Ñканирование" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/ru/files_trashbin.po b/l10n/ru/files_trashbin.po new file mode 100644 index 00000000000..b208ca663da --- /dev/null +++ b/l10n/ru/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Russian (http://www.transifex.com/projects/p/owncloud/language/ru/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ru\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "ИмÑ" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 папка" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} папок" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 файл" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} файлов" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/ru/settings.po b/l10n/ru/settings.po index 23d54be85fd..489a9f51c77 100644 --- a/l10n/ru/settings.po +++ b/l10n/ru/settings.po @@ -19,8 +19,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Russian (http://www.transifex.com/projects/p/owncloud/language/ru/)\n" "MIME-Version: 1.0\n" @@ -87,14 +87,42 @@ msgstr "Ðевозможно добавить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² гру msgid "Unable to remove user from group %s" msgstr "Ðевозможно удалить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð· группы %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Выключить" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Включить" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Ошибка" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Сохранение..." @@ -123,6 +151,10 @@ msgstr "Смотрите Ð´Ð¾Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð½Ð° apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span> лицензиÑ. Ðвтор <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Обновить" + #: templates/help.php:3 msgid "User Documentation" msgstr "ПользовательÑÐºÐ°Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ" @@ -274,6 +306,14 @@ msgstr "Группа ÐдминиÑтраторы" msgid "Storage" msgstr "Хранилище" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "По-умолчанию" diff --git a/l10n/ru/user_ldap.po b/l10n/ru/user_ldap.po index 383f6bb2909..0d01260dd95 100644 --- a/l10n/ru/user_ldap.po +++ b/l10n/ru/user_ldap.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:19+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Russian (http://www.transifex.com/projects/p/owncloud/language/ru/)\n" "MIME-Version: 1.0\n" @@ -20,6 +20,58 @@ msgstr "" "Language: ru\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Удаление не удалоÑÑŒ" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -34,165 +86,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Сервер" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Можно опуÑтить протокол, за иÑключением того, когда вам требуетÑÑ SSL. Тогда начните Ñ ldaps :/ /" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Базовый DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Ð’Ñ‹ можете задать Base DN Ð´Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÐµÐ¹ и групп на вкладке \"РаÑширенное\"" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN пользователÑ" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "DN-клиента пользователÑ, Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ð¼ ÑвÑзывают должно быть заполнено, например, uid=агент, dc=пример, dc=com. Ð”Ð»Ñ Ð°Ð½Ð¾Ð½Ð¸Ð¼Ð½Ð¾Ð³Ð¾ доÑтупа, оÑтавьте DN и пароль пуÑтыми." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Пароль" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Ð”Ð»Ñ Ð°Ð½Ð¾Ð½Ð¸Ð¼Ð½Ð¾Ð³Ð¾ доÑтупа оÑтавьте DN и пароль пуÑтыми." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Фильтр входа пользователей" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "ОпределÑет фильтр Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸ попытке входа. %%uid заменÑет Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¿Ñ€Ð¸ входе в ÑиÑтему." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "иÑпользуйте заполнитель %%uid, например: \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Фильтр ÑпиÑка пользователей" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "ОпределÑет фильтр Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸ получении пользователей." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "без заполнителÑ, например: \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Фильтр группы" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "ОпределÑет фильтр Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸ получении группы." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "без заполнениÑ, например \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Порт" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "База пользовательÑкого дерева" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "База группового дерева" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "ÐÑÑÐ¾Ñ†Ð¸Ð°Ñ†Ð¸Ñ Ð“Ñ€ÑƒÐ¿Ð¿Ð°-УчаÑтник" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "ИÑпользовать TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Ðе иÑпользуйте Ð´Ð»Ñ Ñоединений SSL" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "ÐечувÑтвительный к региÑтру Ñервер LDAP (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Отключить проверку Ñертификата SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "ЕÑли Ñоединение работает только Ñ Ñтой опцией, импортируйте на ваш Ñервер ownCloud Ñертификат SSL Ñервера LDAP." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Ðе рекомендуетÑÑ, иÑпользуйте только Ð´Ð»Ñ Ñ‚ÐµÑтированиÑ." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "в Ñекундах. Изменение очиÑтит кÑш." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Поле отображаемого имени пользователÑ" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Ðтрибут LDAP Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ð¸ имени Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "База пользовательÑкого дерева" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Поле отображаемого имени группы" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Ðтрибут LDAP Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ð¸ имени группы ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "База группового дерева" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "ÐÑÑÐ¾Ñ†Ð¸Ð°Ñ†Ð¸Ñ Ð“Ñ€ÑƒÐ¿Ð¿Ð°-УчаÑтник" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "в байтах" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "в Ñекундах. Изменение очиÑтит кÑш." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "ОÑтавьте Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¿ÑƒÑтым (по умолчанию). Иначе укажите атрибут LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Помощь" diff --git a/l10n/ru_RU/core.po b/l10n/ru_RU/core.po index ad1e6dddba8..465c3cb0a8b 100644 --- a/l10n/ru_RU/core.po +++ b/l10n/ru_RU/core.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/owncloud/language/ru_RU/)\n" "MIME-Version: 1.0\n" @@ -157,59 +157,59 @@ msgstr "ÐоÑбрь" msgid "December" msgstr "Декабрь" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "ÐаÑтройки" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "Ñекунд назад" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr " 1 минуту назад" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{минуты} минут назад" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 Ñ‡Ð°Ñ Ð½Ð°Ð·Ð°Ð´" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{чаÑÑ‹} чаÑов назад" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "ÑегоднÑ" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "вчера" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{дни} дней назад" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "в прошлом меÑÑце" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{меÑÑцы} меÑÑцев назад" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "меÑÑц назад" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "в прошлом году" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "лет назад" @@ -254,11 +254,11 @@ msgstr "Требуемый файл {файл} не уÑтановлен!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Сделать общим" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Опубликовано" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -542,7 +542,7 @@ msgstr "Завершение наÑтройки" msgid "web services under your control" msgstr "веб-ÑервиÑÑ‹ под Вашим контролем" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Выйти" diff --git a/l10n/ru_RU/files.po b/l10n/ru_RU/files.po index 00422df23bf..d0beae0d809 100644 --- a/l10n/ru_RU/files.po +++ b/l10n/ru_RU/files.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# <cdewqazxsqwe@gmail.com>, 2013. # <cdewqazxsqwe@gmail.com>, 2012. # <skoptev@ukr.net>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/owncloud/language/ru_RU/)\n" "MIME-Version: 1.0\n" @@ -19,20 +20,6 @@ msgstr "" "Language: ru_RU\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Файл не был загружен. ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°" @@ -68,27 +55,27 @@ msgstr "ОтÑутÑтвует Ð²Ñ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð¿Ð°Ð¿ÐºÐ°" msgid "Failed to write to disk" msgstr "Ðе удалоÑÑŒ запиÑать на диÑк" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Ðе доÑтаточно Ñвободного меÑта" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." -msgstr "" +msgstr "Ðеверный каталог." #: appinfo/app.php:10 msgid "Files" msgstr "Файлы" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Скрыть" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Удалить" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Переименовать" @@ -112,7 +99,7 @@ msgstr "отменить" msgid "replaced {new_name}" msgstr "заменено {новое_имÑ}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "отменить дейÑтвие" @@ -120,21 +107,17 @@ msgstr "отменить дейÑтвие" msgid "replaced {new_name} with {old_name}" msgstr "заменено {новое_имÑ} Ñ {Ñтарое_имÑ}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "CовмеÑтное иÑпользование прекращено {файлы}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "удалено {файлы}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." -msgstr "" +msgstr "'.' ÑвлÑетÑÑ Ð½ÐµÐ²ÐµÑ€Ð½Ñ‹Ð¼ именем файла." #: js/files.js:56 msgid "File name cannot be empty." -msgstr "" +msgstr "Ð˜Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° не может быть пуÑтым." #: js/files.js:64 msgid "" @@ -150,86 +133,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Ðевозможно загрузить файл,\n так как он имеет нулевой размер или ÑвлÑетÑÑ Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸ÐµÐ¹" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Ошибка загрузки" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Закрыть" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Ожидающий решениÑ" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "загрузка 1 файла" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{количеÑтво} загружено файлов" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Загрузка отменена" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "ПроцеÑÑ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ файла. ЕÑли покинуть Ñтраницу ÑейчаÑ, загрузка будет отменена." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL не должен быть пуÑтым." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" -msgstr "" - -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{количеÑтво} файлов отÑканировано" +msgstr "Ðеверное Ð¸Ð¼Ñ Ð¿Ð°Ð¿ÐºÐ¸. ИÑпользование Ð½Ð°Ð¸Ð¼ÐµÐ½Ð¾Ð²Ð°Ð½Ð¸Ñ 'Опубликовано' зарезервировано Owncloud" -#: js/files.js:792 -msgid "error while scanning" -msgstr "ошибка при Ñканировании" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "ИмÑ" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Размер" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Изменен" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 папка" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{количеÑтво} папок" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 файл" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{количеÑтво} файлов" @@ -285,32 +260,40 @@ msgstr "Папка" msgid "From link" msgstr "По ÑÑылке" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Отмена загрузки" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "ЗдеÑÑŒ ничего нет. Загрузите что-нибудь!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Загрузить" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Загрузка Ñлишком велика" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Размер файлов, которые Ð’Ñ‹ пытаетеÑÑŒ загрузить, превышает макÑимально допуÑтимый размер Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ на данный Ñервер." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Файлы ÑканируютÑÑ, пожалуйÑта, подождите." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Текущее Ñканирование" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Обновление кÑша файловой ÑиÑтемы... " diff --git a/l10n/ru_RU/files_encryption.po b/l10n/ru_RU/files_encryption.po index b27f0a2def2..2453fc2cb9d 100644 --- a/l10n/ru_RU/files_encryption.po +++ b/l10n/ru_RU/files_encryption.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# <cdewqazxsqwe@gmail.com>, 2013. # <cdewqazxsqwe@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-23 00:05+0100\n" -"PO-Revision-Date: 2013-01-22 23:05+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-01-31 17:02+0100\n" +"PO-Revision-Date: 2013-01-31 12:11+0000\n" +"Last-Translator: AnnaSch <cdewqazxsqwe@gmail.com>\n" "Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/owncloud/language/ru_RU/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -22,11 +23,11 @@ msgstr "" msgid "" "Please switch to your ownCloud client and change your encryption password to" " complete the conversion." -msgstr "" +msgstr "ПожалуйÑта, переключитеÑÑŒ на ownCloud-клиент и измените Ваш пароль ÑˆÐ¸Ñ„Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð»Ñ Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÐºÐ¾Ð½Ð²ÐµÑ€Ñ‚Ð°Ñ†Ð¸Ð¸." #: js/settings-personal.js:17 msgid "switched to client side encryption" -msgstr "" +msgstr "переключено на шифрование на клиентÑкой Ñтороне" #: js/settings-personal.js:21 msgid "Change encryption password to login password" @@ -34,7 +35,7 @@ msgstr "" #: js/settings-personal.js:25 msgid "Please check your passwords and try again." -msgstr "" +msgstr "ПожалуйÑта, проверьте Ваш пароль и попробуйте Ñнова" #: js/settings-personal.js:25 msgid "Could not change your file encryption password to your login password" @@ -42,33 +43,33 @@ msgstr "" #: templates/settings-personal.php:3 templates/settings.php:5 msgid "Choose encryption mode:" -msgstr "" +msgstr "Выберите ÑпоÑоб шифрованиÑ:" #: templates/settings-personal.php:20 templates/settings.php:24 msgid "" "Client side encryption (most secure but makes it impossible to access your " "data from the web interface)" -msgstr "" +msgstr "Шифрование на Ñтороне клиента (наиболее безопаÑно, но делает невозможным получение доÑтупа к Вашим данным по вÑб-интерфейÑу)" #: templates/settings-personal.php:30 templates/settings.php:36 msgid "" "Server side encryption (allows you to access your files from the web " "interface and the desktop client)" -msgstr "" +msgstr "Шифрование на Ñтороне Ñервера (позволÑет Вам получить доÑтуп к Вашим файлам по вÑб-интерфейÑу и деÑктопному клиенту)" #: templates/settings-personal.php:41 templates/settings.php:60 msgid "None (no encryption at all)" -msgstr "" +msgstr "Ðет (шифрование полноÑтью отÑутÑтвует)" #: templates/settings.php:10 msgid "" "Important: Once you selected an encryption mode there is no way to change it" " back" -msgstr "" +msgstr "Важно: Ðевозможно будет изменить выбранный ÑпоÑоб шифрованиÑ" #: templates/settings.php:48 msgid "User specific (let the user decide)" -msgstr "" +msgstr "Специфика Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ (позволено решить пользователю)" #: templates/settings.php:65 msgid "Encryption" diff --git a/l10n/ru_RU/files_trashbin.po b/l10n/ru_RU/files_trashbin.po new file mode 100644 index 00000000000..71505abd669 --- /dev/null +++ b/l10n/ru_RU/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/owncloud/language/ru_RU/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ru_RU\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "ИмÑ" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 папка" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{количеÑтво} папок" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 файл" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{количеÑтво} файлов" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/ru_RU/settings.po b/l10n/ru_RU/settings.po index 8722c9ae955..b7258db60ab 100644 --- a/l10n/ru_RU/settings.po +++ b/l10n/ru_RU/settings.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/owncloud/language/ru_RU/)\n" "MIME-Version: 1.0\n" @@ -77,14 +77,42 @@ msgstr "Ðевозможно добавить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² гру msgid "Unable to remove user from group %s" msgstr "Ðевозможно удалить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð· группы %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Отключить" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Включить" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Ошибка" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Сохранение" @@ -113,6 +141,10 @@ msgstr "ОбратитеÑÑŒ к Ñтранице приложений на apps. msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Обновить" + #: templates/help.php:3 msgid "User Documentation" msgstr "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ" @@ -264,6 +296,14 @@ msgstr "Группа Admin" msgid "Storage" msgstr "Хранилище" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "назначить новый пароль" + #: templates/users.php:137 msgid "Default" msgstr "По умолчанию" diff --git a/l10n/ru_RU/user_ldap.po b/l10n/ru_RU/user_ldap.po index cd5c6be4905..848fc9df8d7 100644 --- a/l10n/ru_RU/user_ldap.po +++ b/l10n/ru_RU/user_ldap.po @@ -9,9 +9,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 10:56+0000\n" -"Last-Translator: AnnaSch <cdewqazxsqwe@gmail.com>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/owncloud/language/ru_RU/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,6 +19,58 @@ msgstr "" "Language: ru_RU\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Удаление не удалоÑÑŒ" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -33,165 +85,227 @@ msgid "" msgstr "<b>Предупреждение:</b> Модуль PHP LDAP не уÑтановлен, бÑкÑнд не будет работать. ПожалуйÑта, обратитеÑÑŒ к Вашему ÑиÑтемному админиÑтратору, чтобы уÑтановить его." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "ХоÑÑ‚" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Ð’Ñ‹ можете пропуÑтить протокол, еÑли Вам не требуетÑÑ SSL. Затем начните Ñ ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "База DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "Одно базовое DN на линию" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Ð’Ñ‹ можете задать Base DN Ð´Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÐµÐ¹ и групп во вкладке «Дополнительно»" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN пользователÑ" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "DN клиентÑкого пользователÑ, Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ должна оÑущеÑтвлÑтьÑÑ Ð¿Ñ€Ð¸Ð²Ñзка, например, uid=agent,dc=example,dc=com. Ð”Ð»Ñ Ð°Ð½Ð¾Ð½Ð¸Ð¼Ð½Ð¾Ð³Ð¾ доÑтупа оÑтавьте Ð¿Ð¾Ð»Ñ DN и Пароль пуÑтыми." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Пароль" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Ð”Ð»Ñ Ð°Ð½Ð¾Ð½Ð¸Ð¼Ð½Ð¾Ð³Ð¾ доÑтупа оÑтавьте Ð¿Ð¾Ð»Ñ DN и пароль пуÑтыми." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Фильтр имен пользователей" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Задает фильтр, применÑемый при загрузке пользователÑ. %%uid заменÑет Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¿Ñ€Ð¸ входе." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "иÑпользуйте %%uid заполнитель, например, \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Фильтр ÑпиÑка пользователей" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Задает фильтр, применÑемый при получении пользователей." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "без каких-либо заполнителей, например, \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Групповой фильтр" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Задает фильтр, применÑемый при получении групп." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "без каких-либо заполнителей, например, \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Порт" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Базовое дерево пользователей" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "Одно пользовательÑкое базовое DN на линию" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Базовое дерево групп" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "Одно групповое базовое DN на линию" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "СвÑзь член-группа" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "ИÑпользовать TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Ðе иÑпользуйте Ñто SSL-Ñоединений, Ñто не будет выполнено." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "ÐечувÑтвительный к региÑтру LDAP-Ñервер (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Выключить проверку Ñертификата SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "ЕÑли Ñоединение работает только Ñ Ñтой опцией, импортируйте SSL-Ñертификат LDAP Ñервера в ваш ownCloud Ñервер." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Ðе рекомендовано, иÑпользуйте только Ð´Ð»Ñ Ñ‚ÐµÑтированиÑ." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "в Ñекундах. Изменение очищает кÑш." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Поле, отображаемое как Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Ðтрибут LDAP, иÑпользуемый Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸Ð¼ÐµÐ½Ð¸ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Базовое дерево пользователей" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Одно пользовательÑкое базовое DN на линию" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Поле, отображаемое как Ð¸Ð¼Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ñ‹" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Ðтрибут LDAP, иÑпользуемый Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ð¾Ð²Ð¾Ð³Ð¾ имени в ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Базовое дерево групп" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Одно групповое базовое DN на линию" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "СвÑзь член-группа" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "в байтах" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "в Ñекундах. Изменение очищает кÑш." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "ОÑтавьте пуÑтым под Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ (по умолчанию). Ð’ противном Ñлучае задайте LDAP/AD атрибут." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Помощь" diff --git a/l10n/ru_RU/user_webdavauth.po b/l10n/ru_RU/user_webdavauth.po index a14bb9d28ed..48ae554ac04 100644 --- a/l10n/ru_RU/user_webdavauth.po +++ b/l10n/ru_RU/user_webdavauth.po @@ -3,15 +3,16 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# <cdewqazxsqwe@gmail.com>, 2013. # <cdewqazxsqwe@gmail.com>, 2012. # <skoptev@ukr.net>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-15 00:03+0100\n" -"PO-Revision-Date: 2013-01-14 23:04+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 10:01+0000\n" +"Last-Translator: AnnaSch <cdewqazxsqwe@gmail.com>\n" "Language-Team: Russian (Russia) (http://www.transifex.com/projects/p/owncloud/language/ru_RU/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -21,7 +22,7 @@ msgstr "" #: templates/settings.php:3 msgid "WebDAV Authentication" -msgstr "" +msgstr "WebDAV аутентификациÑ" #: templates/settings.php:4 msgid "URL: http://" diff --git a/l10n/si_LK/core.po b/l10n/si_LK/core.po index 0d0fd472df8..1d65d6ef591 100644 --- a/l10n/si_LK/core.po +++ b/l10n/si_LK/core.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Sinhala (Sri Lanka) (http://www.transifex.com/projects/p/owncloud/language/si_LK/)\n" "MIME-Version: 1.0\n" @@ -158,59 +158,59 @@ msgstr "නොවà·à¶¸à·Šà¶¶à¶»à·Š" msgid "December" msgstr "දෙසà·à¶¸à·Šà¶¶à¶»à·Š" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "à·ƒà·à¶šà·ƒà·”ම්" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "à¶à¶à·Šà¶´à¶»à¶ºà¶±à·Šà¶§ පෙර" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 මිනිà¶à·Šà¶à·”වකට පෙර" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "අද" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "ඊයේ" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "පෙර මà·à·ƒà¶ºà·š" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "මà·à·ƒ කීපයකට පෙර" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "පෙර අවුරුද්දේ" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "අවුරුදු කීපයකට පෙර" @@ -255,7 +255,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "බෙද෠හද෠ගන්න" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -543,7 +543,7 @@ msgstr "ස්ථà·à¶´à¶±à¶º කිරීම අවසන් කරන්න" msgid "web services under your control" msgstr "ඔබට à¶´à·à¶½à¶±à¶º à¶šà·… à·„à·à¶šà·’ වෙබ් සේවà·à·€à¶±à·Š" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "නික්මීම" diff --git a/l10n/si_LK/files.po b/l10n/si_LK/files.po index 6f61a4f5cdf..b61cf98e2dd 100644 --- a/l10n/si_LK/files.po +++ b/l10n/si_LK/files.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Sinhala (Sri Lanka) (http://www.transifex.com/projects/p/owncloud/language/si_LK/)\n" "MIME-Version: 1.0\n" @@ -19,20 +19,6 @@ msgstr "" "Language: si_LK\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "ගොනුවක් උඩුගචනොවුනි. නොහà·à¶³à·’නු දà·à·‚යක්" @@ -68,11 +54,11 @@ msgstr "à¶à·à·€à¶šà·à¶½à·’à¶š ෆොල්ඩරයක් සොයà·à¶œà¶ msgid "Failed to write to disk" msgstr "à¶à·à¶§à·’ගචකිරීම à¶…à·ƒà·à¶»à·Šà¶®à¶šà¶ºà·’" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -80,15 +66,15 @@ msgstr "" msgid "Files" msgstr "ගොනු" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "නොබෙදු" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "මකන්න" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "à¶±à·à·€à¶ නම් කරන්න" @@ -112,7 +98,7 @@ msgstr "à¶…à¶à·Š හරින්න" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "නිෂ්ප්â€à¶»à¶· කරන්න" @@ -120,12 +106,8 @@ msgstr "නිෂ්ප්â€à¶»à¶· කරන්න" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -150,86 +132,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "උඩුගචකිරීමේ දà·à·à¶ºà¶šà·Š" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "වසන්න" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 ගොනුවක් උඩගචකෙරේ" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "උඩුගචකිරීම à¶…à¶à·Š හරින්න ලදී" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "උඩුගà¶à¶šà·’රීමක් සිදුවේ. පිටුව à·„à·à¶» යà·à¶¸à·™à¶±à·Š එය à¶±à·à·€à¶à·™à¶±à·” ඇà¶" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "යොමුව හිස් විය නොහà·à¶š" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "පරීක්ෂ෠කිරීමේදී දà·à·‚යක්" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "නම" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "à¶´à·Šâ€à¶»à¶¸à·à¶«à¶º" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "වෙනස් à¶šà·…" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 ෆොල්ඩරයක්" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 ගොනුවක්" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -285,32 +259,40 @@ msgstr "à·†à·à¶½à·Šà¶©à¶»à¶º" msgid "From link" msgstr "යොමුවෙන්" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "උඩුගචකිරීම à¶…à¶à·Š හරින්න" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "මෙහි කිසිවක් නොමà·à¶. යමක් උඩුගචකරන්න" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "à¶¶à·à¶œà¶ කිරීම" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "උඩුගචකිරීම විà·à·à¶½ à·€à·à¶©à·’ය" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "ඔබ උඩුගචකිරීමට à¶à·à¶à·Š කරන ගොනු මෙම සේවà·à¶¯à·à¶ºà¶šà¶ºà· උඩුගචකිරීමට ඉඩදී ඇà¶à·’ උපරිම ගොනු විà·à·à¶½à¶à·Šà·€à¶ºà¶§ වඩ෠වà·à¶©à·’ය" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "ගොනු පරික්ෂ෠කෙරේ. මඳක් à¶»à·à¶³à·“ සිටින්න" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "වර්à¶à¶¸à·à¶± පරික්ෂà·à·€" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/si_LK/files_trashbin.po b/l10n/si_LK/files_trashbin.po new file mode 100644 index 00000000000..c5abfae0b81 --- /dev/null +++ b/l10n/si_LK/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Sinhala (Sri Lanka) (http://www.transifex.com/projects/p/owncloud/language/si_LK/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: si_LK\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "නම" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 ෆොල්ඩරයක්" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 ගොනුවක්" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/si_LK/settings.po b/l10n/si_LK/settings.po index f5d37761925..76d2386842e 100644 --- a/l10n/si_LK/settings.po +++ b/l10n/si_LK/settings.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Sinhala (Sri Lanka) (http://www.transifex.com/projects/p/owncloud/language/si_LK/)\n" "MIME-Version: 1.0\n" @@ -78,14 +78,42 @@ msgstr "පරිà·à·“ලකය෠%s à¶šà¶«à·Šà¶©à·à¶ºà¶¸à¶§ à¶‘à¶šà¶à·” à¶š msgid "Unable to remove user from group %s" msgstr "පරිà·à·“ලකය෠%s à¶šà¶«à·Šà¶©à·à¶ºà¶¸à·’න් ඉවà¶à·Š à¶šà·… නොහà·à¶š" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "à¶…à¶šà·Šâ€à¶»à·’ය කරන්න" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "à¶šà·Šâ€à¶»à·’යà¶à·Šà¶¸à¶š කරන්න" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "දà·à·‚යක්" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "සුරà·à¶šà·™à¶¸à·’න් à¶´à·€à¶à·“..." @@ -114,6 +142,10 @@ msgstr "" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "යà·à·€à¶à·Šà¶šà·à¶½ කිරීම" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -265,6 +297,14 @@ msgstr "à¶šà·à¶«à·Šà¶© පරිපà·à¶½à¶š" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/si_LK/user_ldap.po b/l10n/si_LK/user_ldap.po index 536c0438d76..cb5a0b25f19 100644 --- a/l10n/si_LK/user_ldap.po +++ b/l10n/si_LK/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Sinhala (Sri Lanka) (http://www.transifex.com/projects/p/owncloud/language/si_LK/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: si_LK\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "මකà·à¶¯à·à¶¸à·“ම à¶…à·ƒà·à¶»à·Šà¶®à¶šà¶ºà·’" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "à·ƒà¶à·Šà¶šà·à¶»à¶šà¶º" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "SSL à¶…à·€à·à·Šâ€à¶ºà¶º වන විට පමණක් à·„à·à¶», අන් අවස්ථà·à·€à¶±à·Šà·„ිදී à¶´à·Šâ€à¶»à·œà¶§à·œà¶šà·à¶½à¶º à¶…à¶à·Š à·„à·à¶»à·’ය à·„à·à¶š. à¶·à·à·€à·’à¶à· කරන විට ldaps:// ලෙස ආරම්භ කරන්න" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "මුර පදය" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "පරිà·à·“ලක පිවිසුම් පෙරහන" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "පරිà·à·“ලක à¶½à·à¶ºà·’ස්à¶à·” පෙරහන" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "à¶šà¶«à·Šà¶©à·à¶ºà¶¸à·Š පෙරහන" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "à¶šà¶«à·Šà¶©à·à¶ºà¶¸à·Š සොය෠ලබà·à¶œà¶±à·Šà¶±à· විට, යොදන පෙරහන නියම කරයි" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "à¶à·œà¶§" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "TLS à¶·à·à·€à·’à¶à· කරන්න" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "නිර්දේ෠කළ නොහà·à¶š. පරීක්ෂණ සඳහ෠පමණක් à¶·à·à·€à·’චකරන්න" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "උදව්" diff --git a/l10n/sk_SK/core.po b/l10n/sk_SK/core.po index de52d7a52d3..573c3348cb4 100644 --- a/l10n/sk_SK/core.po +++ b/l10n/sk_SK/core.po @@ -13,8 +13,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n" "MIME-Version: 1.0\n" @@ -161,59 +161,59 @@ msgstr "November" msgid "December" msgstr "December" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Nastavenia" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "pred sekundami" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "pred minútou" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "pred {minutes} minútami" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "Pred 1 hodinou." -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "Pred {hours} hodinami." -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "dnes" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "vÄera" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "pred {days} dňami" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "minulý mesiac" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "Pred {months} mesiacmi." -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "pred mesiacmi" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "minulý rok" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "pred rokmi" @@ -258,11 +258,11 @@ msgstr "Požadovaný súbor {file} nie je inÅ¡talovaný!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Zdieľaj" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Zdieľané" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -546,7 +546,7 @@ msgstr "DokonÄiÅ¥ inÅ¡taláciu" msgid "web services under your control" msgstr "webové služby pod vaÅ¡ou kontrolou" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "OdhlásiÅ¥" diff --git a/l10n/sk_SK/files.po b/l10n/sk_SK/files.po index 083a241ac49..cd6c5db9e95 100644 --- a/l10n/sk_SK/files.po +++ b/l10n/sk_SK/files.po @@ -12,9 +12,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 20:00+0000\n" +"Last-Translator: mhh <marian.hvolka@stuba.sk>\n" "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -22,60 +22,46 @@ msgstr "" "Language: sk_SK\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Nie je možné presunúť %s - súbor s týmto menom už existuje" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Nie je možné presunúť %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Nemožno premenovaÅ¥ súbor" - -#: ajax/upload.php:17 +#: ajax/upload.php:19 msgid "No file was uploaded. Unknown error" msgstr "Žiaden súbor nebol odoslaný. Neznáma chyba" -#: ajax/upload.php:24 +#: ajax/upload.php:26 msgid "There is no error, the file uploaded with success" msgstr "Nenastala žiadna chyba, súbor bol úspeÅ¡ne nahraný" -#: ajax/upload.php:25 +#: ajax/upload.php:27 msgid "" "The uploaded file exceeds the upload_max_filesize directive in php.ini: " msgstr "Nahraný súbor predÄil konfiguraÄnú direktÃvu upload_max_filesize v súbore php.ini:" -#: ajax/upload.php:27 +#: ajax/upload.php:29 msgid "" "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in " "the HTML form" msgstr "Nahrávaný súbor presiahol MAX_FILE_SIZE direktÃvu, ktorá bola Å¡pecifikovaná v HTML formulári" -#: ajax/upload.php:29 +#: ajax/upload.php:31 msgid "The uploaded file was only partially uploaded" msgstr "Nahrávaný súbor bol iba ÄiastoÄne nahraný" -#: ajax/upload.php:30 +#: ajax/upload.php:32 msgid "No file was uploaded" msgstr "Žiaden súbor nebol nahraný" -#: ajax/upload.php:31 +#: ajax/upload.php:33 msgid "Missing a temporary folder" msgstr "Chýbajúci doÄasný prieÄinok" -#: ajax/upload.php:32 +#: ajax/upload.php:34 msgid "Failed to write to disk" msgstr "Zápis na disk sa nepodaril" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:52 +msgid "Not enough space available" +msgstr "Nie je k dispozÃcii dostatok miesta" -#: ajax/upload.php:77 +#: ajax/upload.php:83 msgid "Invalid directory." msgstr "Neplatný adresár" @@ -83,15 +69,15 @@ msgstr "Neplatný adresár" msgid "Files" msgstr "Súbory" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "NezdielaÅ¥" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "OdstrániÅ¥" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "PremenovaÅ¥" @@ -115,7 +101,7 @@ msgstr "zruÅ¡iÅ¥" msgid "replaced {new_name}" msgstr "prepÃsaný {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "vrátiÅ¥" @@ -123,13 +109,9 @@ msgstr "vrátiÅ¥" msgid "replaced {new_name} with {old_name}" msgstr "prepÃsaný {new_name} súborom {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "zdieľanie zruÅ¡ené pre {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "zmazané {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "vykonaÅ¥ zmazanie" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -147,92 +129,84 @@ msgstr "Nesprávne meno, '\\', '/', '<', '>', ':', '\"', '|', '?' a '*' nie sú #: js/files.js:78 msgid "Your storage is full, files can not be updated or synced anymore!" -msgstr "" +msgstr "VaÅ¡e úložisko je plné. Súbory nemožno aktualizovaÅ¥ ani synchronizovaÅ¥!" #: js/files.js:82 msgid "Your storage is almost full ({usedSpacePercent}%)" -msgstr "" +msgstr "VaÅ¡e úložisko je takmer plné ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "VaÅ¡e sÅ¥ahovanie sa pripravuje. Ak sú sÅ¥ahované súbory veľké, môže to chvÃľu trvaÅ¥." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Nemôžem nahraÅ¥ súbor lebo je to prieÄinok alebo má 0 bajtov." -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Chyba odosielania" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "ZavrieÅ¥" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "ÄŒaká sa" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 súbor sa posiela " -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} súborov odosielaných" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Odosielanie zruÅ¡ené" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Opustenie stránky zrušà práve prebiehajúce odosielanie súboru." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL nemôže byÅ¥ prázdne" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Neplatné meno adresára. PoužÃvanie mena 'Shared' je vyhradené len pre Owncloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} súborov prehľadaných" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "chyba poÄas kontroly" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:953 templates/index.php:67 msgid "Name" msgstr "Meno" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:954 templates/index.php:78 msgid "Size" msgstr "VeľkosÅ¥" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:955 templates/index.php:80 msgid "Modified" msgstr "Upravené" -#: js/files.js:887 +#: js/files.js:974 msgid "1 folder" msgstr "1 prieÄinok" -#: js/files.js:889 +#: js/files.js:976 msgid "{count} folders" msgstr "{count} prieÄinkov" -#: js/files.js:897 +#: js/files.js:984 msgid "1 file" msgstr "1 súbor" -#: js/files.js:899 +#: js/files.js:986 msgid "{count} files" msgstr "{count} súborov" @@ -288,32 +262,40 @@ msgstr "PrieÄinok" msgid "From link" msgstr "Z odkazu" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "Kôš" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "ZruÅ¡iÅ¥ odosielanie" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Žiadny súbor. Nahrajte nieÄo!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "StiahnuÅ¥" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Odosielaný súbor je prÃliÅ¡ veľký" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Súbory, ktoré sa snažÃte nahraÅ¥, presahujú maximálnu veľkosÅ¥ pre nahratie súborov na tento server." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "ÄŒakajte, súbory sú prehľadávané." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Práve prehliadané" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Aktualizujem medzipamäť súborového systému..." diff --git a/l10n/sk_SK/files_external.po b/l10n/sk_SK/files_external.po index 7a081bb7aa5..56de6320ffe 100644 --- a/l10n/sk_SK/files_external.po +++ b/l10n/sk_SK/files_external.po @@ -4,14 +4,15 @@ # # Translators: # <intense.feel@gmail.com>, 2012. +# Marián Hvolka <marian.hvolka@stuba.sk>, 2013. # <martin.babik@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2012-12-13 00:17+0100\n" -"PO-Revision-Date: 2012-12-11 23:22+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 06:20+0000\n" +"Last-Translator: mhh <marian.hvolka@stuba.sk>\n" "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -27,11 +28,11 @@ msgstr "PrÃstup povolený" msgid "Error configuring Dropbox storage" msgstr "Chyba pri konfigurácii úložiska Dropbox" -#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:40 +#: js/dropbox.js:34 js/dropbox.js:45 js/google.js:31 js/google.js:41 msgid "Grant access" msgstr "PovoliÅ¥ prÃstup" -#: js/dropbox.js:73 js/google.js:72 +#: js/dropbox.js:73 js/google.js:73 msgid "Fill out all required fields" msgstr "Vyplňte vÅ¡etky vyžadované kolónky" @@ -39,22 +40,22 @@ msgstr "Vyplňte vÅ¡etky vyžadované kolónky" msgid "Please provide a valid Dropbox app key and secret." msgstr "Zadajte platný kÄ¾ÃºÄ aplikácie a heslo Dropbox" -#: js/google.js:26 js/google.js:73 js/google.js:78 +#: js/google.js:26 js/google.js:74 js/google.js:79 msgid "Error configuring Google Drive storage" msgstr "Chyba pri konfigurácii úložiska Google drive" -#: lib/config.php:434 +#: lib/config.php:405 msgid "" "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares " "is not possible. Please ask your system administrator to install it." -msgstr "" +msgstr "<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." -#: lib/config.php:435 +#: lib/config.php:406 msgid "" "<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." -msgstr "" +msgstr "<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." #: templates/settings.php:3 msgid "External Storage" @@ -101,7 +102,7 @@ msgid "Users" msgstr "UžÃvatelia" #: templates/settings.php:108 templates/settings.php:109 -#: templates/settings.php:149 templates/settings.php:150 +#: templates/settings.php:144 templates/settings.php:145 msgid "Delete" msgstr "OdstrániÅ¥" @@ -113,10 +114,10 @@ msgstr "PovoliÅ¥ externé úložisko" msgid "Allow users to mount their own external storage" msgstr "PovoliÅ¥ užÃvateľom pripojiÅ¥ ich vlastné externé úložisko" -#: templates/settings.php:139 +#: templates/settings.php:136 msgid "SSL root certificates" msgstr "Koreňové SSL certifikáty" -#: templates/settings.php:158 +#: templates/settings.php:153 msgid "Import Root Certificate" msgstr "ImportovaÅ¥ koreňový certifikát" diff --git a/l10n/sk_SK/files_trashbin.po b/l10n/sk_SK/files_trashbin.po new file mode 100644 index 00000000000..e11f6529c52 --- /dev/null +++ b/l10n/sk_SK/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Marián Hvolka <marian.hvolka@stuba.sk>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 20:00+0000\n" +"Last-Translator: mhh <marian.hvolka@stuba.sk>\n" +"Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: sk_SK\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "vykonaÅ¥ obnovu" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Meno" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "Zmazané" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 prieÄinok" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} prieÄinkov" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 súbor" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} súborov" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Žiadny obsah. Kôš je prázdny!" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "ObnoviÅ¥" diff --git a/l10n/sk_SK/settings.po b/l10n/sk_SK/settings.po index 74bc6b025bb..cfaa9da6bc0 100644 --- a/l10n/sk_SK/settings.po +++ b/l10n/sk_SK/settings.po @@ -13,9 +13,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 20:00+0000\n" +"Last-Translator: mhh <marian.hvolka@stuba.sk>\n" "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -81,14 +81,42 @@ msgstr "Nie je možné pridaÅ¥ užÃvateľa do skupiny %s" msgid "Unable to remove user from group %s" msgstr "Nie je možné odstrániÅ¥ použÃvateľa zo skupiny %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "Nemožno aktualizovaÅ¥ aplikáciu." + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "AktualizovaÅ¥ na {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "ZakázaÅ¥" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "PovoliÅ¥" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "ÄŒakajte prosÃm..." + +#: js/apps.js:84 +msgid "Updating...." +msgstr "Aktualizujem..." + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "hyba pri aktualizácii aplikácie" + +#: js/apps.js:87 +msgid "Error" +msgstr "Chyba" + +#: js/apps.js:90 +msgid "Updated" +msgstr "Aktualizované" + #: js/personal.js:69 msgid "Saving..." msgstr "Ukladám..." @@ -117,6 +145,10 @@ msgstr "Pozrite si stránku aplikácià na apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licencované <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "AktualizovaÅ¥" + #: templates/help.php:3 msgid "User Documentation" msgstr "PrÃruÄka použÃvateľa" @@ -234,7 +266,7 @@ msgstr "Vyvinuté <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komu #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Prihlasovacie meno" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -258,7 +290,7 @@ msgstr "Iné" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Zobrazované meno" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -268,6 +300,14 @@ msgstr "Správca skupiny" msgid "Storage" msgstr "Úložisko" +#: templates/users.php:97 +msgid "change display name" +msgstr "zmeniÅ¥ zobrazované meno" + +#: templates/users.php:101 +msgid "set new password" +msgstr "nastaviÅ¥ nové heslo" + #: templates/users.php:137 msgid "Default" msgstr "Predvolené" diff --git a/l10n/sk_SK/user_ldap.po b/l10n/sk_SK/user_ldap.po index 497fea635a1..ab48e3110ab 100644 --- a/l10n/sk_SK/user_ldap.po +++ b/l10n/sk_SK/user_ldap.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# Marián Hvolka <marian.hvolka@stuba.sk>, 2013. # Roman Priesol <roman@priesol.net>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: 2013-02-04 20:00+0000\n" +"Last-Translator: mhh <marian.hvolka@stuba.sk>\n" "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -18,179 +19,293 @@ msgstr "" "Language: sk_SK\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "Zlyhalo zmazanie nastavenia servera." + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "Nastavenie je v poriadku a pripojenie je stabilné." + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "Nastavenie je v poriadku, ale pripojenie zlyhalo. Skontrolujte nastavenia servera a prihlasovacie údaje." + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "Nastavenia sú neplatné. Podrobnosti hľadajte v logu ownCloud." + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Odstránenie zlyhalo" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "PrebraÅ¥ nastavenia z nedávneho nastavenia servera?" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "PonechaÅ¥ nastavenia?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "Nemožno pridaÅ¥ nastavenie servera" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "Test pripojenia bol úspeÅ¡ný" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "Test pripojenia zlyhal" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "Naozaj chcete zmazaÅ¥ súÄasné nastavenie servera?" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "PotvrdiÅ¥ vymazanie" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" " experience unexpected behaviour. Please ask your system administrator to " "disable one of them." -msgstr "" +msgstr "<b>Upozornenie:</b> Aplikácie user_ldap a user_webdavauth nie sú kompatibilné. Môže nastávaÅ¥ neoÄakávané správanie. Požiadajte správcu systému aby jednu z nich zakázal." #: templates/settings.php:11 msgid "" "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not " "work. Please ask your system administrator to install it." -msgstr "" +msgstr "<b>Upozornenie:</b> nie je nainÅ¡talovaný LDAP modul pre PHP, backend vrstva nebude fungovaÅ¥. Požádejte správcu systému aby ho nainÅ¡taloval." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "Nastavenia servera" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "PridaÅ¥ nastavenia servera." + +#: templates/settings.php:21 msgid "Host" msgstr "Hostiteľ" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Môžete vynechaÅ¥ protokol, s výnimkou požadovania SSL. Vtedy zaÄnite s ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Základné DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" -msgstr "" +msgstr "Jedno základné DN na riadok" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "V rozÅ¡Ãrenom nastavenà môžete zadaÅ¥ základné DN pre použÃvateľov a skupiny" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "PoužÃvateľské DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "DN klientského použÃvateľa, ku ktorému tvorÃte väzbu, napr. uid=agent,dc=example,dc=com. Pre anonymný prÃstup ponechajte údaje DN a Heslo prázdne." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Heslo" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Pre anonymný prÃstup ponechajte údaje DN a Heslo prázdne." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filter prihlásenia použÃvateľov" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "UrÄuje použitý filter, pri pokuse o prihlásenie. %%uid nahradzuje použÃvateľské meno v Äinnosti prihlásenia." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "použite zástupný vzor %%uid, napr. \\\"uid=%%uid\\\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Filter zoznamov použÃvateľov" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Definuje použitý filter, pre zÃskanie použÃvateľov." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "bez zástupných znakov, napr. \"objectClass=person\"" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Filter skupiny" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Definuje použitý filter, pre zÃskanie skupÃn." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "bez zástupných znakov, napr. \"objectClass=posixGroup\"" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "Nastavenie pripojenia" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "Nastavenia sú aktÃvne " + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "Ak nie je zaÅ¡krtnuté, nastavenie bude preskoÄené." + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Základný použÃvateľský strom" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "Záložný server (kópia) hosÅ¥" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "Zadajte záložný LDAP/AD. Musà to byÅ¥ kópia hlavného LDAP/AD servera." -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Základný skupinový strom" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "Záložný server (kópia) port" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "ZakázaÅ¥ hlavný server" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Asociácia Älena skupiny" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "Pri zapnutà sa ownCloud pripojà len k záložnému serveru." -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Použi TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "NepoužÃvajte pre pripojenie SSL, pripojenie zlyhá." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "LDAP server nerozliÅ¡uje veľkosÅ¥ znakov (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Vypnúť overovanie SSL certifikátu." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Ak pripojenie pracuje len s touto možnosÅ¥ou, tak importujte SSL certifikát LDAP serveru do vášho servera ownCloud." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Nie je doporuÄované, len pre testovacie úÄely." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "v sekundách. Zmena vyprázdni vyrovnávaciu pamäť." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "Nastavenie prieÄinka" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Pole pre zobrazenia mena použÃvateľa" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Atribút LDAP použitý na vygenerovanie mena použÃvateľa ownCloud " -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Základný použÃvateľský strom" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "Jedna použÃvateľská základná DN na riadok" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "Atribúty vyhľadávania použÃvateľov" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "Voliteľné, jeden atribút na jeden riadok" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Pole pre zobrazenie mena skupiny" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Atribút LDAP použitý na vygenerovanie mena skupiny ownCloud " -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Základný skupinový strom" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "Jedna skupinová základná DN na riadok" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "Atribúty vyhľadávania skupÃn" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Asociácia Älena skupiny" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "Å peciálne atribúty" + +#: templates/settings.php:56 msgid "in bytes" msgstr "v bajtoch" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "v sekundách. Zmena vyprázdni vyrovnávaciu pamäť." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Nechajte prázdne pre použÃvateľské meno (predvolené). Inak uveÄte atribút LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Pomoc" diff --git a/l10n/sk_SK/user_webdavauth.po b/l10n/sk_SK/user_webdavauth.po index 4e77a87a392..b3a30b89ca6 100644 --- a/l10n/sk_SK/user_webdavauth.po +++ b/l10n/sk_SK/user_webdavauth.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 16:01+0000\n" +"POT-Creation-Date: 2013-01-31 00:27+0100\n" +"PO-Revision-Date: 2013-01-30 08:31+0000\n" "Last-Translator: mhh <marian.hvolka@stuba.sk>\n" "Language-Team: Slovak (Slovakia) (http://www.transifex.com/projects/p/owncloud/language/sk_SK/)\n" "MIME-Version: 1.0\n" @@ -32,4 +32,4 @@ msgid "" "ownCloud will send the user credentials to this URL. This plugin checks the " "response and will interpret the HTTP statuscodes 401 and 403 as invalid " "credentials, and all other responses as valid credentials." -msgstr "ownCloud odoÅ¡le použÃvateľské údajena zadanú URL. Plugin skontroluje odpoveÄ a považuje návratovou hodnotu HTTP 401 a 403 za neplatné údaje a vÅ¡etky ostatné hodnoty ako platné prihlasovacie údaje." +msgstr "ownCloud odoÅ¡le použÃvateľské údaje na zadanú URL. Plugin skontroluje odpoveÄ a považuje návratovú hodnotu HTTP 401 a 403 za neplatné údaje a vÅ¡etky ostatné hodnoty ako platné prihlasovacie údaje." diff --git a/l10n/sl/core.po b/l10n/sl/core.po index e489f98a6c9..d463f42279e 100644 --- a/l10n/sl/core.po +++ b/l10n/sl/core.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n" "MIME-Version: 1.0\n" @@ -159,59 +159,59 @@ msgstr "november" msgid "December" msgstr "december" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Nastavitve" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "pred nekaj sekundami" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "pred minuto" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "pred {minutes} minutami" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "pred 1 uro" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "pred {hours} urami" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "danes" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "vÄeraj" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "pred {days} dnevi" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "zadnji mesec" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "pred {months} meseci" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "mesecev nazaj" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "lansko leto" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "let nazaj" @@ -256,7 +256,7 @@ msgstr "Zahtevana datoteka {file} ni nameÅ¡Äena!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Souporaba" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -544,7 +544,7 @@ msgstr "DokonÄaj namestitev" msgid "web services under your control" msgstr "spletne storitve pod vaÅ¡im nadzorom" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Odjava" diff --git a/l10n/sl/files.po b/l10n/sl/files.po index 2302abc5376..661f1ee1074 100644 --- a/l10n/sl/files.po +++ b/l10n/sl/files.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n" "MIME-Version: 1.0\n" @@ -21,20 +21,6 @@ msgstr "" "Language: sl\n" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Nobena datoteka ni naložena. Neznana napaka." @@ -70,11 +56,11 @@ msgstr "Manjka zaÄasna mapa" msgid "Failed to write to disk" msgstr "Pisanje na disk je spodletelo" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -82,15 +68,15 @@ msgstr "" msgid "Files" msgstr "Datoteke" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Odstrani iz souporabe" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "IzbriÅ¡i" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Preimenuj" @@ -114,7 +100,7 @@ msgstr "prekliÄi" msgid "replaced {new_name}" msgstr "zamenjano je ime {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "razveljavi" @@ -122,13 +108,9 @@ msgstr "razveljavi" msgid "replaced {new_name} with {old_name}" msgstr "zamenjano ime {new_name} z imenom {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "odstranjeno iz souporabe {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "izbrisano {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -152,86 +134,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "PoÅ¡iljanje ni mogoÄe, saj gre za mapo, ali pa je datoteka velikosti 0 bajtov." -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Napaka med nalaganjem" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Zapri" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "V Äakanju ..." -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "PoÅ¡iljanje 1 datoteke" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "nalagam {count} datotek" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "PoÅ¡iljanje je preklicano." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "V teku je poÅ¡iljanje datoteke. ÄŒe zapustite to stran zdaj, bo poÅ¡iljanje preklicano." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "Naslov URL ne sme biti prazen." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} files scanned" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "napaka med pregledovanjem datotek" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Ime" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Velikost" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Spremenjeno" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 mapa" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} map" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 datoteka" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} datotek" @@ -287,32 +261,40 @@ msgstr "Mapa" msgid "From link" msgstr "Iz povezave" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "PrekliÄi poÅ¡iljanje" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Tukaj ni niÄesar. Naložite kaj!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Prejmi" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Nalaganje ni mogoÄe, ker je preveliko" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Datoteke, ki jih želite naložiti, presegajo najveÄjo dovoljeno velikost na tem strežniku." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Poteka preuÄevanje datotek, poÄakajte ..." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Trenutno poteka preuÄevanje" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/sl/files_trashbin.po b/l10n/sl/files_trashbin.po new file mode 100644 index 00000000000..835ba52d9ab --- /dev/null +++ b/l10n/sl/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: sl\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Ime" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 mapa" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} map" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 datoteka" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} datotek" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/sl/settings.po b/l10n/sl/settings.po index 225f4e3a203..9ed9b294bdd 100644 --- a/l10n/sl/settings.po +++ b/l10n/sl/settings.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n" "MIME-Version: 1.0\n" @@ -79,14 +79,42 @@ msgstr "Uporabnika ni mogoÄe dodati k skupini %s" msgid "Unable to remove user from group %s" msgstr "Uporabnika ni mogoÄe odstraniti iz skupine %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "OnemogoÄi" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "OmogoÄi" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Napaka" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Poteka shranjevanje ..." @@ -115,6 +143,10 @@ msgstr "ObiÅ¡Äite spletno stran programa na apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-z dovoljenjem s strani <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Posodobi" + #: templates/help.php:3 msgid "User Documentation" msgstr "UporabniÅ¡ka dokumentacija" @@ -266,6 +298,14 @@ msgstr "Skrbnik skupine" msgid "Storage" msgstr "Shramba" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "Privzeto" diff --git a/l10n/sl/user_ldap.po b/l10n/sl/user_ldap.po index 9671d69486e..d644dac5e56 100644 --- a/l10n/sl/user_ldap.po +++ b/l10n/sl/user_ldap.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n" "MIME-Version: 1.0\n" @@ -19,6 +19,58 @@ msgstr "" "Language: sl\n" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Brisanje je spodletelo." + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -33,165 +85,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Gostitelj" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Protokol je lahko izpuÅ¡Äen, Äe ni posebej zahtevan SSL. V tem primeru se mora naslov zaÄeti z ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Osnovni DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Osnovni DN za uporabnike in skupine lahko doloÄite v zavihku Napredno" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "Uporabnik DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "DN uporabnikovega odjemalca, s katerim naj se opravi vezava, npr. uid=agent,dc=example,dc=com. Za anonimni dostop sta polji DN in geslo prazni." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Geslo" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Za anonimni dostop sta polji DN in geslo prazni." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filter prijav uporabnikov" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "DoloÄi filter, uporabljen pri prijavi. %%uid nadomesti uporabniÅ¡ko ime za prijavo." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "Uporabite vsebnik %%uid, npr. \"uid=%%uid\"." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Filter seznama uporabnikov" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "DoloÄi filter za uporabo med pridobivanjem uporabnikov." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "Brez kateregakoli vsebnika, npr. \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Filter skupin" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "DoloÄi filter za uporabo med pridobivanjem skupin." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "Brez katerekoli vsebnika, npr. \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Vrata" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Osnovno uporabniÅ¡ko drevo" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Osnovno drevo skupine" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Povezava Älana skupine" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Uporabi TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Uporaba SSL za povezave bo spodletela." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Strežnik LDAP ne upoÅ¡teva velikosti Ärk (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "OnemogoÄi potrditev veljavnosti potrdila SSL." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "V primeru, da povezava deluje le s to možnostjo, uvozite potrdilo SSL iz strežnika LDAP na vaÅ¡ strežnik ownCloud." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Dejanje ni priporoÄeno; uporabljeno naj bo le za preizkuÅ¡anje delovanja." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "v sekundah. Sprememba izprazni predpomnilnik." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Polje za uporabnikovo prikazano ime" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Atribut LDAP, uporabljen pri ustvarjanju uporabniÅ¡kih imen ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Osnovno uporabniÅ¡ko drevo" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Polje za prikazano ime skupine" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Atribut LDAP, uporabljen pri ustvarjanju imen skupin ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Osnovno drevo skupine" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Povezava Älana skupine" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "v bajtih" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "v sekundah. Sprememba izprazni predpomnilnik." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Pustite prazno za uporabniÅ¡ko ime (privzeto). V nasprotnem primeru navedite atribut LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "PomoÄ" diff --git a/l10n/sr/core.po b/l10n/sr/core.po index 80d0ec2de4f..661f59f97b0 100644 --- a/l10n/sr/core.po +++ b/l10n/sr/core.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 15:00+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n" "MIME-Version: 1.0\n" @@ -158,59 +158,59 @@ msgstr "Ðовембар" msgid "December" msgstr "Децембар" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Подешавања" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "пре неколико Ñекунди" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "пре 1 минут" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "пре {minutes} минута" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "Пре једног Ñата" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "Пре {hours} Ñата (Ñати)" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "данаÑ" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "јуче" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "пре {days} дана" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "прошлог меÑеца" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "Пре {months} меÑеца (меÑеци)" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "меÑеци раније" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "прошле године" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "година раније" @@ -255,7 +255,7 @@ msgstr "Потребна датотека {file} није инÑталирана #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Дељење" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -543,7 +543,7 @@ msgstr "Заврши подешавање" msgid "web services under your control" msgstr "веб ÑервиÑи под контролом" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Одјава" diff --git a/l10n/sr/files.po b/l10n/sr/files.po index 06cef3e3222..a234e816481 100644 --- a/l10n/sr/files.po +++ b/l10n/sr/files.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 15:00+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n" "MIME-Version: 1.0\n" @@ -20,20 +20,6 @@ msgstr "" "Language: sr\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -69,11 +55,11 @@ msgstr "ÐедоÑтаје привремена фаÑцикла" msgid "Failed to write to disk" msgstr "Ðе могу да пишем на диÑк" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -81,15 +67,15 @@ msgstr "" msgid "Files" msgstr "Датотеке" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Укини дељење" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Обриши" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Преименуј" @@ -113,7 +99,7 @@ msgstr "откажи" msgid "replaced {new_name}" msgstr "замењено {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "опозови" @@ -121,13 +107,9 @@ msgstr "опозови" msgid "replaced {new_name} with {old_name}" msgstr "замењено {new_name} Ñа {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "укинуто дељење {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "обриÑано {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -151,86 +133,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Ðе могу да отпремим датотеку као фаÑциклу или она има 0 бајтова" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Грешка при отпремању" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Затвори" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Ðа чекању" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "Отпремам 1 датотеку" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "Отпремам {count} датотеке/а" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Отпремање је прекинуто." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Отпремање датотеке је у току. Ðко Ñада напуÑтите Ñтраницу, прекинућете отпремање." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "Скенирано датотека: {count}" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "грешка при Ñкенирању" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Ðазив" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Величина" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Измењено" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 фаÑцикла" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} фаÑцикле/и" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 датотека" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} датотеке/а" @@ -286,32 +260,40 @@ msgstr "фаÑцикла" msgid "From link" msgstr "Са везе" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Прекини отпремање" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Овде нема ничег. Отпремите нешто!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Преузми" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Датотека је превелика" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Датотеке које желите да отпремите прелазе ограничење у величини." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Скенирам датотеке…" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Тренутно Ñкенирање" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/sr/files_trashbin.po b/l10n/sr/files_trashbin.po new file mode 100644 index 00000000000..5274cee524e --- /dev/null +++ b/l10n/sr/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# <theranchcowboy@gmail.com>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: sr\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "врати у претходно Ñтање" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Име" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "ОбриÑано" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 фаÑцикла" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} фаÑцикле/и" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 датотека" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} датотеке/а" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Овде нема ништа. Корпа за отпатке је празна." + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Врати" diff --git a/l10n/sr/files_versions.po b/l10n/sr/files_versions.po index 7c031b84aa7..84371b65544 100644 --- a/l10n/sr/files_versions.po +++ b/l10n/sr/files_versions.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# <theranchcowboy@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-15 00:03+0100\n" -"PO-Revision-Date: 2013-01-14 23:04+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 14:10+0000\n" +"Last-Translator: Rancher <theranchcowboy@gmail.com>\n" "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,12 +20,12 @@ msgstr "" #: js/versions.js:16 msgid "History" -msgstr "" +msgstr "ИÑторија" #: templates/settings.php:3 msgid "Files Versioning" -msgstr "" +msgstr "Прављење верзија датотека" #: templates/settings.php:4 msgid "Enable" -msgstr "" +msgstr "Омогући" diff --git a/l10n/sr/lib.po b/l10n/sr/lib.po index 3b899eb0222..58c80f3e1f1 100644 --- a/l10n/sr/lib.po +++ b/l10n/sr/lib.po @@ -4,14 +4,15 @@ # # Translators: # Ivan Petrović <ivan@ipplusstudio.com>, 2012-2013. +# <theranchcowboy@gmail.com>, 2013. # <theranchcowboy@gmail.com>, 2012. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-24 00:06+0100\n" -"PO-Revision-Date: 2013-01-23 08:24+0000\n" -"Last-Translator: Ivan Petrović <ivan@ipplusstudio.com>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 15:00+0000\n" +"Last-Translator: Rancher <theranchcowboy@gmail.com>\n" "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,47 +20,47 @@ msgstr "" "Language: sr\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: app.php:301 +#: app.php:312 msgid "Help" msgstr "Помоћ" -#: app.php:308 +#: app.php:319 msgid "Personal" msgstr "Лично" -#: app.php:313 +#: app.php:324 msgid "Settings" -msgstr "Подешавања" +msgstr "ПоÑтавке" -#: app.php:318 +#: app.php:329 msgid "Users" msgstr "КориÑници" -#: app.php:325 +#: app.php:336 msgid "Apps" msgstr "Ðпликације" -#: app.php:327 +#: app.php:338 msgid "Admin" -msgstr "ÐдминиÑтрација" +msgstr "ÐдминиÑтратор" -#: files.php:365 +#: files.php:202 msgid "ZIP download is turned off." msgstr "Преузимање ZIP-а је иÑкључено." -#: files.php:366 +#: files.php:203 msgid "Files need to be downloaded one by one." msgstr "Датотеке морате преузимати једну по једну." -#: files.php:366 files.php:391 +#: files.php:203 files.php:228 msgid "Back to Files" msgstr "Ðазад на датотеке" -#: files.php:390 +#: files.php:227 msgid "Selected files too large to generate zip file." msgstr "Изабране датотеке Ñу превелике да биÑте направили ZIP датотеку." -#: helper.php:229 +#: helper.php:226 msgid "couldn't be determined" msgstr "није одређено" @@ -146,11 +147,11 @@ msgstr "%s је доÑтупна. Погледајте <a href=\"%s\">више Ð #: updater.php:77 msgid "up to date" -msgstr "је ажурна." +msgstr "је ажурна" #: updater.php:80 msgid "updates check is disabled" -msgstr "провера ажурирања је онемогућена." +msgstr "провера ажурирања је онемогућена" #: vcategories.php:188 vcategories.php:249 #, php-format diff --git a/l10n/sr/settings.po b/l10n/sr/settings.po index 2d04a031388..64e5a5df379 100644 --- a/l10n/sr/settings.po +++ b/l10n/sr/settings.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n" "MIME-Version: 1.0\n" @@ -77,14 +77,42 @@ msgstr "Ðе могу да додам кориÑника у групу %s" msgid "Unable to remove user from group %s" msgstr "Ðе могу да уклоним кориÑника из групе %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "ИÑкључи" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Укључи" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Грешка" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Чување у току..." @@ -113,6 +141,10 @@ msgstr "Погледајте Ñтраницу Ñа програмима на app msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-лиценцирао <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Ðжурирај" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -264,6 +296,14 @@ msgstr "Управник групе" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/sr/user_ldap.po b/l10n/sr/user_ldap.po index 00ff848a20a..425922382c7 100644 --- a/l10n/sr/user_ldap.po +++ b/l10n/sr/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 21:57+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: sr\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "БриÑање није уÑпело" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Помоћ" diff --git a/l10n/sr/user_webdavauth.po b/l10n/sr/user_webdavauth.po index 8e72a9d363a..764d45ef408 100644 --- a/l10n/sr/user_webdavauth.po +++ b/l10n/sr/user_webdavauth.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# <theranchcowboy@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-15 00:03+0100\n" -"PO-Revision-Date: 2013-01-14 23:04+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 22:10+0000\n" +"Last-Translator: Rancher <theranchcowboy@gmail.com>\n" "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,15 +20,15 @@ msgstr "" #: templates/settings.php:3 msgid "WebDAV Authentication" -msgstr "" +msgstr "WebDAV провера идентитета" #: templates/settings.php:4 msgid "URL: http://" -msgstr "" +msgstr "ÐдреÑа: http://" #: templates/settings.php:6 msgid "" "ownCloud will send the user credentials to this URL. This plugin checks the " "response and will interpret the HTTP statuscodes 401 and 403 as invalid " "credentials, and all other responses as valid credentials." -msgstr "" +msgstr "ownCloud ће поÑлати акредитиве кориÑника на ову адреÑу. Овај прикључак проверава одговор и тумачи HTTP ÑтатуÑне кодове 401 и 403 као неиÑправне акредитиве, а Ñве оÑтале одговоре као иÑправне." diff --git a/l10n/sr@latin/files.po b/l10n/sr@latin/files.po index baa78945561..84495465994 100644 --- a/l10n/sr@latin/files.po +++ b/l10n/sr@latin/files.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Serbian (Latin) (http://www.transifex.com/projects/p/owncloud/language/sr@latin/)\n" "MIME-Version: 1.0\n" @@ -18,20 +18,6 @@ msgstr "" "Language: sr@latin\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -67,11 +53,11 @@ msgstr "Nedostaje privremena fascikla" msgid "Failed to write to disk" msgstr "" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -79,15 +65,15 @@ msgstr "" msgid "Files" msgstr "Fajlovi" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "ObriÅ¡i" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "" @@ -111,7 +97,7 @@ msgstr "" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "" @@ -119,12 +105,8 @@ msgstr "" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -149,86 +131,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Zatvori" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Ime" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "VeliÄina" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Zadnja izmena" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -284,32 +258,40 @@ msgstr "" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Ovde nema niÄeg. PoÅ¡aljite neÅ¡to!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Preuzmi" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "PoÅ¡iljka je prevelika" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Fajlovi koje želite da poÅ¡aljete prevazilaze ograniÄenje maksimalne veliÄine poÅ¡iljke na ovom serveru." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/sr@latin/files_trashbin.po b/l10n/sr@latin/files_trashbin.po new file mode 100644 index 00000000000..358a19f433b --- /dev/null +++ b/l10n/sr@latin/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Serbian (Latin) (http://www.transifex.com/projects/p/owncloud/language/sr@latin/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: sr@latin\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Ime" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/sr@latin/settings.po b/l10n/sr@latin/settings.po index e22f8796d29..693e317cb93 100644 --- a/l10n/sr@latin/settings.po +++ b/l10n/sr@latin/settings.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Serbian (Latin) (http://www.transifex.com/projects/p/owncloud/language/sr@latin/)\n" "MIME-Version: 1.0\n" @@ -76,14 +76,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "" @@ -112,6 +140,10 @@ msgstr "" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -263,6 +295,14 @@ msgstr "" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/sr@latin/user_ldap.po b/l10n/sr@latin/user_ldap.po index c78635ad495..9933827859e 100644 --- a/l10n/sr@latin/user_ldap.po +++ b/l10n/sr@latin/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-18 00:03+0100\n" -"PO-Revision-Date: 2013-01-17 21:57+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Serbian (Latin) (http://www.transifex.com/projects/p/owncloud/language/sr@latin/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: sr@latin\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Pomoć" diff --git a/l10n/sv/core.po b/l10n/sv/core.po index 0df2d492ca5..0e7666126ff 100644 --- a/l10n/sv/core.po +++ b/l10n/sv/core.po @@ -14,8 +14,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n" "MIME-Version: 1.0\n" @@ -162,59 +162,59 @@ msgstr "November" msgid "December" msgstr "December" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Inställningar" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "sekunder sedan" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 minut sedan" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} minuter sedan" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 timme sedan" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} timmar sedan" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "i dag" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "i gÃ¥r" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} dagar sedan" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "förra mÃ¥naden" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} mÃ¥nader sedan" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "mÃ¥nader sedan" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "förra Ã¥ret" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "Ã¥r sedan" @@ -259,11 +259,11 @@ msgstr "Den nödvändiga filen {file} är inte installerad!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Dela" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "Delad" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -547,7 +547,7 @@ msgstr "Avsluta installation" msgid "web services under your control" msgstr "webbtjänster under din kontroll" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Logga ut" diff --git a/l10n/sv/files.po b/l10n/sv/files.po index 8ad64f646e8..0cb97531859 100644 --- a/l10n/sv/files.po +++ b/l10n/sv/files.po @@ -14,8 +14,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 09:25+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 02:10+0000\n" "Last-Translator: Lokal_Profil <lokal_profil@hotmail.com>\n" "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n" "MIME-Version: 1.0\n" @@ -24,20 +24,6 @@ msgstr "" "Language: sv\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "Kunde inte flytta %s - Det finns redan en fil med detta namn" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "Kan inte flytta %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Kan inte byta namn pÃ¥ filen" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Ingen fil uppladdad. Okänt fel" @@ -73,11 +59,11 @@ msgstr "Saknar en tillfällig mapp" msgid "Failed to write to disk" msgstr "Misslyckades spara till disk" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "Inte tillräckligt med lagringsutrymme tillgängligt" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Inte tillräckligt med utrymme tillgängligt" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Felaktig mapp." @@ -85,15 +71,15 @@ msgstr "Felaktig mapp." msgid "Files" msgstr "Filer" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Sluta dela" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Radera" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Byt namn" @@ -117,7 +103,7 @@ msgstr "avbryt" msgid "replaced {new_name}" msgstr "ersatt {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "Ã¥ngra" @@ -125,13 +111,9 @@ msgstr "Ã¥ngra" msgid "replaced {new_name} with {old_name}" msgstr "ersatt {new_name} med {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "stoppad delning {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "raderade {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "utför raderingen" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -155,86 +137,78 @@ msgstr "Ditt lagringsutrymme är fullt, filer kan ej längre laddas upp eller sy msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "Ditt lagringsutrymme är nästan fullt ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "Din nedladdning förbereds. Det kan ta tid om det är stora filer." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Kunde inte ladda upp dina filer eftersom det antingen är en mapp eller har 0 bytes." -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Uppladdningsfel" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Stäng" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Väntar" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 filuppladdning" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} filer laddas upp" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Uppladdning avbruten." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Filuppladdning pÃ¥gÃ¥r. Lämnar du sidan sÃ¥ avbryts uppladdningen." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL kan inte vara tom." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Ogiltigt mappnamn. Användande av 'Shared' är reserverat av ownCloud" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} filer skannade" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "fel vid skanning" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Namn" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Storlek" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Ändrad" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 mapp" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} mappar" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 fil" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} filer" @@ -290,32 +264,40 @@ msgstr "Mapp" msgid "From link" msgstr "FrÃ¥n länk" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "Papperskorgen" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Avbryt uppladdning" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Ingenting här. Ladda upp nÃ¥got!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Ladda ner" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "För stor uppladdning" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Filerna du försöker ladda upp överstiger den maximala storleken för filöverföringar pÃ¥ servern." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Filer skannas, var god vänta" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Aktuell skanning" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "Uppgraderar filsystemets cache..." diff --git a/l10n/sv/files_trashbin.po b/l10n/sv/files_trashbin.po new file mode 100644 index 00000000000..d68d5954fe2 --- /dev/null +++ b/l10n/sv/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# André <lokal_profil@hotmail.com>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: sv\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Namn" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "Raderad" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 mapp" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} mappar" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 fil" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} filer" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "Ingenting här. Din papperskorg är tom!" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "Ã…terskapa" diff --git a/l10n/sv/settings.po b/l10n/sv/settings.po index 3b39b6e2312..9891f7d1ec6 100644 --- a/l10n/sv/settings.po +++ b/l10n/sv/settings.po @@ -3,6 +3,7 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# André <lokal_profil@hotmail.com>, 2013. # Christer Eriksson <post@hc3web.com>, 2012. # Daniel Sandman <revoltism@gmail.com>, 2012. # <hakan.thn@gmail.com>, 2011. @@ -15,9 +16,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 00:50+0000\n" +"Last-Translator: Lokal_Profil <lokal_profil@hotmail.com>\n" "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -83,14 +84,42 @@ msgstr "Kan inte lägga till användare i gruppen %s" msgid "Unable to remove user from group %s" msgstr "Kan inte radera användare frÃ¥n gruppen %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "Kunde inte uppdatera appen" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "Uppdaterar till {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Deaktivera" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Aktivera" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "Var god vänta..." + +#: js/apps.js:84 +msgid "Updating...." +msgstr "Uppdaterar..." + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "Fel uppstod vid uppdatering av appen" + +#: js/apps.js:87 +msgid "Error" +msgstr "Fel" + +#: js/apps.js:90 +msgid "Updated" +msgstr "Uppdaterad" + #: js/personal.js:69 msgid "Saving..." msgstr "Sparar..." @@ -119,6 +148,10 @@ msgstr "Se programsida pÃ¥ apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licensierad av <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Uppdatera" + #: templates/help.php:3 msgid "User Documentation" msgstr "Användardokumentation" @@ -236,7 +269,7 @@ msgstr "Utvecklad av <a href=\"http://ownCloud.org/contact\" target=\"_blank\">o #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "Inloggningsnamn" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -260,7 +293,7 @@ msgstr "Annat" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "Visat namn" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -270,6 +303,14 @@ msgstr "Gruppadministratör" msgid "Storage" msgstr "Lagring" +#: templates/users.php:97 +msgid "change display name" +msgstr "ändra visat namn" + +#: templates/users.php:101 +msgid "set new password" +msgstr "ange nytt lösenord" + #: templates/users.php:137 msgid "Default" msgstr "Förvald" diff --git a/l10n/sv/user_ldap.po b/l10n/sv/user_ldap.po index 4455df0fb2f..1f1237b9af1 100644 --- a/l10n/sv/user_ldap.po +++ b/l10n/sv/user_ldap.po @@ -3,14 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# André <lokal_profil@hotmail.com>, 2013. # Magnus Höglund <magnus@linux.com>, 2012-2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-23 00:05+0100\n" -"PO-Revision-Date: 2013-01-21 15:10+0000\n" -"Last-Translator: Magnus Höglund <magnus@linux.com>\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -18,6 +19,58 @@ msgstr "" "Language: sv\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "Misslyckades med att radera serverinställningen" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "Inställningen är giltig och anslutningen kunde upprättas!" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "Inställningen är ogiltig. Vänligen se ownCloud-loggen för fler detaljer." + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Raderingen misslyckades" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "BehÃ¥ll inställningarna?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "Kunde inte lägga till serverinställning" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "Anslutningstestet lyckades" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "Anslutningstestet misslyckades" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "Vill du verkligen radera den nuvarande serverinställningen?" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "Bekräfta radering" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +85,227 @@ msgid "" msgstr "<b>Varning:</b> PHP LDAP - modulen är inte installerad, serversidan kommer inte att fungera. Kontakta din systemadministratör för installation." #: templates/settings.php:15 +msgid "Server configuration" +msgstr "Serverinställning" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "Lägg till serverinställning" + +#: templates/settings.php:21 msgid "Host" msgstr "Server" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Du behöver inte ange protokoll förutom om du använder SSL. Starta dÃ¥ med ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Start DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "Ett Start DN per rad" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Du kan ange start DN för användare och grupper under fliken Avancerat" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "Användare DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "DN för användaren som skall användas, t.ex. uid=agent, dc=example, dc=com. För anonym Ã¥tkomst, lämna DN och lösenord tomt." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Lösenord" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "För anonym Ã¥tkomst, lämna DN och lösenord tomt." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Filter logga in användare" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Definierar filter att tillämpa vid inloggningsförsök. %% uid ersätter användarnamn i loginÃ¥tgärden." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "använd platshÃ¥llare %%uid, t ex \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Filter lista användare" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Definierar filter att tillämpa vid listning av användare." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "utan platshÃ¥llare, t.ex. \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Gruppfilter" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Definierar filter att tillämpa vid listning av grupper." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "utan platshÃ¥llare, t.ex. \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Bas för användare i katalogtjänst" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "En Användare start DN per rad" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Bas för grupper i katalogtjänst" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "En Grupp start DN per rad" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "Inaktivera huvudserver" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Attribut för gruppmedlemmar" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Använd TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Använd inte för SSL-anslutningar, det kommer inte att fungera." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "LDAP-servern är okänslig för gemener och versaler (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Stäng av verifiering av SSL-certifikat." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Om anslutningen bara fungerar med det här alternativet, importera LDAP-serverns SSL-certifikat i din ownCloud-server." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Rekommenderas inte, använd bara för test. " -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "i sekunder. En förändring tömmer cache." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Attribut för användarnamn" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Attribut som används för att generera användarnamn i ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Bas för användare i katalogtjänst" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "En Användare start DN per rad" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Attribut för gruppnamn" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Attribut som används för att generera gruppnamn i ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Bas för grupper i katalogtjänst" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "En Grupp start DN per rad" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Attribut för gruppmedlemmar" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "i bytes" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "i sekunder. En förändring tömmer cache." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Lämnas tomt för användarnamn (standard). Ange annars ett LDAP/AD-attribut." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Hjälp" diff --git a/l10n/ta_LK/core.po b/l10n/ta_LK/core.po index ec703bdcd4e..08005ae0930 100644 --- a/l10n/ta_LK/core.po +++ b/l10n/ta_LK/core.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Tamil (Sri-Lanka) (http://www.transifex.com/projects/p/owncloud/language/ta_LK/)\n" "MIME-Version: 1.0\n" @@ -156,59 +156,59 @@ msgstr "காரà¯à®¤à¯à®¤à®¿à®•ை" msgid "December" msgstr "மாரà¯à®•ழி" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "அமைபà¯à®ªà¯à®•ளà¯" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "செகà¯à®•னà¯à®•ளà¯à®•à¯à®•௠மà¯à®©à¯" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 நிமிடதà¯à®¤à®¿à®±à¯à®•௠மà¯à®©à¯ " -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{நிமிடஙà¯à®•ளà¯} நிமிடஙà¯à®•ளà¯à®•à¯à®•௠மà¯à®©à¯ " -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 மணிதà¯à®¤à®¿à®¯à®¾à®²à®¤à¯à®¤à®¿à®±à¯à®•௠மà¯à®©à¯" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{மணிதà¯à®¤à®¿à®¯à®¾à®²à®™à¯à®•ளà¯} மணிதà¯à®¤à®¿à®¯à®¾à®²à®™à¯à®•ளிறà¯à®•௠மà¯à®©à¯" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "இனà¯à®±à¯" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "நேறà¯à®±à¯" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{நாடà¯à®•ளà¯} நாடà¯à®•ளà¯à®•à¯à®•௠மà¯à®©à¯" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "கடநà¯à®¤ மாதமà¯" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{மாதஙà¯à®•ளà¯} மாதஙà¯à®•ளிறà¯à®•௠மà¯à®©à¯" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "மாதஙà¯à®•ளà¯à®•à¯à®•௠மà¯à®©à¯" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "கடநà¯à®¤ வரà¯à®Ÿà®®à¯" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "வரà¯à®Ÿà®™à¯à®•ளà¯à®•à¯à®•௠மà¯à®©à¯" @@ -253,7 +253,7 @@ msgstr "தேவைபà¯à®ªà®Ÿà¯à®Ÿ கோபà¯à®ªà¯ {கோபà¯à®ªà¯} à #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "பகிரà¯à®µà¯" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -541,7 +541,7 @@ msgstr "அமைபà¯à®ªà¯ˆ à®®à¯à®Ÿà®¿à®•à¯à®•" msgid "web services under your control" msgstr "உஙà¯à®•ள௠கடà¯à®Ÿà¯à®ªà¯à®ªà®¾à®Ÿà¯à®Ÿà®¿à®©à¯ கீழ௠இணைய சேவைகளà¯" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "விடà¯à®ªà®¤à®¿à®•ை செயà¯à®•" diff --git a/l10n/ta_LK/files.po b/l10n/ta_LK/files.po index 9f5d785083a..392eb89ac49 100644 --- a/l10n/ta_LK/files.po +++ b/l10n/ta_LK/files.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Tamil (Sri-Lanka) (http://www.transifex.com/projects/p/owncloud/language/ta_LK/)\n" "MIME-Version: 1.0\n" @@ -18,20 +18,6 @@ msgstr "" "Language: ta_LK\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "ஒர௠கோபà¯à®ªà¯à®®à¯ பதிவேறà¯à®±à®ªà¯à®ªà®Ÿà®µà®¿à®²à¯à®²à¯ˆ. அறியபà¯à®ªà®Ÿà®¾à®¤ வழà¯" @@ -67,11 +53,11 @@ msgstr "ஒர௠தறà¯à®•ாலிகமான கோபà¯à®ªà¯à®±à¯ˆà®¯à msgid "Failed to write to disk" msgstr "வடà¯à®Ÿà®¿à®²à¯ எழà¯à®¤ à®®à¯à®Ÿà®¿à®¯à®µà®¿à®²à¯à®²à¯ˆ" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -79,15 +65,15 @@ msgstr "" msgid "Files" msgstr "கோபà¯à®ªà¯à®•ளà¯" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "பகிரபà¯à®ªà®Ÿà®¾à®¤à®¤à¯" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "அழிகà¯à®•" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "பெயரà¯à®®à®¾à®±à¯à®±à®®à¯" @@ -111,7 +97,7 @@ msgstr "இரதà¯à®¤à¯ செயà¯à®•" msgid "replaced {new_name}" msgstr "மாறà¯à®±à®ªà¯à®ªà®Ÿà¯à®Ÿà®¤à¯ {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "à®®à¯à®©à¯ செயல௠நீகà¯à®•ம௠" @@ -119,13 +105,9 @@ msgstr "à®®à¯à®©à¯ செயல௠நீகà¯à®•ம௠" msgid "replaced {new_name} with {old_name}" msgstr "{new_name} ஆனத௠{old_name} இனால௠மாறà¯à®±à®ªà¯à®ªà®Ÿà¯à®Ÿà®¤à¯" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "பகிரபà¯à®ªà®Ÿà®¾à®¤à®¤à¯ {கோபà¯à®ªà¯à®•ளà¯}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "நீகà¯à®•பà¯à®ªà®Ÿà¯à®Ÿà®¤à¯ {கோபà¯à®ªà¯à®•ளà¯}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -149,86 +131,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "அடைவ௠அலà¯à®²à®¤à¯ 0 bytes ஠கொணà¯à®Ÿà¯à®³à¯à®³à®¤à®¾à®²à¯ உஙà¯à®•ளà¯à®Ÿà¯ˆà®¯ கோபà¯à®ªà¯ˆ பதிவேறà¯à®± à®®à¯à®Ÿà®¿à®¯à®µà®¿à®²à¯à®²à¯ˆ" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "பதிவேறà¯à®±à®²à¯ வழà¯" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "மூடà¯à®•" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "நிலà¯à®µà¯ˆà®¯à®¿à®²à¯à®³à¯à®³" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 கோபà¯à®ªà¯ பதிவேறà¯à®±à®ªà¯à®ªà®Ÿà¯à®•ிறதà¯" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{எணà¯à®£à®¿à®•à¯à®•ை} கோபà¯à®ªà¯à®•ள௠பதிவேறà¯à®±à®ªà¯à®ªà®Ÿà¯à®•ினà¯à®±à®¤à¯" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "பதிவேறà¯à®±à®²à¯ இரதà¯à®¤à¯ செயà¯à®¯à®ªà¯à®ªà®Ÿà¯à®Ÿà¯à®³à¯à®³à®¤à¯" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "கோபà¯à®ªà¯ பதிவேறà¯à®±à®®à¯ செயலà¯à®ªà®¾à®Ÿà¯à®Ÿà®¿à®²à¯ உளà¯à®³à®¤à¯. இநà¯à®¤à®ªà¯ பகà¯à®•தà¯à®¤à®¿à®²à®¿à®°à¯à®¨à¯à®¤à¯ வெறியேறà¯à®µà®¤à®¾à®©à®¤à¯ பதிவேறà¯à®±à®²à¯ˆ இரதà¯à®¤à¯ செயà¯à®¯à¯à®®à¯." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL வெறà¯à®®à¯ˆà®¯à®¾à®• இரà¯à®•à¯à®•à®®à¯à®Ÿà®¿à®¯à®¾à®¤à¯." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{எணà¯à®£à®¿à®•à¯à®•ை} கோபà¯à®ªà¯à®•ள௠வரà¯à®Ÿà®ªà¯à®ªà®Ÿà¯à®Ÿà®¤à¯" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "வரà¯à®Ÿà¯à®®à¯ போதான வழà¯" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "பெயரà¯" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "அளவà¯" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "மாறà¯à®±à®ªà¯à®ªà®Ÿà¯à®Ÿà®¤à¯" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 கோபà¯à®ªà¯à®±à¯ˆ" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{எணà¯à®£à®¿à®•à¯à®•ை} கோபà¯à®ªà¯à®±à¯ˆà®•ளà¯" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 கோபà¯à®ªà¯" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{எணà¯à®£à®¿à®•à¯à®•ை} கோபà¯à®ªà¯à®•ளà¯" @@ -284,32 +258,40 @@ msgstr "கோபà¯à®ªà¯à®±à¯ˆ" msgid "From link" msgstr "இணைபà¯à®ªà®¿à®²à®¿à®°à¯à®¨à¯à®¤à¯" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "பதிவேறà¯à®±à®²à¯ˆ இரதà¯à®¤à¯ செயà¯à®•" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "இஙà¯à®•௠ஒனà¯à®±à¯à®®à¯ இலà¯à®²à¯ˆ. à®à®¤à®¾à®µà®¤à¯ பதிவேறà¯à®±à¯à®•!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "பதிவிறகà¯à®•à¯à®•" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "பதிவேறà¯à®±à®²à¯ மிகபà¯à®ªà¯†à®°à®¿à®¯à®¤à¯" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "நீஙà¯à®•ள௠பதிவேறà¯à®± à®®à¯à®¯à®±à¯à®šà®¿à®•à¯à®•à¯à®®à¯ கோபà¯à®ªà¯à®•ளானத௠இநà¯à®¤ சேவையகதà¯à®¤à®¿à®²à¯ கோபà¯à®ªà¯ பதிவேறà¯à®±à®•à¯à®•ூடிய ஆககà¯à®•ூடிய அளவிலà¯à®®à¯ கூடியதà¯." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "கோபà¯à®ªà¯à®•ள௠வரà¯à®Ÿà®ªà¯à®ªà®Ÿà¯à®•ினà¯à®±à®©, தயவà¯à®šà¯†à®¯à¯à®¤à¯ காதà¯à®¤à®¿à®°à¯à®™à¯à®•ளà¯." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "தறà¯à®ªà¯‹à®¤à¯ வரà¯à®Ÿà®ªà¯à®ªà®Ÿà¯à®ªà®µà¯ˆ" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/ta_LK/files_trashbin.po b/l10n/ta_LK/files_trashbin.po new file mode 100644 index 00000000000..be19d3c7f33 --- /dev/null +++ b/l10n/ta_LK/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Tamil (Sri-Lanka) (http://www.transifex.com/projects/p/owncloud/language/ta_LK/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ta_LK\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "பெயரà¯" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 கோபà¯à®ªà¯à®±à¯ˆ" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{எணà¯à®£à®¿à®•à¯à®•ை} கோபà¯à®ªà¯à®±à¯ˆà®•ளà¯" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 கோபà¯à®ªà¯" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{எணà¯à®£à®¿à®•à¯à®•ை} கோபà¯à®ªà¯à®•ளà¯" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/ta_LK/settings.po b/l10n/ta_LK/settings.po index 9853ea2645c..04ffdaacb5e 100644 --- a/l10n/ta_LK/settings.po +++ b/l10n/ta_LK/settings.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Tamil (Sri-Lanka) (http://www.transifex.com/projects/p/owncloud/language/ta_LK/)\n" "MIME-Version: 1.0\n" @@ -76,14 +76,42 @@ msgstr "கà¯à®´à¯ %s இல௠பயனாளரை சேரà¯à®•à¯à®• à® msgid "Unable to remove user from group %s" msgstr "கà¯à®´à¯ %s இலிரà¯à®¨à¯à®¤à¯ பயனாளரை நீகà¯à®•à®®à¯à®Ÿà®¿à®¯à®¾à®¤à¯" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "இயலà¯à®®à¯ˆà®ªà¯à®ª" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "செயலறà¯à®±à®¤à®¾à®•à¯à®•à¯à®•" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "வழà¯" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "இயலà¯à®®à¯ˆà®ªà¯à®ªà®Ÿà¯à®¤à¯à®¤à¯à®•" @@ -112,6 +140,10 @@ msgstr "apps.owncloud.com இல௠செயலி பகà¯à®•தà¯à®¤à¯ˆ ப msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"அனà¯à®®à®¤à®¿à®ªà¯à®ªà®¤à¯à®¤à®¿à®°à®®à¯\"></span>-அனà¯à®®à®¤à®¿ பெறà¯à®± <span class=\"ஆசிரியரà¯\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "இறà¯à®±à¯ˆà®ªà¯à®ªà®Ÿà¯à®¤à¯à®¤à®²à¯" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -263,6 +295,14 @@ msgstr "கà¯à®´à¯ நிரà¯à®µà®¾à®•ி" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/ta_LK/user_ldap.po b/l10n/ta_LK/user_ldap.po index 401d69aec01..c9b1c2c58d4 100644 --- a/l10n/ta_LK/user_ldap.po +++ b/l10n/ta_LK/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Tamil (Sri-Lanka) (http://www.transifex.com/projects/p/owncloud/language/ta_LK/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: ta_LK\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "நீகà¯à®•ம௠தோலà¯à®µà®¿à®¯à®Ÿà¯ˆà®¨à¯à®¤à®¤à¯" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "ஓமà¯à®ªà¯à®©à®°à¯" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "நீஙà¯à®•ள௠SSL சேவையை தவிர உடனà¯à®ªà®Ÿà¯ வரைமà¯à®±à¯ˆà®¯à¯ˆ தவிரà¯à®•à¯à®• à®®à¯à®Ÿà®¿à®¯à¯à®®à¯. பிறக௠ldaps:.// உடன௠ஆரமà¯à®ªà®¿à®•à¯à®•வà¯à®®à¯" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "தள DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "நீஙà¯à®•ள௠பயனாளரà¯à®•ளà¯à®•à¯à®•à¯à®®à¯ மேனà¯à®®à¯ˆ ததà¯à®¤à®²à®¿à®²à¯ உளà¯à®³ கà¯à®´à¯à®µà®¿à®±à¯à®•à¯à®®à¯ தள DN ஠கà¯à®±à®¿à®ªà¯à®ªà®¿à®Ÿà®²à®¾à®®à¯ " -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "பயனாளர௠DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "கடவà¯à®šà¯à®šà¯Šà®²à¯" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "எநà¯à®¤ ஒதà¯à®•à¯à®•ீடà¯à®®à¯ இலà¯à®²à®¾à®®à®²à¯, உதாரணமà¯. \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "தà¯à®±à¯ˆ " -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "தள பயனாளர௠மரமà¯" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "தள கà¯à®´à¯ மரமà¯" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "கà¯à®´à¯ உறà¯à®ªà¯à®ªà®¿à®©à®°à¯ சஙà¯à®•à®®à¯" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "TLS ஠பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à®µà¯à®®à¯" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "SSL இணைபà¯à®ªà®¿à®±à¯à®•௠பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à®µà¯‡à®£à¯à®Ÿà®¾à®®à¯, அத௠தோலà¯à®µà®¿à®¯à®Ÿà¯ˆà®¯à¯à®®à¯." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "உணரà¯à®šà¯à®šà®¿à®¯à®¾à®© LDAP சேவையகம௠(சாளரஙà¯à®•ளà¯)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "SSL சானà¯à®±à®¿à®¤à®´à®¿à®©à¯ செலà¯à®²à¯à®ªà®Ÿà®¿à®¯à¯ˆ நிறà¯à®¤à¯à®¤à®¿à®µà®¿à®Ÿà®µà¯à®®à¯" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "இநà¯à®¤ தெரிவà¯à®•ளில௠மடà¯à®Ÿà¯à®®à¯ இணைபà¯à®ªà¯ வேலைசெயà¯à®¤à®¾à®²à¯, உஙà¯à®•ளà¯à®Ÿà¯ˆà®¯ owncloud சேவையகதà¯à®¤à®¿à®²à®¿à®°à¯à®¨à¯à®¤à¯ LDAP சேவையகதà¯à®¤à®¿à®©à¯ SSL சானà¯à®±à®¿à®¤à®´à¯ˆ இறகà¯à®•à¯à®®à®¤à®¿ செயà¯à®¯à®µà¯à®®à¯" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "பரிநà¯à®¤à¯à®°à¯ˆà®•à¯à®•பà¯à®ªà®Ÿà®µà®¿à®²à¯à®²à¯ˆ, சோதனைகà¯à®•ாக மடà¯à®Ÿà¯à®®à¯ பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à®µà¯à®®à¯." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "செகà¯à®•னà¯à®•ளிலà¯. ஒர௠மாறà¯à®±à®®à¯ இடைமாறà¯à®±à¯à®¨à®¿à®©à¯ˆà®µà®•தà¯à®¤à¯ˆ வெறà¯à®±à®¿à®Ÿà®®à®¾à®•à¯à®•à¯à®®à¯." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "பயனாளர௠காடà¯à®šà®¿à®ªà¯à®ªà¯†à®¯à®°à¯ பà¯à®²à®®à¯" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "பயனாளரின௠ownCloud பெயரை உரà¯à®µà®¾à®•à¯à®• LDAP பணà¯à®ªà¯à®•à¯à®•ூறை பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à®µà¯à®®à¯." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "தள பயனாளர௠மரமà¯" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "கà¯à®´à¯à®µà®¿à®©à¯ காடà¯à®šà®¿ பெயர௠பà¯à®²à®®à¯ " -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "ownCloud கà¯à®´à¯à®•à¯à®•ளின௠பெயரà¯à®•ளை உரà¯à®µà®¾à®•à¯à®• LDAP பணà¯à®ªà¯à®•à¯à®•ூறை பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à®µà¯à®®à¯." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "தள கà¯à®´à¯ மரமà¯" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "கà¯à®´à¯ உறà¯à®ªà¯à®ªà®¿à®©à®°à¯ சஙà¯à®•à®®à¯" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "bytes களில௠" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "செகà¯à®•னà¯à®•ளிலà¯. ஒர௠மாறà¯à®±à®®à¯ இடைமாறà¯à®±à¯à®¨à®¿à®©à¯ˆà®µà®•தà¯à®¤à¯ˆ வெறà¯à®±à®¿à®Ÿà®®à®¾à®•à¯à®•à¯à®®à¯." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "பயனாளர௠பெயரிறà¯à®•௠வெறà¯à®±à®¿à®Ÿà®®à®¾à®• விடவà¯à®®à¯ (பொத௠இரà¯à®ªà¯à®ªà¯). இலà¯à®²à®¾à®µà®¿à®Ÿà®¿à®©à¯ LDAP/AD பணà¯à®ªà¯à®•à¯à®•ூறை கà¯à®±à®¿à®ªà¯à®ªà®¿à®Ÿà®µà¯à®®à¯." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "உதவி" diff --git a/l10n/templates/core.pot b/l10n/templates/core.pot index 459384f62ca..6f663178aa4 100644 --- a/l10n/templates/core.pot +++ b/l10n/templates/core.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -155,59 +155,59 @@ msgstr "" msgid "December" msgstr "" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "" -#: js/js.js:762 +#: js/js.js:760 msgid "seconds ago" msgstr "" -#: js/js.js:763 +#: js/js.js:761 msgid "1 minute ago" msgstr "" -#: js/js.js:764 +#: js/js.js:762 msgid "{minutes} minutes ago" msgstr "" -#: js/js.js:765 +#: js/js.js:763 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:764 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:765 msgid "today" msgstr "" -#: js/js.js:768 +#: js/js.js:766 msgid "yesterday" msgstr "" -#: js/js.js:769 +#: js/js.js:767 msgid "{days} days ago" msgstr "" -#: js/js.js:770 +#: js/js.js:768 msgid "last month" msgstr "" -#: js/js.js:771 +#: js/js.js:769 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:770 msgid "months ago" msgstr "" -#: js/js.js:773 +#: js/js.js:771 msgid "last year" msgstr "" -#: js/js.js:774 +#: js/js.js:772 msgid "years ago" msgstr "" @@ -540,7 +540,7 @@ msgstr "" msgid "web services under your control" msgstr "" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "" @@ -562,11 +562,11 @@ msgstr "" msgid "Lost your password?" msgstr "" -#: templates/login.php:39 +#: templates/login.php:41 msgid "remember" msgstr "" -#: templates/login.php:41 +#: templates/login.php:43 msgid "Log in" msgstr "" diff --git a/l10n/templates/files.pot b/l10n/templates/files.pot index 385f79bc971..ae36fd501f5 100644 --- a/l10n/templates/files.pot +++ b/l10n/templates/files.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -17,60 +17,46 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - -#: ajax/upload.php:17 +#: ajax/upload.php:19 msgid "No file was uploaded. Unknown error" msgstr "" -#: ajax/upload.php:24 +#: ajax/upload.php:26 msgid "There is no error, the file uploaded with success" msgstr "" -#: ajax/upload.php:25 +#: ajax/upload.php:27 msgid "" "The uploaded file exceeds the upload_max_filesize directive in php.ini: " msgstr "" -#: ajax/upload.php:27 +#: ajax/upload.php:29 msgid "" "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in " "the HTML form" msgstr "" -#: ajax/upload.php:29 +#: ajax/upload.php:31 msgid "The uploaded file was only partially uploaded" msgstr "" -#: ajax/upload.php:30 +#: ajax/upload.php:32 msgid "No file was uploaded" msgstr "" -#: ajax/upload.php:31 +#: ajax/upload.php:33 msgid "Missing a temporary folder" msgstr "" -#: ajax/upload.php:32 +#: ajax/upload.php:34 msgid "Failed to write to disk" msgstr "" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:52 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:83 msgid "Invalid directory." msgstr "" @@ -78,15 +64,15 @@ msgstr "" msgid "Files" msgstr "" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "" @@ -110,7 +96,7 @@ msgstr "" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "" @@ -118,12 +104,8 @@ msgstr "" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -148,86 +130,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:953 templates/index.php:67 msgid "Name" msgstr "" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:954 templates/index.php:78 msgid "Size" msgstr "" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:955 templates/index.php:80 msgid "Modified" msgstr "" -#: js/files.js:887 +#: js/files.js:974 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:976 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:984 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:986 msgid "{count} files" msgstr "" @@ -283,32 +257,40 @@ msgstr "" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/templates/files_encryption.pot b/l10n/templates/files_encryption.pot index ce76225fda2..64e6d0ded68 100644 --- a/l10n/templates/files_encryption.pot +++ b/l10n/templates/files_encryption.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" diff --git a/l10n/templates/files_external.pot b/l10n/templates/files_external.pot index a46c86e0b65..43f9d2e2965 100644 --- a/l10n/templates/files_external.pot +++ b/l10n/templates/files_external.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -41,13 +41,13 @@ msgstr "" msgid "Error configuring Google Drive storage" msgstr "" -#: lib/config.php:434 +#: lib/config.php:405 msgid "" "<b>Warning:</b> \"smbclient\" is not installed. Mounting of CIFS/SMB shares " "is not possible. Please ask your system administrator to install it." msgstr "" -#: lib/config.php:435 +#: lib/config.php:406 msgid "" "<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 " diff --git a/l10n/templates/files_sharing.pot b/l10n/templates/files_sharing.pot index fa7fe278295..92fc21f0d1f 100644 --- a/l10n/templates/files_sharing.pot +++ b/l10n/templates/files_sharing.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" diff --git a/l10n/templates/files_trashbin.pot b/l10n/templates/files_trashbin.pot new file mode 100644 index 00000000000..0b16639a53d --- /dev/null +++ b/l10n/templates/files_trashbin.pot @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/templates/files_versions.pot b/l10n/templates/files_versions.pot index 5af79d543f4..e785197b7b9 100644 --- a/l10n/templates/files_versions.pot +++ b/l10n/templates/files_versions.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" diff --git a/l10n/templates/lib.pot b/l10n/templates/lib.pot index 01f7eb678c0..9c1b1b4bcfa 100644 --- a/l10n/templates/lib.pot +++ b/l10n/templates/lib.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -17,47 +17,47 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: app.php:301 +#: app.php:312 msgid "Help" msgstr "" -#: app.php:308 +#: app.php:319 msgid "Personal" msgstr "" -#: app.php:313 +#: app.php:324 msgid "Settings" msgstr "" -#: app.php:318 +#: app.php:329 msgid "Users" msgstr "" -#: app.php:325 +#: app.php:336 msgid "Apps" msgstr "" -#: app.php:327 +#: app.php:338 msgid "Admin" msgstr "" -#: files.php:365 +#: files.php:202 msgid "ZIP download is turned off." msgstr "" -#: files.php:366 +#: files.php:203 msgid "Files need to be downloaded one by one." msgstr "" -#: files.php:366 files.php:391 +#: files.php:203 files.php:228 msgid "Back to Files" msgstr "" -#: files.php:390 +#: files.php:227 msgid "Selected files too large to generate zip file." msgstr "" -#: helper.php:229 +#: helper.php:226 msgid "couldn't be determined" msgstr "" diff --git a/l10n/templates/settings.pot b/l10n/templates/settings.pot index c07b99aab76..3e4d268fe83 100644 --- a/l10n/templates/settings.pot +++ b/l10n/templates/settings.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -75,14 +75,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "" @@ -112,6 +140,10 @@ msgid "" "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -262,6 +294,14 @@ msgstr "" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/templates/user_ldap.pot b/l10n/templates/user_ldap.pot index 002852e202d..ac142ab399e 100644 --- a/l10n/templates/user_ldap.pot +++ b/l10n/templates/user_ldap.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -17,6 +17,58 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may " @@ -31,163 +83,225 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. uid=agent," "dc=example,dc=com. For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "" diff --git a/l10n/templates/user_webdavauth.pot b/l10n/templates/user_webdavauth.pot index 4687e50a638..def54daf0e5 100644 --- a/l10n/templates/user_webdavauth.pot +++ b/l10n/templates/user_webdavauth.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" +"POT-Creation-Date: 2013-02-05 00:19+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -25,7 +25,7 @@ msgstr "" msgid "URL: http://" msgstr "" -#: templates/settings.php:6 +#: templates/settings.php:7 msgid "" "ownCloud will send the user credentials to this URL. This plugin checks the " "response and will interpret the HTTP statuscodes 401 and 403 as invalid " diff --git a/l10n/th_TH/core.po b/l10n/th_TH/core.po index e218f60d9af..e890f708a24 100644 --- a/l10n/th_TH/core.po +++ b/l10n/th_TH/core.po @@ -9,9 +9,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-03 03:30+0000\n" +"Last-Translator: AriesAnywhere Anywhere <ariesanywhere@gmail.com>\n" "Language-Team: Thai (Thailand) (http://www.transifex.com/projects/p/owncloud/language/th_TH/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -157,59 +157,59 @@ msgstr "พฤศจิà¸à¸²à¸¢à¸™" msgid "December" msgstr "ธันวาคม" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "ตั้งค่า" -#: js/js.js:762 +#: js/js.js:760 msgid "seconds ago" msgstr "วินาที à¸à¹ˆà¸à¸™à¸«à¸™à¹‰à¸²à¸™à¸µà¹‰" -#: js/js.js:763 +#: js/js.js:761 msgid "1 minute ago" msgstr "1 นาทีà¸à¹ˆà¸à¸™à¸«à¸™à¹‰à¸²à¸™à¸µà¹‰" -#: js/js.js:764 +#: js/js.js:762 msgid "{minutes} minutes ago" msgstr "{minutes} นาทีà¸à¹ˆà¸à¸™à¸«à¸™à¹‰à¸²à¸™à¸µà¹‰" -#: js/js.js:765 +#: js/js.js:763 msgid "1 hour ago" msgstr "1 ชั่วโมงà¸à¹ˆà¸à¸™à¸«à¸™à¹‰à¸²à¸™à¸µà¹‰" -#: js/js.js:766 +#: js/js.js:764 msgid "{hours} hours ago" msgstr "{hours} ชั่วโมงà¸à¹ˆà¸à¸™à¸«à¸™à¹‰à¸²à¸™à¸µà¹‰" -#: js/js.js:767 +#: js/js.js:765 msgid "today" msgstr "วันนี้" -#: js/js.js:768 +#: js/js.js:766 msgid "yesterday" msgstr "เมื่à¸à¸§à¸²à¸™à¸™à¸µà¹‰" -#: js/js.js:769 +#: js/js.js:767 msgid "{days} days ago" msgstr "{day} วันà¸à¹ˆà¸à¸™à¸«à¸™à¹‰à¸²à¸™à¸µà¹‰" -#: js/js.js:770 +#: js/js.js:768 msgid "last month" msgstr "เดืà¸à¸™à¸—ี่à¹à¸¥à¹‰à¸§" -#: js/js.js:771 +#: js/js.js:769 msgid "{months} months ago" msgstr "{months} เดืà¸à¸™à¸à¹ˆà¸à¸™à¸«à¸™à¹‰à¸²à¸™à¸µà¹‰" -#: js/js.js:772 +#: js/js.js:770 msgid "months ago" msgstr "เดืà¸à¸™ ที่ผ่านมา" -#: js/js.js:773 +#: js/js.js:771 msgid "last year" msgstr "ปีที่à¹à¸¥à¹‰à¸§" -#: js/js.js:774 +#: js/js.js:772 msgid "years ago" msgstr "ปี ที่ผ่านมา" @@ -254,11 +254,11 @@ msgstr "ไฟล์ {file} ซึ่งเป็นไฟล์ที่จำà #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "à¹à¸Šà¸£à¹Œ" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "à¹à¸Šà¸£à¹Œà¹à¸¥à¹‰à¸§" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -542,7 +542,7 @@ msgstr "ติดตั้งเรียบร้à¸à¸¢à¹à¸¥à¹‰à¸§" msgid "web services under your control" msgstr "web services under your control" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "à¸à¸à¸à¸ˆà¸²à¸à¸£à¸°à¸šà¸š" @@ -564,11 +564,11 @@ msgstr "à¸à¸£à¸¸à¸“าเปลี่ยนรหัสผ่านขà¸à¸‡à¸„ msgid "Lost your password?" msgstr "ลืมรหัสผ่าน?" -#: templates/login.php:39 +#: templates/login.php:41 msgid "remember" msgstr "จำรหัสผ่าน" -#: templates/login.php:41 +#: templates/login.php:43 msgid "Log in" msgstr "เข้าสู่ระบบ" diff --git a/l10n/th_TH/files.po b/l10n/th_TH/files.po index 3bde97a7e04..2ea3d92a701 100644 --- a/l10n/th_TH/files.po +++ b/l10n/th_TH/files.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 17:20+0000\n" +"POT-Creation-Date: 2013-02-04 00:04+0100\n" +"PO-Revision-Date: 2013-02-03 03:30+0000\n" "Last-Translator: AriesAnywhere Anywhere <ariesanywhere@gmail.com>\n" "Language-Team: Thai (Thailand) (http://www.transifex.com/projects/p/owncloud/language/th_TH/)\n" "MIME-Version: 1.0\n" @@ -19,60 +19,46 @@ msgstr "" "Language: th_TH\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "ไม่สามารถย้าย %s ได้ - ไฟล์ที่ใช้ชื่à¸à¸™à¸µà¹‰à¸¡à¸µà¸à¸¢à¸¹à¹ˆà¹à¸¥à¹‰à¸§" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "ไม่สามารถย้าย %s ได้" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "ไม่สามารถเปลี่ยนชื่à¸à¹„ฟล์ได้" - -#: ajax/upload.php:17 +#: ajax/upload.php:19 msgid "No file was uploaded. Unknown error" msgstr "ยังไม่มีไฟล์ใดที่ถูà¸à¸à¸±à¸žà¹‚หลด เà¸à¸´à¸”ข้à¸à¸œà¸´à¸”พลาดที่ไม่ทราบสาเหตุ" -#: ajax/upload.php:24 +#: ajax/upload.php:26 msgid "There is no error, the file uploaded with success" msgstr "ไม่มีข้à¸à¸œà¸´à¸”พลาดใดๆ ไฟล์ถูà¸à¸à¸±à¸žà¹‚หลดเรียบร้à¸à¸¢à¹à¸¥à¹‰à¸§" -#: ajax/upload.php:25 +#: ajax/upload.php:27 msgid "" "The uploaded file exceeds the upload_max_filesize directive in php.ini: " msgstr "ขนาดไฟล์ที่à¸à¸±à¸žà¹‚หลดมีขนาดเà¸à¸´à¸™ upload_max_filesize ที่ระบุไว้ใน php.ini" -#: ajax/upload.php:27 +#: ajax/upload.php:29 msgid "" "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in " "the HTML form" msgstr "ไฟล์ที่à¸à¸±à¸žà¹‚หลดมีขนาดเà¸à¸´à¸™à¸„ำสั่ง MAX_FILE_SIZE ที่ระบุเà¸à¸²à¹„ว้ในรูปà¹à¸šà¸šà¸„ำสั่งในภาษา HTML" -#: ajax/upload.php:29 +#: ajax/upload.php:31 msgid "The uploaded file was only partially uploaded" msgstr "ไฟล์ที่à¸à¸±à¸žà¹‚หลดยังไม่ได้ถูà¸à¸à¸±à¸žà¹‚หลดà¸à¸¢à¹ˆà¸²à¸‡à¸ªà¸¡à¸šà¸¹à¸£à¸“์" -#: ajax/upload.php:30 +#: ajax/upload.php:32 msgid "No file was uploaded" msgstr "ยังไม่มีไฟล์ที่ถูà¸à¸à¸±à¸žà¹‚หลด" -#: ajax/upload.php:31 +#: ajax/upload.php:33 msgid "Missing a temporary folder" msgstr "à¹à¸Ÿà¹‰à¸¡à¹€à¸à¸à¸ªà¸²à¸£à¸Šà¸±à¹ˆà¸§à¸„ราวเà¸à¸´à¸”à¸à¸²à¸£à¸ªà¸¹à¸à¸«à¸²à¸¢" -#: ajax/upload.php:32 +#: ajax/upload.php:34 msgid "Failed to write to disk" msgstr "เขียนข้à¸à¸¡à¸¹à¸¥à¸¥à¸‡à¹à¸œà¹ˆà¸™à¸”ิสà¸à¹Œà¸¥à¹‰à¸¡à¹€à¸«à¸¥à¸§" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "เหลืà¸à¸žà¸·à¹‰à¸™à¸—ี่ไม่เพียงสำหรับใช้งาน" +#: ajax/upload.php:52 +msgid "Not enough space available" +msgstr "มีพื้นที่เหลืà¸à¹„ม่เพียงพà¸" -#: ajax/upload.php:77 +#: ajax/upload.php:83 msgid "Invalid directory." msgstr "ไดเร็à¸à¸—à¸à¸£à¸µà¹ˆà¹„ม่ถูà¸à¸•้à¸à¸‡" @@ -80,15 +66,15 @@ msgstr "ไดเร็à¸à¸—à¸à¸£à¸µà¹ˆà¹„ม่ถูà¸à¸•้à¸à¸‡" msgid "Files" msgstr "ไฟล์" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "ยà¸à¹€à¸¥à¸´à¸à¸à¸²à¸£à¹à¸Šà¸£à¹Œà¸‚้à¸à¸¡à¸¹à¸¥" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "ลบ" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "เปลี่ยนชื่à¸" @@ -112,7 +98,7 @@ msgstr "ยà¸à¹€à¸¥à¸´à¸" msgid "replaced {new_name}" msgstr "à¹à¸—นที่ {new_name} à¹à¸¥à¹‰à¸§" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "เลิà¸à¸—ำ" @@ -120,13 +106,9 @@ msgstr "เลิà¸à¸—ำ" msgid "replaced {new_name} with {old_name}" msgstr "à¹à¸—นที่ {new_name} ด้วย {old_name} à¹à¸¥à¹‰à¸§" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "ยà¸à¹€à¸¥à¸´à¸à¸à¸²à¸£à¹à¸Šà¸£à¹Œà¹à¸¥à¹‰à¸§ {files} ไฟล์" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "ลบไฟล์à¹à¸¥à¹‰à¸§ {files} ไฟล์" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "ดำเนินà¸à¸²à¸£à¸•ามคำสั่งลบ" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -150,86 +132,78 @@ msgstr "พื้นที่จัดเà¸à¹‡à¸šà¸‚้à¸à¸¡à¸¹à¸¥à¸‚à¸à¸‡à¸„ msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "พื้นที่จัดเà¸à¹‡à¸šà¸‚้à¸à¸¡à¸¹à¸¥à¸‚à¸à¸‡à¸„ุณใà¸à¸¥à¹‰à¹€à¸•็มà¹à¸¥à¹‰à¸§ ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "à¸à¸³à¸¥à¸±à¸‡à¹€à¸•รียมดาวน์โหลดข้à¸à¸¡à¸¹à¸¥ หาà¸à¹„ฟล์มีขนาดใหà¸à¹ˆ à¸à¸²à¸ˆà¹ƒà¸Šà¹‰à¹€à¸§à¸¥à¸²à¸ªà¸±à¸à¸„รู่" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "ไม่สามารถà¸à¸±à¸žà¹‚หลดไฟล์ขà¸à¸‡à¸„ุณได้ เนื่à¸à¸‡à¸ˆà¸²à¸à¹„ฟล์ดังà¸à¸¥à¹ˆà¸²à¸§à¹€à¸›à¹‡à¸™à¹„ดเร็à¸à¸—à¸à¸£à¸µà¹ˆà¸«à¸£à¸·à¸à¸¡à¸µà¸‚นาด 0 ไบต์" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "เà¸à¸´à¸”ข้à¸à¸œà¸´à¸”พลาดในà¸à¸²à¸£à¸à¸±à¸žà¹‚หลด" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "ปิด" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "à¸à¸¢à¸¹à¹ˆà¸£à¸°à¸«à¸§à¹ˆà¸²à¸‡à¸”ำเนินà¸à¸²à¸£" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "à¸à¸³à¸¥à¸±à¸‡à¸à¸±à¸žà¹‚หลดไฟล์ 1 ไฟล์" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "à¸à¸³à¸¥à¸±à¸‡à¸à¸±à¸žà¹‚หลด {count} ไฟล์" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "à¸à¸²à¸£à¸à¸±à¸žà¹‚หลดถูà¸à¸¢à¸à¹€à¸¥à¸´à¸" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "à¸à¸²à¸£à¸à¸±à¸žà¹‚หลดไฟล์à¸à¸³à¸¥à¸±à¸‡à¸à¸¢à¸¹à¹ˆà¹ƒà¸™à¸£à¸°à¸«à¸§à¹ˆà¸²à¸‡à¸”ำเนินà¸à¸²à¸£ à¸à¸²à¸£à¸à¸à¸à¸ˆà¸²à¸à¸«à¸™à¹‰à¸²à¹€à¸§à¹‡à¸šà¸™à¸µà¹‰à¸ˆà¸°à¸—ำให้à¸à¸²à¸£à¸à¸±à¸žà¹‚หลดถูà¸à¸¢à¸à¹€à¸¥à¸´à¸" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL ไม่สามารถเว้นว่างได้" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "ชื่à¸à¹‚ฟลเดà¸à¸£à¹Œà¹„ม่ถูà¸à¸•้à¸à¸‡ à¸à¸²à¸£à¹ƒà¸Šà¹‰à¸‡à¸²à¸™ 'à¹à¸Šà¸£à¹Œ' สงวนไว้สำหรับ Owncloud เท่านั้น" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "สà¹à¸à¸™à¹„ฟล์à¹à¸¥à¹‰à¸§ {count} ไฟล์" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "พบข้à¸à¸œà¸´à¸”พลาดในระหว่างà¸à¸²à¸£à¸ªà¹à¸à¸™à¹„ฟล์" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "ชื่à¸" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "ขนาด" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "ปรับปรุงล่าสุด" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 โฟลเดà¸à¸£à¹Œ" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} โฟลเดà¸à¸£à¹Œ" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 ไฟล์" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} ไฟล์" @@ -285,32 +259,40 @@ msgstr "à¹à¸Ÿà¹‰à¸¡à¹€à¸à¸à¸ªà¸²à¸£" msgid "From link" msgstr "จาà¸à¸¥à¸´à¸‡à¸à¹Œ" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "ถังขยะ" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "ยà¸à¹€à¸¥à¸´à¸à¸à¸²à¸£à¸à¸±à¸žà¹‚หลด" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "ยังไม่มีไฟล์ใดๆà¸à¸¢à¸¹à¹ˆà¸—ี่นี่ à¸à¸£à¸¸à¸“าà¸à¸±à¸žà¹‚หลดไฟล์!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "ดาวน์โหลด" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "ไฟล์ที่à¸à¸±à¸žà¹‚หลดมีขนาดใหà¸à¹ˆà¹€à¸à¸´à¸™à¹„ป" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "ไฟล์ที่คุณพยายามที่จะà¸à¸±à¸žà¹‚หลดมีขนาดเà¸à¸´à¸™à¸à¸§à¹ˆà¸²à¸‚นาดสูงสุดที่à¸à¸³à¸«à¸™à¸”ไว้ให้à¸à¸±à¸žà¹‚หลดได้สำหรับเซิร์ฟเวà¸à¸£à¹Œà¸™à¸µà¹‰" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "ไฟล์à¸à¸³à¸¥à¸±à¸‡à¸à¸¢à¸¹à¹ˆà¸£à¸°à¸«à¸§à¹ˆà¸²à¸‡à¸à¸²à¸£à¸ªà¹à¸à¸™, à¸à¸£à¸¸à¸“ารà¸à¸ªà¸±à¸à¸„รู่." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "ไฟล์ที่à¸à¸³à¸¥à¸±à¸‡à¸ªà¹à¸à¸™à¸à¸¢à¸¹à¹ˆà¸‚ณะนี้" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "à¸à¸³à¸¥à¸±à¸‡à¸à¸±à¸žà¹€à¸à¸£à¸”หน่วยความจำà¹à¸„ชขà¸à¸‡à¸£à¸°à¸šà¸šà¹„ฟล์..." diff --git a/l10n/th_TH/files_trashbin.po b/l10n/th_TH/files_trashbin.po new file mode 100644 index 00000000000..86d6b648284 --- /dev/null +++ b/l10n/th_TH/files_trashbin.po @@ -0,0 +1,55 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# AriesAnywhere Anywhere <ariesanywhere@gmail.com>, 2013. +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Thai (Thailand) (http://www.transifex.com/projects/p/owncloud/language/th_TH/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: th_TH\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "ดำเนินà¸à¸²à¸£à¸„ืนค่า" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "ชื่à¸" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "ลบà¹à¸¥à¹‰à¸§" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 โฟลเดà¸à¸£à¹Œ" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} โฟลเดà¸à¸£à¹Œ" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 ไฟล์" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} ไฟล์" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "ไม่มีà¸à¸°à¹„รà¸à¸¢à¸¹à¹ˆà¹ƒà¸™à¸™à¸µà¹‰ ถังขยะขà¸à¸‡à¸„ุณยังว่างà¸à¸¢à¸¹à¹ˆ" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "คืนค่า" diff --git a/l10n/th_TH/settings.po b/l10n/th_TH/settings.po index 238a91cd1dc..21602086ef1 100644 --- a/l10n/th_TH/settings.po +++ b/l10n/th_TH/settings.po @@ -10,9 +10,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-03 03:30+0000\n" +"Last-Translator: AriesAnywhere Anywhere <ariesanywhere@gmail.com>\n" "Language-Team: Thai (Thailand) (http://www.transifex.com/projects/p/owncloud/language/th_TH/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -78,14 +78,42 @@ msgstr "ไม่สามารถเพิ่มผู้ใช้งานเ msgid "Unable to remove user from group %s" msgstr "ไม่สามารถลบผู้ใช้งานà¸à¸à¸à¸ˆà¸²à¸à¸à¸¥à¸¸à¹ˆà¸¡ %s ได้" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "ไม่สามารถà¸à¸±à¸žà¹€à¸”ทà¹à¸à¸›à¸¯" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "à¸à¸±à¸žà¹€à¸”ทไปเป็นรุ่น {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "ปิดใช้งาน" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "เปิดใช้งาน" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "à¸à¸£à¸¸à¸“ารà¸à¸ªà¸±à¸à¸„รู่..." + +#: js/apps.js:84 +msgid "Updating...." +msgstr "à¸à¸³à¸¥à¸±à¸‡à¸à¸±à¸žà¹€à¸”ทข้à¸à¸¡à¸¹à¸¥..." + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "เà¸à¸´à¸”ข้à¸à¸œà¸´à¸”พลาดในระหว่างà¸à¸²à¸£à¸à¸±à¸žà¹€à¸”ทà¹à¸à¸›à¸¯" + +#: js/apps.js:87 +msgid "Error" +msgstr "ข้à¸à¸œà¸´à¸”พลาด" + +#: js/apps.js:90 +msgid "Updated" +msgstr "à¸à¸±à¸žà¹€à¸”ทà¹à¸¥à¹‰à¸§" + #: js/personal.js:69 msgid "Saving..." msgstr "à¸à¸³à¸¥à¸±à¸‡à¸šà¸±à¸™à¸—ึุà¸à¸‚้à¸à¸¡à¸¹à¸¥..." @@ -114,6 +142,10 @@ msgstr "ดูหน้าà¹à¸à¸žà¸žà¸¥à¸´à¹€à¸„ชั่นที่ apps.own msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-ลิขสิทธิ์à¸à¸²à¸£à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¹‚ดย <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "à¸à¸±à¸žà¹€à¸”ท" + #: templates/help.php:3 msgid "User Documentation" msgstr "เà¸à¸à¸ªà¸²à¸£à¸„ู่มืà¸à¸à¸²à¸£à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¸ªà¸³à¸«à¸£à¸±à¸šà¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™" @@ -231,7 +263,7 @@ msgstr "พัฒนาโดย the <a href=\"http://ownCloud.org/contact\" tar #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "ชื่à¸à¸—ี่ใช้สำหรับเข้าสู่ระบบ" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -255,7 +287,7 @@ msgstr "à¸à¸·à¹ˆà¸™à¹†" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "ชื่à¸à¸—ี่ต้à¸à¸‡à¸à¸²à¸£à¹à¸ªà¸”ง" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -265,6 +297,14 @@ msgstr "ผู้ดูà¹à¸¥à¸à¸¥à¸¸à¹ˆà¸¡" msgid "Storage" msgstr "พื้นที่จัดเà¸à¹‡à¸šà¸‚้à¸à¸¡à¸¹à¸¥" +#: templates/users.php:97 +msgid "change display name" +msgstr "เปลี่ยนชื่à¸à¸—ี่ต้à¸à¸‡à¸à¸²à¸£à¹ƒà¸«à¹‰à¹à¸ªà¸”ง" + +#: templates/users.php:101 +msgid "set new password" +msgstr "ตั้งค่ารหัสผ่านใหม่" + #: templates/users.php:137 msgid "Default" msgstr "ค่าเริ่มต้น" diff --git a/l10n/th_TH/user_ldap.po b/l10n/th_TH/user_ldap.po index bb0c9b64412..549b4b971bc 100644 --- a/l10n/th_TH/user_ldap.po +++ b/l10n/th_TH/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-23 00:05+0100\n" -"PO-Revision-Date: 2013-01-22 01:21+0000\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-03 04:40+0000\n" "Last-Translator: AriesAnywhere Anywhere <ariesanywhere@gmail.com>\n" "Language-Team: Thai (Thailand) (http://www.transifex.com/projects/p/owncloud/language/th_TH/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: th_TH\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "à¸à¸²à¸£à¸¥à¸šà¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าเซิร์ฟเวà¸à¸£à¹Œà¸¥à¹‰à¸¡à¹€à¸«à¸¥à¸§" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "à¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าถูà¸à¸•้à¸à¸‡à¹à¸¥à¸°à¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¸ªà¸²à¸¡à¸²à¸£à¸–เชื่à¸à¸¡à¸•่à¸à¹„ด้!" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "à¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าถูà¸à¸•้à¸à¸‡, à¹à¸•่à¸à¸²à¸£à¸œà¸¹à¸à¸‚้à¸à¸¡à¸¹à¸¥à¸¥à¹‰à¸¡à¹€à¸«à¸¥à¸§, à¸à¸£à¸¸à¸“าตรวจสà¸à¸šà¸à¸²à¸£à¸•ั้งค่าเซิร์ฟเวà¸à¸£à¹Œà¹à¸¥à¸°à¸‚้à¸à¸¡à¸¹à¸¥à¸à¸²à¸£à¹€à¸‚้าใช้งาน" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "à¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าไม่ถูà¸à¸•้à¸à¸‡ à¸à¸£à¸¸à¸“าดูรายละเà¸à¸µà¸¢à¸”จาà¸à¸šà¸±à¸™à¸—ึà¸à¸à¸²à¸£à¹€à¸›à¸¥à¸µà¹ˆà¸¢à¸™à¹à¸›à¸¥à¸‡à¸‚à¸à¸‡ ownCloud สำหรับรายละเà¸à¸µà¸¢à¸”เพิ่มเติม" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "à¸à¸²à¸£à¸¥à¸šà¸—ิ้งล้มเหลว" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "รัà¸à¸©à¸²à¸à¸²à¸£à¸•ั้งค่าไว้?" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "ไม่สามารถเพิ่มค่าà¸à¸³à¸«à¸™à¸”เซิร์ฟเวà¸à¸£à¹Œà¹„ด้" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "ทดสà¸à¸šà¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¸ªà¸³à¹€à¸£à¹‡à¸ˆ" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "ทดสà¸à¸šà¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¸¥à¹‰à¸¡à¹€à¸«à¸¥à¸§" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "คุณà¹à¸™à¹ˆà¹ƒà¸ˆà¹à¸¥à¹‰à¸§à¸«à¸£à¸·à¸à¸§à¹ˆà¸²à¸•้à¸à¸‡à¸à¸²à¸£à¸¥à¸šà¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าเซิร์ฟเวà¸à¸£à¹Œà¸›à¸±à¸ˆà¸ˆà¸¸à¸šà¸±à¸™à¸—ิ้งไป?" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "ยืนยันà¸à¸²à¸£à¸¥à¸šà¸—ิ้ง" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "<b>คำเตืà¸à¸™:</b> โมดูล PHP LDAP ยังไม่ได้ถูà¸à¸•ิดตั้ง, ระบบด้านหลังจะไม่สามารถทำงานได้ à¸à¸£à¸¸à¸“าติดต่à¸à¸œà¸¹à¹‰à¸”ูà¹à¸¥à¸£à¸°à¸šà¸šà¸‚à¸à¸‡à¸„ุณเพื่à¸à¸—ำà¸à¸²à¸£à¸•ิดตั้งโมดูลดังà¸à¸¥à¹ˆà¸²à¸§" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "à¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าเซิร์ฟเวà¸à¸£à¹Œ" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "เพิ่มà¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ค่าเซิร์ฟเวà¸à¸£à¹Œ" + +#: templates/settings.php:21 msgid "Host" msgstr "โฮสต์" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "คุณสามารถปล่à¸à¸¢à¸Šà¹ˆà¸à¸‡à¹‚ปรโตคà¸à¸¥à¹€à¸§à¹‰à¸™à¹„ว้ได้, ยà¸à¹€à¸§à¹‰à¸™à¸à¸£à¸“ีที่คุณต้à¸à¸‡à¸à¸²à¸£à¹ƒà¸Šà¹‰ SSL จาà¸à¸™à¸±à¹‰à¸™à¹€à¸£à¸´à¹ˆà¸¡à¸•้นด้วย ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "DN à¸à¸²à¸™" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "หนึ่ง Base DN ต่à¸à¸šà¸£à¸£à¸—ัด" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "คุณสามารถระบุ DN หลัà¸à¸ªà¸³à¸«à¸£à¸±à¸šà¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¹à¸¥à¸°à¸à¸¥à¸¸à¹ˆà¸¡à¸•่างๆในà¹à¸—็บขั้นสูงได้" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN ขà¸à¸‡à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "DN ขà¸à¸‡à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¸—ี่เป็นลูà¸à¸„้าà¸à¸°à¹„รà¸à¹‡à¸•ามที่ผูà¸à¸à¸¢à¸¹à¹ˆà¸”้วย เช่น uid=agent, dc=example, dc=com, สำหรับà¸à¸²à¸£à¹€à¸‚้าถึงโดยบุคคลนิรนาม, ให้เว้นว่าง DN à¹à¸¥à¸° รหัสผ่านเà¸à¸²à¹„ว้" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "รหัสผ่าน" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "สำหรับà¸à¸²à¸£à¹€à¸‚้าถึงโดยบุคคลนิรนาม ให้เว้นว่าง DN à¹à¸¥à¸°à¸£à¸«à¸±à¸ªà¸œà¹ˆà¸²à¸™à¹„ว้" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "ตัวà¸à¸£à¸à¸‡à¸‚้à¸à¸¡à¸¹à¸¥à¸à¸²à¸£à¹€à¸‚้าสู่ระบบขà¸à¸‡à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "à¸à¸³à¸«à¸™à¸”ตัวà¸à¸£à¸à¸‡à¸‚้à¸à¸¡à¸¹à¸¥à¸—ี่ต้à¸à¸‡à¸à¸²à¸£à¸™à¸³à¹„ปใช้งาน, เมื่à¸à¸¡à¸µà¸„วามพยายามในà¸à¸²à¸£à¹€à¸‚้าสู่ระบบ %%uid จะถูà¸à¸™à¸³à¹„ปà¹à¸—นที่ชื่à¸à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¹ƒà¸™à¸à¸²à¸£à¸à¸£à¸°à¸—ำขà¸à¸‡à¸à¸²à¸£à¹€à¸‚้าสู่ระบบ" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "ใช้ตัวยึด %%uid, เช่น \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "ตัวà¸à¸£à¸à¸‡à¸‚้à¸à¸¡à¸¹à¸¥à¸£à¸²à¸¢à¸Šà¸·à¹ˆà¸à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "ระบุตัวà¸à¸£à¸à¸‡à¸‚้à¸à¸¡à¸¹à¸¥à¸—ี่ต้à¸à¸‡à¸à¸²à¸£à¸™à¸³à¹„ปใช้งาน, เมื่à¸à¸”ึงข้à¸à¸¡à¸¹à¸¥à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "โดยไม่ต้à¸à¸‡à¸¡à¸µà¸•ัวยึดใดๆ, เช่น \"objectClass=person\"," -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "ตัวà¸à¸£à¸à¸‡à¸‚้à¸à¸¡à¸¹à¸¥à¸à¸¥à¸¸à¹ˆà¸¡" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "ระบุตัวà¸à¸£à¸à¸‡à¸‚้à¸à¸¡à¸¹à¸¥à¸—ี่ต้à¸à¸‡à¸à¸²à¸£à¸™à¸³à¹„ปใช้งาน, เมื่à¸à¸”ึงข้à¸à¸¡à¸¹à¸¥à¸à¸¥à¸¸à¹ˆà¸¡" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "โดยไม่ต้à¸à¸‡à¸¡à¸µà¸•ัวยึดใดๆ, เช่น \"objectClass=posixGroup\"," -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "ตั้งค่าà¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "พà¸à¸£à¹Œà¸•" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "รายà¸à¸²à¸£à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¸«à¸¥à¸±à¸à¹à¸šà¸š Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" -msgstr "หนึ่ง User Base DN ต่à¸à¸šà¸£à¸£à¸—ัด" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." +msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "รายà¸à¸²à¸£à¸à¸¥à¸¸à¹ˆà¸¡à¸«à¸¥à¸±à¸à¹à¸šà¸š Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" -msgstr "หนึ่ง Group Base DN ต่à¸à¸šà¸£à¸£à¸—ัด" +#: templates/settings.php:37 +msgid "Disable Main Server" +msgstr "ปิดใช้งานเซิร์ฟเวà¸à¸£à¹Œà¸«à¸¥à¸±à¸" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "ความสัมพันธ์ขà¸à¸‡à¸ªà¸¡à¸²à¸Šà¸´à¸à¹ƒà¸™à¸à¸¥à¸¸à¹ˆà¸¡" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "ใช้ TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "à¸à¸£à¸¸à¸“าà¸à¸¢à¹ˆà¸²à¹ƒà¸Šà¹‰à¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¹à¸šà¸š SSL à¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¸ˆà¸°à¹€à¸à¸´à¸”à¸à¸²à¸£à¸¥à¹‰à¸¡à¹€à¸«à¸¥à¸§" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "เซิร์ฟเวà¸à¸£à¹Œ LDAP ประเภท Case insensitive (วินโดวส์)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "ปิดใช้งานà¸à¸²à¸£à¸•รวจสà¸à¸šà¸„วามถูà¸à¸•้à¸à¸‡à¸‚à¸à¸‡à¹ƒà¸šà¸£à¸±à¸šà¸£à¸à¸‡à¸„วามปลà¸à¸”ภัย SSL" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "หาà¸à¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¸ªà¸²à¸¡à¸²à¸£à¸–ทำงานได้เฉพาะà¸à¸±à¸šà¸•ัวเลืà¸à¸à¸™à¸µà¹‰à¹€à¸—่านั้น, ให้นำเข้าข้à¸à¸¡à¸¹à¸¥à¹ƒà¸šà¸£à¸±à¸šà¸£à¸à¸‡à¸„วามปลà¸à¸”ภัยà¹à¸šà¸š SSL ขà¸à¸‡à¹€à¸‹à¸´à¸£à¹Œà¸Ÿà¹€à¸§à¸à¸£à¹Œ LDAP ดังà¸à¸¥à¹ˆà¸²à¸§à¹€à¸‚้าไปไว้ในเซิร์ฟเวà¸à¸£à¹Œ ownCloud" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "ไม่à¹à¸™à¸°à¸™à¸³à¹ƒà¸«à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™, ใช้สำหรับà¸à¸²à¸£à¸—ดสà¸à¸šà¹€à¸—่านั้น" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "ในà¸à¸µà¸à¹„ม่à¸à¸µà¹ˆà¸§à¸´à¸™à¸²à¸—ี ระบบจะเปลี่ยนà¹à¸›à¸¥à¸‡à¸‚้à¸à¸¡à¸¹à¸¥à¹ƒà¸™à¹à¸„ชให้ว่างเปล่า" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "ตั้งค่าไดเร็à¸à¸—à¸à¸£à¸µà¹ˆ" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "ช่à¸à¸‡à¹à¸ªà¸”งชื่à¸à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¸—ี่ต้à¸à¸‡à¸à¸²à¸£" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "คุณลัà¸à¸©à¸“ะ LDAP ที่ต้à¸à¸‡à¸à¸²à¸£à¹ƒà¸Šà¹‰à¸ªà¸³à¸«à¸£à¸±à¸šà¸ªà¸£à¹‰à¸²à¸‡à¸Šà¸·à¹ˆà¸à¸‚à¸à¸‡à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™ ownCloud" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "รายà¸à¸²à¸£à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¸«à¸¥à¸±à¸à¹à¸šà¸š Tree" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "หนึ่ง User Base DN ต่à¸à¸šà¸£à¸£à¸—ัด" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "คุณลัà¸à¸©à¸“ะà¸à¸²à¸£à¸„้นหาชื่à¸à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "ตัวเลืà¸à¸à¹€à¸žà¸´à¹ˆà¸¡à¹€à¸•ิม; หนึ่งคุณลัà¸à¸©à¸“ะต่à¸à¸šà¸£à¸£à¸—ัด" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "ช่à¸à¸‡à¹à¸ªà¸”งชื่à¸à¸à¸¥à¸¸à¹ˆà¸¡à¸—ี่ต้à¸à¸‡à¸à¸²à¸£" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "คุณลัà¸à¸©à¸“ะ LDAP ที่ต้à¸à¸‡à¸à¸²à¸£à¹ƒà¸Šà¹‰à¸ªà¸£à¹‰à¸²à¸‡à¸Šà¸·à¹ˆà¸à¸à¸¥à¸¸à¹ˆà¸¡à¸‚à¸à¸‡ ownCloud" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "รายà¸à¸²à¸£à¸à¸¥à¸¸à¹ˆà¸¡à¸«à¸¥à¸±à¸à¹à¸šà¸š Tree" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "หนึ่ง Group Base DN ต่à¸à¸šà¸£à¸£à¸—ัด" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "คุณลัà¸à¸©à¸“ะà¸à¸²à¸£à¸„้นหาà¹à¸šà¸šà¸à¸¥à¸¸à¹ˆà¸¡" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "ความสัมพันธ์ขà¸à¸‡à¸ªà¸¡à¸²à¸Šà¸´à¸à¹ƒà¸™à¸à¸¥à¸¸à¹ˆà¸¡" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "คุณลัà¸à¸©à¸“ะพิเศษ" + +#: templates/settings.php:56 msgid "in bytes" msgstr "ในหน่วยไบต์" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "ในà¸à¸µà¸à¹„ม่à¸à¸µà¹ˆà¸§à¸´à¸™à¸²à¸—ี ระบบจะเปลี่ยนà¹à¸›à¸¥à¸‡à¸‚้à¸à¸¡à¸¹à¸¥à¹ƒà¸™à¹à¸„ชให้ว่างเปล่า" - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "เว้นว่างไว้สำหรับ ชื่à¸à¸œà¸¹à¹‰à¹ƒà¸Šà¹‰ (ค่าเริ่มต้น) หรืà¸à¹„ม่à¸à¸£à¸¸à¸“าระบุคุณลัà¸à¸©à¸“ะขà¸à¸‡ LDAP/AD" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "ช่วยเหลืà¸" diff --git a/l10n/tr/core.po b/l10n/tr/core.po index 1f3b9f92bc3..ed983c565f0 100644 --- a/l10n/tr/core.po +++ b/l10n/tr/core.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Turkish (http://www.transifex.com/projects/p/owncloud/language/tr/)\n" "MIME-Version: 1.0\n" @@ -160,59 +160,59 @@ msgstr "Kasım" msgid "December" msgstr "Aralık" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Ayarlar" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "saniye önce" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 dakika önce" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} dakika önce" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 saat önce" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} saat önce" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "bugün" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "dün" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} gün önce" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "geçen ay" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} ay önce" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "ay önce" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "geçen yıl" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "yıl önce" @@ -257,7 +257,7 @@ msgstr "İhtiyaç duyulan {file} dosyası kurulu deÄŸil." #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "PaylaÅŸ" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -545,7 +545,7 @@ msgstr "Kurulumu tamamla" msgid "web services under your control" msgstr "kontrolünüzdeki web servisleri" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Çıkış yap" diff --git a/l10n/tr/files.po b/l10n/tr/files.po index c6e1b108a7c..322d36729b4 100644 --- a/l10n/tr/files.po +++ b/l10n/tr/files.po @@ -13,8 +13,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Turkish (http://www.transifex.com/projects/p/owncloud/language/tr/)\n" "MIME-Version: 1.0\n" @@ -23,20 +23,6 @@ msgstr "" "Language: tr\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "%s taşınamadı. Bu isimde dosya zaten var." - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "%s taşınamadı" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "Dosya adı deÄŸiÅŸtirilemedi" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Dosya yüklenmedi. Bilinmeyen hata" @@ -72,11 +58,11 @@ msgstr "Geçici bir klasör eksik" msgid "Failed to write to disk" msgstr "Diske yazılamadı" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "Yeterli disk alanı yok" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "Geçersiz dizin." @@ -84,15 +70,15 @@ msgstr "Geçersiz dizin." msgid "Files" msgstr "Dosyalar" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Paylaşılmayan" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Sil" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "İsim deÄŸiÅŸtir." @@ -116,7 +102,7 @@ msgstr "iptal" msgid "replaced {new_name}" msgstr "deÄŸiÅŸtirilen {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "geri al" @@ -124,13 +110,9 @@ msgstr "geri al" msgid "replaced {new_name} with {old_name}" msgstr "{new_name} ismi {old_name} ile deÄŸiÅŸtirildi" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "paylaşılmamış {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "silinen {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -154,86 +136,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "İndirmeniz hazırlanıyor. Dosya büyük ise biraz zaman alabilir." -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Dosyanızın boyutu 0 byte olduÄŸundan veya bir dizin olduÄŸundan yüklenemedi" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Yükleme hatası" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Kapat" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Bekliyor" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 dosya yüklendi" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} dosya yükleniyor" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Yükleme iptal edildi." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "Dosya yükleme iÅŸlemi sürüyor. Åžimdi sayfadan ayrılırsanız iÅŸleminiz iptal olur." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL boÅŸ olamaz." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "Geçersiz dizin adı. Shared isminin kullanımı Owncloud tarafından rezerver edilmiÅŸtir." -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} dosya tarandı" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "tararamada hata oluÅŸdu" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Ad" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Boyut" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "DeÄŸiÅŸtirilme" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 dizin" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} dizin" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 dosya" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} dosya" @@ -289,32 +263,40 @@ msgstr "Klasör" msgid "From link" msgstr "BaÄŸlantıdan" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Yüklemeyi iptal et" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Burada hiçbir ÅŸey yok. BirÅŸeyler yükleyin!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "İndir" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Yüklemeniz çok büyük" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Yüklemeye çalıştığınız dosyalar bu sunucudaki maksimum yükleme boyutunu aşıyor." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Dosyalar taranıyor, lütfen bekleyin." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Güncel tarama" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/tr/files_trashbin.po b/l10n/tr/files_trashbin.po new file mode 100644 index 00000000000..e987986453c --- /dev/null +++ b/l10n/tr/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Turkish (http://www.transifex.com/projects/p/owncloud/language/tr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: tr\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "İsim" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 dizin" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} dizin" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 dosya" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} dosya" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/tr/settings.po b/l10n/tr/settings.po index 0fb46fd329c..15b5cc3f9e8 100644 --- a/l10n/tr/settings.po +++ b/l10n/tr/settings.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Turkish (http://www.transifex.com/projects/p/owncloud/language/tr/)\n" "MIME-Version: 1.0\n" @@ -79,14 +79,42 @@ msgstr "Kullanıcı %s grubuna eklenemiyor" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Etkin deÄŸil" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Etkin" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Hata" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Kaydediliyor..." @@ -115,6 +143,10 @@ msgstr "Uygulamanın sayfasına apps.owncloud.com adresinden bakın " msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "Güncelleme" + #: templates/help.php:3 msgid "User Documentation" msgstr "Kullanıcı Belgelendirmesi" @@ -266,6 +298,14 @@ msgstr "Yönetici Grubu " msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/tr/user_ldap.po b/l10n/tr/user_ldap.po index 306152d4493..6a5f2430b1c 100644 --- a/l10n/tr/user_ldap.po +++ b/l10n/tr/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Turkish (http://www.transifex.com/projects/p/owncloud/language/tr/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: tr\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Silme baÅŸarısız oldu" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Konak" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Base DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "User DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Parola" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Anonim eriÅŸim için DN ve Parola alanlarını boÅŸ bırakın." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Kullanıcı Oturum Açma Süzgeci" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "%%uid yer tutucusunu kullanın, örneÄŸin \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Kullanıcı Liste Süzgeci" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "bir yer tutucusu olmadan, örneÄŸin \"objectClass=person\"" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Grup Süzgeci" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Port" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Temel Kullanıcı AÄŸacı" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Temel Grup AÄŸacı" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Grup-Üye iÅŸbirliÄŸi" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "TLS kullan" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "SSL baÄŸlantıları ile kullanmayın, baÅŸarısız olacaktır." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "SSL sertifika doÄŸrulamasını kapat." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Önerilmez, sadece test için kullanın." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "saniye cinsinden. Bir deÄŸiÅŸiklik önbelleÄŸi temizleyecektir." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Temel Kullanıcı AÄŸacı" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Temel Grup AÄŸacı" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Grup-Üye iÅŸbirliÄŸi" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "byte cinsinden" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "saniye cinsinden. Bir deÄŸiÅŸiklik önbelleÄŸi temizleyecektir." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Kullanıcı adı bölümünü boÅŸ bırakın (varsayılan). " -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Yardım" diff --git a/l10n/uk/core.po b/l10n/uk/core.po index 55b74a2fc05..5b2fb82733e 100644 --- a/l10n/uk/core.po +++ b/l10n/uk/core.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Ukrainian (http://www.transifex.com/projects/p/owncloud/language/uk/)\n" "MIME-Version: 1.0\n" @@ -160,59 +160,59 @@ msgstr "ЛиÑтопад" msgid "December" msgstr "Грудень" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "ÐалаштуваннÑ" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "Ñекунди тому" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 хвилину тому" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} хвилин тому" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 годину тому" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} години тому" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "Ñьогодні" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "вчора" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} днів тому" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "минулого міÑÑцÑ" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} міÑÑців тому" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "міÑÑці тому" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "минулого року" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "роки тому" @@ -257,7 +257,7 @@ msgstr "Ðеобхідний файл {file} не вÑтановлено!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "ПоділитиÑÑ" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -545,7 +545,7 @@ msgstr "Завершити налаштуваннÑ" msgid "web services under your control" msgstr "веб-ÑÐµÑ€Ð²Ñ–Ñ Ð¿Ñ–Ð´ вашим контролем" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Вихід" diff --git a/l10n/uk/files.po b/l10n/uk/files.po index ac7166cb820..97c4a8121ed 100644 --- a/l10n/uk/files.po +++ b/l10n/uk/files.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Ukrainian (http://www.transifex.com/projects/p/owncloud/language/uk/)\n" "MIME-Version: 1.0\n" @@ -20,20 +20,6 @@ msgstr "" "Language: uk\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Ðе завантажено жодного файлу. Ðевідома помилка" @@ -69,11 +55,11 @@ msgstr "ВідÑутній тимчаÑовий каталог" msgid "Failed to write to disk" msgstr "ÐевдалоÑÑ Ð·Ð°Ð¿Ð¸Ñати на диÑк" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -81,15 +67,15 @@ msgstr "" msgid "Files" msgstr "Файли" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Заборонити доÑтуп" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Видалити" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Перейменувати" @@ -113,7 +99,7 @@ msgstr "відміна" msgid "replaced {new_name}" msgstr "замінено {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "відмінити" @@ -121,13 +107,9 @@ msgstr "відмінити" msgid "replaced {new_name} with {old_name}" msgstr "замінено {new_name} на {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "неопубліковано {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "видалено {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -151,86 +133,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "Ðеможливо завантажити ваш файл тому, що він тека або файл розміром 0 байт" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Помилка завантаженнÑ" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Закрити" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "ОчікуваннÑ" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 файл завантажуєтьÑÑ" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} файлів завантажуєтьÑÑ" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿ÐµÑ€ÐµÑ€Ð²Ð°Ð½Ð¾." -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "ВиконуєтьÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ. Ð—Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ñ†Ñ–Ñ”Ñ— Ñторінки приведе до відміни завантаженнÑ." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL не може бути пуÑтим." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} файлів проÑкановано" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "помилка при Ñкануванні" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Ім'Ñ" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "Розмір" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Змінено" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 папка" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} папок" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 файл" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} файлів" @@ -286,32 +260,40 @@ msgstr "Папка" msgid "From link" msgstr "З поÑиланнÑ" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Перервати завантаженнÑ" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Тут нічого немає. Відвантажте що-небудь!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Завантажити" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Файл занадто великий" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Файли,що ви намагаєтеÑÑŒ відвантажити перевищують макÑимальний дозволений розмір файлів на цьому Ñервері." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Файли ÑкануютьÑÑ, зачекайте, будь-лаÑка." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Поточне ÑкануваннÑ" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/uk/files_trashbin.po b/l10n/uk/files_trashbin.po new file mode 100644 index 00000000000..7e9614c45d4 --- /dev/null +++ b/l10n/uk/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Ukrainian (http://www.transifex.com/projects/p/owncloud/language/uk/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: uk\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Ім'Ñ" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 папка" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} папок" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 файл" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} файлів" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/uk/settings.po b/l10n/uk/settings.po index ff129914fee..bfce5870201 100644 --- a/l10n/uk/settings.po +++ b/l10n/uk/settings.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Ukrainian (http://www.transifex.com/projects/p/owncloud/language/uk/)\n" "MIME-Version: 1.0\n" @@ -78,14 +78,42 @@ msgstr "Ðе вдалоÑÑ Ð´Ð¾Ð´Ð°Ñ‚Ð¸ кориÑтувача у групу %s msgid "Unable to remove user from group %s" msgstr "Ðе вдалоÑÑ Ð²Ð¸Ð´Ð°Ð»Ð¸Ñ‚Ð¸ кориÑтувача із групи %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Вимкнути" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Включити" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Помилка" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Зберігаю..." @@ -114,6 +142,10 @@ msgstr "ПереглÑньте Ñторінку програм на apps.ownclou msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Оновити" + #: templates/help.php:3 msgid "User Documentation" msgstr "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ ÐšÐ¾Ñ€Ð¸Ñтувача" @@ -265,6 +297,14 @@ msgstr "ÐдмініÑтратор групи" msgid "Storage" msgstr "Сховище" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "За замовчуваннÑм" diff --git a/l10n/uk/user_ldap.po b/l10n/uk/user_ldap.po index 24f0b5ffdbb..709ba9d797f 100644 --- a/l10n/uk/user_ldap.po +++ b/l10n/uk/user_ldap.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Ukrainian (http://www.transifex.com/projects/p/owncloud/language/uk/)\n" "MIME-Version: 1.0\n" @@ -19,6 +19,58 @@ msgstr "" "Language: uk\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Ð’Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ Ð½Ðµ було виконано" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -33,165 +85,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "ХоÑÑ‚" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Можна не вказувати протокол, Ñкщо вам не потрібен SSL. Тоді почніть з ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Базовий DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Ви можете задати Базовий DN Ð´Ð»Ñ ÐºÐ¾Ñ€Ð¸Ñтувачів Ñ– груп на вкладинці Додатково" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "DN КориÑтувача" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "DN клієнтÑького кориÑтувача Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð²'Ñзки, наприклад: uid=agent,dc=example,dc=com. Ð”Ð»Ñ Ð°Ð½Ð¾Ð½Ñ–Ð¼Ð½Ð¾Ð³Ð¾ доÑтупу, залиште DN Ñ– Пароль порожніми." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Пароль" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Ð”Ð»Ñ Ð°Ð½Ð¾Ð½Ñ–Ð¼Ð½Ð¾Ð³Ð¾ доÑтупу, залиште DN Ñ– Пароль порожніми." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Фільтр КориÑтувачів, що під'єднуютьÑÑ" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Визначає фільтр, Ñкий заÑтоÑовуєтьÑÑ Ð¿Ñ€Ð¸ Ñпробі входу. %%uid замінює ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача при вході." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "викориÑтовуйте %%uid заповнювач, наприклад: \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Фільтр СпиÑку КориÑтувачів" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Визначає фільтр, Ñкий заÑтоÑовуєтьÑÑ Ð¿Ñ€Ð¸ отриманні кориÑтувачів" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "без будь-Ñкого заповнювача, наприклад: \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Фільтр Груп" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Визначає фільтр, Ñкий заÑтоÑовуєтьÑÑ Ð¿Ñ€Ð¸ отриманні груп." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "без будь-Ñкого заповнювача, наприклад: \"objectClass=posixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Порт" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "ОÑновне Дерево КориÑтувачів" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "ОÑновне Дерево Груп" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "ÐÑÐ¾Ñ†Ñ–Ð°Ñ†Ñ–Ñ Ð“Ñ€ÑƒÐ¿Ð°-Член" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "ВикориÑтовуйте TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Ðе викориÑтовуйте його Ð´Ð»Ñ SSL з'єднань, це не буде виконано." -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Ðечутливий до регіÑтру LDAP Ñервер (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Вимкнути перевірку SSL Ñертифіката." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Якщо з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð¿Ñ€Ð°Ñ†ÑŽÑ” лише з цією опцією, імпортуйте SSL Ñертифікат LDAP Ñервера у ваший ownCloud Ñервер." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Ðе рекомендуєтьÑÑ, викориÑтовуйте лише Ð´Ð»Ñ Ñ‚ÐµÑтів." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "в Ñекундах. Зміна очищує кеш." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Поле, Ñке відображає Ім'Ñ ÐšÐ¾Ñ€Ð¸Ñтувача" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Ðтрибут LDAP, Ñкий викориÑтовуєтьÑÑ Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ñ–Ñ— імен кориÑтувачів ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "ОÑновне Дерево КориÑтувачів" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Поле, Ñке відображає Ім'Ñ Ð“Ñ€ÑƒÐ¿Ð¸" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Ðтрибут LDAP, Ñкий викориÑтовуєтьÑÑ Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ñ–Ñ— імен груп ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "ОÑновне Дерево Груп" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "ÐÑÐ¾Ñ†Ñ–Ð°Ñ†Ñ–Ñ Ð“Ñ€ÑƒÐ¿Ð°-Член" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "в байтах" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "в Ñекундах. Зміна очищує кеш." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Залиште порожнім Ð´Ð»Ñ Ñ–Ð¼ÐµÐ½Ñ– кориÑтувача (за замовчаннÑм). Інакше, вкажіть атрибут LDAP/AD." -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Допомога" diff --git a/l10n/vi/core.po b/l10n/vi/core.po index 7f3635025e6..15751465673 100644 --- a/l10n/vi/core.po +++ b/l10n/vi/core.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Vietnamese (http://www.transifex.com/projects/p/owncloud/language/vi/)\n" "MIME-Version: 1.0\n" @@ -160,59 +160,59 @@ msgstr "Tháng 11" msgid "December" msgstr "Tháng 12" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "Cà i đặt" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "và i giây trước" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 phút trước" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} phút trước" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 giá» trước" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} giá» trước" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "hôm nay" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "hôm qua" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} ngà y trước" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "tháng trước" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} tháng trước" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "tháng trước" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "năm trước" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "năm trước" @@ -257,7 +257,7 @@ msgstr "Táºp tin cần thiết {file} không được cà i đặt!" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "Chia sẻ" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -545,7 +545,7 @@ msgstr "Cà i đặt hoà n tất" msgid "web services under your control" msgstr "các dịch vụ web dưới sá»± kiểm soát cá»§a bạn" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "Äăng xuất" diff --git a/l10n/vi/files.po b/l10n/vi/files.po index 4250cfece6e..44b47a64cd2 100644 --- a/l10n/vi/files.po +++ b/l10n/vi/files.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Vietnamese (http://www.transifex.com/projects/p/owncloud/language/vi/)\n" "MIME-Version: 1.0\n" @@ -21,20 +21,6 @@ msgstr "" "Language: vi\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "Không có táºp tin nà o được tải lên. Lá»—i không xác định" @@ -70,11 +56,11 @@ msgstr "Không tìm thấy thư mục tạm" msgid "Failed to write to disk" msgstr "Không thể ghi " -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -82,15 +68,15 @@ msgstr "" msgid "Files" msgstr "Táºp tin" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "Không chia sẽ" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "Xóa" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "Sá»a tên" @@ -114,7 +100,7 @@ msgstr "há»§y" msgid "replaced {new_name}" msgstr "đã thay thế {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "lùi lại" @@ -122,13 +108,9 @@ msgstr "lùi lại" msgid "replaced {new_name} with {old_name}" msgstr "đã thay thế {new_name} bằng {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "há»§y chia sẽ {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "đã xóa {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -152,86 +134,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "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" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "Tải lên lá»—i" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "Äóng" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Chá»" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 tệp tin Ä‘ang được tải lên" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} táºp tin Ä‘ang tải lên" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "Há»§y tải lên" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "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." -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL không được để trống." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} táºp tin đã được quét" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "lá»—i trong khi quét" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "Tên" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "KÃch cỡ" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "Thay đổi" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 thư mục" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} thư mục" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 táºp tin" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} táºp tin" @@ -287,32 +261,40 @@ msgstr "Thư mục" msgid "From link" msgstr "Từ liên kết" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "Há»§y upload" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "Không có gì ở đây .Hãy tải lên má»™t cái gì đó !" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "Tải xuống" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "Táºp tin tải lên quá lá»›n" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "Các táºp tin bạn Ä‘ang tải lên vượt quá kÃch thước tối Ä‘a cho phép trên máy chá»§ ." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "Táºp tin Ä‘ang được quét ,vui lòng chá»." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "Hiện tại Ä‘ang quét" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/vi/files_trashbin.po b/l10n/vi/files_trashbin.po new file mode 100644 index 00000000000..696681bd68a --- /dev/null +++ b/l10n/vi/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Vietnamese (http://www.transifex.com/projects/p/owncloud/language/vi/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: vi\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "Tên" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 thư mục" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} thư mục" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 táºp tin" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} táºp tin" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/vi/settings.po b/l10n/vi/settings.po index 3cb4e519b63..d7a5c629f52 100644 --- a/l10n/vi/settings.po +++ b/l10n/vi/settings.po @@ -13,8 +13,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Vietnamese (http://www.transifex.com/projects/p/owncloud/language/vi/)\n" "MIME-Version: 1.0\n" @@ -81,14 +81,42 @@ msgstr "Không thể thêm ngưá»i dùng và o nhóm %s" msgid "Unable to remove user from group %s" msgstr "Không thể xóa ngưá»i dùng từ nhóm %s" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "Tắt" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "Báºt" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "Lá»—i" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "Äang tiến hà nh lưu ..." @@ -117,6 +145,10 @@ msgstr "Xem nhiá»u ứng dụng hÆ¡n tại apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-Giấy phép được cấp bởi <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "Cáºp nháºt" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -268,6 +300,14 @@ msgstr "Nhóm quản trị" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/vi/user_ldap.po b/l10n/vi/user_ldap.po index 6e334612607..d067549c1d8 100644 --- a/l10n/vi/user_ldap.po +++ b/l10n/vi/user_ldap.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Vietnamese (http://www.transifex.com/projects/p/owncloud/language/vi/)\n" "MIME-Version: 1.0\n" @@ -19,6 +19,58 @@ msgstr "" "Language: vi\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "Xóa thất bại" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -33,165 +85,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "Máy chá»§" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "Bạn có thể bá» qua các giao thức, ngoại trừ SSL. Sau đó bắt đầu vá»›i ldaps://" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "DN cÆ¡ bản" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "Bạn có thể chỉ định DN cÆ¡ bản cho ngưá»i dùng và các nhóm trong tab Advanced" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "Ngưá»i dùng DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "Các DN cá»§a ngưá»i sá» dụng đã được thá»±c hiện, và dụ như uid =agent , dc = example, dc = com. Äể truy cáºp nặc danh ,DN và máºt khẩu trống." -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "Máºt khẩu" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "Cho phép truy cáºp nặc danh , DN và máºt khẩu trống." -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "Lá»c ngưá»i dùng đăng nháºp" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "Xác định các bá»™ lá»c để áp dụng, khi đăng nháºp . uid%% thay thế tên ngưá»i dùng trong các lần đăng nháºp." -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "use %%uid placeholder, e.g. \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "Lá»c danh sách thà nh viên" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "Xác định các bá»™ lá»c để áp dụng, khi ngưá»i dụng sá» dụng." -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "mà không giữ chá»— nà o, và dụ như \"objectClass = person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "Bá»™ lá»c nhóm" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "Xác định các bá»™ lá»c để áp dụng, khi nhóm sá» dụng." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "mà không giữ chá»— nà o, và dụ như \"objectClass = osixGroup\"." -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "Cổng" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "Cây ngưá»i dùng cÆ¡ bản" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "Cây nhóm cÆ¡ bản" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "Nhóm thà nh viên Cá»™ng đồng" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "Sá» dụng TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "Kết nối SSL bị lá»—i. " -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "Trưá»ng hợp insensitve LDAP máy chá»§ (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "Tắt xác thá»±c chứng nháºn SSL" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "Nếu kết nối chỉ hoạt động vá»›i tùy chá»n nà y, vui lòng import LDAP certificate SSL trong máy chá»§ ownCloud cá»§a bạn." -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "Không khuyến khÃch, Chỉ sá» dụng để thá» nghiệm." -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "trong và i giây. Má»™t sá»± thay đổi bá»™ nhá»› cache." + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "Hiển thị tên ngưá»i sá» dụng" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "Các thuá»™c tÃnh LDAP sá» dụng để tạo tên ngưá»i dùng ownCloud." -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "Cây ngưá»i dùng cÆ¡ bản" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "Hiển thị tên nhóm" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "Các thuá»™c tÃnh LDAP sá» dụng để tạo các nhóm ownCloud." -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "Cây nhóm cÆ¡ bản" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "Nhóm thà nh viên Cá»™ng đồng" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "Theo Byte" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "trong và i giây. Má»™t sá»± thay đổi bá»™ nhá»› cache." - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "Äể trống tên ngưá»i dùng (mặc định). Nếu không chỉ định thuá»™c tÃnh LDAP/AD" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "Giúp đỡ" diff --git a/l10n/zh_CN.GB2312/core.po b/l10n/zh_CN.GB2312/core.po index 54ee264a5a3..514f8d534c9 100644 --- a/l10n/zh_CN.GB2312/core.po +++ b/l10n/zh_CN.GB2312/core.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Chinese (China) (GB2312) (http://www.transifex.com/projects/p/owncloud/language/zh_CN.GB2312/)\n" "MIME-Version: 1.0\n" @@ -157,59 +157,59 @@ msgstr "å一月" msgid "December" msgstr "å二月" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "设置" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "ç§’å‰" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 分钟å‰" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} 分钟å‰" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "今天" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "昨天" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} 天å‰" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "上个月" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "月å‰" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "去年" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "å¹´å‰" @@ -254,7 +254,7 @@ msgstr "" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "分享" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" @@ -542,7 +542,7 @@ msgstr "完æˆå®‰è£…" msgid "web services under your control" msgstr "ä½ æŽ§åˆ¶ä¸‹çš„ç½‘ç»œæœåŠ¡" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "注销" diff --git a/l10n/zh_CN.GB2312/files.po b/l10n/zh_CN.GB2312/files.po index 4ae0f2a9225..71d9b048220 100644 --- a/l10n/zh_CN.GB2312/files.po +++ b/l10n/zh_CN.GB2312/files.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Chinese (China) (GB2312) (http://www.transifex.com/projects/p/owncloud/language/zh_CN.GB2312/)\n" "MIME-Version: 1.0\n" @@ -19,20 +19,6 @@ msgstr "" "Language: zh_CN.GB2312\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "æ²¡æœ‰ä¸Šä¼ æ–‡ä»¶ã€‚æœªçŸ¥é”™è¯¯" @@ -68,11 +54,11 @@ msgstr "丢失了一个临时文件夹" msgid "Failed to write to disk" msgstr "写ç£ç›˜å¤±è´¥" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -80,15 +66,15 @@ msgstr "" msgid "Files" msgstr "文件" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "å–æ¶ˆå…±äº«" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "åˆ é™¤" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "é‡å‘½å" @@ -112,7 +98,7 @@ msgstr "å–æ¶ˆ" msgid "replaced {new_name}" msgstr "å·²æ›¿æ¢ {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "撤销" @@ -120,13 +106,9 @@ msgstr "撤销" msgid "replaced {new_name} with {old_name}" msgstr "已用 {old_name} æ›¿æ¢ {new_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "未分享的 {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "å·²åˆ é™¤çš„ {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -150,86 +132,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "ä¸èƒ½ä¸Šä¼ ä½ æŒ‡å®šçš„æ–‡ä»¶,å¯èƒ½å› 为它是个文件夹或者大å°ä¸º0" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "ä¸Šä¼ é”™è¯¯" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "å…³é—" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "Pending" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 个文件æ£åœ¨ä¸Šä¼ " -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} 个文件æ£åœ¨ä¸Šä¼ " -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "ä¸Šä¼ å–æ¶ˆäº†" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "文件æ£åœ¨ä¸Šä¼ 。关é—页é¢ä¼šå–æ¶ˆä¸Šä¼ ã€‚" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "网å€ä¸èƒ½ä¸ºç©ºã€‚" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} 个文件已扫æ" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "扫æå‡ºé”™" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "åå—" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "大å°" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "修改日期" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 个文件夹" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} 个文件夹" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 个文件" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} 个文件" @@ -285,32 +259,40 @@ msgstr "文件夹" msgid "From link" msgstr "æ¥è‡ªé“¾æŽ¥" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "å–æ¶ˆä¸Šä¼ " -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "这里没有东西.ä¸Šä¼ ç‚¹ä»€ä¹ˆ!" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "下载" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "ä¸Šä¼ çš„æ–‡ä»¶å¤ªå¤§äº†" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "ä½ æ£åœ¨è¯•å›¾ä¸Šä¼ çš„æ–‡ä»¶è¶…è¿‡äº†æ¤æœåŠ¡å™¨æ”¯æŒçš„æœ€å¤§çš„æ–‡ä»¶å¤§å°." -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "æ£åœ¨æ‰«ææ–‡ä»¶,请ç¨å€™." -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "æ£åœ¨æ‰«æ" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/zh_CN.GB2312/files_trashbin.po b/l10n/zh_CN.GB2312/files_trashbin.po new file mode 100644 index 00000000000..722b4a5f8cb --- /dev/null +++ b/l10n/zh_CN.GB2312/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Chinese (China) (GB2312) (http://www.transifex.com/projects/p/owncloud/language/zh_CN.GB2312/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: zh_CN.GB2312\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "åç§°" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 个文件夹" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} 个文件夹" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 个文件" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} 个文件" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/zh_CN.GB2312/settings.po b/l10n/zh_CN.GB2312/settings.po index deb922c37f4..6aa5df48618 100644 --- a/l10n/zh_CN.GB2312/settings.po +++ b/l10n/zh_CN.GB2312/settings.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Chinese (China) (GB2312) (http://www.transifex.com/projects/p/owncloud/language/zh_CN.GB2312/)\n" "MIME-Version: 1.0\n" @@ -77,14 +77,42 @@ msgstr "æœªèƒ½æ·»åŠ ç”¨æˆ·åˆ°ç¾¤ç»„ %s" msgid "Unable to remove user from group %s" msgstr "未能将用户从群组 %s 移除" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "ç¦ç”¨" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "å¯ç”¨" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "出错" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "ä¿å˜ä¸..." @@ -113,6 +141,10 @@ msgstr "在owncloud.com上查看应用程åº" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>授æƒåè®® <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "æ›´æ–°" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -264,6 +296,14 @@ msgstr "群组管ç†å‘˜" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/zh_CN.GB2312/user_ldap.po b/l10n/zh_CN.GB2312/user_ldap.po index 0e45bb6b182..bc915483e99 100644 --- a/l10n/zh_CN.GB2312/user_ldap.po +++ b/l10n/zh_CN.GB2312/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Chinese (China) (GB2312) (http://www.transifex.com/projects/p/owncloud/language/zh_CN.GB2312/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: zh_CN.GB2312\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "åˆ é™¤å¤±è´¥" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "主机" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "您å¯ä»¥å¿½ç•¥åè®®ï¼Œé™¤éžæ‚¨éœ€è¦ SSL。然åŽç”¨ ldaps:// 开头" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "基本判别å" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "您å¯ä»¥åœ¨é«˜çº§é€‰é¡¹å¡ä¸ä¸ºç”¨æˆ·å’Œç¾¤ç»„指定基本判别å" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "用户判别å" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "客户机用户的判别å,将用于绑定,例如 uid=agent, dc=example, dc=com。匿å访问请留空判别å和密ç 。" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "密ç " -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "匿å访问请留空判别å和密ç 。" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "用户登录过滤器" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "定义å°è¯•登录时è¦åº”用的过滤器。用 %%uid 替æ¢ç™»å½•æ“作ä¸ä½¿ç”¨çš„用户å。" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "使用 %%uid å ä½ç¬¦ï¼Œä¾‹å¦‚ \"uid=%%uid\"" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "用户列表过滤器" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "定义撷å–用户时è¦åº”用的过滤器。" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "ä¸èƒ½ä½¿ç”¨å ä½ç¬¦ï¼Œä¾‹å¦‚ \"objectClass=person\"。" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "群组过滤器" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "定义撷å–群组时è¦åº”用的过滤器" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "ä¸èƒ½ä½¿ç”¨å ä½ç¬¦ï¼Œä¾‹å¦‚ \"objectClass=posixGroup\"。" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "端å£" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "åŸºæœ¬ç”¨æˆ·æ ‘" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "åŸºæœ¬ç¾¤ç»„æ ‘" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "群组-æˆå‘˜ç»„åˆ" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "使用 TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "ä¸è¦ä½¿ç”¨å®ƒè¿›è¡Œ SSL 连接,会失败的。" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "大å°å†™ä¸æ•感的 LDAP æœåС噍 (Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "å…³é— SSL è¯ä¹¦æ ¡éªŒã€‚" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "å¦‚æžœåªæœ‰ä½¿ç”¨æ¤é€‰é¡¹æ‰èƒ½è¿žæŽ¥ï¼Œè¯·å¯¼å…¥ LDAP æœåŠ¡å™¨çš„ SSL è¯ä¹¦åˆ°æ‚¨çš„ ownCloud æœåŠ¡å™¨ã€‚" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "䏿ލè,仅供测试" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "以秒计。修改会清空缓å˜ã€‚" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "用户显示åç§°å—æ®µ" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "用于生æˆç”¨æˆ·çš„ ownCloud åç§°çš„ LDAP 属性。" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "åŸºæœ¬ç”¨æˆ·æ ‘" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "群组显示åç§°å—æ®µ" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "用于生æˆç¾¤ç»„çš„ ownCloud åç§°çš„ LDAP 属性。" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "åŸºæœ¬ç¾¤ç»„æ ‘" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "群组-æˆå‘˜ç»„åˆ" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "以å—节计" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "以秒计。修改会清空缓å˜ã€‚" - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "用户å请留空 (默认)。å¦åˆ™ï¼Œè¯·æŒ‡å®šä¸€ä¸ª LDAP/AD 属性。" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "帮助" diff --git a/l10n/zh_CN/core.po b/l10n/zh_CN/core.po index f7c192f722d..c216b30e765 100644 --- a/l10n/zh_CN/core.po +++ b/l10n/zh_CN/core.po @@ -13,8 +13,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-01-31 23:30+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Chinese (China) (http://www.transifex.com/projects/p/owncloud/language/zh_CN/)\n" "MIME-Version: 1.0\n" @@ -161,59 +161,59 @@ msgstr "å一月" msgid "December" msgstr "å二月" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "设置" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "ç§’å‰" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "一分钟å‰" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} 分钟å‰" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1å°æ—¶å‰" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} å°æ—¶å‰" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "今天" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "昨天" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} 天å‰" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "上月" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} 月å‰" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "月å‰" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "去年" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "å¹´å‰" @@ -258,11 +258,11 @@ msgstr "所需文件{file}未安装ï¼" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "共享" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "已共享" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -546,7 +546,7 @@ msgstr "安装完æˆ" msgid "web services under your control" msgstr "由您掌控的网络æœåŠ¡" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "注销" diff --git a/l10n/zh_CN/files.po b/l10n/zh_CN/files.po index ac41681ce43..b52527396da 100644 --- a/l10n/zh_CN/files.po +++ b/l10n/zh_CN/files.po @@ -14,8 +14,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-02-01 00:17+0100\n" +"PO-Revision-Date: 2013-01-31 16:20+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Chinese (China) (http://www.transifex.com/projects/p/owncloud/language/zh_CN/)\n" "MIME-Version: 1.0\n" @@ -24,20 +24,6 @@ msgstr "" "Language: zh_CN\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "æ— æ³•ç§»åŠ¨ %s - åŒå文件已å˜åœ¨" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "æ— æ³•ç§»åŠ¨ %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "æ— æ³•é‡å‘½å文件" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "æ²¡æœ‰æ–‡ä»¶è¢«ä¸Šä¼ ã€‚æœªçŸ¥é”™è¯¯" @@ -73,11 +59,11 @@ msgstr "缺少临时目录" msgid "Failed to write to disk" msgstr "写入ç£ç›˜å¤±è´¥" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "没有足够å¯ç”¨ç©ºé—´" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "æ— æ•ˆæ–‡ä»¶å¤¹ã€‚" @@ -85,15 +71,15 @@ msgstr "æ— æ•ˆæ–‡ä»¶å¤¹ã€‚" msgid "Files" msgstr "文件" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "å–æ¶ˆåˆ†äº«" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "åˆ é™¤" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "é‡å‘½å" @@ -117,7 +103,7 @@ msgstr "å–æ¶ˆ" msgid "replaced {new_name}" msgstr "æ›¿æ¢ {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "撤销" @@ -125,13 +111,9 @@ msgstr "撤销" msgid "replaced {new_name} with {old_name}" msgstr "已将 {old_name}æ›¿æ¢æˆ {new_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "å–æ¶ˆäº†å…±äº« {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "åˆ é™¤äº† {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -155,86 +137,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "下载æ£åœ¨å‡†å¤‡ä¸ã€‚如果文件较大å¯èƒ½ä¼šèŠ±è´¹ä¸€äº›æ—¶é—´ã€‚" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "æ— æ³•ä¸Šä¼ æ–‡ä»¶ï¼Œå› ä¸ºå®ƒæ˜¯ä¸€ä¸ªç›®å½•æˆ–è€…å¤§å°ä¸º 0 å—节" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "ä¸Šä¼ é”™è¯¯" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "å…³é—" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "æ“作ç‰å¾…ä¸" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1ä¸ªæ–‡ä»¶ä¸Šä¼ ä¸" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} ä¸ªæ–‡ä»¶ä¸Šä¼ ä¸" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "ä¸Šä¼ å·²å–æ¶ˆ" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "文件æ£åœ¨ä¸Šä¼ ä¸ã€‚现在离开æ¤é¡µä¼šå¯¼è‡´ä¸Šä¼ åŠ¨ä½œè¢«å–æ¶ˆã€‚" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URLä¸èƒ½ä¸ºç©º" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "æ— æ•ˆæ–‡ä»¶å¤¹å。'共享' 是 Owncloud 预留的文件夹å。" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} 个文件已扫æã€‚" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "æ‰«ææ—¶å‡ºé”™" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "åç§°" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "大å°" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "修改日期" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1个文件夹" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} 个文件夹" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 个文件" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} 个文件" @@ -290,32 +264,40 @@ msgstr "文件夹" msgid "From link" msgstr "æ¥è‡ªé“¾æŽ¥" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "å–æ¶ˆä¸Šä¼ " -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "è¿™é‡Œè¿˜ä»€ä¹ˆéƒ½æ²¡æœ‰ã€‚ä¸Šä¼ äº›ä¸œè¥¿å§ï¼" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "下载" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "ä¸Šä¼ æ–‡ä»¶è¿‡å¤§" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "您æ£å°è¯•ä¸Šä¼ çš„æ–‡ä»¶è¶…è¿‡äº†æ¤æœåС噍å¯ä»¥ä¸Šä¼ 的最大容é‡é™åˆ¶" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "文件æ£åœ¨è¢«æ‰«æï¼Œè¯·ç¨å€™ã€‚" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "当剿‰«æ" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/zh_CN/files_trashbin.po b/l10n/zh_CN/files_trashbin.po new file mode 100644 index 00000000000..71b559d7bac --- /dev/null +++ b/l10n/zh_CN/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Chinese (China) (http://www.transifex.com/projects/p/owncloud/language/zh_CN/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: zh_CN\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "åç§°" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1个文件夹" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} 个文件夹" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 个文件" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} 个文件" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/zh_CN/settings.po b/l10n/zh_CN/settings.po index 53b7fa6a2c7..123e52ea0ab 100644 --- a/l10n/zh_CN/settings.po +++ b/l10n/zh_CN/settings.po @@ -13,8 +13,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Chinese (China) (http://www.transifex.com/projects/p/owncloud/language/zh_CN/)\n" "MIME-Version: 1.0\n" @@ -81,14 +81,42 @@ msgstr "æ— æ³•æŠŠç”¨æˆ·æ·»åŠ åˆ°ç»„ %s" msgid "Unable to remove user from group %s" msgstr "æ— æ³•ä»Žç»„%sä¸ç§»é™¤ç”¨æˆ·" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "ç¦ç”¨" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "å¯ç”¨" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "错误" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "æ£åœ¨ä¿å˜" @@ -117,6 +145,10 @@ msgstr "查看在 app.owncloud.com 的应用程åºé¡µé¢" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-æ ¸å‡†ï¼š <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "æ›´æ–°" + #: templates/help.php:3 msgid "User Documentation" msgstr "用户文档" @@ -268,6 +300,14 @@ msgstr "组管ç†å‘˜" msgid "Storage" msgstr "å˜å‚¨" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "默认" diff --git a/l10n/zh_CN/user_ldap.po b/l10n/zh_CN/user_ldap.po index b9c039f6bf8..18eef3d02f9 100644 --- a/l10n/zh_CN/user_ldap.po +++ b/l10n/zh_CN/user_ldap.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Chinese (China) (http://www.transifex.com/projects/p/owncloud/language/zh_CN/)\n" "MIME-Version: 1.0\n" @@ -19,6 +19,58 @@ msgstr "" "Language: zh_CN\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "åˆ é™¤å¤±è´¥" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -33,165 +85,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "主机" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "å¯ä»¥å¿½ç•¥å议,但如è¦ä½¿ç”¨SSL,则需以ldaps://开头" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "Base DN" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "您å¯ä»¥åœ¨é«˜çº§é€‰é¡¹å¡é‡Œä¸ºç”¨æˆ·å’Œç»„指定Base DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "User DN" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "客户端使用的DN必须与绑定的相åŒï¼Œæ¯”如uid=agent,dc=example,dc=com\n如需匿å访问,将DN和密ç ä¿ç•™ä¸ºç©º" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "密ç " -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "å¯ç”¨åŒ¿å访问,将DN和密ç ä¿ç•™ä¸ºç©º" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "用户登录过滤" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "定义当å°è¯•登录时的过滤器。 在登录过程ä¸ï¼Œ%%uidå°†ä¼šè¢«ç”¨æˆ·åæ›¿æ¢" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "使用 %%uid作为å ä½ç¬¦ï¼Œä¾‹å¦‚“uid=%%uidâ€" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "用户列表过滤" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "定义拉å–用户时的过滤器" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "没有任何å ä½ç¬¦,如 \"objectClass=person\"." -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "组过滤" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "定义拉å–ç»„ä¿¡æ¯æ—¶çš„过滤器" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "æ— éœ€å ä½ç¬¦ï¼Œä¾‹å¦‚\"objectClass=posixGroup\"" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "端å£" -#: templates/settings.php:25 -msgid "Base User Tree" -msgstr "åŸºç¡€ç”¨æˆ·æ ‘" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" +msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" -msgstr "åŸºç¡€ç»„æ ‘" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" +msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" -msgstr "组æˆå‘˜å…³è”" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." +msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "使用TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "ä¸è¦åœ¨SSL链接ä¸ä½¿ç”¨æ¤é€‰é¡¹ï¼Œä¼šå¯¼è‡´å¤±è´¥ã€‚" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "大å°å†™æ•感LDAPæœåС噍(Windows)" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "å…³é—SSLè¯ä¹¦éªŒè¯" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "如果链接仅在æ¤é€‰é¡¹æ—¶å¯ç”¨ï¼Œåœ¨æ‚¨çš„ownCloudæœåС噍ä¸å¯¼å…¥LDAPæœåŠ¡å™¨çš„SSLè¯ä¹¦ã€‚" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "æš‚ä¸æŽ¨è,仅供测试" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "以秒计。修改将清空缓å˜ã€‚" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "用户显示åç§°å—æ®µ" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "用æ¥ç”Ÿæˆç”¨æˆ·çš„ownCloudåç§°çš„ LDAP属性" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "åŸºç¡€ç”¨æˆ·æ ‘" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "组显示åç§°å—æ®µ" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "用æ¥ç”Ÿæˆç»„çš„ownCloudåç§°çš„LDAP属性" -#: templates/settings.php:34 +#: templates/settings.php:49 +msgid "Base Group Tree" +msgstr "åŸºç¡€ç»„æ ‘" + +#: templates/settings.php:49 +msgid "One Group Base DN per line" +msgstr "" + +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "组æˆå‘˜å…³è”" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 msgid "in bytes" msgstr "å—节数" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." -msgstr "以秒计。修改将清空缓å˜ã€‚" - -#: templates/settings.php:37 +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "将用户å称留空(默认)。å¦åˆ™æŒ‡å®šä¸€ä¸ªLDAP/AD属性" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "帮助" diff --git a/l10n/zh_HK/files.po b/l10n/zh_HK/files.po index d8fe0228bcb..3a61b47c5ad 100644 --- a/l10n/zh_HK/files.po +++ b/l10n/zh_HK/files.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" +"POT-Creation-Date: 2013-01-31 17:02+0100\n" +"PO-Revision-Date: 2013-01-31 16:02+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Chinese (Hong Kong) (http://www.transifex.com/projects/p/owncloud/language/zh_HK/)\n" "MIME-Version: 1.0\n" @@ -17,20 +17,6 @@ msgstr "" "Language: zh_HK\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "" @@ -66,11 +52,11 @@ msgstr "" msgid "Failed to write to disk" msgstr "" -#: ajax/upload.php:48 -msgid "Not enough storage available" +#: ajax/upload.php:51 +msgid "Not enough space available" msgstr "" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "" @@ -78,15 +64,15 @@ msgstr "" msgid "Files" msgstr "" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "" @@ -110,7 +96,7 @@ msgstr "" msgid "replaced {new_name}" msgstr "" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "" @@ -118,12 +104,8 @@ msgstr "" msgid "replaced {new_name} with {old_name}" msgstr "" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "" - -#: js/filelist.js:288 -msgid "deleted {files}" +#: js/filelist.js:280 +msgid "perform delete operation" msgstr "" #: js/files.js:52 @@ -148,86 +130,78 @@ msgstr "" msgid "Your storage is almost full ({usedSpacePercent}%)" msgstr "" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "" -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "" @@ -283,32 +257,40 @@ msgstr "" msgid "From link" msgstr "" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "" -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "" diff --git a/l10n/zh_HK/files_trashbin.po b/l10n/zh_HK/files_trashbin.po new file mode 100644 index 00000000000..694862fdd6b --- /dev/null +++ b/l10n/zh_HK/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Chinese (Hong Kong) (http://www.transifex.com/projects/p/owncloud/language/zh_HK/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: zh_HK\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "" + +#: js/trash.js:120 +msgid "1 file" +msgstr "" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/zh_HK/settings.po b/l10n/zh_HK/settings.po index bbba342f382..58568a1c6e0 100644 --- a/l10n/zh_HK/settings.po +++ b/l10n/zh_HK/settings.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Chinese (Hong Kong) (http://www.transifex.com/projects/p/owncloud/language/zh_HK/)\n" "MIME-Version: 1.0\n" @@ -75,14 +75,42 @@ msgstr "" msgid "Unable to remove user from group %s" msgstr "" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "" + +#: js/apps.js:84 +msgid "Updating...." +msgstr "" + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "" + +#: js/apps.js:87 +msgid "Error" +msgstr "" + +#: js/apps.js:90 +msgid "Updated" +msgstr "" + #: js/personal.js:69 msgid "Saving..." msgstr "" @@ -111,6 +139,10 @@ msgstr "" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "" +#: templates/apps.php:31 +msgid "Update" +msgstr "" + #: templates/help.php:3 msgid "User Documentation" msgstr "" @@ -262,6 +294,14 @@ msgstr "" msgid "Storage" msgstr "" +#: templates/users.php:97 +msgid "change display name" +msgstr "" + +#: templates/users.php:101 +msgid "set new password" +msgstr "" + #: templates/users.php:137 msgid "Default" msgstr "" diff --git a/l10n/zh_HK/user_ldap.po b/l10n/zh_HK/user_ldap.po index 8a7d8cdab9c..cda8b305dea 100644 --- a/l10n/zh_HK/user_ldap.po +++ b/l10n/zh_HK/user_ldap.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-16 00:19+0100\n" -"PO-Revision-Date: 2013-01-15 23:20+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Chinese (Hong Kong) (http://www.transifex.com/projects/p/owncloud/language/zh_HK/)\n" "MIME-Version: 1.0\n" @@ -17,6 +17,58 @@ msgstr "" "Language: zh_HK\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -31,165 +83,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "" diff --git a/l10n/zh_TW/core.po b/l10n/zh_TW/core.po index ee734ce272b..b7347e7ad74 100644 --- a/l10n/zh_TW/core.po +++ b/l10n/zh_TW/core.po @@ -7,13 +7,14 @@ # <dw4dev@gmail.com>, 2012. # Ming Yi Wu <mingi.wu@gmail.com>, 2012. # <nfsmwlin@gmail.com>, 2013. +# Pellaeon Lin <nfsmwlin@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:23+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 13:30+0000\n" +"Last-Translator: pellaeon <nfsmwlin@gmail.com>\n" "Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/owncloud/language/zh_TW/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -159,59 +160,59 @@ msgstr "å一月" msgid "December" msgstr "å二月" -#: js/js.js:280 templates/layout.user.php:47 templates/layout.user.php:48 +#: js/js.js:280 msgid "Settings" msgstr "è¨å®š" -#: js/js.js:762 +#: js/js.js:759 msgid "seconds ago" msgstr "幾秒å‰" -#: js/js.js:763 +#: js/js.js:760 msgid "1 minute ago" msgstr "1 分é˜å‰" -#: js/js.js:764 +#: js/js.js:761 msgid "{minutes} minutes ago" msgstr "{minutes} 分é˜å‰" -#: js/js.js:765 +#: js/js.js:762 msgid "1 hour ago" msgstr "1 個尿™‚å‰" -#: js/js.js:766 +#: js/js.js:763 msgid "{hours} hours ago" msgstr "{hours} å°æ™‚å‰" -#: js/js.js:767 +#: js/js.js:764 msgid "today" msgstr "今天" -#: js/js.js:768 +#: js/js.js:765 msgid "yesterday" msgstr "昨天" -#: js/js.js:769 +#: js/js.js:766 msgid "{days} days ago" msgstr "{days} 天å‰" -#: js/js.js:770 +#: js/js.js:767 msgid "last month" msgstr "上個月" -#: js/js.js:771 +#: js/js.js:768 msgid "{months} months ago" msgstr "{months} 個月å‰" -#: js/js.js:772 +#: js/js.js:769 msgid "months ago" msgstr "幾個月å‰" -#: js/js.js:773 +#: js/js.js:770 msgid "last year" msgstr "去年" -#: js/js.js:774 +#: js/js.js:771 msgid "years ago" msgstr "幾年å‰" @@ -256,11 +257,11 @@ msgstr "æ²’æœ‰å®‰è£æ‰€éœ€çš„æª”案 {file} ï¼" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Share" -msgstr "" +msgstr "分享" #: js/share.js:29 js/share.js:43 js/share.js:90 js/share.js:93 msgid "Shared" -msgstr "" +msgstr "已分享" #: js/share.js:141 js/share.js:611 msgid "Error while sharing" @@ -383,11 +384,11 @@ msgid "" "The update was unsuccessful. Please report this issue to the <a " "href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud " "community</a>." -msgstr "" +msgstr "å‡ç´šå¤±æ•—,請將æ¤å•é¡Œå›žå ± <a href=\"https://github.com/owncloud/core/issues\" target=\"_blank\">ownCloud 社群</a>。" #: js/update.js:18 msgid "The update was successful. Redirecting you to ownCloud now." -msgstr "" +msgstr "å‡ç´šæˆåŠŸï¼Œæ£å°‡æ‚¨é‡æ–°å°Žå‘至 ownCloud 。" #: lostpassword/controller.php:47 msgid "ownCloud password reset" @@ -544,7 +545,7 @@ msgstr "完æˆè¨å®š" msgid "web services under your control" msgstr "網路æœå‹™åœ¨æ‚¨æŽ§åˆ¶ä¹‹ä¸‹" -#: templates/layout.user.php:32 +#: templates/layout.user.php:49 msgid "Log out" msgstr "登出" diff --git a/l10n/zh_TW/files.po b/l10n/zh_TW/files.po index a1e826aabd8..5775c873fa0 100644 --- a/l10n/zh_TW/files.po +++ b/l10n/zh_TW/files.po @@ -13,9 +13,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-27 00:04+0100\n" -"PO-Revision-Date: 2013-01-26 23:05+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 13:40+0000\n" +"Last-Translator: pellaeon <nfsmwlin@gmail.com>\n" "Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/owncloud/language/zh_TW/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -23,20 +23,6 @@ msgstr "" "Language: zh_TW\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ajax/move.php:17 -#, php-format -msgid "Could not move %s - File with this name already exists" -msgstr "無法移動 %s - åŒå的檔案已經å˜åœ¨" - -#: ajax/move.php:24 -#, php-format -msgid "Could not move %s" -msgstr "無法移動 %s" - -#: ajax/rename.php:19 -msgid "Unable to rename file" -msgstr "ç„¡æ³•é‡æ–°å‘½å檔案" - #: ajax/upload.php:17 msgid "No file was uploaded. Unknown error" msgstr "沒有檔案被上傳。未知的錯誤。" @@ -72,11 +58,11 @@ msgstr "éºå¤±æš«å˜è³‡æ–™å¤¾" msgid "Failed to write to disk" msgstr "寫入硬碟失敗" -#: ajax/upload.php:48 -msgid "Not enough storage available" -msgstr "" +#: ajax/upload.php:51 +msgid "Not enough space available" +msgstr "æ²’æœ‰è¶³å¤ çš„å¯ç”¨ç©ºé–“" -#: ajax/upload.php:77 +#: ajax/upload.php:82 msgid "Invalid directory." msgstr "無效的資料夾。" @@ -84,15 +70,15 @@ msgstr "無效的資料夾。" msgid "Files" msgstr "檔案" -#: js/fileactions.js:117 templates/index.php:81 templates/index.php:82 +#: js/fileactions.js:117 templates/index.php:85 templates/index.php:86 msgid "Unshare" msgstr "å–æ¶ˆå…±äº«" -#: js/fileactions.js:119 templates/index.php:87 templates/index.php:88 +#: js/fileactions.js:119 templates/index.php:91 templates/index.php:92 msgid "Delete" msgstr "刪除" -#: js/fileactions.js:181 +#: js/fileactions.js:185 msgid "Rename" msgstr "釿–°å‘½å" @@ -116,7 +102,7 @@ msgstr "å–æ¶ˆ" msgid "replaced {new_name}" msgstr "å·²å–代 {new_name}" -#: js/filelist.js:253 js/filelist.js:255 js/filelist.js:286 js/filelist.js:288 +#: js/filelist.js:253 js/filelist.js:255 msgid "undo" msgstr "復原" @@ -124,13 +110,9 @@ msgstr "復原" msgid "replaced {new_name} with {old_name}" msgstr "使用 {new_name} å–代 {old_name}" -#: js/filelist.js:286 -msgid "unshared {files}" -msgstr "已喿¶ˆåˆ†äº« {files}" - -#: js/filelist.js:288 -msgid "deleted {files}" -msgstr "已刪除 {files}" +#: js/filelist.js:280 +msgid "perform delete operation" +msgstr "進行刪除動作" #: js/files.js:52 msgid "'.' is an invalid file name." @@ -148,92 +130,84 @@ msgstr "檔åä¸åˆæ³•,ä¸å…許 '\\', '/', '<', '>', ':', '\"', '|', '?' å’Œ #: js/files.js:78 msgid "Your storage is full, files can not be updated or synced anymore!" -msgstr "" +msgstr "您的儲å˜ç©ºé–“å·²æ»¿ï¼Œæ²’æœ‰è¾¦æ³•å†æ›´æ–°æˆ–æ˜¯åŒæ¥æª”案ï¼" #: js/files.js:82 msgid "Your storage is almost full ({usedSpacePercent}%)" -msgstr "" +msgstr "您的儲å˜ç©ºé–“å¿«è¦æ»¿äº† ({usedSpacePercent}%)" -#: js/files.js:219 +#: js/files.js:224 msgid "" "Your download is being prepared. This might take some time if the files are " "big." msgstr "æ£åœ¨æº–å‚™æ‚¨çš„ä¸‹è¼‰ï¼Œè‹¥æ‚¨çš„æª”æ¡ˆè¼ƒå¤§ï¼Œå°‡æœƒéœ€è¦æ›´å¤šæ™‚間。" -#: js/files.js:256 +#: js/files.js:261 msgid "Unable to upload your file as it is a directory or has 0 bytes" msgstr "ç„¡æ³•ä¸Šå‚³æ‚¨çš„æª”æ¡ˆå› ç‚ºå®ƒå¯èƒ½æ˜¯ä¸€å€‹ç›®éŒ„或檔案大å°ç‚º0" -#: js/files.js:256 +#: js/files.js:261 msgid "Upload Error" msgstr "上傳發生錯誤" -#: js/files.js:273 +#: js/files.js:278 msgid "Close" msgstr "關閉" -#: js/files.js:292 js/files.js:408 js/files.js:439 +#: js/files.js:297 js/files.js:413 js/files.js:444 msgid "Pending" msgstr "ç‰å€™ä¸" -#: js/files.js:312 +#: js/files.js:317 msgid "1 file uploading" msgstr "1 個檔案æ£åœ¨ä¸Šå‚³" -#: js/files.js:315 js/files.js:370 js/files.js:385 +#: js/files.js:320 js/files.js:375 js/files.js:390 msgid "{count} files uploading" msgstr "{count} 個檔案æ£åœ¨ä¸Šå‚³" -#: js/files.js:388 js/files.js:423 +#: js/files.js:393 js/files.js:428 msgid "Upload cancelled." msgstr "ä¸Šå‚³å–æ¶ˆ" -#: js/files.js:493 +#: js/files.js:502 msgid "" "File upload is in progress. Leaving the page now will cancel the upload." msgstr "檔案上傳ä¸ã€‚離開æ¤é é¢å°‡æœƒå–消上傳。" -#: js/files.js:566 +#: js/files.js:575 msgid "URL cannot be empty." msgstr "URL ä¸èƒ½ç‚ºç©ºç™½." -#: js/files.js:571 +#: js/files.js:580 msgid "Invalid folder name. Usage of 'Shared' is reserved by Owncloud" msgstr "無效的資料夾å稱,'Shared' 的使用被 Owncloud ä¿ç•™" -#: js/files.js:784 -msgid "{count} files scanned" -msgstr "{count} 個檔案已掃æ" - -#: js/files.js:792 -msgid "error while scanning" -msgstr "æŽƒææ™‚發生錯誤" - -#: js/files.js:866 templates/index.php:63 +#: js/files.js:949 templates/index.php:67 msgid "Name" msgstr "å稱" -#: js/files.js:867 templates/index.php:74 +#: js/files.js:950 templates/index.php:78 msgid "Size" msgstr "大å°" -#: js/files.js:868 templates/index.php:76 +#: js/files.js:951 templates/index.php:80 msgid "Modified" msgstr "修改" -#: js/files.js:887 +#: js/files.js:970 msgid "1 folder" msgstr "1 個資料夾" -#: js/files.js:889 +#: js/files.js:972 msgid "{count} folders" msgstr "{count} 個資料夾" -#: js/files.js:897 +#: js/files.js:980 msgid "1 file" msgstr "1 個檔案" -#: js/files.js:899 +#: js/files.js:982 msgid "{count} files" msgstr "{count} 個檔案" @@ -289,32 +263,40 @@ msgstr "資料夾" msgid "From link" msgstr "從連çµ" -#: templates/index.php:41 +#: templates/index.php:40 +msgid "Trash" +msgstr "回收ç’" + +#: templates/index.php:46 msgid "Cancel upload" msgstr "å–æ¶ˆä¸Šå‚³" -#: templates/index.php:55 +#: templates/index.php:59 msgid "Nothing in here. Upload something!" msgstr "沒有任何æ±è¥¿ã€‚請上傳內容ï¼" -#: templates/index.php:69 +#: templates/index.php:73 msgid "Download" msgstr "下載" -#: templates/index.php:101 +#: templates/index.php:105 msgid "Upload too large" msgstr "上傳éŽå¤§" -#: templates/index.php:103 +#: templates/index.php:107 msgid "" "The files you are trying to upload exceed the maximum size for file uploads " "on this server." msgstr "您試圖上傳的檔案已超éŽä¼ºæœå™¨çš„æœ€å¤§æª”案大å°é™åˆ¶ã€‚ " -#: templates/index.php:108 +#: templates/index.php:112 msgid "Files are being scanned, please wait." msgstr "æ£åœ¨æŽƒææª”案,請ç¨ç‰ã€‚" -#: templates/index.php:111 +#: templates/index.php:115 msgid "Current scanning" msgstr "ç›®å‰æŽƒæ" + +#: templates/upgrade.php:2 +msgid "Upgrading filesystem cache..." +msgstr "æ£åœ¨æ›´æ–°æª”案系統快å–..." diff --git a/l10n/zh_TW/files_trashbin.po b/l10n/zh_TW/files_trashbin.po new file mode 100644 index 00000000000..212c2b01ff0 --- /dev/null +++ b/l10n/zh_TW/files_trashbin.po @@ -0,0 +1,54 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: ownCloud\n" +"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" +"POT-Creation-Date: 2013-02-02 00:06+0100\n" +"PO-Revision-Date: 2013-02-01 23:06+0000\n" +"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/owncloud/language/zh_TW/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: zh_TW\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: js/trash.js:7 js/trash.js:69 +msgid "perform restore operation" +msgstr "" + +#: js/trash.js:100 templates/index.php:17 +msgid "Name" +msgstr "å稱" + +#: js/trash.js:101 templates/index.php:27 +msgid "Deleted" +msgstr "" + +#: js/trash.js:110 +msgid "1 folder" +msgstr "1 個資料夾" + +#: js/trash.js:112 +msgid "{count} folders" +msgstr "{count} 個資料夾" + +#: js/trash.js:120 +msgid "1 file" +msgstr "1 個檔案" + +#: js/trash.js:122 +msgid "{count} files" +msgstr "{count} 個檔案" + +#: templates/index.php:9 +msgid "Nothing in here. Your trash bin is empty!" +msgstr "" + +#: templates/index.php:20 templates/index.php:22 +msgid "Restore" +msgstr "" diff --git a/l10n/zh_TW/settings.po b/l10n/zh_TW/settings.po index e657008a0c0..96601994d53 100644 --- a/l10n/zh_TW/settings.po +++ b/l10n/zh_TW/settings.po @@ -6,6 +6,7 @@ # Donahue Chuang <soshinwu@gmail.com>, 2012. # <dw4dev@gmail.com>, 2012. # <nfsmwlin@gmail.com>, 2013. +# Pellaeon Lin <nfsmwlin@gmail.com>, 2013. # <sy6614@yahoo.com.hk>, 2012. # <weiyu871@ms14.url.com.tw>, 2012. # <wu0809@msn.com>, 2012. @@ -14,9 +15,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-30 00:23+0100\n" -"PO-Revision-Date: 2013-01-29 23:24+0000\n" -"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" +"POT-Creation-Date: 2013-02-04 00:05+0100\n" +"PO-Revision-Date: 2013-02-03 06:00+0000\n" +"Last-Translator: pellaeon <nfsmwlin@gmail.com>\n" "Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/owncloud/language/zh_TW/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -82,14 +83,42 @@ msgstr "ä½¿ç”¨è€…åŠ å…¥ç¾¤çµ„%s錯誤" msgid "Unable to remove user from group %s" msgstr "使用者移出群組%s錯誤" -#: js/apps.js:28 js/apps.js:67 +#: ajax/updateapp.php:13 +msgid "Couldn't update app." +msgstr "無法更新應用程å¼" + +#: js/apps.js:30 +msgid "Update to {appversion}" +msgstr "更新至 {appversion}" + +#: js/apps.js:36 js/apps.js:76 msgid "Disable" msgstr "åœç”¨" -#: js/apps.js:28 js/apps.js:55 +#: js/apps.js:36 js/apps.js:64 msgid "Enable" msgstr "啟用" +#: js/apps.js:55 +msgid "Please wait...." +msgstr "è«‹ç¨å€™..." + +#: js/apps.js:84 +msgid "Updating...." +msgstr "æ›´æ–°ä¸..." + +#: js/apps.js:87 +msgid "Error while updating app" +msgstr "更新應用程å¼éŒ¯èª¤" + +#: js/apps.js:87 +msgid "Error" +msgstr "錯誤" + +#: js/apps.js:90 +msgid "Updated" +msgstr "已更新" + #: js/personal.js:69 msgid "Saving..." msgstr "儲å˜ä¸..." @@ -118,6 +147,10 @@ msgstr "查看應用程å¼é 颿–¼ apps.owncloud.com" msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" msgstr "<span class=\"licence\"></span>-æ ¸å‡†: <span class=\"author\"></span>" +#: templates/apps.php:31 +msgid "Update" +msgstr "æ›´æ–°" + #: templates/help.php:3 msgid "User Documentation" msgstr "用戶說明文件" @@ -235,7 +268,7 @@ msgstr "ç”±<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud ç¤ #: templates/users.php:21 templates/users.php:79 msgid "Login Name" -msgstr "" +msgstr "登入å稱" #: templates/users.php:26 templates/users.php:82 templates/users.php:107 msgid "Groups" @@ -259,7 +292,7 @@ msgstr "å…¶ä»–" #: templates/users.php:80 msgid "Display Name" -msgstr "" +msgstr "顯示å稱" #: templates/users.php:84 templates/users.php:121 msgid "Group Admin" @@ -269,6 +302,14 @@ msgstr "群組 管ç†å“¡" msgid "Storage" msgstr "儲å˜å€" +#: templates/users.php:97 +msgid "change display name" +msgstr "修改顯示å稱" + +#: templates/users.php:101 +msgid "set new password" +msgstr "è¨å®šæ–°å¯†ç¢¼" + #: templates/users.php:137 msgid "Default" msgstr "é è¨" diff --git a/l10n/zh_TW/user_ldap.po b/l10n/zh_TW/user_ldap.po index e3b5d2655d9..f6b4543db19 100644 --- a/l10n/zh_TW/user_ldap.po +++ b/l10n/zh_TW/user_ldap.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-01-21 00:04+0100\n" -"PO-Revision-Date: 2013-01-19 23:22+0000\n" +"POT-Creation-Date: 2013-02-03 00:04+0100\n" +"PO-Revision-Date: 2013-02-02 23:05+0000\n" "Last-Translator: I Robot <owncloud-bot@tmit.eu>\n" "Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/owncloud/language/zh_TW/)\n" "MIME-Version: 1.0\n" @@ -18,6 +18,58 @@ msgstr "" "Language: zh_TW\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: ajax/deleteConfiguration.php:34 +msgid "Failed to delete the server configuration" +msgstr "" + +#: ajax/testConfiguration.php:35 +msgid "The configuration is valid and the connection could be established!" +msgstr "" + +#: ajax/testConfiguration.php:37 +msgid "" +"The configuration is valid, but the Bind failed. Please check the server " +"settings and credentials." +msgstr "" + +#: ajax/testConfiguration.php:40 +msgid "" +"The configuration is invalid. Please look in the ownCloud log for further " +"details." +msgstr "" + +#: js/settings.js:66 +msgid "Deletion failed" +msgstr "移除失敗" + +#: js/settings.js:82 +msgid "Take over settings from recent server configuration?" +msgstr "" + +#: js/settings.js:83 +msgid "Keep settings?" +msgstr "" + +#: js/settings.js:97 +msgid "Cannot add server configuration" +msgstr "" + +#: js/settings.js:121 +msgid "Connection test succeeded" +msgstr "" + +#: js/settings.js:126 +msgid "Connection test failed" +msgstr "" + +#: js/settings.js:136 +msgid "Do you really want to delete the current Server Configuration?" +msgstr "" + +#: js/settings.js:137 +msgid "Confirm Deletion" +msgstr "" + #: templates/settings.php:8 msgid "" "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may" @@ -32,165 +84,227 @@ msgid "" msgstr "" #: templates/settings.php:15 +msgid "Server configuration" +msgstr "" + +#: templates/settings.php:17 +msgid "Add Server Configuration" +msgstr "" + +#: templates/settings.php:21 msgid "Host" msgstr "主機" -#: templates/settings.php:15 +#: templates/settings.php:21 msgid "" "You can omit the protocol, except you require SSL. Then start with ldaps://" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "Base DN" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "One Base DN per line" msgstr "" -#: templates/settings.php:16 +#: templates/settings.php:22 msgid "You can specify Base DN for users and groups in the Advanced tab" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "User DN" msgstr "" -#: templates/settings.php:17 +#: templates/settings.php:23 msgid "" "The DN of the client user with which the bind shall be done, e.g. " "uid=agent,dc=example,dc=com. For anonymous access, leave DN and Password " "empty." msgstr "" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "Password" msgstr "密碼" -#: templates/settings.php:18 +#: templates/settings.php:24 msgid "For anonymous access, leave DN and Password empty." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 msgid "User Login Filter" msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "" "Defines the filter to apply, when login is attempted. %%uid replaces the " "username in the login action." msgstr "" -#: templates/settings.php:19 +#: templates/settings.php:25 #, php-format msgid "use %%uid placeholder, e.g. \"uid=%%uid\"" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "User List Filter" msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "Defines the filter to apply, when retrieving users." msgstr "" -#: templates/settings.php:20 +#: templates/settings.php:26 msgid "without any placeholder, e.g. \"objectClass=person\"." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Group Filter" msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "Defines the filter to apply, when retrieving groups." msgstr "" -#: templates/settings.php:21 +#: templates/settings.php:27 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"." msgstr "" -#: templates/settings.php:24 +#: templates/settings.php:31 +msgid "Connection Settings" +msgstr "" + +#: templates/settings.php:33 +msgid "Configuration Active" +msgstr "" + +#: templates/settings.php:33 +msgid "When unchecked, this configuration will be skipped." +msgstr "" + +#: templates/settings.php:34 msgid "Port" msgstr "連接阜" -#: templates/settings.php:25 -msgid "Base User Tree" +#: templates/settings.php:35 +msgid "Backup (Replica) Host" msgstr "" -#: templates/settings.php:25 -msgid "One User Base DN per line" +#: templates/settings.php:35 +msgid "" +"Give an optional backup host. It must be a replica of the main LDAP/AD " +"server." msgstr "" -#: templates/settings.php:26 -msgid "Base Group Tree" +#: templates/settings.php:36 +msgid "Backup (Replica) Port" msgstr "" -#: templates/settings.php:26 -msgid "One Group Base DN per line" +#: templates/settings.php:37 +msgid "Disable Main Server" msgstr "" -#: templates/settings.php:27 -msgid "Group-Member association" +#: templates/settings.php:37 +msgid "When switched on, ownCloud will only connect to the replica server." msgstr "" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Use TLS" msgstr "使用TLS" -#: templates/settings.php:28 +#: templates/settings.php:38 msgid "Do not use it for SSL connections, it will fail." msgstr "" -#: templates/settings.php:29 +#: templates/settings.php:39 msgid "Case insensitve LDAP server (Windows)" msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Turn off SSL certificate validation." msgstr "關閉 SSL 憑è‰é©—è‰" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "" "If connection only works with this option, import the LDAP server's SSL " "certificate in your ownCloud server." msgstr "" -#: templates/settings.php:30 +#: templates/settings.php:40 msgid "Not recommended, use for testing only." msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:41 +msgid "in seconds. A change empties the cache." +msgstr "" + +#: templates/settings.php:43 +msgid "Directory Settings" +msgstr "" + +#: templates/settings.php:45 msgid "User Display Name Field" msgstr "" -#: templates/settings.php:31 +#: templates/settings.php:45 msgid "The LDAP attribute to use to generate the user`s ownCloud name." msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:46 +msgid "Base User Tree" +msgstr "" + +#: templates/settings.php:46 +msgid "One User Base DN per line" +msgstr "" + +#: templates/settings.php:47 +msgid "User Search Attributes" +msgstr "" + +#: templates/settings.php:47 templates/settings.php:50 +msgid "Optional; one attribute per line" +msgstr "" + +#: templates/settings.php:48 msgid "Group Display Name Field" msgstr "" -#: templates/settings.php:32 +#: templates/settings.php:48 msgid "The LDAP attribute to use to generate the groups`s ownCloud name." msgstr "" -#: templates/settings.php:34 -msgid "in bytes" +#: templates/settings.php:49 +msgid "Base Group Tree" msgstr "" -#: templates/settings.php:36 -msgid "in seconds. A change empties the cache." +#: templates/settings.php:49 +msgid "One Group Base DN per line" msgstr "" -#: templates/settings.php:37 +#: templates/settings.php:50 +msgid "Group Search Attributes" +msgstr "" + +#: templates/settings.php:51 +msgid "Group-Member association" +msgstr "" + +#: templates/settings.php:53 +msgid "Special Attributes" +msgstr "" + +#: templates/settings.php:56 +msgid "in bytes" +msgstr "" + +#: templates/settings.php:58 msgid "" "Leave empty for user name (default). Otherwise, specify an LDAP/AD " "attribute." msgstr "" -#: templates/settings.php:39 +#: templates/settings.php:62 msgid "Help" msgstr "說明" diff --git a/lib/api.php b/lib/api.php index 545b55757ff..abf1c3b0036 100644 --- a/lib/api.php +++ b/lib/api.php @@ -188,10 +188,13 @@ class OC_API { private static function toXML($array, $writer) { foreach($array as $k => $v) { - if (is_numeric($k)) { + if ($k[0] === '@') { + $writer->writeAttribute(substr($k, 1), $v); + continue; + } else if (is_numeric($k)) { $k = 'element'; } - if (is_array($v)) { + if(is_array($v)) { $writer->startElement($k); self::toXML($v, $writer); $writer->endElement(); diff --git a/lib/app.php b/lib/app.php index 108226fc1a1..fa3e14ce4d2 100644 --- a/lib/app.php +++ b/lib/app.php @@ -142,6 +142,8 @@ class OC_App{ * check if app is shipped * @param string $appid the id of the app to check * @return bool + * + * Check if an app that is installed is a shipped app or installed from the appstore. */ public static function isShipped($appid){ $info = self::getAppInfo($appid); @@ -177,7 +179,7 @@ class OC_App{ * This function checks whether or not an app is enabled. */ public static function isEnabled( $app ) { - if( 'files'==$app or 'yes' == OC_Appconfig::getValue( $app, 'enabled' )) { + if( 'files'==$app or ('yes' == OC_Appconfig::getValue( $app, 'enabled' ))) { return true; } @@ -197,9 +199,10 @@ class OC_App{ if(!is_numeric($app)) { $app = OC_Installer::installShippedApp($app); }else{ + $appdata=OC_OCSClient::getApplication($app); $download=OC_OCSClient::getApplicationDownload($app, 1); if(isset($download['downloadlink']) and $download['downloadlink']!='') { - $app=OC_Installer::installApp(array('source'=>'http', 'href'=>$download['downloadlink'])); + $app=OC_Installer::installApp(array('source'=>'http', 'href'=>$download['downloadlink'],'appdata'=>$appdata)); } } } @@ -212,6 +215,9 @@ class OC_App{ return false; }else{ OC_Appconfig::setValue( $app, 'enabled', 'yes' ); + if(isset($appdata['id'])) { + OC_Appconfig::setValue( $app, 'ocsid', $appdata['id'] ); + } return true; } }else{ @@ -227,8 +233,13 @@ class OC_App{ * This function set an app as disabled in appconfig. */ public static function disable( $app ) { - // check if app is a shiped app or not. if not delete + // check if app is a shipped app or not. if not delete OC_Appconfig::setValue( $app, 'enabled', 'no' ); + + // check if app is a shipped app or not. if not delete + if(!OC_App::isShipped( $app )){ + OC_Installer::removeApp( $app ); + } } /** @@ -495,7 +506,7 @@ class OC_App{ * @return string */ public static function getCurrentApp() { - $script=substr($_SERVER["SCRIPT_NAME"], strlen(OC::$WEBROOT)+1); + $script=substr(OC_Request::scriptName(), strlen(OC::$WEBROOT)+1); $topFolder=substr($script, 0, strpos($script, '/')); if (empty($topFolder)) { $path_info = OC_Request::getPathInfo(); @@ -621,9 +632,13 @@ class OC_App{ if(isset($info['shipped']) and ($info['shipped']=='true')) { $info['internal']=true; $info['internallabel']='Internal App'; + $info['internalclass']=''; + $info['update']=false; } else { $info['internal']=false; $info['internallabel']='3rd Party App'; + $info['internalclass']='externalapp'; + $info['update']=OC_Installer::isUpdateAvailable($app); } $info['preview'] = OC_Helper::imagePath('settings', 'trans.png'); @@ -633,15 +648,15 @@ class OC_App{ } $remoteApps = OC_App::getAppstoreApps(); if ( $remoteApps ) { - // Remove duplicates + // Remove duplicates foreach ( $appList as $app ) { foreach ( $remoteApps AS $key => $remote ) { if ( $app['name'] == $remote['name'] - // To set duplicate detection to use OCS ID instead of string name, - // enable this code, remove the line of code above, - // and add <ocs_id>[ID]</ocs_id> to info.xml of each 3rd party app: - // OR $app['ocs_id'] == $remote['ocs_id'] + // To set duplicate detection to use OCS ID instead of string name, + // enable this code, remove the line of code above, + // and add <ocs_id>[ID]</ocs_id> to info.xml of each 3rd party app: + // OR $app['ocs_id'] == $remote['ocs_id'] ) { unset( $remoteApps[$key]); } @@ -675,6 +690,15 @@ class OC_App{ $app1[$i]['author'] = $app['personid']; $app1[$i]['ocs_id'] = $app['id']; $app1[$i]['internal'] = $app1[$i]['active'] = 0; + $app1[$i]['update'] = false; + if($app['label']=='recommended'){ + $app1[$i]['internallabel'] = 'Recommended'; + $app1[$i]['internalclass'] = 'recommendedapp'; + }else{ + $app1[$i]['internallabel'] = '3rd Party'; + $app1[$i]['internalclass'] = 'externalapp'; + } + // rating img if($app['score']>=0 and $app['score']<5) $img=OC_Helper::imagePath( "core", "rating/s1.png" ); @@ -803,16 +827,16 @@ class OC_App{ /** * @param string $appid - * @return OC_FilesystemView + * @return \OC\Files\View */ public static function getStorage($appid) { if(OC_App::isEnabled($appid)) {//sanity check if(OC_User::isLoggedIn()) { - $view = new OC_FilesystemView('/'.OC_User::getUser()); + $view = new \OC\Files\View('/'.OC_User::getUser()); if(!$view->file_exists($appid)) { $view->mkdir($appid); } - return new OC_FilesystemView('/'.OC_User::getUser().'/'.$appid); + return new \OC\Files\View('/'.OC_User::getUser().'/'.$appid); }else{ OC_Log::write('core', 'Can\'t get app storage, app '.$appid.', user not logged in', OC_Log::ERROR); return false; diff --git a/lib/archive/tar.php b/lib/archive/tar.php index 0fa633c6038..117d88e5f42 100644 --- a/lib/archive/tar.php +++ b/lib/archive/tar.php @@ -308,7 +308,7 @@ class OC_Archive_TAR extends OC_Archive{ if($mode=='r' or $mode=='rb') { return fopen($tmpFile, $mode); }else{ - OC_CloseStreamWrapper::$callBacks[$tmpFile]=array($this, 'writeBack'); + \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack')); self::$tempFiles[$tmpFile]=$path; return fopen('close://'.$tmpFile, $mode); } diff --git a/lib/archive/zip.php b/lib/archive/zip.php index 1c967baa08f..8e31795ded1 100644 --- a/lib/archive/zip.php +++ b/lib/archive/zip.php @@ -171,7 +171,7 @@ class OC_Archive_ZIP extends OC_Archive{ $ext=''; } $tmpFile=OCP\Files::tmpFile($ext); - OC_CloseStreamWrapper::$callBacks[$tmpFile]=array($this, 'writeBack'); + \OC\Files\Stream\Close::registerCallback($tmpFile, array($this, 'writeBack')); if($this->fileExists($path)) { $this->extractFile($path, $tmpFile); } diff --git a/lib/base.php b/lib/base.php index ebaf33814e3..90e64f13af6 100644 --- a/lib/base.php +++ b/lib/base.php @@ -27,8 +27,7 @@ require_once 'public/constants.php'; * No, we can not put this class in its own file because it is used by * OC_autoload! */ -class OC -{ +class OC { /** * Associative array for autoloading. classname => filename */ @@ -78,13 +77,12 @@ class OC /** * SPL autoload */ - public static function autoload($className) - { + public static function autoload($className) { if (array_key_exists($className, OC::$CLASSPATH)) { $path = OC::$CLASSPATH[$className]; /** @TODO: Remove this when necessary - Remove "apps/" from inclusion path for smooth migration to mutli app dir - */ + Remove "apps/" from inclusion path for smooth migration to mutli app dir + */ if (strpos($path, 'apps/') === 0) { OC_Log::write('core', 'include path for class "' . $className . '" starts with "apps/"', OC_Log::DEBUG); $path = str_replace('apps/', '', $path); @@ -96,7 +94,7 @@ class OC } elseif (strpos($className, 'OCP\\') === 0) { $path = 'public/' . strtolower(str_replace('\\', '/', substr($className, 3)) . '.php'); } elseif (strpos($className, 'OCA\\') === 0) { - foreach(self::$APPSROOTS as $appDir) { + foreach (self::$APPSROOTS as $appDir) { $path = $appDir['path'] . '/' . strtolower(str_replace('\\', '/', substr($className, 3)) . '.php'); $fullPath = stream_resolve_include_path($path); if (file_exists($fullPath)) { @@ -112,6 +110,8 @@ class OC $path = str_replace('\\', '/', $className) . '.php'; } elseif (strpos($className, 'Test_') === 0) { $path = 'tests/lib/' . strtolower(str_replace('_', '/', substr($className, 5)) . '.php'); + } elseif (strpos($className, 'Test\\') === 0) { + $path = 'tests/lib/' . strtolower(str_replace('\\', '/', substr($className, 5)) . '.php'); } else { return false; } @@ -122,12 +122,18 @@ class OC return false; } - public static function initPaths() - { + public static function initPaths() { // calculate the root directories OC::$SERVERROOT = str_replace("\\", '/', substr(__DIR__, 0, -4)); + + // ensure we can find OC_Config + set_include_path( + OC::$SERVERROOT . '/lib' . PATH_SEPARATOR . + get_include_path() + ); + OC::$SUBURI = str_replace("\\", "/", substr(realpath($_SERVER["SCRIPT_FILENAME"]), strlen(OC::$SERVERROOT))); - $scriptName = $_SERVER["SCRIPT_NAME"]; + $scriptName = OC_Request::scriptName(); if (substr($scriptName, -1) == '/') { $scriptName .= 'index.php'; //make sure suburi follows the same rules as scriptName @@ -145,12 +151,6 @@ class OC OC::$WEBROOT = '/' . OC::$WEBROOT; } - // ensure we can find OC_Config - set_include_path( - OC::$SERVERROOT . '/lib' . PATH_SEPARATOR . - get_include_path() - ); - // search the 3rdparty folder if (OC_Config::getValue('3rdpartyroot', '') <> '' and OC_Config::getValue('3rdpartyurl', '') <> '') { OC::$THIRDPARTYROOT = OC_Config::getValue('3rdpartyroot', ''); @@ -186,17 +186,18 @@ class OC exit; } $paths = array(); - foreach (OC::$APPSROOTS as $path) + foreach (OC::$APPSROOTS as $path) { $paths[] = $path['path']; + } // set the right include path set_include_path( OC::$SERVERROOT . '/lib' . PATH_SEPARATOR . - OC::$SERVERROOT . '/config' . PATH_SEPARATOR . - OC::$THIRDPARTYROOT . '/3rdparty' . PATH_SEPARATOR . - implode($paths, PATH_SEPARATOR) . PATH_SEPARATOR . - get_include_path() . PATH_SEPARATOR . - OC::$SERVERROOT + OC::$SERVERROOT . '/config' . PATH_SEPARATOR . + OC::$THIRDPARTYROOT . '/3rdparty' . PATH_SEPARATOR . + implode($paths, PATH_SEPARATOR) . PATH_SEPARATOR . + get_include_path() . PATH_SEPARATOR . + OC::$SERVERROOT ); } @@ -209,8 +210,7 @@ class OC } } - public static function checkInstalled() - { + public static function checkInstalled() { // Redirect to installer if not installed if (!OC_Config::getValue('installed', false) && OC::$SUBURI != '/index.php') { if (!OC::$CLI) { @@ -221,14 +221,13 @@ class OC } } - public static function checkSSL() - { + public static function checkSSL() { // redirect to https site if configured if (OC_Config::getValue("forcessl", false)) { header('Strict-Transport-Security: max-age=31536000'); ini_set("session.cookie_secure", "on"); if (OC_Request::serverProtocol() <> 'https' and !OC::$CLI) { - $url = "https://" . OC_Request::serverHost() . $_SERVER['REQUEST_URI']; + $url = "https://" . OC_Request::serverHost() . OC_Request::requestUri(); header("Location: $url"); exit(); } @@ -272,8 +271,7 @@ class OC } } - public static function initTemplateEngine() - { + public static function initTemplateEngine() { // Add the stuff we need always OC_Util::addScript("jquery-1.7.2.min"); OC_Util::addScript("jquery-ui-1.10.0.custom"); @@ -295,8 +293,7 @@ class OC OC_Util::addScript("oc-requesttoken"); } - public static function initSession() - { + public static function initSession() { // prevents javascript from accessing php session cookies ini_set('session.cookie_httponly', '1;'); @@ -326,8 +323,7 @@ class OC $_SESSION['LAST_ACTIVITY'] = time(); } - public static function getRouter() - { + public static function getRouter() { if (!isset(OC::$router)) { OC::$router = new OC_Router(); OC::$router->loadRoutes(); @@ -337,19 +333,17 @@ class OC } - public static function loadAppClassPaths() - { - foreach(OC_APP::getEnabledApps() as $app) { - $file = OC_App::getAppPath($app).'/appinfo/classpath.php'; - if(file_exists($file)) { + public static function loadAppClassPaths() { + foreach (OC_APP::getEnabledApps() as $app) { + $file = OC_App::getAppPath($app) . '/appinfo/classpath.php'; + if (file_exists($file)) { require_once $file; } } } - public static function init() - { + public static function init() { // register autoloader spl_autoload_register(array('OC', 'autoload')); setlocale(LC_ALL, 'en_US.UTF-8'); @@ -420,10 +414,10 @@ class OC } // register the stream wrappers - require_once 'streamwrappers.php'; - stream_wrapper_register("fakedir", "OC_FakeDirStream"); - stream_wrapper_register('static', 'OC_StaticStreamWrapper'); - stream_wrapper_register('close', 'OC_CloseStreamWrapper'); + stream_wrapper_register('fakedir', 'OC\Files\Stream\Dir'); + stream_wrapper_register('static', 'OC\Files\Stream\StaticStream'); + stream_wrapper_register('close', 'OC\Files\Stream\Close'); + stream_wrapper_register('oc', 'OC\Files\Stream\OC'); self::checkConfig(); self::checkInstalled(); @@ -514,8 +508,7 @@ class OC /** * register hooks for the cache */ - public static function registerCacheHooks() - { + public static function registerCacheHooks() { // register cache cleanup jobs OC_BackgroundJob_RegularTask::register('OC_Cache_FileGlobal', 'gc'); OC_Hook::connect('OC_User', 'post_login', 'OC_Cache_File', 'loginListener'); @@ -524,8 +517,7 @@ class OC /** * register hooks for the filesystem */ - public static function registerFilesystemHooks() - { + public static function registerFilesystemHooks() { // Check for blacklisted files OC_Hook::connect('OC_Filesystem', 'write', 'OC_Filesystem', 'isBlacklisted'); OC_Hook::connect('OC_Filesystem', 'rename', 'OC_Filesystem', 'isBlacklisted'); @@ -534,8 +526,7 @@ class OC /** * register hooks for sharing */ - public static function registerShareHooks() - { + public static function registerShareHooks() { OC_Hook::connect('OC_User', 'post_deleteUser', 'OCP\Share', 'post_deleteUser'); OC_Hook::connect('OC_User', 'post_addToGroup', 'OCP\Share', 'post_addToGroup'); OC_Hook::connect('OC_User', 'post_removeFromGroup', 'OCP\Share', 'post_removeFromGroup'); @@ -545,12 +536,22 @@ class OC /** * @brief Handle the request */ - public static function handleRequest() - { + public static function handleRequest() { // load all the classpaths from the enabled apps so they are available // in the routing files of each app OC::loadAppClassPaths(); + // Check if ownCloud is installed or in maintenance (update) mode + if (!OC_Config::getValue('installed', false)) { + require_once 'core/setup.php'; + exit(); + } + $request = OC_Request::getPathInfo(); + if(substr($request, -3) !== '.js'){// we need these files during the upgrade + self::checkMaintenanceMode(); + self::checkUpgrade(); + } + try { OC::getRouter()->match(OC_Request::getPathInfo()); return; @@ -560,6 +561,7 @@ class OC OC_Response::setStatus(405); return; } + $app = OC::$REQUESTEDAPP; $file = OC::$REQUESTEDFILE; $param = array('app' => $app, 'file' => $file); @@ -569,14 +571,6 @@ class OC return; } - // Check if ownCloud is installed or in maintenance (update) mode - if (!OC_Config::getValue('installed', false)) { - require_once 'core/setup.php'; - exit(); - } - self::checkMaintenanceMode(); - self::checkUpgrade(); - // Handle redirect URL for logged in users if (isset($_REQUEST['redirect_url']) && OC_User::isLoggedIn()) { $location = OC_Helper::makeURLAbsolute(urldecode($_REQUEST['redirect_url'])); @@ -606,7 +600,7 @@ class OC $file_ext = substr($param['file'], -3); if ($file_ext != 'php' || !self::loadAppScriptFile($param) - ) { + ) { header('HTTP/1.0 404 Not Found'); } } @@ -616,8 +610,7 @@ class OC self::handleLogin(); } - public static function loadAppScriptFile($param) - { + public static function loadAppScriptFile($param) { OC_App::loadApps(); $app = $param['app']; $file = $param['file']; @@ -631,8 +624,7 @@ class OC return false; } - public static function loadCSSFile($param) - { + public static function loadCSSFile($param) { $app = $param['app']; $file = $param['file']; $app_path = OC_App::getAppPath($app); @@ -645,27 +637,25 @@ class OC } } - protected static function handleLogin() - { + protected static function handleLogin() { OC_App::loadApps(array('prelogin')); $error = array(); // remember was checked after last login if (OC::tryRememberLogin()) { $error[] = 'invalidcookie'; - // Someone wants to log in : + // Someone wants to log in : } elseif (OC::tryFormLogin()) { $error[] = 'invalidpassword'; - // The user is already authenticated using Apaches AuthType Basic... very usable in combination with LDAP + // The user is already authenticated using Apaches AuthType Basic... very usable in combination with LDAP } elseif (OC::tryBasicAuthLogin()) { $error[] = 'invalidpassword'; } OC_Util::displayLoginPage(array_unique($error)); } - protected static function cleanupLoginTokens($user) - { + protected static function cleanupLoginTokens($user) { $cutoff = time() - OC_Config::getValue('remember_login_cookie_lifetime', 60 * 60 * 24 * 15); $tokens = OC_Preferences::getKeys($user, 'login_token'); foreach ($tokens as $token) { @@ -676,13 +666,12 @@ class OC } } - protected static function tryRememberLogin() - { + protected static function tryRememberLogin() { if (!isset($_COOKIE["oc_remember_login"]) || !isset($_COOKIE["oc_token"]) || !isset($_COOKIE["oc_username"]) || !$_COOKIE["oc_remember_login"] - ) { + ) { return false; } OC_App::loadApps(array('authentication')); @@ -717,8 +706,7 @@ class OC return true; } - protected static function tryFormLogin() - { + protected static function tryFormLogin() { if (!isset($_POST["user"]) || !isset($_POST['password'])) { return false; } @@ -751,18 +739,17 @@ class OC return true; } - protected static function tryBasicAuthLogin() - { + protected static function tryBasicAuthLogin() { if (!isset($_SERVER["PHP_AUTH_USER"]) || !isset($_SERVER["PHP_AUTH_PW"]) - ) { + ) { return false; } OC_App::loadApps(array('authentication')); if (OC_User::login($_SERVER["PHP_AUTH_USER"], $_SERVER["PHP_AUTH_PW"])) { //OC_Log::write('core',"Logged in with HTTP Authentication", OC_Log::DEBUG); OC_User::unsetMagicInCookie(); - $_REQUEST['redirect_url'] = (isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : ''); + $_REQUEST['redirect_url'] = OC_Request::requestUri(); OC_Util::redirectToDefaultPage(); } return true; @@ -776,8 +763,7 @@ if (!isset($RUNTIME_NOAPPS)) { } if (!function_exists('get_temp_dir')) { - function get_temp_dir() - { + function get_temp_dir() { if ($temp = ini_get('upload_tmp_dir')) return $temp; if ($temp = getenv('TMP')) return $temp; if ($temp = getenv('TEMP')) return $temp; diff --git a/lib/cache/file.php b/lib/cache/file.php index 27d8b19f36e..f9ecf41dcac 100644 --- a/lib/cache/file.php +++ b/lib/cache/file.php @@ -15,11 +15,11 @@ class OC_Cache_File{ } if(OC_User::isLoggedIn()) { $subdir = 'cache'; - $view = new OC_FilesystemView('/'.OC_User::getUser()); + $view = new \OC\Files\View('/'.OC_User::getUser()); if(!$view->file_exists($subdir)) { $view->mkdir($subdir); } - $this->storage = new OC_FilesystemView('/'.OC_User::getUser().'/'.$subdir); + $this->storage = new \OC\Files\View('/'.OC_User::getUser().'/'.$subdir); return $this->storage; }else{ OC_Log::write('core', 'Can\'t get cache storage, user not logged in', OC_Log::ERROR); diff --git a/lib/connector/sabre/directory.php b/lib/connector/sabre/directory.php index 6076aed6fcd..b210602bbf4 100644 --- a/lib/connector/sabre/directory.php +++ b/lib/connector/sabre/directory.php @@ -62,7 +62,7 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa } } else { $newPath = $this->path . '/' . $name; - OC_Filesystem::file_put_contents($newPath, $data); + \OC\Files\Filesystem::file_put_contents($newPath, $data); return OC_Connector_Sabre_Node::getETagPropertyForPath($newPath); } @@ -78,7 +78,7 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa public function createDirectory($name) { $newPath = $this->path . '/' . $name; - OC_Filesystem::mkdir($newPath); + \OC\Files\Filesystem::mkdir($newPath); } @@ -93,7 +93,7 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa $path = $this->path . '/' . $name; if (is_null($info)) { - $info = OC_Files::getFileInfo($path); + $info = \OC\Files\Filesystem::getFileInfo($path); } if (!$info) { @@ -116,12 +116,13 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa * @return Sabre_DAV_INode[] */ public function getChildren() { - $folder_content = OC_Files::getDirectoryContent($this->path); + + $folder_content = \OC\Files\Filesystem::getDirectoryContent($this->path); $paths = array(); foreach($folder_content as $info) { $paths[] = $this->path.'/'.$info['name']; + $properties[$this->path.'/'.$info['name']][self::GETETAG_PROPERTYNAME] = $info['etag']; } - $properties = array_fill_keys($paths, array()); if(count($paths)>0) { // // the number of arguments within IN conditions are limited in most databases @@ -137,7 +138,9 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa $propertypath = $row['propertypath']; $propertyname = $row['propertyname']; $propertyvalue = $row['propertyvalue']; - $properties[$propertypath][$propertyname] = $propertyvalue; + if($propertyname !== self::GETETAG_PROPERTYNAME) { + $properties[$propertypath][$propertyname] = $propertyvalue; + } } } } @@ -160,7 +163,7 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa public function childExists($name) { $path = $this->path . '/' . $name; - return OC_Filesystem::file_exists($path); + return \OC\Files\Filesystem::file_exists($path); } @@ -173,7 +176,7 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa if ($this->path != "/Shared") { foreach($this->getChildren() as $child) $child->delete(); - OC_Filesystem::rmdir($this->path); + \OC\Files\Filesystem::rmdir($this->path); } } @@ -184,10 +187,10 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa * @return array */ public function getQuotaInfo() { - $rootInfo=OC_FileCache_Cached::get(''); + $rootInfo=\OC\Files\Filesystem::getFileInfo(''); return array( $rootInfo['size'], - OC_Filesystem::free_space() + \OC\Files\Filesystem::free_space() ); } diff --git a/lib/connector/sabre/file.php b/lib/connector/sabre/file.php index 8d963a1cf8d..1c18a391742 100644 --- a/lib/connector/sabre/file.php +++ b/lib/connector/sabre/file.php @@ -45,7 +45,7 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D */ public function put($data) { - OC_Filesystem::file_put_contents($this->path, $data); + \OC\Files\Filesystem::file_put_contents($this->path,$data); return OC_Connector_Sabre_Node::getETagPropertyForPath($this->path); } @@ -57,7 +57,7 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D */ public function get() { - return OC_Filesystem::fopen($this->path, 'rb'); + return \OC\Files\Filesystem::fopen($this->path,'rb'); } @@ -68,7 +68,7 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D */ public function delete() { - OC_Filesystem::unlink($this->path); + \OC\Files\Filesystem::unlink($this->path); } @@ -98,16 +98,7 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D if (isset($properties[self::GETETAG_PROPERTYNAME])) { return $properties[self::GETETAG_PROPERTYNAME]; } - return $this->getETagPropertyForPath($this->path); - } - - /** - * Creates a ETag for this path. - * @param string $path Path of the file - * @return string|null Returns null if the ETag can not effectively be determined - */ - static protected function createETag($path) { - return OC_Filesystem::hash('md5', $path); + return null; } /** @@ -122,7 +113,7 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D return $this->fileinfo_cache['mimetype']; } - return OC_Filesystem::getMimeType($this->path); + return \OC\Files\Filesystem::getMimeType($this->path); } } diff --git a/lib/connector/sabre/node.php b/lib/connector/sabre/node.php index 026ec9f7ec5..52995630211 100644 --- a/lib/connector/sabre/node.php +++ b/lib/connector/sabre/node.php @@ -84,12 +84,12 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr $newPath = $parentPath . '/' . $newName; $oldPath = $this->path; - OC_Filesystem::rename($this->path, $newPath); + \OC\Files\Filesystem::rename($this->path,$newPath); $this->path = $newPath; $query = OC_DB::prepare( 'UPDATE `*PREFIX*properties` SET `propertypath` = ? WHERE `userid` = ? AND `propertypath` = ?' ); - $query->execute( array( $newPath, OC_User::getUser(), $oldPath )); + $query->execute( array( $newPath,OC_User::getUser(), $oldPath )); } @@ -104,9 +104,9 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr */ protected function getFileinfoCache() { if (!isset($this->fileinfo_cache)) { - if ($fileinfo_cache = OC_FileCache::get($this->path)) { + if ($fileinfo_cache = \OC\Files\Filesystem::getFileInfo($this->path)) { } else { - $fileinfo_cache = OC_Filesystem::stat($this->path); + $fileinfo_cache = \OC\Files\Filesystem::stat($this->path); } $this->fileinfo_cache = $fileinfo_cache; @@ -134,7 +134,7 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr * Even if the modification time is set to a custom value the access time is set to now. */ public function touch($mtime) { - OC_Filesystem::touch($this->path, $mtime); + \OC\Files\Filesystem::touch($this->path, $mtime); } /** @@ -154,15 +154,17 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr } } else { - if( strcmp( $propertyName, self::LASTMODIFIED_PROPERTYNAME) === 0 ) { + if( strcmp( $propertyName, self::GETETAG_PROPERTYNAME) === 0 ) { + \OC\Files\Filesystem::putFileInfo($this->path, array('etag'=> $propertyValue)); + } elseif( strcmp( $propertyName, self::LASTMODIFIED_PROPERTYNAME) === 0 ) { $this->touch($propertyValue); } else { if(!array_key_exists( $propertyName, $existing )) { $query = OC_DB::prepare( 'INSERT INTO `*PREFIX*properties` (`userid`,`propertypath`,`propertyname`,`propertyvalue`) VALUES(?,?,?,?)' ); - $query->execute( array( OC_User::getUser(), $this->path, $propertyName, $propertyValue )); + $query->execute( array( OC_User::getUser(), $this->path, $propertyName,$propertyValue )); } else { $query = OC_DB::prepare( 'UPDATE `*PREFIX*properties` SET `propertyvalue` = ? WHERE `userid` = ? AND `propertypath` = ? AND `propertyname` = ?' ); - $query->execute( array( $propertyValue, OC_User::getUser(), $this->path, $propertyName )); + $query->execute( array( $propertyValue,OC_User::getUser(), $this->path, $propertyName )); } } } @@ -190,6 +192,7 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr while( $row = $result->fetchRow()) { $this->property_cache[$row['propertyname']] = $row['propertyvalue']; } + $this->property_cache[self::GETETAG_PROPERTYNAME] = $this->getETagPropertyForPath($this->path); } // if the array was empty, we need to return everything @@ -205,57 +208,16 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr } /** - * @brief Creates a ETag for this path. - * @param string $path Path of the file - * @return string|null Returns null if the ETag can not effectively be determined - */ - static protected function createETag($path) { - if(self::$ETagFunction) { - $hash = call_user_func(self::$ETagFunction, $path); - return $hash; - }else{ - return uniqid('', true); - } - } - - /** - * @brief Returns the ETag surrounded by double-quotes for this path. + * Returns the ETag surrounded by double-quotes for this path. * @param string $path Path of the file * @return string|null Returns null if the ETag can not effectively be determined */ static public function getETagPropertyForPath($path) { - $tag = self::createETag($path); - if (empty($tag)) { - return null; + $data = \OC\Files\Filesystem::getFileInfo($path); + if (isset($data['etag'])) { + return '"'.$data['etag'].'"'; } - $etag = '"'.$tag.'"'; - $query = OC_DB::prepare( 'INSERT INTO `*PREFIX*properties` (`userid`,`propertypath`,`propertyname`,`propertyvalue`) VALUES(?,?,?,?)' ); - $query->execute( array( OC_User::getUser(), $path, self::GETETAG_PROPERTYNAME, $etag )); - return $etag; + return null; } - /** - * @brief Remove the ETag from the cache. - * @param string $path Path of the file - */ - static public function removeETagPropertyForPath($path) { - // remove tags from this and parent paths - $paths = array(); - while ($path != '/' && $path != '.' && $path != '' && $path != '\\') { - $paths[] = $path; - $path = dirname($path); - } - if (empty($paths)) { - return; - } - $paths[] = $path; - $path_placeholders = join(',', array_fill(0, count($paths), '?')); - $query = OC_DB::prepare( 'DELETE FROM `*PREFIX*properties`' - .' WHERE `userid` = ?' - .' AND `propertyname` = ?' - .' AND `propertypath` IN ('.$path_placeholders.')' - ); - $vals = array( OC_User::getUser(), self::GETETAG_PROPERTYNAME ); - $query->execute(array_merge( $vals, $paths )); - } } diff --git a/lib/connector/sabre/quotaplugin.php b/lib/connector/sabre/quotaplugin.php index fbbb4a3cf6f..ce9a968eb3c 100644 --- a/lib/connector/sabre/quotaplugin.php +++ b/lib/connector/sabre/quotaplugin.php @@ -50,7 +50,7 @@ class OC_Connector_Sabre_QuotaPlugin extends Sabre_DAV_ServerPlugin { $uri='/'.$uri; } list($parentUri, $newName) = Sabre_DAV_URLUtil::splitPath($uri); - if ($length > OC_Filesystem::free_space($parentUri)) { + if ($length > \OC\Files\Filesystem::free_space($parentUri)) { throw new Sabre_DAV_Exception_InsufficientStorage(); } } diff --git a/lib/connector/sabre/request.php b/lib/connector/sabre/request.php new file mode 100644 index 00000000000..97a27996bf3 --- /dev/null +++ b/lib/connector/sabre/request.php @@ -0,0 +1,50 @@ +<?php + +/** + * ownCloud + * + * @author Stefan Herbrechtsmeier + * @copyright 2012 Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net> + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ + +class OC_Connector_Sabre_Request extends Sabre_HTTP_Request { + /** + * Returns the requested uri + * + * @return string + */ + public function getUri() { + return OC_Request::requestUri(); + } + + /** + * Returns a specific item from the _SERVER array. + * + * Do not rely on this feature, it is for internal use only. + * + * @param string $field + * @return string + */ + public function getRawServerValue($field) { + if($field == 'REQUEST_URI'){ + return $this->getUri(); + } + else{ + return isset($this->_SERVER[$field])?$this->_SERVER[$field]:null; + } + } +} diff --git a/lib/filecache.php b/lib/filecache.php deleted file mode 100644 index 7764890ef1a..00000000000 --- a/lib/filecache.php +++ /dev/null @@ -1,539 +0,0 @@ -<?php - -/** -* @author Robin Appelman -* @copyright 2011 Robin Appelman icewind1991@gmail.com -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE -* License as published by the Free Software Foundation; either -* version 3 of the License, or any later version. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU AFFERO GENERAL PUBLIC LICENSE for more details. -* -* You should have received a copy of the GNU Affero General Public -* License along with this library. If not, see <http://www.gnu.org/licenses/>. -* -*/ - -/** - * provide caching for filesystem info in the database - * - * not used by OC_Filesystem for reading filesystem info, - * instead apps should use OC_FileCache::get where possible - * - * It will try to keep the data up to date but changes from outside - * ownCloud can invalidate the cache - * - * Methods that take $path and $root params expect $path to be relative, like - * /admin/files/file.txt, if $root is false - * - */ -class OC_FileCache{ - - /** - * get the filesystem info from the cache - * @param string path - * @param string root (optional) - * @return array - * - * returns an associative array with the following keys: - * - size - * - mtime - * - ctime - * - mimetype - * - encrypted - * - versioned - */ - public static function get($path, $root=false) { - if(OC_FileCache_Update::hasUpdated($path, $root)) { - if($root===false) {//filesystem hooks are only valid for the default root - OC_Hook::emit('OC_Filesystem', 'post_write', array('path'=>$path)); - }else{ - OC_FileCache_Update::update($path, $root); - } - } - return OC_FileCache_Cached::get($path, $root); - } - - /** - * put filesystem info in the cache - * @param string $path - * @param array data - * @param string root (optional) - * @note $data is an associative array in the same format as returned - * by get - */ - public static function put($path, $data, $root=false) { - if($root===false) { - $root=OC_Filesystem::getRoot(); - } - $fullpath=OC_Filesystem::normalizePath($root.'/'.$path); - $parent=self::getParentId($fullpath); - $id=self::getId($fullpath, ''); - if(isset(OC_FileCache_Cached::$savedData[$fullpath])) { - $data=array_merge(OC_FileCache_Cached::$savedData[$fullpath], $data); - unset(OC_FileCache_Cached::$savedData[$fullpath]); - } - if($id!=-1) { - self::update($id, $data); - return; - } - - // add parent directory to the file cache if it does not exist yet. - if ($parent == -1 && $fullpath != $root) { - $parentDir = dirname($path); - self::scanFile($parentDir); - $parent = self::getParentId($fullpath); - } - - if(!isset($data['size']) or !isset($data['mtime'])) {//save incomplete data for the next time we write it - OC_FileCache_Cached::$savedData[$fullpath]=$data; - return; - } - if(!isset($data['encrypted'])) { - $data['encrypted']=false; - } - if(!isset($data['versioned'])) { - $data['versioned']=false; - } - $mimePart=dirname($data['mimetype']); - $data['size']=(int)$data['size']; - $data['ctime']=(int)$data['mtime']; - $data['writable']=(int)$data['writable']; - $data['encrypted']=(int)$data['encrypted']; - $data['versioned']=(int)$data['versioned']; - $user=OC_User::getUser(); - $query=OC_DB::prepare('INSERT INTO `*PREFIX*fscache`(`parent`, `name`, `path`, `path_hash`, `size`, `mtime`, `ctime`, `mimetype`, `mimepart`,`user`,`writable`,`encrypted`,`versioned`) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)'); - $result=$query->execute(array($parent, basename($fullpath), $fullpath, md5($fullpath), $data['size'], $data['mtime'], $data['ctime'], $data['mimetype'], $mimePart, $user, $data['writable'], $data['encrypted'], $data['versioned'])); - if(OC_DB::isError($result)) { - OC_Log::write('files', 'error while writing file('.$fullpath.') to cache', OC_Log::ERROR); - } - - if($cache=OC_Cache::getUserCache(true)) { - $cache->remove('fileid/'.$fullpath);//ensure we don't have -1 cached - } - } - - /** - * update filesystem info of a file - * @param int $id - * @param array $data - */ - private static function update($id, $data) { - $arguments=array(); - $queryParts=array(); - foreach(array('size','mtime','ctime','mimetype','encrypted','versioned', 'writable') as $attribute) { - if(isset($data[$attribute])) { - //Convert to int it args are false - if($data[$attribute] === false) { - $arguments[] = 0; - }else{ - $arguments[] = $data[$attribute]; - } - $queryParts[]='`'.$attribute.'`=?'; - } - } - if(isset($data['mimetype'])) { - $arguments[]=dirname($data['mimetype']); - $queryParts[]='`mimepart`=?'; - } - $arguments[]=$id; - - if(!empty($queryParts)) { - $sql = 'UPDATE `*PREFIX*fscache` SET '.implode(' , ', $queryParts).' WHERE `id`=?'; - $query=OC_DB::prepare($sql); - $result=$query->execute($arguments); - if(OC_DB::isError($result)) { - OC_Log::write('files', 'error while updating file('.$id.') in cache', OC_Log::ERROR); - } - } - } - - /** - * register a file move in the cache - * @param string oldPath - * @param string newPath - * @param string root (optional) - */ - public static function move($oldPath, $newPath, $root=false) { - if($root===false) { - $root=OC_Filesystem::getRoot(); - } - // If replacing an existing file, delete the file - if (self::inCache($newPath, $root)) { - self::delete($newPath, $root); - } - $oldPath=$root.$oldPath; - $newPath=$root.$newPath; - $newParent=self::getParentId($newPath); - $query=OC_DB::prepare('UPDATE `*PREFIX*fscache` SET `parent`=? ,`name`=?, `path`=?, `path_hash`=? WHERE `path_hash`=?'); - $query->execute(array($newParent, basename($newPath), $newPath, md5($newPath), md5($oldPath))); - - if(($cache=OC_Cache::getUserCache(true)) && $cache->hasKey('fileid/'.$oldPath)) { - $cache->set('fileid/'.$newPath, $cache->get('fileid/'.$oldPath)); - $cache->remove('fileid/'.$oldPath); - } - - $query=OC_DB::prepare('SELECT `path` FROM `*PREFIX*fscache` WHERE `path` LIKE ?'); - $oldLength=strlen($oldPath); - $updateQuery=OC_DB::prepare('UPDATE `*PREFIX*fscache` SET `path`=?, `path_hash`=? WHERE `path_hash`=?'); - while($row= $query->execute(array($oldPath.'/%'))->fetchRow()) { - $old=$row['path']; - $new=$newPath.substr($old, $oldLength); - $updateQuery->execute(array($new, md5($new), md5($old))); - - if(($cache=OC_Cache::getUserCache(true)) && $cache->hasKey('fileid/'.$old)) { - $cache->set('fileid/'.$new, $cache->get('fileid/'.$old)); - $cache->remove('fileid/'.$old); - } - } - } - - /** - * delete info from the cache - * @param string path - * @param string root (optional) - */ - public static function delete($path, $root=false) { - if($root===false) { - $root=OC_Filesystem::getRoot(); - } - $query=OC_DB::prepare('DELETE FROM `*PREFIX*fscache` WHERE `path_hash`=?'); - $query->execute(array(md5($root.$path))); - - //delete everything inside the folder - $query=OC_DB::prepare('DELETE FROM `*PREFIX*fscache` WHERE `path` LIKE ?'); - $query->execute(array($root.$path.'/%')); - - OC_Cache::remove('fileid/'.$root.$path); - } - - /** - * return array of filenames matching the querty - * @param string $query - * @param boolean $returnData - * @param string root (optional) - * @return array of filepaths - */ - public static function search($search, $returnData=false, $root=false) { - if($root===false) { - $root=OC_Filesystem::getRoot(); - } - $rootLen=strlen($root); - if(!$returnData) { - $select = '`path`'; - }else{ - $select = '*'; - } - if (OC_Config::getValue('dbtype') === 'oci8') { - $where = 'LOWER(`name`) LIKE LOWER(?) AND `user`=?'; - } else { - $where = '`name` LIKE ? AND `user`=?'; - } - $query=OC_DB::prepare('SELECT '.$select.' FROM `*PREFIX*fscache` WHERE '.$where); - $result=$query->execute(array("%$search%", OC_User::getUser())); - $names=array(); - while($row=$result->fetchRow()) { - if(!$returnData) { - $names[]=substr($row['path'], $rootLen); - }else{ - $row['path']=substr($row['path'], $rootLen); - $names[]=$row; - } - } - return $names; - } - - /** - * get all files and folders in a folder - * @param string path - * @param string root (optional) - * @return array - * - * returns an array of assiciative arrays with the following keys: - * - name - * - size - * - mtime - * - ctime - * - mimetype - * - encrypted - * - versioned - */ - public static function getFolderContent($path, $root=false, $mimetype_filter='') { - if(OC_FileCache_Update::hasUpdated($path, $root, true)) { - OC_FileCache_Update::updateFolder($path, $root); - } - return OC_FileCache_Cached::getFolderContent($path, $root, $mimetype_filter); - } - - /** - * check if a file or folder is in the cache - * @param string $path - * @param string root (optional) - * @return bool - */ - public static function inCache($path, $root=false) { - return self::getId($path, $root)!=-1; - } - - /** - * get the file id as used in the cache - * @param string path - * @param string root (optional) - * @return int - */ - public static function getId($path, $root=false) { - if($root===false) { - $root=OC_Filesystem::getRoot(); - } - - $fullPath=$root.$path; - if(($cache=OC_Cache::getUserCache(true)) && $cache->hasKey('fileid/'.$fullPath)) { - return $cache->get('fileid/'.$fullPath); - } - - $query=OC_DB::prepare('SELECT `id` FROM `*PREFIX*fscache` WHERE `path_hash`=?'); - $result=$query->execute(array(md5($fullPath))); - if(OC_DB::isError($result)) { - OC_Log::write('files', 'error while getting file id of '.$path, OC_Log::ERROR); - return -1; - } - - $result=$result->fetchRow(); - if(is_array($result)) { - $id=$result['id']; - }else{ - $id=-1; - } - if($cache=OC_Cache::getUserCache(true)) { - $cache->set('fileid/'.$fullPath, $id); - } - - return $id; - } - - /** - * get the file path from the id, relative to the home folder of the user - * @param int id - * @param string user (optional) - * @return string - */ - public static function getPath($id, $user='') { - if(!$user) { - $user=OC_User::getUser(); - } - $query=OC_DB::prepare('SELECT `path` FROM `*PREFIX*fscache` WHERE `id`=? AND `user`=?'); - $result=$query->execute(array($id, $user)); - $row=$result->fetchRow(); - $path=$row['path']; - $root='/'.$user.'/files'; - if(substr($path, 0, strlen($root))!=$root) { - return false; - } - return substr($path, strlen($root)); - } - - /** - * get the file id of the parent folder, taking into account '/' has no parent - * @param string $path - * @return int - */ - private static function getParentId($path) { - if($path=='/') { - return -1; - }else{ - return self::getId(dirname($path), ''); - } - } - - /** - * adjust the size of the parent folders - * @param string $path - * @param int $sizeDiff - * @param string root (optinal) - */ - public static function increaseSize($path, $sizeDiff, $root=false) { - if($sizeDiff==0) return; - $item = OC_FileCache_Cached::get($path); - //stop walking up the filetree if we hit a non-folder or reached the root folder - if($path == '/' || $path=='' || $item['mimetype'] !== 'httpd/unix-directory') { - return; - } - $id = $item['id']; - while($id!=-1) {//walk up the filetree increasing the size of all parent folders - $query=OC_DB::prepare('UPDATE `*PREFIX*fscache` SET `size`=`size`+? WHERE `id`=?'); - $query->execute(array($sizeDiff, $id)); - $path=dirname($path); - if($path == '' or $path =='/') { - return; - } - $parent = OC_FileCache_Cached::get($path); - $id = $parent['id']; - //stop walking up the filetree if we hit a non-folder - if($parent['mimetype'] !== 'httpd/unix-directory') { - return; - } - } - } - - /** - * recursively scan the filesystem and fill the cache - * @param string $path - * @param OC_EventSource $eventSource (optional) - * @param int $count (optional) - * @param string $root (optional) - */ - public static function scan($path, $eventSource=false,&$count=0, $root=false) { - if($eventSource) { - $eventSource->send('scanning', array('file'=>$path, 'count'=>$count)); - } - $lastSend=$count; - // NOTE: Ugly hack to prevent shared files from going into the cache (the source already exists somewhere in the cache) - if (substr($path, 0, 7) == '/Shared') { - return; - } - if($root===false) { - $view=OC_Filesystem::getView(); - }else{ - $view=new OC_FilesystemView($root); - } - self::scanFile($path, $root); - $dh=$view->opendir($path.'/'); - $totalSize=0; - if($dh) { - while (($filename = readdir($dh)) !== false) { - if($filename != '.' and $filename != '..') { - $file=$path.'/'.$filename; - if($view->is_dir($file.'/')) { - self::scan($file, $eventSource, $count, $root); - }else{ - $totalSize+=self::scanFile($file, $root); - $count++; - if($count>$lastSend+25 and $eventSource) { - $lastSend=$count; - $eventSource->send('scanning', array('file'=>$path, 'count'=>$count)); - } - } - } - } - } - - OC_FileCache_Update::cleanFolder($path, $root); - self::increaseSize($path, $totalSize, $root); - } - - /** - * scan a single file - * @param string path - * @param string root (optional) - * @return int size of the scanned file - */ - public static function scanFile($path, $root=false) { - // NOTE: Ugly hack to prevent shared files from going into the cache (the source already exists somewhere in the cache) - if (substr($path, 0, 7) == '/Shared') { - return; - } - if($root===false) { - $view=OC_Filesystem::getView(); - }else{ - $view=new OC_FilesystemView($root); - } - if(!$view->is_readable($path)) return; //cant read, nothing we can do - clearstatcache(); - $mimetype=$view->getMimeType($path); - $stat=$view->stat($path); - if($mimetype=='httpd/unix-directory') { - $stat['size'] = 0; - $writable=$view->is_writable($path.'/'); - }else{ - $writable=$view->is_writable($path); - } - $stat['mimetype']=$mimetype; - $stat['writable']=$writable; - if($path=='/') { - $path=''; - } - self::put($path, $stat, $root); - return $stat['size']; - } - - /** - * find files by mimetype - * @param string $part1 - * @param string $part2 (optional) - * @param string root (optional) - * @return array of file paths - * - * $part1 and $part2 together form the complete mimetype. - * e.g. searchByMime('text', 'plain') - * - * seccond mimetype part can be ommited - * e.g. searchByMime('audio') - */ - public static function searchByMime($part1, $part2=null, $root=false) { - if($root===false) { - $root=OC_Filesystem::getRoot(); - } - $rootLen=strlen($root); - $root .= '%'; - $user=OC_User::getUser(); - if(!$part2) { - $query=OC_DB::prepare('SELECT `path` FROM `*PREFIX*fscache` WHERE `mimepart`=? AND `user`=? AND `path` LIKE ?'); - $result=$query->execute(array($part1, $user, $root)); - }else{ - $query=OC_DB::prepare('SELECT `path` FROM `*PREFIX*fscache` WHERE `mimetype`=? AND `user`=? AND `path` LIKE ? '); - $result=$query->execute(array($part1.'/'.$part2, $user, $root)); - } - $names=array(); - while($row=$result->fetchRow()) { - $names[]=substr($row['path'], $rootLen); - } - return $names; - } - - /** - * clean old pre-path_hash entries - */ - public static function clean() { - $query=OC_DB::prepare('DELETE FROM `*PREFIX*fscache` WHERE LENGTH(`path_hash`)<30'); - $query->execute(); - } - - /** - * clear filecache entries - * @param string user (optonal) - */ - public static function clear($user='') { - if($user) { - $query=OC_DB::prepare('DELETE FROM `*PREFIX*fscache` WHERE `user`=?'); - $query->execute(array($user)); - }else{ - $query=OC_DB::prepare('DELETE FROM `*PREFIX*fscache`'); - $query->execute(); - } - } - - /** - * trigger an update for the cache by setting the mtimes to 0 - * @param string $user (optional) - */ - public static function triggerUpdate($user='') { - if($user) { - $query=OC_DB::prepare('UPDATE `*PREFIX*fscache` SET `mtime`=0 WHERE `user`=? AND `mimetype`= ? '); - $query->execute(array($user,'httpd/unix-directory')); - }else{ - $query=OC_DB::prepare('UPDATE `*PREFIX*fscache` SET `mtime`=0 AND `mimetype`= ? '); - $query->execute(array('httpd/unix-directory')); - } - } -} - -//watch for changes and try to keep the cache up to date -OC_Hook::connect('OC_Filesystem', 'post_write', 'OC_FileCache_Update', 'fileSystemWatcherWrite'); -OC_Hook::connect('OC_Filesystem', 'post_delete', 'OC_FileCache_Update', 'fileSystemWatcherDelete'); -OC_Hook::connect('OC_Filesystem', 'post_rename', 'OC_FileCache_Update', 'fileSystemWatcherRename'); -OC_Hook::connect('OC_User', 'post_deleteUser', 'OC_FileCache_Update', 'deleteFromUser'); diff --git a/lib/filecache/cached.php b/lib/filecache/cached.php deleted file mode 100644 index 5e0a00746b9..00000000000 --- a/lib/filecache/cached.php +++ /dev/null @@ -1,81 +0,0 @@ -<?php -/** - * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> - * This file is licensed under the Affero General Public License version 3 or - * later. - * See the COPYING-README file. - */ - - -/** - * get data from the filecache without checking for updates - */ -class OC_FileCache_Cached{ - public static $savedData=array(); - - public static function get($path, $root=false) { - if($root===false) { - $root=OC_Filesystem::getRoot(); - } - $path=$root.$path; - $stmt=OC_DB::prepare('SELECT `id`, `path`,`ctime`,`mtime`,`mimetype`,`size`,`encrypted`,`versioned`,`writable` FROM `*PREFIX*fscache` WHERE `path_hash`=?'); - if ( ! OC_DB::isError($stmt) ) { - $result=$stmt->execute(array(md5($path))); - if ( ! OC_DB::isError($result) ) { - $result = $result->fetchRow(); - } else { - OC:Log::write('OC_FileCache_Cached', 'could not execute get: '. OC_DB::getErrorMessage($result), OC_Log::ERROR); - $result = false; - } - } else { - OC_Log::write('OC_FileCache_Cached', 'could not prepare get: '. OC_DB::getErrorMessage($stmt), OC_Log::ERROR); - $result = false; - } - if(is_array($result)) { - if(isset(self::$savedData[$path])) { - $result=array_merge($result, self::$savedData[$path]); - } - return $result; - }else{ - if(isset(self::$savedData[$path])) { - return self::$savedData[$path]; - }else{ - return array(); - } - } - } - - /** - * get all files and folders in a folder - * @param string path - * @param string root (optional) - * @return array - * - * returns an array of assiciative arrays with the following keys: - * - path - * - name - * - size - * - mtime - * - ctime - * - mimetype - * - encrypted - * - versioned - */ - public static function getFolderContent($path, $root=false, $mimetype_filter='') { - if($root===false) { - $root=OC_Filesystem::getRoot(); - } - $parent=OC_FileCache::getId($path, $root); - if($parent==-1) { - return array(); - } - $query=OC_DB::prepare('SELECT `id`,`path`,`name`,`ctime`,`mtime`,`mimetype`,`size`,`encrypted`,`versioned`,`writable` FROM `*PREFIX*fscache` WHERE `parent`=? AND (`mimetype` LIKE ? OR `mimetype` = ?)'); - $result=$query->execute(array($parent, $mimetype_filter.'%', 'httpd/unix-directory'))->fetchAll(); - if(is_array($result)) { - return $result; - }else{ - OC_Log::write('files', 'getFolderContent(): file not found in cache ('.$path.')', OC_Log::DEBUG); - return false; - } - } -} diff --git a/lib/filecache/update.php b/lib/filecache/update.php deleted file mode 100644 index bc403113e7c..00000000000 --- a/lib/filecache/update.php +++ /dev/null @@ -1,227 +0,0 @@ -<?php -/** - * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> - * This file is licensed under the Affero General Public License version 3 or - * later. - * See the COPYING-README file. - */ - - -/** - * handles updating the filecache according to outside changes - */ -class OC_FileCache_Update{ - /** - * check if a file or folder is updated outside owncloud - * @param string path - * @param string root (optional) - * @param boolean folder - * @return bool - */ - public static function hasUpdated($path, $root=false, $folder=false) { - if($root===false) { - $view=OC_Filesystem::getView(); - }else{ - $view=new OC_FilesystemView($root); - } - if(!$view->file_exists($path)) { - return false; - } - $cachedData=OC_FileCache_Cached::get($path, $root); - if(isset($cachedData['mtime'])) { - $cachedMTime=$cachedData['mtime']; - if($folder) { - return $view->hasUpdated($path.'/', $cachedMTime); - }else{ - return $view->hasUpdated($path, $cachedMTime); - } - }else{//file not in cache, so it has to be updated - if(($path=='/' or $path=='') and $root===false) {//dont auto update the home folder, it will be scanned - return false; - } - return true; - } - } - - /** - * delete non existing files from the cache - */ - public static function cleanFolder($path, $root=false) { - if($root===false) { - $view=OC_Filesystem::getView(); - }else{ - $view=new OC_FilesystemView($root); - } - - $cachedContent=OC_FileCache_Cached::getFolderContent($path, $root); - foreach($cachedContent as $fileData) { - $path=$fileData['path']; - $file=$view->getRelativePath($path); - if(!$view->file_exists($file)) { - if($root===false) {//filesystem hooks are only valid for the default root - OC_Hook::emit('OC_Filesystem', 'post_delete', array('path'=>$file)); - }else{ - self::delete($file, $root); - } - } - } - } - - /** - * update the cache according to changes in the folder - * @param string path - * @param string root (optional) - */ - public static function updateFolder($path, $root=false) { - if($root===false) { - $view=OC_Filesystem::getView(); - }else{ - $view=new OC_FilesystemView($root); - } - $dh=$view->opendir($path.'/'); - if($dh) {//check for changed/new files - while (($filename = readdir($dh)) !== false) { - if($filename != '.' and $filename != '..' and $filename != '') { - $file=$path.'/'.$filename; - $isDir=$view->is_dir($file); - if(self::hasUpdated($file, $root, $isDir)) { - if($isDir) { - self::updateFolder($file, $root); - }elseif($root===false) {//filesystem hooks are only valid for the default root - OC_Hook::emit('OC_Filesystem', 'post_write', array('path'=>$file)); - }else{ - self::update($file, $root); - } - } - } - } - } - - self::cleanFolder($path, $root); - - //update the folder last, so we can calculate the size correctly - if($root===false) {//filesystem hooks are only valid for the default root - OC_Hook::emit('OC_Filesystem', 'post_write', array('path'=>$path)); - }else{ - self::update($path, $root); - } - } - - /** - * called when changes are made to files - * @param array $params - * @param string root (optional) - */ - public static function fileSystemWatcherWrite($params) { - $path=$params['path']; - self::update($path); - } - - /** - * called when files are deleted - * @param array $params - * @param string root (optional) - */ - public static function fileSystemWatcherDelete($params) { - $path=$params['path']; - self::delete($path); - } - - /** - * called when files are deleted - * @param array $params - * @param string root (optional) - */ - public static function fileSystemWatcherRename($params) { - $oldPath=$params['oldpath']; - $newPath=$params['newpath']; - self::rename($oldPath, $newPath); - } - - /** - * update the filecache according to changes to the filesystem - * @param string path - * @param string root (optional) - */ - public static function update($path, $root=false) { - if($root===false) { - $view=OC_Filesystem::getView(); - }else{ - $view=new OC_FilesystemView($root); - } - - $mimetype=$view->getMimeType($path); - - $size=0; - $cached=OC_FileCache_Cached::get($path, $root); - $cachedSize=isset($cached['size'])?$cached['size']:0; - - if($view->is_dir($path.'/')) { - if(OC_FileCache::inCache($path, $root)) { - $cachedContent=OC_FileCache_Cached::getFolderContent($path, $root); - foreach($cachedContent as $file) { - $size+=$file['size']; - } - $mtime=$view->filemtime($path.'/'); - $ctime=$view->filectime($path.'/'); - $writable=$view->is_writable($path.'/'); - OC_FileCache::put($path, array('size'=>$size,'mtime'=>$mtime,'ctime'=>$ctime,'mimetype'=>$mimetype, 'writable'=>$writable)); - }else{ - $count=0; - OC_FileCache::scan($path, null, $count, $root); - return; //increaseSize is already called inside scan - } - }else{ - $size=OC_FileCache::scanFile($path, $root); - } - if($path !== '' and $path !== '/') { - OC_FileCache::increaseSize(dirname($path), $size-$cachedSize, $root); - } - } - - /** - * update the filesystem after a delete has been detected - * @param string path - * @param string root (optional) - */ - public static function delete($path, $root=false) { - $cached=OC_FileCache_Cached::get($path, $root); - if(!isset($cached['size'])) { - return; - } - $size=$cached['size']; - OC_FileCache::increaseSize(dirname($path), -$size, $root); - OC_FileCache::delete($path, $root); - } - - /** - * update the filesystem after a rename has been detected - * @param string oldPath - * @param string newPath - * @param string root (optional) - */ - public static function rename($oldPath, $newPath, $root=false) { - if(!OC_FileCache::inCache($oldPath, $root)) { - return; - } - if($root===false) { - $view=OC_Filesystem::getView(); - }else{ - $view=new OC_FilesystemView($root); - } - - $cached=OC_FileCache_Cached::get($oldPath, $root); - $oldSize=$cached['size']; - OC_FileCache::increaseSize(dirname($oldPath), -$oldSize, $root); - OC_FileCache::increaseSize(dirname($newPath), $oldSize, $root); - OC_FileCache::move($oldPath, $newPath); - } - - /** - * delete files owned by user from the cache - * @param string $parameters$parameters["uid"]) - */ - public static function deleteFromUser($parameters) { - OC_FileCache::clear($parameters["uid"]); - } -} diff --git a/lib/filechunking.php b/lib/filechunking.php index 55a4d730430..d63a0d72c83 100644 --- a/lib/filechunking.php +++ b/lib/filechunking.php @@ -94,49 +94,49 @@ class OC_FileChunking { } public function file_assemble($path) { - $absolutePath = OC_Filesystem::normalizePath(OC_Filesystem::getView()->getAbsolutePath($path)); + $absolutePath = \OC\Files\Filesystem::normalizePath(\OC\Files\Filesystem::getView()->getAbsolutePath($path)); $data = ''; // use file_put_contents as method because that best matches what this function does - if (OC_FileProxy::runPreProxies('file_put_contents', $absolutePath, $data) && OC_Filesystem::isValidPath($path)) { - $path = OC_Filesystem::getView()->getRelativePath($absolutePath); - $exists = OC_Filesystem::file_exists($path); + if (OC_FileProxy::runPreProxies('file_put_contents', $absolutePath, $data) && \OC\Files\Filesystem::isValidPath($path)) { + $path = \OC\Files\Filesystem::getView()->getRelativePath($absolutePath); + $exists = \OC\Files\Filesystem::file_exists($path); $run = true; if(!$exists) { OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_create, + \OC\Files\Filesystem::CLASSNAME, + \OC\Files\Filesystem::signal_create, array( - OC_Filesystem::signal_param_path => $path, - OC_Filesystem::signal_param_run => &$run + \OC\Files\Filesystem::signal_param_path => $path, + \OC\Files\Filesystem::signal_param_run => &$run ) ); } OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_write, + \OC\Files\Filesystem::CLASSNAME, + \OC\Files\Filesystem::signal_write, array( - OC_Filesystem::signal_param_path => $path, - OC_Filesystem::signal_param_run => &$run + \OC\Files\Filesystem::signal_param_path => $path, + \OC\Files\Filesystem::signal_param_run => &$run ) ); if(!$run) { return false; } - $target = OC_Filesystem::fopen($path, 'w'); + $target = \OC\Files\Filesystem::fopen($path, 'w'); if($target) { $count = $this->assemble($target); fclose($target); if(!$exists) { OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_post_create, - array( OC_Filesystem::signal_param_path => $path) + \OC\Files\Filesystem::CLASSNAME, + \OC\Files\Filesystem::signal_post_create, + array( \OC\Files\Filesystem::signal_param_path => $path) ); } OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_post_write, - array( OC_Filesystem::signal_param_path => $path) + \OC\Files\Filesystem::CLASSNAME, + \OC\Files\Filesystem::signal_post_write, + array( \OC\Files\Filesystem::signal_param_path => $path) ); OC_FileProxy::runPostProxies('file_put_contents', $absolutePath, $count); return $count > 0; diff --git a/lib/fileproxy.php b/lib/fileproxy.php index 2f81bde64a1..52ec79b4bdb 100644 --- a/lib/fileproxy.php +++ b/lib/fileproxy.php @@ -36,7 +36,7 @@ * The return value of the post-proxy will be used as the new result of the operation * The operations that have a post-proxy are: * file_get_contents, is_file, is_dir, file_exists, stat, is_readable, - * is_writable, fileatime, filemtime, filectime, file_get_contents, + * is_writable, filemtime, filectime, file_get_contents, * getMimeType, hash, fopen, free_space and search */ diff --git a/lib/fileproxy/fileoperations.php b/lib/fileproxy/fileoperations.php index 516629adaec..47ccd8f8c26 100644 --- a/lib/fileproxy/fileoperations.php +++ b/lib/fileproxy/fileoperations.php @@ -28,10 +28,10 @@ class OC_FileProxy_FileOperations extends OC_FileProxy{ static $rootView; public function premkdir($path) { - if(!self::$rootView) { - self::$rootView = new OC_FilesystemView(''); + if(!self::$rootView){ + self::$rootView = new \OC\Files\View(''); } return !self::$rootView->file_exists($path); } -}
\ No newline at end of file +} diff --git a/lib/fileproxy/quota.php b/lib/fileproxy/quota.php index 503288142aa..7e0f631c8fb 100644 --- a/lib/fileproxy/quota.php +++ b/lib/fileproxy/quota.php @@ -22,7 +22,7 @@ */ /** - * user quota managment + * user quota management */ class OC_FileProxy_Quota extends OC_FileProxy{ @@ -57,23 +57,25 @@ class OC_FileProxy_Quota extends OC_FileProxy{ * @return int */ private function getFreeSpace($path) { - $storage=OC_Filesystem::getStorage($path); - $owner=$storage->getOwner($path); + /** + * @var \OC\Files\Storage\Storage $storage + * @var string $internalPath + */ + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($path); + $owner=$storage->getOwner($internalPath); + if (!$owner) { + return -1; + } $totalSpace=$this->getQuota($owner); if($totalSpace==-1) { return -1; } - $rootInfo=OC_FileCache::get('', "/".$owner."/files"); - // TODO Remove after merge of share_api - if (OC_FileCache::inCache('/Shared', "/".$owner."/files")) { - $sharedInfo=OC_FileCache::get('/Shared', "/".$owner."/files"); - } else { - $sharedInfo = null; - } + $view = new \OC\Files\View("/".$owner."/files"); + + $rootInfo=$view->getFileInfo('/'); $usedSpace=isset($rootInfo['size'])?$rootInfo['size']:0; - $usedSpace=isset($sharedInfo['size'])?$usedSpace-$sharedInfo['size']:$usedSpace; return $totalSpace-$usedSpace; } @@ -93,8 +95,8 @@ class OC_FileProxy_Quota extends OC_FileProxy{ } public function preCopy($path1, $path2) { - if(!self::$rootView) { - self::$rootView = new OC_FilesystemView(''); + if(!self::$rootView){ + self::$rootView = new \OC\Files\View(''); } return (self::$rootView->filesize($path1)<$this->getFreeSpace($path2) or $this->getFreeSpace($path2)==-1); } diff --git a/lib/files.php b/lib/files.php index f4e0f140a44..e3245653f99 100644 --- a/lib/files.php +++ b/lib/files.php @@ -1,144 +1,48 @@ <?php /** -* ownCloud -* -* @author Frank Karlitschek -* @copyright 2012 Frank Karlitschek frank@owncloud.org -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE -* License as published by the Free Software Foundation; either -* version 3 of the License, or any later version. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU AFFERO GENERAL PUBLIC LICENSE for more details. -* -* You should have received a copy of the GNU Affero General Public -* License along with this library. If not, see <http://www.gnu.org/licenses/>. -* -*/ + * ownCloud + * + * @author Frank Karlitschek + * @copyright 2012 Frank Karlitschek frank@owncloud.org + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ /** * Class for fileserver access * */ class OC_Files { - static $tmpFiles=array(); + static $tmpFiles = array(); - /** - * get the filesystem info - * @param string path - * @return array - * - * returns an associative array with the following keys: - * - size - * - mtime - * - ctime - * - mimetype - * - encrypted - * - versioned - */ - public static function getFileInfo($path) { - $path = OC_Filesystem::normalizePath($path); - if (($path == '/Shared' || substr($path, 0, 8) == '/Shared/') && OC_App::isEnabled('files_sharing')) { - if ($path == '/Shared') { - list($info) = OCP\Share::getItemsSharedWith('file', OC_Share_Backend_File::FORMAT_FILE_APP_ROOT); - } else { - $info = array(); - if (OC_Filesystem::file_exists($path)) { - $info['size'] = OC_Filesystem::filesize($path); - $info['mtime'] = OC_Filesystem::filemtime($path); - $info['ctime'] = OC_Filesystem::filectime($path); - $info['mimetype'] = OC_Filesystem::getMimeType($path); - $info['encrypted'] = false; - $info['versioned'] = false; - } - } - } else { - $info = OC_FileCache::get($path); - } - return $info; - } - - /** - * get the content of a directory - * @param dir $directory path under datadirectory - */ - public static function getDirectoryContent($directory, $mimetype_filter = '') { - $directory=OC_Filesystem::normalizePath($directory); - if($directory=='/') { - $directory=''; - } - $files = array(); - if (($directory == '/Shared' || substr($directory, 0, 8) == '/Shared/') && OC_App::isEnabled('files_sharing')) { - if ($directory == '/Shared') { - $files = OCP\Share::getItemsSharedWith('file', OC_Share_Backend_File::FORMAT_FILE_APP, array('folder' => $directory, 'mimetype_filter' => $mimetype_filter)); - } else { - $pos = strpos($directory, '/', 8); - // Get shared folder name - if ($pos !== false) { - $itemTarget = substr($directory, 7, $pos - 7); - } else { - $itemTarget = substr($directory, 7); - } - $files = OCP\Share::getItemSharedWith('folder', $itemTarget, OC_Share_Backend_File::FORMAT_FILE_APP, array('folder' => $directory, 'mimetype_filter' => $mimetype_filter)); - } - } else { - $files = OC_FileCache::getFolderContent($directory, false, $mimetype_filter); - foreach ($files as &$file) { - $file['directory'] = $directory; - $file['type'] = ($file['mimetype'] == 'httpd/unix-directory') ? 'dir' : 'file'; - $permissions = OCP\PERMISSION_READ; - // NOTE: Remove check when new encryption is merged - if (!$file['encrypted']) { - $permissions |= OCP\PERMISSION_SHARE; - } - if ($file['type'] == 'dir' && $file['writable']) { - $permissions |= OCP\PERMISSION_CREATE; - } - if ($file['writable']) { - $permissions |= OCP\PERMISSION_UPDATE | OCP\PERMISSION_DELETE; - } - $file['permissions'] = $permissions; - } - if ($directory == '' && OC_App::isEnabled('files_sharing')) { - // Add 'Shared' folder - $files = array_merge($files, OCP\Share::getItemsSharedWith('file', OC_Share_Backend_File::FORMAT_FILE_APP_ROOT)); - } - } - usort($files, "fileCmp");//TODO: remove this once ajax is merged - return $files; + static public function getFileInfo($path){ + return \OC\Files\Filesystem::getFileInfo($path); } - public static function searchByMime($mimetype_filter) { - $files = array(); - $dirs_to_check = array(''); - while (!empty($dirs_to_check)) { - // get next subdir to check - $dir = array_pop($dirs_to_check); - $dir_content = self::getDirectoryContent($dir, $mimetype_filter); - foreach($dir_content as $file) { - if ($file['type'] == 'file') { - $files[] = $dir.'/'.$file['name']; - } - else { - $dirs_to_check[] = $dir.'/'.$file['name']; - } - } - } - return $files; + static public function getDirectoryContent($path){ + return \OC\Files\Filesystem::getDirectoryContent($path); } /** - * return the content of a file or return a zip file containning multiply files - * - * @param dir $dir - * @param file $file ; seperated list of files to download - * @param boolean $only_header ; boolean to only send header of the request - */ + * return the content of a file or return a zip file containing multiple files + * + * @param string $dir + * @param string $file ; separated list of files to download + * @param boolean $only_header ; boolean to only send header of the request + */ public static function get($dir, $files, $only_header = false) { $xsendfile = false; if (isset($_SERVER['MOD_X_SENDFILE_ENABLED']) || @@ -149,7 +53,7 @@ class OC_Files { $files=explode(';', $files); } - if(is_array($files)) { + if (is_array($files)) { self::validateZipDownload($dir, $files); $executionTime = intval(ini_get('max_execution_time')); set_time_limit(0); @@ -162,19 +66,20 @@ class OC_Files { if ($zip->open($filename, ZIPARCHIVE::CREATE | ZIPARCHIVE::OVERWRITE)!==true) { exit("cannot open <$filename>\n"); } - foreach($files as $file) { - $file=$dir.'/'.$file; - if(OC_Filesystem::is_file($file)) { - $tmpFile=OC_Filesystem::toTmpFile($file); - self::$tmpFiles[]=$tmpFile; + foreach ($files as $file) { + $file = $dir . '/' . $file; + if (\OC\Files\Filesystem::is_file($file)) { + $tmpFile = \OC\Files\Filesystem::toTmpFile($file); + self::$tmpFiles[] = $tmpFile; $zip->addFile($tmpFile, basename($file)); - }elseif(OC_Filesystem::is_dir($file)) { + } elseif (\OC\Files\Filesystem::is_dir($file)) { self::zipAddDir($file, $zip); } } $zip->close(); + $name = basename($dir) . '.zip'; set_time_limit($executionTime); - }elseif(OC_Filesystem::is_dir($dir.'/'.$files)) { + } elseif (\OC\Files\Filesystem::is_dir($dir . '/' . $files)) { self::validateZipDownload($dir, $files); $executionTime = intval(ini_get('max_execution_time')); set_time_limit(0); @@ -187,53 +92,55 @@ class OC_Files { if ($zip->open($filename, ZIPARCHIVE::CREATE | ZIPARCHIVE::OVERWRITE)!==true) { exit("cannot open <$filename>\n"); } - $file=$dir.'/'.$files; + $file = $dir . '/' . $files; self::zipAddDir($file, $zip); $zip->close(); + $name = $files . '.zip'; set_time_limit($executionTime); - }else{ - $zip=false; - $filename=$dir.'/'.$files; + } else { + $zip = false; + $filename = $dir . '/' . $files; + $name = $files; } OC_Util::obEnd(); - if($zip or OC_Filesystem::is_readable($filename)) { + if ($zip or \OC\Files\Filesystem::isReadable($filename)) { if ( preg_match( "/MSIE/", $_SERVER["HTTP_USER_AGENT"] ) ) { - header( 'Content-Disposition: attachment; filename="' . rawurlencode( basename($filename) ) . '"' ); + header( 'Content-Disposition: attachment; filename="' . rawurlencode($name) . '"' ); } else { - header( 'Content-Disposition: attachment; filename*=UTF-8\'\'' . rawurlencode( basename($filename) ) - . '; filename="' . rawurlencode( basename($filename) ) . '"' ); + header( 'Content-Disposition: attachment; filename*=UTF-8\'\'' . rawurlencode($name) + . '; filename="' . rawurlencode($name) . '"' ); } header('Content-Transfer-Encoding: binary'); OC_Response::disableCaching(); - if($zip) { + if ($zip) { ini_set('zlib.output_compression', 'off'); header('Content-Type: application/zip'); header('Content-Length: ' . filesize($filename)); self::addSendfileHeader($filename); }else{ - header('Content-Type: '.OC_Filesystem::getMimeType($filename)); - header("Content-Length: ".OC_Filesystem::filesize($filename)); - $storage = OC_Filesystem::getStorage($filename); - if ($storage instanceof OC_Filestorage_Local) { - self::addSendfileHeader(OC_Filesystem::getLocalFile($filename)); + header('Content-Type: '.\OC\Files\Filesystem::getMimeType($filename)); + header("Content-Length: ".\OC\Files\Filesystem::filesize($filename)); + list($storage) = \OC\Files\Filesystem::resolvePath($filename); + if ($storage instanceof \OC\File\Storage\Local) { + self::addSendfileHeader(\OC\Files\Filesystem::getLocalFile($filename)); } } - }elseif($zip or !OC_Filesystem::file_exists($filename)) { + } elseif ($zip or !\OC\Files\Filesystem::file_exists($filename)) { header("HTTP/1.0 404 Not Found"); - $tmpl = new OC_Template( '', '404', 'guest' ); - $tmpl->assign('file', $filename); + $tmpl = new OC_Template('', '404', 'guest'); + $tmpl->assign('file', $name); $tmpl->printPage(); - }else{ + } else { header("HTTP/1.0 403 Forbidden"); die('403 Forbidden'); } if($only_header) { return ; } - if($zip) { - $handle=fopen($filename, 'r'); + if ($zip) { + $handle = fopen($filename, 'r'); if ($handle) { - $chunkSize = 8*1024;// 1 MB chunks + $chunkSize = 8 * 1024; // 1 MB chunks while (!feof($handle)) { echo fread($handle, $chunkSize); flush(); @@ -243,10 +150,10 @@ class OC_Files { unlink($filename); } }else{ - OC_Filesystem::readfile($filename); + \OC\Files\Filesystem::readfile($filename); } - foreach(self::$tmpFiles as $tmpFile) { - if(file_exists($tmpFile) and is_file($tmpFile)) { + foreach (self::$tmpFiles as $tmpFile) { + if (file_exists($tmpFile) and is_file($tmpFile)) { unlink($tmpFile); } } @@ -269,97 +176,27 @@ class OC_Files { foreach($files as $file) { $filename=$file['name']; $file=$dir.'/'.$filename; - if(OC_Filesystem::is_file($file)) { - $tmpFile=OC_Filesystem::toTmpFile($file); + if(\OC\Files\Filesystem::is_file($file)) { + $tmpFile=\OC\Files\Filesystem::toTmpFile($file); OC_Files::$tmpFiles[]=$tmpFile; $zip->addFile($tmpFile, $internalDir.$filename); - }elseif(OC_Filesystem::is_dir($file)) { + }elseif(\OC\Files\Filesystem::is_dir($file)) { self::zipAddDir($file, $zip, $internalDir); } } } - /** - * move a file or folder - * - * @param dir $sourceDir - * @param file $source - * @param dir $targetDir - * @param file $target - */ - public static function move($sourceDir, $source, $targetDir, $target) { - if(OC_User::isLoggedIn() && ($sourceDir != '' || $source != 'Shared')) { - $targetFile=self::normalizePath($targetDir.'/'.$target); - $sourceFile=self::normalizePath($sourceDir.'/'.$source); - return OC_Filesystem::rename($sourceFile, $targetFile); - } else { - return false; - } - } - - /** - * copy a file or folder - * - * @param dir $sourceDir - * @param file $source - * @param dir $targetDir - * @param file $target - */ - public static function copy($sourceDir, $source, $targetDir, $target) { - if(OC_User::isLoggedIn()) { - $targetFile=$targetDir.'/'.$target; - $sourceFile=$sourceDir.'/'.$source; - return OC_Filesystem::copy($sourceFile, $targetFile); - } - } - - /** - * create a new file or folder - * - * @param dir $dir - * @param file $name - * @param type $type - */ - public static function newFile($dir, $name, $type) { - if(OC_User::isLoggedIn()) { - $file=$dir.'/'.$name; - if($type=='dir') { - return OC_Filesystem::mkdir($file); - }elseif($type=='file') { - $fileHandle=OC_Filesystem::fopen($file, 'w'); - if($fileHandle) { - fclose($fileHandle); - return true; - }else{ - return false; - } - } - } - } /** - * deletes a file or folder - * - * @param dir $dir - * @param file $name - */ - public static function delete($dir, $file) { - if(OC_User::isLoggedIn() && ($dir!= '' || $file != 'Shared')) { - $file=$dir.'/'.$file; - return OC_Filesystem::unlink($file); - } - } - - /** - * checks if the selected files are within the size constraint. If not, outputs an error page. - * - * @param dir $dir - * @param files $files - */ + * checks if the selected files are within the size constraint. If not, outputs an error page. + * + * @param dir $dir + * @param files $files + */ static function validateZipDownload($dir, $files) { - if(!OC_Config::getValue('allowZipDownload', true)) { + if (!OC_Config::getValue('allowZipDownload', true)) { $l = OC_L10N::get('lib'); header("HTTP/1.0 409 Conflict"); - $tmpl = new OC_Template( '', 'error', 'user' ); + $tmpl = new OC_Template('', 'error', 'user'); $errors = array( array( 'error' => $l->t('ZIP download is turned off.'), @@ -372,19 +209,19 @@ class OC_Files { } $zipLimit = OC_Config::getValue('maxZipInputSize', OC_Helper::computerFileSize('800 MB')); - if($zipLimit > 0) { + if ($zipLimit > 0) { $totalsize = 0; - if(is_array($files)) { - foreach($files as $file) { - $totalsize += OC_Filesystem::filesize($dir.'/'.$file); + if (is_array($files)) { + foreach ($files as $file) { + $totalsize += \OC\Files\Filesystem::filesize($dir . '/' . $file); } - }else{ - $totalsize += OC_Filesystem::filesize($dir.'/'.$files); + } else { + $totalsize += \OC\Files\Filesystem::filesize($dir . '/' . $files); } - if($totalsize > $zipLimit) { + if ($totalsize > $zipLimit) { $l = OC_L10N::get('lib'); header("HTTP/1.0 409 Conflict"); - $tmpl = new OC_Template( '', 'error', 'user' ); + $tmpl = new OC_Template('', 'error', 'user'); $errors = array( array( 'error' => $l->t('Selected files too large to generate zip file.'), @@ -399,78 +236,31 @@ class OC_Files { } /** - * try to detect the mime type of a file - * - * @param string path - * @return string guessed mime type - */ - static function getMimeType($path) { - return OC_Filesystem::getMimeType($path); - } - - /** - * get a file tree - * - * @param string path - * @return array - */ - static function getTree($path) { - return OC_Filesystem::getTree($path); - } - - /** - * pull a file from a remote server - * @param string source - * @param string token - * @param string dir - * @param string file - * @return string guessed mime type - */ - static function pull($source, $token, $dir, $file) { - $tmpfile=tempnam(get_temp_dir(), 'remoteCloudFile'); - $fp=fopen($tmpfile, 'w+'); - $url=$source.="/files/pull.php?token=$token"; - $ch=curl_init(); - curl_setopt($ch, CURLOPT_URL, $url); - curl_setopt($ch, CURLOPT_FILE, $fp); - curl_exec($ch); - fclose($fp); - $info=curl_getinfo($ch); - $httpCode=$info['http_code']; - curl_close($ch); - if($httpCode==200 or $httpCode==0) { - OC_Filesystem::fromTmpFile($tmpfile, $dir.'/'.$file); - return true; - }else{ - return false; - } - } - - /** * set the maximum upload size limit for apache hosts using .htaccess + * * @param int size filesisze in bytes * @return false on failure, size on success */ static function setUploadLimit($size) { //don't allow user to break his config -- upper boundary - if($size > PHP_INT_MAX) { + if ($size > PHP_INT_MAX) { //max size is always 1 byte lower than computerFileSize returns - if($size > PHP_INT_MAX+1) + if ($size > PHP_INT_MAX + 1) return false; - $size -=1; + $size -= 1; } else { - $size=OC_Helper::humanFileSize($size); - $size=substr($size, 0, -1);//strip the B - $size=str_replace(' ', '', $size); //remove the space between the size and the postfix + $size = OC_Helper::humanFileSize($size); + $size = substr($size, 0, -1); //strip the B + $size = str_replace(' ', '', $size); //remove the space between the size and the postfix } //don't allow user to break his config -- broken or malicious size input - if(intval($size) == 0) { + if (intval($size) == 0) { return false; } - $htaccess = @file_get_contents(OC::$SERVERROOT.'/.htaccess'); //supress errors in case we don't have permissions for - if(!$htaccess) { + $htaccess = @file_get_contents(OC::$SERVERROOT . '/.htaccess'); //supress errors in case we don't have permissions for + if (!$htaccess) { return false; } @@ -479,52 +269,26 @@ class OC_Files { 'post_max_size' ); - foreach($phpValueKeys as $key) { - $pattern = '/php_value '.$key.' (\S)*/'; - $setting = 'php_value '.$key.' '.$size; - $hasReplaced = 0; - $content = preg_replace($pattern, $setting, $htaccess, 1, $hasReplaced); - if($content !== null) { + foreach ($phpValueKeys as $key) { + $pattern = '/php_value ' . $key . ' (\S)*/'; + $setting = 'php_value ' . $key . ' ' . $size; + $hasReplaced = 0; + $content = preg_replace($pattern, $setting, $htaccess, 1, $hasReplaced); + if ($content !== null) { $htaccess = $content; } - if($hasReplaced == 0) { + if ($hasReplaced == 0) { $htaccess .= "\n" . $setting; } } //check for write permissions - if(is_writable(OC::$SERVERROOT.'/.htaccess')) { - file_put_contents(OC::$SERVERROOT.'/.htaccess', $htaccess); + if (is_writable(OC::$SERVERROOT . '/.htaccess')) { + file_put_contents(OC::$SERVERROOT . '/.htaccess', $htaccess); return OC_Helper::computerFileSize($size); } else { - OC_Log::write('files', 'Can\'t write upload limit to '.OC::$SERVERROOT.'/.htaccess. Please check the file permissions', OC_Log::WARN); + OC_Log::write('files', 'Can\'t write upload limit to ' . OC::$SERVERROOT . '/.htaccess. Please check the file permissions', OC_Log::WARN); } - return false; } - - /** - * normalize a path, removing any double, add leading /, etc - * @param string $path - * @return string - */ - static public function normalizePath($path) { - $path='/'.$path; - $old=''; - while($old!=$path) {//replace any multiplicity of slashes with a single one - $old=$path; - $path=str_replace('//', '/', $path); - } - return $path; - } -} - -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']); - } } diff --git a/lib/files/cache/cache.php b/lib/files/cache/cache.php new file mode 100644 index 00000000000..dcb6e8fd39a --- /dev/null +++ b/lib/files/cache/cache.php @@ -0,0 +1,527 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Cache; + +/** + * Metadata cache for the filesystem + * + * don't use this class directly if you need to get metadata, use \OC\Files\Filesystem::getFileInfo instead + */ +class Cache { + const NOT_FOUND = 0; + const PARTIAL = 1; //only partial data available, file not cached in the database + const SHALLOW = 2; //folder in cache, but not all child files are completely scanned + const COMPLETE = 3; + + /** + * @var array partial data for the cache + */ + private $partial = array(); + + /** + * @var string + */ + private $storageId; + + /** + * numeric storage id + * + * @var int $numericId + */ + private $numericId; + + private $mimetypeIds = array(); + private $mimetypes = array(); + + /** + * @param \OC\Files\Storage\Storage|string $storage + */ + public function __construct($storage) { + if ($storage instanceof \OC\Files\Storage\Storage) { + $this->storageId = $storage->getId(); + } else { + $this->storageId = $storage; + } + + $query = \OC_DB::prepare('SELECT `numeric_id` FROM `*PREFIX*storages` WHERE `id` = ?'); + $result = $query->execute(array($this->storageId)); + if ($row = $result->fetchRow()) { + $this->numericId = $row['numeric_id']; + } else { + $query = \OC_DB::prepare('INSERT INTO `*PREFIX*storages`(`id`) VALUES(?)'); + $query->execute(array($this->storageId)); + $this->numericId = \OC_DB::insertid('*PREFIX*filecache'); + } + } + + public function getNumericStorageId() { + return $this->numericId; + } + + /** + * normalize mimetypes + * + * @param string $mime + * @return int + */ + public function getMimetypeId($mime) { + if (!isset($this->mimetypeIds[$mime])) { + $query = \OC_DB::prepare('SELECT `id` FROM `*PREFIX*mimetypes` WHERE `mimetype` = ?'); + $result = $query->execute(array($mime)); + if ($row = $result->fetchRow()) { + $this->mimetypeIds[$mime] = $row['id']; + } else { + $query = \OC_DB::prepare('INSERT INTO `*PREFIX*mimetypes`(`mimetype`) VALUES(?)'); + $query->execute(array($mime)); + $this->mimetypeIds[$mime] = \OC_DB::insertid('*PREFIX*mimetypes'); + } + $this->mimetypes[$this->mimetypeIds[$mime]] = $mime; + } + return $this->mimetypeIds[$mime]; + } + + public function getMimetype($id) { + if (!isset($this->mimetypes[$id])) { + $query = \OC_DB::prepare('SELECT `mimetype` FROM `*PREFIX*mimetypes` WHERE `id` = ?'); + $result = $query->execute(array($id)); + if ($row = $result->fetchRow()) { + $this->mimetypes[$id] = $row['mimetype']; + } else { + return null; + } + } + return $this->mimetypes[$id]; + } + + /** + * get the stored metadata of a file or folder + * + * @param string/int $file + * @return array + */ + public function get($file) { + if (is_string($file) or $file == '') { + $where = 'WHERE `storage` = ? AND `path_hash` = ?'; + $params = array($this->numericId, md5($file)); + } else { //file id + $where = 'WHERE `fileid` = ?'; + $params = array($file); + } + $query = \OC_DB::prepare( + 'SELECT `fileid`, `storage`, `path`, `parent`, `name`, `mimetype`, `mimepart`, `size`, `mtime`, `encrypted`, `etag` + FROM `*PREFIX*filecache` ' . $where); + $result = $query->execute($params); + $data = $result->fetchRow(); + + //merge partial data + if (!$data and is_string($file)) { + if (isset($this->partial[$file])) { + $data = $this->partial[$file]; + } + } else { + //fix types + $data['fileid'] = (int)$data['fileid']; + $data['size'] = (int)$data['size']; + $data['mtime'] = (int)$data['mtime']; + $data['encrypted'] = (bool)$data['encrypted']; + $data['storage'] = $this->storageId; + $data['mimetype'] = $this->getMimetype($data['mimetype']); + $data['mimepart'] = $this->getMimetype($data['mimepart']); + } + + return $data; + } + + /** + * get the metadata of all files stored in $folder + * + * @param string $folder + * @return array + */ + public function getFolderContents($folder) { + $fileId = $this->getId($folder); + if ($fileId > -1) { + $query = \OC_DB::prepare( + 'SELECT `fileid`, `storage`, `path`, `parent`, `name`, `mimetype`, `mimepart`, `size`, `mtime`, `encrypted`, `etag` + FROM `*PREFIX*filecache` WHERE parent = ? ORDER BY `name` ASC'); + $result = $query->execute(array($fileId)); + $files = $result->fetchAll(); + foreach ($files as &$file) { + $file['mimetype'] = $this->getMimetype($file['mimetype']); + $file['mimepart'] = $this->getMimetype($file['mimepart']); + } + return $files; + } else { + return array(); + } + } + + /** + * store meta data for a file or folder + * + * @param string $file + * @param array $data + * + * @return int file id + */ + public function put($file, array $data) { + if (($id = $this->getId($file)) > -1) { + $this->update($id, $data); + return $id; + } else { + if (isset($this->partial[$file])) { //add any saved partial data + $data = array_merge($this->partial[$file], $data); + unset($this->partial[$file]); + } + + $requiredFields = array('size', 'mtime', 'mimetype'); + foreach ($requiredFields as $field) { + if (!isset($data[$field])) { //data not complete save as partial and return + $this->partial[$file] = $data; + return -1; + } + } + + $data['path'] = $file; + $data['parent'] = $this->getParentId($file); + $data['name'] = basename($file); + $data['encrypted'] = isset($data['encrypted']) ? ((int)$data['encrypted']) : 0; + + list($queryParts, $params) = $this->buildParts($data); + $queryParts[] = '`storage`'; + $params[] = $this->numericId; + $valuesPlaceholder = array_fill(0, count($queryParts), '?'); + + $query = \OC_DB::prepare('INSERT INTO `*PREFIX*filecache`(' . implode(', ', $queryParts) . ') VALUES(' . implode(', ', $valuesPlaceholder) . ')'); + $query->execute($params); + + return (int)\OC_DB::insertid('*PREFIX*filecache'); + } + } + + /** + * update the metadata in the cache + * + * @param int $id + * @param array $data + */ + public function update($id, array $data) { + list($queryParts, $params) = $this->buildParts($data); + $params[] = $id; + + $query = \OC_DB::prepare('UPDATE `*PREFIX*filecache` SET ' . implode(' = ?, ', $queryParts) . '=? WHERE fileid = ?'); + $query->execute($params); + } + + /** + * extract query parts and params array from data array + * + * @param array $data + * @return array + */ + function buildParts(array $data) { + $fields = array('path', 'parent', 'name', 'mimetype', 'size', 'mtime', 'encrypted', 'etag'); + $params = array(); + $queryParts = array(); + foreach ($data as $name => $value) { + if (array_search($name, $fields) !== false) { + if ($name === 'path') { + $params[] = md5($value); + $queryParts[] = '`path_hash`'; + } elseif ($name === 'mimetype') { + $params[] = $this->getMimetypeId(substr($value, 0, strpos($value, '/'))); + $queryParts[] = '`mimepart`'; + $value = $this->getMimetypeId($value); + } + $params[] = $value; + $queryParts[] = '`' . $name . '`'; + } + } + return array($queryParts, $params); + } + + /** + * get the file id for a file + * + * @param string $file + * @return int + */ + public function getId($file) { + $pathHash = md5($file); + + $query = \OC_DB::prepare('SELECT `fileid` FROM `*PREFIX*filecache` WHERE `storage` = ? AND `path_hash` = ?'); + $result = $query->execute(array($this->numericId, $pathHash)); + + if ($row = $result->fetchRow()) { + return $row['fileid']; + } else { + return -1; + } + } + + /** + * get the id of the parent folder of a file + * + * @param string $file + * @return int + */ + public function getParentId($file) { + if ($file === '') { + return -1; + } else { + $parent = dirname($file); + if ($parent === '.') { + $parent = ''; + } + return $this->getId($parent); + } + } + + /** + * check if a file is available in the cache + * + * @param string $file + * @return bool + */ + public function inCache($file) { + return $this->getId($file) != -1; + } + + /** + * remove a file or folder from the cache + * + * @param string $file + */ + public function remove($file) { + $entry = $this->get($file); + if ($entry['mimetype'] === 'httpd/unix-directory') { + $children = $this->getFolderContents($file); + foreach ($children as $child) { + $this->remove($child['path']); + } + } + $query = \OC_DB::prepare('DELETE FROM `*PREFIX*filecache` WHERE `fileid` = ?'); + $query->execute(array($entry['fileid'])); + } + + /** + * Move a file or folder in the cache + * + * @param string $source + * @param string $target + */ + public function move($source, $target) { + $sourceId = $this->getId($source); + $newParentId = $this->getParentId($target); + + //find all child entries + $query = \OC_DB::prepare('SELECT `path`, `fileid` FROM `*PREFIX*filecache` WHERE `path` LIKE ?'); + $result = $query->execute(array($source . '/%')); + $childEntries = $result->fetchAll(); + $sourceLength = strlen($source); + $query = \OC_DB::prepare('UPDATE `*PREFIX*filecache` SET `path` = ?, `path_hash` = ? WHERE `fileid` = ?'); + + foreach ($childEntries as $child) { + $targetPath = $target . substr($child['path'], $sourceLength); + $query->execute(array($targetPath, md5($targetPath), $child['fileid'])); + } + + $query = \OC_DB::prepare('UPDATE `*PREFIX*filecache` SET `path` = ?, `path_hash` = ?, `parent` =? WHERE `fileid` = ?'); + $query->execute(array($target, md5($target), $newParentId, $sourceId)); + } + + /** + * remove all entries for files that are stored on the storage from the cache + */ + public function clear() { + $query = \OC_DB::prepare('DELETE FROM `*PREFIX*filecache` WHERE storage = ?'); + $query->execute(array($this->numericId)); + + $query = \OC_DB::prepare('DELETE FROM `*PREFIX*storages` WHERE id = ?'); + $query->execute(array($this->storageId)); + } + + /** + * @param string $file + * + * @return int, Cache::NOT_FOUND, Cache::PARTIAL, Cache::SHALLOW or Cache::COMPLETE + */ + public function getStatus($file) { + $pathHash = md5($file); + $query = \OC_DB::prepare('SELECT `size` FROM `*PREFIX*filecache` WHERE `storage` = ? AND `path_hash` = ?'); + $result = $query->execute(array($this->numericId, $pathHash)); + if ($row = $result->fetchRow()) { + if ((int)$row['size'] === -1) { + return self::SHALLOW; + } else { + return self::COMPLETE; + } + } else { + if (isset($this->partial[$file])) { + return self::PARTIAL; + } else { + return self::NOT_FOUND; + } + } + } + + /** + * search for files matching $pattern + * + * @param string $pattern + * @return array of file data + */ + public function search($pattern) { + $query = \OC_DB::prepare(' + SELECT `fileid`, `storage`, `path`, `parent`, `name`, `mimetype`, `mimepart`, `size`, `mtime`, `encrypted`, `etag` + FROM `*PREFIX*filecache` WHERE `name` LIKE ? AND `storage` = ?' + ); + $result = $query->execute(array($pattern, $this->numericId)); + $files = array(); + while ($row = $result->fetchRow()) { + $row['mimetype'] = $this->getMimetype($row['mimetype']); + $row['mimepart'] = $this->getMimetype($row['mimepart']); + $files[] = $row; + } + return $files; + } + + /** + * search for files by mimetype + * + * @param string $mimetype + * @return array + */ + public function searchByMime($mimetype) { + if (strpos($mimetype, '/')) { + $where = '`mimetype` = ?'; + } else { + $where = '`mimepart` = ?'; + } + $query = \OC_DB::prepare(' + SELECT `fileid`, `storage`, `path`, `parent`, `name`, `mimetype`, `mimepart`, `size`, `mtime`, `encrypted`, `etag` + FROM `*PREFIX*filecache` WHERE ' . $where . ' AND `storage` = ?' + ); + $mimetype = $this->getMimetypeId($mimetype); + $result = $query->execute(array($mimetype, $this->numericId)); + $files = array(); + while ($row = $result->fetchRow()) { + $row['mimetype'] = $this->getMimetype($row['mimetype']); + $row['mimepart'] = $this->getMimetype($row['mimepart']); + $files[] = $row; + } + return $files; + } + + /** + * update the folder size and the size of all parent folders + * + * @param $path + */ + public function correctFolderSize($path) { + $this->calculateFolderSize($path); + if ($path !== '') { + $parent = dirname($path); + if ($parent === '.') { + $parent = ''; + } + $this->correctFolderSize($parent); + } + } + + /** + * get the size of a folder and set it in the cache + * + * @param string $path + * @return int + */ + public function calculateFolderSize($path) { + $id = $this->getId($path); + if ($id === -1) { + return 0; + } + $query = \OC_DB::prepare('SELECT `size` FROM `*PREFIX*filecache` WHERE `parent` = ? AND `storage` = ?'); + $result = $query->execute(array($id, $this->numericId)); + $totalSize = 0; + $hasChilds = 0; + while ($row = $result->fetchRow()) { + $hasChilds = true; + $size = (int)$row['size']; + if ($size === -1) { + $totalSize = -1; + break; + } else { + $totalSize += $size; + } + } + + if ($hasChilds) { + $this->update($id, array('size' => $totalSize)); + } + return $totalSize; + } + + /** + * get all file ids on the files on the storage + * + * @return int[] + */ + public function getAll() { + $query = \OC_DB::prepare('SELECT `fileid` FROM `*PREFIX*filecache` WHERE `storage` = ?'); + $result = $query->execute(array($this->numericId)); + $ids = array(); + while ($row = $result->fetchRow()) { + $ids[] = $row['fileid']; + } + return $ids; + } + + /** + * find a folder in the cache which has not been fully scanned + * + * If multiply incomplete folders are in the cache, the one with the highest id will be returned, + * use the one with the highest id gives the best result with the background scanner, since that is most + * likely the folder where we stopped scanning previously + * + * @return string|bool the path of the folder or false when no folder matched + */ + public function getIncomplete() { + $query = \OC_DB::prepare('SELECT `path` FROM `*PREFIX*filecache` WHERE `storage` = ? AND `size` = -1 ORDER BY `fileid` DESC LIMIT 1'); + $query->execute(array($this->numericId)); + if ($row = $query->fetchRow()) { + return $row['path']; + } else { + return false; + } + } + + /** + * get the storage id of the storage for a file and the internal path of the file + * + * @return array, first element holding the storage id, second the path + */ + static public function getById($id) { + $query = \OC_DB::prepare('SELECT `storage`, `path` FROM `*PREFIX*filecache` WHERE `fileid` = ?'); + $result = $query->execute(array($id)); + if ($row = $result->fetchRow()) { + $numericId = $row['storage']; + $path = $row['path']; + } else { + return null; + } + + $query = \OC_DB::prepare('SELECT `id` FROM `*PREFIX*storages` WHERE `numeric_id` = ?'); + $result = $query->execute(array($numericId)); + if ($row = $result->fetchRow()) { + return array($row['id'], $path); + } else { + return null; + } + } +} diff --git a/lib/files/cache/legacy.php b/lib/files/cache/legacy.php new file mode 100644 index 00000000000..33d4b8e7c9f --- /dev/null +++ b/lib/files/cache/legacy.php @@ -0,0 +1,81 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Cache; + +/** + * Provide read only support for the old filecache + */ +class Legacy { + private $user; + + private $cacheHasItems = null; + + public function __construct($user) { + $this->user = $user; + } + + function getCount() { + $query = \OC_DB::prepare('SELECT COUNT(`id`) AS `count` FROM `*PREFIX*fscache` WHERE `user` = ?'); + $result = $query->execute(array($this->user)); + if ($row = $result->fetchRow()) { + return $row['count']; + } else { + return 0; + } + } + + /** + * check if a legacy cache is present and holds items + * + * @return bool + */ + function hasItems() { + if (!is_null($this->cacheHasItems)) { + return $this->cacheHasItems; + } + try { + $query = \OC_DB::prepare('SELECT `id` FROM `*PREFIX*fscache` WHERE `user` = ? LIMIT 1'); + } catch (\Exception $e) { + $this->cacheHasItems = false; + return false; + } + try { + $result = $query->execute(array($this->user)); + } catch (\Exception $e) { + $this->cacheHasItems = false; + return false; + } + $this->cacheHasItems = (bool)$result->fetchRow(); + return $this->cacheHasItems; + } + + /** + * @param string|int $path + * @return array + */ + function get($path) { + if (is_numeric($path)) { + $query = \OC_DB::prepare('SELECT * FROM `*PREFIX*fscache` WHERE `id` = ?'); + } else { + $query = \OC_DB::prepare('SELECT * FROM `*PREFIX*fscache` WHERE `path` = ?'); + } + $result = $query->execute(array($path)); + return $result->fetchRow(); + } + + /** + * @param int $id + * @return array + */ + function getChildren($id) { + $query = \OC_DB::prepare('SELECT * FROM `*PREFIX*fscache` WHERE `parent` = ?'); + $result = $query->execute(array($id)); + return $result->fetchAll(); + } +} diff --git a/lib/files/cache/permissions.php b/lib/files/cache/permissions.php new file mode 100644 index 00000000000..d0968337f02 --- /dev/null +++ b/lib/files/cache/permissions.php @@ -0,0 +1,102 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Cache; + +class Permissions { + /** + * @var string $storageId + */ + private $storageId; + + /** + * @param \OC\Files\Storage\Storage|string $storage + */ + public function __construct($storage){ + if($storage instanceof \OC\Files\Storage\Storage){ + $this->storageId = $storage->getId(); + }else{ + $this->storageId = $storage; + } + } + + /** + * get the permissions for a single file + * + * @param int $fileId + * @param string $user + * @return int (-1 if file no permissions set) + */ + public function get($fileId, $user) { + $query = \OC_DB::prepare('SELECT `permissions` FROM `*PREFIX*permissions` WHERE `user` = ? AND `fileid` = ?'); + $result = $query->execute(array($user, $fileId)); + if ($row = $result->fetchRow()) { + return $row['permissions']; + } else { + return -1; + } + } + + /** + * set the permissions of a file + * + * @param int $fileId + * @param string $user + * @param int $permissions + */ + public function set($fileId, $user, $permissions) { + if (self::get($fileId, $user) !== -1) { + $query = \OC_DB::prepare('UPDATE `*PREFIX*permissions` SET `permissions` = ? WHERE `user` = ? AND `fileid` = ?'); + } else { + $query = \OC_DB::prepare('INSERT INTO `*PREFIX*permissions`(`permissions`, `user`, `fileid`) VALUES(?, ?,? )'); + } + $query->execute(array($permissions, $user, $fileId)); + } + + /** + * get the permissions of multiply files + * + * @param int[] $fileIds + * @param string $user + * @return int[] + */ + public function getMultiple($fileIds, $user) { + if (count($fileIds) === 0) { + return array(); + } + $params = $fileIds; + $params[] = $user; + $inPart = implode(', ', array_fill(0, count($fileIds), '?')); + + $query = \OC_DB::prepare('SELECT `fileid`, `permissions` FROM `*PREFIX*permissions` WHERE `fileid` IN (' . $inPart . ') AND `user` = ?'); + $result = $query->execute($params); + $filePermissions = array(); + while ($row = $result->fetchRow()) { + $filePermissions[$row['fileid']] = $row['permissions']; + } + return $filePermissions; + } + + /** + * remove the permissions for a file + * + * @param int $fileId + * @param string $user + */ + public function remove($fileId, $user) { + $query = \OC_DB::prepare('DELETE FROM `*PREFIX*permissions` WHERE `fileid` = ? AND `user` = ?'); + $query->execute(array($fileId, $user)); + } + + public function removeMultiple($fileIds, $user) { + $query = \OC_DB::prepare('DELETE FROM `*PREFIX*permissions` WHERE `fileid` = ? AND `user` = ?'); + foreach($fileIds as $fileId){ + $query->execute(array($fileId, $user)); + } + } +} diff --git a/lib/files/cache/scanner.php b/lib/files/cache/scanner.php new file mode 100644 index 00000000000..8d504af6163 --- /dev/null +++ b/lib/files/cache/scanner.php @@ -0,0 +1,146 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Cache; + +class Scanner { + /** + * @var \OC\Files\Storage\Storage $storage + */ + private $storage; + + /** + * @var string $storageId + */ + private $storageId; + + /** + * @var \OC\Files\Cache\Cache $cache + */ + private $cache; + + const SCAN_RECURSIVE = true; + const SCAN_SHALLOW = false; + + public function __construct(\OC\Files\Storage\Storage $storage) { + $this->storage = $storage; + $this->storageId = $this->storage->getId(); + $this->cache = $storage->getCache(); + } + + /** + * get all the metadata of a file or folder + * * + * + * @param string $path + * @return array with metadata of the file + */ + public function getData($path) { + $data = array(); + if (!$this->storage->isReadable($path)) return null; //cant read, nothing we can do + $data['mimetype'] = $this->storage->getMimeType($path); + $data['mtime'] = $this->storage->filemtime($path); + if ($data['mimetype'] == 'httpd/unix-directory') { + $data['size'] = -1; //unknown + } else { + $data['size'] = $this->storage->filesize($path); + } + $data['etag'] = $this->storage->getETag($path); + return $data; + } + + /** + * scan a single file and store it in the cache + * + * @param string $file + * @return array with metadata of the scanned file + */ + public function scanFile($file) { + \OC_Hook::emit('\OC\Files\Cache\Scanner', 'scan_file', array('path' => $file, 'storage' => $this->storageId)); + $data = $this->getData($file); + if ($data) { + if ($file) { + $parent = dirname($file); + if ($parent === '.') { + $parent = ''; + } + if (!$this->cache->inCache($parent)) { + $this->scanFile($parent); + } + } + $id = $this->cache->put($file, $data); + } + return $data; + } + + /** + * scan all the files in a folder and store them in the cache + * + * @param string $path + * @param SCAN_RECURSIVE/SCAN_SHALLOW $recursive + * @param bool $onlyChilds + * @return int the size of the scanned folder or -1 if the size is unknown at this stage + */ + public function scan($path, $recursive = self::SCAN_RECURSIVE, $onlyChilds = false) { + \OC_Hook::emit('\OC\Files\Cache\Scanner', 'scan_folder', array('path' => $path, 'storage' => $this->storageId)); + $childQueue = array(); + if (!$onlyChilds) { + $this->scanFile($path); + } + + $size = 0; + if ($this->storage->is_dir($path) && ($dh = $this->storage->opendir($path))) { + \OC_DB::beginTransaction(); + while ($file = readdir($dh)) { + if ($file !== '.' and $file !== '..') { + $child = ($path) ? $path . '/' . $file : $file; + $data = $this->scanFile($child); + if ($data) { + if ($data['mimetype'] === 'httpd/unix-directory') { + if ($recursive === self::SCAN_RECURSIVE) { + $childQueue[] = $child; + $data['size'] = 0; + } else { + $data['size'] = -1; + } + } else { + } + if ($data['size'] === -1) { + $size = -1; + } elseif ($size !== -1) { + $size += $data['size']; + } + } + } + } + \OC_DB::commit(); + foreach ($childQueue as $child) { + $childSize = $this->scan($child, self::SCAN_RECURSIVE, true); + if ($childSize === -1) { + $size = -1; + } else { + $size += $childSize; + } + } + if ($size !== -1) { + $this->cache->put($path, array('size' => $size)); + } + } + return $size; + } + + /** + * walk over any folders that are not fully scanned yet and scan them + */ + public function backgroundScan() { + while ($path = $this->cache->getIncomplete()) { + $this->scan($path); + $this->cache->correctFolderSize($path); + } + } +} diff --git a/lib/files/cache/updater.php b/lib/files/cache/updater.php new file mode 100644 index 00000000000..d04541c219f --- /dev/null +++ b/lib/files/cache/updater.php @@ -0,0 +1,105 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Cache; + +/** + * listen to filesystem hooks and change the cache accordingly + */ +class Updater { + + /** + * resolve a path to a storage and internal path + * + * @param string $path + * @return array consisting of the storage and the internal path + */ + static public function resolvePath($path) { + $view = \OC\Files\Filesystem::getView(); + return $view->resolvePath($path); + } + + static public function writeUpdate($path) { + /** + * @var \OC\Files\Storage\Storage $storage + * @var string $internalPath + */ + list($storage, $internalPath) = self::resolvePath($path); + if ($storage) { + $cache = $storage->getCache($internalPath); + $scanner = $storage->getScanner($internalPath); + $scanner->scan($internalPath, Scanner::SCAN_SHALLOW); + $cache->correctFolderSize($internalPath); + self::correctFolder($path, $storage->filemtime($internalPath)); + } + } + + static public function deleteUpdate($path) { + /** + * @var \OC\Files\Storage\Storage $storage + * @var string $internalPath + */ + list($storage, $internalPath) = self::resolvePath($path); + if ($storage) { + $cache = $storage->getCache($internalPath); + $cache->remove($internalPath); + $cache->correctFolderSize($internalPath); + self::correctFolder($path, time()); + } + } + + /** + * Update the mtime and ETag of all parent folders + * + * @param string $path + * @param string $time + */ + static public function correctFolder($path, $time) { + if ($path !== '' && $path !== '/') { + $parent = dirname($path); + if ($parent === '.') { + $parent = ''; + } + /** + * @var \OC\Files\Storage\Storage $storage + * @var string $internalPath + */ + list($storage, $internalPath) = self::resolvePath($parent); + if ($storage) { + $cache = $storage->getCache(); + $id = $cache->getId($internalPath); + if ($id !== -1) { + $cache->update($id, array('mtime' => $time, 'etag' => $storage->getETag($internalPath))); + self::correctFolder($parent, $time); + } + } + } + } + + /** + * @param array $params + */ + static public function writeHook($params) { + self::writeUpdate($params['path']); + } + + /** + * @param array $params + */ + static public function renameHook($params) { + self::deleteUpdate($params['oldpath']); + self::writeUpdate($params['newpath']); + } + + /** + * @param array $params + */ + static public function deleteHook($params) { + self::deleteUpdate($params['path']); + } +} diff --git a/lib/files/cache/upgrade.php b/lib/files/cache/upgrade.php new file mode 100644 index 00000000000..eb8c7297c3e --- /dev/null +++ b/lib/files/cache/upgrade.php @@ -0,0 +1,159 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Cache; + +class Upgrade { + /** + * @var Legacy $legacy + */ + private $legacy; + + private $numericIds = array(); + + private $mimeTypeIds = array(); + + /** + * @param Legacy $legacy + */ + public function __construct($legacy) { + $this->legacy = $legacy; + } + + /** + * Preform a shallow upgrade + * + * @param string $path + * @param int $mode + */ + function upgradePath($path, $mode = Scanner::SCAN_RECURSIVE) { + if (!$this->legacy->hasItems()) { + return; + } + \OC_Hook::emit('\OC\Files\Cache\Upgrade', 'migrate_path', $path); + + if ($row = $this->legacy->get($path)) { + $data = $this->getNewData($row); + $this->insert($data); + + $this->upgradeChilds($data['id'], $mode); + } + } + + /** + * @param int $id + */ + function upgradeChilds($id, $mode = Scanner::SCAN_RECURSIVE) { + $children = $this->legacy->getChildren($id); + foreach ($children as $child) { + $childData = $this->getNewData($child); + \OC_Hook::emit('\OC\Files\Cache\Upgrade', 'migrate_path', $child['path']); + $this->insert($childData); + if ($mode == Scanner::SCAN_RECURSIVE) { + $this->upgradeChilds($child['id']); + } + } + } + + /** + * @param array $data the data for the new cache + */ + function insert($data) { + if (!$this->inCache($data['storage'], $data['path_hash'])) { + $insertQuery = \OC_DB::prepare('INSERT INTO `*PREFIX*filecache` + ( `fileid`, `storage`, `path`, `path_hash`, `parent`, `name`, `mimetype`, `mimepart`, `size`, `mtime`, `encrypted` ) + VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'); + + $insertQuery->execute(array($data['id'], $data['storage'], $data['path'], $data['path_hash'], $data['parent'], $data['name'], + $data['mimetype'], $data['mimepart'], $data['size'], $data['mtime'], $data['encrypted'])); + } + } + + /** + * @param string $storage + * @param string $pathHash + * @return bool + */ + function inCache($storage, $pathHash) { + $query = \OC_DB::prepare('SELECT `fileid` FROM `*PREFIX*filecache` WHERE `storage` = ? AND `path_hash` = ?'); + $result = $query->execute(array($storage, $pathHash)); + return (bool)$result->fetchRow(); + } + + /** + * get the new data array from the old one + * + * @param array $data the data from the old cache + * @return array + */ + function getNewData($data) { + $newData = $data; + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($data['path']); + /** + * @var \OC\Files\Storage\Storage $storage + * @var string $internalPath; + */ + $newData['path_hash'] = md5($internalPath); + $newData['path'] = $internalPath; + $newData['storage'] = $this->getNumericId($storage); + $newData['parent'] = ($internalPath === '') ? -1 : $data['parent']; + $newData['permissions'] = ($data['writable']) ? \OCP\PERMISSION_ALL : \OCP\PERMISSION_READ; + $newData['storage_object'] = $storage; + $newData['mimetype'] = $this->getMimetypeId($newData['mimetype'], $storage); + $newData['mimepart'] = $this->getMimetypeId($newData['mimepart'], $storage); + return $newData; + } + + /** + * get the numeric storage id + * + * @param \OC\Files\Storage\Storage $storage + * @return int + */ + function getNumericId($storage) { + $storageId = $storage->getId(); + if (!isset($this->numericIds[$storageId])) { + $cache = $storage->getCache(); + $this->numericIds[$storageId] = $cache->getNumericStorageId(); + } + return $this->numericIds[$storageId]; + } + + /** + * @param string $mimetype + * @param \OC\Files\Storage\Storage $storage + * @return int + */ + function getMimetypeId($mimetype, $storage) { + if (!isset($this->mimeTypeIds[$mimetype])) { + $cache = new Cache($storage); + $this->mimeTypeIds[$mimetype] = $cache->getMimetypeId($mimetype); + } + return $this->mimeTypeIds[$mimetype]; + } + + /** + * check if a cache upgrade is required for $user + * + * @param string $user + * @return bool + */ + static function needUpgrade($user) { + $cacheVersion = (int)\OCP\Config::getUserValue($user, 'files', 'cache_version', 4); + return $cacheVersion < 5; + } + + /** + * mark the filecache as upgrade + * + * @param string $user + */ + static function upgradeDone($user) { + \OCP\Config::setUserValue($user, 'files', 'cache_version', 5); + } +} diff --git a/lib/files/cache/watcher.php b/lib/files/cache/watcher.php new file mode 100644 index 00000000000..31059ec7f56 --- /dev/null +++ b/lib/files/cache/watcher.php @@ -0,0 +1,72 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Cache; + +/** + * check the storage backends for updates and change the cache accordingly + */ +class Watcher { + /** + * @var \OC\Files\Storage\Storage $storage + */ + private $storage; + + /** + * @var Cache $cache + */ + private $cache; + + /** + * @var Scanner $scanner; + */ + private $scanner; + + /** + * @param \OC\Files\Storage\Storage $storage + */ + public function __construct(\OC\Files\Storage\Storage $storage) { + $this->storage = $storage; + $this->cache = $storage->getCache(); + $this->scanner = $storage->getScanner(); + } + + /** + * check $path for updates + * + * @param string $path + */ + public function checkUpdate($path) { + $cachedEntry = $this->cache->get($path); + if ($this->storage->hasUpdated($path, $cachedEntry['mtime'])) { + if ($this->storage->is_dir($path)) { + $this->scanner->scan($path, Scanner::SCAN_SHALLOW); + } else { + $this->scanner->scanFile($path); + } + if ($cachedEntry['mimetype'] === 'httpd/unix-directory') { + $this->cleanFolder($path); + } + $this->cache->correctFolderSize($path); + } + } + + /** + * remove deleted files in $path from the cache + * + * @param string $path + */ + public function cleanFolder($path) { + $cachedContent = $this->cache->getFolderContents($path); + foreach ($cachedContent as $entry) { + if (!$this->storage->file_exists($entry['path'])) { + $this->cache->remove($entry['path']); + } + } + } +} diff --git a/lib/files/filesystem.php b/lib/files/filesystem.php new file mode 100644 index 00000000000..65d9ffab485 --- /dev/null +++ b/lib/files/filesystem.php @@ -0,0 +1,638 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +/** + * Class for abstraction of filesystem functions + * This class won't call any filesystem functions for itself but but will pass them to the correct OC_Filestorage object + * this class should also handle all the file permission related stuff + * + * Hooks provided: + * read(path) + * write(path, &run) + * post_write(path) + * create(path, &run) (when a file is created, both create and write will be emitted in that order) + * post_create(path) + * delete(path, &run) + * post_delete(path) + * rename(oldpath,newpath, &run) + * post_rename(oldpath,newpath) + * copy(oldpath,newpath, &run) (if the newpath doesn't exists yes, copy, create and write will be emitted in that order) + * post_rename(oldpath,newpath) + * + * the &run parameter can be set to false to prevent the operation from occurring + */ + +namespace OC\Files; + +class Filesystem { + public static $loaded = false; + /** + * @var \OC\Files\View $defaultInstance + */ + static private $defaultInstance; + + + /** + * classname which used for hooks handling + * used as signalclass in OC_Hooks::emit() + */ + const CLASSNAME = 'OC_Filesystem'; + + /** + * signalname emitted before file renaming + * + * @param string $oldpath + * @param string $newpath + */ + const signal_rename = 'rename'; + + /** + * signal emitted after file renaming + * + * @param string $oldpath + * @param string $newpath + */ + const signal_post_rename = 'post_rename'; + + /** + * signal emitted before file/dir creation + * + * @param string $path + * @param bool $run changing this flag to false in hook handler will cancel event + */ + const signal_create = 'create'; + + /** + * signal emitted after file/dir creation + * + * @param string $path + * @param bool $run changing this flag to false in hook handler will cancel event + */ + const signal_post_create = 'post_create'; + + /** + * signal emits before file/dir copy + * + * @param string $oldpath + * @param string $newpath + * @param bool $run changing this flag to false in hook handler will cancel event + */ + const signal_copy = 'copy'; + + /** + * signal emits after file/dir copy + * + * @param string $oldpath + * @param string $newpath + */ + const signal_post_copy = 'post_copy'; + + /** + * signal emits before file/dir save + * + * @param string $path + * @param bool $run changing this flag to false in hook handler will cancel event + */ + const signal_write = 'write'; + + /** + * signal emits after file/dir save + * + * @param string $path + */ + const signal_post_write = 'post_write'; + + /** + * signal emits when reading file/dir + * + * @param string $path + */ + const signal_read = 'read'; + + /** + * signal emits when removing file/dir + * + * @param string $path + */ + const signal_delete = 'delete'; + + /** + * parameters definitions for signals + */ + const signal_param_path = 'path'; + const signal_param_oldpath = 'oldpath'; + const signal_param_newpath = 'newpath'; + + /** + * run - changing this flag to false in hook handler will cancel event + */ + const signal_param_run = 'run'; + + /** + * get the mountpoint of the storage object for a path + ( note: because a storage is not always mounted inside the fakeroot, the returned mountpoint is relative to the absolute root of the filesystem and doesn't take the chroot into account + * + * @param string $path + * @return string + */ + static public function getMountPoint($path) { + $mount = Mount::find($path); + if ($mount) { + return $mount->getMountPoint(); + } else { + return ''; + } + } + + /** + * get a list of all mount points in a directory + * + * @param string $path + * @return string[] + */ + static public function getMountPoints($path) { + $result = array(); + $mounts = Mount::findIn($path); + foreach ($mounts as $mount) { + $result[] = $mount->getMountPoint(); + } + return $result; + } + + /** + * get the storage mounted at $mountPoint + * + * @param string $mountPoint + * @return \OC\Files\Storage\Storage + */ + public static function getStorage($mountPoint) { + $mount = Mount::find($mountPoint); + return $mount->getStorage(); + } + + /** + * resolve a path to a storage and internal path + * + * @param string $path + * @return array consisting of the storage and the internal path + */ + static public function resolvePath($path) { + $mount = Mount::find($path); + if ($mount) { + return array($mount->getStorage(), $mount->getInternalPath($path)); + } else { + return array(null, null); + } + } + + static public function init($root) { + if (self::$defaultInstance) { + return false; + } + self::$defaultInstance = new View($root); + + //load custom mount config + self::initMountPoints(); + + self::$loaded = true; + + return true; + } + + /** + * Initialize system and personal mount points for a user + * + * @param string $user + */ + public static function initMountPoints($user = '') { + if ($user == '') { + $user = \OC_User::getUser(); + } + // Load system mount points + if (is_file(\OC::$SERVERROOT . '/config/mount.php')) { + $mountConfig = include 'config/mount.php'; + if (isset($mountConfig['global'])) { + foreach ($mountConfig['global'] as $mountPoint => $options) { + self::mount($options['class'], $options['options'], $mountPoint); + } + } + if (isset($mountConfig['group'])) { + foreach ($mountConfig['group'] as $group => $mounts) { + if (\OC_Group::inGroup($user, $group)) { + foreach ($mounts as $mountPoint => $options) { + $mountPoint = self::setUserVars($user, $mountPoint); + foreach ($options as &$option) { + $option = self::setUserVars($user, $option); + } + self::mount($options['class'], $options['options'], $mountPoint); + } + } + } + } + if (isset($mountConfig['user'])) { + foreach ($mountConfig['user'] as $mountUser => $mounts) { + if ($user === 'all' or strtolower($mountUser) === strtolower($user)) { + foreach ($mounts as $mountPoint => $options) { + $mountPoint = self::setUserVars($user, $mountPoint); + foreach ($options as &$option) { + $option = self::setUserVars($user, $option); + } + self::mount($options['class'], $options['options'], $mountPoint); + } + } + } + } + } + // Load personal mount points + $root = \OC_User::getHome($user); + self::mount('\OC\Files\Storage\Local', array('datadir' => $root), $user); + if (is_file($root . '/mount.php')) { + $mountConfig = include $root . '/mount.php'; + if (isset($mountConfig['user'][$user])) { + foreach ($mountConfig['user'][$user] as $mountPoint => $options) { + self::mount($options['class'], $options['options'], $mountPoint); + } + } + } + } + + /** + * fill in the correct values for $user, and $password placeholders + * + * @param string $input + * @param string $input + * @return string + */ + private static function setUserVars($user, $input) { + return str_replace('$user', $user, $input); + } + + /** + * get the default filesystem view + * + * @return View + */ + static public function getView() { + return self::$defaultInstance; + } + + /** + * tear down the filesystem, removing all storage providers + */ + static public function tearDown() { + self::clearMounts(); + } + + /** + * @brief get the relative path of the root data directory for the current user + * @return string + * + * Returns path like /admin/files + */ + static public function getRoot() { + return self::$defaultInstance->getRoot(); + } + + /** + * clear all mounts and storage backends + */ + public static function clearMounts() { + Mount::clear(); + } + + /** + * mount an \OC\Files\Storage\Storage in our virtual filesystem + * + * @param \OC\Files\Storage\Storage|string $class + * @param array $arguments + * @param string $mountpoint + */ + static public function mount($class, $arguments, $mountpoint) { + new Mount($class, $mountpoint, $arguments); + } + + /** + * return the path to a local version of the file + * we need this because we can't know if a file is stored local or not from outside the filestorage and for some purposes a local file is needed + * + * @param string $path + * @return string + */ + static public function getLocalFile($path) { + return self::$defaultInstance->getLocalFile($path); + } + + /** + * @param string $path + * @return string + */ + static public function getLocalFolder($path) { + return self::$defaultInstance->getLocalFolder($path); + } + + /** + * return path to file which reflects one visible in browser + * + * @param string $path + * @return string + */ + static public function getLocalPath($path) { + $datadir = \OC_User::getHome(\OC_User::getUser()) . '/files'; + $newpath = $path; + if (strncmp($newpath, $datadir, strlen($datadir)) == 0) { + $newpath = substr($path, strlen($datadir)); + } + return $newpath; + } + + /** + * check if the requested path is valid + * + * @param string $path + * @return bool + */ + static public function isValidPath($path) { + $path = self::normalizePath($path); + if (!$path || $path[0] !== '/') { + $path = '/' . $path; + } + if (strstr($path, '/../') || strrchr($path, '/') === '/..') { + return false; + } + return true; + } + + /** + * checks if a file is blacklisted for storage in the filesystem + * Listens to write and rename hooks + * + * @param array $data from hook + */ + static public function isBlacklisted($data) { + $blacklist = \OC_Config::getValue('blacklisted_files', array('.htaccess')); + if (isset($data['path'])) { + $path = $data['path']; + } else if (isset($data['newpath'])) { + $path = $data['newpath']; + } + if (isset($path)) { + $filename = strtolower(basename($path)); + if (in_array($filename, $blacklist)) { + $data['run'] = false; + } + } + } + + /** + * following functions are equivalent to their php builtin equivalents for arguments/return values. + */ + static public function mkdir($path) { + return self::$defaultInstance->mkdir($path); + } + + static public function rmdir($path) { + return self::$defaultInstance->rmdir($path); + } + + static public function opendir($path) { + return self::$defaultInstance->opendir($path); + } + + static public function readdir($path) { + return self::$defaultInstance->readdir($path); + } + + static public function is_dir($path) { + return self::$defaultInstance->is_dir($path); + } + + static public function is_file($path) { + return self::$defaultInstance->is_file($path); + } + + static public function stat($path) { + return self::$defaultInstance->stat($path); + } + + static public function filetype($path) { + return self::$defaultInstance->filetype($path); + } + + static public function filesize($path) { + return self::$defaultInstance->filesize($path); + } + + static public function readfile($path) { + return self::$defaultInstance->readfile($path); + } + + static public function isCreatable($path) { + return self::$defaultInstance->isCreatable($path); + } + + static public function isReadable($path) { + return self::$defaultInstance->isReadable($path); + } + + static public function isUpdatable($path) { + return self::$defaultInstance->isUpdatable($path); + } + + static public function isDeletable($path) { + return self::$defaultInstance->isDeletable($path); + } + + static public function isSharable($path) { + return self::$defaultInstance->isSharable($path); + } + + static public function file_exists($path) { + return self::$defaultInstance->file_exists($path); + } + + static public function filemtime($path) { + return self::$defaultInstance->filemtime($path); + } + + static public function touch($path, $mtime = null) { + return self::$defaultInstance->touch($path, $mtime); + } + + static public function file_get_contents($path) { + return self::$defaultInstance->file_get_contents($path); + } + + static public function file_put_contents($path, $data) { + return self::$defaultInstance->file_put_contents($path, $data); + } + + static public function unlink($path) { + return self::$defaultInstance->unlink($path); + } + + static public function rename($path1, $path2) { + return self::$defaultInstance->rename($path1, $path2); + } + + static public function copy($path1, $path2) { + return self::$defaultInstance->copy($path1, $path2); + } + + static public function fopen($path, $mode) { + return self::$defaultInstance->fopen($path, $mode); + } + + static public function toTmpFile($path) { + return self::$defaultInstance->toTmpFile($path); + } + + static public function fromTmpFile($tmpFile, $path) { + return self::$defaultInstance->fromTmpFile($tmpFile, $path); + } + + static public function getMimeType($path) { + return self::$defaultInstance->getMimeType($path); + } + + static public function hash($type, $path, $raw = false) { + return self::$defaultInstance->hash($type, $path, $raw); + } + + static public function free_space($path = '/') { + return self::$defaultInstance->free_space($path); + } + + static public function search($query) { + return self::$defaultInstance->search($query); + } + + static public function searchByMime($query) { + return self::$defaultInstance->searchByMime($query); + } + + /** + * check if a file or folder has been updated since $time + * + * @param string $path + * @param int $time + * @return bool + */ + static public function hasUpdated($path, $time) { + return self::$defaultInstance->hasUpdated($path, $time); + } + + /** + * normalize a path + * + * @param string $path + * @param bool $stripTrailingSlash + * @return string + */ + public static function normalizePath($path, $stripTrailingSlash = true) { + if ($path == '') { + return '/'; + } +//no windows style slashes + $path = str_replace('\\', '/', $path); +//add leading slash + if ($path[0] !== '/') { + $path = '/' . $path; + } +//remove duplicate slashes + while (strpos($path, '//') !== false) { + $path = str_replace('//', '/', $path); + } +//remove trailing slash + if ($stripTrailingSlash and strlen($path) > 1 and substr($path, -1, 1) === '/') { + $path = substr($path, 0, -1); + } +//normalize unicode if possible + if (class_exists('Normalizer')) { + $path = \Normalizer::normalize($path); + } + return $path; + } + + /** + * get the filesystem info + * + * @param string $path + * @return array + * + * returns an associative array with the following keys: + * - size + * - mtime + * - mimetype + * - encrypted + * - versioned + */ + public static function getFileInfo($path) { + return self::$defaultInstance->getFileInfo($path); + } + + /** + * change file metadata + * + * @param string $path + * @param array $data + * @return int + * + * returns the fileid of the updated file + */ + public static function putFileInfo($path, $data) { + return self::$defaultInstance->putFileInfo($path, $data); + } + + /** + * get the content of a directory + * + * @param string $directory path under datadirectory + * @return array + */ + public static function getDirectoryContent($directory) { + return self::$defaultInstance->getDirectoryContent($directory); + } + + /** + * Get the path of a file by id + * + * Note that the resulting path is not guarantied to be unique for the id, multiple paths can point to the same file + * + * @param int $id + * @return string + */ + public static function getPath($id) { + return self::$defaultInstance->getPath($id); + } + + /** + * Get the owner for a file or folder + * + * @param string $path + * @return string + */ + public static function getOwner($path) { + return self::$defaultInstance->getOwner($path); + } + + /** + * get the ETag for a file or folder + * + * @param string $path + * @return string + */ + static public function getETag($path) { + return self::$defaultInstance->getETag($path); + } +} + +\OC_Hook::connect('OC_Filesystem', 'post_write', '\OC\Files\Cache\Updater', 'writeHook'); +\OC_Hook::connect('OC_Filesystem', 'post_delete', '\OC\Files\Cache\Updater', 'deleteHook'); +\OC_Hook::connect('OC_Filesystem', 'post_rename', '\OC\Files\Cache\Updater', 'renameHook'); + +\OC_Util::setupFS(); diff --git a/lib/files/mount.php b/lib/files/mount.php new file mode 100644 index 00000000000..74ee483b1be --- /dev/null +++ b/lib/files/mount.php @@ -0,0 +1,188 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files; + +class Mount { + /** + * @var Mount[] + */ + static private $mounts = array(); + + /** + * @var \OC\Files\Storage\Storage $storage + */ + private $storage = null; + private $class; + private $storageId; + private $arguments = array(); + private $mountPoint; + + /** + * @param string|\OC\Files\Storage\Storage $storage + * @param string $mountpoint + * @param array $arguments (optional) + */ + public function __construct($storage, $mountpoint, $arguments = null) { + if (is_null($arguments)) { + $arguments = array(); + } + + $mountpoint = self::formatPath($mountpoint); + if ($storage instanceof \OC\Files\Storage\Storage) { + $this->class = get_class($storage); + $this->storage = $storage; + } else { + // Update old classes to new namespace + if (strpos($storage, 'OC_Filestorage_') !== false) { + $storage = '\OC\Files\Storage\\' . substr($storage, 15); + } + $this->class = $storage; + $this->arguments = $arguments; + } + $this->mountPoint = $mountpoint; + + self::$mounts[$this->mountPoint] = $this; + } + + /** + * @return string + */ + public function getMountPoint() { + return $this->mountPoint; + } + + /** + * @return \OC\Files\Storage\Storage + */ + private function createStorage() { + if (class_exists($this->class)) { + try { + return new $this->class($this->arguments); + } catch (\Exception $exception) { + \OC_Log::write('core', $exception->getMessage(), \OC_Log::ERROR); + return null; + } + } else { + \OC_Log::write('core', 'storage backend ' . $this->class . ' not found', \OC_Log::ERROR); + return null; + } + } + + /** + * @return \OC\Files\Storage\Storage + */ + public function getStorage() { + if (is_null($this->storage)) { + $this->storage = $this->createStorage(); + } + return $this->storage; + } + + /** + * @return string + */ + public function getStorageId() { + if (!$this->storageId) { + if (is_null($this->storage)) { + $this->storage = $this->createStorage(); + } + $this->storageId = $this->storage->getId(); + } + return $this->storageId; + } + + /** + * @param string $path + * @return string + */ + public function getInternalPath($path) { + if ($this->mountPoint === $path or $this->mountPoint . '/' === $path) { + $internalPath = ''; + } else { + $internalPath = substr($path, strlen($this->mountPoint)); + } + return $internalPath; + } + + /** + * @param string $path + * @return string + */ + private static function formatPath($path) { + $path = Filesystem::normalizePath($path); + if (strlen($path) > 1) { + $path .= '/'; + } + return $path; + } + + /** + * Find the mount for $path + * + * @param $path + * @return Mount + */ + public static function find($path) { + $path = self::formatPath($path); + if (isset(self::$mounts[$path])) { + return self::$mounts[$path]; + } + + \OC_Hook::emit('OC_Filesystem', 'get_mountpoint', array('path' => $path)); + $foundMountPoint = ''; + $mountPoints = array_keys(self::$mounts); + foreach ($mountPoints as $mountpoint) { + if (strpos($path, $mountpoint) === 0 and strlen($mountpoint) > strlen($foundMountPoint)) { + $foundMountPoint = $mountpoint; + } + } + if (isset(self::$mounts[$foundMountPoint])) { + return self::$mounts[$foundMountPoint]; + } else { + return null; + } + } + + /** + * Find all mounts in $path + * + * @param $path + * @return Mount[] + */ + public static function findIn($path) { + $path = self::formatPath($path); + $result = array(); + $pathLength = strlen($path); + $mountPoints = array_keys(self::$mounts); + foreach ($mountPoints as $mountPoint) { + if (substr($mountPoint, 0, $pathLength) === $path and strlen($mountPoint) > $pathLength) { + $result[] = self::$mounts[$mountPoint]; + } + } + return $result; + } + + public static function clear() { + self::$mounts = array(); + } + + /** + * @param string $id + * @return \OC\Files\Storage\Storage[] + */ + public static function findById($id) { + $result = array(); + foreach (self::$mounts as $mount) { + if ($mount->getStorageId() === $id) { + $result[] = $mount; + } + } + return $result; + } +} diff --git a/lib/filestorage/common.php b/lib/files/storage/common.php index b97eb79d8d4..591803f0440 100644 --- a/lib/filestorage/common.php +++ b/lib/files/storage/common.php @@ -1,51 +1,34 @@ <?php - /** -* ownCloud -* -* @author Michael Gapczynski -* @copyright 2012 Michael Gapczynski GapczynskiM@gmail.com -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE -* License as published by the Free Software Foundation; either -* version 3 of the License, or any later version. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU AFFERO GENERAL PUBLIC LICENSE for more details. -* -* You should have received a copy of the GNU Affero General Public -* License along with this library. If not, see <http://www.gnu.org/licenses/>. -*/ + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Storage; /** * Storage backend class for providing common filesystem operation methods * which are not storage-backend specific. * - * OC_Filestorage_Common is never used directly; it is extended by all other + * \OC\Files\Storage\Common is never used directly; it is extended by all other * storage backends, where its methods may be overridden, and additional * (backend-specific) methods are defined. * - * Some OC_Filestorage_Common methods call functions which are first defined + * Some \OC\Files\Storage\Common methods call functions which are first defined * in classes which extend it, e.g. $this->stat() . */ -abstract class OC_Filestorage_Common extends OC_Filestorage { +abstract class Common implements \OC\Files\Storage\Storage { public function __construct($parameters) {} -// abstract public function mkdir($path); -// abstract public function rmdir($path); -// abstract public function opendir($path); public function is_dir($path) { return $this->filetype($path)=='dir'; } public function is_file($path) { return $this->filetype($path)=='file'; } -// abstract public function stat($path); -// abstract public function filetype($path); public function filesize($path) { if($this->is_dir($path)) { return 0;//by definition @@ -55,29 +38,40 @@ abstract class OC_Filestorage_Common extends OC_Filestorage { } } public function isCreatable($path) { - return $this->isUpdatable($path); + if ($this->is_dir($path) && $this->isUpdatable($path)) { + return true; + } + return false; } -// abstract public function isReadable($path); -// abstract public function isUpdatable($path); public function isDeletable($path) { return $this->isUpdatable($path); } public function isSharable($path) { return $this->isReadable($path); } -// abstract public function file_exists($path); - public function filectime($path) { - $stat = $this->stat($path); - return $stat['ctime']; + public function getPermissions($path){ + $permissions = 0; + if($this->isCreatable($path)){ + $permissions |= \OCP\PERMISSION_CREATE; + } + if($this->isReadable($path)){ + $permissions |= \OCP\PERMISSION_READ; + } + if($this->isUpdatable($path)){ + $permissions |= \OCP\PERMISSION_UPDATE; + } + if($this->isDeletable($path)){ + $permissions |= \OCP\PERMISSION_DELETE; + } + if($this->isSharable($path)){ + $permissions |= \OCP\PERMISSION_SHARE; + } + return $permissions; } public function filemtime($path) { $stat = $this->stat($path); return $stat['mtime']; } - public function fileatime($path) { - $stat = $this->stat($path); - return $stat['atime']; - } public function file_get_contents($path) { $handle = $this->fopen($path, "r"); if(!$handle) { @@ -89,94 +83,58 @@ abstract class OC_Filestorage_Common extends OC_Filestorage { } return fread($handle, $size); } - public function file_put_contents($path, $data) { + public function file_put_contents($path,$data) { $handle = $this->fopen($path, "w"); return fwrite($handle, $data); } -// abstract public function unlink($path); - public function rename($path1, $path2) { - if($this->copy($path1, $path2)) { + public function rename($path1,$path2) { + if($this->copy($path1,$path2)) { return $this->unlink($path1); }else{ return false; } } - public function copy($path1, $path2) { - $source=$this->fopen($path1, 'r'); - $target=$this->fopen($path2, 'w'); - $count=OC_Helper::streamCopy($source, $target); + public function copy($path1,$path2) { + $source=$this->fopen($path1,'r'); + $target=$this->fopen($path2,'w'); + $count=\OC_Helper::streamCopy($source,$target); return $count>0; } -// abstract public function fopen($path, $mode); /** * @brief Deletes all files and folders recursively within a directory - * @param $directory The directory whose contents will be deleted - * @param $empty Flag indicating whether directory will be emptied - * @returns true/false + * @param string $directory The directory whose contents will be deleted + * @param bool $empty Flag indicating whether directory will be emptied + * @returns bool * * @note By default the directory specified by $directory will be * deleted together with its contents. To avoid this set $empty to true */ public function deleteAll( $directory, $empty = false ) { - - // strip leading slash - if( substr( $directory, 0, 1 ) == "/" ) { - - $directory = substr( $directory, 1 ); - - } - - // strip trailing slash - if( substr( $directory, -1) == "/" ) { - - $directory = substr( $directory, 0, -1 ); - - } + $directory = trim($directory,'/'); if ( !$this->file_exists( \OCP\USER::getUser() . '/' . $directory ) || !$this->is_dir( \OCP\USER::getUser() . '/' . $directory ) ) { - return false; - - } elseif( !$this->is_readable( \OCP\USER::getUser() . '/' . $directory ) ) { - + } elseif( !$this->isReadable( \OCP\USER::getUser() . '/' . $directory ) ) { return false; - } else { - $directoryHandle = $this->opendir( \OCP\USER::getUser() . '/' . $directory ); - while ( $contents = readdir( $directoryHandle ) ) { - if ( $contents != '.' && $contents != '..') { - $path = $directory . "/" . $contents; - if ( $this->is_dir( $path ) ) { - - deleteAll( $path ); - + $this->deleteAll( $path ); } else { - $this->unlink( \OCP\USER::getUser() .'/' . $path ); // TODO: make unlink use same system path as is_dir - } } - } - //$this->closedir( $directoryHandle ); // TODO: implement closedir in OC_FSV - if ( $empty == false ) { - if ( !$this->rmdir( $directory ) ) { - - return false; - + return false; } - } - return true; } @@ -188,73 +146,71 @@ abstract class OC_Filestorage_Common extends OC_Filestorage { if($this->is_dir($path)) { return 'httpd/unix-directory'; } - $source=$this->fopen($path, 'r'); + $source=$this->fopen($path,'r'); if(!$source) { return false; } - $head=fread($source, 8192);//8kb should suffice to determine a mimetype - if($pos=strrpos($path, '.')) { - $extension=substr($path, $pos); + $head=fread($source,8192);//8kb should suffice to determine a mimetype + if($pos=strrpos($path,'.')) { + $extension=substr($path,$pos); }else{ $extension=''; } - $tmpFile=OC_Helper::tmpFile($extension); - file_put_contents($tmpFile, $head); - $mime=OC_Helper::getMimeType($tmpFile); + $tmpFile=\OC_Helper::tmpFile($extension); + file_put_contents($tmpFile,$head); + $mime=\OC_Helper::getMimeType($tmpFile); unlink($tmpFile); return $mime; } - public function hash($type, $path, $raw = false) { - $tmpFile=$this->getLocalFile(); - $hash=hash($type, $tmpFile, $raw); + public function hash($type,$path,$raw = false) { + $tmpFile=$this->getLocalFile($path); + $hash=hash($type,$tmpFile,$raw); unlink($tmpFile); return $hash; } -// abstract public function free_space($path); public function search($query) { return $this->searchInDir($query); } public function getLocalFile($path) { return $this->toTmpFile($path); } - private function toTmpFile($path) {//no longer in the storage api, still usefull here - $source=$this->fopen($path, 'r'); + private function toTmpFile($path) {//no longer in the storage api, still useful here + $source=$this->fopen($path,'r'); if(!$source) { return false; } - if($pos=strrpos($path, '.')) { - $extension=substr($path, $pos); + if($pos=strrpos($path,'.')) { + $extension=substr($path,$pos); }else{ $extension=''; } - $tmpFile=OC_Helper::tmpFile($extension); - $target=fopen($tmpFile, 'w'); - OC_Helper::streamCopy($source, $target); + $tmpFile=\OC_Helper::tmpFile($extension); + $target=fopen($tmpFile,'w'); + \OC_Helper::streamCopy($source,$target); return $tmpFile; } public function getLocalFolder($path) { - $baseDir=OC_Helper::tmpFolder(); - $this->addLocalFolder($path, $baseDir); + $baseDir=\OC_Helper::tmpFolder(); + $this->addLocalFolder($path,$baseDir); return $baseDir; } - private function addLocalFolder($path, $target) { + private function addLocalFolder($path,$target) { if($dh=$this->opendir($path)) { while($file=readdir($dh)) { if($file!=='.' and $file!=='..') { if($this->is_dir($path.'/'.$file)) { mkdir($target.'/'.$file); - $this->addLocalFolder($path.'/'.$file, $target.'/'.$file); + $this->addLocalFolder($path.'/'.$file,$target.'/'.$file); }else{ $tmp=$this->toTmpFile($path.'/'.$file); - rename($tmp, $target.'/'.$file); + rename($tmp,$target.'/'.$file); } } } } } -// abstract public function touch($path, $mtime=null); - protected function searchInDir($query, $dir='') { + protected function searchInDir($query,$dir='') { $files=array(); $dh=$this->opendir($dir); if($dh) { @@ -264,7 +220,7 @@ abstract class OC_Filestorage_Common extends OC_Filestorage { $files[]=$dir.'/'.$item; } if($this->is_dir($dir.'/'.$item)) { - $files=array_merge($files, $this->searchInDir($query, $dir.'/'.$item)); + $files=array_merge($files,$this->searchInDir($query,$dir.'/'.$item)); } } } @@ -273,19 +229,52 @@ abstract class OC_Filestorage_Common extends OC_Filestorage { /** * check if a file or folder has been updated since $time + * @param string $path * @param int $time * @return bool */ - public function hasUpdated($path, $time) { + public function hasUpdated($path,$time) { return $this->filemtime($path)>$time; } + public function getCache($path=''){ + return new \OC\Files\Cache\Cache($this); + } + + public function getScanner($path=''){ + return new \OC\Files\Cache\Scanner($this); + } + + public function getPermissionsCache($path=''){ + return new \OC\Files\Cache\Permissions($this); + } + + public function getWatcher($path=''){ + return new \OC\Files\Cache\Watcher($this); + } + /** * get the owner of a path - * @param $path The path to get the owner + * @param string $path The path to get the owner * @return string uid or false */ public function getOwner($path) { - return OC_User::getUser(); + return \OC_User::getUser(); + } + + /** + * get the ETag for a file or folder + * + * @param string $path + * @return string + */ + public function getETag($path){ + $ETagFunction = \OC_Connector_Sabre_Node::$ETagFunction; + if($ETagFunction) { + $hash = call_user_func($ETagFunction, $path); + return $hash; + }else{ + return uniqid(); + } } } diff --git a/lib/filestorage/commontest.php b/lib/files/storage/commontest.php index 3b038b3fda9..fbdb7fbf110 100644 --- a/lib/filestorage/commontest.php +++ b/lib/files/storage/commontest.php @@ -22,20 +22,25 @@ */ /** - * test implementation for OC_FileStorage_Common with OC_FileStorage_Local + * test implementation for \OC\Files\Storage\Common with \OC\Files\Storage\Local */ -class OC_Filestorage_CommonTest extends OC_Filestorage_Common{ +namespace OC\Files\Storage; + +class CommonTest extends \OC\Files\Storage\Common{ /** * underlying local storage used for missing functions - * @var OC_FileStorage_Local + * @var \OC\Files\Storage\Local */ private $storage; public function __construct($params) { - $this->storage=new OC_Filestorage_Local($params); + $this->storage=new \OC\Files\Storage\Local($params); } + public function getId(){ + return 'test::'.$this->storage->getId(); + } public function mkdir($path) { return $this->storage->mkdir($path); } diff --git a/lib/filestorage/local.php b/lib/files/storage/local.php index 4a4019a3224..a5db4ba9194 100644 --- a/lib/filestorage/local.php +++ b/lib/files/storage/local.php @@ -1,8 +1,17 @@ <?php /** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Storage; + +/** * for local filestore, we only have to map the paths */ -class OC_Filestorage_Local extends OC_Filestorage_Common{ +class Local extends \OC\Files\Storage\Common{ protected $datadir; public function __construct($arguments) { $this->datadir=$arguments['datadir']; @@ -10,6 +19,9 @@ class OC_Filestorage_Local extends OC_Filestorage_Common{ $this->datadir.='/'; } } + public function getId(){ + return 'local::'.$this->datadir; + } public function mkdir($path) { return @mkdir($this->datadir.$path); } @@ -20,7 +32,7 @@ class OC_Filestorage_Local extends OC_Filestorage_Common{ return opendir($this->datadir.$path); } public function is_dir($path) { - if(substr($path, -1)=='/') { + if(substr($path,-1)=='/') { $path=substr($path, 0, -1); } return is_dir($this->datadir.$path); @@ -68,9 +80,6 @@ class OC_Filestorage_Local extends OC_Filestorage_Common{ public function file_exists($path) { return file_exists($this->datadir.$path); } - public function filectime($path) { - return filectime($this->datadir.$path); - } public function filemtime($path) { return filemtime($this->datadir.$path); } @@ -100,11 +109,11 @@ class OC_Filestorage_Local extends OC_Filestorage_Common{ } public function rename($path1, $path2) { if (!$this->isUpdatable($path1)) { - OC_Log::write('core', 'unable to rename, file is not writable : '.$path1, OC_Log::ERROR); + \OC_Log::write('core','unable to rename, file is not writable : '.$path1,\OC_Log::ERROR); return false; } if(! $this->file_exists($path1)) { - OC_Log::write('core', 'unable to rename, file does not exists : '.$path1, OC_Log::ERROR); + \OC_Log::write('core','unable to rename, file does not exists : '.$path1,\OC_Log::ERROR); return false; } @@ -143,7 +152,7 @@ class OC_Filestorage_Local extends OC_Filestorage_Common{ public function getMimeType($path) { if($this->isReadable($path)) { - return OC_Helper::getMimeType($this->datadir.$path); + return \OC_Helper::getMimeType($this->datadir . $path); }else{ return false; } @@ -175,7 +184,7 @@ class OC_Filestorage_Local extends OC_Filestorage_Common{ // Windows OS: we use COM to access the filesystem if (strpos($name, 'win') !== false) { if (class_exists('COM')) { - $fsobj = new COM("Scripting.FileSystemObject"); + $fsobj = new \COM("Scripting.FileSystemObject"); $f = $fsobj->GetFile($fullPath); return $f->Size; } @@ -188,7 +197,7 @@ class OC_Filestorage_Local extends OC_Filestorage_Common{ return (float)exec('stat -c %s ' . escapeshellarg($fullPath)); } } else { - OC_Log::write('core', 'Unable to determine file size of "'.$fullPath.'". Unknown OS: '.$name, OC_Log::ERROR); + \OC_Log::write('core', 'Unable to determine file size of "'.$fullPath.'". Unknown OS: '.$name, \OC_Log::ERROR); } return 0; diff --git a/lib/files/storage/storage.php b/lib/files/storage/storage.php new file mode 100644 index 00000000000..2cc835236ba --- /dev/null +++ b/lib/files/storage/storage.php @@ -0,0 +1,88 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Storage; + +/** + * Provide a common interface to all different storage options + */ +interface Storage{ + public function __construct($parameters); + public function getId(); + public function mkdir($path); + public function rmdir($path); + public function opendir($path); + public function is_dir($path); + public function is_file($path); + public function stat($path); + public function filetype($path); + public function filesize($path); + public function isCreatable($path); + public function isReadable($path); + public function isUpdatable($path); + public function isDeletable($path); + public function isSharable($path); + public function getPermissions($path); + public function file_exists($path); + public function filemtime($path); + public function file_get_contents($path); + public function file_put_contents($path,$data); + public function unlink($path); + public function rename($path1,$path2); + public function copy($path1,$path2); + public function fopen($path,$mode); + public function getMimeType($path); + public function hash($type,$path,$raw = false); + public function free_space($path); + public function search($query); + public function touch($path, $mtime=null); + public function getLocalFile($path);// get a path to a local version of the file, whether the original file is local or remote + public function getLocalFolder($path);// get a path to a local version of the folder, whether the original file is local or remote + /** + * check if a file or folder has been updated since $time + * @param int $time + * @return bool + * + * hasUpdated for folders should return at least true if a file inside the folder is add, removed or renamed. + * returning true for other changes in the folder is optional + */ + public function hasUpdated($path,$time); + + /** + * @param string $path + * @return \OC\Files\Cache\Cache + */ + public function getCache($path=''); + /** + * @param string $path + * @return \OC\Files\Cache\Scanner + */ + public function getScanner($path=''); + + public function getOwner($path); + + /** + * @param string $path + * @return \OC\Files\Cache\Permissions + */ + public function getPermissionsCache($path=''); + + /** + * @param string $path + * @return \OC\Files\Cache\Watcher + */ + public function getWatcher($path=''); + + /** + * get the ETag for a file or folder + * + * @param string $path + * @return string + */ + public function getETag($path); +} diff --git a/lib/files/storage/temporary.php b/lib/files/storage/temporary.php new file mode 100644 index 00000000000..ffc55e27507 --- /dev/null +++ b/lib/files/storage/temporary.php @@ -0,0 +1,26 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Storage; + +/** + * local storage backnd in temporary folder for testing purpores + */ +class Temporary extends Local{ + public function __construct($arguments) { + $this->datadir=\OC_Helper::tmpFolder(); + } + + public function cleanUp() { + \OC_Helper::rmdirr($this->datadir); + } + + public function __destruct() { + $this->cleanUp(); + } +} diff --git a/lib/files/stream/close.php b/lib/files/stream/close.php new file mode 100644 index 00000000000..80de3497c36 --- /dev/null +++ b/lib/files/stream/close.php @@ -0,0 +1,100 @@ +<?php +/** + * Copyright (c) 2013 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Stream; + +/** + * stream wrapper that provides a callback on stream close + */ +class Close { + private static $callBacks = array(); + private $path = ''; + private $source; + private static $open = array(); + + public function stream_open($path, $mode, $options, &$opened_path) { + $path = substr($path, strlen('close://')); + $this->path = $path; + $this->source = fopen($path, $mode); + if (is_resource($this->source)) { + $this->meta = stream_get_meta_data($this->source); + } + self::$open[] = $path; + return is_resource($this->source); + } + + public function stream_seek($offset, $whence = SEEK_SET) { + fseek($this->source, $offset, $whence); + } + + public function stream_tell() { + return ftell($this->source); + } + + public function stream_read($count) { + return fread($this->source, $count); + } + + public function stream_write($data) { + return fwrite($this->source, $data); + } + + public function stream_set_option($option, $arg1, $arg2) { + switch ($option) { + case STREAM_OPTION_BLOCKING: + stream_set_blocking($this->source, $arg1); + break; + case STREAM_OPTION_READ_TIMEOUT: + stream_set_timeout($this->source, $arg1, $arg2); + break; + case STREAM_OPTION_WRITE_BUFFER: + stream_set_write_buffer($this->source, $arg1, $arg2); + } + } + + public function stream_stat() { + return fstat($this->source); + } + + public function stream_lock($mode) { + flock($this->source, $mode); + } + + public function stream_flush() { + return fflush($this->source); + } + + public function stream_eof() { + return feof($this->source); + } + + public function url_stat($path) { + $path = substr($path, strlen('close://')); + if (file_exists($path)) { + return stat($path); + } else { + return false; + } + } + + public function stream_close() { + fclose($this->source); + if (isset(self::$callBacks[$this->path])) { + call_user_func(self::$callBacks[$this->path], $this->path); + } + } + + public function unlink($path) { + $path = substr($path, strlen('close://')); + return unlink($path); + } + + public static function registerCallback($path, $callback) { + self::$callBacks[$path] = $callback; + } +} diff --git a/lib/files/stream/dir.php b/lib/files/stream/dir.php new file mode 100644 index 00000000000..6ca884fc994 --- /dev/null +++ b/lib/files/stream/dir.php @@ -0,0 +1,47 @@ +<?php +/** + * Copyright (c) 2013 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Stream; + +class Dir { + private static $dirs = array(); + private $name; + private $index; + + public function dir_opendir($path, $options) { + $this->name = substr($path, strlen('fakedir://')); + $this->index = 0; + if (!isset(self::$dirs[$this->name])) { + self::$dirs[$this->name] = array(); + } + return true; + } + + public function dir_readdir() { + if ($this->index >= count(self::$dirs[$this->name])) { + return false; + } + $filename = self::$dirs[$this->name][$this->index]; + $this->index++; + return $filename; + } + + public function dir_closedir() { + $this->name = ''; + return true; + } + + public function dir_rewinddir() { + $this->index = 0; + return true; + } + + public static function register($path, $content) { + self::$dirs[$path] = $content; + } +} diff --git a/lib/files/stream/oc.php b/lib/files/stream/oc.php new file mode 100644 index 00000000000..88e7e062df9 --- /dev/null +++ b/lib/files/stream/oc.php @@ -0,0 +1,129 @@ +<?php +/** + * Copyright (c) 2013 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Stream; + +/** + * a stream wrappers for ownCloud's virtual filesystem + */ +class OC { + /** + * @var \OC\Files\View + */ + static private $rootView; + + private $path; + private $dirSource; + private $fileSource; + private $meta; + + private function setup(){ + if (!self::$rootView) { + self::$rootView = new \OC\Files\View(''); + } + } + + public function stream_open($path, $mode, $options, &$opened_path) { + $this->setup(); + $path = substr($path, strlen('oc://')); + $this->path = $path; + $this->fileSource = self::$rootView->fopen($path, $mode); + if (is_resource($this->fileSource)) { + $this->meta = stream_get_meta_data($this->fileSource); + } + return is_resource($this->fileSource); + } + + public function stream_seek($offset, $whence = SEEK_SET) { + fseek($this->fileSource, $offset, $whence); + } + + public function stream_tell() { + return ftell($this->fileSource); + } + + public function stream_read($count) { + return fread($this->fileSource, $count); + } + + public function stream_write($data) { + return fwrite($this->fileSource, $data); + } + + public function stream_set_option($option, $arg1, $arg2) { + switch ($option) { + case STREAM_OPTION_BLOCKING: + stream_set_blocking($this->fileSource, $arg1); + break; + case STREAM_OPTION_READ_TIMEOUT: + stream_set_timeout($this->fileSource, $arg1, $arg2); + break; + case STREAM_OPTION_WRITE_BUFFER: + stream_set_write_buffer($this->fileSource, $arg1, $arg2); + } + } + + public function stream_stat() { + return fstat($this->fileSource); + } + + public function stream_lock($mode) { + flock($this->fileSource, $mode); + } + + public function stream_flush() { + return fflush($this->fileSource); + } + + public function stream_eof() { + return feof($this->fileSource); + } + + public function url_stat($path) { + $this->setup(); + $path = substr($path, strlen('oc://')); + if (self::$rootView->file_exists($path)) { + return self::$rootView->stat($path); + } else { + return false; + } + } + + public function stream_close() { + fclose($this->fileSource); + } + + public function unlink($path) { + $this->setup(); + $path = substr($path, strlen('oc://')); + return self::$rootView->unlink($path); + } + + public function dir_opendir($path, $options) { + $this->setup(); + $path = substr($path, strlen('oc://')); + $this->path = $path; + $this->dirSource = self::$rootView->opendir($path); + if (is_resource($this->dirSource)) { + $this->meta = stream_get_meta_data($this->dirSource); + } + return is_resource($this->dirSource); + } + + public function dir_readdir() { + return readdir($this->dirSource); + } + + public function dir_closedir() { + closedir($this->dirSource); + } + + public function dir_rewinddir() { + rewinddir($this->dirSource); + } +} diff --git a/lib/streamwrappers.php b/lib/files/stream/staticstream.php index 981c280f0dd..7725a6a5a04 100644 --- a/lib/streamwrappers.php +++ b/lib/files/stream/staticstream.php @@ -1,54 +1,30 @@ <?php +/** + * Copyright (c) 2013 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ -class OC_FakeDirStream{ - public static $dirs=array(); - private $name; - private $index; - - public function dir_opendir($path, $options) { - $this->name=substr($path, strlen('fakedir://')); - $this->index=0; - if(!isset(self::$dirs[$this->name])) { - self::$dirs[$this->name]=array(); - } - return true; - } - - public function dir_readdir() { - if($this->index>=count(self::$dirs[$this->name])) { - return false; - } - $filename=self::$dirs[$this->name][$this->index]; - $this->index++; - return $filename; - } - - public function dir_closedir() { - $this->name=''; - return true; - } - - public function dir_rewinddir() { - $this->index=0; - return true; - } -} +namespace OC\Files\Stream; -class OC_StaticStreamWrapper { +class StaticStream { public $context; protected static $data = array(); - protected $path = ''; + protected $path = ''; protected $pointer = 0; protected $writable = false; - public function stream_close() {} + public function stream_close() { + } public function stream_eof() { return $this->pointer >= strlen(self::$data[$this->path]); } - public function stream_flush() {} + public function stream_flush() { + } public function stream_open($path, $mode, $options, &$opened_path) { switch ($mode[0]) { @@ -213,89 +189,3 @@ class OC_StaticStreamWrapper { return false; } } - -/** - * stream wrapper that provides a callback on stream close - */ -class OC_CloseStreamWrapper{ - public static $callBacks=array(); - private $path=''; - private $source; - private static $open=array(); - public function stream_open($path, $mode, $options, &$opened_path) { - $path=substr($path, strlen('close://')); - $this->path=$path; - $this->source=fopen($path, $mode); - if(is_resource($this->source)) { - $this->meta=stream_get_meta_data($this->source); - } - self::$open[]=$path; - return is_resource($this->source); - } - - public function stream_seek($offset, $whence=SEEK_SET) { - fseek($this->source, $offset, $whence); - } - - public function stream_tell() { - return ftell($this->source); - } - - public function stream_read($count) { - return fread($this->source, $count); - } - - public function stream_write($data) { - return fwrite($this->source, $data); - } - - public function stream_set_option($option, $arg1, $arg2) { - switch($option) { - case STREAM_OPTION_BLOCKING: - stream_set_blocking($this->source, $arg1); - break; - case STREAM_OPTION_READ_TIMEOUT: - stream_set_timeout($this->source, $arg1, $arg2); - break; - case STREAM_OPTION_WRITE_BUFFER: - stream_set_write_buffer($this->source, $arg1, $arg2); - } - } - - public function stream_stat() { - return fstat($this->source); - } - - public function stream_lock($mode) { - flock($this->source, $mode); - } - - public function stream_flush() { - return fflush($this->source); - } - - public function stream_eof() { - return feof($this->source); - } - - public function url_stat($path) { - $path=substr($path, strlen('close://')); - if(file_exists($path)) { - return stat($path); - }else{ - return false; - } - } - - public function stream_close() { - fclose($this->source); - if(isset(self::$callBacks[$this->path])) { - call_user_func(self::$callBacks[$this->path], $this->path); - } - } - - public function unlink($path) { - $path=substr($path, strlen('close://')); - return unlink($path); - } -} diff --git a/lib/files/view.php b/lib/files/view.php new file mode 100644 index 00000000000..dfcb770328b --- /dev/null +++ b/lib/files/view.php @@ -0,0 +1,974 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +/** + * Class to provide access to ownCloud filesystem via a "view", and methods for + * working with files within that view (e.g. read, write, delete, etc.). Each + * view is restricted to a set of directories via a virtual root. The default view + * uses the currently logged in user's data directory as root (parts of + * OC_Filesystem are merely a wrapper for OC_FilesystemView). + * + * Apps that need to access files outside of the user data folders (to modify files + * belonging to a user other than the one currently logged in, for example) should + * use this class directly rather than using OC_Filesystem, or making use of PHP's + * built-in file manipulation functions. This will ensure all hooks and proxies + * are triggered correctly. + * + * Filesystem functions are not called directly; they are passed to the correct + * \OC\Files\Storage\Storage object + */ + +namespace OC\Files; + +class View { + private $fakeRoot = ''; + private $internal_path_cache = array(); + private $storage_cache = array(); + + public function __construct($root) { + $this->fakeRoot = $root; + } + + public function getAbsolutePath($path = '/') { + if (!$path) { + $path = '/'; + } + if ($path[0] !== '/') { + $path = '/' . $path; + } + return $this->fakeRoot . $path; + } + + /** + * change the root to a fake root + * + * @param string $fakeRoot + * @return bool + */ + public function chroot($fakeRoot) { + if (!$fakeRoot == '') { + if ($fakeRoot[0] !== '/') { + $fakeRoot = '/' . $fakeRoot; + } + } + $this->fakeRoot = $fakeRoot; + } + + /** + * get the fake root + * + * @return string + */ + public function getRoot() { + return $this->fakeRoot; + } + + /** + * get path relative to the root of the view + * + * @param string $path + * @return string + */ + public function getRelativePath($path) { + if ($this->fakeRoot == '') { + return $path; + } + if (strpos($path, $this->fakeRoot) !== 0) { + return null; + } else { + $path = substr($path, strlen($this->fakeRoot)); + if (strlen($path) === 0) { + return '/'; + } else { + return $path; + } + } + } + + /** + * get the mountpoint of the storage object for a path + ( note: because a storage is not always mounted inside the fakeroot, the returned mountpoint is relative to the absolute root of the filesystem and doesn't take the chroot into account + * + * @param string $path + * @return string + */ + public function getMountPoint($path) { + return Filesystem::getMountPoint($this->getAbsolutePath($path)); + } + + /** + * resolve a path to a storage and internal path + * + * @param string $path + * @return array consisting of the storage and the internal path + */ + public function resolvePath($path) { + return Filesystem::resolvePath($this->getAbsolutePath($path)); + } + + /** + * return the path to a local version of the file + * we need this because we can't know if a file is stored local or not from outside the filestorage and for some purposes a local file is needed + * + * @param string $path + * @return string + */ + public function getLocalFile($path) { + $parent = substr($path, 0, strrpos($path, '/')); + $path = $this->getAbsolutePath($path); + list($storage, $internalPath) = Filesystem::resolvePath($path); + if (Filesystem::isValidPath($parent) and $storage) { + return $storage->getLocalFile($internalPath); + } else { + return null; + } + } + + /** + * @param string $path + * @return string + */ + public function getLocalFolder($path) { + $parent = substr($path, 0, strrpos($path, '/')); + $path = $this->getAbsolutePath($path); + list($storage, $internalPath) = Filesystem::resolvePath($path); + if (Filesystem::isValidPath($parent) and $storage) { + return $storage->getLocalFolder($internalPath); + } else { + return null; + } + } + + /** + * the following functions operate with arguments and return values identical + * to those of their PHP built-in equivalents. Mostly they are merely wrappers + * for \OC\Files\Storage\Storage via basicOperation(). + */ + public function mkdir($path) { + return $this->basicOperation('mkdir', $path, array('create', 'write')); + } + + public function rmdir($path) { + return $this->basicOperation('rmdir', $path, array('delete')); + } + + public function opendir($path) { + return $this->basicOperation('opendir', $path, array('read')); + } + + public function readdir($handle) { + $fsLocal = new Storage\Local(array('datadir' => '/')); + return $fsLocal->readdir($handle); + } + + public function is_dir($path) { + if ($path == '/') { + return true; + } + return $this->basicOperation('is_dir', $path); + } + + public function is_file($path) { + if ($path == '/') { + return false; + } + return $this->basicOperation('is_file', $path); + } + + public function stat($path) { + return $this->basicOperation('stat', $path); + } + + public function filetype($path) { + return $this->basicOperation('filetype', $path); + } + + public function filesize($path) { + return $this->basicOperation('filesize', $path); + } + + public function readfile($path) { + @ob_end_clean(); + $handle = $this->fopen($path, 'rb'); + if ($handle) { + $chunkSize = 8192; // 8 MB chunks + while (!feof($handle)) { + echo fread($handle, $chunkSize); + flush(); + } + $size = $this->filesize($path); + return $size; + } + return false; + } + + public function isCreatable($path) { + return $this->basicOperation('isCreatable', $path); + } + + public function isReadable($path) { + return $this->basicOperation('isReadable', $path); + } + + public function isUpdatable($path) { + return $this->basicOperation('isUpdatable', $path); + } + + public function isDeletable($path) { + return $this->basicOperation('isDeletable', $path); + } + + public function isSharable($path) { + return $this->basicOperation('isSharable', $path); + } + + public function file_exists($path) { + if ($path == '/') { + return true; + } + return $this->basicOperation('file_exists', $path); + } + + public function filemtime($path) { + return $this->basicOperation('filemtime', $path); + } + + public function touch($path, $mtime = null) { + if (!is_null($mtime) and !is_numeric($mtime)) { + $mtime = strtotime($mtime); + } + return $this->basicOperation('touch', $path, array('write'), $mtime); + } + + public function file_get_contents($path) { + return $this->basicOperation('file_get_contents', $path, array('read')); + } + + public function file_put_contents($path, $data) { + if (is_resource($data)) { //not having to deal with streams in file_put_contents makes life easier + $absolutePath = Filesystem::normalizePath($this->getAbsolutePath($path)); + if (\OC_FileProxy::runPreProxies('file_put_contents', $absolutePath, $data) && Filesystem::isValidPath($path)) { + $path = $this->getRelativePath($absolutePath); + $exists = $this->file_exists($path); + $run = true; + if ($this->fakeRoot == Filesystem::getRoot()) { + if (!$exists) { + \OC_Hook::emit( + Filesystem::CLASSNAME, + Filesystem::signal_create, + array( + Filesystem::signal_param_path => $path, + Filesystem::signal_param_run => &$run + ) + ); + } + \OC_Hook::emit( + Filesystem::CLASSNAME, + Filesystem::signal_write, + array( + Filesystem::signal_param_path => $path, + Filesystem::signal_param_run => &$run + ) + ); + } + if (!$run) { + return false; + } + $target = $this->fopen($path, 'w'); + if ($target) { + $count = \OC_Helper::streamCopy($data, $target); + fclose($target); + fclose($data); + if ($this->fakeRoot == Filesystem::getRoot()) { + if (!$exists) { + \OC_Hook::emit( + Filesystem::CLASSNAME, + Filesystem::signal_post_create, + array(Filesystem::signal_param_path => $path) + ); + } + \OC_Hook::emit( + Filesystem::CLASSNAME, + Filesystem::signal_post_write, + array(Filesystem::signal_param_path => $path) + ); + } + \OC_FileProxy::runPostProxies('file_put_contents', $absolutePath, $count); + return $count > 0; + } else { + return false; + } + } else { + return false; + } + } else { + return $this->basicOperation('file_put_contents', $path, array('create', 'write'), $data); + } + } + + public function unlink($path) { + return $this->basicOperation('unlink', $path, array('delete')); + } + + public function deleteAll($directory, $empty = false) { + return $this->basicOperation('deleteAll', $directory, array('delete'), $empty); + } + + public function rename($path1, $path2) { + $postFix1 = (substr($path1, -1, 1) === '/') ? '/' : ''; + $postFix2 = (substr($path2, -1, 1) === '/') ? '/' : ''; + $absolutePath1 = Filesystem::normalizePath($this->getAbsolutePath($path1)); + $absolutePath2 = Filesystem::normalizePath($this->getAbsolutePath($path2)); + if (\OC_FileProxy::runPreProxies('rename', $absolutePath1, $absolutePath2) and Filesystem::isValidPath($path2)) { + $path1 = $this->getRelativePath($absolutePath1); + $path2 = $this->getRelativePath($absolutePath2); + + if ($path1 == null or $path2 == null) { + return false; + } + $run = true; + if ($this->fakeRoot == Filesystem::getRoot()) { + \OC_Hook::emit( + Filesystem::CLASSNAME, Filesystem::signal_rename, + array( + Filesystem::signal_param_oldpath => $path1, + Filesystem::signal_param_newpath => $path2, + Filesystem::signal_param_run => &$run + ) + ); + } + if ($run) { + $mp1 = $this->getMountPoint($path1 . $postFix1); + $mp2 = $this->getMountPoint($path2 . $postFix2); + if ($mp1 == $mp2) { + list($storage, $internalPath1) = Filesystem::resolvePath($absolutePath1 . $postFix1); + list(, $internalPath2) = Filesystem::resolvePath($absolutePath2 . $postFix2); + if ($storage) { + $result = $storage->rename($internalPath1, $internalPath2); + } else { + $result = false; + } + } else { + $source = $this->fopen($path1 . $postFix1, 'r'); + $target = $this->fopen($path2 . $postFix2, 'w'); + $count = \OC_Helper::streamCopy($source, $target); + list($storage1, $internalPath1) = Filesystem::resolvePath($absolutePath1 . $postFix1); + $storage1->unlink($internalPath1); + $result = $count > 0; + } + if ($this->fakeRoot == Filesystem::getRoot()) { + \OC_Hook::emit( + Filesystem::CLASSNAME, + Filesystem::signal_post_rename, + array( + Filesystem::signal_param_oldpath => $path1, + Filesystem::signal_param_newpath => $path2 + ) + ); + } + return $result; + } else { + return false; + } + } else { + return false; + } + } + + public function copy($path1, $path2) { + $postFix1 = (substr($path1, -1, 1) === '/') ? '/' : ''; + $postFix2 = (substr($path2, -1, 1) === '/') ? '/' : ''; + $absolutePath1 = Filesystem::normalizePath($this->getAbsolutePath($path1)); + $absolutePath2 = Filesystem::normalizePath($this->getAbsolutePath($path2)); + if (\OC_FileProxy::runPreProxies('copy', $absolutePath1, $absolutePath2) and Filesystem::isValidPath($path2)) { + $path1 = $this->getRelativePath($absolutePath1); + $path2 = $this->getRelativePath($absolutePath2); + + if ($path1 == null or $path2 == null) { + return false; + } + $run = true; + $exists = $this->file_exists($path2); + if ($this->fakeRoot == Filesystem::getRoot()) { + \OC_Hook::emit( + Filesystem::CLASSNAME, + Filesystem::signal_copy, + array( + Filesystem::signal_param_oldpath => $path1, + Filesystem::signal_param_newpath => $path2, + Filesystem::signal_param_run => &$run + ) + ); + if ($run and !$exists) { + \OC_Hook::emit( + Filesystem::CLASSNAME, + Filesystem::signal_create, + array( + Filesystem::signal_param_path => $path2, + Filesystem::signal_param_run => &$run + ) + ); + } + if ($run) { + \OC_Hook::emit( + Filesystem::CLASSNAME, + Filesystem::signal_write, + array( + Filesystem::signal_param_path => $path2, + Filesystem::signal_param_run => &$run + ) + ); + } + } + if ($run) { + $mp1 = $this->getMountPoint($path1 . $postFix1); + $mp2 = $this->getMountPoint($path2 . $postFix2); + if ($mp1 == $mp2) { + list($storage, $internalPath1) = Filesystem::resolvePath($absolutePath1 . $postFix1); + list(, $internalPath2) = Filesystem::resolvePath($absolutePath2 . $postFix2); + if ($storage) { + $result = $storage->copy($internalPath1, $internalPath2); + } else { + $result = false; + } + } else { + $source = $this->fopen($path1 . $postFix1, 'r'); + $target = $this->fopen($path2 . $postFix2, 'w'); + $result = \OC_Helper::streamCopy($source, $target); + } + if ($this->fakeRoot == Filesystem::getRoot()) { + \OC_Hook::emit( + Filesystem::CLASSNAME, + Filesystem::signal_post_copy, + array( + Filesystem::signal_param_oldpath => $path1, + Filesystem::signal_param_newpath => $path2 + ) + ); + if (!$exists) { + \OC_Hook::emit( + Filesystem::CLASSNAME, + Filesystem::signal_post_create, + array(Filesystem::signal_param_path => $path2) + ); + } + \OC_Hook::emit( + Filesystem::CLASSNAME, + Filesystem::signal_post_write, + array(Filesystem::signal_param_path => $path2) + ); + } + return $result; + } else { + return false; + } + } else { + return false; + } + } + + public function fopen($path, $mode) { + $hooks = array(); + switch ($mode) { + case 'r': + case 'rb': + $hooks[] = 'read'; + break; + case 'r+': + case 'rb+': + case 'w+': + case 'wb+': + case 'x+': + case 'xb+': + case 'a+': + case 'ab+': + $hooks[] = 'read'; + $hooks[] = 'write'; + break; + case 'w': + case 'wb': + case 'x': + case 'xb': + case 'a': + case 'ab': + $hooks[] = 'write'; + break; + default: + \OC_Log::write('core', 'invalid mode (' . $mode . ') for ' . $path, \OC_Log::ERROR); + } + + return $this->basicOperation('fopen', $path, $hooks, $mode); + } + + public function toTmpFile($path) { + if (Filesystem::isValidPath($path)) { + $source = $this->fopen($path, 'r'); + if ($source) { + $extension = ''; + $extOffset = strpos($path, '.'); + if ($extOffset !== false) { + $extension = substr($path, strrpos($path, '.')); + } + $tmpFile = \OC_Helper::tmpFile($extension); + file_put_contents($tmpFile, $source); + return $tmpFile; + } else { + return false; + } + } else { + return false; + } + } + + public function fromTmpFile($tmpFile, $path) { + if (Filesystem::isValidPath($path)) { + if (!$tmpFile) { + debug_print_backtrace(); + } + $source = fopen($tmpFile, 'r'); + if ($source) { + $this->file_put_contents($path, $source); + unlink($tmpFile); + return true; + } else { + return false; + } + } else { + return false; + } + } + + public function getMimeType($path) { + return $this->basicOperation('getMimeType', $path); + } + + public function hash($type, $path, $raw = false) { + $postFix = (substr($path, -1, 1) === '/') ? '/' : ''; + $absolutePath = Filesystem::normalizePath($this->getAbsolutePath($path)); + if (\OC_FileProxy::runPreProxies('hash', $absolutePath) && Filesystem::isValidPath($path)) { + $path = $this->getRelativePath($absolutePath); + if ($path == null) { + return false; + } + if (Filesystem::$loaded && $this->fakeRoot == Filesystem::getRoot()) { + \OC_Hook::emit( + Filesystem::CLASSNAME, + Filesystem::signal_read, + array(Filesystem::signal_param_path => $path) + ); + } + list($storage, $internalPath) = Filesystem::resolvePath($absolutePath . $postFix); + if ($storage) { + $result = $storage->hash($type, $internalPath, $raw); + $result = \OC_FileProxy::runPostProxies('hash', $absolutePath, $result); + return $result; + } + } + return null; + } + + public function free_space($path = '/') { + return $this->basicOperation('free_space', $path); + } + + /** + * @brief abstraction layer for basic filesystem functions: wrapper for \OC\Files\Storage\Storage + * @param string $operation + * @param string $path + * @param array $hooks (optional) + * @param mixed $extraParam (optional) + * @return mixed + * + * This method takes requests for basic filesystem functions (e.g. reading & writing + * files), processes hooks and proxies, sanitises paths, and finally passes them on to + * \OC\Files\Storage\Storage for delegation to a storage backend for execution + */ + private function basicOperation($operation, $path, $hooks = array(), $extraParam = null) { + $postFix = (substr($path, -1, 1) === '/') ? '/' : ''; + $absolutePath = Filesystem::normalizePath($this->getAbsolutePath($path)); + if (\OC_FileProxy::runPreProxies($operation, $absolutePath, $extraParam) and Filesystem::isValidPath($path)) { + $path = $this->getRelativePath($absolutePath); + if ($path == null) { + return false; + } + $run = $this->runHooks($hooks, $path); + list($storage, $internalPath) = Filesystem::resolvePath($absolutePath . $postFix); + if ($run and $storage) { + if (!is_null($extraParam)) { + $result = $storage->$operation($internalPath, $extraParam); + } else { + $result = $storage->$operation($internalPath); + } + $result = \OC_FileProxy::runPostProxies($operation, $this->getAbsolutePath($path), $result); + if (Filesystem::$loaded and $this->fakeRoot == Filesystem::getRoot()) { + if ($operation != 'fopen') { //no post hooks for fopen, the file stream is still open + $this->runHooks($hooks, $path, true); + } + } + return $result; + } + } + return null; + } + + private function runHooks($hooks, $path, $post = false) { + $prefix = ($post) ? 'post_' : ''; + $run = true; + if (Filesystem::$loaded and $this->fakeRoot == Filesystem::getRoot()) { + foreach ($hooks as $hook) { + if ($hook != 'read') { + \OC_Hook::emit( + Filesystem::CLASSNAME, + $prefix . $hook, + array( + Filesystem::signal_param_run => &$run, + Filesystem::signal_param_path => $path + ) + ); + } elseif (!$post) { + \OC_Hook::emit( + Filesystem::CLASSNAME, + $prefix . $hook, + array( + Filesystem::signal_param_path => $path + ) + ); + } + } + } + return $run; + } + + /** + * check if a file or folder has been updated since $time + * + * @param string $path + * @param int $time + * @return bool + */ + public function hasUpdated($path, $time) { + return $this->basicOperation('hasUpdated', $path, array(), $time); + } + + /** + * get the filesystem info + * + * @param string $path + * @return array + * + * returns an associative array with the following keys: + * - size + * - mtime + * - mimetype + * - encrypted + * - versioned + */ + public function getFileInfo($path) { + $data = array(); + if (!Filesystem::isValidPath($path)) { + return $data; + } + $path = Filesystem::normalizePath($this->fakeRoot . '/' . $path); + /** + * @var \OC\Files\Storage\Storage $storage + * @var string $internalPath + */ + list($storage, $internalPath) = Filesystem::resolvePath($path); + if ($storage) { + $cache = $storage->getCache($internalPath); + $permissionsCache = $storage->getPermissionsCache($internalPath); + $user = \OC_User::getUser(); + + if (!$cache->inCache($internalPath)) { + $scanner = $storage->getScanner($internalPath); + $scanner->scan($internalPath, Cache\Scanner::SCAN_SHALLOW); + } else { + $watcher = $storage->getWatcher($internalPath); + $watcher->checkUpdate($internalPath); + } + + $data = $cache->get($internalPath); + + if ($data and $data['fileid']) { + if ($data['mimetype'] === 'httpd/unix-directory') { + //add the sizes of other mountpoints to the folder + $mountPoints = Filesystem::getMountPoints($path); + foreach ($mountPoints as $mountPoint) { + $subStorage = Filesystem::getStorage($mountPoint); + if ($subStorage) { + $subCache = $subStorage->getCache(''); + $rootEntry = $subCache->get(''); + $data['size'] += $rootEntry['size']; + } + } + } + + $permissions = $permissionsCache->get($data['fileid'], $user); + if ($permissions === -1) { + $permissions = $storage->getPermissions($internalPath); + $permissionsCache->set($data['fileid'], $user, $permissions); + } + $data['permissions'] = $permissions; + } + } + return $data; + } + + /** + * get the content of a directory + * + * @param string $directory path under datadirectory + * @return array + */ + public function getDirectoryContent($directory, $mimetype_filter = '') { + $result = array(); + if (!Filesystem::isValidPath($directory)) { + return $result; + } + $path = Filesystem::normalizePath($this->fakeRoot . '/' . $directory); + /** + * @var \OC\Files\Storage\Storage $storage + * @var string $internalPath + */ + list($storage, $internalPath) = Filesystem::resolvePath($path); + if ($storage) { + $cache = $storage->getCache($internalPath); + $permissionsCache = $storage->getPermissionsCache($internalPath); + $user = \OC_User::getUser(); + + if ($cache->getStatus($internalPath) < Cache\Cache::COMPLETE) { + $scanner = $storage->getScanner($internalPath); + $scanner->scan($internalPath, Cache\Scanner::SCAN_SHALLOW); + } else { + $watcher = $storage->getWatcher($internalPath); + $watcher->checkUpdate($internalPath); + } + + $files = $cache->getFolderContents($internalPath); //TODO: mimetype_filter + + $ids = array(); + foreach ($files as $i => $file) { + $files[$i]['type'] = $file['mimetype'] === 'httpd/unix-directory' ? 'dir' : 'file'; + $ids[] = $file['fileid']; + + $permissions = $permissionsCache->get($file['fileid'], $user); + if ($permissions === -1) { + $permissions = $storage->getPermissions($file['path']); + $permissionsCache->set($file['fileid'], $user, $permissions); + } + $files[$i]['permissions'] = $permissions; + } + + //add a folder for any mountpoint in this directory and add the sizes of other mountpoints to the folders + $mountPoints = Filesystem::getMountPoints($path); + $dirLength = strlen($path); + foreach ($mountPoints as $mountPoint) { + $subStorage = Filesystem::getStorage($mountPoint); + if ($subStorage) { + $subCache = $subStorage->getCache(''); + + if ($subCache->getStatus('') === Cache\Cache::NOT_FOUND) { + $subScanner = $subStorage->getScanner(''); + $subScanner->scanFile(''); + } + + $rootEntry = $subCache->get(''); + if ($rootEntry) { + $relativePath = trim(substr($mountPoint, $dirLength), '/'); + if ($pos = strpos($relativePath, '/')) { //mountpoint inside subfolder add size to the correct folder + $entryName = substr($relativePath, 0, $pos); + foreach ($files as &$entry) { + if ($entry['name'] === $entryName) { + $entry['size'] += $rootEntry['size']; + } + } + } else { //mountpoint in this folder, add an entry for it + $rootEntry['name'] = $relativePath; + $rootEntry['type'] = $rootEntry['mimetype'] === 'httpd/unix-directory' ? 'dir' : 'file'; + $subPermissionsCache = $subStorage->getPermissionsCache(''); + $permissions = $subPermissionsCache->get($rootEntry['fileid'], $user); + if ($permissions === -1) { + $permissions = $subStorage->getPermissions($rootEntry['path']); + $subPermissionsCache->set($rootEntry['fileid'], $user, $permissions); + } + $rootEntry['permissions'] = $permissions; + + //remove any existing entry with the same name + foreach ($files as $i => $file) { + if ($file['name'] === $rootEntry['name']) { + unset($files[$i]); + break; + } + } + $files[] = $rootEntry; + } + } + } + } + + if ($mimetype_filter) { + foreach ($files as $file) { + if (strpos($mimetype_filter, '/')) { + if ($file['mimetype'] === $mimetype_filter) { + $result[] = $file; + } + } else { + if ($file['mimepart'] === $mimetype_filter) { + $result[] = $file; + } + } + } + } else { + $result = $files; + } + } + return $result; + } + + /** + * change file metadata + * + * @param string $path + * @param array $data + * @return int + * + * returns the fileid of the updated file + */ + public function putFileInfo($path, $data) { + $path = Filesystem::normalizePath($this->fakeRoot . '/' . $path); + /** + * @var \OC\Files\Storage\Storage $storage + * @var string $internalPath + */ + list($storage, $internalPath) = Filesystem::resolvePath($path); + if ($storage) { + $cache = $storage->getCache($path); + + if (!$cache->inCache($internalPath)) { + $scanner = $storage->getScanner($internalPath); + $scanner->scan($internalPath, Cache\Scanner::SCAN_SHALLOW); + } + + return $cache->put($internalPath, $data); + } else { + return -1; + } + } + + /** + * search for files with the name matching $query + * + * @param string $query + * @return array + */ + public function search($query) { + return $this->searchCommon('%' . $query . '%', 'search'); + } + + /** + * search for files by mimetype + * + * @param string $query + * @return array + */ + public function searchByMime($mimetype) { + return $this->searchCommon($mimetype, 'searchByMime'); + } + + /** + * @param string $query + * @param string $method + * @return array + */ + private function searchCommon($query, $method) { + $files = array(); + $rootLength = strlen($this->fakeRoot); + + $mountPoint = Filesystem::getMountPoint($this->fakeRoot); + $storage = Filesystem::getStorage($mountPoint); + if ($storage) { + $cache = $storage->getCache(''); + + $results = $cache->$method($query); + foreach ($results as $result) { + if (substr($mountPoint . $result['path'], 0, $rootLength) === $this->fakeRoot) { + $result['path'] = substr($mountPoint . $result['path'], $rootLength); + $files[] = $result; + } + } + + $mountPoints = Filesystem::getMountPoints($this->fakeRoot); + foreach ($mountPoints as $mountPoint) { + $storage = Filesystem::getStorage($mountPoint); + if ($storage) { + $cache = $storage->getCache(''); + + $relativeMountPoint = substr($mountPoint, $rootLength); + $results = $cache->$method($query); + foreach ($results as $result) { + $result['path'] = $relativeMountPoint . $result['path']; + $files[] = $result; + } + } + } + } + return $files; + } + + /** + * Get the owner for a file or folder + * + * @param string $path + * @return string + */ + public function getOwner($path) { + return $this->basicOperation('getOwner', $path); + } + + /** + * get the ETag for a file or folder + * + * @param string $path + * @return string + */ + public function getETag($path) { + /** + * @var Storage\Storage $storage + * @var string $internalPath + */ + list($storage, $internalPath) = $this->resolvePath($path); + if ($storage) { + return $storage->getETag($internalPath); + } else { + return null; + } + } + + /** + * Get the path of a file by id, relative to the view + * + * Note that the resulting path is not guarantied to be unique for the id, multiple paths can point to the same file + * + * @param int $id + * @return string + */ + public function getPath($id) { + list($storage, $internalPath) = Cache\Cache::getById($id); + $mounts = Mount::findById($storage); + foreach ($mounts as $mount) { + /** + * @var \OC\Files\Mount $mount + */ + $fullPath = $mount->getMountPoint() . $internalPath; + if (!is_null($path = $this->getRelativePath($fullPath))) { + return $path; + } + } + return null; + } +} diff --git a/lib/filestorage.php b/lib/filestorage.php deleted file mode 100644 index 2e03c4cb6da..00000000000 --- a/lib/filestorage.php +++ /dev/null @@ -1,67 +0,0 @@ -<?php - -/** -* ownCloud -* -* @author Frank Karlitschek -* @copyright 2012 Frank Karlitschek frank@owncloud.org -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE -* License as published by the Free Software Foundation; either -* version 3 of the License, or any later version. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU AFFERO GENERAL PUBLIC LICENSE for more details. -* -* You should have received a copy of the GNU Affero General Public -* License along with this library. If not, see <http://www.gnu.org/licenses/>. -*/ - -/** - * Provide a common interface to all different storage options - */ -abstract class OC_Filestorage{ - abstract public function __construct($parameters); - abstract public function mkdir($path); - abstract public function rmdir($path); - abstract public function opendir($path); - abstract public function is_dir($path); - abstract public function is_file($path); - abstract public function stat($path); - abstract public function filetype($path); - abstract public function filesize($path); - abstract public function isCreatable($path); - abstract public function isReadable($path); - abstract public function isUpdatable($path); - abstract public function isDeletable($path); - abstract public function isSharable($path); - abstract public function file_exists($path); - abstract public function filectime($path); - abstract public function filemtime($path); - abstract public function file_get_contents($path); - abstract public function file_put_contents($path, $data); - abstract public function unlink($path); - abstract public function rename($path1, $path2); - abstract public function copy($path1, $path2); - abstract public function fopen($path, $mode); - abstract public function getMimeType($path); - abstract public function hash($type, $path, $raw = false); - abstract public function free_space($path); - abstract public function search($query); - abstract public function touch($path, $mtime=null); - abstract public function getLocalFile($path);// get a path to a local version of the file, whether the original file is local or remote - abstract public function getLocalFolder($path);// get a path to a local version of the folder, whether the original file is local or remote - /** - * check if a file or folder has been updated since $time - * @param int $time - * @return bool - * - * hasUpdated for folders should return at least true if a file inside the folder is add, removed or renamed. - * returning true for other changes in the folder is optional - */ - abstract public function hasUpdated($path, $time); - abstract public function getOwner($path); -} diff --git a/lib/filestorage/temporary.php b/lib/filestorage/temporary.php deleted file mode 100644 index 876ba045a63..00000000000 --- a/lib/filestorage/temporary.php +++ /dev/null @@ -1,17 +0,0 @@ -<?php -/** - * local storage backnd in temporary folder for testing purpores - */ -class OC_Filestorage_Temporary extends OC_Filestorage_Local{ - public function __construct($arguments) { - $this->datadir=OC_Helper::tmpFolder(); - } - - public function cleanUp() { - OC_Helper::rmdirr($this->datadir); - } - - public function __destruct() { - $this->cleanUp(); - } -} diff --git a/lib/filesystem.php b/lib/filesystem.php index f185d777def..57cca902303 100644 --- a/lib/filesystem.php +++ b/lib/filesystem.php @@ -1,26 +1,11 @@ <?php /** -* ownCloud -* -* @author Frank Karlitschek -* @copyright 2012 Frank Karlitschek frank@owncloud.org -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE -* License as published by the Free Software Foundation; either -* version 3 of the License, or any later version. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU AFFERO GENERAL PUBLIC LICENSE for more details. -* -* You should have received a copy of the GNU Affero General Public -* License along with this library. If not, see <http://www.gnu.org/licenses/>. -* -*/ - + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ /** * Class for abstraction of filesystem functions @@ -31,578 +16,397 @@ * read(path) * write(path, &run) * post_write(path) - * create(path, &run) (when a file is created, both create and write will be emited in that order) + * create(path, &run) (when a file is created, both create and write will be emitted in that order) * post_create(path) * delete(path, &run) * post_delete(path) - * rename(oldpath, newpath, &run) - * post_rename(oldpath, newpath) - * copy(oldpath, newpath, &run) (if the newpath doesn't exists yes, copy, create and write will be emited in that order) - * post_rename(oldpath, newpath) + * rename(oldpath,newpath, &run) + * post_rename(oldpath,newpath) + * copy(oldpath,newpath, &run) (if the newpath doesn't exists yes, copy, create and write will be emitted in that order) + * post_rename(oldpath,newpath) * - * the &run parameter can be set to false to prevent the operation from occuring + * the &run parameter can be set to false to prevent the operation from occurring */ -class OC_Filesystem{ - static private $storages=array(); - static private $mounts=array(); - static private $loadedUsers=array(); - public static $loaded=false; - /** - * @var OC_Filestorage $defaultInstance - */ - static private $defaultInstance; - - - /** - * classname which used for hooks handling - * used as signalclass in OC_Hooks::emit() - */ - const CLASSNAME = 'OC_Filesystem'; - - /** - * signalname emited before file renaming - * @param oldpath - * @param newpath - */ - const signal_rename = 'rename'; - - /** - * signal emited after file renaming - * @param oldpath - * @param newpath - */ - const signal_post_rename = 'post_rename'; - - /** - * signal emited before file/dir creation - * @param path - * @param run changing this flag to false in hook handler will cancel event - */ - const signal_create = 'create'; - - /** - * signal emited after file/dir creation - * @param path - * @param run changing this flag to false in hook handler will cancel event - */ - const signal_post_create = 'post_create'; - - /** - * signal emits before file/dir copy - * @param oldpath - * @param newpath - * @param run changing this flag to false in hook handler will cancel event - */ - const signal_copy = 'copy'; - - /** - * signal emits after file/dir copy - * @param oldpath - * @param newpath - */ - const signal_post_copy = 'post_copy'; - - /** - * signal emits before file/dir save - * @param path - * @param run changing this flag to false in hook handler will cancel event - */ - const signal_write = 'write'; - - /** - * signal emits after file/dir save - * @param path - */ - const signal_post_write = 'post_write'; - - /** - * signal emits when reading file/dir - * @param path - */ - const signal_read = 'read'; - - /** - * signal emits when removing file/dir - * @param path - */ - const signal_delete = 'delete'; - +/** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ +class OC_Filesystem { /** - * parameters definitions for signals + * get the mountpoint of the storage object for a path + ( note: because a storage is not always mounted inside the fakeroot, the returned mountpoint is relative to the absolute root of the filesystem and doesn't take the chroot into account + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + * @param string $path + * @return string */ - const signal_param_path = 'path'; - const signal_param_oldpath = 'oldpath'; - const signal_param_newpath = 'newpath'; + static public function getMountPoint($path) { + return \OC\Files\Filesystem::getMountPoint($path); + } /** - * run - changing this flag to false in hook handler will cancel event + * resolve a path to a storage and internal path + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + * @param string $path + * @return array consisting of the storage and the internal path */ - const signal_param_run = 'run'; + static public function resolvePath($path) { + return \OC\Files\Filesystem::resolvePath($path); + } /** - * get the mountpoint of the storage object for a path - ( note: because a storage is not always mounted inside the fakeroot, the returned mountpoint is relative to the absolute root of the filesystem and doesn't take the chroot into account - * - * @param string path - * @return string + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem */ - static public function getMountPoint($path) { - OC_Hook::emit(self::CLASSNAME, 'get_mountpoint', array('path'=>$path)); - if(!$path) { - $path='/'; - } - if($path[0]!=='/') { - $path='/'.$path; - } - $path=str_replace('//', '/', $path); - $foundMountPoint=''; - $mountPoints=array_keys(OC_Filesystem::$mounts); - foreach($mountPoints as $mountpoint) { - if($mountpoint==$path) { - return $mountpoint; - } - if(strpos($path, $mountpoint)===0 and strlen($mountpoint)>strlen($foundMountPoint)) { - $foundMountPoint=$mountpoint; - } - } - return $foundMountPoint; - } - - /** - * get the part of the path relative to the mountpoint of the storage it's stored in - * @param string path - * @return bool - */ - static public function getInternalPath($path) { - $mountPoint=self::getMountPoint($path); - $internalPath=substr($path, strlen($mountPoint)); - return $internalPath; - } - - static private function mountPointsLoaded($user) { - return in_array($user, self::$loadedUsers); - } - - /** - * get the storage object for a path - * @param string path - * @return OC_Filestorage - */ - static public function getStorage($path) { - $user = ltrim(substr($path, 0, strpos($path, '/', 1)), '/'); - // check mount points if file was shared from a different user - if ($user != OC_User::getUser() && !self::mountPointsLoaded($user)) { - OC_Util::loadUserMountPoints($user); - self::loadSystemMountPoints($user); - self::$loadedUsers[] = $user; - } - - $mountpoint=self::getMountPoint($path); - if($mountpoint) { - if(!isset(OC_Filesystem::$storages[$mountpoint])) { - $mount=OC_Filesystem::$mounts[$mountpoint]; - OC_Filesystem::$storages[$mountpoint]=OC_Filesystem::createStorage($mount['class'], $mount['arguments']); - } - return OC_Filesystem::$storages[$mountpoint]; - } - } - - static private function loadSystemMountPoints($user) { - if(is_file(OC::$SERVERROOT.'/config/mount.php')) { - $mountConfig=include OC::$SERVERROOT.'/config/mount.php'; - if(isset($mountConfig['global'])) { - foreach($mountConfig['global'] as $mountPoint=>$options) { - self::mount($options['class'], $options['options'], $mountPoint); - } - } - - if(isset($mountConfig['group'])) { - foreach($mountConfig['group'] as $group=>$mounts) { - if(OC_Group::inGroup($user, $group)) { - foreach($mounts as $mountPoint=>$options) { - $mountPoint=self::setUserVars($mountPoint, $user); - foreach($options as &$option) { - $option=self::setUserVars($option, $user); - } - self::mount($options['class'], $options['options'], $mountPoint); - } - } - } - } - - if(isset($mountConfig['user'])) { - foreach($mountConfig['user'] as $mountUser=>$mounts) { - if($user==='all' or strtolower($mountUser)===strtolower($user)) { - foreach($mounts as $mountPoint=>$options) { - $mountPoint=self::setUserVars($mountPoint, $user); - foreach($options as &$option) { - $option=self::setUserVars($option, $user); - } - self::mount($options['class'], $options['options'], $mountPoint); - } - } - } - } - - $mtime=filemtime(OC::$SERVERROOT.'/config/mount.php'); - $previousMTime=OC_Appconfig::getValue('files', 'mountconfigmtime', 0); - if($mtime>$previousMTime) {//mount config has changed, filecache needs to be updated - OC_FileCache::triggerUpdate(); - OC_Appconfig::setValue('files', 'mountconfigmtime', $mtime); - } - } - } - - static public function init($root, $user = '') { - if(self::$defaultInstance) { - return false; - } - self::$defaultInstance=new OC_FilesystemView($root); - - //load custom mount config - if (!isset($user)) { - $user = OC_User::getUser(); - } - self::loadSystemMountPoints($user); - - self::$loaded=true; - } - - /** - * fill in the correct values for $user, and $password placeholders - * @param string intput - * @return string - */ - private static function setUserVars($input, $user) { - if (isset($user)) { - return str_replace('$user', $user, $input); - } else { - return str_replace('$user', OC_User::getUser(), $input); - } + static public function init($root) { + return \OC\Files\Filesystem::init($root); } /** * get the default filesystem view - * @return OC_FilesystemView + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + * @return \OC\Files\View */ static public function getView() { - return self::$defaultInstance; + return \OC\Files\Filesystem::getView(); } /** * tear down the filesystem, removing all storage providers + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem */ static public function tearDown() { - self::$storages=array(); - } - - /** - * create a new storage of a specific type - * @param string type - * @param array arguments - * @return OC_Filestorage - */ - static private function createStorage($class, $arguments) { - if(class_exists($class)) { - try { - return new $class($arguments); - } catch (Exception $exception) { - OC_Log::write('core', $exception->getMessage(), OC_Log::ERROR); - return false; - } - }else{ - OC_Log::write('core', 'storage backend '.$class.' not found', OC_Log::ERROR); - return false; - } - } - - /** - * change the root to a fake root - * @param string fakeRoot - * @return bool - */ - static public function chroot($fakeRoot) { - return self::$defaultInstance->chroot($fakeRoot); + \OC\Files\Filesystem::tearDown(); } /** * @brief get the relative path of the root data directory for the current user * @return string * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem * Returns path like /admin/files */ static public function getRoot() { - return self::$defaultInstance->getRoot(); + return \OC\Files\Filesystem::getRoot(); } /** * clear all mounts and storage backends + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem */ public static function clearMounts() { - self::$mounts=array(); - self::$storages=array(); + \OC\Files\Filesystem::clearMounts(); } /** - * mount an OC_Filestorage in our virtual filesystem - * @param OC_Filestorage storage - * @param string mountpoint - */ + * mount an \OC\Files\Storage\Storage in our virtual filesystem + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + * @param \OC\Files\Storage\Storage $class + * @param array $arguments + * @param string $mountpoint + */ static public function mount($class, $arguments, $mountpoint) { - if($mountpoint[0]!='/') { - $mountpoint='/'.$mountpoint; - } - if(substr($mountpoint, -1)!=='/') { - $mountpoint=$mountpoint.'/'; - } - self::$mounts[$mountpoint]=array('class'=>$class, 'arguments'=>$arguments); + \OC\Files\Filesystem::mount($class, $arguments, $mountpoint); } /** - * return the path to a local version of the file - * we need this because we can't know if a file is stored local or not from outside the filestorage and for some purposes a local file is needed - * @param string path - * @return string - */ + * return the path to a local version of the file + * we need this because we can't know if a file is stored local or not from outside the filestorage and for some purposes a local file is needed + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + * @param string $path + * @return string + */ static public function getLocalFile($path) { - return self::$defaultInstance->getLocalFile($path); + return \OC\Files\Filesystem::getLocalFile($path); } + /** - * @param string path + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + * @param string $path * @return string */ static public function getLocalFolder($path) { - return self::$defaultInstance->getLocalFolder($path); + return \OC\Files\Filesystem::getLocalFolder($path); } /** - * return path to file which reflects one visible in browser - * @param string path - * @return string - */ + * return path to file which reflects one visible in browser + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + * @param string $path + * @return string + */ static public function getLocalPath($path) { - $datadir = OC_User::getHome(OC_User::getUser()).'/files'; - $newpath = $path; - if (strncmp($newpath, $datadir, strlen($datadir)) == 0) { - $newpath = substr($path, strlen($datadir)); - } - return $newpath; + return \OC\Files\Filesystem::getLocalPath($path); } /** * check if the requested path is valid - * @param string path + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + * @param string $path * @return bool */ static public function isValidPath($path) { - $path = self::normalizePath($path); - if(!$path || $path[0]!=='/') { - $path='/'.$path; - } - if(strstr($path, '/../') || strrchr($path, '/') === '/..' ) { - return false; - } - if(self::isFileBlacklisted($path)) { - return false; - } - return true; + return \OC\Files\Filesystem::isValidPath($path); } /** - * checks if a file is blacklsited for storage in the filesystem + * checks if a file is blacklisted for storage in the filesystem * Listens to write and rename hooks + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem * @param array $data from hook */ static public function isBlacklisted($data) { - if (isset($data['path'])) { - $path = $data['path']; - } else if (isset($data['newpath'])) { - $path = $data['newpath']; - } - if (isset($path)) { - $data['run'] = !self::isFileBlacklisted($path); - } - } - - static public function isFileBlacklisted($path) { - $blacklist = array('.htaccess'); - $filename = strtolower(basename($path)); - return in_array($filename, $blacklist); + \OC\Files\Filesystem::isBlacklisted($data); } /** - * following functions are equivilent to their php buildin equivilents for arguments/return values. + * following functions are equivalent to their php builtin equivalents for arguments/return values. + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem */ static public function mkdir($path) { - return self::$defaultInstance->mkdir($path); + return \OC\Files\Filesystem::mkdir($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function rmdir($path) { - return self::$defaultInstance->rmdir($path); + return \OC\Files\Filesystem::rmdir($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function opendir($path) { - return self::$defaultInstance->opendir($path); + return \OC\Files\Filesystem::opendir($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function readdir($path) { - return self::$defaultInstance->readdir($path); + return \OC\Files\Filesystem::readdir($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function is_dir($path) { - return self::$defaultInstance->is_dir($path); + return \OC\Files\Filesystem::is_dir($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function is_file($path) { - return self::$defaultInstance->is_file($path); + return \OC\Files\Filesystem::is_file($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function stat($path) { - return self::$defaultInstance->stat($path); + return \OC\Files\Filesystem::stat($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function filetype($path) { - return self::$defaultInstance->filetype($path); + return \OC\Files\Filesystem::filetype($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function filesize($path) { - return self::$defaultInstance->filesize($path); + return \OC\Files\Filesystem::filesize($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function readfile($path) { - return self::$defaultInstance->readfile($path); + return \OC\Files\Filesystem::readfile($path); } + /** - * @deprecated Replaced by isReadable() as part of CRUDS - */ + * @deprecated Replaced by isReadable() as part of CRUDS + */ static public function is_readable($path) { - return self::$defaultInstance->is_readable($path); + return \OC\Files\Filesystem::isReadable($path); } + /** - * @deprecated Replaced by isCreatable(), isUpdatable(), isDeletable() as part of CRUDS - */ - static public function is_writable($path) { - return self::$defaultInstance->is_writable($path); - } + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function isCreatable($path) { - return self::$defaultInstance->isCreatable($path); + return \OC\Files\Filesystem::isCreatable($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function isReadable($path) { - return self::$defaultInstance->isReadable($path); + return \OC\Files\Filesystem::isReadable($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function isUpdatable($path) { - return self::$defaultInstance->isUpdatable($path); + return \OC\Files\Filesystem::isUpdatable($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function isDeletable($path) { - return self::$defaultInstance->isDeletable($path); + return \OC\Files\Filesystem::isDeletable($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function isSharable($path) { - return self::$defaultInstance->isSharable($path); + return \OC\Files\Filesystem::isSharable($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function file_exists($path) { - return self::$defaultInstance->file_exists($path); - } - static public function filectime($path) { - return self::$defaultInstance->filectime($path); + return \OC\Files\Filesystem::file_exists($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function filemtime($path) { - return self::$defaultInstance->filemtime($path); + return \OC\Files\Filesystem::filemtime($path); } - static public function touch($path, $mtime=null) { - return self::$defaultInstance->touch($path, $mtime); + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ + static public function touch($path, $mtime = null) { + return \OC\Files\Filesystem::touch($path, $mtime); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function file_get_contents($path) { - return self::$defaultInstance->file_get_contents($path); + return \OC\Files\Filesystem::file_get_contents($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function file_put_contents($path, $data) { - return self::$defaultInstance->file_put_contents($path, $data); + return \OC\Files\Filesystem::file_put_contents($path, $data); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function unlink($path) { - return self::$defaultInstance->unlink($path); + return \OC\Files\Filesystem::unlink($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function rename($path1, $path2) { - return self::$defaultInstance->rename($path1, $path2); + return \OC\Files\Filesystem::rename($path1, $path2); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function copy($path1, $path2) { - return self::$defaultInstance->copy($path1, $path2); + return \OC\Files\Filesystem::copy($path1, $path2); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function fopen($path, $mode) { - return self::$defaultInstance->fopen($path, $mode); + return \OC\Files\Filesystem::fopen($path, $mode); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function toTmpFile($path) { - return self::$defaultInstance->toTmpFile($path); + return \OC\Files\Filesystem::toTmpFile($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function fromTmpFile($tmpFile, $path) { - return self::$defaultInstance->fromTmpFile($tmpFile, $path); + return \OC\Files\Filesystem::fromTmpFile($tmpFile, $path); } + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function getMimeType($path) { - return self::$defaultInstance->getMimeType($path); + return \OC\Files\Filesystem::getMimeType($path); } + + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function hash($type, $path, $raw = false) { - return self::$defaultInstance->hash($type, $path, $raw); + return \OC\Files\Filesystem::hash($type, $path, $raw); } - static public function free_space($path='/') { - return self::$defaultInstance->free_space($path); + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ + static public function free_space($path = '/') { + return \OC\Files\Filesystem::free_space($path); } + /** + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + */ static public function search($query) { - return OC_FileCache::search($query); + return \OC\Files\Filesystem::search($query); } /** * check if a file or folder has been updated since $time + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + * @param string $path * @param int $time * @return bool */ static public function hasUpdated($path, $time) { - return self::$defaultInstance->hasUpdated($path, $time); - } - - static public function removeETagHook($params, $root = false) { - if (isset($params['path'])) { - $path=$params['path']; - } else { - $path=$params['oldpath']; - } - - if ($root) { // reduce path to the required part of it (no 'username/files') - $fakeRootView = new OC_FilesystemView($root); - $count = 1; - $path=str_replace(OC_App::getStorage("files")->getAbsolutePath(), "", $fakeRootView->getAbsolutePath($path), $count); - } - - $path = self::normalizePath($path); - OC_Connector_Sabre_Node::removeETagPropertyForPath($path); + return \OC\Files\Filesystem::hasUpdated($path, $time); } /** * normalize a path - * @param string path + * + * @deprecated OC_Filesystem is replaced by \OC\Files\Filesystem + * @param string $path * @param bool $stripTrailingSlash * @return string */ - public static function normalizePath($path, $stripTrailingSlash=true) { - if($path=='') { - return '/'; - } - //no windows style slashes - $path=str_replace('\\', '/', $path); - //add leading slash - if($path[0]!=='/') { - $path='/'.$path; - } - //remove trainling slash - if($stripTrailingSlash and strlen($path)>1 and substr($path, -1, 1)==='/') { - $path=substr($path, 0, -1); - } - //remove duplicate slashes - while(strpos($path, '//')!==false) { - $path=str_replace('//', '/', $path); - } - //normalize unicode if possible - if(class_exists('Normalizer')) { - $path=Normalizer::normalize($path); - } - return $path; + public static function normalizePath($path, $stripTrailingSlash = true) { + return \OC\Files\Filesystem::normalizePath($path, $stripTrailingSlash); } } -OC_Hook::connect('OC_Filesystem', 'post_write', 'OC_Filesystem', 'removeETagHook'); -OC_Hook::connect('OC_Filesystem', 'post_delete', 'OC_Filesystem', 'removeETagHook'); -OC_Hook::connect('OC_Filesystem', 'post_rename', 'OC_Filesystem', 'removeETagHook'); - -OC_Util::setupFS(); -require_once 'filecache.php'; diff --git a/lib/filesystemview.php b/lib/filesystemview.php index 1fc8e83d68f..d6bca62e06a 100644 --- a/lib/filesystemview.php +++ b/lib/filesystemview.php @@ -1,662 +1,9 @@ <?php /** - * ownCloud - * - * @author Frank Karlitschek - * @copyright 2012 Frank Karlitschek frank@owncloud.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see <http://www.gnu.org/licenses/>. - */ + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. */ - -/** - * Class to provide access to ownCloud filesystem via a "view", and methods for - * working with files within that view (e.g. read, write, delete, etc.). Each - * view is restricted to a set of directories via a virtual root. The default view - * uses the currently logged in user's data directory as root (parts of - * OC_Filesystem are merely a wrapper for OC_FilesystemView). - * - * Apps that need to access files outside of the user data folders (to modify files - * belonging to a user other than the one currently logged in, for example) should - * use this class directly rather than using OC_Filesystem, or making use of PHP's - * built-in file manipulation functions. This will ensure all hooks and proxies - * are triggered correctly. - * - * Filesystem functions are not called directly; they are passed to the correct - * OC_Filestorage object - * - * @note default root (if $root is empty or '/') is /data/[user]/ - * @note If you don't include a leading slash, you may encounter problems. - * e.g. use $v = new \OC_FilesystemView( '/' . $params['uid'] ); not - * $v = new \OC_FilesystemView( $params['uid'] ); - */ -class OC_FilesystemView { - private $fakeRoot=''; - private $internal_path_cache=array(); - private $storage_cache=array(); - - public function __construct($root) { - $this->fakeRoot=$root; - } - - public function getAbsolutePath($path = '/') { - if(!$path || $path[0]!=='/') { - $path='/'.$path; - } - return $this->fakeRoot.$path; - } - - /** - * change the root to a fake toor - * @param string fakeRoot - * @return bool - */ - public function chroot($fakeRoot) { - if(!$fakeRoot=='') { - if($fakeRoot[0]!=='/') { - $fakeRoot='/'.$fakeRoot; - } - } - $this->fakeRoot=$fakeRoot; - } - - /** - * get the fake root - * @return string - */ - public function getRoot() { - return $this->fakeRoot; - } - - /** - * get the part of the path relative to the mountpoint of the storage it's stored in - * @param string path - * @return bool - */ - public function getInternalPath($path) { - if (!isset($this->internal_path_cache[$path])) { - $this->internal_path_cache[$path] = OC_Filesystem::getInternalPath($this->getAbsolutePath($path)); - } - return $this->internal_path_cache[$path]; - } - - /** - * get path relative to the root of the view - * @param string path - * @return string - */ - public function getRelativePath($path) { - if($this->fakeRoot=='') { - return $path; - } - if(strpos($path, $this->fakeRoot)!==0) { - return null; - }else{ - $path=substr($path, strlen($this->fakeRoot)); - if(strlen($path)===0) { - return '/'; - }else{ - return $path; - } - } - } - - /** - * get the storage object for a path - * @param string path - * @return OC_Filestorage - */ - public function getStorage($path) { - if (!isset($this->storage_cache[$path])) { - $this->storage_cache[$path] = OC_Filesystem::getStorage($this->getAbsolutePath($path)); - } - return $this->storage_cache[$path]; - } - - /** - * get the mountpoint of the storage object for a path - ( note: because a storage is not always mounted inside the fakeroot, the returned mountpoint is relative to the absolute root of the filesystem and doesn't take the chroot into account - * - * @param string path - * @return string - */ - public function getMountPoint($path) { - return OC_Filesystem::getMountPoint($this->getAbsolutePath($path)); - } - - /** - * return the path to a local version of the file - * we need this because we can't know if a file is stored local or not from outside the filestorage and for some purposes a local file is needed - * @param string path - * @return string - */ - public function getLocalFile($path) { - $parent=substr($path, 0, strrpos($path, '/')); - if(OC_Filesystem::isValidPath($parent) and $storage=$this->getStorage($path)) { - return $storage->getLocalFile($this->getInternalPath($path)); - } - } - /** - * @param string path - * @return string - */ - public function getLocalFolder($path) { - $parent=substr($path, 0, strrpos($path, '/')); - if(OC_Filesystem::isValidPath($parent) and $storage=$this->getStorage($path)) { - return $storage->getLocalFolder($this->getInternalPath($path)); - } - } - - /** - * the following functions operate with arguments and return values identical - * to those of their PHP built-in equivalents. Mostly they are merely wrappers - * for OC_Filestorage via basicOperation(). - */ - public function mkdir($path) { - return $this->basicOperation('mkdir', $path, array('create', 'write')); - } - public function rmdir($path) { - return $this->basicOperation('rmdir', $path, array('delete')); - } - public function opendir($path) { - return $this->basicOperation('opendir', $path, array('read')); - } - public function readdir($handle) { - $fsLocal= new OC_Filestorage_Local( array( 'datadir' => '/' ) ); - return $fsLocal->readdir( $handle ); - } - public function is_dir($path) { - if($path=='/') { - return true; - } - return $this->basicOperation('is_dir', $path); - } - public function is_file($path) { - if($path=='/') { - return false; - } - return $this->basicOperation('is_file', $path); - } - public function stat($path) { - return $this->basicOperation('stat', $path); - } - public function filetype($path) { - return $this->basicOperation('filetype', $path); - } - public function filesize($path) { - return $this->basicOperation('filesize', $path); - } - public function readfile($path) { - OC_Util::obEnd(); - $handle=$this->fopen($path, 'rb'); - if ($handle) { - $chunkSize = 8192;// 8 MB chunks - while (!feof($handle)) { - echo fread($handle, $chunkSize); - flush(); - } - $size=$this->filesize($path); - return $size; - } - return false; - } - /** - * @deprecated Replaced by isReadable() as part of CRUDS - */ - public function is_readable($path) { - return $this->basicOperation('isReadable', $path); - } - /** - * @deprecated Replaced by isCreatable(), isUpdatable(), isDeletable() as part of CRUDS - */ - public function is_writable($path) { - return $this->basicOperation('isUpdatable', $path); - } - public function isCreatable($path) { - return $this->basicOperation('isCreatable', $path); - } - public function isReadable($path) { - return $this->basicOperation('isReadable', $path); - } - public function isUpdatable($path) { - return $this->basicOperation('isUpdatable', $path); - } - public function isDeletable($path) { - return $this->basicOperation('isDeletable', $path); - } - public function isSharable($path) { - return $this->basicOperation('isSharable', $path); - } - public function file_exists($path) { - if($path=='/') { - return true; - } - return $this->basicOperation('file_exists', $path); - } - public function filectime($path) { - return $this->basicOperation('filectime', $path); - } - public function filemtime($path) { - return $this->basicOperation('filemtime', $path); - } - public function touch($path, $mtime=null) { - if(!is_null($mtime) and !is_numeric($mtime)) { - $mtime = strtotime($mtime); - } - return $this->basicOperation('touch', $path, array('write'), $mtime); - } - public function file_get_contents($path) { - return $this->basicOperation('file_get_contents', $path, array('read')); - } - public function file_put_contents($path, $data) { - if(is_resource($data)) {//not having to deal with streams in file_put_contents makes life easier - $absolutePath = OC_Filesystem::normalizePath($this->getAbsolutePath($path)); - if (OC_FileProxy::runPreProxies('file_put_contents', $absolutePath, $data) && OC_Filesystem::isValidPath($path)) { - $path = $this->getRelativePath($absolutePath); - $exists = $this->file_exists($path); - $run = true; - if( $this->fakeRoot==OC_Filesystem::getRoot() ) { - if(!$exists) { - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_create, - array( - OC_Filesystem::signal_param_path => $path, - OC_Filesystem::signal_param_run => &$run - ) - ); - } - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_write, - array( - OC_Filesystem::signal_param_path => $path, - OC_Filesystem::signal_param_run => &$run - ) - ); - } - if(!$run) { - return false; - } - $target=$this->fopen($path, 'w'); - if($target) { - $count=OC_Helper::streamCopy($data, $target); - fclose($target); - fclose($data); - if( $this->fakeRoot==OC_Filesystem::getRoot() ) { - if(!$exists) { - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_post_create, - array( OC_Filesystem::signal_param_path => $path) - ); - } - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_post_write, - array( OC_Filesystem::signal_param_path => $path) - ); - } - OC_FileProxy::runPostProxies('file_put_contents', $absolutePath, $count); - return $count > 0; - }else{ - return false; - } - } - }else{ - return $this->basicOperation('file_put_contents', $path, array('create', 'write'), $data); - } - } - public function unlink($path) { - return $this->basicOperation('unlink', $path, array('delete')); - } - public function deleteAll( $directory, $empty = false ) { - return $this->basicOperation( 'deleteAll', $directory, array('delete'), $empty ); - } - public function rename($path1, $path2) { - $postFix1=(substr($path1, -1, 1)==='/')?'/':''; - $postFix2=(substr($path2, -1, 1)==='/')?'/':''; - $absolutePath1 = OC_Filesystem::normalizePath($this->getAbsolutePath($path1)); - $absolutePath2 = OC_Filesystem::normalizePath($this->getAbsolutePath($path2)); - if(OC_FileProxy::runPreProxies('rename', $absolutePath1, $absolutePath2) and OC_Filesystem::isValidPath($path2)) { - $path1 = $this->getRelativePath($absolutePath1); - $path2 = $this->getRelativePath($absolutePath2); - - if($path1 == null or $path2 == null) { - return false; - } - $run=true; - if( $this->fakeRoot==OC_Filesystem::getRoot() ) { - OC_Hook::emit( - OC_Filesystem::CLASSNAME, OC_Filesystem::signal_rename, - array( - OC_Filesystem::signal_param_oldpath => $path1, - OC_Filesystem::signal_param_newpath => $path2, - OC_Filesystem::signal_param_run => &$run - ) - ); - } - if($run) { - $mp1 = $this->getMountPoint($path1.$postFix1); - $mp2 = $this->getMountPoint($path2.$postFix2); - if($mp1 == $mp2) { - if($storage = $this->getStorage($path1)) { - $result = $storage->rename($this->getInternalPath($path1.$postFix1), $this->getInternalPath($path2.$postFix2)); - } - } else { - $source = $this->fopen($path1.$postFix1, 'r'); - $target = $this->fopen($path2.$postFix2, 'w'); - $count = OC_Helper::streamCopy($source, $target); - $storage1 = $this->getStorage($path1); - $storage1->unlink($this->getInternalPath($path1.$postFix1)); - $result = $count>0; - } - if( $this->fakeRoot==OC_Filesystem::getRoot() ) { - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_post_rename, - array( - OC_Filesystem::signal_param_oldpath => $path1, - OC_Filesystem::signal_param_newpath => $path2 - ) - ); - } - return $result; - } - } - } - public function copy($path1, $path2) { - $postFix1=(substr($path1, -1, 1)==='/')?'/':''; - $postFix2=(substr($path2, -1, 1)==='/')?'/':''; - $absolutePath1 = OC_Filesystem::normalizePath($this->getAbsolutePath($path1)); - $absolutePath2 = OC_Filesystem::normalizePath($this->getAbsolutePath($path2)); - if(OC_FileProxy::runPreProxies('copy', $absolutePath1, $absolutePath2) and OC_Filesystem::isValidPath($path2)) { - $path1 = $this->getRelativePath($absolutePath1); - $path2 = $this->getRelativePath($absolutePath2); - - if($path1 == null or $path2 == null) { - return false; - } - $run=true; - if( $this->fakeRoot==OC_Filesystem::getRoot() ) { - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_copy, - array( - OC_Filesystem::signal_param_oldpath => $path1, - OC_Filesystem::signal_param_newpath=>$path2, - OC_Filesystem::signal_param_run => &$run - ) - ); - $exists=$this->file_exists($path2); - if($run and !$exists) { - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_create, - array( - OC_Filesystem::signal_param_path => $path2, - OC_Filesystem::signal_param_run => &$run - ) - ); - } - if($run) { - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_write, - array( - OC_Filesystem::signal_param_path => $path2, - OC_Filesystem::signal_param_run => &$run - ) - ); - } - } - if($run) { - $mp1=$this->getMountPoint($path1.$postFix1); - $mp2=$this->getMountPoint($path2.$postFix2); - if($mp1 == $mp2) { - if($storage = $this->getStorage($path1.$postFix1)) { - $result=$storage->copy($this->getInternalPath($path1.$postFix1), $this->getInternalPath($path2.$postFix2)); - } - } else { - $source = $this->fopen($path1.$postFix1, 'r'); - $target = $this->fopen($path2.$postFix2, 'w'); - $result = OC_Helper::streamCopy($source, $target); - } - if( $this->fakeRoot==OC_Filesystem::getRoot() ) { - // If the file to be copied originates within - // the user's data directory - - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_post_copy, - array( - OC_Filesystem::signal_param_oldpath => $path1, - OC_Filesystem::signal_param_newpath=>$path2 - ) - ); - if(!$exists) { - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_post_create, - array(OC_Filesystem::signal_param_path => $path2) - ); - } - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_post_write, - array( OC_Filesystem::signal_param_path => $path2) - ); - - } else { - // If this is not a normal file copy operation - // and the file originates somewhere else - // (e.g. a version rollback operation), do not - // perform all the other post_write actions - - // Update webdav properties - OC_Filesystem::removeETagHook(array("path" => $path2), $this->fakeRoot); - - $splitPath2 = explode( '/', $path2 ); - - // Only cache information about files - // that are being copied from within - // the user files directory. Caching - // other files, like VCS backup files, - // serves no purpose - if ( $splitPath2[1] == 'files' ) { - - OC_FileCache_Update::update($path2, $this->fakeRoot); - - } - - } - - return $result; - - } - } - } - public function fopen($path, $mode) { - $hooks=array(); - switch($mode) { - case 'r': - case 'rb': - $hooks[]='read'; - break; - case 'r+': - case 'rb+': - case 'w+': - case 'wb+': - case 'x+': - case 'xb+': - case 'a+': - case 'ab+': - $hooks[]='read'; - $hooks[]='write'; - break; - case 'w': - case 'wb': - case 'x': - case 'xb': - case 'a': - case 'ab': - $hooks[]='write'; - break; - default: - OC_Log::write('core', 'invalid mode ('.$mode.') for '.$path, OC_Log::ERROR); - } - - return $this->basicOperation('fopen', $path, $hooks, $mode); - } - public function toTmpFile($path) { - if(OC_Filesystem::isValidPath($path)) { - $source = $this->fopen($path, 'r'); - if($source) { - $extension=''; - $extOffset=strpos($path, '.'); - if($extOffset !== false) { - $extension=substr($path, strrpos($path, '.')); - } - $tmpFile = OC_Helper::tmpFile($extension); - file_put_contents($tmpFile, $source); - return $tmpFile; - } - } - } - public function fromTmpFile($tmpFile, $path) { - if(OC_Filesystem::isValidPath($path)) { - if(!$tmpFile) { - debug_print_backtrace(); - } - $source=fopen($tmpFile, 'r'); - if($source) { - $this->file_put_contents($path, $source); - unlink($tmpFile); - return true; - } else { - } - } else { - return false; - } - } - - public function getMimeType($path) { - return $this->basicOperation('getMimeType', $path); - } - public function hash($type, $path, $raw = false) { - $postFix=(substr($path, -1, 1)==='/')?'/':''; - $absolutePath = OC_Filesystem::normalizePath($this->getAbsolutePath($path)); - if (OC_FileProxy::runPreProxies('hash', $absolutePath) && OC_Filesystem::isValidPath($path)) { - $path = $this->getRelativePath($absolutePath); - if ($path == null) { - return false; - } - if (OC_Filesystem::$loaded && $this->fakeRoot == OC_Filesystem::getRoot()) { - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_read, - array( OC_Filesystem::signal_param_path => $path) - ); - } - if ($storage = $this->getStorage($path.$postFix)) { - $result = $storage->hash($type, $this->getInternalPath($path.$postFix), $raw); - $result = OC_FileProxy::runPostProxies('hash', $absolutePath, $result); - return $result; - } - } - return null; - } - - public function free_space($path='/') { - return $this->basicOperation('free_space', $path); - } - - /** - * @brief abstraction layer for basic filesystem functions: wrapper for OC_Filestorage - * @param string $operation - * @param string #path - * @param array (optional) hooks - * @param mixed (optional) $extraParam - * @return mixed - * - * This method takes requests for basic filesystem functions (e.g. reading & writing - * files), processes hooks and proxies, sanitises paths, and finally passes them on to - * OC_Filestorage for delegation to a storage backend for execution - */ - private function basicOperation($operation, $path, $hooks=array(), $extraParam=null) { - $postFix=(substr($path, -1, 1)==='/')?'/':''; - $absolutePath = OC_Filesystem::normalizePath($this->getAbsolutePath($path)); - if(OC_FileProxy::runPreProxies($operation, $absolutePath, $extraParam) and OC_Filesystem::isValidPath($path)) { - $path = $this->getRelativePath($absolutePath); - if($path == null) { - return false; - } - $internalPath = $this->getInternalPath($path.$postFix); - $run=$this->runHooks($hooks, $path); - if($run and $storage = $this->getStorage($path.$postFix)) { - if(!is_null($extraParam)) { - $result = $storage->$operation($internalPath, $extraParam); - } else { - $result = $storage->$operation($internalPath); - } - $result = OC_FileProxy::runPostProxies($operation, $this->getAbsolutePath($path), $result); - if(OC_Filesystem::$loaded and $this->fakeRoot==OC_Filesystem::getRoot()) { - if($operation!='fopen') {//no post hooks for fopen, the file stream is still open - $this->runHooks($hooks, $path, true); - } - } - return $result; - } - } - return null; - } - - private function runHooks($hooks, $path, $post=false) { - $prefix=($post)?'post_':''; - $run=true; - if(OC_Filesystem::$loaded and $this->fakeRoot==OC_Filesystem::getRoot()) { - foreach($hooks as $hook) { - if($hook!='read') { - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - $prefix.$hook, - array( - OC_Filesystem::signal_param_run => &$run, - OC_Filesystem::signal_param_path => $path - ) - ); - } elseif(!$post) { - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - $prefix.$hook, - array( - OC_Filesystem::signal_param_path => $path - ) - ); - } - } - } - return $run; - } - - /** - * check if a file or folder has been updated since $time - * @param int $time - * @return bool - */ - public function hasUpdated($path, $time) { - return $this->basicOperation('hasUpdated', $path, array(), $time); - } -} +class OC_FilesystemView extends \OC\Files\View {} diff --git a/lib/group/database.php b/lib/group/database.php index c5dd402b212..1e2328f4c08 100644 --- a/lib/group/database.php +++ b/lib/group/database.php @@ -219,21 +219,14 @@ class OC_Group_Database extends OC_Group_Backend { */
public function DisplayNamesInGroup($gid, $search = '', $limit = -1, $offset = 0) {
$displayNames = ''; - /* - - SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
- FROM Persons
- INNER JOIN Orders
- ON Persons.P_Id=Orders.P_Id
- ORDER BY Persons.LastName - */ + $stmt = OC_DB::prepare('SELECT `*PREFIX*users`.`uid`, `*PREFIX*users`.`displayname` FROM `*PREFIX*users` INNER JOIN `*PREFIX*group_user` ON `*PREFIX*group_user`.`uid` = `*PREFIX*users`.`uid` WHERE `gid` = ? AND `*PREFIX*group_user.uid` LIKE ?', $limit, $offset);
$result = $stmt->execute(array($gid, $search.'%'));
$users = array();
while ($row = $result->fetchRow()) { $displayName = trim($row['displayname'], ' ');
$displayNames[$row['uid']] = empty($displayName) ? $row['uid'] : $displayName;
- }
+ }
return $displayNames;
} } diff --git a/lib/helper.php b/lib/helper.php index 425dc138c5a..0e549d006a1 100644 --- a/lib/helper.php +++ b/lib/helper.php @@ -324,7 +324,7 @@ class OC_Helper { self::copyr("$src/$file", "$dest/$file"); } } - }elseif(file_exists($src) && !OC_Filesystem::isFileBlacklisted($src)) { + }elseif(file_exists($src) && !\OC\Files\Filesystem::isFileBlacklisted($src)) { copy($src, $dest); } } @@ -618,7 +618,7 @@ class OC_Helper { $newpath = $path . '/' . $filename; $counter = 2; - while (OC_Filesystem::file_exists($newpath)) { + while (\OC\Files\Filesystem::file_exists($newpath)) { $newname = $name . ' (' . $counter . ')' . $ext; $newpath = $path . '/' . $newname; $counter++; @@ -757,7 +757,7 @@ class OC_Helper { $post_max_size = OCP\Util::computerFileSize(ini_get('post_max_size')); $maxUploadFilesize = min($upload_max_filesize, $post_max_size); - $freeSpace = OC_Filesystem::free_space($dir); + $freeSpace = \OC\Files\Filesystem::free_space($dir); $freeSpace = max($freeSpace, 0); return min($maxUploadFilesize, $freeSpace); @@ -787,12 +787,12 @@ class OC_Helper { * Calculate the disc space */ public static function getStorageInfo() { - $rootInfo = OC_FileCache::get(''); + $rootInfo = \OC\Files\Filesystem::getFileInfo('/'); $used = $rootInfo['size']; if ($used < 0) { $used = 0; } - $free = OC_Filesystem::free_space(); + $free = \OC\Files\Filesystem::free_space(); $total = $free + $used; if ($total == 0) { $total = 1; // prevent division by zero diff --git a/lib/image.php b/lib/image.php index cfc6d477395..eaa35350bcb 100644 --- a/lib/image.php +++ b/lib/image.php @@ -455,7 +455,7 @@ class OC_Image { default: // this is mostly file created from encrypted file - $this->resource = imagecreatefromstring(\OC_Filesystem::file_get_contents(\OC_Filesystem::getLocalPath($imagepath))); + $this->resource = imagecreatefromstring(\OC\Files\Filesystem::file_get_contents(\OC\Files\Filesystem::getLocalPath($imagepath))); $itype = IMAGETYPE_PNG; OC_Log::write('core', 'OC_Image->loadFromFile, Default', OC_Log::DEBUG); break; diff --git a/lib/installer.php b/lib/installer.php index 7dc8b0cef8d..c86f801b5fc 100644 --- a/lib/installer.php +++ b/lib/installer.php @@ -141,13 +141,17 @@ class OC_Installer{ return false; } - //check if an app with the same id is already installed - if(self::isInstalled( $info['id'] )) { - OC_Log::write('core', 'App already installed', OC_Log::WARN); + // check if shipped tag is set which is only allowed for apps that are shipped with ownCloud + if(isset($info['shipped']) and ($info['shipped']=='true')) { + OC_Log::write('core', 'App can\'t be installed because it contains the <shipped>true</shippe> tag which is not allowed for non shipped apps', OC_Log::ERROR); + OC_Helper::rmdirr($extractDir); + return false; + } + + // check if the ocs version is the same as the version in info.xml/version + if(!isset($info['version']) or ($info['version']<>$data['appdata']['version'])) { + OC_Log::write('core', 'App can\'t be installed because the version in info.xml/version is not the same as the version reported from the app store', OC_Log::ERROR); OC_Helper::rmdirr($extractDir); - if($data['source']=='http') { - unlink($path); - } return false; } @@ -226,7 +230,6 @@ class OC_Installer{ /** * @brief Update an application * @param $data array with all information - * @returns integer * * This function installs an app. All information needed are passed in the * associative array $data. @@ -250,9 +253,55 @@ class OC_Installer{ * * upgrade.php can determine the current installed version of the app using "OC_Appconfig::getValue($appid, 'installed_version')" */ - public static function upgradeApp( $data = array()) { - // TODO: write function - return true; + public static function updateApp( $app ) { + $ocsid=OC_Appconfig::getValue( $app, 'ocsid'); + OC_App::disable($app); + OC_App::enable($ocsid); + return(true); + } + + /** + * @brief Check if an update for the app is available + * @param $name name of the application + * @returns empty string is no update available or the version number of the update + * + * The function will check if an update for a version is available + */ + public static function isUpdateAvailable( $app ) { + $ocsid=OC_Appconfig::getValue( $app, 'ocsid', ''); + + if($ocsid<>''){ + + $ocsdata=OC_OCSClient::getApplication($ocsid); + $ocsversion= (string) $ocsdata['version']; + $currentversion=OC_App::getAppVersion($app); + if($ocsversion<>$currentversion){ + return($ocsversion); + + }else{ + return(''); + } + + }else{ + return(''); + } + + } + + /** + * @brief Check if app is already downloaded + * @param $name name of the application to remove + * @returns true/false + * + * The function will check if the app is already downloaded in the apps repository + */ + public static function isDownloaded( $name ) { + + $downloaded=false; + foreach(OC::$APPSROOTS as $dir) { + if(is_dir($dir['path'].'/'.$name)) $downloaded=true; + } + return($downloaded); } /** @@ -276,8 +325,36 @@ class OC_Installer{ * this has to be done by the function oc_app_uninstall(). */ public static function removeApp( $name, $options = array()) { - // TODO: write function - return true; + + if(isset($options['keeppreferences']) and $options['keeppreferences']==false ){ + // todo + // remove preferences + } + + if(isset($options['keepappconfig']) and $options['keepappconfig']==false ){ + // todo + // remove app config + } + + if(isset($options['keeptables']) and $options['keeptables']==false ){ + // todo + // remove app database tables + } + + if(isset($options['keepfiles']) and $options['keepfiles']==false ){ + // todo + // remove user files + } + + if(OC_Installer::isDownloaded( $name )) { + $appdir=OC_App::getInstallPath().'/'.$name; + OC_Helper::rmdirr($appdir); + + }else{ + OC_Log::write('core', 'can\'t remove app '.$name.'. It is not installed.', OC_Log::ERROR); + + } + } /** diff --git a/lib/l10n.php b/lib/l10n.php index ca53b3cf65c..ee879009265 100644 --- a/lib/l10n.php +++ b/lib/l10n.php @@ -287,7 +287,7 @@ class OC_L10N{ } if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { - $accepted_languages = preg_split('/,\s*/', $_SERVER['HTTP_ACCEPT_LANGUAGE']); + $accepted_languages = preg_split('/,\s*/', strtolower($_SERVER['HTTP_ACCEPT_LANGUAGE'])); if(is_array($app)) { $available = $app; } diff --git a/lib/l10n/af_ZA.php b/lib/l10n/af_ZA.php new file mode 100644 index 00000000000..38e91288fbe --- /dev/null +++ b/lib/l10n/af_ZA.php @@ -0,0 +1,8 @@ +<?php $TRANSLATIONS = array( +"Help" => "Hulp", +"Personal" => "Persoonlik", +"Settings" => "Instellings", +"Users" => "Gebruikers", +"Apps" => "Toepassings", +"Admin" => "Admin" +); diff --git a/lib/l10n/fa.php b/lib/l10n/fa.php index 8cbdcb03b3b..bbb04290a5c 100644 --- a/lib/l10n/fa.php +++ b/lib/l10n/fa.php @@ -3,17 +3,28 @@ "Personal" => "شخصی", "Settings" => "تنظیمات", "Users" => "کاربران", +"Apps" => " برنامه ها", "Admin" => "مدیر", +"ZIP download is turned off." => "دانلود به صورت ÙØ´Ø±Ø¯Ù‡ غیر ÙØ¹Ø§Ù„ است", +"Files need to be downloaded one by one." => "ÙØ§ÛŒÙ„ ها باید به صورت یکی یکی دانلود شوند", +"Back to Files" => "بازگشت به ÙØ§ÛŒÙ„ ها", +"Selected files too large to generate zip file." => "ÙØ§ÛŒÙ„ های انتخاب شده بزرگتر از آن هستند Ú©Ù‡ بتوان یک ÙØ§ÛŒÙ„ ÙØ´Ø±Ø¯Ù‡ تولید کرد", +"Application is not enabled" => "برنامه ÙØ¹Ø§Ù„ نشده است", "Authentication error" => "خطا در اعتبار سنجی", "Files" => "پرونده‌ها", "Text" => "متن", +"Images" => "تصاویر", "seconds ago" => "ثانیه‌ها پیش", "1 minute ago" => "1 دقیقه پیش", "%d minutes ago" => "%d دقیقه پیش", "1 hour ago" => "1 ساعت پیش", +"%d hours ago" => "%d ساعت پیش", "today" => "امروز", "yesterday" => "دیروز", +"%d days ago" => "%d روز پیش", "last month" => "ماه قبل", +"%d months ago" => "%dماه پیش", "last year" => "سال قبل", -"years ago" => "سال‌های قبل" +"years ago" => "سال‌های قبل", +"Could not find category \"%s\"" => "دسته بندی %s ÛŒØ§ÙØª نشد" ); diff --git a/lib/l10n/ko.php b/lib/l10n/ko.php index c4716f9f8bd..859657f46b4 100644 --- a/lib/l10n/ko.php +++ b/lib/l10n/ko.php @@ -9,6 +9,7 @@ "Files need to be downloaded one by one." => "파ì¼ì„ 개별ì 으로 다운로드해야 합니다.", "Back to Files" => "파ì¼ë¡œ ëŒì•„가기", "Selected files too large to generate zip file." => "ì„ íƒí•œ 파ì¼ë“¤ì€ ZIP 파ì¼ì„ ìƒì„±í•˜ê¸°ì— 너무 í½ë‹ˆë‹¤.", +"couldn't be determined" => "ê²°ì •í• ìˆ˜ ì—†ìŒ", "Application is not enabled" => "ì•±ì´ í™œì„±í™”ë˜ì§€ 않았습니다", "Authentication error" => "ì¸ì¦ 오류", "Token expired. Please reload page." => "í† í°ì´ 만료ë˜ì—ˆìŠµë‹ˆë‹¤. 페ì´ì§€ë¥¼ 새로 ê³ ì¹˜ì‹ì‹œì˜¤.", diff --git a/lib/l10n/lv.php b/lib/l10n/lv.php index 3330d0e6b70..9f2a0dea749 100644 --- a/lib/l10n/lv.php +++ b/lib/l10n/lv.php @@ -3,6 +3,33 @@ "Personal" => "PersonÄ«gi", "Settings" => "IestatÄ«jumi", "Users" => "LietotÄji", -"Authentication error" => "IelogoÅ¡anÄs kļūme", -"Files" => "Faili" +"Apps" => "Lietotnes", +"Admin" => "Administratori", +"ZIP download is turned off." => "ZIP lejupielÄdēšana ir izslÄ“gta.", +"Files need to be downloaded one by one." => "Datnes var lejupielÄdÄ“t tikai katru atsevišķi.", +"Back to Files" => "Atpakaļ pie datnÄ“m", +"Selected files too large to generate zip file." => "IzvÄ“lÄ“tÄs datnes ir pÄrÄk lielas, lai izveidotu zip datni.", +"couldn't be determined" => "nevarÄ“ja noteikt", +"Application is not enabled" => "Lietotne nav aktivÄ“ta", +"Authentication error" => "AutentifikÄcijas kļūda", +"Token expired. Please reload page." => "Pilnvarai ir beidzies termiņš. LÅ«dzu, pÄrlÄdÄ“jiet lapu.", +"Files" => "Datnes", +"Text" => "Teksts", +"Images" => "AttÄ“li", +"seconds ago" => "sekundes atpakaļ", +"1 minute ago" => "pirms 1 minÅ«tes", +"%d minutes ago" => "pirms %d minÅ«tÄ“m", +"1 hour ago" => "pirms 1 stundas", +"%d hours ago" => "pirms %d stundÄm", +"today" => "Å¡odien", +"yesterday" => "vakar", +"%d days ago" => "pirms %d dienÄm", +"last month" => "pagÄjuÅ¡ajÄ mÄ“nesÄ«", +"%d months ago" => "pirms %d mÄ“neÅ¡iem", +"last year" => "gÄjuÅ¡ajÄ gadÄ", +"years ago" => "gadus atpakaļ", +"%s is available. Get <a href=\"%s\">more information</a>" => "%s ir pieejams. IegÅ«t <a href=\"%s\">vairÄk informÄcijas</a>", +"up to date" => "ir aktuÄls", +"updates check is disabled" => "atjauninÄjumu pÄrbaude ir deaktivÄ“ta", +"Could not find category \"%s\"" => "NevarÄ“ja atrast kategoriju “%sâ€" ); diff --git a/lib/l10n/sr.php b/lib/l10n/sr.php index 34ae89a6219..1161b0a44b7 100644 --- a/lib/l10n/sr.php +++ b/lib/l10n/sr.php @@ -1,10 +1,10 @@ <?php $TRANSLATIONS = array( "Help" => "Помоћ", "Personal" => "Лично", -"Settings" => "Подешавања", +"Settings" => "ПоÑтавке", "Users" => "КориÑници", "Apps" => "Ðпликације", -"Admin" => "ÐдминиÑтрација", +"Admin" => "ÐдминиÑтратор", "ZIP download is turned off." => "Преузимање ZIP-а је иÑкључено.", "Files need to be downloaded one by one." => "Датотеке морате преузимати једну по једну.", "Back to Files" => "Ðазад на датотеке", @@ -29,7 +29,7 @@ "last year" => "прошле године", "years ago" => "година раније", "%s is available. Get <a href=\"%s\">more information</a>" => "%s је доÑтупна. Погледајте <a href=\"%s\">више информација</a>.", -"up to date" => "је ажурна.", -"updates check is disabled" => "провера ажурирања је онемогућена.", +"up to date" => "је ажурна", +"updates check is disabled" => "провера ажурирања је онемогућена", "Could not find category \"%s\"" => "Ðе могу да пронађем категорију „%s“." ); diff --git a/lib/ocs/cloud.php b/lib/ocs/cloud.php index 2d18b1db3f2..179ed8f3107 100644 --- a/lib/ocs/cloud.php +++ b/lib/ocs/cloud.php @@ -45,11 +45,11 @@ class OC_OCS_Cloud { if(OC_User::userExists($parameters['user'])) { // calculate the disc space $userDir = '/'.$parameters['user'].'/files'; - OC_Filesystem::init($userDir); - $rootInfo = OC_FileCache::get(''); - $sharedInfo = OC_FileCache::get('/Shared'); + \OC\Files\Filesystem::init($useDir); + $rootInfo = \OC\Files\Filesystem::getFileInfo(''); + $sharedInfo = \OC\Files\Filesystem::getFileInfo('/Shared'); $used = $rootInfo['size'] - $sharedInfo['size']; - $free = OC_Filesystem::free_space(); + $free = \OC\Files\Filesystem::free_space(); $total = $free + $used; if($total===0) $total = 1; // prevent division by zero $relative = round(($used/$total)*10000)/100; diff --git a/lib/ocsclient.php b/lib/ocsclient.php index ca0665da436..30163c1e403 100644 --- a/lib/ocsclient.php +++ b/lib/ocsclient.php @@ -123,6 +123,8 @@ class OC_OCSClient{ $app=array(); $app['id']=(string)$tmp[$i]->id; $app['name']=(string)$tmp[$i]->name; + $app['label']=(string)$tmp[$i]->label; + $app['version']=(string)$tmp[$i]->version; $app['type']=(string)$tmp[$i]->typeid; $app['typename']=(string)$tmp[$i]->typename; $app['personid']=(string)$tmp[$i]->personid; @@ -162,7 +164,9 @@ class OC_OCSClient{ $app=array(); $app['id']=$tmp->id; $app['name']=$tmp->name; + $app['version']=$tmp->version; $app['type']=$tmp->typeid; + $app['label']=$tmp->label; $app['typename']=$tmp->typename; $app['personid']=$tmp->personid; $app['detailpage']=$tmp->detailpage; diff --git a/lib/public/files.php b/lib/public/files.php index 75e1d2fbbc1..f6b3e0ee38a 100644 --- a/lib/public/files.php +++ b/lib/public/files.php @@ -99,7 +99,7 @@ class Files { /** * @param string appid * @param $app app - * @return OC_FilesystemView + * @return \OC\Files\View */ public static function getStorage( $app ) { return \OC_App::getStorage( $app ); diff --git a/lib/public/share.php b/lib/public/share.php index e1d77e652d5..7d806fafd04 100644 --- a/lib/public/share.php +++ b/lib/public/share.php @@ -37,8 +37,7 @@ class Share { const SHARE_TYPE_REMOTE = 6; /** CRUDS permissions (Create, Read, Update, Delete, Share) using a bitmask - * Construct permissions for share() and setPermissions with Or (|) - * e.g. Give user read and update permissions: PERMISSION_READ | PERMISSION_UPDATE + * Construct permissions for share() and setPermissions with Or (|) e.g. Give user read and update permissions: PERMISSION_READ | PERMISSION_UPDATE * Check if permission is granted with And (&) e.g. Check if delete is granted: if ($permissions & PERMISSION_DELETE) * Remove permissions with And (&) and Not (~) e.g. Remove the update permission: $permissions &= ~PERMISSION_UPDATE * Apps are required to handle permissions on their own, this class only stores and manages the permissions of shares @@ -67,17 +66,14 @@ class Share { public static function registerBackend($itemType, $class, $collectionOf = null, $supportedFileExtensions = null) { if (self::isEnabled()) { if (!isset(self::$backendTypes[$itemType])) { - self::$backendTypes[$itemType] = array('class' => $class, - 'collectionOf' => $collectionOf, - 'supportedFileExtensions' => $supportedFileExtensions); + self::$backendTypes[$itemType] = array('class' => $class, 'collectionOf' => $collectionOf, 'supportedFileExtensions' => $supportedFileExtensions); if(count(self::$backendTypes) === 1) { \OC_Util::addScript('core', 'share'); \OC_Util::addStyle('core', 'share'); } return true; } - \OC_Log::write('OCP\Share', 'Sharing backend '.$class.' not registered, ' - .self::$backendTypes[$itemType]['class'].' is already registered for '.$itemType, \OC_Log::WARN); + \OC_Log::write('OCP\Share', 'Sharing backend '.$class.' not registered, '.self::$backendTypes[$itemType]['class'].' is already registered for '.$itemType, \OC_Log::WARN); } return false; } @@ -103,20 +99,8 @@ class Share { * @param int Number of items to return (optional) Returns all by default * @return Return depends on format */ - public static function getItemsSharedWith($itemType, - $format = self::FORMAT_NONE, - $parameters = null, - $limit = -1, - $includeCollections = false) { - return self::getItems($itemType, - null, - self::$shareTypeUserAndGroups, - \OC_User::getUser(), - null, - $format, - $parameters, - $limit, - $includeCollections); + public static function getItemsSharedWith($itemType, $format = self::FORMAT_NONE, $parameters = null, $limit = -1, $includeCollections = false) { + return self::getItems($itemType, null, self::$shareTypeUserAndGroups, \OC_User::getUser(), null, $format, $parameters, $limit, $includeCollections); } /** @@ -126,20 +110,8 @@ class Share { * @param int Format (optional) Format type must be defined by the backend * @return Return depends on format */ - public static function getItemSharedWith($itemType, - $itemTarget, - $format = self::FORMAT_NONE, - $parameters = null, - $includeCollections = false) { - return self::getItems($itemType, - $itemTarget, - self::$shareTypeUserAndGroups, - \OC_User::getUser(), - null, - $format, - $parameters, - 1, - $includeCollections); + public static function getItemSharedWith($itemType, $itemTarget, $format = self::FORMAT_NONE, $parameters = null, $includeCollections = false) { + return self::getItems($itemType, $itemTarget, self::$shareTypeUserAndGroups, \OC_User::getUser(), null, $format, $parameters, 1, $includeCollections); } /** @@ -149,20 +121,8 @@ class Share { * @param int Format (optional) Format type must be defined by the backend * @return Return depends on format */ - public static function getItemSharedWithBySource($itemType, - $itemSource, - $format = self::FORMAT_NONE, - $parameters = null, - $includeCollections = false) { - return self::getItems($itemType, - $itemSource, - self::$shareTypeUserAndGroups, - \OC_User::getUser(), - null, - $format, - $parameters, - 1, - $includeCollections, true); + public static function getItemSharedWithBySource($itemType, $itemSource, $format = self::FORMAT_NONE, $parameters = null, $includeCollections = false) { + return self::getItems($itemType, $itemSource, self::$shareTypeUserAndGroups, \OC_User::getUser(), null, $format, $parameters, 1, $includeCollections, true); } /** @@ -173,14 +133,7 @@ class Share { * @return Item */ public static function getItemSharedWithByLink($itemType, $itemSource, $uidOwner) { - return self::getItems($itemType, - $itemSource, - self::SHARE_TYPE_LINK, - null, - $uidOwner, - self::FORMAT_NONE, - null, - 1); + return self::getItems($itemType, $itemSource, self::SHARE_TYPE_LINK, null, $uidOwner, self::FORMAT_NONE, null, 1); } /** @@ -189,7 +142,7 @@ class Share { * @return Item */ public static function getShareByToken($token) { - $query = \OC_DB::prepare('SELECT * FROM `*PREFIX*share` WHERE `token` = ?', 1); + $query = \OC_DB::prepare('SELECT * FROM `*PREFIX*share` WHERE `token` = ?',1); $result = $query->execute(array($token)); if (\OC_DB::isError($result)) { \OC_Log::write('OCP\Share', \OC_DB::getErrorMessage($result) . ', token=' . $token, \OC_Log::ERROR); @@ -204,20 +157,8 @@ class Share { * @param int Number of items to return (optional) Returns all by default * @return Return depends on format */ - public static function getItemsShared($itemType, - $format = self::FORMAT_NONE, - $parameters = null, - $limit = -1, - $includeCollections = false) { - return self::getItems($itemType, - null, - null, - null, - \OC_User::getUser(), - $format, - $parameters, - $limit, - $includeCollections); + public static function getItemsShared($itemType, $format = self::FORMAT_NONE, $parameters = null, $limit = -1, $includeCollections = false) { + return self::getItems($itemType, null, null, null, \OC_User::getUser(), $format, $parameters, $limit, $includeCollections); } /** @@ -227,20 +168,8 @@ class Share { * @param int Format (optional) Format type must be defined by the backend * @return Return depends on format */ - public static function getItemShared($itemType, - $itemSource, - $format = self::FORMAT_NONE, - $parameters = null, - $includeCollections = false) { - return self::getItems($itemType, - $itemSource, - null, - null, - \OC_User::getUser(), - $format, - $parameters, - -1, - $includeCollections); + public static function getItemShared($itemType, $itemSource, $format = self::FORMAT_NONE, $parameters = null, $includeCollections = false) { + return self::getItems($itemType, $itemSource, null, null, \OC_User::getUser(), $format, $parameters, -1, $includeCollections); } /** @@ -270,26 +199,14 @@ class Share { if ($sharingPolicy == 'groups_only') { $inGroup = array_intersect(\OC_Group::getUserGroups($uidOwner), \OC_Group::getUserGroups($shareWith)); if (empty($inGroup)) { - $message = 'Sharing '.$itemSource.' failed, because the user '.$shareWith.' is not a member' - .' of any groups that '.$uidOwner.' is a member of'; + $message = 'Sharing '.$itemSource.' failed, because the user '.$shareWith.' is not a member of any groups that '.$uidOwner.' is a member of'; \OC_Log::write('OCP\Share', $message, \OC_Log::ERROR); throw new \Exception($message); } } // Check if the item source is already shared with the user, either from the same owner or a different user - $checkExists = self::getItems($itemType, - $itemSource, - self::$shareTypeUserAndGroups, - $shareWith, - null, - self::FORMAT_NONE, - null, - 1, - true, - true); - if ($checkExists) { - // Only allow the same share to occur again if it is the same owner and is not a user share, - // this use case is for increasing permissions for a specific user + if ($checkExists = self::getItems($itemType, $itemSource, self::$shareTypeUserAndGroups, $shareWith, null, self::FORMAT_NONE, null, 1, true, true)) { + // Only allow the same share to occur again if it is the same owner and is not a user share, this use case is for increasing permissions for a specific user if ($checkExists['uid_owner'] != $uidOwner || $checkExists['share_type'] == $shareType) { $message = 'Sharing '.$itemSource.' failed, because this item is already shared with '.$shareWith; \OC_Log::write('OCP\Share', $message, \OC_Log::ERROR); @@ -303,26 +220,14 @@ class Share { throw new \Exception($message); } if ($sharingPolicy == 'groups_only' && !\OC_Group::inGroup($uidOwner, $shareWith)) { - $message = 'Sharing '.$itemSource.' failed, because '.$uidOwner - .' is not a member of the group '.$shareWith; + $message = 'Sharing '.$itemSource.' failed, because '.$uidOwner.' is not a member of the group '.$shareWith; \OC_Log::write('OCP\Share', $message, \OC_Log::ERROR); throw new \Exception($message); } // Check if the item source is already shared with the group, either from the same owner or a different user // The check for each user in the group is done inside the put() function - $checkExists = self::getItems($itemType, - $itemSource, - self::SHARE_TYPE_GROUP, - $shareWith, - null, - self::FORMAT_NONE, - null, - 1, - true, - true); - if ($checkExists) { - // Only allow the same share to occur again if it is the same owner and is not a group share, - // this use case is for increasing permissions for a specific user + if ($checkExists = self::getItems($itemType, $itemSource, self::SHARE_TYPE_GROUP, $shareWith, null, self::FORMAT_NONE, null, 1, true, true)) { + // Only allow the same share to occur again if it is the same owner and is not a group share, this use case is for increasing permissions for a specific user if ($checkExists['uid_owner'] != $uidOwner || $checkExists['share_type'] == $shareType) { $message = 'Sharing '.$itemSource.' failed, because this item is already shared with '.$shareWith; \OC_Log::write('OCP\Share', $message, \OC_Log::ERROR); @@ -337,15 +242,7 @@ class Share { } else if ($shareType === self::SHARE_TYPE_LINK) { if (\OC_Appconfig::getValue('core', 'shareapi_allow_links', 'yes') == 'yes') { // when updating a link share - $checkExists = self::getItems($itemType, - $itemSource, - self::SHARE_TYPE_LINK, - null, - $uidOwner, - self::FORMAT_NONE, - null, - 1); - if ($checkExists) { + if ($checkExists = self::getItems($itemType, $itemSource, self::SHARE_TYPE_LINK, null, $uidOwner, self::FORMAT_NONE, null, 1)) { // remember old token $oldToken = $checkExists['token']; //delete the old share @@ -365,14 +262,7 @@ class Share { } else { $token = \OC_Util::generate_random_bytes(self::TOKEN_LENGTH); } - $result = self::put($itemType, - $itemSource, - $shareType, - $shareWith, - $uidOwner, - $permissions, - null, - $token); + $result = self::put($itemType, $itemSource, $shareType, $shareWith, $uidOwner, $permissions, null, $token); if ($result) { return $token; } else { @@ -410,41 +300,36 @@ class Share { throw new \Exception($message); } // If the item is a folder, scan through the folder looking for equivalent item types - if ($itemType == 'folder') { - $parentFolder = self::put('folder', $itemSource, $shareType, $shareWith, $uidOwner, $permissions, true); - if ($parentFolder && $files = \OC_Files::getDirectoryContent($itemSource)) { - for ($i = 0; $i < count($files); $i++) { - $name = substr($files[$i]['name'], strpos($files[$i]['name'], $itemSource) - strlen($itemSource)); - if ($files[$i]['mimetype'] == 'httpd/unix-directory' - && $children = \OC_Files::getDirectoryContent($name, '/') - ) { - // Continue scanning into child folders - array_push($files, $children); - } else { - // Check file extension for an equivalent item type to convert to - $extension = strtolower(substr($itemSource, strrpos($itemSource, '.') + 1)); - foreach (self::$backends as $type => $backend) { - if (isset($backend->dependsOn) - && $backend->dependsOn == 'file' - && isset($backend->supportedFileExtensions) - && in_array($extension, $backend->supportedFileExtensions) - ) { - $itemType = $type; - break; - } - } - // Pass on to put() to check if this item should be converted, - // the item won't be inserted into the database unless it can be converted - self::put($itemType, $name, $shareType, $shareWith, $uidOwner, $permissions, $parentFolder); - } - } - return true; - } - return false; - } else { +// if ($itemType == 'folder') { +// $parentFolder = self::put('folder', $itemSource, $shareType, $shareWith, $uidOwner, $permissions, true); +// if ($parentFolder && $files = \OC\Files\Filesystem::getDirectoryContent($itemSource)) { +// for ($i = 0; $i < count($files); $i++) { +// $name = substr($files[$i]['name'], strpos($files[$i]['name'], $itemSource) - strlen($itemSource)); +// if ($files[$i]['mimetype'] == 'httpd/unix-directory' +// && $children = \OC\Files\Filesystem::getDirectoryContent($name, '/') +// ) { +// // Continue scanning into child folders +// array_push($files, $children); +// } else { +// // Check file extension for an equivalent item type to convert to +// $extension = strtolower(substr($itemSource, strrpos($itemSource, '.') + 1)); +// foreach (self::$backends as $type => $backend) { +// if (isset($backend->dependsOn) && $backend->dependsOn == 'file' && isset($backend->supportedFileExtensions) && in_array($extension, $backend->supportedFileExtensions)) { +// $itemType = $type; +// break; +// } +// } +// // Pass on to put() to check if this item should be converted, the item won't be inserted into the database unless it can be converted +// self::put($itemType, $name, $shareType, $shareWith, $uidOwner, $permissions, $parentFolder); +// } +// } +// return true; +// } +// return false; +// } else { // Put the item into the database return self::put($itemType, $itemSource, $shareType, $shareWith, $uidOwner, $permissions); - } +// } } /** @@ -456,15 +341,7 @@ class Share { * @return Returns true on success or false on failure */ public static function unshare($itemType, $itemSource, $shareType, $shareWith) { - $item = self::getItems($itemType, - $itemSource, - $shareType, - $shareWith, - \OC_User::getUser(), - self::FORMAT_NONE, - null, - 1); - if ($item) { + if ($item = self::getItems($itemType, $itemSource, $shareType, $shareWith, \OC_User::getUser(), self::FORMAT_NONE, null, 1)) { self::delete($item['id']); return true; } @@ -478,8 +355,7 @@ class Share { * @return Returns true on success or false on failure */ public static function unshareAll($itemType, $itemSource) { - $shares = self::getItemShared($itemType, $itemSource); - if ($shares) { + if ($shares = self::getItemShared($itemType, $itemSource)) { foreach ($shares as $share) { self::delete($share['id']); } @@ -498,27 +374,11 @@ class Share { * */ public static function unshareFromSelf($itemType, $itemTarget) { - $item = self::getItemSharedWith($itemType, $itemTarget); - if ($item) { + if ($item = self::getItemSharedWith($itemType, $itemTarget)) { if ((int)$item['share_type'] === self::SHARE_TYPE_GROUP) { - // Insert an extra row for the group share and set permission to 0 - // to prevent it from showing up for the user - $query = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (' - .'`item_type`, `item_source`, `item_target`, `parent`, `share_type`, `share_with`, ' - .'`uid_owner`, `permissions`, `stime`, `file_source`, `file_target`' - .') VALUES (?,?,?,?,?,?,?,?,?,?,?)'); - $query->execute(array( - $item['item_type'], - $item['item_source'], - $item['item_target'], - $item['id'], - self::$shareTypeGroupUserUnique, - \OC_User::getUser(), - $item['uid_owner'], - 0, - $item['stime'], - $item['file_source'], - $item['file_target'])); + // Insert an extra row for the group share and set permission to 0 to prevent it from showing up for the user + $query = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (`item_type`, `item_source`, `item_target`, `parent`, `share_type`, `share_with`, `uid_owner`, `permissions`, `stime`, `file_source`, `file_target`) VALUES (?,?,?,?,?,?,?,?,?,?,?)'); + $query->execute(array($item['item_type'], $item['item_source'], $item['item_target'], $item['id'], self::$shareTypeGroupUserUnique, \OC_User::getUser(), $item['uid_owner'], 0, $item['stime'], $item['file_source'], $item['file_target'])); \OC_DB::insertid('*PREFIX*share'); // Delete all reshares by this user of the group share self::delete($item['id'], true, \OC_User::getUser()); @@ -545,24 +405,13 @@ class Share { * @return Returns true on success or false on failure */ public static function setPermissions($itemType, $itemSource, $shareType, $shareWith, $permissions) { - $item = self::getItems($itemType, - $itemSource, - $shareType, - $shareWith, - \OC_User::getUser(), - self::FORMAT_NONE, - null, - 1, - false); - if ($item) { - // Check if this item is a reshare and - // verify that the permissions granted don't exceed the parent shared item + if ($item = self::getItems($itemType, $itemSource, $shareType, $shareWith, \OC_User::getUser(), self::FORMAT_NONE, null, 1, false)) { + // Check if this item is a reshare and verify that the permissions granted don't exceed the parent shared item if (isset($item['parent'])) { $query = \OC_DB::prepare('SELECT `permissions` FROM `*PREFIX*share` WHERE `id` = ?', 1); $result = $query->execute(array($item['parent']))->fetchRow(); if (~(int)$result['permissions'] & $permissions) { - $message = 'Setting permissions for '.$itemSource.' failed, ' - .'because the permissions exceed permissions granted to '.\OC_User::getUser(); + $message = 'Setting permissions for '.$itemSource.' failed, because the permissions exceed permissions granted to '.\OC_User::getUser(); \OC_Log::write('OCP\Share', $message, \OC_Log::ERROR); throw new \Exception($message); } @@ -579,12 +428,9 @@ class Share { $parents = array($item['id']); while (!empty($parents)) { $parents = "'".implode("','", $parents)."'"; - $query = \OC_DB::prepare('SELECT `id`, `permissions`' - .' FROM `*PREFIX*share`' - .' WHERE `parent` IN ('.$parents.')'); + $query = \OC_DB::prepare('SELECT `id`, `permissions` FROM `*PREFIX*share` WHERE `parent` IN ('.$parents.')'); $result = $query->execute(); - // Reset parents array, - // only go through loop again if items are found that need permissions removed + // Reset parents array, only go through loop again if items are found that need permissions removed $parents = array(); while ($item = $result->fetchRow()) { // Check if permissions need to be removed @@ -598,9 +444,7 @@ class Share { // Remove the permissions for all reshares of this item if (!empty($ids)) { $ids = "'".implode("','", $ids)."'"; - $query = \OC_DB::prepare('UPDATE `*PREFIX*share`' - .' SET `permissions` = `permissions` & ?' - .' WHERE `id` IN ('.$ids.')'); + $query = \OC_DB::prepare('UPDATE `*PREFIX*share` SET `permissions` = `permissions` & ? WHERE `id` IN ('.$ids.')'); $query->execute(array($permissions)); } } @@ -613,16 +457,7 @@ class Share { } public static function setExpirationDate($itemType, $itemSource, $date) { - $items = self::getItems($itemType, - $itemSource, - null, - null, - \OC_User::getUser(), - self::FORMAT_NONE, - null, - -1, - false); - if ($items) { + if ($items = self::getItems($itemType, $itemSource, null, null, \OC_User::getUser(), self::FORMAT_NONE, null, -1, false)) { if (!empty($items)) { if ($date == '') { $date = null; @@ -681,11 +516,11 @@ class Share { $collectionTypes[] = $type; } } - if (!self::getBackend($itemType) instanceof Share_Backend_Collection) { + // TODO Add option for collections to be collection of themselves, only 'folder' does it now... + if (!self::getBackend($itemType) instanceof Share_Backend_Collection || $itemType != 'folder') { unset($collectionTypes[0]); } - // Return array if collections were found or the item type is a collection itself - // - collections can be inside collections + // Return array if collections were found or the item type is a collection itself - collections can be inside collections if (count($collectionTypes) > 0) { return $collectionTypes; } @@ -696,8 +531,7 @@ class Share { * @brief Get shared items from the database * @param string Item type * @param string Item source or target (optional) - * @param int SHARE_TYPE_USER, SHARE_TYPE_GROUP, SHARE_TYPE_LINK, - * $shareTypeUserAndGroups, or $shareTypeGroupUserUnique + * @param int SHARE_TYPE_USER, SHARE_TYPE_GROUP, SHARE_TYPE_LINK, $shareTypeUserAndGroups, or $shareTypeGroupUserUnique * @param string User or group the item is being shared with * @param string User that is the owner of shared items (optional) * @param int Format to convert items to with formatItems() @@ -709,16 +543,7 @@ class Share { * See public functions getItem(s)... for parameter usage * */ - private static function getItems($itemType, - $item = null, - $shareType = null, - $shareWith = null, - $uidOwner = null, - $format = self::FORMAT_NONE, - $parameters = null, - $limit = -1, - $includeCollections = false, - $itemShareWithBySource = false) { + private static function getItems($itemType, $item = null, $shareType = null, $shareWith = null, $uidOwner = null, $format = self::FORMAT_NONE, $parameters = null, $limit = -1, $includeCollections = false, $itemShareWithBySource = false) { if (!self::isEnabled()) { if ($limit == 1 || (isset($uidOwner) && isset($item))) { return false; @@ -727,11 +552,10 @@ class Share { } } $backend = self::getBackend($itemType); - // Get filesystem root to add it to the file target and remove from the file source, - // match file_source with the file cache + // Get filesystem root to add it to the file target and remove from the file source, match file_source with the file cache if ($itemType == 'file' || $itemType == 'folder') { - $root = \OC_Filesystem::getRoot(); - $where = 'INNER JOIN `*PREFIX*fscache` ON `file_source` = `*PREFIX*fscache`.`id`'; + $root = \OC\Files\Filesystem::getRoot(); + $where = 'INNER JOIN `*PREFIX*filecache` ON `file_source` = `*PREFIX*filecache`.`fileid`'; if (!isset($item)) { $where .= ' WHERE `file_target` IS NOT NULL'; } @@ -817,7 +641,7 @@ class Share { } else { if ($itemType == 'file' || $itemType == 'folder') { $where .= ' `file_target` = ?'; - $item = \OC_Filesystem::normalizePath($item); + $item = \OC\Files\Filesystem::normalizePath($item); } else { $where .= ' `item_target` = ?'; } @@ -831,8 +655,7 @@ class Share { } if ($limit != -1 && !$includeCollections) { if ($shareType == self::$shareTypeUserAndGroups) { - // Make sure the unique user target is returned if it exists, - // unique targets should follow the group share in the database + // Make sure the unique user target is returned if it exists, unique targets should follow the group share in the database // If the limit is not 1, the filtering can be done later $where .= ' ORDER BY `*PREFIX*share`.`id` DESC'; } @@ -848,34 +671,29 @@ class Share { // TODO Optimize selects if ($format == self::FORMAT_STATUSES) { if ($itemType == 'file' || $itemType == 'folder') { - $select = '`*PREFIX*share`.`id`, `item_type`, `*PREFIX*share`.`parent`, ' - .'`share_type`, `file_source`, `path`, `expiration`'; + $select = '`*PREFIX*share`.`id`, `item_type`, `*PREFIX*share`.`parent`, `share_type`, `file_source`, `path`, `expiration`'; } else { $select = '`id`, `item_type`, `item_source`, `parent`, `share_type`, `expiration`'; } } else { if (isset($uidOwner)) { if ($itemType == 'file' || $itemType == 'folder') { - $select = '`*PREFIX*share`.`id`, `item_type`, `*PREFIX*share`.`parent`, `share_type`, ' - .'`share_with`, `file_source`, `path`, `permissions`, `stime`, `expiration`, `token`'; + $select = '`*PREFIX*share`.`id`, `item_type`, `*PREFIX*share`.`parent`, `share_type`, `share_with`, `file_source`, `path`, `permissions`, `stime`, `expiration`, `token`'; } else { - $select = '`id`, `item_type`, `item_source`, `parent`, `share_type`, `share_with`, ' - .'`permissions`, `stime`, `file_source`, `expiration`, `token`'; + $select = '`id`, `item_type`, `item_source`, `parent`, `share_type`, `share_with`, `permissions`, `stime`, `file_source`, `expiration`, `token`'; } } else { if ($fileDependent) { if (($itemType == 'file' || $itemType == 'folder') - && $format == \OC_Share_Backend_File::FORMAT_FILE_APP + && $format == \OC_Share_Backend_File::FORMAT_GET_FOLDER_CONTENTS || $format == \OC_Share_Backend_File::FORMAT_FILE_APP_ROOT ) { $select = '`*PREFIX*share`.`id`, `item_type`, `*PREFIX*share`.`parent`, `uid_owner`, ' - .'`share_type`, `share_with`, `file_source`, `path`, `file_target`, `permissions`, ' - .'`expiration`, `name`, `ctime`, `mtime`, `mimetype`, `size`, `encrypted`, ' - .'`versioned`, `writable`'; + .'`share_type`, `share_with`, `file_source`, `path`, `file_target`, ' + .'`permissions`, `expiration`, `storage`, `*PREFIX*filecache`.`parent` as `file_parent`, ' + .'`name` `mtime`, `mimetype`, `mimepart`, `size`, `encrypted`, `etag`'; } else { - $select = '`*PREFIX*share`.`id`, `item_type`, `item_source`, `item_target`, ' - .'`*PREFIX*share`.`parent`, `share_type`, `share_with`, `uid_owner`, `file_source`, ' - .'`path`, `file_target`, `permissions`, `stime`, `expiration`, `token`'; + $select = '`*PREFIX*share`.`id`, `item_type`, `item_source`, `item_target`, `*PREFIX*share`.`parent`, `share_type`, `share_with`, `uid_owner`, `file_source`, `path`, `file_target`, `permissions`, `stime`, `expiration`, `token`'; } } else { $select = '*'; @@ -886,9 +704,7 @@ class Share { $query = \OC_DB::prepare('SELECT '.$select.' FROM `*PREFIX*share` '.$where, $queryLimit); $result = $query->execute($queryArgs); if (\OC_DB::isError($result)) { - \OC_Log::write('OCP\Share', \OC_DB::getErrorMessage($result) - . ', select=' . $select - . ' where=' . $where, \OC_Log::ERROR); + \OC_Log::write('OCP\Share', \OC_DB::getErrorMessage($result) . ', select=' . $select . ' where=' . $where, \OC_Log::ERROR); } $items = array(); $targets = array(); @@ -905,8 +721,7 @@ class Share { } else if (!isset($uidOwner)) { // Check if the same target already exists if (isset($targets[$row[$column]])) { - // Check if the same owner shared with the user twice through a group and user share - // - this is allowed + // Check if the same owner shared with the user twice through a group and user share - this is allowed $id = $targets[$row[$column]]; if ($items[$id]['uid_owner'] == $row['uid_owner']) { // Switch to group share type to ensure resharing conditions aren't bypassed @@ -914,11 +729,8 @@ class Share { $items[$id]['share_type'] = self::SHARE_TYPE_GROUP; $items[$id]['share_with'] = $row['share_with']; } - // Switch ids if sharing permission is granted on only one share - // to ensure correct parent is used if resharing - if (~(int)$items[$id]['permissions'] & PERMISSION_SHARE - && (int)$row['permissions'] & PERMISSION_SHARE - ) { + // Switch ids if sharing permission is granted on only one share to ensure correct parent is used if resharing + if (~(int)$items[$id]['permissions'] & PERMISSION_SHARE && (int)$row['permissions'] & PERMISSION_SHARE) { $items[$row['id']] = $items[$id]; unset($items[$id]); $id = $row['id']; @@ -936,7 +748,8 @@ class Share { if (isset($row['parent'])) { $row['path'] = '/Shared/'.basename($row['path']); } else { - $row['path'] = substr($row['path'], $root); + // Strip 'files' from path + $row['path'] = substr($row['path'], 5); } } if (isset($row['expiration'])) { @@ -961,7 +774,7 @@ class Share { $collectionItems = array(); foreach ($items as &$row) { // Return only the item instead of a 2-dimensional array - if ($limit == 1 && $row['item_type'] == $itemType && $row[$column] == $item) { + if ($limit == 1 && $row[$column] == $item && ($row['item_type'] == $itemType || $itemType == 'file')) { if ($format == self::FORMAT_NONE) { return $row; } else { @@ -970,9 +783,7 @@ class Share { } // Check if this is a collection of the requested item type if ($includeCollections && $collectionTypes && in_array($row['item_type'], $collectionTypes)) { - if (($collectionBackend = self::getBackend($row['item_type'])) - && $collectionBackend instanceof Share_Backend_Collection - ) { + if (($collectionBackend = self::getBackend($row['item_type'])) && $collectionBackend instanceof Share_Backend_Collection) { // Collections can be inside collections, check if the item is a collection if (isset($item) && $row['item_type'] == $itemType && $row[$column] == $item) { $collectionItems[] = $row; @@ -996,9 +807,10 @@ class Share { if ($row['item_type'] == 'file' || $row['item_type'] == 'folder') { $childItem['file_source'] = $child['source']; } else { - $childItem['file_source'] = \OC_FileCache::getId($child['file_path']); + $meta = \OC\Files\Filesystem::getFileInfo($child['file_path']); + $childItem['file_source'] = $meta['fileid']; } - $childItem['file_target'] = \OC_Filesystem::normalizePath($child['file_path']); + $childItem['file_target'] = \OC\Files\Filesystem::normalizePath($child['file_path']); } if (isset($item)) { if ($childItem[$column] == $item) { @@ -1029,6 +841,9 @@ class Share { if (!empty($collectionItems)) { $items = array_merge($items, $collectionItems); } + if (empty($items) && $limit == 1) { + return false; + } if ($format == self::FORMAT_NONE) { return $items; } else if ($format == self::FORMAT_STATUSES) { @@ -1064,18 +879,10 @@ class Share { * @param bool|array Parent folder target (optional) * @return bool Returns true on success or false on failure */ - private static function put($itemType, - $itemSource, - $shareType, - $shareWith, - $uidOwner, - $permissions, - $parentFolder = null, - $token = null) { + private static function put($itemType, $itemSource, $shareType, $shareWith, $uidOwner, $permissions, $parentFolder = null, $token = null) { $backend = self::getBackend($itemType); // Check if this is a reshare - $checkReshare = self::getItemSharedWithBySource($itemType, $itemSource, self::FORMAT_NONE, null, true); - if ($checkReshare) { + if ($checkReshare = self::getItemSharedWithBySource($itemType, $itemSource, self::FORMAT_NONE, null, true)) { // Check if attempting to share back to owner if ($checkReshare['uid_owner'] == $shareWith && $shareType == self::SHARE_TYPE_USER) { $message = 'Sharing '.$itemSource.' failed, because the user '.$shareWith.' is the original sharer'; @@ -1085,8 +892,7 @@ class Share { // Check if share permissions is granted if ((int)$checkReshare['permissions'] & PERMISSION_SHARE) { if (~(int)$checkReshare['permissions'] & $permissions) { - $message = 'Sharing '.$itemSource.' failed, ' - .'because the permissions exceed permissions granted to '.$uidOwner; + $message = 'Sharing '.$itemSource.' failed, because the permissions exceed permissions granted to '.$uidOwner; \OC_Log::write('OCP\Share', $message, \OC_Log::ERROR); throw new \Exception($message); } else { @@ -1108,8 +914,7 @@ class Share { $suggestedItemTarget = null; $suggestedFileTarget = null; if (!$backend->isValidSource($itemSource, $uidOwner)) { - $message = 'Sharing '.$itemSource.' failed, ' - .'because the sharing backend for '.$itemType.' could not find its source'; + $message = 'Sharing '.$itemSource.' failed, because the sharing backend for '.$itemType.' could not find its source'; \OC_Log::write('OCP\Share', $message, \OC_Log::ERROR); throw new \Exception($message); } @@ -1119,7 +924,8 @@ class Share { if ($itemType == 'file' || $itemType == 'folder') { $fileSource = $itemSource; } else { - $fileSource = \OC_FileCache::getId($filePath); + $meta = \OC\Files\Filesystem::getFileInfo($filePath); + $fileSource = $meta['fileid']; } if ($fileSource == -1) { $message = 'Sharing '.$itemSource.' failed, because the file could not be found in the file cache'; @@ -1131,27 +937,14 @@ class Share { $fileSource = null; } } - $query = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (`item_type`, `item_source`, `item_target`, `parent`,' - .' `share_type`, `share_with`, `uid_owner`, `permissions`,' - .' `stime`, `file_source`, `file_target`, `token`' - .') VALUES (?,?,?,?,?,?,?,?,?,?,?,?)'); + $query = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (`item_type`, `item_source`, `item_target`, `parent`, `share_type`, `share_with`, `uid_owner`, `permissions`, `stime`, `file_source`, `file_target`, `token`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)'); // Share with a group if ($shareType == self::SHARE_TYPE_GROUP) { - $groupItemTarget = self::generateTarget($itemType, - $itemSource, - $shareType, - $shareWith['group'], - $uidOwner, - $suggestedItemTarget); + $groupItemTarget = self::generateTarget($itemType, $itemSource, $shareType, $shareWith['group'], $uidOwner, $suggestedItemTarget); if (isset($fileSource)) { if ($parentFolder) { if ($parentFolder === true) { - $groupFileTarget = self::generateTarget('file', - $filePath, - $shareType, - $shareWith['group'], - $uidOwner, - $suggestedFileTarget); + $groupFileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith['group'], $uidOwner, $suggestedFileTarget); // Set group default file target for future use $parentFolders[0]['folder'] = $groupFileTarget; } else { @@ -1160,50 +953,21 @@ class Share { $parent = $parentFolder[0]['id']; } } else { - $groupFileTarget = self::generateTarget('file', - $filePath, - $shareType, - $shareWith['group'], - $uidOwner, - $suggestedFileTarget); + $groupFileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith['group'], $uidOwner, $suggestedFileTarget); } } else { $groupFileTarget = null; } - $query->execute(array( - $itemType, - $itemSource, - $groupItemTarget, - $parent, - $shareType, - $shareWith['group'], - $uidOwner, - $permissions, - time(), - $fileSource, - $groupFileTarget, - $token)); + $query->execute(array($itemType, $itemSource, $groupItemTarget, $parent, $shareType, $shareWith['group'], $uidOwner, $permissions, time(), $fileSource, $groupFileTarget, $token)); // Save this id, any extra rows for this group share will need to reference it $parent = \OC_DB::insertid('*PREFIX*share'); // Loop through all users of this group in case we need to add an extra row foreach ($shareWith['users'] as $uid) { - $itemTarget = self::generateTarget($itemType, - $itemSource, - self::SHARE_TYPE_USER, - $uid, - $uidOwner, - $suggestedItemTarget, - $parent); + $itemTarget = self::generateTarget($itemType, $itemSource, self::SHARE_TYPE_USER, $uid, $uidOwner, $suggestedItemTarget, $parent); if (isset($fileSource)) { if ($parentFolder) { if ($parentFolder === true) { - $fileTarget = self::generateTarget('file', - $filePath, - self::SHARE_TYPE_USER, - $uid, - $uidOwner, - $suggestedFileTarget, - $parent); + $fileTarget = self::generateTarget('file', $filePath, self::SHARE_TYPE_USER, $uid, $uidOwner, $suggestedFileTarget, $parent); if ($fileTarget != $groupFileTarget) { $parentFolders[$uid]['folder'] = $fileTarget; } @@ -1212,13 +976,7 @@ class Share { $parent = $parentFolder[$uid]['id']; } } else { - $fileTarget = self::generateTarget('file', - $filePath, - self::SHARE_TYPE_USER, - $uid, - $uidOwner, - $suggestedFileTarget, - $parent); + $fileTarget = self::generateTarget('file', $filePath, self::SHARE_TYPE_USER, $uid, $uidOwner, $suggestedFileTarget, $parent); } } else { $fileTarget = null; @@ -1239,19 +997,7 @@ class Share { )); // Insert an extra row for the group share if the item or file target is unique for this user if ($itemTarget != $groupItemTarget || (isset($fileSource) && $fileTarget != $groupFileTarget)) { - $query->execute(array( - $itemType, - $itemSource, - $itemTarget, - $parent, - self::$shareTypeGroupUserUnique, - $uid, - $uidOwner, - $permissions, - time(), - $fileSource, - $fileTarget, - $token)); + $query->execute(array($itemType, $itemSource, $itemTarget, $parent, self::$shareTypeGroupUserUnique, $uid, $uidOwner, $permissions, time(), $fileSource, $fileTarget, $token)); $id = \OC_DB::insertid('*PREFIX*share'); } } @@ -1260,50 +1006,23 @@ class Share { return $parentFolders; } } else { - $itemTarget = self::generateTarget($itemType, - $itemSource, - $shareType, - $shareWith, - $uidOwner, - $suggestedItemTarget); + $itemTarget = self::generateTarget($itemType, $itemSource, $shareType, $shareWith, $uidOwner, $suggestedItemTarget); if (isset($fileSource)) { if ($parentFolder) { if ($parentFolder === true) { - $fileTarget = self::generateTarget('file', - $filePath, - $shareType, - $shareWith, - $uidOwner, - $suggestedFileTarget); + $fileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith, $uidOwner, $suggestedFileTarget); $parentFolders['folder'] = $fileTarget; } else { $fileTarget = $parentFolder['folder'].$itemSource; $parent = $parentFolder['id']; } } else { - $fileTarget = self::generateTarget('file', - $filePath, - $shareType, - $shareWith, - $uidOwner, - $suggestedFileTarget); + $fileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith, $uidOwner, $suggestedFileTarget); } } else { $fileTarget = null; } - $query->execute(array( - $itemType, - $itemSource, - $itemTarget, - $parent, - $shareType, - $shareWith, - $uidOwner, - $permissions, - time(), - $fileSource, - $fileTarget, - $token)); + $query->execute(array($itemType, $itemSource, $itemTarget, $parent, $shareType, $shareWith, $uidOwner, $permissions, time(), $fileSource, $fileTarget, $token)); $id = \OC_DB::insertid('*PREFIX*share'); \OC_Hook::emit('OCP\Share', 'post_shared', array( 'itemType' => $itemType, @@ -1338,13 +1057,7 @@ class Share { * @param int The id of the parent group share (optional) * @return string Item target */ - private static function generateTarget($itemType, - $itemSource, - $shareType, - $shareWith, - $uidOwner, - $suggestedTarget = null, - $groupParent = null) { + private static function generateTarget($itemType, $itemSource, $shareType, $shareWith, $uidOwner, $suggestedTarget = null, $groupParent = null) { $backend = self::getBackend($itemType); if ($shareType == self::SHARE_TYPE_LINK) { if (isset($suggestedTarget)) { @@ -1396,7 +1109,8 @@ class Share { } if ($item['uid_owner'] == $uidOwner) { if ($itemType == 'file' || $itemType == 'folder') { - if ($item['file_source'] == \OC_FileCache::getId($itemSource)) { + $meta = \OC\Files\Filesystem::getFileInfo($itemSource); + if ($item['file_source'] == $meta['fileid']) { return $target; } } else if ($item['item_source'] == $itemSource) { @@ -1410,43 +1124,18 @@ class Share { // Find similar targets to improve backend's chances to generate a unqiue target if ($userAndGroups) { if ($column == 'file_target') { - $checkTargets = \OC_DB::prepare('SELECT `'.$column.'`' - .' FROM `*PREFIX*share`' - .' WHERE `item_type` IN (\'file\', \'folder\')' - .' AND `share_type` IN (?,?,?)' - .' AND `share_with`' - .' IN (\''.implode('\',\'', $userAndGroups).'\')'); - $result = $checkTargets->execute(array( - self::SHARE_TYPE_USER, - self::SHARE_TYPE_GROUP, - self::$shareTypeGroupUserUnique)); + $checkTargets = \OC_DB::prepare('SELECT `'.$column.'` FROM `*PREFIX*share` WHERE `item_type` IN (\'file\', \'folder\') AND `share_type` IN (?,?,?) AND `share_with` IN (\''.implode('\',\'', $userAndGroups).'\')'); + $result = $checkTargets->execute(array(self::SHARE_TYPE_USER, self::SHARE_TYPE_GROUP, self::$shareTypeGroupUserUnique)); } else { - $checkTargets = \OC_DB::prepare('SELECT `'.$column.'`' - .' FROM `*PREFIX*share`' - .' WHERE `item_type` = ?' - .' AND `share_type` IN (?,?,?)' - .' AND `share_with`' - .' IN (\''.implode('\',\'', $userAndGroups).'\')'); - $result = $checkTargets->execute(array( - $itemType, - self::SHARE_TYPE_USER, - self::SHARE_TYPE_GROUP, - self::$shareTypeGroupUserUnique)); + $checkTargets = \OC_DB::prepare('SELECT `'.$column.'` FROM `*PREFIX*share` WHERE `item_type` = ? AND `share_type` IN (?,?,?) AND `share_with` IN (\''.implode('\',\'', $userAndGroups).'\')'); + $result = $checkTargets->execute(array($itemType, self::SHARE_TYPE_USER, self::SHARE_TYPE_GROUP, self::$shareTypeGroupUserUnique)); } } else { if ($column == 'file_target') { - $checkTargets = \OC_DB::prepare('SELECT `'.$column.'`' - .' FROM `*PREFIX*share`' - .' WHERE `item_type` IN (\'file\', \'folder\')' - .' AND `share_type` = ?' - .' AND `share_with` = ?'); + $checkTargets = \OC_DB::prepare('SELECT `'.$column.'` FROM `*PREFIX*share` WHERE `item_type` IN (\'file\', \'folder\') AND `share_type` = ? AND `share_with` = ?'); $result = $checkTargets->execute(array(self::SHARE_TYPE_GROUP, $shareWith)); } else { - $checkTargets = \OC_DB::prepare('SELECT `'.$column.'`' - .' FROM `*PREFIX*share`' - .' WHERE `item_type` = ?' - .' AND `share_type` = ?' - .' AND `share_with` = ?'); + $checkTargets = \OC_DB::prepare('SELECT `'.$column.'` FROM `*PREFIX*share` WHERE `item_type` = ? AND `share_type` = ? AND `share_with` = ?'); $result = $checkTargets->execute(array($itemType, self::SHARE_TYPE_GROUP, $shareWith)); } } @@ -1474,43 +1163,21 @@ class Share { $parents = array($parent); while (!empty($parents)) { $parents = "'".implode("','", $parents)."'"; - // Check the owner on the first search of reshares, - // useful for finding and deleting the reshares by a single user of a group share + // Check the owner on the first search of reshares, useful for finding and deleting the reshares by a single user of a group share if (count($ids) == 1 && isset($uidOwner)) { - $query = \OC_DB::prepare('SELECT `id`, `uid_owner`, `item_type`, `item_target`, `parent`' - .' FROM `*PREFIX*share`' - .' WHERE `parent` IN ('.$parents.')' - .' AND `uid_owner` = ?'); + $query = \OC_DB::prepare('SELECT `id`, `uid_owner`, `item_type`, `item_target`, `parent` FROM `*PREFIX*share` WHERE `parent` IN ('.$parents.') AND `uid_owner` = ?'); $result = $query->execute(array($uidOwner)); } else { - $query = \OC_DB::prepare('SELECT `id`, `item_type`, `item_target`, `parent`, `uid_owner`' - .' FROM `*PREFIX*share`' - .' WHERE `parent` IN ('.$parents.')'); + $query = \OC_DB::prepare('SELECT `id`, `item_type`, `item_target`, `parent`, `uid_owner` FROM `*PREFIX*share` WHERE `parent` IN ('.$parents.')'); $result = $query->execute(); } // Reset parents array, only go through loop again if items are found $parents = array(); while ($item = $result->fetchRow()) { - // Search for a duplicate parent share, - // this occurs when an item is shared to the same user through a group and user - // or the same item is shared by different users + // Search for a duplicate parent share, this occurs when an item is shared to the same user through a group and user or the same item is shared by different users $userAndGroups = array_merge(array($item['uid_owner']), \OC_Group::getUserGroups($item['uid_owner'])); - $query = \OC_DB::prepare('SELECT `id`, `permissions`' - .' FROM `*PREFIX*share`' - .' WHERE `item_type` = ?' - .' AND `item_target` = ?' - .' AND `share_type` IN (?,?,?)' - .' AND `share_with` IN (\''.implode('\',\'', $userAndGroups).'\')' - .' AND `uid_owner` != ?' - .' AND `id` != ?'); - $duplicateParent = $query->execute(array( - $item['item_type'], - $item['item_target'], - self::SHARE_TYPE_USER, - self::SHARE_TYPE_GROUP, - self::$shareTypeGroupUserUnique, - $item['uid_owner'], - $item['parent']))->fetchRow(); + $query = \OC_DB::prepare('SELECT `id`, `permissions` FROM `*PREFIX*share` WHERE `item_type` = ? AND `item_target` = ? AND `share_type` IN (?,?,?) AND `share_with` IN (\''.implode('\',\'', $userAndGroups).'\') AND `uid_owner` != ? AND `id` != ?'); + $duplicateParent = $query->execute(array($item['item_type'], $item['item_target'], self::SHARE_TYPE_USER, self::SHARE_TYPE_GROUP, self::$shareTypeGroupUserUnique, $item['uid_owner'], $item['parent']))->fetchRow(); if ($duplicateParent) { // Change the parent to the other item id if share permission is granted if ($duplicateParent['permissions'] & PERMISSION_SHARE) { @@ -1539,10 +1206,7 @@ class Share { public static function post_deleteUser($arguments) { // Delete any items shared with the deleted user - $query = \OC_DB::prepare('DELETE FROM `*PREFIX*share`' - .' WHERE `share_with` = ?' - .' AND `share_type` = ?' - .' OR `share_type` = ?'); + $query = \OC_DB::prepare('DELETE FROM `*PREFIX*share` WHERE `share_with` = ? AND `share_type` = ? OR `share_type` = ?'); $result = $query->execute(array($arguments['uid'], self::SHARE_TYPE_USER, self::$shareTypeGroupUserUnique)); // Delete any items the deleted user shared $query = \OC_DB::prepare('SELECT `id` FROM `*PREFIX*share` WHERE `uid_owner` = ?'); @@ -1556,46 +1220,21 @@ class Share { // Find the group shares and check if the user needs a unique target $query = \OC_DB::prepare('SELECT * FROM `*PREFIX*share` WHERE `share_type` = ? AND `share_with` = ?'); $result = $query->execute(array(self::SHARE_TYPE_GROUP, $arguments['gid'])); - $query = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (`item_type`, `item_source`, `item_target`, `parent`,' - .' `share_type`, `share_with`, `uid_owner`, `permissions`, `stime`, `file_source`,' - .' `file_target`)' - .' VALUES (?,?,?,?,?,?,?,?,?,?,?)'); + $query = \OC_DB::prepare('INSERT INTO `*PREFIX*share` (`item_type`, `item_source`, `item_target`, `parent`, `share_type`, `share_with`, `uid_owner`, `permissions`, `stime`, `file_source`, `file_target`) VALUES (?,?,?,?,?,?,?,?,?,?,?)'); while ($item = $result->fetchRow()) { if ($item['item_type'] == 'file' || $item['item_type'] == 'file') { $itemTarget = null; } else { - $itemTarget = self::generateTarget($item['item_type'], - $item['item_source'], - self::SHARE_TYPE_USER, - $arguments['uid'], - $item['uid_owner'], - $item['item_target'], - $item['id']); + $itemTarget = self::generateTarget($item['item_type'], $item['item_source'], self::SHARE_TYPE_USER, $arguments['uid'], $item['uid_owner'], $item['item_target'], $item['id']); } if (isset($item['file_source'])) { - $fileTarget = self::generateTarget($item['item_type'], - $item['item_source'], - self::SHARE_TYPE_USER, - $arguments['uid'], - $item['uid_owner'], - $item['file_target'], - $item['id']); + $fileTarget = self::generateTarget($item['item_type'], $item['item_source'], self::SHARE_TYPE_USER, $arguments['uid'], $item['uid_owner'], $item['file_target'], $item['id']); } else { $fileTarget = null; } // Insert an extra row for the group share if the item or file target is unique for this user if ($itemTarget != $item['item_target'] || $fileTarget != $item['file_target']) { - $query->execute(array($item['item_type'], - $item['item_source'], - $itemTarget, - $item['id'], - self::$shareTypeGroupUserUnique, - $arguments['uid'], - $item['uid_owner'], - $item['permissions'], - $item['stime'], - $item['file_source'], - $fileTarget)); + $query->execute(array($item['item_type'], $item['item_source'], $itemTarget, $item['id'], self::$shareTypeGroupUserUnique, $arguments['uid'], $item['uid_owner'], $item['permissions'], $item['stime'], $item['file_source'], $fileTarget)); \OC_DB::insertid('*PREFIX*share'); } } @@ -1603,15 +1242,8 @@ class Share { public static function post_removeFromGroup($arguments) { // TODO Don't call if user deleted? - $query = \OC_DB::prepare('SELECT `id`, `share_type`' - .' FROM `*PREFIX*share`' - .' WHERE (`share_type` = ? AND `share_with` = ?)' - .' OR (`share_type` = ? AND `share_with` = ?)'); - $result = $query->execute(array( - self::SHARE_TYPE_GROUP, - $arguments['gid'], - self::$shareTypeGroupUserUnique, - $arguments['uid'])); + $query = \OC_DB::prepare('SELECT `id`, `share_type` FROM `*PREFIX*share` WHERE (`share_type` = ? AND `share_with` = ?) OR (`share_type` = ? AND `share_with` = ?)'); + $result = $query->execute(array(self::SHARE_TYPE_GROUP, $arguments['gid'], self::$shareTypeGroupUserUnique, $arguments['uid'])); while ($item = $result->fetchRow()) { if ($item['share_type'] == self::SHARE_TYPE_GROUP) { // Delete all reshares by this user of the group share @@ -1668,13 +1300,10 @@ interface Share_Backend { * @param int Format * @return ? * - * The items array is a 3-dimensional array with the item_source as the first key - * and the share id as the second key to an array with the share info. + * The items array is a 3-dimensional array with the item_source as the first key and the share id as the second key to an array with the share info. * The key/value pairs included in the share info depend on the function originally called: - * If called by getItem(s)Shared: id, item_type, item, item_source, - * share_type, share_with, permissions, stime, file_source - * If called by getItem(s)SharedWith: id, item_type, item, item_source, - * item_target, share_type, share_with, permissions, stime, file_source, file_target + * If called by getItem(s)Shared: id, item_type, item, item_source, share_type, share_with, permissions, stime, file_source + * If called by getItem(s)SharedWith: id, item_type, item, item_source, item_target, share_type, share_with, permissions, stime, file_source, file_target * This function allows the backend to control the output of shared items with custom formats. * It is only called through calls to the public getItem(s)Shared(With) functions. */ @@ -1707,8 +1336,7 @@ interface Share_Backend_Collection extends Share_Backend { /** * @brief Get the sources of the children of the item * @param string Item source - * @return array Returns an array of children each inside an array with the keys: - * source, target, and file_path if applicable + * @return array Returns an array of children each inside an array with the keys: source, target, and file_path if applicable */ public function getChildren($itemSource); diff --git a/lib/public/util.php b/lib/public/util.php index 413dbcccd28..a78a52f326e 100644 --- a/lib/public/util.php +++ b/lib/public/util.php @@ -219,6 +219,28 @@ class Util { } /** + * @brief Returns the request uri + * @returns the request uri + * + * Returns the request uri, even if the website uses one or more + * reverse proxies + */ + public static function getRequestUri() { + return(\OC_Request::requestUri()); + } + + /** + * @brief Returns the script name + * @returns the script name + * + * Returns the script name, even if the website uses one or more + * reverse proxies + */ + public static function getScriptName() { + return(\OC_Request::scriptName()); + } + + /** * @brief Creates path to an image * @param string $app app * @param string $image image name diff --git a/lib/request.php b/lib/request.php index f2f15c21103..1661a1406ca 100755 --- a/lib/request.php +++ b/lib/request.php @@ -8,6 +8,15 @@ class OC_Request { /** + * @brief Check overwrite condition + * @returns true/false + */ + private static function isOverwriteCondition() { + $regex = '/' . OC_Config::getValue('overwritecondaddr', '') . '/'; + return $regex === '//' or preg_match($regex, $_SERVER['REMOTE_ADDR']) === 1; + } + + /** * @brief Returns the server host * @returns the server host * @@ -18,7 +27,7 @@ class OC_Request { if(OC::$CLI) { return 'localhost'; } - if(OC_Config::getValue('overwritehost', '')<>'') { + if(OC_Config::getValue('overwritehost', '')<>'' and self::isOverwriteCondition()) { return OC_Config::getValue('overwritehost'); } if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])) { @@ -43,7 +52,7 @@ class OC_Request { * Returns the server protocol. It respects reverse proxy servers and load balancers */ public static function serverProtocol() { - if(OC_Config::getValue('overwriteprotocol', '')<>'') { + if(OC_Config::getValue('overwriteprotocol', '')<>'' and self::isOverwriteCondition()) { return OC_Config::getValue('overwriteprotocol'); } if (isset($_SERVER['HTTP_X_FORWARDED_PROTO'])) { @@ -59,6 +68,38 @@ class OC_Request { } /** + * @brief Returns the request uri + * @returns the request uri + * + * Returns the request uri, even if the website uses one or more + * reverse proxies + */ + public static function requestUri() { + $uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : ''; + if (OC_Config::getValue('overwritewebroot', '') <> '' and self::isOverwriteCondition()) { + $uri = self::scriptName() . substr($uri, strlen($_SERVER['SCRIPT_NAME'])); + } + return $uri; + } + + /** + * @brief Returns the script name + * @returns the script name + * + * Returns the script name, even if the website uses one or more + * reverse proxies + */ + public static function scriptName() { + $name = $_SERVER['SCRIPT_NAME']; + if (OC_Config::getValue('overwritewebroot', '') <> '' and self::isOverwriteCondition()) { + $serverroot = str_replace("\\", '/', substr(__DIR__, 0, -4)); + $suburi = str_replace("\\", "/", substr(realpath($_SERVER["SCRIPT_FILENAME"]), strlen($serverroot))); + $name = OC_Config::getValue('overwritewebroot', '') . $suburi; + } + return $name; + } + + /** * @brief get Path info from request * @returns string Path info or false when not found */ diff --git a/lib/search.php b/lib/search.php index 3c3378ad13c..e5a65f7157d 100644 --- a/lib/search.php +++ b/lib/search.php @@ -57,6 +57,22 @@ class OC_Search{ } return $results; } + + /** + * remove an existing search provider + * @param string $provider class name of a OC_Search_Provider + */ + public static function removeProvider($provider) { + self::$registeredProviders = array_filter( + self::$registeredProviders, + function ($element) use ($provider) { + return ($element['class'] != $provider); + } + ); + // force regeneration of providers on next search + self::$providers=array(); + } + /** * create instances of all the registered search providers diff --git a/lib/search/provider/file.php b/lib/search/provider/file.php index ea536ef77de..4d88c2a87f1 100644 --- a/lib/search/provider/file.php +++ b/lib/search/provider/file.php @@ -2,7 +2,7 @@ class OC_Search_Provider_File extends OC_Search_Provider{ function search($query) { - $files=OC_FileCache::search($query, true); + $files=\OC\Files\Filesystem::search($query, true); $results=array(); $l=OC_L10N::get('lib'); foreach($files as $fileData) { diff --git a/lib/template.php b/lib/template.php index 238d8a8ad0f..fb9f7ad62d9 100644 --- a/lib/template.php +++ b/lib/template.php @@ -192,7 +192,7 @@ class OC_Template{ // Content Security Policy // If you change the standard policy, please also change it in config.sample.php - $policy = OC_Config::getValue('custom_csp_policy', 'default-src \'self\'; script-src \'self\' \'unsafe-eval\'; style-src \'self\' \'unsafe-inline\'; frame-src *; img-src *'); + $policy = OC_Config::getValue('custom_csp_policy', 'default-src \'self\'; script-src \'self\' \'unsafe-eval\'; style-src \'self\' \'unsafe-inline\'; frame-src *; img-src *; font-src \'self\' data:'); header('Content-Security-Policy:'.$policy); // Standard header('X-WebKit-CSP:'.$policy); // Older webkit browsers diff --git a/lib/user/database.php b/lib/user/database.php index 7deeb0c4697..8dfd9534a96 100644 --- a/lib/user/database.php +++ b/lib/user/database.php @@ -156,12 +156,23 @@ class OC_User_Database extends OC_User_Backend { public function getDisplayNames($search = '', $limit = null, $offset = null) { $displayNames = array(); $query = OC_DB::prepare('SELECT `uid`, `displayname` FROM `*PREFIX*users` WHERE LOWER(`displayname`) LIKE LOWER(?)', $limit, $offset);
- $result = $query->execute(array($search.'%'));
+ $result = $query->execute(array($search.'%')); $users = array();
- while ($row = $result->fetchRow()) { - $displayName = trim($row['displayname'], ' ');
- $displayNames[$row['uid']] = empty($displayName) ? $row['uid'] : $displayName;
- }
+ while ($row = $result->fetchRow()) {
+ $displayNames[$row['uid']] = $row['displayname'];
+ } + + // let's see if we can also find some users who don't have a display name yet + $query = OC_DB::prepare('SELECT `uid`, `displayname` FROM `*PREFIX*users` WHERE LOWER(`uid`) LIKE LOWER(?)', $limit, $offset);
+ $result = $query->execute(array($search.'%')); + while ($row = $result->fetchRow()) {
+ $displayName = trim($row['displayname'], ' '); + if ( empty($displayName) ) {
+ $displayNames[$row['uid']] = $row['uid']; + }
+ } + +
return $displayNames;
} diff --git a/lib/util.php b/lib/util.php index 0543df979d3..363e3f105c0 100755 --- a/lib/util.php +++ b/lib/util.php @@ -39,7 +39,7 @@ class OC_Util { $CONFIG_DATADIRECTORY = OC_Config::getValue( "datadirectory", OC::$SERVERROOT."/data" ); //first set up the local "root" storage if(!self::$rootMounted) { - OC_Filesystem::mount('OC_Filestorage_Local', array('datadir'=>$CONFIG_DATADIRECTORY), '/'); + \OC\Files\Filesystem::mount('\OC\Files\Storage\Local', array('datadir'=>$CONFIG_DATADIRECTORY), '/'); self::$rootMounted=true; } @@ -51,51 +51,30 @@ class OC_Util { mkdir( $userdirectory, 0755, true ); } //jail the user into his "home" directory - OC_Filesystem::mount('OC_Filestorage_Local', array('datadir' => $user_root), $user); - OC_Filesystem::init($user_dir, $user); + \OC\Files\Filesystem::init($user_dir); + $quotaProxy=new OC_FileProxy_Quota(); $fileOperationProxy = new OC_FileProxy_FileOperations(); OC_FileProxy::register($quotaProxy); OC_FileProxy::register($fileOperationProxy); - // Load personal mount config - self::loadUserMountPoints($user); + OC_Hook::emit('OC_Filesystem', 'setup', array('user' => $user, 'user_dir' => $user_dir)); } + return true; } public static function tearDownFS() { - OC_Filesystem::tearDown(); + \OC\Files\Filesystem::tearDown(); self::$fsSetup=false; } - public static function loadUserMountPoints($user) { - $user_dir = '/'.$user.'/files'; - $user_root = OC_User::getHome($user); - $userdirectory = $user_root . '/files'; - if (is_file($user_root.'/mount.php')) { - $mountConfig = include $user_root.'/mount.php'; - if (isset($mountConfig['user'][$user])) { - foreach ($mountConfig['user'][$user] as $mountPoint => $options) { - OC_Filesystem::mount($options['class'], $options['options'], $mountPoint); - } - } - - $mtime=filemtime($user_root.'/mount.php'); - $previousMTime=OC_Preferences::getValue($user, 'files', 'mountconfigmtime', 0); - if($mtime>$previousMTime) {//mount config has changed, filecache needs to be updated - OC_FileCache::triggerUpdate($user); - OC_Preferences::setValue($user, 'files', 'mountconfigmtime', $mtime); - } - } - } - /** * get the current installed version of ownCloud * @return array */ public static function getVersion() { // hint: We only can count up. So the internal version number of ownCloud 4.5 will be 4.90.0. This is not visible to the user - return array(4, 91, 03); + return array(4, 91, 9); } /** @@ -157,14 +136,14 @@ class OC_Util { * @param string $text the text content for the element */ public static function addHeader( $tag, $attributes, $text='') { - self::$headers[]=array('tag'=>$tag,'attributes'=>$attributes, 'text'=>$text); + self::$headers[] = array('tag'=>$tag, 'attributes'=>$attributes, 'text'=>$text); } /** * formats a timestamp in the "right" way * * @param int timestamp $timestamp - * @param bool dateOnly option to ommit time from the result + * @param bool dateOnly option to omit time from the result */ public static function formatDate( $timestamp, $dateOnly=false) { if(isset($_SESSION['timezone'])) {//adjust to clients timezone if we know it @@ -207,45 +186,20 @@ class OC_Util { in owncloud or disabling the appstore in the config file."); } } - $CONFIG_DATADIRECTORY = OC_Config::getValue( "datadirectory", OC::$SERVERROOT."/data" ); - //check for correct file permissions - if(!stristr(PHP_OS, 'WIN')) { - $permissionsModHint="Please change the permissions to 0770 so that the directory cannot be listed by other users."; - $prems=substr(decoct(@fileperms($CONFIG_DATADIRECTORY)), -3); - if(substr($prems, -1)!='0') { - OC_Helper::chmodr($CONFIG_DATADIRECTORY, 0770); - clearstatcache(); - $prems=substr(decoct(@fileperms($CONFIG_DATADIRECTORY)), -3); - if(substr($prems, 2, 1)!='0') { - $errors[]=array('error'=>'Data directory ('.$CONFIG_DATADIRECTORY.') is readable for other users<br/>', 'hint'=>$permissionsModHint); - } - } - if( OC_Config::getValue( "enablebackup", false )) { - $CONFIG_BACKUPDIRECTORY = OC_Config::getValue( "backupdirectory", OC::$SERVERROOT."/backup" ); - $prems=substr(decoct(@fileperms($CONFIG_BACKUPDIRECTORY)), -3); - if(substr($prems, -1)!='0') { - OC_Helper::chmodr($CONFIG_BACKUPDIRECTORY, 0770); - clearstatcache(); - $prems=substr(decoct(@fileperms($CONFIG_BACKUPDIRECTORY)), -3); - if(substr($prems, 2, 1)!='0') { - $errors[]=array('error'=>'Data directory ('.$CONFIG_BACKUPDIRECTORY.') is readable for other users<br/>', 'hint'=>$permissionsModHint); - } - } - } - }else{ - //TODO: permissions checks for windows hosts - } // Create root dir. if(!is_dir($CONFIG_DATADIRECTORY)) { $success=@mkdir($CONFIG_DATADIRECTORY); - if(!$success) { + if ($success) { + $errors = array_merge($errors, self::checkDataDirectoryPermissions($CONFIG_DATADIRECTORY)); + } else { $errors[]=array('error'=>"Can't create data directory (".$CONFIG_DATADIRECTORY.")", 'hint'=>"You can usually fix this by giving the webserver write access to the ownCloud directory '".OC::$SERVERROOT."' (in a terminal, use the command 'chown -R www-data:www-data /path/to/your/owncloud/install/data' "); } } else if(!is_writable($CONFIG_DATADIRECTORY) or !is_readable($CONFIG_DATADIRECTORY)) { $errors[]=array('error'=>'Data directory ('.$CONFIG_DATADIRECTORY.') not writable by ownCloud<br/>', 'hint'=>$permissionsHint); + } else { + $errors = array_merge($errors, self::checkDataDirectoryPermissions($CONFIG_DATADIRECTORY)); } - // check if all required php modules are present if(!class_exists('ZipArchive')) { $errors[]=array('error'=>'PHP module zip not installed.<br/>', 'hint'=>'Please ask your server administrator to install the module.'); @@ -289,6 +243,17 @@ class OC_Util { $web_server_restart= false; } + $handler = ini_get("session.save_handler"); + if($handler == "files") { + $tmpDir = session_save_path(); + if($tmpDir != ""){ + if(!@is_writable($tmpDir)){ + $errors[]=array('error' => 'The temporary folder used by PHP to save the session data is either incorrect or not writable! Please check : '.session_save_path().'<br/>', + 'hint'=>'Please ask your server administrator to grant write access or define another temporary folder.'); + } + } + } + if($web_server_restart) { $errors[]=array('error'=>'PHP modules have been installed, but they are still listed as missing?<br/>', 'hint'=>'Please ask your server administrator to restart the web server.'); } @@ -296,6 +261,29 @@ class OC_Util { return $errors; } + /** + * Check for correct file permissions of data directory + * @return array arrays with error messages and hints + */ + public static function checkDataDirectoryPermissions($dataDirectory) { + $errors = array(); + if (stristr(PHP_OS, 'WIN')) { + //TODO: permissions checks for windows hosts + } else { + $permissionsModHint = 'Please change the permissions to 0770 so that the directory cannot be listed by other users.'; + $prems = substr(decoct(@fileperms($dataDirectory)), -3); + if (substr($prems, -1) != '0') { + OC_Helper::chmodr($dataDirectory, 0770); + clearstatcache(); + $prems = substr(decoct(@fileperms($dataDirectory)), -3); + if (substr($prems, 2, 1) != '0') { + $errors[] = array('error' => 'Data directory ('.$dataDirectory.') is readable for other users<br/>', 'hint' => $permissionsModHint); + } + } + } + return $errors; + } + public static function displayLoginPage($errors = array()) { $parameters = array(); foreach( $errors as $key => $value ) { @@ -333,7 +321,7 @@ class OC_Util { public static function checkLoggedIn() { // Check if we are a user if( !OC_User::isLoggedIn()) { - header( 'Location: '.OC_Helper::linkToAbsolute( '', 'index.php', array('redirect_url' => $_SERVER["REQUEST_URI"]))); + header( 'Location: '.OC_Helper::linkToAbsolute( '', 'index.php', array('redirect_url' => OC_Request::requestUri()))); exit(); } } @@ -398,6 +386,17 @@ class OC_Util { } /** + * @brief Static lifespan (in seconds) when a request token expires. + * @see OC_Util::callRegister() + * @see OC_Util::isCallRegistered() + * @description + * Also required for the client side to compute the piont in time when to + * request a fresh token. The client will do so when nearly 97% of the + * timespan coded here has expired. + */ + public static $callLifespan = 3600; // 3600 secs = 1 hour + + /** * @brief Register an get/post call. Important to prevent CSRF attacks. * @todo Write howto: CSRF protection guide * @return $token Generated token. @@ -405,6 +404,8 @@ class OC_Util { * Creates a 'request token' (random) and stores it inside the session. * Ever subsequent (ajax) request must use such a valid token to succeed, * otherwise the request will be denied as a protection against CSRF. + * The tokens expire after a fixed lifespan. + * @see OC_Util::$callLifespan * @see OC_Util::isCallRegistered() */ public static function callRegister() { @@ -423,6 +424,7 @@ class OC_Util { /** * @brief Check an ajax get/post call if the request token is valid. * @return boolean False if request token is not set or is invalid. + * @see OC_Util::$callLifespan * @see OC_Util::callRegister() */ public static function isCallRegistered() { diff --git a/ocs/providers.php b/ocs/providers.php index 0c7cbaeff08..bf94b85dcfb 100644 --- a/ocs/providers.php +++ b/ocs/providers.php @@ -23,7 +23,7 @@ require_once '../lib/base.php'; -$url=OCP\Util::getServerProtocol().'://'.substr(OCP\Util::getServerHost().$_SERVER['REQUEST_URI'], 0, -17).'ocs/v1.php/'; +$url=OCP\Util::getServerProtocol().'://'.substr(OCP\Util::getServerHost().OCP\Util::getRequestUri(), 0, -17).'ocs/v1.php/'; echo(' <providers> diff --git a/settings/ajax/apps/ocs.php b/settings/ajax/apps/ocs.php index 1ffba26ad1d..d0205a1ba34 100644 --- a/settings/ajax/apps/ocs.php +++ b/settings/ajax/apps/ocs.php @@ -44,6 +44,11 @@ if(is_array($catagoryNames)) { } else { $pre=$app['preview']; } + if($app['label']=='recommended') { + $label='3rd Party App'; + } else { + $label='Recommended'; + } $apps[]=array( 'name'=>$app['name'], 'id'=>$app['id'], @@ -53,7 +58,8 @@ if(is_array($catagoryNames)) { 'license'=>$app['license'], 'preview'=>$pre, 'internal'=>false, - 'internallabel'=>'3rd Party App', + 'internallabel'=>$label, + 'update'=>false, ); } } diff --git a/settings/ajax/updateapp.php b/settings/ajax/updateapp.php new file mode 100644 index 00000000000..77c0bbc3e36 --- /dev/null +++ b/settings/ajax/updateapp.php @@ -0,0 +1,17 @@ +<?php + +OC_JSON::checkAdminUser(); +OCP\JSON::callCheck(); + +$appid = $_POST['appid']; + +$result = OC_Installer::updateApp($appid); +if($result !== false) { + OC_JSON::success(array('data' => array('appid' => $appid))); +} else { + $l = OC_L10N::get('settings'); + OC_JSON::error(array("data" => array( "message" => $l->t("Couldn't update app.") ))); +} + + + diff --git a/settings/apps.php b/settings/apps.php index b6426a31c97..b9ed2cac93a 100644 --- a/settings/apps.php +++ b/settings/apps.php @@ -31,13 +31,17 @@ OC_App::setActiveNavigationEntry( "core_apps" ); function app_sort( $a, $b ) { if ($a['active'] != $b['active']) { - + return $b['active'] - $a['active']; - + + } + + if ($a['internal'] != $b['internal']) { + return $b['internal'] - $a['internal']; } - + return strcmp($a['name'], $b['name']); - + } $combinedApps = OC_App::listAllApps(); @@ -52,3 +56,4 @@ $appid = (isset($_GET['appid'])?strip_tags($_GET['appid']):''); $tmpl->assign('appid', $appid); $tmpl->printPage(); + diff --git a/settings/css/settings.css b/settings/css/settings.css index 4d0f6efd2c8..5a3ab2c6e97 100644 --- a/settings/css/settings.css +++ b/settings/css/settings.css @@ -22,13 +22,13 @@ form { display:inline; } table:not(.nostyle) th { height:2em; color:#999; } table:not(.nostyle) th, table:not(.nostyle) td { border-bottom:1px solid #ddd; padding:0 .5em; padding-left:.8em; text-align:left; font-weight:normal; } td.name, td.password { padding-left:.8em; } -td.password>img, td.remove>a, td.quota>img { visibility:hidden; } -td.password, td.quota { width:12em; cursor:pointer; } -td.password>span, td.quota>span { margin-right: 1.2em; color: #C7C7C7; } +td.password>img,td.displayName>img, td.remove>a, td.quota>img { visibility:hidden; } +td.password, td.quota, td.displayName { width:12em; cursor:pointer; } +td.password>span, td.quota>span, rd.displayName>span { margin-right: 1.2em; color: #C7C7C7; } td.remove { width:1em; padding-right:1em; } -tr:hover>td.password>span { margin:0; cursor:pointer; } -tr:hover>td.remove>a, tr:hover>td.password>img, tr:hover>td.quota>img { visibility:visible; cursor:pointer; } +tr:hover>td.password>span, tr:hover>td.displayName>span { margin:0; cursor:pointer; } +tr:hover>td.remove>a, tr:hover>td.password>img,tr:hover>td.displayName>img, tr:hover>td.quota>img { visibility:visible; cursor:pointer; } tr:hover>td.remove>a { float:right; } li.selected { background-color:#ddd; } #content>table:not(.nostyle) { margin-top:3em; } @@ -36,7 +36,7 @@ table:not(.nostyle) { width:100%; } #rightcontent { padding-left: 1em; } div.quota { float:right; display:block; position:absolute; right:25em; top:0; } div.quota-select-wrapper { position: relative; } -select.quota { position:absolute; left:0; top:0; width:10em; } +select.quota { position:absolute; left:0; top:0.5em; width:10em; } select.quota-user { position:relative; left:0; top:0; width:10em; } input.quota-other { display:none; position:absolute; left:0.1em; top:0.1em; width:7em; border:none; box-shadow:none; } div.quota>span { position:absolute; right:0; white-space:nowrap; top:.7em; color:#888; text-shadow:0 1px 0 #fff; } @@ -50,10 +50,13 @@ li { color:#888; } li.active { color:#000; } small.externalapp { color:#FFF; background-color:#BBB; font-weight:bold; font-size: 0.6em; margin: 0; padding: 0.1em 0.2em; border-radius: 4px;} small.externalapp.list { float: right; } +small.recommendedapp { color:#FFF; background-color:#888; font-weight:bold; font-size: 0.6em; margin: 0; padding: 0.1em 0.2em; border-radius: 4px;} +small.recommendedapp.list { float: right; } span.version { margin-left:1em; margin-right:1em; color:#555; } .app { position: relative; display: inline-block; padding: 0.2em 0 0.2em 0 !important; text-overflow: hidden; overflow: hidden; white-space: nowrap; /*transition: .2s max-width linear; -o-transition: .2s max-width linear; -moz-transition: .2s max-width linear; -webkit-transition: .2s max-width linear; -ms-transition: .2s max-width linear;*/ } -.app.externalapp { max-width: 12.5em; z-index: 100; } +.app.externalapp { max-width: 12.5em; } +.app.recommendedapp { max-width: 12.5em; } /* Transition to complete width! */ .app:hover, .app:active { max-width: inherit; } diff --git a/settings/img/admin.png b/settings/img/admin.png Binary files differindex 13d653f92a8..d883f0b61a3 100644 --- a/settings/img/admin.png +++ b/settings/img/admin.png diff --git a/settings/img/admin.svg b/settings/img/admin.svg index b3c4a32451d..1ea226231b3 100644 --- a/settings/img/admin.svg +++ b/settings/img/admin.svg @@ -14,9 +14,9 @@ width="16" height="16" id="svg11300" - inkscape:version="0.48.1 r9760" - sodipodi:docname="apps.svg" - inkscape:export-filename="/home/jancborchardt/jancborchardt/ownCloud/icons/apps.png" + inkscape:version="0.48.3.1 r9886" + sodipodi:docname="admin.svg" + inkscape:export-filename="admin.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90"> <metadata @@ -41,16 +41,16 @@ inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1280" - inkscape:window-height="776" + inkscape:window-height="745" id="namedview24" showgrid="true" showguides="true" inkscape:guide-bbox="true" - inkscape:zoom="32.000001" - inkscape:cx="8.0537858" - inkscape:cy="6.4773881" + inkscape:zoom="16.000001" + inkscape:cx="0.93200388" + inkscape:cy="4.680543" inkscape:window-x="0" - inkscape:window-y="24" + inkscape:window-y="27" inkscape:window-maximized="1" inkscape:current-layer="g4146"> <inkscape:grid @@ -2005,36 +2005,6 @@ <linearGradient inkscape:collect="always" xlink:href="#linearGradient3587-6-5-86-0" - id="linearGradient4907" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4651163,0,0,0.3370786,4.3953488,5.5842706)" - x1="11" - y1="6" - x2="11" - y2="17" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-86-0" - id="linearGradient4911" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4651163,0,0,0.3370786,4.3953488,9.58427)" - x1="11" - y1="6" - x2="11" - y2="17" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-86-0" - id="linearGradient4915" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.4651163,0,0,0.3370786,4.3953488,1.5842703)" - x1="11" - y1="6" - x2="11" - y2="17" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-86-0" id="linearGradient4919" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.2727273,0,0,0.375,9.636365,1.5)" @@ -2074,16 +2044,6 @@ xlink:href="#linearGradient3587-6-5-86-0-6" inkscape:collect="always" /> <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3587-6-5-86-0" - id="linearGradient5057" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.2727273,0,0,0.375,9.636365,1.5)" - x1="1.3333321" - y1="6.6666665" - x2="1.3333321" - y2="33.333332" /> - <linearGradient id="linearGradient3587-6-5-86-0-9"> <stop id="stop3589-9-2-65-9-6" @@ -2155,60 +2115,14 @@ style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1" /> <g id="g4146"> - <g - transform="translate(0,1)" - id="g5059-3" - style="fill:#ffffff;fill-opacity:1;opacity:0.6"> - <path - inkscape:connector-curvature="0" - id="path2407-9-6" - d="m 6,4 0,1 8,0 0,-1 -8,0 z m 0,4 0,1 8,0 0,-1 -8,0 z m 0,4 0,1 8,0 0,-1 -8,0 z" - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.69999999999999996;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.99999994000000003;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" /> - <rect - style="opacity:0.69999999999999996;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" - id="rect3728-0-5" - y="3" - x="2" - height="3" - width="3" /> - <path - inkscape:connector-curvature="0" - id="rect2434-2" - d="m 2,11 0,3 3,0 0,-3 -3,0 z m 1,1 1,0 0,1 -1,0 0,-1 z" - style="opacity:0.69999999999999996;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> - <rect - style="opacity:0.69999999999999996;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" - id="rect2440-8" - y="7" - x="2" - height="3" - width="3" /> - </g> - <g - id="g5059"> - <path - inkscape:connector-curvature="0" - id="path2407-9" - d="m 6,4 0,1 8,0 0,-1 -8,0 z m 0,4 0,1 8,0 0,-1 -8,0 z m 0,4 0,1 8,0 0,-1 -8,0 z" - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.7;color:#000000;fill:url(#linearGradient5057);fill-opacity:1;stroke:none;stroke-width:0.99999994;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" /> - <rect - style="opacity:0.7;fill:url(#linearGradient4915);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" - id="rect3728-0" - y="3" - x="2" - height="3" - width="3" /> - <path - id="rect2434" - d="M 2 11 L 2 14 L 5 14 L 5 11 L 2 11 z M 3 12 L 4 12 L 4 13 L 3 13 L 3 12 z " - style="opacity:0.69999999999999996;fill:url(#linearGradient4911);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> - <rect - style="opacity:0.7;fill:url(#linearGradient4907);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" - id="rect2440" - y="7" - x="2" - height="3" - width="3" /> - </g> + <path + id="path7671" + d="M 2,2 2,5 5,5 5,2 2,2 z M 6,3 6,4 14,4 14,3 6,3 z M 2,6 2,9 5,9 5,6 2,6 z m 4,1 0,1 8,0 0,-1 -8,0 z m -4,3 0,3 3,0 0,-3 -3,0 z m 1,1 1,0 0,1 -1,0 0,-1 z m 3,0 0,1 8,0 0,-1 -8,0 z" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994000000003;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" + inkscape:connector-curvature="0" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:1;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.99999994000000003;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" + d="M 2 3 L 2 6 L 5 6 L 5 3 L 2 3 z M 6 4 L 6 5 L 14 5 L 14 4 L 6 4 z M 2 7 L 2 10 L 5 10 L 5 7 L 2 7 z M 6 8 L 6 9 L 14 9 L 14 8 L 6 8 z M 2 11 L 2 14 L 5 14 L 5 11 L 2 11 z M 3 12 L 4 12 L 4 13 L 3 13 L 3 12 z M 6 12 L 6 13 L 14 13 L 14 12 L 6 12 z " + id="path2407-9" /> </g> </svg> diff --git a/settings/img/apps.png b/settings/img/apps.png Binary files differindex e9845d012be..de5ccbd2c5f 100644 --- a/settings/img/apps.png +++ b/settings/img/apps.png diff --git a/settings/img/apps.svg b/settings/img/apps.svg index cda246bc4a8..d3415921209 100644 --- a/settings/img/apps.svg +++ b/settings/img/apps.svg @@ -14,9 +14,9 @@ width="16" height="16" id="svg11300" - inkscape:version="0.48.1 r9760" - sodipodi:docname="file.svg" - inkscape:export-filename="/home/jancborchardt/jancborchardt/ownCloud/icons/file.png" + inkscape:version="0.48.3.1 r9886" + sodipodi:docname="apps.svg" + inkscape:export-filename="apps.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90"> <metadata @@ -41,16 +41,16 @@ inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1280" - inkscape:window-height="776" + inkscape:window-height="745" id="namedview24" showgrid="true" showguides="true" inkscape:guide-bbox="true" inkscape:zoom="16.000001" - inkscape:cx="-1.1375545" + inkscape:cx="-11.700054" inkscape:cy="5.0070539" inkscape:window-x="0" - inkscape:window-y="24" + inkscape:window-y="27" inkscape:window-maximized="1" inkscape:current-layer="g4146"> <inkscape:grid @@ -2100,65 +2100,14 @@ style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1" /> <g id="g4146"> - <g - id="g4811" - transform="translate(0,1)"> - <g - style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:none" - id="g5023-6"> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.7;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" - d="m 10,3 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 z" - id="rect3187-0" - inkscape:connector-curvature="0" - sodipodi:nodetypes="ccccccccccccc" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.7;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" - d="M 2,3 2,3.5 2,6.5 2,7 2.5,7 5.5,7 6,7 6,6.5 6,3.5 6,3 5.5,3 2.5,3 z" - id="rect3201-0" - inkscape:connector-curvature="0" - sodipodi:nodetypes="ccccccccccccc" /> - <path - inkscape:connector-curvature="0" - id="rect3205-6" - transform="translate(0,1)" - d="m 10,9 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.5,0 z m 1,1 2,0 0,2 -2,0 0,-2 z" - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.7;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.7;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" - d="m 2,10 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 z" - id="rect3209-4" - inkscape:connector-curvature="0" - sodipodi:nodetypes="ccccccccccccc" /> - </g> - <g - transform="translate(0,-1)" - id="g5023"> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.7;color:#000000;fill:url(#linearGradient4823);fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" - d="m 10,3 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 z" - id="rect3187" - inkscape:connector-curvature="0" - sodipodi:nodetypes="ccccccccccccc" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.7;color:#000000;fill:url(#linearGradient4825);fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" - d="M 2,3 2,3.5 2,6.5 2,7 2.5,7 5.5,7 6,7 6,6.5 6,3.5 6,3 5.5,3 2.5,3 z" - id="rect3201" - inkscape:connector-curvature="0" - sodipodi:nodetypes="ccccccccccccc" /> - <path - inkscape:connector-curvature="0" - id="rect3205" - transform="translate(0,1)" - d="m 10,9 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.5,0 z m 1,1 2,0 0,2 -2,0 0,-2 z" - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.7;color:#000000;fill:url(#linearGradient4827);fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.7;color:#000000;fill:url(#linearGradient4829);fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" - d="m 2,10 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 z" - id="rect3209" - inkscape:connector-curvature="0" - sodipodi:nodetypes="ccccccccccccc" /> - </g> - </g> + <path + id="path7131" + d="M 2,2 2,2.5 2,5.5 2,6 2.5,6 5.5,6 6,6 6,5.5 6,2.5 6,2 5.5,2 2.5,2 2,2 z m 8,0 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.5,0 z m -8,7 0,0.5 0,3 0,0.5 0.5,0 3,0 L 6,13 6,12.5 6,9.5 6,9 5.5,9 2.5,9 2,9 z m 8,0 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.5,0 z m 1,1 2,0 0,2 -2,0 0,-2 z" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" + inkscape:connector-curvature="0" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:1;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" + d="M 2 3 L 2 3.5 L 2 6.5 L 2 7 L 2.5 7 L 5.5 7 L 6 7 L 6 6.5 L 6 3.5 L 6 3 L 5.5 3 L 2.5 3 L 2 3 z M 10 3 L 10 3.5 L 10 6.5 L 10 7 L 10.5 7 L 13.5 7 L 14 7 L 14 6.5 L 14 3.5 L 14 3 L 13.5 3 L 10.5 3 L 10 3 z M 2 10 L 2 10.5 L 2 13.5 L 2 14 L 2.5 14 L 5.5 14 L 6 14 L 6 13.5 L 6 10.5 L 6 10 L 5.5 10 L 2.5 10 L 2 10 z M 10 10 L 10 10.5 L 10 13.5 L 10 14 L 10.5 14 L 13.5 14 L 14 14 L 14 13.5 L 14 10.5 L 14 10 L 13.5 10 L 10.5 10 L 10 10 z M 11 11 L 13 11 L 13 13 L 11 13 L 11 11 z " + id="rect3187" /> </g> </svg> diff --git a/settings/img/help.png b/settings/img/help.png Binary files differindex 37ccb356830..c0200096735 100644 --- a/settings/img/help.png +++ b/settings/img/help.png diff --git a/settings/img/help.svg b/settings/img/help.svg index 1e07aed8527..55b68e6baf2 100644 --- a/settings/img/help.svg +++ b/settings/img/help.svg @@ -14,9 +14,9 @@ width="16" height="16" id="svg11300" - inkscape:version="0.48.1 r9760" - sodipodi:docname="users.svg" - inkscape:export-filename="/home/jancborchardt/jancborchardt/ownCloud/icons/users.png" + inkscape:version="0.48.3.1 r9886" + sodipodi:docname="help.svg" + inkscape:export-filename="help.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90"> <metadata @@ -41,16 +41,16 @@ inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1280" - inkscape:window-height="776" + inkscape:window-height="745" id="namedview24" showgrid="true" showguides="true" inkscape:guide-bbox="true" inkscape:zoom="22.627418" - inkscape:cx="14.025105" + inkscape:cx="6.55629" inkscape:cy="9.2202448" inkscape:window-x="0" - inkscape:window-y="24" + inkscape:window-y="27" inkscape:window-maximized="1" inkscape:current-layer="g4146"> <inkscape:grid @@ -1712,16 +1712,6 @@ style="stop-color:#363636;stop-opacity:1" offset="1" /> </linearGradient> - <linearGradient - y2="28.776533" - x2="0.44923753" - y1="13.895414" - x1="0.86849999" - gradientTransform="matrix(1.0344828,0,0,1.0344828,8.0707628,-14.513825)" - gradientUnits="userSpaceOnUse" - id="linearGradient3456" - xlink:href="#linearGradient3587-6-5-4" - inkscape:collect="always" /> </defs> <g transform="matrix(0.78786264,0,0,0.78786264,-3.1483699,0.44173984)" @@ -1740,19 +1730,15 @@ style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1" /> <g id="g4146"> - <g - id="g4314" - transform="matrix(1.0000288,0,0,1,-0.14973031,7.5119235e-7)"> - <path - d="M 5.149582,8.4745445 C 5.3049331,8.8555559 5.4749951,9.1626038 5.7940692,8.7203676 6.2006678,8.4518873 7.5528003,7.2925123 7.4556978,8.3783304 7.0875579,10.395217 6.6215241,12.395026 6.2845924,14.416813 5.892954,15.532242 6.9195772,16.485144 7.9224991,15.729405 9.0003636,15.226276 9.9139828,14.440939 10.850418,13.716521 10.706075,13.39458 10.599944,12.928009 10.253582,13.370754 9.7853152,13.60987 8.7844663,14.688222 8.5572925,13.841548 8.8726653,11.661003 9.5328233,9.5467073 9.9227187,7.3804227 10.320459,6.3755023 9.5582449,5.1570833 8.5229975,6.0170334 7.266481,6.6343485 6.2334577,7.6013759 5.149582,8.4745445 z M 9.6088759,1.0026758 C 8.3013694,0.98534052 7.7033019,3.148247 8.9661979,3.6822119 9.9886006,4.0601787 11.042606,2.968368 10.755649,1.9317924 10.657925,1.3899396 10.158361,0.96201137 9.6088769,1.0026758 l -1e-6,0 z" - id="path3536-8" - style="font-size:40px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:none;font-family:URW Palladio L;-inkscape-font-specification:URW Palladio L Bold" - inkscape:connector-curvature="0" /> - <path - d="M 5.149582,7.4745451 C 5.3049334,7.8555565 5.4749951,8.1626045 5.7940689,7.7203682 6.2006672,7.4518879 7.5527994,6.292513 7.4556976,7.378331 7.0875583,9.3952173 6.6215238,11.395026 6.2845927,13.416813 5.8929541,14.532242 6.9195769,15.485145 7.9224987,14.729405 9.0003636,14.226276 9.9139826,13.440939 10.850418,12.716521 10.706076,12.394581 10.599945,11.928009 10.253583,12.370754 9.7853157,12.60987 8.784467,13.688222 8.5572925,12.841549 8.872666,10.661003 9.5328233,8.5467079 9.9227188,6.3804233 10.32046,5.3755029 9.5582457,4.1570839 8.5229973,5.017034 7.2664804,5.6343492 6.2334583,6.6013765 5.149582,7.4745451 z M 9.6088764,0.00267653 C 8.3013697,-0.01465929 7.7033021,2.1482476 8.9661977,2.6822125 9.9886009,3.0601794 11.042605,1.9683686 10.755649,0.93179313 10.657922,0.38994033 10.158361,-0.03798791 9.6088774,0.00267653 l -1e-6,0 z" - id="path3536" - style="font-size:40px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;opacity:0.7;fill:url(#linearGradient3456);fill-opacity:1;stroke:none;font-family:URW Palladio L;-inkscape-font-specification:URW Palladio L Bold" - inkscape:connector-curvature="0" /> - </g> + <path + d="M 5,7.4745455 C 5.1553559,7.8555569 5.3254225,8.1626049 5.6445055,7.7203686 6.0511155,7.4518883 7.4032866,6.2925134 7.306182,7.3783314 6.9380321,9.3952173 6.4719842,11.395026 6.1350434,13.416813 5.7433935,14.532242 6.7700459,15.485145 7.7729966,14.729405 8.8508925,14.226276 9.7645378,13.440939 10.701,12.716521 10.556654,12.394581 10.45052,11.928009 10.104148,12.370754 9.6358672,12.60987 8.6349897,13.688222 8.4078086,12.841549 8.7231912,10.661003 9.3833675,8.5467083 9.7732743,6.3804237 10.171027,5.3755033 9.4087907,4.1570843 8.3735125,5.0170344 7.1169594,5.6343496 6.0839075,6.6013769 5,7.4745455 z M 9.4594228,0.00267693 C 8.1518785,-0.01465888 7.5537936,2.148248 8.8167256,2.6822129 9.8391583,3.0601798 10.893193,1.968369 10.606228,0.93179353 10.508499,0.38994073 10.008923,-0.0379875 9.4594238,0.00267693 l -10e-7,0 z" + id="path6558" + style="font-size:40px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:URW Palladio L;-inkscape-font-specification:URW Palladio L Bold" + inkscape:connector-curvature="0" /> + <path + inkscape:connector-curvature="0" + style="font-size:40px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;font-family:URW Palladio L;-inkscape-font-specification:URW Palladio L Bold" + id="path3536" + d="M 5,8.4745452 C 5.1553559,8.8555566 5.3254225,9.1626046 5.6445055,8.7203683 6.0511155,8.451888 7.4032866,7.2925131 7.306182,8.3783311 6.9380321,10.395217 6.4719842,12.395026 6.1350434,14.416813 5.7433935,15.532242 6.7700459,16.485145 7.7729966,15.729405 8.8508925,15.226276 9.7645378,14.440939 10.701,13.716521 10.556654,13.394581 10.45052,12.928009 10.104148,13.370754 9.6358672,13.60987 8.6349897,14.688222 8.4078086,13.841549 8.7231912,11.661003 9.3833675,9.546708 9.7732743,7.3804234 10.171027,6.375503 9.4087907,5.157084 8.3735125,6.0170341 7.1169594,6.6343493 6.0839075,7.6013766 5,8.4745452 z M 9.4594228,1.0026766 C 8.1518785,0.98534079 7.5537936,3.1482477 8.8167256,3.6822126 9.8391583,4.0601795 10.893193,2.9683687 10.606228,1.9317932 10.508499,1.3899404 10.008923,0.96201217 9.4594238,1.0026766 l -10e-7,0 z" /> </g> </svg> diff --git a/settings/img/personal.png b/settings/img/personal.png Binary files differindex 8edc5a16cd6..c80fed1b62b 100644 --- a/settings/img/personal.png +++ b/settings/img/personal.png diff --git a/settings/img/personal.svg b/settings/img/personal.svg index 61318619993..2f3a77d07a2 100644 --- a/settings/img/personal.svg +++ b/settings/img/personal.svg @@ -14,9 +14,9 @@ width="16" height="16" id="svg11300" - inkscape:version="0.48.1 r9760" - sodipodi:docname="image.svg" - inkscape:export-filename="/home/jancborchardt/jancborchardt/ownCloud/icons/image.png" + inkscape:version="0.48.3.1 r9886" + sodipodi:docname="personal.svg" + inkscape:export-filename="personal.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90"> <metadata @@ -41,16 +41,16 @@ inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1280" - inkscape:window-height="776" + inkscape:window-height="745" id="namedview24" showgrid="true" showguides="true" inkscape:guide-bbox="true" inkscape:zoom="22.627418" - inkscape:cx="14.025105" + inkscape:cx="6.55629" inkscape:cy="9.2202448" inkscape:window-x="0" - inkscape:window-y="24" + inkscape:window-y="27" inkscape:window-maximized="1" inkscape:current-layer="g4146"> <inkscape:grid @@ -1698,27 +1698,17 @@ style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1" /> <g id="g4146"> - <g - id="g4131" - transform="translate(2,40)"> - <g - style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1" - id="g3743-9" - transform="matrix(0.99998873,0,0,0.99998873,-3.9960435,-40.001608)"> - <path - sodipodi:nodetypes="sccccsscscsscccccccsccscscsscccss" - inkscape:connector-curvature="0" - d="M 8,1 C 6.3769202,1 5,2.1869577 5,3.71875 5.011517,4.2029062 5.05482,4.7999354 5.34375,6.0625 l 0,0.03125 L 5.375,6.125 C 5.467756,6.3906733 5.6027279,6.5426488 5.78125,6.75 5.9597721,6.9573512 6.1726069,7.2014001 6.375,7.40625 6.398811,7.43035 6.414077,7.445288 6.4375,7.46875 6.47764,7.6434131 6.52626,7.8313866 6.5625,8 6.65892,8.4486073 6.64903,8.7662912 6.625,8.875 5.9275445,9.1198852 5.0598384,9.4115215 4.28125,9.75 3.8441326,9.9400296 3.4485889,10.109721 3.125,10.3125 c -0.3235889,0.202779 -0.6454015,0.355982 -0.75,0.8125 -0.0013,0.02081 -0.0013,0.04169 0,0.0625 -0.1022115,0.938479 -0.2568187,2.318515 -0.375,3.25 -0.025515,0.196074 0.077832,0.402768 0.25,0.5 C 3.6636791,15.701111 5.8352555,16.008445 8,16 c 2.164744,-0.0084 4.319026,-0.333835 5.6875,-1.0625 0.172168,-0.09723 0.275515,-0.303926 0.25,-0.5 -0.03773,-0.291166 -0.08408,-0.947729 -0.125,-1.59375 -0.04092,-0.646021 -0.07644,-1.281501 -0.125,-1.65625 -0.01694,-0.09289 -0.06085,-0.180708 -0.125,-0.25 C 13.127785,10.418403 12.478302,10.101073 11.71875,9.78125 11.025324,9.4892706 10.212392,9.1860601 9.40625,8.84375 9.36113,8.7432405 9.316313,8.4508168 9.40625,8 9.4304,7.8789473 9.4682151,7.7492945 9.5,7.625 9.575755,7.5401485 9.6348046,7.4708101 9.71875,7.375 9.897787,7.1706581 10.090163,6.9562971 10.25,6.75 10.409837,6.5437029 10.540606,6.3667247 10.625,6.125 L 10.65625,6.09375 C 10.98289,4.7754556 10.983061,4.2253548 11,3.75 L 11,3.71875 C 11,2.1869583 9.623082,1 8,1 z" - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.6;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.00012147;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" - transform="translate(1.9999393,0.00161961)" - id="path2880-7" /> - </g> - <path - sodipodi:nodetypes="sccccsscscsscccccccsccscscsscccss" - inkscape:connector-curvature="0" - d="m 6.0037806,-40.000016 c -1.6230605,0 -2.9999647,1.186944 -2.9999647,2.718719 0.011519,0.48415 0.054822,1.081172 0.3437465,2.343722 l 0,0.03125 0.031247,0.03125 c 0.092751,0.265671 0.2277248,0.417644 0.406245,0.624993 0.1785202,0.207349 0.3913525,0.451395 0.5937433,0.656242 0.023812,0.0241 0.039074,0.03903 0.062494,0.06251 0.040137,0.174662 0.088761,0.362633 0.1249979,0.531244 0.096423,0.448603 0.086533,0.766283 0.062505,0.874989 -0.6974467,0.244883 -1.565143,0.536516 -2.343722,0.874989 -0.4371126,0.190028 -0.832652,0.359718 -1.1562374,0.562494 -0.32358434,0.202777 -0.64539391,0.355978 -0.7499904,0.812491 -0.001341,0.02081 -0.001341,0.04169 0,0.06251 -0.10220809,0.938467 -0.25681652,2.318487 -0.37499572,3.249962 -0.02551335,0.196072 0.07782913,0.402763 0.24999681,0.499994 1.41366241,0.763602 3.58521361,1.070932 5.74993271,1.062488 2.1647181,-0.0084 4.3189754,-0.333832 5.6874324,-1.062488 0.172166,-0.09723 0.275513,-0.303922 0.249997,-0.499994 -0.03773,-0.291163 -0.08408,-0.947718 -0.124999,-1.593732 -0.04092,-0.646014 -0.07644,-1.281486 -0.124994,-1.656231 -0.01694,-0.09289 -0.06086,-0.180706 -0.125,-0.249997 -0.43471,-0.51909 -1.084186,-0.836417 -1.8437284,-1.156236 -0.6934176,-0.291975 -1.5063396,-0.595182 -2.3124717,-0.937489 -0.045118,-0.100507 -0.089936,-0.392929 0,-0.84374 0.024152,-0.121051 0.061968,-0.250702 0.093752,-0.374996 0.075756,-0.08485 0.1348031,-0.154188 0.2187476,-0.249997 0.1790349,-0.20434 0.371408,-0.418698 0.5312428,-0.624992 0.1598359,-0.206295 0.2906037,-0.383272 0.3749958,-0.624994 l 0.031247,-0.03125 c 0.3266369,-1.318279 0.3268071,-1.868373 0.3437465,-2.343723 l 0,-0.03125 c 0,-1.531774 -1.3769011,-2.718718 -2.9999647,-2.718718 z" - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.7;color:#000000;fill:url(#linearGradient3417);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.00012147;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" - id="path2880-5-3" /> - </g> + <path + sodipodi:nodetypes="sccccsscscsscccccccsccscscsscccss" + inkscape:connector-curvature="0" + d="M 8.0037806,-1.6024174e-5 C 6.3807201,-1.6024174e-5 5.0038159,1.186928 5.0038159,2.718703 c 0.011519,0.48415 0.054822,1.081172 0.3437465,2.343722 l 0,0.03125 0.031247,0.03125 c 0.092751,0.265671 0.2277248,0.417644 0.406245,0.624993 0.1785202,0.207349 0.3913525,0.451395 0.5937433,0.656242 0.023812,0.0241 0.039074,0.03903 0.062494,0.06251 0.040137,0.174662 0.088761,0.362633 0.1249979,0.531244 0.096423,0.448603 0.086533,0.766283 0.062505,0.874989 C 5.9313479,8.119786 5.0636516,8.411419 4.2850726,8.749892 3.84796,8.93992 3.4524206,9.10961 3.1288352,9.312386 2.8052509,9.515163 2.4834413,9.668364 2.3788448,10.124877 c -0.00134,0.02081 -0.00134,0.04169 0,0.06251 -0.1022081,0.938467 -0.2568165,2.318487 -0.3749957,3.249962 -0.025513,0.196072 0.077829,0.402763 0.2499968,0.499994 1.4136624,0.763602 3.5852136,1.070932 5.7499327,1.062488 2.1647184,-0.0084 4.3189754,-0.333832 5.6874324,-1.062488 0.172166,-0.09723 0.275513,-0.303922 0.249997,-0.499994 -0.03773,-0.291163 -0.08408,-0.947718 -0.124999,-1.593732 -0.04092,-0.646014 -0.07644,-1.281486 -0.124994,-1.656231 -0.01694,-0.09289 -0.06086,-0.180706 -0.125,-0.249997 -0.43471,-0.51909 -1.084186,-0.836417 -1.843728,-1.156236 -0.693418,-0.291975 -1.50634,-0.595182 -2.3124721,-0.937489 -0.045118,-0.100507 -0.089936,-0.392929 0,-0.84374 C 9.4341669,6.878873 9.4719829,6.749222 9.5037669,6.624928 9.5795229,6.540078 9.63857,6.47074 9.7225145,6.374931 9.9015494,6.170591 10.093923,5.956233 10.253757,5.749939 10.413593,5.543644 10.544361,5.366667 10.628753,5.124945 L 10.66,5.093695 c 0.326637,-1.318279 0.326807,-1.868373 0.343747,-2.343723 l 0,-0.03125 C 11.003747,1.186948 9.6268455,3.9858261e-6 8.0037819,3.9858261e-6 z" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.00012147000000007;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" + id="path6033" /> + <path + id="path2880-5-3" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:1;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.00012147000000007;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" + d="m 8.0037806,0.99998399 c -1.6230605,0 -2.9999647,1.18694401 -2.9999647,2.71871901 0.011519,0.48415 0.054822,1.081172 0.3437465,2.343722 l 0,0.03125 0.031247,0.03125 c 0.092751,0.265671 0.2277248,0.417644 0.406245,0.624993 0.1785202,0.207349 0.3913525,0.451395 0.5937433,0.656242 0.023812,0.0241 0.039074,0.03903 0.062494,0.06251 0.040137,0.174662 0.088761,0.362633 0.1249979,0.531244 0.096423,0.448603 0.086533,0.766283 0.062505,0.874989 C 5.9313479,9.119786 5.0636516,9.411419 4.2850726,9.749892 3.84796,9.93992 3.4524206,10.10961 3.1288352,10.312386 c -0.3235843,0.202777 -0.6453939,0.355978 -0.7499904,0.812491 -0.00134,0.02081 -0.00134,0.04169 0,0.06251 -0.1022081,0.938467 -0.2568165,2.318487 -0.3749957,3.249962 -0.025513,0.196072 0.077829,0.402763 0.2499968,0.499994 1.4136624,0.763602 3.5852136,1.070932 5.7499327,1.062488 2.1647184,-0.0084 4.3189754,-0.333832 5.6874324,-1.062488 0.172166,-0.09723 0.275513,-0.303922 0.249997,-0.499994 -0.03773,-0.291163 -0.08408,-0.947718 -0.124999,-1.593732 -0.04092,-0.646014 -0.07644,-1.281486 -0.124994,-1.656231 -0.01694,-0.09289 -0.06086,-0.180706 -0.125,-0.249997 -0.43471,-0.51909 -1.084186,-0.836417 -1.843728,-1.156236 -0.693418,-0.291975 -1.50634,-0.595182 -2.3124721,-0.937489 -0.045118,-0.100507 -0.089936,-0.392929 0,-0.84374 C 9.4341669,7.878873 9.4719829,7.749222 9.5037669,7.624928 9.5795229,7.540078 9.63857,7.47074 9.7225145,7.374931 9.9015494,7.170591 10.093923,6.956233 10.253757,6.749939 10.413593,6.543644 10.544361,6.366667 10.628753,6.124945 L 10.66,6.093695 c 0.326637,-1.318279 0.326807,-1.868373 0.343747,-2.343723 l 0,-0.03125 c 0,-1.531774 -1.3769015,-2.718718 -2.9999651,-2.718718 z" + inkscape:connector-curvature="0" + sodipodi:nodetypes="sccccsscscsscccccccsccscscsscccss" /> </g> </svg> diff --git a/settings/img/users.png b/settings/img/users.png Binary files differindex 79ad3d667e1..a811af47c1c 100644 --- a/settings/img/users.png +++ b/settings/img/users.png diff --git a/settings/img/users.svg b/settings/img/users.svg index 1c8c8955693..5ef31b763bb 100644 --- a/settings/img/users.svg +++ b/settings/img/users.svg @@ -14,9 +14,9 @@ width="16" height="16" id="svg11300" - inkscape:version="0.48.1 r9760" - sodipodi:docname="personal.svg" - inkscape:export-filename="/home/jancborchardt/jancborchardt/ownCloud/icons/personal.png" + inkscape:version="0.48.3.1 r9886" + sodipodi:docname="users.svg" + inkscape:export-filename="users.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90"> <metadata @@ -41,16 +41,16 @@ inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1280" - inkscape:window-height="776" + inkscape:window-height="745" id="namedview24" showgrid="true" showguides="true" inkscape:guide-bbox="true" inkscape:zoom="22.627418" - inkscape:cx="14.025105" + inkscape:cx="6.55629" inkscape:cy="9.2202448" inkscape:window-x="0" - inkscape:window-y="24" + inkscape:window-y="27" inkscape:window-maximized="1" inkscape:current-layer="g4146"> <inkscape:grid @@ -1691,16 +1691,6 @@ style="stop-color:#363636;stop-opacity:1" offset="1" /> </linearGradient> - <linearGradient - y2="20.074369" - x2="14.152531" - y1="-1.4095211" - x1="14.501121" - gradientTransform="matrix(0.6858824,0,0,0.68591053,-5.3691237,-18.974705)" - gradientUnits="userSpaceOnUse" - id="linearGradient3437" - xlink:href="#linearGradient3587-6-5-19" - inkscape:collect="always" /> </defs> <g transform="matrix(0.78786264,0,0,0.78786264,-3.1483699,0.44173984)" @@ -1719,25 +1709,15 @@ style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1" /> <g id="g4146"> - <g - id="g4309" - transform="translate(4.0000002,19.999999)"> - <g - style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-opacity:1" - id="g3743-9-4-9" - transform="matrix(0.68591077,0,0,0.68591077,-6.7409611,-17.975799)"> - <path - d="M 8,1 C 6.3769202,1 5,2.1869577 5,3.71875 5.011517,4.2029062 5.05482,4.7999354 5.34375,6.0625 l 0,0.03125 L 5.375,6.125 C 5.467756,6.3906733 5.6027279,6.5426488 5.78125,6.75 5.9597721,6.9573512 6.1726069,7.2014001 6.375,7.40625 6.398811,7.43035 6.414077,7.445288 6.4375,7.46875 6.47764,7.6434131 6.52626,7.8313866 6.5625,8 6.65892,8.4486073 6.64903,8.7662912 6.625,8.875 5.9275445,9.1198852 5.0598384,9.4115215 4.28125,9.75 3.8441326,9.9400296 3.4485889,10.109721 3.125,10.3125 c -0.3235889,0.202779 -0.6454015,0.355982 -0.75,0.8125 -0.0013,0.02081 -0.0013,0.04169 0,0.0625 -0.1022115,0.938479 -0.2568187,2.318515 -0.375,3.25 -0.025515,0.196074 0.077832,0.402768 0.25,0.5 C 3.6636791,15.701111 5.8352555,16.008445 8,16 c 2.164744,-0.0084 4.319026,-0.333835 5.6875,-1.0625 0.172168,-0.09723 0.275515,-0.303926 0.25,-0.5 -0.03773,-0.291166 -0.08408,-0.947729 -0.125,-1.59375 -0.04092,-0.646021 -0.07644,-1.281501 -0.125,-1.65625 -0.01694,-0.09289 -0.06085,-0.180708 -0.125,-0.25 C 13.127785,10.418403 12.478302,10.101073 11.71875,9.78125 11.025324,9.4892706 10.212392,9.1860601 9.40625,8.84375 9.36113,8.7432405 9.316313,8.4508168 9.40625,8 9.4304,7.8789473 9.4682151,7.7492945 9.5,7.625 9.575755,7.5401485 9.6348046,7.4708101 9.71875,7.375 9.897787,7.1706581 10.090163,6.9562971 10.25,6.75 10.409837,6.5437029 10.540606,6.3667247 10.625,6.125 L 10.65625,6.09375 C 10.98289,4.7754556 10.983061,4.2253548 11,3.75 L 11,3.71875 C 11,2.1869583 9.623082,1 8,1 z m 8.580821,-2.4948177 c -2.366287,0 -4.373697,1.73046459 -4.373697,3.9636633 0.01679,0.7058509 0.07992,1.5762593 0.501153,3.4169511 l 0,0.045559 0.04556,0.045559 c 0.135229,0.3873249 0.332004,0.6088898 0.592271,0.911187 0.260268,0.3022971 0.570559,0.6580958 0.865628,0.9567463 0.03471,0.035135 0.05697,0.056914 0.09112,0.091119 0.05852,0.2546412 0.129403,0.5286876 0.182237,0.7745089 0.140571,0.6540242 0.126152,1.1171753 0.09112,1.2756618 -1.01682,0.3570183 -2.281848,0.7821943 -3.416951,1.2756623 -0.637273,0.277044 -1.2139362,0.524437 -1.6856962,0.820068 -0.47176,0.295631 -0.9409303,0.518986 -1.0934244,1.184543 -0.0019,0.03034 -0.0019,0.06078 0,0.09112 -0.149014,1.368208 -0.3744158,3.380161 -0.5467122,4.738172 -0.037198,0.285856 0.1134712,0.587195 0.3644748,0.72895 2.061002,1.113268 5.226941,1.56133 8.38292,1.549018 3.155979,-0.01225 6.296704,-0.486698 8.291802,-1.549018 0.251003,-0.141752 0.401673,-0.443094 0.364474,-0.72895 -0.05501,-0.424491 -0.12258,-1.381693 -0.182237,-2.323527 -0.05966,-0.941833 -0.111442,-1.868299 -0.182237,-2.414645 -0.0247,-0.135424 -0.08871,-0.263454 -0.182238,-0.364475 -0.63377,-0.756791 -1.580651,-1.219426 -2.688001,-1.685696 -1.010946,-0.425676 -2.196118,-0.867727 -3.371392,-1.3667807 -0.06578,-0.1465327 -0.131119,-0.5728569 0,-1.2301024 0.03521,-0.1764826 0.09034,-0.3655033 0.136678,-0.5467122 0.110443,-0.1237049 0.196531,-0.2247933 0.318915,-0.3644747 0.261018,-0.2979099 0.541483,-0.6104266 0.774509,-0.911187 0.233026,-0.3007604 0.423674,-0.5587767 0.546712,-0.911187 l 0.04556,-0.045559 c 0.476208,-1.9219403 0.476457,-2.7239318 0.501153,-3.4169512 l 0,-0.045559 c 0,-2.23319784 -2.007408,-3.9636633 -4.373698,-3.9636633 z" - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.6;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.00012147;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" - transform="translate(1.9999393,0.00161961)" - id="path2880-7-3-9" - inkscape:connector-curvature="0" /> - </g> - <path - d="m 0.1179355,-18.288795 c -1.1132415,0 -2.0576469,0.814147 -2.0576469,1.86482 0.0079,0.332088 0.037602,0.741596 0.2357724,1.607602 l 0,0.02144 0.021432,0.02143 c 0.063617,0.182229 0.1561942,0.28647 0.2786394,0.428695 0.1224453,0.142224 0.268425,0.30962 0.4072429,0.450128 0.016332,0.01653 0.0268,0.02677 0.042864,0.04288 0.02753,0.119804 0.060881,0.248737 0.085735,0.36439 0.066135,0.307705 0.059353,0.525608 0.042871,0.600171 -0.4783719,0.16797 -1.0735165,0.368006 -1.6075363,0.600171 -0.2998113,0.130344 -0.5711079,0.246737 -0.7930521,0.385825 -0.2219433,0.139089 -0.4426695,0.244172 -0.5144111,0.557303 -9.199e-4,0.01427 -9.199e-4,0.0286 0,0.04288 -0.070103,0.643711 -0.176148,1.5902928 -0.257206,2.2292088 -0.017499,0.134489 0.053382,0.276262 0.1714704,0.342955 0.9696174,0.523769 2.4590634,0.734572 3.9438235,0.72878 1.4847593,-0.0058 2.9623436,-0.228982 3.9009551,-0.72878 0.118087,-0.06669 0.1889717,-0.208466 0.1714705,-0.342955 -0.025879,-0.199714 -0.05767,-0.650058 -0.085735,-1.0931708 -0.028067,-0.443113 -0.05243,-0.878995 -0.085733,-1.136039 -0.01162,-0.06372 -0.041743,-0.12395 -0.085737,-0.171478 -0.2981634,-0.356053 -0.7436327,-0.573714 -1.2645956,-0.793083 -0.4756083,-0.200271 -1.0331837,-0.408247 -1.5861019,-0.643041 -0.030946,-0.06894 -0.061686,-0.269518 0,-0.578737 0.016565,-0.08303 0.042503,-0.171961 0.064303,-0.257217 0.05196,-0.0582 0.09246,-0.10576 0.1500368,-0.171477 0.1227983,-0.140161 0.2547452,-0.287193 0.3643743,-0.428694 0.1096299,-0.141502 0.1993223,-0.262893 0.257206,-0.428695 l 0.021432,-0.02144 c 0.2240371,-0.904232 0.2241538,-1.281552 0.2357725,-1.607603 l 0,-0.02143 c 0,-1.050672 -0.9444033,-1.864819 -2.057647,-1.864819 z m 5.8858451,-1.711221 c -1.6230605,0 -2.9999647,1.186944 -2.9999647,2.718719 0.011519,0.48415 0.054822,1.081172 0.3437465,2.343722 l 0,0.03125 0.031247,0.03125 c 0.092751,0.265671 0.2277248,0.417644 0.406245,0.624993 0.1785202,0.207349 0.3913525,0.451395 0.5937433,0.656242 0.023812,0.0241 0.039074,0.03903 0.062494,0.06251 0.040137,0.174662 0.088761,0.362633 0.1249979,0.531244 0.096423,0.448603 0.086533,0.766283 0.062505,0.874989 -0.6974467,0.244883 -1.565143,0.536516 -2.343722,0.874989 -0.4371126,0.190028 -0.832652,0.359718 -1.1562374,0.562494 -0.32358434,0.202777 -0.64539391,0.355978 -0.7499904,0.812491 -0.001341,0.02081 -0.001341,0.04169 0,0.06251 -0.10220809,0.938467 -0.25681652,2.318487 -0.37499572,3.249962 -0.02551335,0.196072 0.07782913,0.402763 0.24999681,0.499994 1.41366241,0.763602 3.58521361,1.070932 5.74993271,1.062488 2.1647181,-0.0084 4.3189754,-0.333832 5.6874324,-1.062488 0.172166,-0.09723 0.275513,-0.303922 0.249997,-0.499994 -0.03773,-0.291163 -0.08408,-0.947718 -0.124999,-1.593732 -0.04092,-0.646014 -0.07644,-1.281486 -0.124994,-1.656231 -0.01694,-0.09289 -0.06086,-0.180706 -0.125,-0.249997 -0.43471,-0.51909 -1.084186,-0.836417 -1.8437284,-1.156236 -0.6934176,-0.291975 -1.5063396,-0.595182 -2.3124717,-0.937489 -0.045118,-0.100507 -0.089936,-0.392929 0,-0.84374 0.024152,-0.121051 0.061968,-0.250702 0.093752,-0.374996 0.075756,-0.08485 0.1348031,-0.154188 0.2187476,-0.249997 0.1790349,-0.20434 0.371408,-0.418698 0.5312428,-0.624992 0.1598359,-0.206295 0.2906037,-0.383272 0.3749958,-0.624994 l 0.031247,-0.03125 c 0.3266369,-1.318279 0.3268071,-1.868373 0.3437465,-2.343723 l 0,-0.03125 c 0,-1.531774 -1.3769011,-2.718718 -2.9999647,-2.718718 z" - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:0.7;color:#000000;fill:url(#linearGradient3437);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.00012147;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" - id="path2880-5-3-9-2" - inkscape:connector-curvature="0" /> - </g> + <path + d="m 4.1179357,1.711205 c -1.1132415,0 -2.0576469,0.814147 -2.0576469,1.86482 0.0079,0.332088 0.037602,0.741596 0.2357724,1.607602 l 0,0.02144 0.021432,0.02143 c 0.063617,0.182229 0.1561942,0.28647 0.2786394,0.428695 0.1224453,0.142224 0.268425,0.30962 0.4072429,0.450128 0.016332,0.01653 0.0268,0.02677 0.042864,0.04288 0.02753,0.119804 0.060881,0.248737 0.085735,0.36439 0.066135,0.307705 0.059353,0.525608 0.042871,0.600171 C 2.6964736,7.280731 2.101329,7.480767 1.5673092,7.712932 1.2674979,7.843276 0.9962013,7.959669 0.7742571,8.098757 0.5523138,8.237846 0.3315876,8.342929 0.259846,8.65606 c -9.199e-4,0.01427 -9.199e-4,0.0286 0,0.04288 -0.070103,0.643711 -0.176148,1.590293 -0.257206,2.229209 -0.017499,0.134489 0.053382,0.276262 0.1714704,0.342955 0.9696174,0.523769 2.4590634,0.734572 3.9438235,0.72878 1.4847593,-0.0058 2.9623436,-0.228982 3.9009551,-0.72878 0.118087,-0.06669 0.1889717,-0.208466 0.1714705,-0.342955 C 8.1644805,10.728435 8.1326895,10.278091 8.1046245,9.834978 8.0765575,9.391865 8.0521945,8.955983 8.0188915,8.698939 8.0072715,8.635219 7.9771485,8.574989 7.9331545,8.527461 7.6349911,8.171408 7.1895218,7.953747 6.6685589,7.734378 6.1929506,7.534107 5.6353752,7.326131 5.082457,7.091337 5.051511,7.022397 5.020771,6.821819 5.082457,6.5126 5.099022,6.42957 5.12496,6.340639 5.14676,6.255383 5.19872,6.197183 5.23922,6.149623 5.2967968,6.083906 5.4195951,5.943745 5.551542,5.796713 5.6611711,5.655212 5.770801,5.51371 5.8604934,5.392319 5.9183771,5.226517 l 0.021432,-0.02144 C 6.1638462,4.300845 6.1639629,3.923525 6.1755816,3.597474 l 0,-0.02143 c 0,-1.050672 -0.9444033,-1.864819 -2.057647,-1.864819 z M 10.003781,-1.6024174e-5 C 8.3807203,-1.6024174e-5 7.0038161,1.186928 7.0038161,2.718703 c 0.011519,0.48415 0.054822,1.081172 0.3437465,2.343722 l 0,0.03125 0.031247,0.03125 c 0.092751,0.265671 0.2277248,0.417644 0.406245,0.624993 0.1785202,0.207349 0.3913525,0.451395 0.5937433,0.656242 0.023812,0.0241 0.039074,0.03903 0.062494,0.06251 0.040137,0.174662 0.088761,0.362633 0.1249979,0.531244 0.096423,0.448603 0.086533,0.766283 0.062505,0.874989 C 7.9313481,8.119786 7.0636518,8.411419 6.2850728,8.749892 5.8479602,8.93992 5.4524208,9.10961 5.1288354,9.312386 4.8052511,9.515163 4.4834415,9.668364 4.378845,10.124877 c -0.00134,0.02081 -0.00134,0.04169 0,0.06251 -0.1022081,0.938467 -0.2568165,2.318487 -0.3749957,3.249962 -0.025513,0.196072 0.077829,0.402763 0.2499968,0.499994 1.4136624,0.763602 3.5852136,1.070932 5.7499329,1.062488 2.164718,-0.0084 4.318975,-0.333832 5.687432,-1.062488 0.172166,-0.09723 0.275513,-0.303922 0.249997,-0.499994 -0.03773,-0.291163 -0.08408,-0.947718 -0.124999,-1.593732 -0.04092,-0.646014 -0.07644,-1.281486 -0.124994,-1.656231 -0.01694,-0.09289 -0.06086,-0.180706 -0.125,-0.249997 -0.43471,-0.51909 -1.084186,-0.836417 -1.843728,-1.156236 -0.693418,-0.291975 -1.50634,-0.595182 -2.312472,-0.937489 -0.04512,-0.100507 -0.08994,-0.392929 0,-0.84374 0.02415,-0.121051 0.06197,-0.250702 0.09375,-0.374996 0.07576,-0.08485 0.134803,-0.154188 0.218748,-0.249997 0.179035,-0.20434 0.371408,-0.418698 0.531242,-0.624992 0.159836,-0.206295 0.290604,-0.383272 0.374996,-0.624994 L 12.66,5.093695 c 0.326637,-1.318279 0.326807,-1.868373 0.343747,-2.343723 l 0,-0.03125 C 13.003747,1.186948 11.626846,3.9858261e-6 10.003782,3.9858261e-6 z" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:1;color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.00012147000000007;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" + id="path5493" + inkscape:connector-curvature="0" /> + <path + inkscape:connector-curvature="0" + id="path2880-5-3-9-2" + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;opacity:1;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.00012147000000007;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" + d="m 4.1179357,2.711205 c -1.1132415,0 -2.0576469,0.814147 -2.0576469,1.86482 0.0079,0.332088 0.037602,0.741596 0.2357724,1.607602 l 0,0.02144 0.021432,0.02143 c 0.063617,0.182229 0.1561942,0.28647 0.2786394,0.428695 0.1224453,0.142224 0.268425,0.30962 0.4072429,0.450128 0.016332,0.01653 0.0268,0.02677 0.042864,0.04288 0.02753,0.119804 0.060881,0.248737 0.085735,0.36439 0.066135,0.307705 0.059353,0.525608 0.042871,0.600171 C 2.6964736,8.280731 2.101329,8.480767 1.5673092,8.712932 1.2674979,8.843276 0.9962013,8.959669 0.7742571,9.098757 0.5523138,9.237846 0.3315876,9.342929 0.259846,9.65606 c -9.199e-4,0.01427 -9.199e-4,0.0286 0,0.04288 -0.070103,0.643711 -0.176148,1.590293 -0.257206,2.229209 -0.017499,0.134489 0.053382,0.276262 0.1714704,0.342955 0.9696174,0.523769 2.4590634,0.734572 3.9438235,0.72878 1.4847593,-0.0058 2.9623436,-0.228982 3.9009551,-0.72878 0.118087,-0.06669 0.1889717,-0.208466 0.1714705,-0.342955 -0.025879,-0.199714 -0.05767,-0.650058 -0.085735,-1.093171 C 8.0765575,10.391865 8.0521945,9.955983 8.0188915,9.698939 8.0072715,9.635219 7.9771485,9.574989 7.9331545,9.527461 7.6349911,9.171408 7.1895218,8.953747 6.6685589,8.734378 6.1929506,8.534107 5.6353752,8.326131 5.082457,8.091337 5.051511,8.022397 5.020771,7.821819 5.082457,7.5126 5.099022,7.42957 5.12496,7.340639 5.14676,7.255383 5.19872,7.197183 5.23922,7.149623 5.2967968,7.083906 5.4195951,6.943745 5.551542,6.796713 5.6611711,6.655212 5.770801,6.51371 5.8604934,6.392319 5.9183771,6.226517 l 0.021432,-0.02144 C 6.1638462,5.300845 6.1639629,4.923525 6.1755816,4.597474 l 0,-0.02143 c 0,-1.050672 -0.9444033,-1.864819 -2.057647,-1.864819 z M 10.003781,0.99998399 c -1.6230607,0 -2.9999649,1.18694401 -2.9999649,2.71871901 0.011519,0.48415 0.054822,1.081172 0.3437465,2.343722 l 0,0.03125 0.031247,0.03125 c 0.092751,0.265671 0.2277248,0.417644 0.406245,0.624993 0.1785202,0.207349 0.3913525,0.451395 0.5937433,0.656242 0.023812,0.0241 0.039074,0.03903 0.062494,0.06251 0.040137,0.174662 0.088761,0.362633 0.1249979,0.531244 0.096423,0.448603 0.086533,0.766283 0.062505,0.874989 -0.6974467,0.244883 -1.565143,0.536516 -2.343722,0.874989 -0.4371126,0.190028 -0.832652,0.359718 -1.1562374,0.562494 -0.3235843,0.202777 -0.6453939,0.355978 -0.7499904,0.812491 -0.00134,0.02081 -0.00134,0.04169 0,0.06251 -0.1022081,0.938467 -0.2568165,2.318487 -0.3749957,3.249962 -0.025513,0.196072 0.077829,0.402763 0.2499968,0.499994 1.4136624,0.763602 3.5852136,1.070932 5.7499329,1.062488 2.164718,-0.0084 4.318975,-0.333832 5.687432,-1.062488 0.172166,-0.09723 0.275513,-0.303922 0.249997,-0.499994 -0.03773,-0.291163 -0.08408,-0.947718 -0.124999,-1.593732 -0.04092,-0.646014 -0.07644,-1.281486 -0.124994,-1.656231 -0.01694,-0.09289 -0.06086,-0.180706 -0.125,-0.249997 -0.43471,-0.51909 -1.084186,-0.836417 -1.843728,-1.156236 -0.693418,-0.291975 -1.50634,-0.595182 -2.312472,-0.937489 -0.04512,-0.100507 -0.08994,-0.392929 0,-0.84374 0.02415,-0.121051 0.06197,-0.250702 0.09375,-0.374996 0.07576,-0.08485 0.134803,-0.154188 0.218748,-0.249997 0.179035,-0.20434 0.371408,-0.418698 0.531242,-0.624992 0.159836,-0.206295 0.290604,-0.383272 0.374996,-0.624994 L 12.66,6.093695 c 0.326637,-1.318279 0.326807,-1.868373 0.343747,-2.343723 l 0,-0.03125 c 0,-1.531774 -1.376901,-2.718718 -2.999965,-2.718718 z" /> </g> </svg> diff --git a/settings/js/apps.js b/settings/js/apps.js index c4c36b4bb12..8bee958ec57 100644 --- a/settings/js/apps.js +++ b/settings/js/apps.js @@ -24,6 +24,14 @@ OC.Settings.Apps = OC.Settings.Apps || { page.find('span.author').text(app.author); page.find('span.licence').text(app.licence); + if (app.update != false) { + page.find('input.update').show(); + page.find('input.update').data('appid', app.id); + page.find('input.update').attr('value',t('settings', 'Update to {appversion}', {appversion:app.update})); + } else { + page.find('input.update').hide(); + } + page.find('input.enable').show(); page.find('input.enable').val((app.active) ? t('settings', 'Disable') : t('settings', 'Enable')); page.find('input.enable').data('appid', app.id); @@ -44,6 +52,7 @@ OC.Settings.Apps = OC.Settings.Apps || { appData = appitem.data('app'); appData.active = !active; appitem.data('app', appData); + element.val(t('settings','Please wait....')); if(active) { $.post(OC.filePath('settings','ajax','disableapp.php'),{appid:appid},function(result) { if(!result || result.status!='success') { @@ -70,6 +79,20 @@ OC.Settings.Apps = OC.Settings.Apps || { $('#leftcontent li[data-id="'+appid+'"]').addClass('active'); } }, + updateApp:function(appid, element) { + console.log('updateApp:', appid, element); + element.val(t('settings','Updating....')); + $.post(OC.filePath('settings','ajax','updateapp.php'),{appid:appid},function(result) { + if(!result || result.status!='success') { + OC.dialogs.alert(t('settings','Error while updating app'),t('settings','Error')); + } + else { + element.val(t('settings','Updated')); + element.hide(); + } + },'json'); + }, + insertApp:function(appdata) { var applist = $('#leftcontent li'); var app = @@ -109,12 +132,12 @@ OC.Settings.Apps = OC.Settings.Apps || { var container = $('#apps'); if(container.children('li[data-id="'+entry.id+'"]').length === 0){ - var li=$('<li></li>'); + var li=$('<li></li>').attr({class: 'enabled-app'}); li.attr('data-id', entry.id); - var a=$('<a></a>'); - a.attr('style', 'background-image: url('+entry.icon+')'); + var img= $('<img></img>').attr({ src: entry.icon, class:'icon'}); + li.append(img); + var a=$('<a></a>').attr('href', entry.href); a.text(entry.name); - a.attr('href', entry.href); li.append(a); container.append(li); } @@ -154,6 +177,13 @@ $(document).ready(function(){ OC.Settings.Apps.enableApp(appid, active, element); } }); + $('#rightcontent input.update').click(function(){ + var element = $(this); + var appid=$(this).data('appid'); + if(appid) { + OC.Settings.Apps.updateApp(appid, element); + } + }); if(appid) { var item = $('#leftcontent li[data-id="'+appid+'"]'); diff --git a/settings/js/users.js b/settings/js/users.js index 424d00b51a7..094cddda294 100644 --- a/settings/js/users.js +++ b/settings/js/users.js @@ -237,12 +237,14 @@ var UserList = { }); } } -} +}; $(document).ready(function () { $('tbody tr:last').bind('inview', function (event, isInView, visiblePartX, visiblePartY) { - UserList.update(); + OC.Router.registerLoadedCallback(function(){ + UserList.update(); + }); }); function setQuota(uid, quota, ready) { @@ -257,12 +259,11 @@ $(document).ready(function () { ); } - $('select[multiple]').each(function (index, element) { UserList.applyMultiplySelect($(element)); }); - $('td.remove>a').live('click', function (event) { + $('table').on('click', 'td.remove>a', function (event) { var row = $(this).parent().parent(); var uid = $(row).attr('data-uid'); $(row).hide(); @@ -270,7 +271,7 @@ $(document).ready(function () { UserList.do_delete(uid); }); - $('td.password>img').live('click', function (event) { + $('table').on('click', 'td.password>img', function (event) { event.stopPropagation(); var img = $(this); var uid = img.parent().parent().attr('data-uid'); @@ -298,11 +299,11 @@ $(document).ready(function () { img.css('display', ''); }); }); - $('td.password').live('click', function (event) { + $('table').on('click', 'td.password', function (event) { $(this).children('img').click(); }); - $('td.displayName>img').live('click', function (event) { + $('table').on('click', 'td.displayName>img', function (event) { event.stopPropagation(); var img = $(this); var uid = img.parent().parent().attr('data-uid'); @@ -331,12 +332,12 @@ $(document).ready(function () { img.css('display', ''); }); }); - $('td.displayName').live('click', function (event) { + $('table').on('click', 'td.displayName', function (event) { $(this).children('img').click(); }); - $('select.quota, select.quota-user').live('change', function () { + $('select.quota, select.quota-user').on('change', function () { var select = $(this); var uid = $(this).parent().parent().parent().attr('data-uid'); var quota = $(this).val(); @@ -355,7 +356,7 @@ $(document).ready(function () { $(select).data('previous', $(select).val()); }) - $('input.quota-other').live('change', function () { + $('input.quota-other').on('change', function () { var uid = $(this).parent().parent().parent().attr('data-uid'); var quota = $(this).val(); var select = $(this).prev(); @@ -391,7 +392,7 @@ $(document).ready(function () { } }); - $('input.quota-other').live('blur', function () { + $('input.quota-other').on('blur', function () { $(this).change(); }) @@ -438,7 +439,7 @@ $(document).ready(function () { }); // Handle undo notifications OC.Notification.hide(); - $('#notification .undo').live('click', function () { + $('#notification').on('click', '.undo', function () { if ($('#notification').data('deleteuser')) { $('tbody tr').filterAttr('data-uid', UserList.deleteUid).show(); UserList.deleteCanceled = true; diff --git a/settings/l10n/af_ZA.php b/settings/l10n/af_ZA.php new file mode 100644 index 00000000000..f32b79b80f4 --- /dev/null +++ b/settings/l10n/af_ZA.php @@ -0,0 +1,4 @@ +<?php $TRANSLATIONS = array( +"Password" => "Wagwoord", +"New password" => "Nuwe wagwoord" +); diff --git a/settings/l10n/ar.php b/settings/l10n/ar.php index 2870527781a..402d91c48fe 100644 --- a/settings/l10n/ar.php +++ b/settings/l10n/ar.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "ÙØ´Ù„ إزالة المستخدم من المجموعة %s", "Disable" => "إيقاÙ", "Enable" => "ØªÙØ¹ÙŠÙ„", +"Error" => "خطأ", "Saving..." => "ØÙظ", "__language_name__" => "__language_name__", "Add your App" => "أض٠تطبيقاتك", @@ -22,6 +23,7 @@ "Select an App" => "إختر تطبيقاً", "See application page at apps.owncloud.com" => "راجع ØµÙØØ© التطبيق على apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-ترخيص من قبل <span class=\"author\"></span>", +"Update" => "ØØ¯Ø«", "User Documentation" => "كتاب توثيق المستخدم", "Administrator Documentation" => "كتاب توثيق المدير", "Online Documentation" => "توثيق Ù…ØªÙˆÙØ± على الشبكة", diff --git a/settings/l10n/bg_BG.php b/settings/l10n/bg_BG.php index bee057a998f..1cbbd5321c1 100644 --- a/settings/l10n/bg_BG.php +++ b/settings/l10n/bg_BG.php @@ -2,6 +2,8 @@ "Authentication error" => "Възникна проблем Ñ Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñта", "Invalid request" => "Ðевалидна заÑвка", "Enable" => "Включено", +"Error" => "Грешка", +"Update" => "ОбновÑване", "Password" => "Парола", "Email" => "E-mail", "Groups" => "Групи", diff --git a/settings/l10n/bn_BD.php b/settings/l10n/bn_BD.php index fc85e705750..60ddcfdde6d 100644 --- a/settings/l10n/bn_BD.php +++ b/settings/l10n/bn_BD.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "%s গোষà§à¦ à§€ থেকে বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারীকে অপসারণ করা সমà§à¦à¦¬ হলো না", "Disable" => "নিষà§à¦•à§à¦°à¦¿à§Ÿ", "Enable" => "সকà§à¦°à¦¿à§Ÿ ", +"Error" => "সমসà§à¦¯à¦¾", "Saving..." => "সংরকà§à¦·à¦£ করা হচà§à¦›à§‡..", "__language_name__" => "__language_name__", "Add your App" => "আপনার অà§à¦¯à¦¾à¦ªà¦Ÿà¦¿ যোগ করà§à¦¨", @@ -22,6 +23,7 @@ "Select an App" => "অà§à¦¯à¦¾à¦ª নিরà§à¦¬à¦¾à¦šà¦¨ করà§à¦¨", "See application page at apps.owncloud.com" => "apps.owncloud.com ঠঅà§à¦¯à¦¾à¦ªà§à¦²à¦¿à¦•েসন পৃষà§à¦ া দেখà§à¦¨", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-লাইসেনà§à¦¸à¦§à¦¾à¦°à§€ <span class=\"author\"></span>", +"Update" => "পরিবরà§à¦§à¦¨", "User Documentation" => "বà§à¦¯à¦¬à¦¹à¦¾à¦°à¦•ারী সহায়িকা", "Administrator Documentation" => "পà§à¦°à¦¶à¦¾à¦¸à¦• সহায়িকা", "Online Documentation" => "অনলাইন সহায়িকা", diff --git a/settings/l10n/ca.php b/settings/l10n/ca.php index 1f23c2cfd66..40b19c3b1c3 100644 --- a/settings/l10n/ca.php +++ b/settings/l10n/ca.php @@ -13,8 +13,15 @@ "Admins can't remove themself from the admin group" => "Els administradors no es poden eliminar del grup admin", "Unable to add user to group %s" => "No es pot afegir l'usuari al grup %s", "Unable to remove user from group %s" => "No es pot eliminar l'usuari del grup %s", +"Couldn't update app." => "No s'ha pogut actualitzar l'aplicació.", +"Update to {appversion}" => "Actualitza a {appversion}", "Disable" => "Desactiva", "Enable" => "Activa", +"Please wait...." => "Espereu...", +"Updating...." => "Actualitzant...", +"Error while updating app" => "Error en actualitzar l'aplicació", +"Error" => "Error", +"Updated" => "Actualitzada", "Saving..." => "S'està desant...", "__language_name__" => "Català ", "Add your App" => "Afegiu la vostra aplicació", @@ -22,6 +29,7 @@ "Select an App" => "Seleccioneu una aplicació", "See application page at apps.owncloud.com" => "Mireu la pà gina d'aplicacions a apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-propietat de <span class=\"author\"></span>", +"Update" => "Actualitza", "User Documentation" => "Documentació d'usuari", "Administrator Documentation" => "Documentació d'administrador", "Online Documentation" => "Documentació en lÃnia", @@ -49,13 +57,17 @@ "Use this address to connect to your ownCloud in your file manager" => "Useu aquesta adreça per connectar amb ownCloud des del gestor de fitxers", "Version" => "Versió", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desenvolupat per la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunitat ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">codi font</a> té llicència <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.", +"Login Name" => "Nom d'accés", "Groups" => "Grups", "Create" => "Crea", "Default Storage" => "Emmagatzemament per defecte", "Unlimited" => "Il·limitat", "Other" => "Un altre", +"Display Name" => "Nom a mostrar", "Group Admin" => "Grup Admin", "Storage" => "Emmagatzemament", +"change display name" => "canvia el nom a mostrar", +"set new password" => "estableix nova contrasenya", "Default" => "Per defecte", "Delete" => "Suprimeix" ); diff --git a/settings/l10n/cs_CZ.php b/settings/l10n/cs_CZ.php index be75a679c65..f1fd0b0b139 100644 --- a/settings/l10n/cs_CZ.php +++ b/settings/l10n/cs_CZ.php @@ -13,8 +13,15 @@ "Admins can't remove themself from the admin group" => "Správci se nemohou odebrat sami ze skupiny správců", "Unable to add user to group %s" => "Nelze pÅ™idat uživatele do skupiny %s", "Unable to remove user from group %s" => "Nelze odstranit uživatele ze skupiny %s", +"Couldn't update app." => "Nelze aktualizovat aplikaci.", +"Update to {appversion}" => "Aktualizovat na {appversion}", "Disable" => "Zakázat", "Enable" => "Povolit", +"Please wait...." => "ÄŒekejte prosÃm...", +"Updating...." => "Aktualizuji...", +"Error while updating app" => "Chyba pÅ™i aktualizaci aplikace", +"Error" => "Chyba", +"Updated" => "Aktualizováno", "Saving..." => "Ukládám...", "__language_name__" => "ÄŒesky", "Add your App" => "PÅ™idat Vašà aplikaci", @@ -22,6 +29,7 @@ "Select an App" => "Vyberte aplikaci", "See application page at apps.owncloud.com" => "VÃce na stránce s aplikacemi na apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licencováno <span class=\"author\"></span>", +"Update" => "Aktualizovat", "User Documentation" => "Uživatelská dokumentace", "Administrator Documentation" => "Dokumentace správce", "Online Documentation" => "Online dokumentace", @@ -49,13 +57,17 @@ "Use this address to connect to your ownCloud in your file manager" => "Použijte tuto adresu pro pÅ™ipojenà k vaÅ¡emu ownCloud skrze správce souborů", "Version" => "Verze", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Vyvinuto <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunitou ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">zdrojový kód</a> je licencován pod <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.", +"Login Name" => "PÅ™ihlaÅ¡ovacà jméno", "Groups" => "Skupiny", "Create" => "VytvoÅ™it", "Default Storage" => "Výchozà úložiÅ¡tÄ›", "Unlimited" => "NeomezenÄ›", "Other" => "Jiná", +"Display Name" => "Zobrazované jméno", "Group Admin" => "Správa skupiny", "Storage" => "ÚložiÅ¡tÄ›", +"change display name" => "zmÄ›nit zobrazované jméno", +"set new password" => "nastavit nové heslo", "Default" => "VýchozÃ", "Delete" => "Smazat" ); diff --git a/settings/l10n/da.php b/settings/l10n/da.php index f0842922d62..01c59d242c7 100644 --- a/settings/l10n/da.php +++ b/settings/l10n/da.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Brugeren kan ikke fjernes fra gruppen %s", "Disable" => "Deaktiver", "Enable" => "Aktiver", +"Error" => "Fejl", "Saving..." => "Gemmer...", "__language_name__" => "Dansk", "Add your App" => "Tilføj din App", @@ -22,6 +23,7 @@ "Select an App" => "Vælg en App", "See application page at apps.owncloud.com" => "Se applikationens side pÃ¥ apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licenseret af <span class=\"author\"></span>", +"Update" => "Opdater", "User Documentation" => "Brugerdokumentation", "Administrator Documentation" => "Administrator Dokumentation", "Online Documentation" => "Online dokumentation", diff --git a/settings/l10n/de.php b/settings/l10n/de.php index d2a9a826aaf..04f65222b01 100644 --- a/settings/l10n/de.php +++ b/settings/l10n/de.php @@ -15,6 +15,8 @@ "Unable to remove user from group %s" => "Der Benutzer konnte nicht aus der Gruppe %s entfernt werden", "Disable" => "Deaktivieren", "Enable" => "Aktivieren", +"Error while updating app" => "Fehler beim Aktualisieren der App", +"Error" => "Fehler", "Saving..." => "Speichern...", "__language_name__" => "Deutsch (Persönlich)", "Add your App" => "Füge Deine Anwendung hinzu", @@ -22,6 +24,7 @@ "Select an App" => "Wähle eine Anwendung aus", "See application page at apps.owncloud.com" => "Weitere Anwendungen findest Du auf apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-lizenziert von <span class=\"author\"></span>", +"Update" => "Update durchführen", "User Documentation" => "Dokumentation für Benutzer", "Administrator Documentation" => "Dokumentation für Administratoren", "Online Documentation" => "Online-Dokumentation", @@ -49,13 +52,17 @@ "Use this address to connect to your ownCloud in your file manager" => "Verwende diese Adresse, um Deinen Dateimanager mit Deiner ownCloud zu verbinden", "Version" => "Version", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Entwickelt von der <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-Community</a>, der <a href=\"https://github.com/owncloud\" target=\"_blank\">Quellcode</a> ist unter der <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> lizenziert.", +"Login Name" => "Loginname", "Groups" => "Gruppen", "Create" => "Anlegen", "Default Storage" => "Standard-Speicher", "Unlimited" => "Unbegrenzt", "Other" => "Andere", +"Display Name" => "Anzeigename", "Group Admin" => "Gruppenadministrator", "Storage" => "Speicher", +"change display name" => "Anzeigenamen ändern", +"set new password" => "Neues Passwort setzen", "Default" => "Standard", "Delete" => "Löschen" ); diff --git a/settings/l10n/de_DE.php b/settings/l10n/de_DE.php index cb735adfdf9..5358212dbcd 100644 --- a/settings/l10n/de_DE.php +++ b/settings/l10n/de_DE.php @@ -13,8 +13,15 @@ "Admins can't remove themself from the admin group" => "Administratoren können sich nicht selbst aus der admin-Gruppe löschen", "Unable to add user to group %s" => "Der Benutzer konnte nicht zur Gruppe %s hinzugefügt werden", "Unable to remove user from group %s" => "Der Benutzer konnte nicht aus der Gruppe %s entfernt werden", +"Couldn't update app." => "Die App konnte nicht geupdated werden.", +"Update to {appversion}" => "Update zu {appversion}", "Disable" => "Deaktivieren", "Enable" => "Aktivieren", +"Please wait...." => "Bitte warten....", +"Updating...." => "Update...", +"Error while updating app" => "Es ist ein Fehler während des Updates aufgetreten", +"Error" => "Fehler", +"Updated" => "Geupdated", "Saving..." => "Speichern...", "__language_name__" => "Deutsch (Förmlich: Sie)", "Add your App" => "Fügen Sie Ihre Anwendung hinzu", @@ -22,6 +29,7 @@ "Select an App" => "Wählen Sie eine Anwendung aus", "See application page at apps.owncloud.com" => "Weitere Anwendungen finden Sie auf apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-lizenziert von <span class=\"author\"></span>", +"Update" => "Update durchführen", "User Documentation" => "Dokumentation für Benutzer", "Administrator Documentation" => "Dokumentation für Administratoren", "Online Documentation" => "Online-Dokumentation", @@ -49,13 +57,17 @@ "Use this address to connect to your ownCloud in your file manager" => "Verwenden Sie diese Adresse, um Ihren Dateimanager mit Ihrer ownCloud zu verbinden", "Version" => "Version", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Entwickelt von der <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-Community</a>. Der <a href=\"https://github.com/owncloud\" target=\"_blank\">Quellcode</a> ist unter der <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> lizenziert.", +"Login Name" => "Loginname", "Groups" => "Gruppen", "Create" => "Anlegen", "Default Storage" => "Standard-Speicher", "Unlimited" => "Unbegrenzt", "Other" => "Andere", +"Display Name" => "Anzeigename", "Group Admin" => "Gruppenadministrator", "Storage" => "Speicher", +"change display name" => "Anzeigenamen ändern", +"set new password" => "Neues Passwort setzen", "Default" => "Standard", "Delete" => "Löschen" ); diff --git a/settings/l10n/el.php b/settings/l10n/el.php index beacb5e6147..90335ceaf02 100644 --- a/settings/l10n/el.php +++ b/settings/l10n/el.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Αδυναμία αφαίÏεσης χÏήστη από την ομάδα %s", "Disable" => "ΑπενεÏγοποίηση", "Enable" => "ΕνεÏγοποίηση", +"Error" => "Σφάλμα", "Saving..." => "Αποθήκευση...", "__language_name__" => "__όνομα_γλώσσας__", "Add your App" => "Î Ïόσθεστε τη Δικιά σας ΕφαÏμογή", @@ -22,6 +23,7 @@ "Select an App" => "ΕπιλÎξτε μια ΕφαÏμογή", "See application page at apps.owncloud.com" => "Δείτε την σελίδα εφαÏμογών στο apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-άδεια από <span class=\"author\"></span>", +"Update" => "ΕνημÎÏωση", "User Documentation" => "ΤεκμηÏίωση ΧÏήστη", "Administrator Documentation" => "ΤεκμηÏίωση ΔιαχειÏιστή", "Online Documentation" => "ΤεκμηÏίωση στο Διαδίκτυο", diff --git a/settings/l10n/eo.php b/settings/l10n/eo.php index e17380441cf..d9a7595255c 100644 --- a/settings/l10n/eo.php +++ b/settings/l10n/eo.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Ne eblis forigi la uzantan el la grupo %s", "Disable" => "Malkapabligi", "Enable" => "Kapabligi", +"Error" => "Eraro", "Saving..." => "Konservante...", "__language_name__" => "Esperanto", "Add your App" => "Aldonu vian aplikaĵon", @@ -22,6 +23,7 @@ "Select an App" => "Elekti aplikaĵon", "See application page at apps.owncloud.com" => "Vidu la paÄon pri aplikaĵoj ĉe apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"</span>-permesilhavigita de <span class=\"author\"></span>", +"Update" => "Äœisdatigi", "User Documentation" => "Dokumentaro por uzantoj", "Administrator Documentation" => "Dokumentaro por administrantoj", "Online Documentation" => "Reta dokumentaro", diff --git a/settings/l10n/es.php b/settings/l10n/es.php index 2bc2a12a5a9..0b82c3b7f01 100644 --- a/settings/l10n/es.php +++ b/settings/l10n/es.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Imposible eliminar al usuario del grupo %s", "Disable" => "Desactivar", "Enable" => "Activar", +"Error" => "Error", "Saving..." => "Guardando...", "__language_name__" => "Castellano", "Add your App" => "Añade tu aplicación", @@ -22,6 +23,7 @@ "Select an App" => "Seleccionar una aplicación", "See application page at apps.owncloud.com" => "Echa un vistazo a la web de aplicaciones apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licenciado por <span class=\"author\"></span>", +"Update" => "Actualizar", "User Documentation" => "Documentación del usuario", "Administrator Documentation" => "Documentación del adminsitrador", "Online Documentation" => "Documentación en linea", diff --git a/settings/l10n/es_AR.php b/settings/l10n/es_AR.php index bbf45bc5620..3ef0756ede7 100644 --- a/settings/l10n/es_AR.php +++ b/settings/l10n/es_AR.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "No es posible eliminar al usuario del grupo %s", "Disable" => "Desactivar", "Enable" => "Activar", +"Error" => "Error", "Saving..." => "Guardando...", "__language_name__" => "Castellano (Argentina)", "Add your App" => "Añadà tu aplicación", @@ -22,9 +23,10 @@ "Select an App" => "Seleccionar una aplicación", "See application page at apps.owncloud.com" => "Mirá la web de aplicaciones apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licenciado por <span class=\"author\">", +"Update" => "Actualizar", "User Documentation" => "Documentación de Usuario", "Administrator Documentation" => "Documentación de Administrador", -"Online Documentation" => "Documentación en linea", +"Online Documentation" => "Documentación en lÃnea", "Forum" => "Foro", "Bugtracker" => "Informar errores", "Commercial Support" => "Soporte comercial", @@ -49,11 +51,13 @@ "Use this address to connect to your ownCloud in your file manager" => "Utiliza esta dirección para conectarte con ownCloud en tu Administrador de Archivos", "Version" => "Versión", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desarrollado por la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidad ownCloud</a>, el <a href=\"https://github.com/owncloud\" target=\"_blank\">código fuente</a> está bajo licencia <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.", +"Login Name" => "Nombre de ", "Groups" => "Grupos", "Create" => "Crear", "Default Storage" => "Almacenamiento Predeterminado", "Unlimited" => "Ilimitado", "Other" => "Otro", +"Display Name" => "Nombre a mostrar", "Group Admin" => "Grupo Administrador", "Storage" => "Almacenamiento", "Default" => "Predeterminado", diff --git a/settings/l10n/et_EE.php b/settings/l10n/et_EE.php index 751c88ecb59..3f99aed1b88 100644 --- a/settings/l10n/et_EE.php +++ b/settings/l10n/et_EE.php @@ -14,6 +14,7 @@ "Unable to remove user from group %s" => "Kasutajat ei saa eemaldada grupist %s", "Disable" => "Lülita välja", "Enable" => "Lülita sisse", +"Error" => "Viga", "Saving..." => "Salvestamine...", "__language_name__" => "Eesti", "Add your App" => "Lisa oma rakendus", @@ -21,6 +22,7 @@ "Select an App" => "Vali programm", "See application page at apps.owncloud.com" => "Vaata rakenduste lehte aadressil apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-litsenseeritud <span class=\"author\"></span>", +"Update" => "Uuenda", "Clients" => "Kliendid", "Password" => "Parool", "Your password was changed" => "Sinu parooli on muudetud", diff --git a/settings/l10n/eu.php b/settings/l10n/eu.php index 29e3a810ca4..4a6cdc365ec 100644 --- a/settings/l10n/eu.php +++ b/settings/l10n/eu.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Ezin izan da erabiltzailea %s taldetik ezabatu", "Disable" => "Ez-gaitu", "Enable" => "Gaitu", +"Error" => "Errorea", "Saving..." => "Gordetzen...", "__language_name__" => "Euskera", "Add your App" => "Gehitu zure aplikazioa", @@ -22,6 +23,7 @@ "Select an App" => "Aukeratu programa bat", "See application page at apps.owncloud.com" => "Ikusi programen orria apps.owncloud.com en", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-lizentziatua <span class=\"author\"></span>", +"Update" => "Eguneratu", "User Documentation" => "Erabiltzaile dokumentazioa", "Administrator Documentation" => "Administradore dokumentazioa", "Online Documentation" => "Online dokumentazioa", @@ -49,11 +51,13 @@ "Use this address to connect to your ownCloud in your file manager" => "Erabili helbide hau zure fitxategi kudeatzailean zure ownCloudera konektatzeko", "Version" => "Bertsioa", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud komunitateak</a> garatuta, <a href=\"https://github.com/owncloud\" target=\"_blank\">itubruru kodea</a><a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr> lizentziarekin banatzen da</a>.", +"Login Name" => "Sarrera Izena", "Groups" => "Taldeak", "Create" => "Sortu", "Default Storage" => "Lehenetsitako Biltegiratzea", "Unlimited" => "Mugarik gabe", "Other" => "Besteak", +"Display Name" => "Bistaratze Izena", "Group Admin" => "Talde administradorea", "Storage" => "Biltegiratzea", "Default" => "Lehenetsia", diff --git a/settings/l10n/fa.php b/settings/l10n/fa.php index 59865c697cb..349af0e503f 100644 --- a/settings/l10n/fa.php +++ b/settings/l10n/fa.php @@ -7,6 +7,7 @@ "Invalid request" => "درخواست غیر قابل قبول", "Disable" => "ØºÛŒØ±ÙØ¹Ø§Ù„", "Enable" => "ÙØ¹Ø§Ù„", +"Error" => "خطا", "Saving..." => "Ø¯Ø±ØØ§Ù„ ذخیره ...", "__language_name__" => "__language_name__", "Add your App" => "برنامه خود را Ø¨ÛŒØ§ÙØ²Ø§ÛŒÛŒØ¯", diff --git a/settings/l10n/fi_FI.php b/settings/l10n/fi_FI.php index 84b18902b99..c1763dca15e 100644 --- a/settings/l10n/fi_FI.php +++ b/settings/l10n/fi_FI.php @@ -13,8 +13,15 @@ "Admins can't remove themself from the admin group" => "Ylläpitäjät eivät poistaa omia tunnuksiaan ylläpitäjien ryhmästä", "Unable to add user to group %s" => "Käyttäjän tai ryhmän %s lisääminen ei onnistu", "Unable to remove user from group %s" => "Käyttäjän poistaminen ryhmästä %s ei onnistu", +"Couldn't update app." => "Sovelluksen päivitys epäonnistui.", +"Update to {appversion}" => "Päivitä versioon {appversion}", "Disable" => "Poista käytöstä", "Enable" => "Käytä", +"Please wait...." => "Odota hetki...", +"Updating...." => "Päivitetään...", +"Error while updating app" => "Virhe sovellusta päivittäessä", +"Error" => "Virhe", +"Updated" => "Päivitetty", "Saving..." => "Tallennetaan...", "__language_name__" => "_kielen_nimi_", "Add your App" => "Lisää sovelluksesi", @@ -22,6 +29,7 @@ "Select an App" => "Valitse sovellus", "See application page at apps.owncloud.com" => "Katso sovellussivu osoitteessa apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-lisensoija <span class=\"author\"></span>", +"Update" => "Päivitä", "User Documentation" => "Käyttäjäohjeistus", "Administrator Documentation" => "Ylläpito-ohjeistus", "Online Documentation" => "Verkko-ohjeistus", @@ -49,11 +57,15 @@ "Use this address to connect to your ownCloud in your file manager" => "Käytä tätä osoitetta yhdistäessäsi ownCloudiisi tiedostonhallintaa käyttäen", "Version" => "Versio", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Kehityksestä on vastannut <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud-yhteisö</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">lähdekoodi</a> on julkaistu lisenssin <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> alaisena.", +"Login Name" => "Kirjautumisnimi", "Groups" => "Ryhmät", "Create" => "Luo", "Unlimited" => "Rajoittamaton", "Other" => "Muu", +"Display Name" => "Näyttönimi", "Group Admin" => "Ryhmän ylläpitäjä", +"change display name" => "vaihda näyttönimi", +"set new password" => "aseta uusi salasana", "Default" => "Oletus", "Delete" => "Poista" ); diff --git a/settings/l10n/fr.php b/settings/l10n/fr.php index 5b9495b566d..1e80ce13c1e 100644 --- a/settings/l10n/fr.php +++ b/settings/l10n/fr.php @@ -13,8 +13,14 @@ "Admins can't remove themself from the admin group" => "Les administrateurs ne peuvent pas se retirer eux-mêmes du groupe admin", "Unable to add user to group %s" => "Impossible d'ajouter l'utilisateur au groupe %s", "Unable to remove user from group %s" => "Impossible de supprimer l'utilisateur du groupe %s", +"Couldn't update app." => "Impossible de mettre à jour l'application", +"Update to {appversion}" => "Mettre à jour vers {appversion}", "Disable" => "Désactiver", "Enable" => "Activer", +"Please wait...." => "Veuillez patienter…", +"Error while updating app" => "Erreur lors de la mise à jour de l'application", +"Error" => "Erreur", +"Updated" => "Mise à jour effectuée avec succès", "Saving..." => "Sauvegarde...", "__language_name__" => "Français", "Add your App" => "Ajoutez votre application", @@ -22,6 +28,7 @@ "Select an App" => "Sélectionner une Application", "See application page at apps.owncloud.com" => "Voir la page des applications à l'url apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "Distribué sous licence <span class=\"licence\"></span>, par <span class=\"author\"></span>", +"Update" => "Mettre à jour", "User Documentation" => "Documentation utilisateur", "Administrator Documentation" => "Documentation administrateur", "Online Documentation" => "Documentation en ligne", @@ -49,13 +56,17 @@ "Use this address to connect to your ownCloud in your file manager" => "Utiliser cette adresse pour vous connecter à ownCloud dans votre gestionnaire de fichiers", "Version" => "Version", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Développé par la <a href=\"http://ownCloud.org/contact\" target=\"_blank\">communauté ownCloud</a>, le <a href=\"https://github.com/owncloud\" target=\"_blank\">code source</a> est publié sous license <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.", +"Login Name" => "Nom de la connexion", "Groups" => "Groupes", "Create" => "Créer", "Default Storage" => "Support de stockage par défaut", "Unlimited" => "Illimité", "Other" => "Autre", +"Display Name" => "Nom affiché", "Group Admin" => "Groupe Admin", "Storage" => "Support de stockage", +"change display name" => "Changer le nom affiché", +"set new password" => "Changer le mot de passe", "Default" => "Défaut", "Delete" => "Supprimer" ); diff --git a/settings/l10n/gl.php b/settings/l10n/gl.php index d3359f19513..595248f7c55 100644 --- a/settings/l10n/gl.php +++ b/settings/l10n/gl.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Non é posÃbel eliminar o usuario do grupo %s", "Disable" => "Desactivar", "Enable" => "Activar", +"Error" => "Erro", "Saving..." => "Gardando...", "__language_name__" => "Galego", "Add your App" => "Engada o seu aplicativo", @@ -22,6 +23,7 @@ "Select an App" => "Escolla un aplicativo", "See application page at apps.owncloud.com" => "Consulte a páxina do aplicativo en apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licenciado por<span class=\"author\"></span>", +"Update" => "Actualizar", "User Documentation" => "Documentación do usuario", "Administrator Documentation" => "Documentación do administrador", "Online Documentation" => "Documentación na Rede", diff --git a/settings/l10n/he.php b/settings/l10n/he.php index b7e76fbaeda..a3db2b9a36c 100644 --- a/settings/l10n/he.php +++ b/settings/l10n/he.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "×œ× × ×™×ª×Ÿ להסיר משתמש מהקבוצה %s", "Disable" => "בטל", "Enable" => "הפעל", +"Error" => "שגי××”", "Saving..." => "שומר..", "__language_name__" => "עברית", "Add your App" => "הוספת ×”×™×™×©×•× ×©×œ×š", @@ -22,6 +23,7 @@ "Select an App" => "בחירת יישו×", "See application page at apps.owncloud.com" => "צפה בעמוד ×”×™×©×•× ×‘ apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "ברישיון <span class=\"licence\"></span>לטובת <span class=\"author\"></span>", +"Update" => "עדכון", "User Documentation" => "תיעוד משתמש", "Administrator Documentation" => "תיעוד ×ž× ×”×œ×™×", "Online Documentation" => "תיעוד מקוון", diff --git a/settings/l10n/hr.php b/settings/l10n/hr.php index 010303eb44f..0548b0f84c7 100644 --- a/settings/l10n/hr.php +++ b/settings/l10n/hr.php @@ -7,6 +7,7 @@ "Invalid request" => "Neispravan zahtjev", "Disable" => "IskljuÄi", "Enable" => "UkljuÄi", +"Error" => "GreÅ¡ka", "Saving..." => "Spremanje...", "__language_name__" => "__ime_jezika__", "Add your App" => "Dodajte vaÅ¡u aplikaciju", diff --git a/settings/l10n/hu_HU.php b/settings/l10n/hu_HU.php index 2e096099360..d56ff7aa58a 100644 --- a/settings/l10n/hu_HU.php +++ b/settings/l10n/hu_HU.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "A felhasználó nem távolÃtható el ebbÅ‘l a csoportból: %s", "Disable" => "Letiltás", "Enable" => "Engedélyezés", +"Error" => "Hiba", "Saving..." => "Mentés...", "__language_name__" => "__language_name__", "Add your App" => "Az alkalmazás hozzáadása", @@ -22,6 +23,7 @@ "Select an App" => "Válasszon egy alkalmazást", "See application page at apps.owncloud.com" => "Lásd apps.owncloud.com, alkalmazások oldal", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-a jogtuladonos <span class=\"author\"></span>", +"Update" => "FrissÃtés", "User Documentation" => "Felhasználói leÃrás", "Administrator Documentation" => "ÜzemeltetÅ‘i leÃrás", "Online Documentation" => "Online leÃrás", diff --git a/settings/l10n/ia.php b/settings/l10n/ia.php index 121a1175e79..fe26eea5e28 100644 --- a/settings/l10n/ia.php +++ b/settings/l10n/ia.php @@ -4,6 +4,7 @@ "__language_name__" => "Interlingua", "Add your App" => "Adder tu application", "Select an App" => "Selectionar un app", +"Update" => "Actualisar", "Clients" => "Clientes", "Password" => "Contrasigno", "Unable to change your password" => "Non pote cambiar tu contrasigno", diff --git a/settings/l10n/id.php b/settings/l10n/id.php index 0f04563fa3e..6a4d7a292b5 100644 --- a/settings/l10n/id.php +++ b/settings/l10n/id.php @@ -6,11 +6,13 @@ "Invalid request" => "Permintaan tidak valid", "Disable" => "NonAktifkan", "Enable" => "Aktifkan", +"Error" => "kesalahan", "Saving..." => "Menyimpan...", "__language_name__" => "__language_name__", "Add your App" => "Tambahkan App anda", "Select an App" => "Pilih satu aplikasi", "See application page at apps.owncloud.com" => "Lihat halaman aplikasi di apps.owncloud.com", +"Update" => "Pembaruan", "Clients" => "Klien", "Password" => "Password", "Unable to change your password" => "Tidak dapat merubah password anda", diff --git a/settings/l10n/is.php b/settings/l10n/is.php index 58730575343..2421916a5c3 100644 --- a/settings/l10n/is.php +++ b/settings/l10n/is.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Ekki tókst að fjarlægja notanda úr hópnum %s", "Disable" => "Gera óvirkt", "Enable" => "Virkja", +"Error" => "Villa", "Saving..." => "Er að vista ...", "__language_name__" => "__nafn_tungumáls__", "Add your App" => "Bæta við forriti", @@ -22,6 +23,7 @@ "Select an App" => "Veldu forrit", "See application page at apps.owncloud.com" => "Skoða sÃðu forrits hjá apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-leyfi skráð af <span class=\"author\"></span>", +"Update" => "Uppfæra", "User Documentation" => "Notenda handbók", "Administrator Documentation" => "Stjórnenda handbók", "Online Documentation" => "Handbók á netinu", diff --git a/settings/l10n/it.php b/settings/l10n/it.php index 2199f7d8db8..714c5c29c4c 100644 --- a/settings/l10n/it.php +++ b/settings/l10n/it.php @@ -13,8 +13,15 @@ "Admins can't remove themself from the admin group" => "Gli amministratori non possono rimuovere se stessi dal gruppo di amministrazione", "Unable to add user to group %s" => "Impossibile aggiungere l'utente al gruppo %s", "Unable to remove user from group %s" => "Impossibile rimuovere l'utente dal gruppo %s", +"Couldn't update app." => "Impossibile aggiornate l'applicazione.", +"Update to {appversion}" => "Aggiorna a {appversion}", "Disable" => "Disabilita", "Enable" => "Abilita", +"Please wait...." => "Attendere...", +"Updating...." => "Aggiornamento in corso...", +"Error while updating app" => "Errore durante l'aggiornamento", +"Error" => "Errore", +"Updated" => "Aggiornato", "Saving..." => "Salvataggio in corso...", "__language_name__" => "Italiano", "Add your App" => "Aggiungi la tua applicazione", @@ -22,6 +29,7 @@ "Select an App" => "Seleziona un'applicazione", "See application page at apps.owncloud.com" => "Vedere la pagina dell'applicazione su apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licenziato da <span class=\"author\"></span>", +"Update" => "Aggiorna", "User Documentation" => "Documentazione utente", "Administrator Documentation" => "Documentazione amministratore", "Online Documentation" => "Documentazione in linea", @@ -49,13 +57,17 @@ "Use this address to connect to your ownCloud in your file manager" => "Usa questo indirizzo per connetterti al tuo ownCloud dal tuo gestore file", "Version" => "Versione", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Sviluppato dalla <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunità di ownCloud</a>, il <a href=\"https://github.com/owncloud\" target=\"_blank\">codice sorgente</a> è licenziato nei termini della <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.", +"Login Name" => "Nome utente", "Groups" => "Gruppi", "Create" => "Crea", "Default Storage" => "Archiviazione predefinita", "Unlimited" => "Illimitata", "Other" => "Altro", +"Display Name" => "Nome visualizzato", "Group Admin" => "Gruppi amministrati", "Storage" => "Archiviazione", +"change display name" => "cambia il nome visualizzato", +"set new password" => "imposta una nuova password", "Default" => "Predefinito", "Delete" => "Elimina" ); diff --git a/settings/l10n/ja_JP.php b/settings/l10n/ja_JP.php index dbf8d7d13e8..41f16051fe8 100644 --- a/settings/l10n/ja_JP.php +++ b/settings/l10n/ja_JP.php @@ -13,8 +13,15 @@ "Admins can't remove themself from the admin group" => "管ç†è€…ã¯è‡ªèº«ã‚’管ç†è€…グループã‹ã‚‰å‰Šé™¤ã§ãã¾ã›ã‚“。", "Unable to add user to group %s" => "ユーザをグループ %s ã«è¿½åŠ ã§ãã¾ã›ã‚“", "Unable to remove user from group %s" => "ユーザをグループ %s ã‹ã‚‰å‰Šé™¤ã§ãã¾ã›ã‚“", +"Couldn't update app." => "アプリを更新出æ¥ã¾ã›ã‚“ã§ã—ãŸã€‚", +"Update to {appversion}" => "{appversion} ã«æ›´æ–°", "Disable" => "無効", "Enable" => "有効", +"Please wait...." => "ã—ã°ã‚‰ããŠå¾…ã¡ãã ã•ã„。", +"Updating...." => "æ›´æ–°ä¸....", +"Error while updating app" => "ã‚¢ãƒ—ãƒªã®æ›´æ–°ä¸ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿ", +"Error" => "エラー", +"Updated" => "更新済ã¿", "Saving..." => "ä¿å˜ä¸...", "__language_name__" => "Japanese (日本語)", "Add your App" => "ã‚¢ãƒ—ãƒªã‚’è¿½åŠ ", @@ -22,6 +29,7 @@ "Select an App" => "ã‚¢ãƒ—ãƒªã‚’é¸æŠžã—ã¦ãã ã•ã„", "See application page at apps.owncloud.com" => "apps.owncloud.com ã§ã‚¢ãƒ—リケーションã®ãƒšãƒ¼ã‚¸ã‚’見ã¦ãã ã•ã„", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-ライセンス: <span class=\"author\"></span>", +"Update" => "æ›´æ–°", "User Documentation" => "ユーザドã‚ュメント", "Administrator Documentation" => "管ç†è€…ドã‚ュメント", "Online Documentation" => "オンラインドã‚ュメント", @@ -49,13 +57,17 @@ "Use this address to connect to your ownCloud in your file manager" => "ファイルマãƒãƒ¼ã‚¸ãƒ£ã§ownCloudã«æŽ¥ç¶šã™ã‚‹éš›ã¯ã“ã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’利用ã—ã¦ãã ã•ã„", "Version" => "ãƒãƒ¼ã‚¸ãƒ§ãƒ³", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>ã«ã‚ˆã‚Šé–‹ç™ºã•れã¦ã„ã¾ã™ã€<a href=\"https://github.com/owncloud\" target=\"_blank\">ソースコード</a>ライセンスã¯ã€<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a> ライセンスã«ã‚ˆã‚Šæä¾›ã•れã¦ã„ã¾ã™ã€‚", +"Login Name" => "ãƒã‚°ã‚¤ãƒ³å", "Groups" => "グループ", "Create" => "作æˆ", "Default Storage" => "デフォルトストレージ", "Unlimited" => "無制é™", "Other" => "ãã®ä»–", +"Display Name" => "表示å", "Group Admin" => "グループ管ç†è€…", "Storage" => "ストレージ", +"change display name" => "表示åを変更", +"set new password" => "æ–°ã—ã„パスワードをè¨å®š", "Default" => "デフォルト", "Delete" => "削除" ); diff --git a/settings/l10n/ka_GE.php b/settings/l10n/ka_GE.php index 2bc2e7d5de7..346c89dbc7d 100644 --- a/settings/l10n/ka_GE.php +++ b/settings/l10n/ka_GE.php @@ -14,6 +14,7 @@ "Unable to remove user from group %s" => "მáƒáƒ›áƒ®áƒ›áƒáƒ ებლის წáƒáƒ¨áƒšáƒ ვერმáƒáƒ®áƒ”ხდრჯგუფიდáƒáƒœ %s", "Disable" => "გáƒáƒ›áƒáƒ თვáƒ", "Enable" => "ჩáƒáƒ თვáƒ", +"Error" => "შეცდáƒáƒ›áƒ", "Saving..." => "შენáƒáƒ®áƒ•áƒ...", "__language_name__" => "__language_name__", "Add your App" => "დáƒáƒáƒ›áƒáƒ¢áƒ” შენი áƒáƒžáƒšáƒ˜áƒ™áƒáƒªáƒ˜áƒ", @@ -21,6 +22,7 @@ "Select an App" => "áƒáƒ˜áƒ ჩიეთ áƒáƒžáƒšáƒ˜áƒ™áƒáƒªáƒ˜áƒ", "See application page at apps.owncloud.com" => "ნáƒáƒ®áƒ”თ áƒáƒžáƒšáƒ˜áƒ™áƒáƒªáƒ˜áƒ˜áƒ¡ გვერდი apps.owncloud.com –ზე", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-ლიცენსირებულირ<span class=\"author\"></span>", +"Update" => "გáƒáƒœáƒáƒ®áƒšáƒ”ბáƒ", "Clients" => "კლიენტები", "Password" => "პáƒáƒ áƒáƒšáƒ˜", "Your password was changed" => "თქვენი პáƒáƒ áƒáƒšáƒ˜ შეიცვáƒáƒšáƒ", diff --git a/settings/l10n/ko.php b/settings/l10n/ko.php index 3a794eb3ceb..e82ecaeba6b 100644 --- a/settings/l10n/ko.php +++ b/settings/l10n/ko.php @@ -15,22 +15,24 @@ "Unable to remove user from group %s" => "그룹 %sì—서 사용ìžë¥¼ ì‚ì œí• ìˆ˜ 없습니다.", "Disable" => "비활성화", "Enable" => "활성화", +"Error" => "오류", "Saving..." => "ì €ìž¥ 중...", "__language_name__" => "한êµì–´", "Add your App" => "앱 추가", "More Apps" => "ë” ë§Žì€ ì•±", "Select an App" => "앱 ì„ íƒ", "See application page at apps.owncloud.com" => "apps.owncloud.comì— ìžˆëŠ” 앱 페ì´ì§€ë¥¼ ì°¸ê³ í•˜ì‹ì‹œì˜¤", -"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-ë¼ì´ì„ 스 ë³´ìœ ìž <span class=\"author\"></span>", -"User Documentation" => "ìœ ì € 문서", +"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-ë¼ì´ì„ 스ë¨: <span class=\"author\"></span>", +"Update" => "ì—…ë°ì´íЏ", +"User Documentation" => "ì‚¬ìš©ìž ë¬¸ì„œ", "Administrator Documentation" => "ê´€ë¦¬ìž ë¬¸ì„œ", "Online Documentation" => "온ë¼ì¸ 문서", "Forum" => "í¬ëŸ¼", -"Bugtracker" => "버그트래커", +"Bugtracker" => "버그 트래커", "Commercial Support" => "ìƒì—…ìš© ì§€ì›", "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "현재 공간 <strong>%s</strong>/<strong>%s</strong>ì„(를) 사용 중입니다", -"Clients" => "ê³ ê°", -"Download Desktop Clients" => "ë°ìФí¬íƒ‘ í´ë¼ì´ì–¸íЏ 다운로드", +"Clients" => "í´ë¼ì´ì–¸íЏ", +"Download Desktop Clients" => "ë°ìФí¬í†± í´ë¼ì´ì–¸íЏ 다운로드", "Download Android Client" => "안드로ì´ë“œ í´ë¼ì´ì–¸íЏ 다운로드", "Download iOS Client" => "iOS í´ë¼ì´ì–¸íЏ 다운로드", "Password" => "암호", @@ -46,16 +48,20 @@ "Language" => "언어", "Help translate" => "ë²ˆì— ë•기", "WebDAV" => "WebDAV", -"Use this address to connect to your ownCloud in your file manager" => "íŒŒì¼ ë§¤ë‹ˆì €ì—서 사용ìžì˜ ownCloudì— ì ‘ì†í•˜ê¸° 위해 ì´ ì£¼ì†Œë¥¼ 사용하ì‹ì‹œìš”.", -"Version" => "ë²„ì ¼", +"Use this address to connect to your ownCloud in your file manager" => "íŒŒì¼ ê´€ë¦¬ìžì—서 ownCloudì— ì ‘ì†í•˜ë ¤ë©´ ì´ ì£¼ì†Œë¥¼ 사용하ì‹ì‹œì˜¤.", +"Version" => "ë²„ì „", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 커뮤니티</a>ì— ì˜í•´ì„œ 개발ë˜ì—ˆìŠµë‹ˆë‹¤. <a href=\"https://github.com/owncloud\" target=\"_blank\">ì›ë³¸ 코드</a>는 <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>ì— ë”°ë¼ ì‚¬ìš©ì´ í—ˆê°€ë©ë‹ˆë‹¤.", +"Login Name" => "ë¡œê·¸ì¸ ì´ë¦„", "Groups" => "그룹", "Create" => "만들기", "Default Storage" => "기본 ì €ìž¥ì†Œ", "Unlimited" => "ë¬´ì œí•œ", "Other" => "기타", +"Display Name" => "표시 ì´ë¦„", "Group Admin" => "그룹 관리ìž", "Storage" => "ì €ìž¥ì†Œ", +"change display name" => "표시 ì´ë¦„ 변경", +"set new password" => "새 암호 ì„¤ì •", "Default" => "기본값", "Delete" => "ì‚ì œ" ); diff --git a/settings/l10n/ku_IQ.php b/settings/l10n/ku_IQ.php index ef9e806e595..a7d2daa70ba 100644 --- a/settings/l10n/ku_IQ.php +++ b/settings/l10n/ku_IQ.php @@ -1,6 +1,8 @@ <?php $TRANSLATIONS = array( "Enable" => "چالاککردن", +"Error" => "هه‌ڵه", "Saving..." => "پاشکه‌وتده‌کات...", +"Update" => "نوێکردنه‌وه", "Password" => "وشەی تێپەربو", "New password" => "وشەی نهێنی نوێ", "Email" => "ئیمه‌یل" diff --git a/settings/l10n/lb.php b/settings/l10n/lb.php index 04acf53de43..1c8cff81b0f 100644 --- a/settings/l10n/lb.php +++ b/settings/l10n/lb.php @@ -7,6 +7,7 @@ "Invalid request" => "Ongülteg Requête", "Disable" => "Ofschalten", "Enable" => "Aschalten", +"Error" => "Fehler", "Saving..." => "Speicheren...", "__language_name__" => "__language_name__", "Add your App" => "Setz deng App bei", diff --git a/settings/l10n/lt_LT.php b/settings/l10n/lt_LT.php index e8c1577c7fb..335505b4539 100644 --- a/settings/l10n/lt_LT.php +++ b/settings/l10n/lt_LT.php @@ -8,12 +8,14 @@ "Invalid request" => "Klaidinga užklausa", "Disable" => "IÅ¡jungti", "Enable" => "Ä®jungti", +"Error" => "Klaida", "Saving..." => "Saugoma..", "__language_name__" => "Kalba", "Add your App" => "PridÄ—ti programÄ—lÄ™", "More Apps" => "Daugiau aplikacijų", "Select an App" => "Pasirinkite programÄ…", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>- autorius<span class=\"author\"></span>", +"Update" => "Atnaujinti", "Clients" => "Klientai", "Password" => "Slaptažodis", "Your password was changed" => "JÅ«sų slaptažodis buvo pakeistas", diff --git a/settings/l10n/lv.php b/settings/l10n/lv.php index 4cafe3ab71d..efbbc8f1abd 100644 --- a/settings/l10n/lv.php +++ b/settings/l10n/lv.php @@ -1,44 +1,73 @@ <?php $TRANSLATIONS = array( -"Unable to load list from App Store" => "Nebija iespÄ“jams lejuplÄdÄ“t sarakstu no aplikÄciju veikala", +"Unable to load list from App Store" => "Nevar lejupielÄdÄ“t sarakstu no lietotņu veikala", "Group already exists" => "Grupa jau eksistÄ“", "Unable to add group" => "Nevar pievienot grupu", -"Could not enable app. " => "Nevar ieslÄ“gt aplikÄciju.", -"Email saved" => "Epasts tika saglabÄts", -"Invalid email" => "Nepareizs epasts", +"Could not enable app. " => "NevarÄ“ja aktivÄ“t lietotni.", +"Email saved" => "E-pasts tika saglabÄts", +"Invalid email" => "NederÄ«gs epasts", "Unable to delete group" => "Nevar izdzÄ“st grupu", -"Authentication error" => "IelogoÅ¡anÄs kļūme", +"Authentication error" => "AutentifikÄcijas kļūda", "Unable to delete user" => "Nevar izdzÄ“st lietotÄju", "Language changed" => "Valoda tika nomainÄ«ta", -"Invalid request" => "Nepareizs vaicÄjums", +"Invalid request" => "NederÄ«gs pieprasÄ«jums", +"Admins can't remove themself from the admin group" => "Administratori nevar izņemt paÅ¡i sevi no administratoru grupas", "Unable to add user to group %s" => "Nevar pievienot lietotÄju grupai %s", -"Unable to remove user from group %s" => "Nevar noņemt lietotÄju no grupas %s", -"Disable" => "Atvienot", -"Enable" => "Pievienot", +"Unable to remove user from group %s" => "Nevar izņemt lietotÄju no grupas %s", +"Couldn't update app." => "NevarÄ“ja atjauninÄt lietotni.", +"Update to {appversion}" => "AtjauninÄt uz {appversion}", +"Disable" => "DeaktivÄ“t", +"Enable" => "AktivÄ“t", +"Please wait...." => "LÅ«dzu, uzgaidiet....", +"Updating...." => "Atjaunina....", +"Error while updating app" => "Kļūda, atjauninot lietotni", +"Error" => "Kļūda", +"Updated" => "AtjauninÄta", "Saving..." => "SaglabÄ...", "__language_name__" => "__valodas_nosaukums__", -"Add your App" => "Pievieno savu aplikÄciju", -"More Apps" => "VairÄk aplikÄciju", -"Select an App" => "IzvÄ“lies aplikÄciju", -"See application page at apps.owncloud.com" => "Apskatie aplikÄciju lapu - apps.owncloud.com", +"Add your App" => "Pievieno savu lietotni", +"More Apps" => "VairÄk lietotņu", +"Select an App" => "IzvÄ“lies lietotni", +"See application page at apps.owncloud.com" => "Apskati lietotņu lapu — apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licencÄ“ts no <span class=\"author\"></span>", +"Update" => "AtjauninÄt", +"User Documentation" => "LietotÄja dokumentÄcija", +"Administrator Documentation" => "Administratora dokumentÄcija", +"Online Documentation" => "TieÅ¡saistes dokumentÄcija", +"Forum" => "Forums", +"Bugtracker" => "Kļūdu sekotÄjs", +"Commercial Support" => "KomerciÄlais atbalsts", "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "JÅ«s lietojat <strong>%s</strong> no pieejamajiem <strong>%s</strong>", "Clients" => "Klienti", +"Download Desktop Clients" => "LejupielÄdÄ“t darbvirsmas klientus", +"Download Android Client" => "LejupielÄdÄ“t Android klientu", +"Download iOS Client" => "LejupielÄdÄ“t iOS klientu", "Password" => "Parole", "Your password was changed" => "JÅ«ru parole tika nomainÄ«ta", -"Unable to change your password" => "Nav iespÄ“jams nomainÄ«t jÅ«su paroli", +"Unable to change your password" => "Nevar nomainÄ«t jÅ«su paroli", "Current password" => "PaÅ¡reizÄ“jÄ parole", "New password" => "Jauna parole", "show" => "parÄdÄ«t", -"Change password" => "NomainÄ«t paroli", -"Email" => "Epasts", -"Your email address" => "JÅ«su epasta adrese", -"Fill in an email address to enable password recovery" => "Ievadiet epasta adresi, lai vÄ“lak bÅ«tu iespÄ“ja atgÅ«t paroli, ja bÅ«s nepiecieÅ¡amÄ«ba", +"Change password" => "MainÄ«t paroli", +"Email" => "E-pasts", +"Your email address" => "JÅ«su e-pasta adrese", +"Fill in an email address to enable password recovery" => "Ievadiet epasta adresi, lai vÄ“lÄk varÄ“tu atgÅ«t paroli, ja bÅ«s nepiecieÅ¡amÄ«ba", "Language" => "Valoda", "Help translate" => "PalÄ«dzi tulkot", +"WebDAV" => "WebDAV", +"Use this address to connect to your ownCloud in your file manager" => "Izmanto Å¡o adresi, lai, izmantojot datņu pÄrvaldnieku, savienotos ar savu ownCloud", +"Version" => "Versija", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "IzstrÄdÄjusi<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud kopiena</a>,<a href=\"https://github.com/owncloud\" target=\"_blank\">pirmkodu</a>kurÅ¡ ir licencÄ“ts zem <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.", +"Login Name" => "IerakstīšanÄs vÄrds", "Groups" => "Grupas", "Create" => "Izveidot", +"Default Storage" => "NoklusÄ“juma krÄtuve", +"Unlimited" => "Neierobežota", "Other" => "Cits", +"Display Name" => "Redzamais vÄrds", "Group Admin" => "Grupas administrators", -"Delete" => "IzdzÄ“st" +"Storage" => "KrÄtuve", +"change display name" => "mainÄ«t redzamo vÄrdu", +"set new password" => "iestatÄ«t jaunu paroli", +"Default" => "NoklusÄ“juma", +"Delete" => "DzÄ“st" ); diff --git a/settings/l10n/mk.php b/settings/l10n/mk.php index b041d41923a..7705b870b37 100644 --- a/settings/l10n/mk.php +++ b/settings/l10n/mk.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Ðеможе да избришам кориÑник од група %s", "Disable" => "Оневозможи", "Enable" => "Овозможи", +"Error" => "Грешка", "Saving..." => "Снимам...", "__language_name__" => "__language_name__", "Add your App" => "Додадете ја Вашата апликација", @@ -22,6 +23,7 @@ "Select an App" => "Избери аппликација", "See application page at apps.owncloud.com" => "Види ја Ñтраницата Ñо апликации на apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-лиценцирано од <span class=\"author\"></span>", +"Update" => "Ðжурирај", "User Documentation" => "КориÑничка документација", "Administrator Documentation" => "ÐдминиÑтраторÑка документација", "Online Documentation" => "Документација на интернет", diff --git a/settings/l10n/ms_MY.php b/settings/l10n/ms_MY.php index e2537679a69..22114cfc2dd 100644 --- a/settings/l10n/ms_MY.php +++ b/settings/l10n/ms_MY.php @@ -6,11 +6,13 @@ "Invalid request" => "Permintaan tidak sah", "Disable" => "Nyahaktif", "Enable" => "Aktif", +"Error" => "Ralat", "Saving..." => "Simpan...", "__language_name__" => "_nama_bahasa_", "Add your App" => "Tambah apps anda", "Select an App" => "Pilih aplikasi", "See application page at apps.owncloud.com" => "Lihat halaman applikasi di apps.owncloud.com", +"Update" => "Kemaskini", "Clients" => "klien", "Password" => "Kata laluan ", "Unable to change your password" => "Gagal mengubah kata laluan anda ", diff --git a/settings/l10n/nb_NO.php b/settings/l10n/nb_NO.php index ecd1466e7ee..0e627120bd6 100644 --- a/settings/l10n/nb_NO.php +++ b/settings/l10n/nb_NO.php @@ -14,12 +14,14 @@ "Unable to remove user from group %s" => "Kan ikke slette bruker fra gruppen %s", "Disable" => "SlÃ¥ avBehandle ", "Enable" => "SlÃ¥ pÃ¥", +"Error" => "Feil", "Saving..." => "Lagrer...", "__language_name__" => "__language_name__", "Add your App" => "Legg til din App", "More Apps" => "Flere Apps", "Select an App" => "Velg en app", "See application page at apps.owncloud.com" => "Se applikasjonens side pÃ¥ apps.owncloud.org", +"Update" => "Oppdater", "User Documentation" => "Brukerdokumentasjon", "Administrator Documentation" => "Administratordokumentasjon", "Commercial Support" => "Kommersiell støtte", diff --git a/settings/l10n/nl.php b/settings/l10n/nl.php index af76f376683..72c9108ef9c 100644 --- a/settings/l10n/nl.php +++ b/settings/l10n/nl.php @@ -13,8 +13,14 @@ "Admins can't remove themself from the admin group" => "Admins kunnen zichzelf niet uit de admin groep verwijderen", "Unable to add user to group %s" => "Niet in staat om gebruiker toe te voegen aan groep %s", "Unable to remove user from group %s" => "Niet in staat om gebruiker te verwijderen uit groep %s", +"Couldn't update app." => "Kon de app niet bijwerken.", +"Update to {appversion}" => "Bijwerken naar {appversion}", "Disable" => "Uitschakelen", "Enable" => "Inschakelen", +"Please wait...." => "Even geduld aub....", +"Error while updating app" => "Fout bij bijwerken app", +"Error" => "Fout", +"Updated" => "Bijgewerkt", "Saving..." => "Aan het bewaren.....", "__language_name__" => "Nederlands", "Add your App" => "App toevoegen", @@ -22,6 +28,7 @@ "Select an App" => "Selecteer een app", "See application page at apps.owncloud.com" => "Zie de applicatiepagina op apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-Gelicenseerd door <span class=\"author\"></span>", +"Update" => "Bijwerken", "User Documentation" => "Gebruikersdocumentatie", "Administrator Documentation" => "Beheerdersdocumentatie", "Online Documentation" => "Online documentatie", @@ -49,13 +56,17 @@ "Use this address to connect to your ownCloud in your file manager" => "Gebruik dit adres om te verbinden met uw ownCloud in uw bestandsbeheer", "Version" => "Versie", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Ontwikkeld door de <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud gemeenschap</a>, de <a href=\"https://github.com/owncloud\" target=\"_blank\">bron code</a> is gelicenseerd onder de <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.", +"Login Name" => "Inlognaam", "Groups" => "Groepen", "Create" => "Creëer", "Default Storage" => "Default opslag", "Unlimited" => "Ongelimiteerd", "Other" => "Andere", +"Display Name" => "Weergavenaam", "Group Admin" => "Groep beheerder", "Storage" => "Opslag", +"change display name" => "wijzig weergavenaam", +"set new password" => "Instellen nieuw wachtwoord", "Default" => "Default", "Delete" => "verwijderen" ); diff --git a/settings/l10n/nn_NO.php b/settings/l10n/nn_NO.php index 778e7afc265..279939b3d34 100644 --- a/settings/l10n/nn_NO.php +++ b/settings/l10n/nn_NO.php @@ -7,8 +7,10 @@ "Invalid request" => "Ugyldig førespurnad", "Disable" => "SlÃ¥ av", "Enable" => "SlÃ¥ pÃ¥", +"Error" => "Feil", "__language_name__" => "Nynorsk", "Select an App" => "Vel ein applikasjon", +"Update" => "Oppdater", "Clients" => "Klientar", "Password" => "Passord", "Unable to change your password" => "Klarte ikkje Ã¥ endra passordet", diff --git a/settings/l10n/oc.php b/settings/l10n/oc.php index e8ed2d52758..c89fa2ae505 100644 --- a/settings/l10n/oc.php +++ b/settings/l10n/oc.php @@ -14,6 +14,7 @@ "Unable to remove user from group %s" => "Pas capable de tira un usancièr del grop %s", "Disable" => "Desactiva", "Enable" => "Activa", +"Error" => "Error", "Saving..." => "Enregistra...", "__language_name__" => "__language_name__", "Add your App" => "Ajusta ton App", diff --git a/settings/l10n/pl.php b/settings/l10n/pl.php index 656636b258e..9c05904f259 100644 --- a/settings/l10n/pl.php +++ b/settings/l10n/pl.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Nie można usunąć użytkownika z grupy %s", "Disable" => "Wyłącz", "Enable" => "Włącz", +"Error" => "Błąd", "Saving..." => "Zapisywanie...", "__language_name__" => "Polski", "Add your App" => "Dodaj aplikacje", @@ -22,6 +23,7 @@ "Select an App" => "Zaznacz aplikacje", "See application page at apps.owncloud.com" => "Zobacz stronÄ™ aplikacji na apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licencjonowane przez <span class=\"author\"></span>", +"Update" => "Zaktualizuj", "User Documentation" => "Dokumentacja użytkownika", "Administrator Documentation" => "Dokumentacja Administratora", "Online Documentation" => "Dokumentacja Online", diff --git a/settings/l10n/pl_PL.php b/settings/l10n/pl_PL.php index ab81cb23465..7dcd2fdfae8 100644 --- a/settings/l10n/pl_PL.php +++ b/settings/l10n/pl_PL.php @@ -1,3 +1,4 @@ <?php $TRANSLATIONS = array( +"Update" => "Uaktualnienie", "Email" => "Email" ); diff --git a/settings/l10n/pt_BR.php b/settings/l10n/pt_BR.php index f14233d7e58..a9285d8c407 100644 --- a/settings/l10n/pt_BR.php +++ b/settings/l10n/pt_BR.php @@ -1,29 +1,39 @@ <?php $TRANSLATIONS = array( -"Unable to load list from App Store" => "Não foi possivel carregar lista da App Store", +"Unable to load list from App Store" => "Não foi possÃvel carregar lista da App Store", "Group already exists" => "Grupo já existe", -"Unable to add group" => "Não foi possivel adicionar grupo", -"Could not enable app. " => "Não pôde habilitar aplicação", -"Email saved" => "Email gravado", -"Invalid email" => "Email inválido", -"Unable to delete group" => "Não foi possivel remover grupo", -"Authentication error" => "erro de autenticação", -"Unable to delete user" => "Não foi possivel remover usuário", -"Language changed" => "Mudou Idioma", +"Unable to add group" => "Não foi possÃvel adicionar grupo", +"Could not enable app. " => "Não foi possÃvel habilitar aplicativo.", +"Email saved" => "E-mail guardado", +"Invalid email" => "E-mail inválido", +"Unable to delete group" => "Não foi possÃvel remover grupo", +"Authentication error" => "Erro de autenticação", +"Unable to delete user" => "Não foi possÃvel remover usuário", +"Language changed" => "Idioma alterado", "Invalid request" => "Pedido inválido", "Admins can't remove themself from the admin group" => "Admins não podem se remover do grupo admin", -"Unable to add user to group %s" => "Não foi possivel adicionar usuário ao grupo %s", -"Unable to remove user from group %s" => "Não foi possivel remover usuário ao grupo %s", -"Disable" => "Desabilitado", -"Enable" => "Habilitado", -"Saving..." => "Gravando...", -"__language_name__" => "Português do Brasil", +"Unable to add user to group %s" => "Não foi possÃvel adicionar usuário ao grupo %s", +"Unable to remove user from group %s" => "Não foi possÃvel remover usuário do grupo %s", +"Disable" => "Desabilitar", +"Enable" => "Habilitar", +"Error" => "Erro", +"Saving..." => "Guardando...", +"__language_name__" => "Português (Brasil)", "Add your App" => "Adicione seu Aplicativo", "More Apps" => "Mais Apps", -"Select an App" => "Selecione uma Aplicação", +"Select an App" => "Selecione um Aplicativo", "See application page at apps.owncloud.com" => "Ver página do aplicativo em apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licenciado por <span class=\"author\"></span>", +"Update" => "Atualizar", +"User Documentation" => "Documentação de Usuário", +"Administrator Documentation" => "Documentação de Administrador", +"Online Documentation" => "Documentação Online", +"Forum" => "Fórum", +"Commercial Support" => "Suporte Comercial", "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Você usou <strong>%s</strong> do seu espaço de <strong>%s</strong>", "Clients" => "Clientes", +"Download Desktop Clients" => "Baixar Clientes Desktop", +"Download Android Client" => "Baixar Cliente Android", +"Download iOS Client" => "Baixar Cliente iOS", "Password" => "Senha", "Your password was changed" => "Sua senha foi alterada", "Unable to change your password" => "Não é possivel alterar a sua senha", @@ -31,15 +41,24 @@ "New password" => "Nova senha", "show" => "mostrar", "Change password" => "Alterar senha", -"Email" => "Email", -"Your email address" => "Seu endereço de email", -"Fill in an email address to enable password recovery" => "Preencha um endereço de email para habilitar a recuperação de senha", +"Email" => "E-mail", +"Your email address" => "Seu endereço de e-mail", +"Fill in an email address to enable password recovery" => "Preencha um endereço de e-mail para habilitar a recuperação de senha", "Language" => "Idioma", "Help translate" => "Ajude a traduzir", +"WebDAV" => "WebDAV", +"Use this address to connect to your ownCloud in your file manager" => "Usar este endereço para conectar-se ao seu ownCloud no seu gerenciador de arquivos", +"Version" => "Versão", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desenvolvido pela <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o <a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está licenciado sob <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.", +"Login Name" => "Nome de Login", "Groups" => "Grupos", "Create" => "Criar", +"Default Storage" => "Armazenamento Padrão", +"Unlimited" => "Ilimitado", "Other" => "Outro", +"Display Name" => "Nome de Exibição", "Group Admin" => "Grupo Administrativo", +"Storage" => "Armazenamento", +"Default" => "Padrão", "Delete" => "Apagar" ); diff --git a/settings/l10n/pt_PT.php b/settings/l10n/pt_PT.php index af5dfbf6e47..243dbeb8562 100644 --- a/settings/l10n/pt_PT.php +++ b/settings/l10n/pt_PT.php @@ -13,8 +13,15 @@ "Admins can't remove themself from the admin group" => "Os administradores não se podem remover a eles mesmos do grupo admin.", "Unable to add user to group %s" => "ImpossÃvel acrescentar utilizador ao grupo %s", "Unable to remove user from group %s" => "ImpossÃvel apagar utilizador do grupo %s", +"Couldn't update app." => "Não foi possÃvel actualizar a aplicação.", +"Update to {appversion}" => "Actualizar para a versão {appversion}", "Disable" => "Desactivar", "Enable" => "Activar", +"Please wait...." => "Por favor aguarde...", +"Updating...." => "A Actualizar...", +"Error while updating app" => "Erro enquanto actualizava a aplicação", +"Error" => "Erro", +"Updated" => "Actualizado", "Saving..." => "A guardar...", "__language_name__" => "__language_name__", "Add your App" => "Adicione a sua aplicação", @@ -22,6 +29,7 @@ "Select an App" => "Selecione uma aplicação", "See application page at apps.owncloud.com" => "Ver a página da aplicação em apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licenciado por <span class=\"author\"></span>", +"Update" => "Actualizar", "User Documentation" => "Documentação de Utilizador", "Administrator Documentation" => "Documentação de administrador.", "Online Documentation" => "Documentação Online", @@ -49,13 +57,17 @@ "Use this address to connect to your ownCloud in your file manager" => "Use este endereço no seu gestor de ficheiros para ligar à sua ownCloud", "Version" => "Versão", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Desenvolvido pela <a href=\"http://ownCloud.org/contact\" target=\"_blank\">comunidade ownCloud</a>, o<a href=\"https://github.com/owncloud\" target=\"_blank\">código fonte</a> está licenciado sob a <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.", +"Login Name" => "Nome de utilizador", "Groups" => "Grupos", "Create" => "Criar", "Default Storage" => "Armazenamento Padrão", "Unlimited" => "Ilimitado", "Other" => "Outro", +"Display Name" => "Nome público", "Group Admin" => "Grupo Administrador", "Storage" => "Armazenamento", +"change display name" => "modificar nome exibido", +"set new password" => "definir nova palavra-passe", "Default" => "Padrão", "Delete" => "Apagar" ); diff --git a/settings/l10n/ro.php b/settings/l10n/ro.php index 17a091c569c..d244bad31ba 100644 --- a/settings/l10n/ro.php +++ b/settings/l10n/ro.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Nu s-a putut elimina utilizatorul din grupul %s", "Disable" => "DezactivaÈ›i", "Enable" => "ActivaÈ›i", +"Error" => "Eroare", "Saving..." => "Salvez...", "__language_name__" => "_language_name_", "Add your App" => "Adaugă aplicaÈ›ia ta", @@ -22,6 +23,7 @@ "Select an App" => "Selectează o aplicaÈ›ie", "See application page at apps.owncloud.com" => "Vizualizează pagina applicaÈ›iei pe apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licenÈ›iat <span class=\"author\"></span>", +"Update" => "Actualizare", "User Documentation" => "DocumentaÈ›ie utilizator", "Administrator Documentation" => "DocumentaÈ›ie administrator", "Online Documentation" => "DocumentaÈ›ie online", diff --git a/settings/l10n/ru.php b/settings/l10n/ru.php index 2194c886f1d..c364be95e51 100644 --- a/settings/l10n/ru.php +++ b/settings/l10n/ru.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Ðевозможно удалить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð· группы %s", "Disable" => "Выключить", "Enable" => "Включить", +"Error" => "Ошибка", "Saving..." => "Сохранение...", "__language_name__" => "РуÑÑкий ", "Add your App" => "Добавить приложение", @@ -22,6 +23,7 @@ "Select an App" => "Выберите приложение", "See application page at apps.owncloud.com" => "Смотрите Ð´Ð¾Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð½Ð° apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span> лицензиÑ. Ðвтор <span class=\"author\"></span>", +"Update" => "Обновить", "User Documentation" => "ПользовательÑÐºÐ°Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ", "Administrator Documentation" => "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратора", "Online Documentation" => "Online документациÑ", diff --git a/settings/l10n/ru_RU.php b/settings/l10n/ru_RU.php index 50c3b136c47..8d9ecf7e55e 100644 --- a/settings/l10n/ru_RU.php +++ b/settings/l10n/ru_RU.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Ðевозможно удалить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð· группы %s", "Disable" => "Отключить", "Enable" => "Включить", +"Error" => "Ошибка", "Saving..." => "Сохранение", "__language_name__" => "__Ñзык_имÑ__", "Add your App" => "Добавить Ваше приложение", @@ -22,6 +23,7 @@ "Select an App" => "Выбрать приложение", "See application page at apps.owncloud.com" => "ОбратитеÑÑŒ к Ñтранице приложений на apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>", +"Update" => "Обновить", "User Documentation" => "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ", "Administrator Documentation" => "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратора", "Online Documentation" => "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ online", @@ -56,6 +58,7 @@ "Other" => "Другой", "Group Admin" => "Группа Admin", "Storage" => "Хранилище", +"set new password" => "назначить новый пароль", "Default" => "По умолчанию", "Delete" => "Удалить" ); diff --git a/settings/l10n/si_LK.php b/settings/l10n/si_LK.php index 8d7bc7adf5a..4dbe31b9910 100644 --- a/settings/l10n/si_LK.php +++ b/settings/l10n/si_LK.php @@ -13,10 +13,12 @@ "Unable to remove user from group %s" => "පරිà·à·“ලකය෠%s à¶šà¶«à·Šà¶©à·à¶ºà¶¸à·’න් ඉවà¶à·Š à¶šà·… නොහà·à¶š", "Disable" => "à¶…à¶šà·Šâ€à¶»à·’ය කරන්න", "Enable" => "à¶šà·Šâ€à¶»à·’යà¶à·Šà¶¸à¶š කරන්න", +"Error" => "දà·à·‚යක්", "Saving..." => "සුරà·à¶šà·™à¶¸à·’න් à¶´à·€à¶à·“...", "Add your App" => "යෙදුමක් à¶‘à¶šà·Š කිරීම", "More Apps" => "à¶à·€à¶à·Š යෙදුම්", "Select an App" => "යෙදුමක් à¶à·œà¶»à¶±à·Šà¶±", +"Update" => "යà·à·€à¶à·Šà¶šà·à¶½ කිරීම", "Clients" => "සේවà·à¶½à·à¶·à·“න්", "Password" => "මුරපදය", "Your password was changed" => "ඔබගේ මුර පදය වෙනස් කෙරුණි", diff --git a/settings/l10n/sk_SK.php b/settings/l10n/sk_SK.php index 3941bd51ae7..6148f1476a2 100644 --- a/settings/l10n/sk_SK.php +++ b/settings/l10n/sk_SK.php @@ -13,8 +13,15 @@ "Admins can't remove themself from the admin group" => "Administrátori nesmú odstrániÅ¥ sami seba zo skupiny admin", "Unable to add user to group %s" => "Nie je možné pridaÅ¥ užÃvateľa do skupiny %s", "Unable to remove user from group %s" => "Nie je možné odstrániÅ¥ použÃvateľa zo skupiny %s", +"Couldn't update app." => "Nemožno aktualizovaÅ¥ aplikáciu.", +"Update to {appversion}" => "AktualizovaÅ¥ na {appversion}", "Disable" => "ZakázaÅ¥", "Enable" => "PovoliÅ¥", +"Please wait...." => "ÄŒakajte prosÃm...", +"Updating...." => "Aktualizujem...", +"Error while updating app" => "hyba pri aktualizácii aplikácie", +"Error" => "Chyba", +"Updated" => "Aktualizované", "Saving..." => "Ukladám...", "__language_name__" => "Slovensky", "Add your App" => "PridaÅ¥ vaÅ¡u aplikáciu", @@ -22,6 +29,7 @@ "Select an App" => "Vyberte aplikáciu", "See application page at apps.owncloud.com" => "Pozrite si stránku aplikácià na apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licencované <span class=\"author\"></span>", +"Update" => "AktualizovaÅ¥", "User Documentation" => "PrÃruÄka použÃvateľa", "Administrator Documentation" => "PrÃruÄka správcu", "Online Documentation" => "Online prÃruÄka", @@ -49,13 +57,17 @@ "Use this address to connect to your ownCloud in your file manager" => "Použite túto adresu pre pripojenie vášho ownCloud k súborovému správcovi", "Version" => "Verzia", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Vyvinuté <a href=\"http://ownCloud.org/contact\" target=\"_blank\">komunitou ownCloud</a>,<a href=\"https://github.com/owncloud\" target=\"_blank\">zdrojový kód</a> je licencovaný pod <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.", +"Login Name" => "Prihlasovacie meno", "Groups" => "Skupiny", "Create" => "VytvoriÅ¥", "Default Storage" => "Predvolené úložisko", "Unlimited" => "Nelimitované", "Other" => "Iné", +"Display Name" => "Zobrazované meno", "Group Admin" => "Správca skupiny", "Storage" => "Úložisko", +"change display name" => "zmeniÅ¥ zobrazované meno", +"set new password" => "nastaviÅ¥ nové heslo", "Default" => "Predvolené", "Delete" => "OdstrániÅ¥" ); diff --git a/settings/l10n/sl.php b/settings/l10n/sl.php index 98d34518478..1524f3c33da 100644 --- a/settings/l10n/sl.php +++ b/settings/l10n/sl.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Uporabnika ni mogoÄe odstraniti iz skupine %s", "Disable" => "OnemogoÄi", "Enable" => "OmogoÄi", +"Error" => "Napaka", "Saving..." => "Poteka shranjevanje ...", "__language_name__" => "__ime_jezika__", "Add your App" => "Dodaj program", @@ -22,6 +23,7 @@ "Select an App" => "Izberite program", "See application page at apps.owncloud.com" => "ObiÅ¡Äite spletno stran programa na apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-z dovoljenjem s strani <span class=\"author\"></span>", +"Update" => "Posodobi", "User Documentation" => "UporabniÅ¡ka dokumentacija", "Administrator Documentation" => "Administratorjeva dokumentacija", "Online Documentation" => "Spletna dokumentacija", diff --git a/settings/l10n/sr.php b/settings/l10n/sr.php index 9f0d428c2e1..e9c12e2ea0a 100644 --- a/settings/l10n/sr.php +++ b/settings/l10n/sr.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Ðе могу да уклоним кориÑника из групе %s", "Disable" => "ИÑкључи", "Enable" => "Укључи", +"Error" => "Грешка", "Saving..." => "Чување у току...", "__language_name__" => "__language_name__", "Add your App" => "Додајте ваш програм", @@ -22,6 +23,7 @@ "Select an App" => "Изаберите програм", "See application page at apps.owncloud.com" => "Погледајте Ñтраницу Ñа програмима на apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-лиценцирао <span class=\"author\"></span>", +"Update" => "Ðжурирај", "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "ИÑкориÑтили Ñте <strong>%s</strong> од дозвољених <strong>%s</strong>", "Clients" => "Клијенти", "Password" => "Лозинка", diff --git a/settings/l10n/sv.php b/settings/l10n/sv.php index 4c30873b3ca..239948a0f40 100644 --- a/settings/l10n/sv.php +++ b/settings/l10n/sv.php @@ -13,8 +13,15 @@ "Admins can't remove themself from the admin group" => "Administratörer kan inte ta bort sig själva frÃ¥n admingruppen", "Unable to add user to group %s" => "Kan inte lägga till användare i gruppen %s", "Unable to remove user from group %s" => "Kan inte radera användare frÃ¥n gruppen %s", +"Couldn't update app." => "Kunde inte uppdatera appen", +"Update to {appversion}" => "Uppdaterar till {appversion}", "Disable" => "Deaktivera", "Enable" => "Aktivera", +"Please wait...." => "Var god vänta...", +"Updating...." => "Uppdaterar...", +"Error while updating app" => "Fel uppstod vid uppdatering av appen", +"Error" => "Fel", +"Updated" => "Uppdaterad", "Saving..." => "Sparar...", "__language_name__" => "__language_name__", "Add your App" => "Lägg till din applikation", @@ -22,6 +29,7 @@ "Select an App" => "Välj en App", "See application page at apps.owncloud.com" => "Se programsida pÃ¥ apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licensierad av <span class=\"author\"></span>", +"Update" => "Uppdatera", "User Documentation" => "Användardokumentation", "Administrator Documentation" => "Administratördokumentation", "Online Documentation" => "Onlinedokumentation", @@ -49,13 +57,17 @@ "Use this address to connect to your ownCloud in your file manager" => "Använd denna adress för att ansluta till ownCloud i din filhanterare", "Version" => "Version", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "Utvecklad av <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud kommunity</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">källkoden</a> är licenserad under <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.", +"Login Name" => "Inloggningsnamn", "Groups" => "Grupper", "Create" => "Skapa", "Default Storage" => "Förvald lagring", "Unlimited" => "Obegränsad", "Other" => "Annat", +"Display Name" => "Visat namn", "Group Admin" => "Gruppadministratör", "Storage" => "Lagring", +"change display name" => "ändra visat namn", +"set new password" => "ange nytt lösenord", "Default" => "Förvald", "Delete" => "Radera" ); diff --git a/settings/l10n/ta_LK.php b/settings/l10n/ta_LK.php index 84f6026ca32..e383a297c4f 100644 --- a/settings/l10n/ta_LK.php +++ b/settings/l10n/ta_LK.php @@ -14,6 +14,7 @@ "Unable to remove user from group %s" => "கà¯à®´à¯ %s இலிரà¯à®¨à¯à®¤à¯ பயனாளரை நீகà¯à®•à®®à¯à®Ÿà®¿à®¯à®¾à®¤à¯", "Disable" => "இயலà¯à®®à¯ˆà®ªà¯à®ª", "Enable" => "செயலறà¯à®±à®¤à®¾à®•à¯à®•à¯à®•", +"Error" => "வழà¯", "Saving..." => "இயலà¯à®®à¯ˆà®ªà¯à®ªà®Ÿà¯à®¤à¯à®¤à¯à®•", "__language_name__" => "_மொழி_பெயரà¯_", "Add your App" => "உஙà¯à®•ளà¯à®Ÿà¯ˆà®¯ செயலியை சேரà¯à®•à¯à®•", @@ -21,6 +22,7 @@ "Select an App" => "செயலி ஒனà¯à®±à¯ˆ தெரிவà¯à®šà¯†à®¯à¯à®•", "See application page at apps.owncloud.com" => "apps.owncloud.com இல௠செயலி பகà¯à®•தà¯à®¤à¯ˆ பாரà¯à®•à¯à®•", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"அனà¯à®®à®¤à®¿à®ªà¯à®ªà®¤à¯à®¤à®¿à®°à®®à¯\"></span>-அனà¯à®®à®¤à®¿ பெறà¯à®± <span class=\"ஆசிரியரà¯\"></span>", +"Update" => "இறà¯à®±à¯ˆà®ªà¯à®ªà®Ÿà¯à®¤à¯à®¤à®²à¯", "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "நீஙà¯à®•ள௠<strong>%s</strong> இலà¯à®³à¯à®³ <strong>%s</strong>பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à®¿à®¯à¯à®³à¯à®³à¯€à®°à¯à®•ளà¯", "Clients" => "வாடிகà¯à®•ையாளரà¯à®•ளà¯", "Password" => "கடவà¯à®šà¯à®šà¯Šà®²à¯", diff --git a/settings/l10n/th_TH.php b/settings/l10n/th_TH.php index 3ef68cf7fe4..9350b78297b 100644 --- a/settings/l10n/th_TH.php +++ b/settings/l10n/th_TH.php @@ -13,8 +13,15 @@ "Admins can't remove themself from the admin group" => "ผู้ดูà¹à¸¥à¸£à¸°à¸šà¸šà¹„ม่สามารถลบตัวเà¸à¸‡à¸à¸à¸à¸ˆà¸²à¸à¸à¸¥à¸¸à¹ˆà¸¡à¸œà¸¹à¹‰à¸”ูà¹à¸¥à¹„ด้", "Unable to add user to group %s" => "ไม่สามารถเพิ่มผู้ใช้งานเข้าไปที่à¸à¸¥à¸¸à¹ˆà¸¡ %s ได้", "Unable to remove user from group %s" => "ไม่สามารถลบผู้ใช้งานà¸à¸à¸à¸ˆà¸²à¸à¸à¸¥à¸¸à¹ˆà¸¡ %s ได้", +"Couldn't update app." => "ไม่สามารถà¸à¸±à¸žà¹€à¸”ทà¹à¸à¸›à¸¯", +"Update to {appversion}" => "à¸à¸±à¸žà¹€à¸”ทไปเป็นรุ่น {appversion}", "Disable" => "ปิดใช้งาน", "Enable" => "เปิดใช้งาน", +"Please wait...." => "à¸à¸£à¸¸à¸“ารà¸à¸ªà¸±à¸à¸„รู่...", +"Updating...." => "à¸à¸³à¸¥à¸±à¸‡à¸à¸±à¸žà¹€à¸”ทข้à¸à¸¡à¸¹à¸¥...", +"Error while updating app" => "เà¸à¸´à¸”ข้à¸à¸œà¸´à¸”พลาดในระหว่างà¸à¸²à¸£à¸à¸±à¸žà¹€à¸”ทà¹à¸à¸›à¸¯", +"Error" => "ข้à¸à¸œà¸´à¸”พลาด", +"Updated" => "à¸à¸±à¸žà¹€à¸”ทà¹à¸¥à¹‰à¸§", "Saving..." => "à¸à¸³à¸¥à¸±à¸‡à¸šà¸±à¸™à¸—ึุà¸à¸‚้à¸à¸¡à¸¹à¸¥...", "__language_name__" => "ภาษาไทย", "Add your App" => "เพิ่มà¹à¸à¸›à¸‚à¸à¸‡à¸„ุณ", @@ -22,6 +29,7 @@ "Select an App" => "เลืà¸à¸ App", "See application page at apps.owncloud.com" => "ดูหน้าà¹à¸à¸žà¸žà¸¥à¸´à¹€à¸„ชั่นที่ apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-ลิขสิทธิ์à¸à¸²à¸£à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¹‚ดย <span class=\"author\"></span>", +"Update" => "à¸à¸±à¸žà¹€à¸”ท", "User Documentation" => "เà¸à¸à¸ªà¸²à¸£à¸„ู่มืà¸à¸à¸²à¸£à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¸ªà¸³à¸«à¸£à¸±à¸šà¸œà¸¹à¹‰à¹ƒà¸Šà¹‰à¸‡à¸²à¸™", "Administrator Documentation" => "เà¸à¸à¸ªà¸²à¸£à¸„ู่มืà¸à¸à¸²à¸£à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¸ªà¸³à¸«à¸£à¸±à¸šà¸œà¸¹à¹‰à¸”ูà¹à¸¥à¸£à¸°à¸šà¸š", "Online Documentation" => "เà¸à¸à¸ªà¸²à¸£à¸„ู่มืà¸à¸à¸²à¸£à¹ƒà¸Šà¹‰à¸‡à¸²à¸™à¸à¸à¸™à¹„ลน์", @@ -49,13 +57,17 @@ "Use this address to connect to your ownCloud in your file manager" => "ใช้ที่à¸à¸¢à¸¹à¹ˆà¸™à¸µà¹‰à¹€à¸žà¸·à¹ˆà¸à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•่à¸à¸à¸±à¸š ownCloud ในโปรà¹à¸à¸£à¸¡à¸ˆà¸±à¸”à¸à¸²à¸£à¹„ฟล์ขà¸à¸‡à¸„ุณ", "Version" => "รุ่น", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "พัฒนาโดย the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ชุมชนผู้ใช้งาน ownCloud</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">ซà¸à¸£à¹Œà¸ªà¹‚ค้ด</a>à¸à¸¢à¸¹à¹ˆà¸ ายใต้สัà¸à¸à¸²à¸à¸™à¸¸à¸à¸²à¸•ขà¸à¸‡ <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.", +"Login Name" => "ชื่à¸à¸—ี่ใช้สำหรับเข้าสู่ระบบ", "Groups" => "à¸à¸¥à¸¸à¹ˆà¸¡", "Create" => "สร้าง", "Default Storage" => "พื้นที่จำà¸à¸±à¸”ข้à¸à¸¡à¸¹à¸¥à¹€à¸£à¸´à¹ˆà¸¡à¸•้น", "Unlimited" => "ไม่จำà¸à¸±à¸”จำนวน", "Other" => "à¸à¸·à¹ˆà¸™à¹†", +"Display Name" => "ชื่à¸à¸—ี่ต้à¸à¸‡à¸à¸²à¸£à¹à¸ªà¸”ง", "Group Admin" => "ผู้ดูà¹à¸¥à¸à¸¥à¸¸à¹ˆà¸¡", "Storage" => "พื้นที่จัดเà¸à¹‡à¸šà¸‚้à¸à¸¡à¸¹à¸¥", +"change display name" => "เปลี่ยนชื่à¸à¸—ี่ต้à¸à¸‡à¸à¸²à¸£à¹ƒà¸«à¹‰à¹à¸ªà¸”ง", +"set new password" => "ตั้งค่ารหัสผ่านใหม่", "Default" => "ค่าเริ่มต้น", "Delete" => "ลบ" ); diff --git a/settings/l10n/tr.php b/settings/l10n/tr.php index 281e01e1162..89c8cf2829e 100644 --- a/settings/l10n/tr.php +++ b/settings/l10n/tr.php @@ -13,12 +13,14 @@ "Unable to add user to group %s" => "Kullanıcı %s grubuna eklenemiyor", "Disable" => "Etkin deÄŸil", "Enable" => "Etkin", +"Error" => "Hata", "Saving..." => "Kaydediliyor...", "__language_name__" => "__dil_adı__", "Add your App" => "Uygulamanı Ekle", "More Apps" => "Daha fazla App", "Select an App" => "Bir uygulama seçin", "See application page at apps.owncloud.com" => "Uygulamanın sayfasına apps.owncloud.com adresinden bakın ", +"Update" => "Güncelleme", "User Documentation" => "Kullanıcı Belgelendirmesi", "Administrator Documentation" => "Yönetici Belgelendirmesi", "Online Documentation" => "Çevrimiçi Belgelendirme", diff --git a/settings/l10n/uk.php b/settings/l10n/uk.php index dc2c537b4fb..035dbec3910 100644 --- a/settings/l10n/uk.php +++ b/settings/l10n/uk.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Ðе вдалоÑÑ Ð²Ð¸Ð´Ð°Ð»Ð¸Ñ‚Ð¸ кориÑтувача із групи %s", "Disable" => "Вимкнути", "Enable" => "Включити", +"Error" => "Помилка", "Saving..." => "Зберігаю...", "__language_name__" => "__language_name__", "Add your App" => "Додати Ñвою програму", @@ -22,6 +23,7 @@ "Select an App" => "Вибрати додаток", "See application page at apps.owncloud.com" => "ПереглÑньте Ñторінку програм на apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>", +"Update" => "Оновити", "User Documentation" => "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ ÐšÐ¾Ñ€Ð¸Ñтувача", "Administrator Documentation" => "Ð”Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ ÐдмініÑтратора", "Online Documentation" => "Он-Лайн ДокументаціÑ", diff --git a/settings/l10n/vi.php b/settings/l10n/vi.php index 39b09aa9382..3a133460a38 100644 --- a/settings/l10n/vi.php +++ b/settings/l10n/vi.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "Không thể xóa ngưá»i dùng từ nhóm %s", "Disable" => "Tắt", "Enable" => "Báºt", +"Error" => "Lá»—i", "Saving..." => "Äang tiến hà nh lưu ...", "__language_name__" => "__Ngôn ngữ___", "Add your App" => "Thêm ứng dụng cá»§a bạn", @@ -22,6 +23,7 @@ "Select an App" => "Chá»n má»™t ứng dụng", "See application page at apps.owncloud.com" => "Xem nhiá»u ứng dụng hÆ¡n tại apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-Giấy phép được cấp bởi <span class=\"author\"></span>", +"Update" => "Cáºp nháºt", "You have used <strong>%s</strong> of the available <strong>%s</strong>" => "Bạn đã sá» dụng <strong>%s </ strong> có sẵn <strong> %s </ strong>", "Clients" => "Khách hà ng", "Password" => "Máºt khẩu", diff --git a/settings/l10n/zh_CN.GB2312.php b/settings/l10n/zh_CN.GB2312.php index f8e37ac749f..6a957518564 100644 --- a/settings/l10n/zh_CN.GB2312.php +++ b/settings/l10n/zh_CN.GB2312.php @@ -14,6 +14,7 @@ "Unable to remove user from group %s" => "未能将用户从群组 %s 移除", "Disable" => "ç¦ç”¨", "Enable" => "å¯ç”¨", +"Error" => "出错", "Saving..." => "ä¿å˜ä¸...", "__language_name__" => "Chinese", "Add your App" => "æ·»åŠ ä½ çš„åº”ç”¨ç¨‹åº", @@ -21,6 +22,7 @@ "Select an App" => "选择一个程åº", "See application page at apps.owncloud.com" => "在owncloud.com上查看应用程åº", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>授æƒåè®® <span class=\"author\"></span>", +"Update" => "æ›´æ–°", "Clients" => "客户", "Password" => "密ç ", "Your password was changed" => "您的密ç ä»¥å˜æ›´", diff --git a/settings/l10n/zh_CN.php b/settings/l10n/zh_CN.php index dfcf7bf7bfe..48f890fb0c9 100644 --- a/settings/l10n/zh_CN.php +++ b/settings/l10n/zh_CN.php @@ -15,6 +15,7 @@ "Unable to remove user from group %s" => "æ— æ³•ä»Žç»„%sä¸ç§»é™¤ç”¨æˆ·", "Disable" => "ç¦ç”¨", "Enable" => "å¯ç”¨", +"Error" => "错误", "Saving..." => "æ£åœ¨ä¿å˜", "__language_name__" => "ç®€ä½“ä¸æ–‡", "Add your App" => "æ·»åŠ åº”ç”¨", @@ -22,6 +23,7 @@ "Select an App" => "选择一个应用", "See application page at apps.owncloud.com" => "查看在 app.owncloud.com 的应用程åºé¡µé¢", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-æ ¸å‡†ï¼š <span class=\"author\"></span>", +"Update" => "æ›´æ–°", "User Documentation" => "用户文档", "Administrator Documentation" => "管ç†å‘˜æ–‡æ¡£", "Online Documentation" => "在线文档", diff --git a/settings/l10n/zh_TW.php b/settings/l10n/zh_TW.php index 5fe555d14f0..b540549524d 100644 --- a/settings/l10n/zh_TW.php +++ b/settings/l10n/zh_TW.php @@ -13,8 +13,15 @@ "Admins can't remove themself from the admin group" => "管ç†è€…帳號無法從管ç†è€…群組ä¸ç§»é™¤", "Unable to add user to group %s" => "ä½¿ç”¨è€…åŠ å…¥ç¾¤çµ„%s錯誤", "Unable to remove user from group %s" => "使用者移出群組%s錯誤", +"Couldn't update app." => "無法更新應用程å¼", +"Update to {appversion}" => "更新至 {appversion}", "Disable" => "åœç”¨", "Enable" => "啟用", +"Please wait...." => "è«‹ç¨å€™...", +"Updating...." => "æ›´æ–°ä¸...", +"Error while updating app" => "更新應用程å¼éŒ¯èª¤", +"Error" => "錯誤", +"Updated" => "已更新", "Saving..." => "儲å˜ä¸...", "__language_name__" => "__語言_å稱__", "Add your App" => "æ·»åŠ ä½ çš„ App", @@ -22,6 +29,7 @@ "Select an App" => "鏿“‡ä¸€å€‹æ‡‰ç”¨ç¨‹å¼", "See application page at apps.owncloud.com" => "查看應用程å¼é 颿–¼ apps.owncloud.com", "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-æ ¸å‡†: <span class=\"author\"></span>", +"Update" => "æ›´æ–°", "User Documentation" => "用戶說明文件", "Administrator Documentation" => "管ç†è€…說明文件", "Online Documentation" => "線上說明文件", @@ -49,13 +57,17 @@ "Use this address to connect to your ownCloud in your file manager" => "在您的檔案管ç†å“¡ä¸ä½¿ç”¨é€™å€‹åœ°å€ä¾†é€£ç·šåˆ° ownCloud", "Version" => "版本", "Developed by the <a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud community</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">source code</a> is licensed under the <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>." => "ç”±<a href=\"http://ownCloud.org/contact\" target=\"_blank\">ownCloud 社å€</a>開發,<a href=\"https://github.com/owncloud\" target=\"_blank\">æºä»£ç¢¼</a>在<a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>許å¯è‰ä¸‹ç™¼å¸ƒã€‚", +"Login Name" => "登入å稱", "Groups" => "群組", "Create" => "å‰µé€ ", "Default Storage" => "é è¨å„²å˜å€", "Unlimited" => "ç„¡é™åˆ¶", "Other" => "å…¶ä»–", +"Display Name" => "顯示å稱", "Group Admin" => "群組 管ç†å“¡", "Storage" => "儲å˜å€", +"change display name" => "修改顯示å稱", +"set new password" => "è¨å®šæ–°å¯†ç¢¼", "Default" => "é è¨", "Delete" => "刪除" ); diff --git a/settings/routes.php b/settings/routes.php index 0a5b2fbfd38..0a8af0dde2b 100644 --- a/settings/routes.php +++ b/settings/routes.php @@ -53,6 +53,8 @@ $this->create('settings_ajax_enableapp', '/settings/ajax/enableapp.php') ->actionInclude('settings/ajax/enableapp.php'); $this->create('settings_ajax_disableapp', '/settings/ajax/disableapp.php') ->actionInclude('settings/ajax/disableapp.php'); +$this->create('settings_ajax_updateapp', '/settings/ajax/updateapp.php') + ->actionInclude('settings/ajax/updateapp.php'); $this->create('settings_ajax_navigationdetect', '/settings/ajax/navigationdetect.php') ->actionInclude('settings/ajax/navigationdetect.php'); $this->create('apps_custom', '/settings/js/apps-custom.js') diff --git a/settings/templates/apps.php b/settings/templates/apps.php index d418b9a66a1..3f0d2a9d1c6 100644 --- a/settings/templates/apps.php +++ b/settings/templates/apps.php @@ -7,7 +7,7 @@ <script type="text/javascript" src="<?php echo OC_Helper::linkTo('settings/js', 'apps.js');?>"></script> <div id="controls"> - <a class="button" target="_blank" href="http://owncloud.org/dev/apps/getting-started/"><?php echo $l->t('Add your App');?></a> + <a class="button" target="_blank" href="http://owncloud.org/dev"><?php echo $l->t('Add your App');?></a> <a class="button" target="_blank" href="http://apps.owncloud.com"><?php echo $l->t('More Apps');?></a> </div> <ul id="leftcontent" class="applist"> @@ -15,7 +15,7 @@ <li <?php if($app['active']) echo 'class="active"'?> data-id="<?php echo $app['id'] ?>" <?php if ( isset( $app['ocs_id'] ) ) { echo "data-id-ocs=\"{$app['ocs_id']}\""; } ?> data-type="<?php echo $app['internal'] ? 'internal' : 'external' ?>" data-installed="1"> <a class="app<?php if(!$app['internal']) echo ' externalapp' ?>" href="?appid=<?php echo $app['id'] ?>"><?php echo htmlentities($app['name']) ?></a> - <?php if(!$app['internal']) echo '<small class="externalapp list">3rd party</small>' ?> + <?php if(!$app['internal']) echo '<small class="'.$app['internalclass'].' list">'.$app['internallabel'].'</small>' ?> </li> <?php endforeach;?> </ul> @@ -28,5 +28,6 @@ <p class="appslink hidden"><a href="#" target="_blank"><?php echo $l->t('See application page at apps.owncloud.com');?></a></p> <p class="license hidden"><?php echo $l->t('<span class="licence"></span>-licensed by <span class="author"></span>');?></p> <input class="enable hidden" type="submit" /> + <input class="update hidden" type="submit" value="<?php echo($l->t('Update')); ?>" /> </div> -</div>
\ No newline at end of file +</div> diff --git a/tests/lib/cache/file.php b/tests/lib/cache/file.php index d64627198e0..5dcd3268804 100644 --- a/tests/lib/cache/file.php +++ b/tests/lib/cache/file.php @@ -38,8 +38,8 @@ class Test_Cache_File extends Test_Cache { } //set up temporary storage - OC_Filesystem::clearMounts(); - OC_Filesystem::mount('OC_Filestorage_Temporary', array(), '/'); + \OC\Files\Filesystem::clearMounts(); + \OC\Files\Filesystem::mount('\OC\Files\Storage\Temporary',array(),'/'); OC_User::clearBackends(); OC_User::useBackend(new OC_User_Dummy()); @@ -51,7 +51,7 @@ class Test_Cache_File extends Test_Cache { OC_User::setUserId('test'); //set up the users dir - $rootView=new OC_FilesystemView(''); + $rootView=new \OC\Files\View(''); $rootView->mkdir('/test'); $this->instance=new OC_Cache_File(); diff --git a/tests/lib/files/cache/cache.php b/tests/lib/files/cache/cache.php new file mode 100644 index 00000000000..c466fbb63e7 --- /dev/null +++ b/tests/lib/files/cache/cache.php @@ -0,0 +1,215 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace Test\Files\Cache; + +class Cache extends \PHPUnit_Framework_TestCase { + /** + * @var \OC\Files\Storage\Temporary $storage; + */ + private $storage; + + /** + * @var \OC\Files\Cache\Cache $cache + */ + private $cache; + + public function testSimple() { + $file1 = 'foo'; + $file2 = 'foo/bar'; + $data1 = array('size' => 100, 'mtime' => 50, 'mimetype' => 'foo/folder'); + $data2 = array('size' => 1000, 'mtime' => 20, 'mimetype' => 'foo/file'); + + $this->assertFalse($this->cache->inCache($file1)); + $this->assertEquals($this->cache->get($file1), null); + + $id1 = $this->cache->put($file1, $data1); + $this->assertTrue($this->cache->inCache($file1)); + $cacheData1 = $this->cache->get($file1); + foreach ($data1 as $key => $value) { + $this->assertEquals($value, $cacheData1[$key]); + } + $this->assertEquals($cacheData1['mimepart'], 'foo'); + $this->assertEquals($cacheData1['fileid'], $id1); + $this->assertEquals($id1, $this->cache->getId($file1)); + + $this->assertFalse($this->cache->inCache($file2)); + $id2 = $this->cache->put($file2, $data2); + $this->assertTrue($this->cache->inCache($file2)); + $cacheData2 = $this->cache->get($file2); + foreach ($data2 as $key => $value) { + $this->assertEquals($value, $cacheData2[$key]); + } + $this->assertEquals($cacheData1['fileid'], $cacheData2['parent']); + $this->assertEquals($cacheData2['fileid'], $id2); + $this->assertEquals($id2, $this->cache->getId($file2)); + $this->assertEquals($id1, $this->cache->getParentId($file2)); + + $newSize = 1050; + $newId2 = $this->cache->put($file2, array('size' => $newSize)); + $cacheData2 = $this->cache->get($file2); + $this->assertEquals($newId2, $id2); + $this->assertEquals($cacheData2['size'], $newSize); + $this->assertEquals($cacheData1, $this->cache->get($file1)); + + $this->cache->remove($file2); + $this->assertFalse($this->cache->inCache($file2)); + $this->assertEquals($this->cache->get($file2), null); + $this->assertTrue($this->cache->inCache($file1)); + + $this->assertEquals($cacheData1, $this->cache->get($id1)); + } + + public function testPartial() { + $file1 = 'foo'; + + $this->cache->put($file1, array('size' => 10)); + $this->assertEquals(array('size' => 10), $this->cache->get($file1)); + + $this->cache->put($file1, array('mtime' => 15)); + $this->assertEquals(array('size' => 10, 'mtime' => 15), $this->cache->get($file1)); + + $this->cache->put($file1, array('size' => 12)); + $this->assertEquals(array('size' => 12, 'mtime' => 15), $this->cache->get($file1)); + } + + public function testFolder() { + $file1 = 'folder'; + $file2 = 'folder/bar'; + $file3 = 'folder/foo'; + $data1 = array('size' => 100, 'mtime' => 50, 'mimetype' => 'httpd/unix-directory'); + $fileData = array(); + $fileData['bar'] = array('size' => 1000, 'mtime' => 20, 'mimetype' => 'foo/file'); + $fileData['foo'] = array('size' => 20, 'mtime' => 25, 'mimetype' => 'foo/file'); + + $this->cache->put($file1, $data1); + $this->cache->put($file2, $fileData['bar']); + $this->cache->put($file3, $fileData['foo']); + + $content = $this->cache->getFolderContents($file1); + $this->assertEquals(count($content), 2); + foreach ($content as $cachedData) { + $data = $fileData[$cachedData['name']]; + foreach ($data as $name => $value) { + $this->assertEquals($value, $cachedData[$name]); + } + } + + $file4 = 'folder/unkownSize'; + $fileData['unkownSize'] = array('size' => -1, 'mtime' => 25, 'mimetype' => 'foo/file'); + $this->cache->put($file4, $fileData['unkownSize']); + + $this->assertEquals(-1, $this->cache->calculateFolderSize($file1)); + + $fileData['unkownSize'] = array('size' => 5, 'mtime' => 25, 'mimetype' => 'foo/file'); + $this->cache->put($file4, $fileData['unkownSize']); + + $this->assertEquals(1025, $this->cache->calculateFolderSize($file1)); + + $this->cache->remove('folder'); + $this->assertFalse($this->cache->inCache('folder/foo')); + $this->assertFalse($this->cache->inCache('folder/bar')); + } + + function testStatus() { + $this->assertEquals(\OC\Files\Cache\Cache::NOT_FOUND, $this->cache->getStatus('foo')); + $this->cache->put('foo', array('size' => -1)); + $this->assertEquals(\OC\Files\Cache\Cache::PARTIAL, $this->cache->getStatus('foo')); + $this->cache->put('foo', array('size' => -1, 'mtime' => 20, 'mimetype' => 'foo/file')); + $this->assertEquals(\OC\Files\Cache\Cache::SHALLOW, $this->cache->getStatus('foo')); + $this->cache->put('foo', array('size' => 10)); + $this->assertEquals(\OC\Files\Cache\Cache::COMPLETE, $this->cache->getStatus('foo')); + } + + function testSearch() { + $file1 = 'folder'; + $file2 = 'folder/foobar'; + $file3 = 'folder/foo'; + $data1 = array('size' => 100, 'mtime' => 50, 'mimetype' => 'foo/folder'); + $fileData = array(); + $fileData['foobar'] = array('size' => 1000, 'mtime' => 20, 'mimetype' => 'foo/file'); + $fileData['foo'] = array('size' => 20, 'mtime' => 25, 'mimetype' => 'foo/file'); + + $this->cache->put($file1, $data1); + $this->cache->put($file2, $fileData['foobar']); + $this->cache->put($file3, $fileData['foo']); + + $this->assertEquals(2, count($this->cache->search('%foo%'))); + $this->assertEquals(1, count($this->cache->search('foo'))); + $this->assertEquals(1, count($this->cache->search('%folder%'))); + $this->assertEquals(1, count($this->cache->search('folder%'))); + $this->assertEquals(3, count($this->cache->search('%'))); + + $this->assertEquals(3, count($this->cache->searchByMime('foo'))); + $this->assertEquals(2, count($this->cache->searchByMime('foo/file'))); + } + + function testMove() { + $file1 = 'folder'; + $file2 = 'folder/bar'; + $file3 = 'folder/foo'; + $file4 = 'folder/foo/1'; + $file5 = 'folder/foo/2'; + $data = array('size' => 100, 'mtime' => 50, 'mimetype' => 'foo/bar'); + + $this->cache->put($file1, $data); + $this->cache->put($file2, $data); + $this->cache->put($file3, $data); + $this->cache->put($file4, $data); + $this->cache->put($file5, $data); + + $this->cache->move('folder/foo', 'folder/foobar'); + + $this->assertFalse($this->cache->inCache('folder/foo')); + $this->assertFalse($this->cache->inCache('folder/foo/1')); + $this->assertFalse($this->cache->inCache('folder/foo/2')); + + $this->assertTrue($this->cache->inCache('folder/bar')); + $this->assertTrue($this->cache->inCache('folder/foobar')); + $this->assertTrue($this->cache->inCache('folder/foobar/1')); + $this->assertTrue($this->cache->inCache('folder/foobar/2')); + } + + function testGetIncomplete() { + $file1 = 'folder1'; + $file2 = 'folder2'; + $file3 = 'folder3'; + $file4 = 'folder4'; + $data = array('size' => 10, 'mtime' => 50, 'mimetype' => 'foo/bar'); + + $this->cache->put($file1, $data); + $data['size'] = -1; + $this->cache->put($file2, $data); + $this->cache->put($file3, $data); + $data['size'] = 12; + $this->cache->put($file4, $data); + + $this->assertEquals($file3, $this->cache->getIncomplete()); + } + + function testNonExisting() { + $this->assertFalse($this->cache->get('foo.txt')); + $this->assertEquals(array(), $this->cache->getFolderContents('foo')); + } + + function testGetById() { + $storageId = $this->storage->getId(); + $data = array('size' => 1000, 'mtime' => 20, 'mimetype' => 'foo/file'); + $id = $this->cache->put('foo', $data); + $this->assertEquals(array($storageId, 'foo'), \OC\Files\Cache\Cache::getById($id)); + } + + public function tearDown() { + $this->cache->clear(); + } + + public function setUp() { + $this->storage = new \OC\Files\Storage\Temporary(array()); + $this->cache = new \OC\Files\Cache\Cache($this->storage); + } +} diff --git a/tests/lib/files/cache/permissions.php b/tests/lib/files/cache/permissions.php new file mode 100644 index 00000000000..56dbbc4518e --- /dev/null +++ b/tests/lib/files/cache/permissions.php @@ -0,0 +1,56 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace Test\Files\Cache; + +class Permissions extends \PHPUnit_Framework_TestCase { + /*** + * @var \OC\Files\Cache\Permissions $permissionsCache + */ + private $permissionsCache; + + function setUp(){ + $this->permissionsCache=new \OC\Files\Cache\Permissions('dummy'); + } + + function testSimple() { + $ids = range(1, 10); + $user = uniqid(); + + $this->assertEquals(-1, $this->permissionsCache->get(1, $user)); + $this->permissionsCache->set(1, $user, 1); + $this->assertEquals(1, $this->permissionsCache->get(1, $user)); + $this->assertEquals(-1, $this->permissionsCache->get(2, $user)); + $this->assertEquals(-1, $this->permissionsCache->get(1, $user . '2')); + + $this->permissionsCache->set(1, $user, 2); + $this->assertEquals(2, $this->permissionsCache->get(1, $user)); + + $this->permissionsCache->set(2, $user, 1); + $this->assertEquals(1, $this->permissionsCache->get(2, $user)); + + $this->permissionsCache->remove(1, $user); + $this->assertEquals(-1, $this->permissionsCache->get(1, $user)); + $this->permissionsCache->remove(1, $user . '2'); + $this->assertEquals(1, $this->permissionsCache->get(2, $user)); + + $expected = array(); + foreach ($ids as $id) { + $this->permissionsCache->set($id, $user, 10 + $id); + $expected[$id] = 10 + $id; + } + $this->assertEquals($expected, $this->permissionsCache->getMultiple($ids, $user)); + + $this->permissionsCache->removeMultiple(array(10, 9), $user); + unset($expected[9]); + unset($expected[10]); + $this->assertEquals($expected, $this->permissionsCache->getMultiple($ids, $user)); + + $this->permissionsCache->removeMultiple($ids, $user); + } +} diff --git a/tests/lib/files/cache/scanner.php b/tests/lib/files/cache/scanner.php new file mode 100644 index 00000000000..3885c99e6d3 --- /dev/null +++ b/tests/lib/files/cache/scanner.php @@ -0,0 +1,141 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace Test\Files\Cache; + +class Scanner extends \PHPUnit_Framework_TestCase { + /** + * @var \OC\Files\Storage\Storage $storage + */ + private $storage; + + /** + * @var \OC\Files\Cache\Scanner $scanner + */ + private $scanner; + + /** + * @var \OC\Files\Cache\Cache $cache + */ + private $cache; + + function testFile() { + $data = "dummy file data\n"; + $this->storage->file_put_contents('foo.txt', $data); + $this->scanner->scanFile('foo.txt'); + + $this->assertEquals($this->cache->inCache('foo.txt'), true); + $cachedData = $this->cache->get('foo.txt'); + $this->assertEquals($cachedData['size'], strlen($data)); + $this->assertEquals($cachedData['mimetype'], 'text/plain'); + $this->assertNotEquals($cachedData['parent'], -1); //parent folders should be scanned automatically + + $data = file_get_contents(\OC::$SERVERROOT . '/core/img/logo.png'); + $this->storage->file_put_contents('foo.png', $data); + $this->scanner->scanFile('foo.png'); + + $this->assertEquals($this->cache->inCache('foo.png'), true); + $cachedData = $this->cache->get('foo.png'); + $this->assertEquals($cachedData['size'], strlen($data)); + $this->assertEquals($cachedData['mimetype'], 'image/png'); + } + + private function fillTestFolders() { + $textData = "dummy file data\n"; + $imgData = file_get_contents(\OC::$SERVERROOT . '/core/img/logo.png'); + $this->storage->mkdir('folder'); + $this->storage->file_put_contents('foo.txt', $textData); + $this->storage->file_put_contents('foo.png', $imgData); + $this->storage->file_put_contents('folder/bar.txt', $textData); + } + + function testFolder() { + $this->fillTestFolders(); + + $this->scanner->scan(''); + $this->assertEquals($this->cache->inCache(''), true); + $this->assertEquals($this->cache->inCache('foo.txt'), true); + $this->assertEquals($this->cache->inCache('foo.png'), true); + $this->assertEquals($this->cache->inCache('folder'), true); + $this->assertEquals($this->cache->inCache('folder/bar.txt'), true); + + $cachedDataText = $this->cache->get('foo.txt'); + $cachedDataText2 = $this->cache->get('foo.txt'); + $cachedDataImage = $this->cache->get('foo.png'); + $cachedDataFolder = $this->cache->get(''); + $cachedDataFolder2 = $this->cache->get('folder'); + + $this->assertEquals($cachedDataImage['parent'], $cachedDataText['parent']); + $this->assertEquals($cachedDataFolder['fileid'], $cachedDataImage['parent']); + $this->assertEquals($cachedDataFolder['size'], $cachedDataImage['size'] + $cachedDataText['size'] + $cachedDataText2['size']); + $this->assertEquals($cachedDataFolder2['size'], $cachedDataText2['size']); + } + + function testShallow() { + $this->fillTestFolders(); + + $this->scanner->scan('', \OC\Files\Cache\Scanner::SCAN_SHALLOW); + $this->assertEquals($this->cache->inCache(''), true); + $this->assertEquals($this->cache->inCache('foo.txt'), true); + $this->assertEquals($this->cache->inCache('foo.png'), true); + $this->assertEquals($this->cache->inCache('folder'), true); + $this->assertEquals($this->cache->inCache('folder/bar.txt'), false); + + $cachedDataFolder = $this->cache->get(''); + $cachedDataFolder2 = $this->cache->get('folder'); + + $this->assertEquals(-1, $cachedDataFolder['size']); + $this->assertEquals(-1, $cachedDataFolder2['size']); + + $this->scanner->scan('folder', \OC\Files\Cache\Scanner::SCAN_SHALLOW); + + $cachedDataFolder2 = $this->cache->get('folder'); + + $this->assertNotEquals($cachedDataFolder2['size'], -1); + + $this->cache->correctFolderSize('folder'); + + $cachedDataFolder = $this->cache->get(''); + $this->assertNotEquals($cachedDataFolder['size'], -1); + } + + function testBackgroundScan(){ + $this->fillTestFolders(); + $this->storage->mkdir('folder2'); + $this->storage->file_put_contents('folder2/bar.txt', 'foobar'); + + $this->scanner->scan('', \OC\Files\Cache\Scanner::SCAN_SHALLOW); + $this->assertFalse($this->cache->inCache('folder/bar.txt')); + $this->assertFalse($this->cache->inCache('folder/2bar.txt')); + $cachedData = $this->cache->get(''); + $this->assertEquals(-1, $cachedData['size']); + + $this->scanner->backgroundScan(); + + $this->assertTrue($this->cache->inCache('folder/bar.txt')); + $this->assertTrue($this->cache->inCache('folder/bar.txt')); + + $cachedData = $this->cache->get(''); + $this->assertnotEquals(-1, $cachedData['size']); + + $this->assertFalse($this->cache->getIncomplete()); + } + + function setUp() { + $this->storage = new \OC\Files\Storage\Temporary(array()); + $this->scanner = new \OC\Files\Cache\Scanner($this->storage); + $this->cache = new \OC\Files\Cache\Cache($this->storage); + } + + function tearDown() { + $ids = $this->cache->getAll(); + $permissionsCache = $this->storage->getPermissionsCache(); + $permissionsCache->removeMultiple($ids, \OC_User::getUser()); + $this->cache->clear(); + } +} diff --git a/tests/lib/files/cache/updater.php b/tests/lib/files/cache/updater.php new file mode 100644 index 00000000000..b83dd0c26e5 --- /dev/null +++ b/tests/lib/files/cache/updater.php @@ -0,0 +1,147 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace Test\Files\Cache; + +use \OC\Files\Filesystem as Filesystem; + +class Updater extends \PHPUnit_Framework_TestCase { + /** + * @var \OC\Files\Storage\Storage $storage + */ + private $storage; + + /** + * @var \OC\Files\Cache\Scanner $scanner + */ + private $scanner; + + /** + * @var \OC\Files\Cache\Cache $cache + */ + private $cache; + + private static $user; + + public function setUp() { + $this->storage = new \OC\Files\Storage\Temporary(array()); + $textData = "dummy file data\n"; + $imgData = file_get_contents(\OC::$SERVERROOT . '/core/img/logo.png'); + $this->storage->mkdir('folder'); + $this->storage->file_put_contents('foo.txt', $textData); + $this->storage->file_put_contents('foo.png', $imgData); + $this->storage->file_put_contents('folder/bar.txt', $textData); + $this->storage->file_put_contents('folder/bar2.txt', $textData); + + $this->scanner = $this->storage->getScanner(); + $this->scanner->scan(''); + $this->cache = $this->storage->getCache(); + + if (!self::$user) { + if (!\OC\Files\Filesystem::getView()) { + self::$user = uniqid(); + \OC\Files\Filesystem::init('/' . self::$user . '/files'); + } else { + self::$user = \OC_User::getUser(); + } + } + + Filesystem::clearMounts(); + Filesystem::mount($this->storage, array(), '/' . self::$user . '/files'); + + \OC_Hook::connect('OC_Filesystem', 'post_write', '\OC\Files\Cache\Updater', 'writeHook'); + \OC_Hook::connect('OC_Filesystem', 'post_delete', '\OC\Files\Cache\Updater', 'deleteHook'); + \OC_Hook::connect('OC_Filesystem', 'post_rename', '\OC\Files\Cache\Updater', 'renameHook'); + + } + + public function tearDown() { + if ($this->cache) { + $this->cache->clear(); + } + Filesystem::tearDown(); + } + + public function testWrite() { + $textSize = strlen("dummy file data\n"); + $imageSize = filesize(\OC::$SERVERROOT . '/core/img/logo.png'); + $rootCachedData = $this->cache->get(''); + $this->assertEquals(3 * $textSize + $imageSize, $rootCachedData['size']); + + $fooCachedData = $this->cache->get('foo.txt'); + Filesystem::file_put_contents('foo.txt', 'asd'); + $cachedData = $this->cache->get('foo.txt'); + $this->assertEquals(3, $cachedData['size']); + $this->assertNotEquals($fooCachedData['etag'], $cachedData['etag']); + $mtime = $cachedData['mtime']; + $cachedData = $this->cache->get(''); + $this->assertEquals(2 * $textSize + $imageSize + 3, $cachedData['size']); + $this->assertNotEquals($rootCachedData['etag'], $cachedData['etag']); + $this->assertGreaterThanOrEqual($rootCachedData['mtime'], $mtime); + $rootCachedData = $cachedData; + + $this->assertFalse($this->cache->inCache('bar.txt')); + Filesystem::file_put_contents('bar.txt', 'asd'); + $this->assertTrue($this->cache->inCache('bar.txt')); + $cachedData = $this->cache->get('bar.txt'); + $this->assertEquals(3, $cachedData['size']); + $mtime = $cachedData['mtime']; + $cachedData = $this->cache->get(''); + $this->assertEquals(2 * $textSize + $imageSize + 2 * 3, $cachedData['size']); + $this->assertNotEquals($rootCachedData['etag'], $cachedData['etag']); + $this->assertGreaterThanOrEqual($rootCachedData['mtime'], $mtime); + } + + public function testDelete() { + $textSize = strlen("dummy file data\n"); + $imageSize = filesize(\OC::$SERVERROOT . '/core/img/logo.png'); + $rootCachedData = $this->cache->get(''); + $this->assertEquals(3 * $textSize + $imageSize, $rootCachedData['size']); + + $this->assertTrue($this->cache->inCache('foo.txt')); + Filesystem::unlink('foo.txt', 'asd'); + $this->assertFalse($this->cache->inCache('foo.txt')); + $cachedData = $this->cache->get(''); + $this->assertEquals(2 * $textSize + $imageSize, $cachedData['size']); + $this->assertNotEquals($rootCachedData['etag'], $cachedData['etag']); + $this->assertGreaterThanOrEqual($rootCachedData['mtime'], $cachedData['mtime']); + $rootCachedData = $cachedData; + + Filesystem::mkdir('bar_folder'); + $this->assertTrue($this->cache->inCache('bar_folder')); + $cachedData = $this->cache->get(''); + $this->assertNotEquals($rootCachedData['etag'], $cachedData['etag']); + $rootCachedData = $cachedData; + Filesystem::rmdir('bar_folder'); + $this->assertFalse($this->cache->inCache('bar_folder')); + $cachedData = $this->cache->get(''); + $this->assertNotEquals($rootCachedData['etag'], $cachedData['etag']); + $this->assertGreaterThanOrEqual($rootCachedData['mtime'], $cachedData['mtime']); + } + + public function testRename() { + $textSize = strlen("dummy file data\n"); + $imageSize = filesize(\OC::$SERVERROOT . '/core/img/logo.png'); + $rootCachedData = $this->cache->get(''); + $this->assertEquals(3 * $textSize + $imageSize, $rootCachedData['size']); + + $this->assertTrue($this->cache->inCache('foo.txt')); + $fooCachedData = $this->cache->get('foo.txt'); + $this->assertFalse($this->cache->inCache('bar.txt')); + Filesystem::rename('foo.txt', 'bar.txt'); + $this->assertFalse($this->cache->inCache('foo.txt')); + $this->assertTrue($this->cache->inCache('bar.txt')); + $cachedData = $this->cache->get('bar.txt'); + $this->assertNotEquals($fooCachedData['etag'], $cachedData['etag']); + $mtime = $cachedData['mtime']; + $cachedData = $this->cache->get(''); + $this->assertEquals(3 * $textSize + $imageSize, $cachedData['size']); + $this->assertNotEquals($rootCachedData['etag'], $cachedData['etag']); + $this->assertEquals($mtime, $cachedData['mtime']); + } +} diff --git a/tests/lib/files/cache/watcher.php b/tests/lib/files/cache/watcher.php new file mode 100644 index 00000000000..e8a1689cab0 --- /dev/null +++ b/tests/lib/files/cache/watcher.php @@ -0,0 +1,121 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace Test\Files\Cache; + +class Watcher extends \PHPUnit_Framework_TestCase { + + /** + * @var \OC\Files\Storage\Storage[] $storages; + */ + private $storages = array(); + + public function setUp() { + \OC\Files\Filesystem::clearMounts(); + } + + public function tearDown() { + foreach ($this->storages as $storage) { + $cache = $storage->getCache(); + $ids = $cache->getAll(); + $permissionsCache = $storage->getPermissionsCache(); + $permissionsCache->removeMultiple($ids, \OC_User::getUser()); + $cache->clear(); + } + } + + function testWatcher() { + $storage = $this->getTestStorage(); + $cache = $storage->getCache(); + $updater = $storage->getWatcher(); + + //set the mtime to the past so it can detect an mtime change + $cache->put('', array('mtime' => 10)); + + $this->assertTrue($cache->inCache('folder/bar.txt')); + $this->assertTrue($cache->inCache('folder/bar2.txt')); + + $this->assertFalse($cache->inCache('bar.test')); + $storage->file_put_contents('bar.test', 'foo'); + $updater->checkUpdate(''); + $this->assertTrue($cache->inCache('bar.test')); + $cachedData = $cache->get('bar.test'); + $this->assertEquals(3, $cachedData['size']); + + $cache->put('bar.test', array('mtime' => 10)); + $storage->file_put_contents('bar.test', 'test data'); + + $updater->checkUpdate('bar.test'); + $cachedData = $cache->get('bar.test'); + $this->assertEquals(9, $cachedData['size']); + + $cache->put('folder', array('mtime' => 10)); + + $storage->unlink('folder/bar2.txt'); + $updater->checkUpdate('folder'); + + $this->assertTrue($cache->inCache('folder/bar.txt')); + $this->assertFalse($cache->inCache('folder/bar2.txt')); + } + + public function testFileToFolder() { + $storage = $this->getTestStorage(); + $cache = $storage->getCache(); + $updater = $storage->getWatcher(); + + //set the mtime to the past so it can detect an mtime change + $cache->put('', array('mtime' => 10)); + + $storage->unlink('foo.txt'); + $storage->rename('folder', 'foo.txt'); + $updater->checkUpdate(''); + + $entry = $cache->get('foo.txt'); + $this->assertEquals(-1, $entry['size']); + $this->assertEquals('httpd/unix-directory', $entry['mimetype']); + $this->assertFalse($cache->inCache('folder')); + $this->assertFalse($cache->inCache('folder/bar.txt')); + + $storage = $this->getTestStorage(); + $cache = $storage->getCache(); + $updater = $storage->getWatcher(); + + //set the mtime to the past so it can detect an mtime change + $cache->put('foo.txt', array('mtime' => 10)); + + $storage->unlink('foo.txt'); + $storage->rename('folder', 'foo.txt'); + $updater->checkUpdate('foo.txt'); + + $entry = $cache->get('foo.txt'); + $this->assertEquals('httpd/unix-directory', $entry['mimetype']); + $this->assertTrue($cache->inCache('foo.txt/bar.txt')); + } + + /** + * @param bool $scan + * @return \OC\Files\Storage\Storage + */ + private function getTestStorage($scan = true) { + $storage = new \OC\Files\Storage\Temporary(array()); + $textData = "dummy file data\n"; + $imgData = file_get_contents(\OC::$SERVERROOT . '/core/img/logo.png'); + $storage->mkdir('folder'); + $storage->file_put_contents('foo.txt', $textData); + $storage->file_put_contents('foo.png', $imgData); + $storage->file_put_contents('folder/bar.txt', $textData); + $storage->file_put_contents('folder/bar2.txt', $textData); + + if ($scan) { + $scanner = $storage->getScanner(); + $scanner->scan(''); + } + $this->storages[] = $storage; + return $storage; + } +} diff --git a/tests/lib/files/filesystem.php b/tests/lib/files/filesystem.php new file mode 100644 index 00000000000..5837093fdd6 --- /dev/null +++ b/tests/lib/files/filesystem.php @@ -0,0 +1,110 @@ +<?php +/** + * ownCloud + * + * @author Robin Appelman + * @copyright 2012 Robin Appelman icewind@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ + +namespace Test\Files; + +class Filesystem extends \PHPUnit_Framework_TestCase { + /** + * @var array tmpDirs + */ + private $tmpDirs=array(); + + /** + * @return array + */ + private function getStorageData() { + $dir = \OC_Helper::tmpFolder(); + $this->tmpDirs[] = $dir; + return array('datadir' => $dir); + } + + public function tearDown() { + foreach ($this->tmpDirs as $dir) { + \OC_Helper::rmdirr($dir); + } + } + + public function setUp() { + \OC\Files\Filesystem::clearMounts(); + } + + public function testMount() { + \OC\Files\Filesystem::mount('\OC\Files\Storage\Local',self::getStorageData(),'/'); + $this->assertEquals('/',\OC\Files\Filesystem::getMountPoint('/')); + $this->assertEquals('/',\OC\Files\Filesystem::getMountPoint('/some/folder')); + list( , $internalPath)=\OC\Files\Filesystem::resolvePath('/'); + $this->assertEquals('',$internalPath); + list( , $internalPath)=\OC\Files\Filesystem::resolvePath('/some/folder'); + $this->assertEquals('some/folder',$internalPath); + + \OC\Files\Filesystem::mount('\OC\Files\Storage\Local',self::getStorageData(),'/some'); + $this->assertEquals('/',\OC\Files\Filesystem::getMountPoint('/')); + $this->assertEquals('/some/',\OC\Files\Filesystem::getMountPoint('/some/folder')); + $this->assertEquals('/some/',\OC\Files\Filesystem::getMountPoint('/some/')); + $this->assertEquals('/some/',\OC\Files\Filesystem::getMountPoint('/some')); + list( , $internalPath)=\OC\Files\Filesystem::resolvePath('/some/folder'); + $this->assertEquals('folder',$internalPath); + } + + public function testNormalize() { + $this->assertEquals('/path', \OC\Files\Filesystem::normalizePath('/path/')); + $this->assertEquals('/path/', \OC\Files\Filesystem::normalizePath('/path/', false)); + $this->assertEquals('/path', \OC\Files\Filesystem::normalizePath('path')); + $this->assertEquals('/path', \OC\Files\Filesystem::normalizePath('\path')); + $this->assertEquals('/foo/bar', \OC\Files\Filesystem::normalizePath('/foo//bar/')); + $this->assertEquals('/foo/bar', \OC\Files\Filesystem::normalizePath('/foo////bar')); + if (class_exists('Normalizer')) { + $this->assertEquals("/foo/bar\xC3\xBC", \OC\Files\Filesystem::normalizePath("/foo/baru\xCC\x88")); + } + } + + public function testHooks() { + if(\OC\Files\Filesystem::getView()){ + $user = \OC_User::getUser(); + }else{ + $user=uniqid(); + \OC\Files\Filesystem::init('/'.$user.'/files'); + } + \OC_Hook::clear('OC_Filesystem'); + \OC_Hook::connect('OC_Filesystem', 'post_write', $this, 'dummyHook'); + + \OC\Files\Filesystem::mount('OC\Files\Storage\Temporary', array(), '/'); + + $rootView=new \OC\Files\View(''); + $rootView->mkdir('/'.$user); + $rootView->mkdir('/'.$user.'/files'); + + \OC\Files\Filesystem::file_put_contents('/foo', 'foo'); + \OC\Files\Filesystem::mkdir('/bar'); + \OC\Files\Filesystem::file_put_contents('/bar//foo', 'foo'); + + $tmpFile = \OC_Helper::tmpFile(); + file_put_contents($tmpFile, 'foo'); + $fh = fopen($tmpFile, 'r'); + \OC\Files\Filesystem::file_put_contents('/bar//foo', $fh); + } + + public function dummyHook($arguments) { + $path = $arguments['path']; + $this->assertEquals($path, \OC\Files\Filesystem::normalizePath($path)); //the path passed to the hook should already be normalized + } +} diff --git a/tests/lib/files/mount.php b/tests/lib/files/mount.php new file mode 100644 index 00000000000..f223f0f6c53 --- /dev/null +++ b/tests/lib/files/mount.php @@ -0,0 +1,41 @@ +<?php +/** + * Copyright (c) 2013 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace Test\Files; + +use \OC\Files\Storage\Temporary; + +class Mount extends \PHPUnit_Framework_TestCase { + public function setup() { + \OC_Util::setupFS(); + \OC\Files\Mount::clear(); + } + + public function testFind() { + $this->assertNull(\OC\Files\Mount::find('/')); + + $rootMount = new \OC\Files\Mount(new Temporary(array()), '/'); + $this->assertEquals($rootMount, \OC\Files\Mount::find('/')); + $this->assertEquals($rootMount, \OC\Files\Mount::find('/foo/bar')); + + $storage = new Temporary(array()); + $mount = new \OC\Files\Mount($storage, '/foo'); + $this->assertEquals($rootMount, \OC\Files\Mount::find('/')); + $this->assertEquals($mount, \OC\Files\Mount::find('/foo/bar')); + + $this->assertEquals(1, count(\OC\Files\Mount::findIn('/'))); + new \OC\Files\Mount(new Temporary(array()), '/bar'); + $this->assertEquals(2, count(\OC\Files\Mount::findIn('/'))); + + $id = $mount->getStorageId(); + $this->assertEquals(array($mount), \OC\Files\Mount::findById($id)); + + $mount2 = new \OC\Files\Mount($storage, '/foo/bar'); + $this->assertEquals(array($mount, $mount2), \OC\Files\Mount::findById($id)); + } +} diff --git a/tests/lib/filestorage/commontest.php b/tests/lib/files/storage/commontest.php index 6719fcff4e8..ce53c884f32 100644 --- a/tests/lib/filestorage/commontest.php +++ b/tests/lib/files/storage/commontest.php @@ -20,21 +20,19 @@ * */ -class Test_Filestorage_CommonTest extends Test_FileStorage { +namespace Test\Files\Storage; + +class CommonTest extends Storage { /** * @var string tmpDir */ private $tmpDir; public function setUp() { - $this->tmpDir=get_temp_dir().'/filestoragecommon'; - if(!file_exists($this->tmpDir)) { - mkdir($this->tmpDir); - } - $this->instance=new OC_Filestorage_CommonTest(array('datadir'=>$this->tmpDir)); + $this->tmpDir=\OC_Helper::tmpFolder(); + $this->instance=new \OC\Files\Storage\CommonTest(array('datadir'=>$this->tmpDir)); } public function tearDown() { - OC_Helper::rmdirr($this->tmpDir); + \OC_Helper::rmdirr($this->tmpDir); } } - diff --git a/tests/lib/filestorage/local.php b/tests/lib/files/storage/local.php index d7d71e8f372..1aad138aa33 100644 --- a/tests/lib/filestorage/local.php +++ b/tests/lib/files/storage/local.php @@ -20,18 +20,20 @@ * */ -class Test_Filestorage_Local extends Test_FileStorage { +namespace Test\Files\Storage; + +class Local extends Storage { /** * @var string tmpDir */ private $tmpDir; public function setUp() { - $this->tmpDir=OC_Helper::tmpFolder(); - $this->instance=new OC_Filestorage_Local(array('datadir'=>$this->tmpDir)); + $this->tmpDir=\OC_Helper::tmpFolder(); + $this->instance=new \OC\Files\Storage\Local(array('datadir'=>$this->tmpDir)); } public function tearDown() { - OC_Helper::rmdirr($this->tmpDir); + \OC_Helper::rmdirr($this->tmpDir); } } diff --git a/tests/lib/filestorage.php b/tests/lib/files/storage/storage.php index c408efb7543..781c0f92c92 100644 --- a/tests/lib/filestorage.php +++ b/tests/lib/files/storage/storage.php @@ -20,9 +20,11 @@ * */ -abstract class Test_FileStorage extends PHPUnit_Framework_TestCase { +namespace Test\Files\Storage; + +abstract class Storage extends \PHPUnit_Framework_TestCase { /** - * @var OC_Filestorage instance + * @var \OC\Files\Storage\Storage instance */ protected $instance; @@ -36,7 +38,7 @@ abstract class Test_FileStorage extends PHPUnit_Framework_TestCase { $this->assertFalse($this->instance->is_file('/'), 'Root folder is a file'); $this->assertEquals('dir', $this->instance->filetype('/')); - //without this, any further testing would be useless, not an acutal requirement for filestorage though + //without this, any further testing would be useless, not an actual requirement for filestorage though $this->assertTrue($this->instance->isUpdatable('/'), 'Root folder is not writable'); } @@ -83,7 +85,7 @@ abstract class Test_FileStorage extends PHPUnit_Framework_TestCase { * test the various uses of file_get_contents and file_put_contents */ public function testGetPutContents() { - $sourceFile = OC::$SERVERROOT . '/tests/data/lorem.txt'; + $sourceFile = \OC::$SERVERROOT . '/tests/data/lorem.txt'; $sourceText = file_get_contents($sourceFile); //fill a file with string data @@ -103,21 +105,21 @@ abstract class Test_FileStorage extends PHPUnit_Framework_TestCase { $this->assertEquals('httpd/unix-directory', $this->instance->getMimeType('/')); $this->assertEquals(false, $this->instance->getMimeType('/non/existing/file')); - $textFile = OC::$SERVERROOT . '/tests/data/lorem.txt'; + $textFile = \OC::$SERVERROOT . '/tests/data/lorem.txt'; $this->instance->file_put_contents('/lorem.txt', file_get_contents($textFile, 'r')); $this->assertEquals('text/plain', $this->instance->getMimeType('/lorem.txt')); - $pngFile = OC::$SERVERROOT . '/tests/data/logo-wide.png'; + $pngFile = \OC::$SERVERROOT . '/tests/data/logo-wide.png'; $this->instance->file_put_contents('/logo-wide.png', file_get_contents($pngFile, 'r')); $this->assertEquals('image/png', $this->instance->getMimeType('/logo-wide.png')); - $svgFile = OC::$SERVERROOT . '/tests/data/logo-wide.svg'; + $svgFile = \OC::$SERVERROOT . '/tests/data/logo-wide.svg'; $this->instance->file_put_contents('/logo-wide.svg', file_get_contents($svgFile, 'r')); $this->assertEquals('image/svg+xml', $this->instance->getMimeType('/logo-wide.svg')); } public function testCopyAndMove() { - $textFile = OC::$SERVERROOT . '/tests/data/lorem.txt'; + $textFile = \OC::$SERVERROOT . '/tests/data/lorem.txt'; $this->instance->file_put_contents('/source.txt', file_get_contents($textFile)); $this->instance->copy('/source.txt', '/target.txt'); $this->assertTrue($this->instance->file_exists('/target.txt')); @@ -130,7 +132,7 @@ abstract class Test_FileStorage extends PHPUnit_Framework_TestCase { } public function testLocal() { - $textFile = OC::$SERVERROOT . '/tests/data/lorem.txt'; + $textFile = \OC::$SERVERROOT . '/tests/data/lorem.txt'; $this->instance->file_put_contents('/lorem.txt', file_get_contents($textFile)); $localFile = $this->instance->getLocalFile('/lorem.txt'); $this->assertTrue(file_exists($localFile)); @@ -151,7 +153,7 @@ abstract class Test_FileStorage extends PHPUnit_Framework_TestCase { } public function testStat() { - $textFile = OC::$SERVERROOT . '/tests/data/lorem.txt'; + $textFile = \OC::$SERVERROOT . '/tests/data/lorem.txt'; $ctimeStart = time(); $this->instance->file_put_contents('/lorem.txt', file_get_contents($textFile)); $this->assertTrue($this->instance->isReadable('/lorem.txt')); @@ -200,11 +202,11 @@ abstract class Test_FileStorage extends PHPUnit_Framework_TestCase { } public function testSearch() { - $textFile = OC::$SERVERROOT . '/tests/data/lorem.txt'; + $textFile = \OC::$SERVERROOT . '/tests/data/lorem.txt'; $this->instance->file_put_contents('/lorem.txt', file_get_contents($textFile, 'r')); - $pngFile = OC::$SERVERROOT . '/tests/data/logo-wide.png'; + $pngFile = \OC::$SERVERROOT . '/tests/data/logo-wide.png'; $this->instance->file_put_contents('/logo-wide.png', file_get_contents($pngFile, 'r')); - $svgFile = OC::$SERVERROOT . '/tests/data/logo-wide.svg'; + $svgFile = \OC::$SERVERROOT . '/tests/data/logo-wide.svg'; $this->instance->file_put_contents('/logo-wide.svg', file_get_contents($svgFile, 'r')); $result = $this->instance->search('logo'); $this->assertEquals(2, count($result)); @@ -213,7 +215,7 @@ abstract class Test_FileStorage extends PHPUnit_Framework_TestCase { } public function testFOpen() { - $textFile = OC::$SERVERROOT . '/tests/data/lorem.txt'; + $textFile = \OC::$SERVERROOT . '/tests/data/lorem.txt'; $fh = @$this->instance->fopen('foo', 'r'); if ($fh) { diff --git a/tests/lib/files/view.php b/tests/lib/files/view.php new file mode 100644 index 00000000000..a064e44f3ef --- /dev/null +++ b/tests/lib/files/view.php @@ -0,0 +1,251 @@ +<?php +/** + * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. */ + +namespace Test\Files; + +class View extends \PHPUnit_Framework_TestCase { + /** + * @var \OC\Files\Storage\Storage[] $storages; + */ + private $storages = array(); + + public function setUp() { + \OC\Files\Filesystem::clearMounts(); + } + + public function tearDown() { + foreach ($this->storages as $storage) { + $cache = $storage->getCache(); + $ids = $cache->getAll(); + $permissionsCache = $storage->getPermissionsCache(); + $permissionsCache->removeMultiple($ids, \OC_User::getUser()); + $cache->clear(); + } + } + + public function testCacheAPI() { + $storage1 = $this->getTestStorage(); + $storage2 = $this->getTestStorage(); + $storage3 = $this->getTestStorage(); + \OC\Files\Filesystem::mount($storage1, array(), '/'); + \OC\Files\Filesystem::mount($storage2, array(), '/substorage'); + \OC\Files\Filesystem::mount($storage3, array(), '/folder/anotherstorage'); + $textSize = strlen("dummy file data\n"); + $imageSize = filesize(\OC::$SERVERROOT . '/core/img/logo.png'); + $storageSize = $textSize * 2 + $imageSize; + + $rootView = new \OC\Files\View(''); + + $cachedData = $rootView->getFileInfo('/foo.txt'); + $this->assertEquals($textSize, $cachedData['size']); + $this->assertEquals('text/plain', $cachedData['mimetype']); + $this->assertNotEquals(-1, $cachedData['permissions']); + + $cachedData = $rootView->getFileInfo('/'); + $this->assertEquals($storageSize * 3, $cachedData['size']); + $this->assertEquals('httpd/unix-directory', $cachedData['mimetype']); + + $cachedData = $rootView->getFileInfo('/folder'); + $this->assertEquals($storageSize + $textSize, $cachedData['size']); + $this->assertEquals('httpd/unix-directory', $cachedData['mimetype']); + + $folderData = $rootView->getDirectoryContent('/'); + /** + * expected entries: + * folder + * foo.png + * foo.txt + * substorage + */ + $this->assertEquals(4, count($folderData)); + $this->assertEquals('folder', $folderData[0]['name']); + $this->assertEquals('foo.png', $folderData[1]['name']); + $this->assertEquals('foo.txt', $folderData[2]['name']); + $this->assertEquals('substorage', $folderData[3]['name']); + + $this->assertEquals($storageSize + $textSize, $folderData[0]['size']); + $this->assertEquals($imageSize, $folderData[1]['size']); + $this->assertEquals($textSize, $folderData[2]['size']); + $this->assertEquals($storageSize, $folderData[3]['size']); + + $folderData = $rootView->getDirectoryContent('/substorage'); + /** + * expected entries: + * folder + * foo.png + * foo.txt + */ + $this->assertEquals(3, count($folderData)); + $this->assertEquals('folder', $folderData[0]['name']); + $this->assertEquals('foo.png', $folderData[1]['name']); + $this->assertEquals('foo.txt', $folderData[2]['name']); + + $folderView = new \OC\Files\View('/folder'); + $this->assertEquals($rootView->getFileInfo('/folder'), $folderView->getFileInfo('/')); + + $cachedData = $rootView->getFileInfo('/foo.txt'); + $this->assertFalse($cachedData['encrypted']); + $id = $rootView->putFileInfo('/foo.txt', array('encrypted' => true)); + $cachedData = $rootView->getFileInfo('/foo.txt'); + $this->assertTrue($cachedData['encrypted']); + $this->assertEquals($cachedData['fileid'], $id); + + $this->assertFalse($rootView->getFileInfo('/non/existing')); + $this->assertEquals(array(), $rootView->getDirectoryContent('/non/existing')); + } + + function testGetPath() { + $storage1 = $this->getTestStorage(); + $storage2 = $this->getTestStorage(); + $storage3 = $this->getTestStorage(); + \OC\Files\Filesystem::mount($storage1, array(), '/'); + \OC\Files\Filesystem::mount($storage2, array(), '/substorage'); + \OC\Files\Filesystem::mount($storage3, array(), '/folder/anotherstorage'); + + $rootView = new \OC\Files\View(''); + + $cachedData = $rootView->getFileInfo('/foo.txt'); + $id1 = $cachedData['fileid']; + $this->assertEquals('/foo.txt', $rootView->getPath($id1)); + + $cachedData = $rootView->getFileInfo('/substorage/foo.txt'); + $id2 = $cachedData['fileid']; + $this->assertEquals('/substorage/foo.txt', $rootView->getPath($id2)); + + $folderView = new \OC\Files\View('/substorage'); + $this->assertEquals('/foo.txt', $folderView->getPath($id2)); + $this->assertNull($folderView->getPath($id1)); + } + + function testMountPointOverwrite() { + $storage1 = $this->getTestStorage(false); + $storage2 = $this->getTestStorage(); + $storage1->mkdir('substorage'); + \OC\Files\Filesystem::mount($storage1, array(), '/'); + \OC\Files\Filesystem::mount($storage2, array(), '/substorage'); + + $rootView = new \OC\Files\View(''); + $folderContent = $rootView->getDirectoryContent('/'); + $this->assertEquals(4, count($folderContent)); + } + + function testCacheIncompleteFolder() { + $storage1 = $this->getTestStorage(false); + \OC\Files\Filesystem::mount($storage1, array(), '/'); + $rootView = new \OC\Files\View(''); + + $entries = $rootView->getDirectoryContent('/'); + $this->assertEquals(3, count($entries)); + + // /folder will already be in the cache but not scanned + $entries = $rootView->getDirectoryContent('/folder'); + $this->assertEquals(1, count($entries)); + } + + public function testAutoScan() { + $storage1 = $this->getTestStorage(false); + $storage2 = $this->getTestStorage(false); + \OC\Files\Filesystem::mount($storage1, array(), '/'); + \OC\Files\Filesystem::mount($storage2, array(), '/substorage'); + $textSize = strlen("dummy file data\n"); + + $rootView = new \OC\Files\View(''); + + $cachedData = $rootView->getFileInfo('/'); + $this->assertEquals('httpd/unix-directory', $cachedData['mimetype']); + $this->assertEquals(-1, $cachedData['size']); + + $folderData = $rootView->getDirectoryContent('/substorage/folder'); + $this->assertEquals('text/plain', $folderData[0]['mimetype']); + $this->assertEquals($textSize, $folderData[0]['size']); + } + + function testSearch() { + $storage1 = $this->getTestStorage(); + $storage2 = $this->getTestStorage(); + $storage3 = $this->getTestStorage(); + \OC\Files\Filesystem::mount($storage1, array(), '/'); + \OC\Files\Filesystem::mount($storage2, array(), '/substorage'); + \OC\Files\Filesystem::mount($storage3, array(), '/folder/anotherstorage'); + + $rootView = new \OC\Files\View(''); + + $results = $rootView->search('foo'); + $this->assertEquals(6, count($results)); + $paths = array(); + foreach ($results as $result) { + $this->assertEquals($result['path'], \OC\Files\Filesystem::normalizePath($result['path'])); + $paths[] = $result['path']; + } + $this->assertContains('/foo.txt', $paths); + $this->assertContains('/foo.png', $paths); + $this->assertContains('/substorage/foo.txt', $paths); + $this->assertContains('/substorage/foo.png', $paths); + $this->assertContains('/folder/anotherstorage/foo.txt', $paths); + $this->assertContains('/folder/anotherstorage/foo.png', $paths); + + $folderView = new \OC\Files\View('/folder'); + $results = $folderView->search('bar'); + $this->assertEquals(2, count($results)); + $paths = array(); + foreach ($results as $result) { + $paths[] = $result['path']; + } + $this->assertContains('/anotherstorage/folder/bar.txt', $paths); + $this->assertContains('/bar.txt', $paths); + + $results = $folderView->search('foo'); + $this->assertEquals(2, count($results)); + $paths = array(); + foreach ($results as $result) { + $paths[] = $result['path']; + } + $this->assertContains('/anotherstorage/foo.txt', $paths); + $this->assertContains('/anotherstorage/foo.png', $paths); + + $this->assertEquals(6, count($rootView->searchByMime('text'))); + $this->assertEquals(3, count($folderView->searchByMime('text'))); + } + + function testWatcher() { + $storage1 = $this->getTestStorage(); + \OC\Files\Filesystem::mount($storage1, array(), '/'); + + $rootView = new \OC\Files\View(''); + + $cachedData = $rootView->getFileInfo('foo.txt'); + $this->assertEquals(16, $cachedData['size']); + + $rootView->putFileInfo('foo.txt', array('mtime' => 10)); + $storage1->file_put_contents('foo.txt', 'foo'); + clearstatcache(); + + $cachedData = $rootView->getFileInfo('foo.txt'); + $this->assertEquals(3, $cachedData['size']); + } + + /** + * @param bool $scan + * @return \OC\Files\Storage\Storage + */ + private function getTestStorage($scan = true) { + $storage = new \OC\Files\Storage\Temporary(array()); + $textData = "dummy file data\n"; + $imgData = file_get_contents(\OC::$SERVERROOT . '/core/img/logo.png'); + $storage->mkdir('folder'); + $storage->file_put_contents('foo.txt', $textData); + $storage->file_put_contents('foo.png', $imgData); + $storage->file_put_contents('folder/bar.txt', $textData); + + if ($scan) { + $scanner = $storage->getScanner(); + $scanner->scan(''); + } + $this->storages[] = $storage; + return $storage; + } +} diff --git a/tests/lib/filesystem.php b/tests/lib/filesystem.php deleted file mode 100644 index ee31ef4364d..00000000000 --- a/tests/lib/filesystem.php +++ /dev/null @@ -1,139 +0,0 @@ -<?php -/** - * ownCloud - * - * @author Robin Appelman - * @copyright 2012 Robin Appelman icewind@owncloud.com - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see <http://www.gnu.org/licenses/>. - * - */ - -class Test_Filesystem extends PHPUnit_Framework_TestCase { - /** - * @var array tmpDirs - */ - private $tmpDirs = array(); - - /** - * @return array - */ - private function getStorageData() { - $dir = OC_Helper::tmpFolder(); - $this->tmpDirs[] = $dir; - return array('datadir' => $dir); - } - - public function tearDown() { - foreach ($this->tmpDirs as $dir) { - OC_Helper::rmdirr($dir); - } - } - - public function setUp() { - OC_Filesystem::clearMounts(); - } - - public function testMount() { - OC_Filesystem::mount('OC_Filestorage_Local', self::getStorageData(), '/'); - $this->assertEquals('/', OC_Filesystem::getMountPoint('/')); - $this->assertEquals('/', OC_Filesystem::getMountPoint('/some/folder')); - $this->assertEquals('', OC_Filesystem::getInternalPath('/')); - $this->assertEquals('some/folder', OC_Filesystem::getInternalPath('/some/folder')); - - OC_Filesystem::mount('OC_Filestorage_Local', self::getStorageData(), '/some'); - $this->assertEquals('/', OC_Filesystem::getMountPoint('/')); - $this->assertEquals('/some/', OC_Filesystem::getMountPoint('/some/folder')); - $this->assertEquals('/some/', OC_Filesystem::getMountPoint('/some/')); - $this->assertEquals('/', OC_Filesystem::getMountPoint('/some')); - $this->assertEquals('folder', OC_Filesystem::getInternalPath('/some/folder')); - } - - public function testNormalize() { - $this->assertEquals('/path', OC_Filesystem::normalizePath('/path/')); - $this->assertEquals('/path/', OC_Filesystem::normalizePath('/path/', false)); - $this->assertEquals('/path', OC_Filesystem::normalizePath('path')); - $this->assertEquals('/path', OC_Filesystem::normalizePath('\path')); - $this->assertEquals('/foo/bar', OC_Filesystem::normalizePath('/foo//bar/')); - $this->assertEquals('/foo/bar', OC_Filesystem::normalizePath('/foo////bar')); - if (class_exists('Normalizer')) { - $this->assertEquals("/foo/bar\xC3\xBC", OC_Filesystem::normalizePath("/foo/baru\xCC\x88")); - } - } - - public function testBlacklist() { - OC_Hook::clear('OC_Filesystem'); - OC::registerFilesystemHooks(); - - $run = true; - OC_Hook::emit( - OC_Filesystem::CLASSNAME, - OC_Filesystem::signal_write, - array( - OC_Filesystem::signal_param_path => '/test/.htaccess', - OC_Filesystem::signal_param_run => &$run - ) - ); - $this->assertFalse($run); - - if (OC_Filesystem::getView()) { - $user = OC_User::getUser(); - } else { - $user = uniqid(); - OC_Filesystem::init('/' . $user . '/files'); - } - - OC_Filesystem::mount('OC_Filestorage_Temporary', array(), '/'); - - $rootView = new OC_FilesystemView(''); - $rootView->mkdir('/' . $user); - $rootView->mkdir('/' . $user . '/files'); - - $this->assertFalse((bool)$rootView->file_put_contents('/.htaccess', 'foo')); - $this->assertFalse((bool)OC_Filesystem::file_put_contents('/.htaccess', 'foo')); - $fh = fopen(__FILE__, 'r'); - $this->assertFalse((bool)OC_Filesystem::file_put_contents('/.htaccess', $fh)); - } - - public function testHooks() { - if (OC_Filesystem::getView()) { - $user = OC_User::getUser(); - } else { - $user = uniqid(); - OC_Filesystem::init('/' . $user . '/files'); - } - OC_Hook::clear('OC_Filesystem'); - OC_Hook::connect('OC_Filesystem', 'post_write', $this, 'dummyHook'); - - OC_Filesystem::mount('OC_Filestorage_Temporary', array(), '/'); - - $rootView = new OC_FilesystemView(''); - $rootView->mkdir('/' . $user); - $rootView->mkdir('/' . $user . '/files'); - - OC_Filesystem::file_put_contents('/foo', 'foo'); - OC_Filesystem::mkdir('/bar'); - OC_Filesystem::file_put_contents('/bar//foo', 'foo'); - - $tmpFile = OC_Helper::tmpFile(); - file_put_contents($tmpFile, 'foo'); - $fh = fopen($tmpFile, 'r'); - OC_Filesystem::file_put_contents('/bar//foo', $fh); - } - - public function dummyHook($arguments) { - $path = $arguments['path']; - $this->assertEquals($path, OC_Filesystem::normalizePath($path)); //the path passed to the hook should already be normalized - } -} diff --git a/tests/lib/streamwrappers.php b/tests/lib/streamwrappers.php index aebbc93b902..2237ee7d378 100644 --- a/tests/lib/streamwrappers.php +++ b/tests/lib/streamwrappers.php @@ -1,41 +1,41 @@ <?php /** -* ownCloud -* -* @author Robin Appelman -* @copyright 2012 Robin Appelman icewind@owncloud.com -* -* This library is free software; you can redistribute it and/or -* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE -* License as published by the Free Software Foundation; either -* version 3 of the License, or any later version. -* -* This library is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -* GNU AFFERO GENERAL PUBLIC LICENSE for more details. -* -* You should have received a copy of the GNU Affero General Public -* License along with this library. If not, see <http://www.gnu.org/licenses/>. -* -*/ + * ownCloud + * + * @author Robin Appelman + * @copyright 2012 Robin Appelman icewind@owncloud.com + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see <http://www.gnu.org/licenses/>. + * + */ class Test_StreamWrappers extends PHPUnit_Framework_TestCase { public function testFakeDir() { - $items=array('foo', 'bar'); - OC_FakeDirStream::$dirs['test']=$items; - $dh=opendir('fakedir://test'); - $result=array(); - while($file=readdir($dh)) { - $result[]=$file; + $items = array('foo', 'bar'); + \OC\Files\Stream\Dir::register('test', $items); + $dh = opendir('fakedir://test'); + $result = array(); + while ($file = readdir($dh)) { + $result[] = $file; $this->assertContains($file, $items); } $this->assertEquals(count($items), count($result)); } public function testStaticStream() { - $sourceFile=OC::$SERVERROOT.'/tests/data/lorem.txt'; - $staticFile='static://test'; + $sourceFile = OC::$SERVERROOT . '/tests/data/lorem.txt'; + $staticFile = 'static://test'; $this->assertFalse(file_exists($staticFile)); file_put_contents($staticFile, file_get_contents($sourceFile)); $this->assertTrue(file_exists($staticFile)); @@ -47,27 +47,27 @@ class Test_StreamWrappers extends PHPUnit_Framework_TestCase { public function testCloseStream() { //ensure all basic stream stuff works - $sourceFile=OC::$SERVERROOT.'/tests/data/lorem.txt'; - $tmpFile=OC_Helper::TmpFile('.txt'); - $file='close://'.$tmpFile; + $sourceFile = OC::$SERVERROOT . '/tests/data/lorem.txt'; + $tmpFile = OC_Helper::TmpFile('.txt'); + $file = 'close://' . $tmpFile; $this->assertTrue(file_exists($file)); file_put_contents($file, file_get_contents($sourceFile)); $this->assertEquals(file_get_contents($sourceFile), file_get_contents($file)); unlink($file); clearstatcache(); $this->assertFalse(file_exists($file)); - + //test callback - $tmpFile=OC_Helper::TmpFile('.txt'); - $file='close://'.$tmpFile; - OC_CloseStreamWrapper::$callBacks[$tmpFile]=array('Test_StreamWrappers', 'closeCallBack'); - $fh=fopen($file, 'w'); + $tmpFile = OC_Helper::TmpFile('.txt'); + $file = 'close://' . $tmpFile; + \OC\Files\Stream\Close::registerCallback($tmpFile, array('Test_StreamWrappers', 'closeCallBack')); + $fh = fopen($file, 'w'); fwrite($fh, 'asd'); - try{ + try { fclose($fh); $this->fail('Expected exception'); - }catch(Exception $e) { - $path=$e->getMessage(); + } catch (Exception $e) { + $path = $e->getMessage(); $this->assertEquals($path, $tmpFile); } } @@ -75,4 +75,23 @@ class Test_StreamWrappers extends PHPUnit_Framework_TestCase { public static function closeCallBack($path) { throw new Exception($path); } + + public function testOC() { + \OC\Files\Mount::clear(); + $storage = new \OC\Files\Storage\Temporary(array()); + $storage->file_put_contents('foo.txt', 'asd'); + new \OC\Files\Mount($storage, '/'); + + $this->assertTrue(file_exists('oc:///foo.txt')); + $this->assertEquals('asd', file_get_contents('oc:///foo.txt')); + $this->assertEquals(array('.', '..', 'foo.txt'), scandir('oc:///')); + + file_put_contents('oc:///bar.txt', 'qwerty'); + $this->assertEquals('qwerty', $storage->file_get_contents('bar.txt')); + $this->assertEquals(array('.', '..', 'bar.txt', 'foo.txt'), scandir('oc:///')); + $this->assertEquals('qwerty', file_get_contents('oc:///bar.txt')); + + unlink('oc:///foo.txt'); + $this->assertEquals(array('.', '..', 'bar.txt'), scandir('oc:///')); + } } |