From ff09a1f37baa5ad5bd63c57ec5384e3ffbc38ad0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Sun, 10 Feb 2013 14:17:18 +0100 Subject: [PATCH 01/26] don't use OC_FilesystemView() --- apps/files_versions/lib/hooks.php | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/apps/files_versions/lib/hooks.php b/apps/files_versions/lib/hooks.php index dc02c605c44..6c87eba423d 100644 --- a/apps/files_versions/lib/hooks.php +++ b/apps/files_versions/lib/hooks.php @@ -20,13 +20,10 @@ class Hooks { public static function write_hook( $params ) { if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') { - - $versions = new Storage( new \OC\Files\View('') ); - $path = $params[\OC\Files\Filesystem::signal_param_path]; - - if($path<>'') $versions->store( $path ); - + if($path<>'') { + Storage::store($path); + } } } @@ -40,12 +37,10 @@ class Hooks { */ public static function remove_hook($params) { 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 ); + if($path<>'') { + Storage::delete($path); + } } } @@ -59,13 +54,11 @@ class Hooks { */ public static function rename_hook($params) { 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 ); + if($oldpath<>'' && $newpath<>'') { + Storage::rename( $oldpath, $newpath ); + } } } From 87b98dab25bec98c9018364a827427e2e9ac7782 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Thu, 14 Feb 2013 11:56:41 +0100 Subject: [PATCH 02/26] use new filesystem to mount users home --- apps/files_versions/lib/versions.php | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/apps/files_versions/lib/versions.php b/apps/files_versions/lib/versions.php index b54bc4a4422..9f021bc4f88 100644 --- a/apps/files_versions/lib/versions.php +++ b/apps/files_versions/lib/versions.php @@ -57,9 +57,19 @@ 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\Files\View('/'.\OCP\User::getUser() .'/files'); - $users_view = new \OC\Files\View('/'.\OCP\User::getUser()); + $owner = \OC\Files\Filesystem::getOwner($filename); + if ( $owner != \OCP\User::getUser() ) { + $datadir = \OC_Config::getValue( "datadirectory", \OC::$SERVERROOT."/data" ); + \OC\Files\Filesystem::mount( '\OC\Files\Storage\Local', array('datadir'=>$datadir), '/'.$owner ); + $info = \OC\Files\Filesystem::getFileInfo($filename); + $id = $info['fileid']; + error_log("id: $id"); + $path = \OC\Files\Filesystem::getPath($id); + error_log("new path: $path"); + } + + $files_view = new \OC\Files\View('/'.$uid .'/files'); + $users_view = new \OC\Files\View('/'.$uid); //check if source file already exist as version to avoid recursions. // todo does this check work? From b05f05ec4a254ca5c2418fee473b648e52bb7e1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Thu, 14 Feb 2013 14:26:49 +0100 Subject: [PATCH 03/26] make store function static --- apps/files_versions/lib/versions.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/files_versions/lib/versions.php b/apps/files_versions/lib/versions.php index 9f021bc4f88..c537fcf3519 100644 --- a/apps/files_versions/lib/versions.php +++ b/apps/files_versions/lib/versions.php @@ -55,7 +55,7 @@ class Storage { /** * store a new version of a file. */ - public function store($filename) { + public static function store($filename) { if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') { $owner = \OC\Files\Filesystem::getOwner($filename); if ( $owner != \OCP\User::getUser() ) { From 953c87db9cb1f58e0c79152f6603272d198dd8a0 Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Fri, 15 Feb 2013 18:37:52 +0100 Subject: [PATCH 04/26] fix erroneous CSS, remove obsolete selectors --- core/css/styles.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/css/styles.css b/core/css/styles.css index c2e1ad92088..8a01211d8b0 100644 --- a/core/css/styles.css +++ b/core/css/styles.css @@ -258,8 +258,8 @@ fieldset.warning a { color:#b94a48 !important; font-weight:bold; } #expand:hover img, #expand:focus img, #expand:active img { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; } #expanddiv { position:absolute; right:0; top:45px; z-index:76; display:none; - background-color:#444; border-bottom-left-radius:7px; box-shadow: 0 0 20px rgb(29,45,68); - background:#383c43 url('../img/noise.png') repeat; border-bottom:1px #333 solid; border-left:border-bottom:1px #333 solid; + background:#383c43 url('../img/noise.png') repeat; + border-bottom-left-radius:7px; border-bottom:1px #333 solid; border-left:1px #333 solid; -moz-box-shadow:0 0 7px rgb(29,45,68); -webkit-box-shadow:0 0 7px rgb(29,45,68); box-shadow:0 0 7px rgb(29,45,68); } #expanddiv a { From d96146a017bd8f7e4573e4555cea2c198fa9fbad Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Sat, 16 Feb 2013 03:27:50 +0100 Subject: [PATCH 05/26] Give storage backends the option to define having no known free space When this is the case only the configured max upload size is taking into account for uploading --- apps/files/ajax/upload.php | 2 +- apps/files_external/lib/amazons3.php | 5 ----- apps/files_external/lib/sftp.php | 4 ---- apps/files_external/lib/streamwrapper.php | 4 ---- apps/files_external/lib/swift.php | 4 ---- apps/files_external/lib/webdav.php | 2 +- lib/files/filesystem.php | 2 ++ lib/files/storage/common.php | 9 +++++++++ lib/helper.php | 8 ++++++-- 9 files changed, 19 insertions(+), 21 deletions(-) diff --git a/apps/files/ajax/upload.php b/apps/files/ajax/upload.php index 07977f5ddf1..9031c729eff 100644 --- a/apps/files/ajax/upload.php +++ b/apps/files/ajax/upload.php @@ -48,7 +48,7 @@ $totalSize = 0; foreach ($files['size'] as $size) { $totalSize += $size; } -if ($totalSize > \OC\Files\Filesystem::free_space($dir)) { +if ($totalSize > $maxUploadFilesize) { OCP\JSON::error(array('data' => array('message' => $l->t('Not enough storage available'), 'uploadMaxFilesize' => $maxUploadFilesize, 'maxHumanFilesize' => $maxHumanFilesize))); diff --git a/apps/files_external/lib/amazons3.php b/apps/files_external/lib/amazons3.php index 494885a1dd3..37e53a3a670 100644 --- a/apps/files_external/lib/amazons3.php +++ b/apps/files_external/lib/amazons3.php @@ -229,11 +229,6 @@ class AmazonS3 extends \OC\Files\Storage\Common { return false; } - public function free_space($path) { - // Infinite? - return false; - } - public function touch($path, $mtime = null) { if (is_null($mtime)) { $mtime = time(); diff --git a/apps/files_external/lib/sftp.php b/apps/files_external/lib/sftp.php index 551a5a64ef2..77c08d3b733 100644 --- a/apps/files_external/lib/sftp.php +++ b/apps/files_external/lib/sftp.php @@ -241,10 +241,6 @@ class SFTP extends \OC\Files\Storage\Common { } } - public function free_space($path) { - return -1; - } - public function touch($path, $mtime=null) { try { if (!is_null($mtime)) return false; diff --git a/apps/files_external/lib/streamwrapper.php b/apps/files_external/lib/streamwrapper.php index a631e7ce06a..4685877f26b 100644 --- a/apps/files_external/lib/streamwrapper.php +++ b/apps/files_external/lib/streamwrapper.php @@ -76,10 +76,6 @@ abstract class StreamWrapper extends \OC\Files\Storage\Common{ return fopen($this->constructUrl($path), $mode); } - public function free_space($path) { - return 0; - } - public function touch($path, $mtime=null) { $this->init(); if(is_null($mtime)) { diff --git a/apps/files_external/lib/swift.php b/apps/files_external/lib/swift.php index 0fd6fa143b8..a00316c1f84 100644 --- a/apps/files_external/lib/swift.php +++ b/apps/files_external/lib/swift.php @@ -478,10 +478,6 @@ class SWIFT extends \OC\Files\Storage\Common{ } } - public function free_space($path) { - return 1024*1024*1024*8; - } - public function touch($path, $mtime=null) { $this->init(); $obj=$this->getObject($path); diff --git a/apps/files_external/lib/webdav.php b/apps/files_external/lib/webdav.php index 039a07b1ef2..91cc22779e6 100644 --- a/apps/files_external/lib/webdav.php +++ b/apps/files_external/lib/webdav.php @@ -222,7 +222,7 @@ class DAV extends \OC\Files\Storage\Common{ return 0; } } catch(\Exception $e) { - return 0; + return \OC\Files\FREE_SPACE_UNKNOWN; } } diff --git a/lib/files/filesystem.php b/lib/files/filesystem.php index f4530868077..0dafef836bd 100644 --- a/lib/files/filesystem.php +++ b/lib/files/filesystem.php @@ -29,6 +29,8 @@ namespace OC\Files; +const FREE_SPACE_UNKNOWN = -2; + class Filesystem { public static $loaded = false; /** diff --git a/lib/files/storage/common.php b/lib/files/storage/common.php index 4cdabf1c8a6..4e7a73e5d4a 100644 --- a/lib/files/storage/common.php +++ b/lib/files/storage/common.php @@ -301,4 +301,13 @@ abstract class Common implements \OC\Files\Storage\Storage { } return implode('/', $output); } + + /** + * get the free space in the storage + * @param $path + * return int + */ + public function free_space($path){ + return \OC\Files\FREE_SPACE_UNKNOWN; + } } diff --git a/lib/helper.php b/lib/helper.php index 0f810ffc0c2..add5c66e7be 100644 --- a/lib/helper.php +++ b/lib/helper.php @@ -762,9 +762,13 @@ class OC_Helper { $maxUploadFilesize = min($upload_max_filesize, $post_max_size); $freeSpace = \OC\Files\Filesystem::free_space($dir); - $freeSpace = max($freeSpace, 0); + if($freeSpace !== \OC\Files\FREE_SPACE_UNKNOWN){ + $freeSpace = max($freeSpace, 0); - return min($maxUploadFilesize, $freeSpace); + return min($maxUploadFilesize, $freeSpace); + } else { + return $maxUploadFilesize; + } } /** From 5a8e0f2048d6b2ef1d271fc8ca05c6d5bd338aed Mon Sep 17 00:00:00 2001 From: Thomas Tanghus Date: Sat, 16 Feb 2013 19:56:56 +0100 Subject: [PATCH 06/26] Extra position check for multiselect dropdown. Fix app/issues/575 --- core/js/multiselect.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/core/js/multiselect.js b/core/js/multiselect.js index 623c6e0f7e1..bc4223feb64 100644 --- a/core/js/multiselect.js +++ b/core/js/multiselect.js @@ -266,8 +266,9 @@ } list.append(list.find('li.creator')); var pos=button.position(); - if($(document).height() > (button.offset().top+button.outerHeight() + list.children().length * button.height()) - || $(document).height()/2 > pos.top + if(($(document).height() > (button.offset().top+button.outerHeight() + list.children().length * button.height()) + && $(document).height() - button.offset().top > (button.offset().top+button.outerHeight() + list.children().length * button.height())) + || $(document).height()/2 > button.offset().top ) { list.css({ top:pos.top+button.outerHeight()-5, From 451daf3ab14edde76f4d04e6fe41519cf517fe47 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Sun, 17 Feb 2013 20:09:03 +0100 Subject: [PATCH 07/26] Keep user quota into account when the storage backend has unkown free space --- lib/fileproxy/quota.php | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/lib/fileproxy/quota.php b/lib/fileproxy/quota.php index 07d1d250e4d..3dac3264fbe 100644 --- a/lib/fileproxy/quota.php +++ b/lib/fileproxy/quota.php @@ -62,21 +62,21 @@ class OC_FileProxy_Quota extends OC_FileProxy{ * @var string $internalPath */ list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($path); - $owner=$storage->getOwner($internalPath); + $owner = $storage->getOwner($internalPath); if (!$owner) { return -1; } - $totalSpace=$this->getQuota($owner); - if($totalSpace==-1) { + $totalSpace = $this->getQuota($owner); + if($totalSpace == -1) { return -1; } $view = new \OC\Files\View("/".$owner."/files"); - $rootInfo=$view->getFileInfo('/'); - $usedSpace=isset($rootInfo['size'])?$rootInfo['size']:0; - return $totalSpace-$usedSpace; + $rootInfo = $view->getFileInfo('/'); + $usedSpace = isset($rootInfo['size'])?$rootInfo['size']:0; + return $totalSpace - $usedSpace; } public function postFree_space($path, $space) { @@ -84,6 +84,9 @@ class OC_FileProxy_Quota extends OC_FileProxy{ if($free==-1) { return $space; } + if ($space < 0){ + return $free; + } return min($free, $space); } From efa024cc62a7a587ddb493287f0d8554c2342338 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Mon, 18 Feb 2013 11:19:40 +0100 Subject: [PATCH 08/26] fix getUidAndFilename() function --- apps/files_versions/appinfo/app.php | 2 +- apps/files_versions/lib/versions.php | 67 +++++++++------------------- 2 files changed, 23 insertions(+), 46 deletions(-) diff --git a/apps/files_versions/appinfo/app.php b/apps/files_versions/appinfo/app.php index f7c6989ce2d..1fa63ced5e8 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\Files_Versions\Hooks", "write_hook"); // Listen to delete and rename signals -OCP\Util::connectHook('OC_Filesystem', 'post-delete', "OCA\Files_Versions\Hooks", "remove_hook"); +OCP\Util::connectHook('OC_Filesystem', 'post_delete', "OCA\Files_Versions\Hooks", "remove_hook"); OCP\Util::connectHook('OC_Filesystem', 'rename', "OCA\Files_Versions\Hooks", "rename_hook"); diff --git a/apps/files_versions/lib/versions.php b/apps/files_versions/lib/versions.php index c537fcf3519..1e9dc0a92af 100644 --- a/apps/files_versions/lib/versions.php +++ b/apps/files_versions/lib/versions.php @@ -35,48 +35,26 @@ class Storage { 'step' => 604800), ); - private static function getUidAndFilename($filename) - { - if (\OCP\App::isEnabled('files_sharing') - && substr($filename, 0, 7) == '/Shared' - && $source = \OCP\Share::getItemSharedWith('file', - substr($filename, 7), - \OC_Share_Backend_File::FORMAT_SHARED_STORAGE)) { - $filename = $source['path']; - $pos = strpos($filename, '/files', 1); - $uid = substr($filename, 1, $pos - 1); - $filename = substr($filename, $pos + 6); - } else { - $uid = \OCP\User::getUser(); + private static function getUidAndFilename($filename) { + $uid = \OC\Files\Filesystem::getOwner($filename); + if ( $uid != \OCP\User::getUser() ) { + $info = \OC\Files\Filesystem::getFileInfo($filename); + $ownerView = new \OC\Files\View('/'.$uid.'/files'); + $filename = $ownerView->getPath($info['fileid']); } return array($uid, $filename); } - + /** * store a new version of a file. */ public static function store($filename) { if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') { - $owner = \OC\Files\Filesystem::getOwner($filename); - if ( $owner != \OCP\User::getUser() ) { - $datadir = \OC_Config::getValue( "datadirectory", \OC::$SERVERROOT."/data" ); - \OC\Files\Filesystem::mount( '\OC\Files\Storage\Local', array('datadir'=>$datadir), '/'.$owner ); - $info = \OC\Files\Filesystem::getFileInfo($filename); - $id = $info['fileid']; - error_log("id: $id"); - $path = \OC\Files\Filesystem::getPath($id); - error_log("new path: $path"); - } + list($uid, $filename) = self::getUidAndFilename($filename); $files_view = new \OC\Files\View('/'.$uid .'/files'); $users_view = new \OC\Files\View('/'.$uid); - //check if source file already exist as version to avoid recursions. - // todo does this check work? - if ($users_view->file_exists($filename)) { - return false; - } - // check if filename is a directory if($files_view->is_dir($filename)) { return false; @@ -116,10 +94,10 @@ class Storage { */ public static function delete($filename) { list($uid, $filename) = self::getUidAndFilename($filename); - $versions_fileview = new \OC_FilesystemView('/'.$uid .'/files_versions'); + $versions_fileview = new \OC\Files\View('/'.$uid .'/files_versions'); $abs_path = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath('').$filename.'.v'; - if( ($versions = self::getVersions($filename)) ) { + if( ($versions = self::getVersions($uid, $filename)) ) { if ( ($versionsSize = \OCP\Config::getAppValue('files_versions', 'size')) === null ) { $versionsSize = self::calculateSize($uid); } @@ -137,16 +115,15 @@ class Storage { public static function rename($oldpath, $newpath) { list($uid, $oldpath) = self::getUidAndFilename($oldpath); list($uidn, $newpath) = self::getUidAndFilename($newpath); - $versions_view = new \OC_FilesystemView('/'.$uid .'/files_versions'); - $files_view = new \OC_FilesystemView('/'.$uid .'/files'); + $versions_view = new \OC\Files\View('/'.$uid .'/files_versions'); + $files_view = new \OC\Files\View('/'.$uid .'/files'); $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)) ) { + } else if ( ($versions = Storage::getVersions($uid, $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']); } @@ -187,14 +164,14 @@ class Storage { /** * @brief get a list of all available versions of a file in descending chronological order + * @param $uid user id from the owner of the file * @param $filename file to find versions of, relative to the user files dir * @param $count number of versions to return * @returns array */ - public static function getVersions( $filename, $count = 0 ) { + public static function getVersions($uid, $filename, $count = 0 ) { if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) { - list($uid, $filename) = self::getUidAndFilename($filename); - $versions_fileview = new \OC\Files\View('/' . \OCP\User::getUser() . '/files_versions'); + $versions_fileview = new \OC\Files\View('/' . $uid . '/files_versions'); $versionsName = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath($filename); $versions = array(); @@ -203,7 +180,7 @@ class Storage { sort( $matches ); - $files_view = new \OC_FilesystemView('/'.$uid.'/files'); + $files_view = new \OC\Files\View('/'.$uid.'/files'); $local_file = $files_view->getLocalFile($filename); $local_file_md5 = \md5_file( $local_file ); @@ -254,7 +231,7 @@ class Storage { */ private static function calculateSize($uid) { if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) { - $versions_fileview = new \OC_FilesystemView('/'.$uid.'/files_versions'); + $versions_fileview = new \OC\Files\View('/'.$uid.'/files_versions'); $versionsRoot = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath(''); $iterator = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($versionsRoot), \RecursiveIteratorIterator::CHILD_FIRST); @@ -279,7 +256,7 @@ class Storage { */ private static function getAllVersions($uid) { if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) { - $versions_fileview = new \OC_FilesystemView('/'.$uid.'/files_versions'); + $versions_fileview = new \OC\Files\View('/'.$uid.'/files_versions'); $versionsRoot = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath(''); $iterator = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($versionsRoot), \RecursiveIteratorIterator::CHILD_FIRST); @@ -325,7 +302,7 @@ class Storage { private static function expire($filename, $versionsSize = null) { 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('/'.$uid.'/files_versions'); // get available disk space for user $quota = \OCP\Util::computerFileSize(\OC_Preferences::getValue($uid, 'files', 'quota')); @@ -344,7 +321,7 @@ class Storage { } // calculate available space for version history - $files_view = new \OC_FilesystemView('/'.$uid.'/files'); + $files_view = new \OC\Files\View('/'.$uid.'/files'); $rootInfo = $files_view->getFileInfo('/'); $free = $quota-$rootInfo['size']; // remaining free space for user if ( $free > 0 ) { @@ -360,7 +337,7 @@ class Storage { $versions_by_file = $result['by_file']; $all_versions = $result['all']; } else { - $all_versions = Storage::getVersions($filename); + $all_versions = Storage::getVersions($uid, $filename); $versions_by_file[$filename] = $all_versions; } From fde0a8b520203aee9800959847ff3bf4ec53250f Mon Sep 17 00:00:00 2001 From: VicDeo Date: Mon, 18 Feb 2013 13:22:43 +0300 Subject: [PATCH 09/26] Add Ability to the app to detect more details on the file --- apps/files/js/files.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/apps/files/js/files.js b/apps/files/js/files.js index 918182162d4..8327460cca6 100644 --- a/apps/files/js/files.js +++ b/apps/files/js/files.js @@ -162,9 +162,10 @@ $(document).ready(function() { var tr=$('tr').filterAttr('data-file',filename); var renaming=tr.data('renaming'); if(!renaming && !FileList.isLoading(filename)){ - var mime=$(this).parent().parent().data('mime'); - var type=$(this).parent().parent().data('type'); - var permissions = $(this).parent().parent().data('permissions'); + FileActions.currentFile = $(this).parent(); + var mime=FileActions.getCurrentMimeType(); + var type=FileActions.getCurrentType(); + var permissions = FileActions.getCurrentPermissions(); var action=FileActions.getDefault(mime,type, permissions); if(action){ event.preventDefault(); From 37352bba96033069107ca791b10b71c9505ca5d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Mon, 18 Feb 2013 18:16:19 +0100 Subject: [PATCH 10/26] close file handler after readdir() --- apps/files_trashbin/index.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/files_trashbin/index.php b/apps/files_trashbin/index.php index a2d4cc0a44d..5d6b5d94e5c 100644 --- a/apps/files_trashbin/index.php +++ b/apps/files_trashbin/index.php @@ -37,7 +37,7 @@ if ($dir) { ); } } - closedir($fullpath); + closedir($dirContent); } else { $dirlisting = false; From 9a93db96421b712d8b8485478db4b84594571c68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Tue, 19 Feb 2013 10:23:34 +0100 Subject: [PATCH 11/26] remove obsolete variables --- apps/files_trashbin/templates/part.list.php | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/apps/files_trashbin/templates/part.list.php b/apps/files_trashbin/templates/part.list.php index fe8a71f44e6..2de0d7ee91a 100644 --- a/apps/files_trashbin/templates/part.list.php +++ b/apps/files_trashbin/templates/part.list.php @@ -1,12 +1,8 @@ 200) $relative_date_color = 200; $name = str_replace('+', '%20', urlencode($file['name'])); $name = str_replace('%2F', '/', $name); From 51cef9d8f06586a4e7d4353cb5d7cc3fcddcf97a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Tue, 19 Feb 2013 10:24:21 +0100 Subject: [PATCH 12/26] allow user to delete selected files from the trash bin permanently --- apps/files_trashbin/ajax/delete.php | 52 ++++++++++++++++++------- apps/files_trashbin/js/trash.js | 30 ++++++++++++-- apps/files_trashbin/templates/index.php | 7 ++++ 3 files changed, 72 insertions(+), 17 deletions(-) diff --git a/apps/files_trashbin/ajax/delete.php b/apps/files_trashbin/ajax/delete.php index 7a6bd1342ea..d922fafeb26 100644 --- a/apps/files_trashbin/ajax/delete.php +++ b/apps/files_trashbin/ajax/delete.php @@ -3,22 +3,46 @@ OCP\JSON::checkLoggedIn(); OCP\JSON::callCheck(); -$file = $_REQUEST['file']; +$files = $_REQUEST['files']; +$dirlisting = $_REQUEST['dirlisting']; +$list = explode(';', $files); -$path_parts = pathinfo($file); -if ($path_parts['dirname'] == '.') { - $delimiter = strrpos($file, '.d'); - $filename = substr($file, 0, $delimiter); - $timestamp = substr($file, $delimiter+2); -} else { - $filename = $file; - $timestamp = null; +if (!is_array($list)){ + $list = array($list); } -if (OCA\Files_Trashbin\Trashbin::delete($filename, $timestamp)) { - OCP\JSON::success(array("data" => array("filename" => $file))); -} else { +$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 { + $filename = $file; + $timestamp = null; + } + + if(OCA\Files_Trashbin\Trashbin::delete($filename, $timestamp)) { + $success[$i]['filename'] = $file; + $success[$i]['timestamp'] = $timestamp; + $i++; + } else { + $error[] = $filename; + } +} + +if ( $error ) { + $filelist = ''; + foreach ( $error as $e ) { + $filelist .= $e.', '; + } $l = OC_L10N::get('files_trashbin'); - OCP\JSON::error(array("data" => array("message" => $l->t("Couldn't delete %s permanently", array($file))))); + $message = $l->t("Couldn't restore %s", array(rtrim($filelist, ', '))); + OCP\JSON::error(array("data" => array("message" => $message, + "success" => $success, "error" => $error))); +} else { + OCP\JSON::success(array("data" => array("success" => $success))); } - diff --git a/apps/files_trashbin/js/trash.js b/apps/files_trashbin/js/trash.js index 6c810e4c2bd..1f4be9f15ee 100644 --- a/apps/files_trashbin/js/trash.js +++ b/apps/files_trashbin/js/trash.js @@ -34,7 +34,7 @@ $(document).ready(function() { deleteAction[0].outerHTML = newHTML; $.post(OC.filePath('files_trashbin','ajax','delete.php'), - {file:tr.attr('data-file') }, + {files:tr.attr('data-file') }, function(result){ if ( result.status == 'success' ) { var row = document.getElementById(result.data.filename); @@ -88,7 +88,7 @@ $(document).ready(function() { } } processSelection(); - }); + }); $('.undelete').click('click',function(event) { var spinner = ''; @@ -113,7 +113,31 @@ $(document).ready(function() { } }); }); - + + $('.delete').click('click',function(event) { + console.log("delete selected"); + var spinner = ''; + var files=getSelectedFiles('file'); + var fileslist=files.join(';'); + var dirlisting=getSelectedFiles('dirlisting')[0]; + + for (var i in files) { + var deleteAction = $('tr').filterAttr('data-file',files[i]).children("td.date"); + deleteAction[0].innerHTML = deleteAction[0].innerHTML+spinner; + } + + $.post(OC.filePath('files_trashbin','ajax','delete.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'); + } + }); + }); }); diff --git a/apps/files_trashbin/templates/index.php b/apps/files_trashbin/templates/index.php index c3e51b4becd..c948c94d552 100644 --- a/apps/files_trashbin/templates/index.php +++ b/apps/files_trashbin/templates/index.php @@ -25,6 +25,13 @@ t( 'Deleted' ); ?> + + + t('Delete')?> + <?php echo $l->t('Delete')?>" /> + + From 815e964362192483989113af5c48d947084b5512 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Tue, 19 Feb 2013 11:49:41 +0100 Subject: [PATCH 13/26] use instead of --- apps/files_trashbin/ajax/undelete.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/files_trashbin/ajax/undelete.php b/apps/files_trashbin/ajax/undelete.php index 6320c1d0827..57f62816749 100644 --- a/apps/files_trashbin/ajax/undelete.php +++ b/apps/files_trashbin/ajax/undelete.php @@ -3,8 +3,8 @@ OCP\JSON::checkLoggedIn(); OCP\JSON::callCheck(); -$files = $_REQUEST['files']; -$dirlisting = $_REQUEST['dirlisting']; +$files = $_POST['files']; +$dirlisting = $_POST['dirlisting']; $list = explode(';', $files); $error = array(); From ac1b2a74ef33609e5ff99f020bf7d65e6bd56725 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Tue, 19 Feb 2013 11:50:29 +0100 Subject: [PATCH 14/26] add missing paramenter to post request --- apps/files_trashbin/js/trash.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/files_trashbin/js/trash.js b/apps/files_trashbin/js/trash.js index 1f4be9f15ee..1dfe09feca0 100644 --- a/apps/files_trashbin/js/trash.js +++ b/apps/files_trashbin/js/trash.js @@ -34,7 +34,7 @@ $(document).ready(function() { deleteAction[0].outerHTML = newHTML; $.post(OC.filePath('files_trashbin','ajax','delete.php'), - {files:tr.attr('data-file') }, + {files:tr.attr('data-file'), dirlisting:tr.attr('data-dirlisting') }, function(result){ if ( result.status == 'success' ) { var row = document.getElementById(result.data.filename); From e6c39fc3e7e11b22c20df361fb891523e8c89a12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Tue, 19 Feb 2013 12:14:44 +0100 Subject: [PATCH 15/26] change $_REQUEST to $_POST; fix check if file was successfully deleted --- apps/files_trashbin/ajax/delete.php | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/apps/files_trashbin/ajax/delete.php b/apps/files_trashbin/ajax/delete.php index d922fafeb26..7684d0465e6 100644 --- a/apps/files_trashbin/ajax/delete.php +++ b/apps/files_trashbin/ajax/delete.php @@ -3,8 +3,8 @@ OCP\JSON::checkLoggedIn(); OCP\JSON::callCheck(); -$files = $_REQUEST['files']; -$dirlisting = $_REQUEST['dirlisting']; +$files = $_POST['files']; +$dirlisting = $_POST['dirlisting']; $list = explode(';', $files); if (!is_array($list)){ @@ -24,8 +24,9 @@ foreach ($list as $file) { $filename = $file; $timestamp = null; } - - if(OCA\Files_Trashbin\Trashbin::delete($filename, $timestamp)) { + + OCA\Files_Trashbin\Trashbin::delete($filename, $timestamp); + if (!OCA\Files_Trashbin\Trashbin::file_exists($filename)) { $success[$i]['filename'] = $file; $success[$i]['timestamp'] = $timestamp; $i++; @@ -40,7 +41,7 @@ if ( $error ) { $filelist .= $e.', '; } $l = OC_L10N::get('files_trashbin'); - $message = $l->t("Couldn't restore %s", array(rtrim($filelist, ', '))); + $message = $l->t("Couldn't delete %s permanently", array(rtrim($filelist, ', '))); OCP\JSON::error(array("data" => array("message" => $message, "success" => $success, "error" => $error))); } else { From 7bfbfe6562a7dbcecdc05b60214a0da83760c4a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Tue, 19 Feb 2013 12:24:51 +0100 Subject: [PATCH 16/26] initialize $result --- apps/files_trashbin/index.php | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/files_trashbin/index.php b/apps/files_trashbin/index.php index 5d6b5d94e5c..d0b3030dbf8 100644 --- a/apps/files_trashbin/index.php +++ b/apps/files_trashbin/index.php @@ -16,6 +16,7 @@ OCP\Util::addScript('files', 'filelist'); $dir = isset($_GET['dir']) ? stripslashes($_GET['dir']) : ''; +$result = array(); if ($dir) { $dirlisting = true; $view = new \OC_FilesystemView('/'.\OCP\User::getUser().'/files_trashbin'); From 211e651d7222085b528cc6e9dc8d060d8ea6a60e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Tue, 19 Feb 2013 12:38:00 +0100 Subject: [PATCH 17/26] add timestamp to function call; fix trash.js to handle multiple delete operation at once --- apps/files_trashbin/ajax/delete.php | 2 +- apps/files_trashbin/js/trash.js | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/files_trashbin/ajax/delete.php b/apps/files_trashbin/ajax/delete.php index 7684d0465e6..915ad9379f6 100644 --- a/apps/files_trashbin/ajax/delete.php +++ b/apps/files_trashbin/ajax/delete.php @@ -26,7 +26,7 @@ foreach ($list as $file) { } OCA\Files_Trashbin\Trashbin::delete($filename, $timestamp); - if (!OCA\Files_Trashbin\Trashbin::file_exists($filename)) { + if (!OCA\Files_Trashbin\Trashbin::file_exists($filename, $timestamp)) { $success[$i]['filename'] = $file; $success[$i]['timestamp'] = $timestamp; $i++; diff --git a/apps/files_trashbin/js/trash.js b/apps/files_trashbin/js/trash.js index 1dfe09feca0..fc38889dc37 100644 --- a/apps/files_trashbin/js/trash.js +++ b/apps/files_trashbin/js/trash.js @@ -36,11 +36,11 @@ $(document).ready(function() { $.post(OC.filePath('files_trashbin','ajax','delete.php'), {files:tr.attr('data-file'), dirlisting:tr.attr('data-dirlisting') }, function(result){ - if ( result.status == 'success' ) { - var row = document.getElementById(result.data.filename); + for (var i = 0; i < result.data.success.length; i++) { + var row = document.getElementById(result.data.success[i].filename); row.parentNode.removeChild(row); - } else { - deleteAction[0].outerHTML = oldHTML; + } + if (result.status != 'success') { OC.dialogs.alert(result.data.message, 'Error'); } }); From 99758dce2b9e014081c27ff35b1df9e16f9eb430 Mon Sep 17 00:00:00 2001 From: Jenkins for ownCloud Date: Wed, 20 Feb 2013 00:03:28 +0100 Subject: [PATCH 18/26] [tx-robot] updated from transifex --- apps/files/l10n/nl.php | 1 + apps/files/l10n/pl.php | 2 + apps/files_trashbin/l10n/uk.php | 9 +++- apps/files_versions/l10n/uk.php | 8 ++++ l10n/el/settings.po | 8 ++-- l10n/gl/core.po | 4 +- l10n/gl/files.po | 4 +- l10n/gl/lib.po | 4 +- l10n/nl/files.po | 8 ++-- l10n/pl/files.po | 11 ++--- l10n/templates/core.pot | 2 +- l10n/templates/files.pot | 2 +- l10n/templates/files_encryption.pot | 2 +- l10n/templates/files_external.pot | 2 +- l10n/templates/files_sharing.pot | 2 +- l10n/templates/files_trashbin.pot | 4 +- l10n/templates/files_versions.pot | 2 +- l10n/templates/lib.pot | 2 +- l10n/templates/settings.pot | 2 +- l10n/templates/user_ldap.pot | 2 +- l10n/templates/user_webdavauth.pot | 2 +- l10n/tr/settings.po | 68 ++++++++++++++--------------- l10n/uk/files_trashbin.po | 23 +++++----- l10n/uk/files_versions.po | 23 +++++----- l10n/uk/lib.po | 43 +++++++++--------- lib/l10n/uk.php | 18 ++++++++ settings/l10n/el.php | 2 + settings/l10n/tr.php | 32 +++++++++++++- 28 files changed, 182 insertions(+), 110 deletions(-) diff --git a/apps/files/l10n/nl.php b/apps/files/l10n/nl.php index 381325d113c..a92ec933b22 100644 --- a/apps/files/l10n/nl.php +++ b/apps/files/l10n/nl.php @@ -60,6 +60,7 @@ "Text file" => "Tekstbestand", "Folder" => "Map", "From link" => "Vanaf link", +"Deleted files" => "Verwijderde bestanden", "Cancel upload" => "Upload afbreken", "Nothing in here. Upload something!" => "Er bevindt zich hier niets. Upload een bestand!", "Download" => "Download", diff --git a/apps/files/l10n/pl.php b/apps/files/l10n/pl.php index 83091bad18c..d68a871a7d7 100644 --- a/apps/files/l10n/pl.php +++ b/apps/files/l10n/pl.php @@ -10,6 +10,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 storage available" => "Za mało miejsca", "Invalid directory." => "Zła ścieżka.", "Files" => "Pliki", "Delete" => "Usuwa element", @@ -54,6 +55,7 @@ "Text file" => "Plik tekstowy", "Folder" => "Katalog", "From link" => "Z linku", +"Deleted files" => "Pliki usnięte", "Cancel upload" => "Przestań wysyłać", "Nothing in here. Upload something!" => "Brak zawartości. Proszę wysłać pliki!", "Download" => "Pobiera element", diff --git a/apps/files_trashbin/l10n/uk.php b/apps/files_trashbin/l10n/uk.php index 14c6931255a..06474d9b2cd 100644 --- a/apps/files_trashbin/l10n/uk.php +++ b/apps/files_trashbin/l10n/uk.php @@ -1,7 +1,14 @@ "Неможливо видалити %s назавжди", +"Couldn't restore %s" => "Неможливо відновити %s", +"perform restore operation" => "виконати операцію відновлення", +"delete file permanently" => "видалити файл назавжди", "Name" => "Ім'я", +"Deleted" => "Видалено", "1 folder" => "1 папка", "{count} folders" => "{count} папок", "1 file" => "1 файл", -"{count} files" => "{count} файлів" +"{count} files" => "{count} файлів", +"Nothing in here. Your trash bin is empty!" => "Нічого немає. Ваший кошик для сміття пустий!", +"Restore" => "Відновити" ); diff --git a/apps/files_versions/l10n/uk.php b/apps/files_versions/l10n/uk.php index 49acda81079..861523bf6a4 100644 --- a/apps/files_versions/l10n/uk.php +++ b/apps/files_versions/l10n/uk.php @@ -1,5 +1,13 @@ "Не вдалося відновити: %s", +"success" => "успішно", +"File %s was reverted to version %s" => "Файл %s був відновлений до версії %s", +"failure" => "неуспішно", +"File %s could not be reverted to version %s" => "Файл %s не може бути відновлений до версії %s", +"No old versions available" => "Старі версії недоступні", +"No path specified" => "Шлях не вказаний", "History" => "Історія", +"Revert a file to a previous version by clicking on its revert button" => "Відновити файл на попередню версію, натиснувши на кнопку Відновити", "Files Versioning" => "Версії файлів", "Enable" => "Включити" ); diff --git a/l10n/el/settings.po b/l10n/el/settings.po index 6c417dcbf34..d86b53331ac 100644 --- a/l10n/el/settings.po +++ b/l10n/el/settings.po @@ -20,8 +20,8 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-02-18 00:05+0100\n" -"PO-Revision-Date: 2013-02-17 12:30+0000\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" +"PO-Revision-Date: 2013-02-19 22:10+0000\n" "Last-Translator: Efstathios Iosifidis \n" "Language-Team: Greek (http://www.transifex.com/projects/p/owncloud/language/el/)\n" "MIME-Version: 1.0\n" @@ -164,7 +164,7 @@ msgstr "προσθήκη ομάδας" #: js/users.js:352 msgid "A valid username must be provided" -msgstr "" +msgstr "Πρέπει να δοθεί έγκυρο όνομα χρήστη" #: js/users.js:353 js/users.js:359 js/users.js:374 msgid "Error creating user" @@ -172,7 +172,7 @@ msgstr "Σφάλμα δημιουργίας χρήστη" #: js/users.js:358 msgid "A valid password must be provided" -msgstr "" +msgstr "Πρέπει να δοθεί έγκυρο συνθηματικό" #: personal.php:29 personal.php:30 msgid "__language_name__" diff --git a/l10n/gl/core.po b/l10n/gl/core.po index f67798a78e6..a21a74f87d5 100644 --- a/l10n/gl/core.po +++ b/l10n/gl/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-02-16 00:04+0100\n" -"PO-Revision-Date: 2013-02-15 15:00+0000\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" +"PO-Revision-Date: 2013-02-19 12:10+0000\n" "Last-Translator: mbouzada \n" "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n" "MIME-Version: 1.0\n" diff --git a/l10n/gl/files.po b/l10n/gl/files.po index 5fb9fb14dfd..42f77c08b62 100644 --- a/l10n/gl/files.po +++ b/l10n/gl/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-02-16 00:04+0100\n" -"PO-Revision-Date: 2013-02-15 14:31+0000\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" +"PO-Revision-Date: 2013-02-19 12:10+0000\n" "Last-Translator: mbouzada \n" "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n" "MIME-Version: 1.0\n" diff --git a/l10n/gl/lib.po b/l10n/gl/lib.po index aa47bb80329..00e1b816f8f 100644 --- a/l10n/gl/lib.po +++ b/l10n/gl/lib.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-02-16 00:04+0100\n" -"PO-Revision-Date: 2013-02-15 15:40+0000\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" +"PO-Revision-Date: 2013-02-19 12:10+0000\n" "Last-Translator: mbouzada \n" "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n" "MIME-Version: 1.0\n" diff --git a/l10n/nl/files.po b/l10n/nl/files.po index bbd8fd530f3..0cc281e39e4 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-02-15 00:04+0100\n" -"PO-Revision-Date: 2013-02-14 23:05+0000\n" -"Last-Translator: I Robot \n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" +"PO-Revision-Date: 2013-02-19 21:50+0000\n" +"Last-Translator: André Koot \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" @@ -286,7 +286,7 @@ msgstr "Vanaf link" #: templates/index.php:40 msgid "Deleted files" -msgstr "" +msgstr "Verwijderde bestanden" #: templates/index.php:46 msgid "Cancel upload" diff --git a/l10n/pl/files.po b/l10n/pl/files.po index 9890a2eae89..35556a13c0c 100644 --- a/l10n/pl/files.po +++ b/l10n/pl/files.po @@ -7,6 +7,7 @@ # Cyryl Sochacki <>, 2012. # Cyryl Sochacki , 2012-2013. # Marcin Małecki , 2011-2012. +# Mariusz , 2013. # , 2011. # , 2012. # Piotr Sokół , 2012. @@ -15,9 +16,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-02-15 00:04+0100\n" -"PO-Revision-Date: 2013-02-14 23:05+0000\n" -"Last-Translator: I Robot \n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" +"PO-Revision-Date: 2013-02-19 15:50+0000\n" +"Last-Translator: Mariusz Fik \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" @@ -76,7 +77,7 @@ msgstr "Błąd zapisu na dysk" #: ajax/upload.php:52 msgid "Not enough storage available" -msgstr "" +msgstr "Za mało miejsca" #: ajax/upload.php:83 msgid "Invalid directory." @@ -282,7 +283,7 @@ msgstr "Z linku" #: templates/index.php:40 msgid "Deleted files" -msgstr "" +msgstr "Pliki usnięte" #: templates/index.php:46 msgid "Cancel upload" diff --git a/l10n/templates/core.pot b/l10n/templates/core.pot index 36be3c3706c..bd782be12d2 100644 --- a/l10n/templates/core.pot +++ b/l10n/templates/core.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud Core 5.0.0\n" "Report-Msgid-Bugs-To: translations@owncloud.org\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/l10n/templates/files.pot b/l10n/templates/files.pot index fb8cc4e0c80..7d45d571c9d 100644 --- a/l10n/templates/files.pot +++ b/l10n/templates/files.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud Core 5.0.0\n" "Report-Msgid-Bugs-To: translations@owncloud.org\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/l10n/templates/files_encryption.pot b/l10n/templates/files_encryption.pot index 5e60e27efac..b27519c01e6 100644 --- a/l10n/templates/files_encryption.pot +++ b/l10n/templates/files_encryption.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud Core 5.0.0\n" "Report-Msgid-Bugs-To: translations@owncloud.org\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/l10n/templates/files_external.pot b/l10n/templates/files_external.pot index c9bc38f0ef7..6e98b59654a 100644 --- a/l10n/templates/files_external.pot +++ b/l10n/templates/files_external.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud Core 5.0.0\n" "Report-Msgid-Bugs-To: translations@owncloud.org\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/l10n/templates/files_sharing.pot b/l10n/templates/files_sharing.pot index 1271253d44c..c1f7c6dcd28 100644 --- a/l10n/templates/files_sharing.pot +++ b/l10n/templates/files_sharing.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud Core 5.0.0\n" "Report-Msgid-Bugs-To: translations@owncloud.org\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/l10n/templates/files_trashbin.pot b/l10n/templates/files_trashbin.pot index 4d7440e632a..0e34b311a8f 100644 --- a/l10n/templates/files_trashbin.pot +++ b/l10n/templates/files_trashbin.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud Core 5.0.0\n" "Report-Msgid-Bugs-To: translations@owncloud.org\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: ajax/delete.php:22 +#: ajax/delete.php:24 #, php-format msgid "Couldn't delete %s permanently" msgstr "" diff --git a/l10n/templates/files_versions.pot b/l10n/templates/files_versions.pot index 97806d46465..0339eb09170 100644 --- a/l10n/templates/files_versions.pot +++ b/l10n/templates/files_versions.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud Core 5.0.0\n" "Report-Msgid-Bugs-To: translations@owncloud.org\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/l10n/templates/lib.pot b/l10n/templates/lib.pot index 2232f919287..53147fb1c57 100644 --- a/l10n/templates/lib.pot +++ b/l10n/templates/lib.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud Core 5.0.0\n" "Report-Msgid-Bugs-To: translations@owncloud.org\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/l10n/templates/settings.pot b/l10n/templates/settings.pot index d37161b4dff..6403daf074a 100644 --- a/l10n/templates/settings.pot +++ b/l10n/templates/settings.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud Core 5.0.0\n" "Report-Msgid-Bugs-To: translations@owncloud.org\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/l10n/templates/user_ldap.pot b/l10n/templates/user_ldap.pot index 93d7d9f6b6f..cbc32af4131 100644 --- a/l10n/templates/user_ldap.pot +++ b/l10n/templates/user_ldap.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud Core 5.0.0\n" "Report-Msgid-Bugs-To: translations@owncloud.org\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/l10n/templates/user_webdavauth.pot b/l10n/templates/user_webdavauth.pot index 3e170c6c326..15865d8de37 100644 --- a/l10n/templates/user_webdavauth.pot +++ b/l10n/templates/user_webdavauth.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud Core 5.0.0\n" "Report-Msgid-Bugs-To: translations@owncloud.org\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/l10n/tr/settings.po b/l10n/tr/settings.po index 3409c93a049..65ec66d804e 100644 --- a/l10n/tr/settings.po +++ b/l10n/tr/settings.po @@ -3,7 +3,7 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: -# Aranel Surion , 2011, 2012. +# Aranel Surion , 2011-2013. # Emre , 2012. # , 2012. # Necdet Yücel , 2012. @@ -11,9 +11,9 @@ msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" -"PO-Revision-Date: 2013-02-18 19:50+0000\n" -"Last-Translator: I Robot \n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" +"PO-Revision-Date: 2013-02-18 23:30+0000\n" +"Last-Translator: Aranel Surion \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" @@ -32,7 +32,7 @@ msgstr "Eşleşme hata" #: ajax/changedisplayname.php:32 msgid "Unable to change display name" -msgstr "" +msgstr "Ekran adı değiştirilemiyor" #: ajax/creategroup.php:10 msgid "Group already exists" @@ -72,7 +72,7 @@ msgstr "Geçersiz istek" #: ajax/togglegroups.php:12 msgid "Admins can't remove themself from the admin group" -msgstr "" +msgstr "Yöneticiler kendilerini yönetici grubundan kaldıramaz" #: ajax/togglegroups.php:28 #, php-format @@ -82,15 +82,15 @@ msgstr "Kullanıcı %s grubuna eklenemiyor" #: ajax/togglegroups.php:34 #, php-format msgid "Unable to remove user from group %s" -msgstr "" +msgstr "%s grubundan kullanıcı kaldırılamıyor" #: ajax/updateapp.php:14 msgid "Couldn't update app." -msgstr "" +msgstr "Uygulama güncellenemedi." #: js/apps.js:30 msgid "Update to {appversion}" -msgstr "" +msgstr "{appversion} Güncelle" #: js/apps.js:36 js/apps.js:76 msgid "Disable" @@ -102,15 +102,15 @@ msgstr "Etkin" #: js/apps.js:55 msgid "Please wait...." -msgstr "" +msgstr "Lütfen bekleyin...." #: js/apps.js:84 msgid "Updating...." -msgstr "" +msgstr "Güncelleniyor...." #: js/apps.js:87 msgid "Error while updating app" -msgstr "" +msgstr "Uygulama güncellenirken hata" #: js/apps.js:87 msgid "Error" @@ -118,7 +118,7 @@ msgstr "Hata" #: js/apps.js:90 msgid "Updated" -msgstr "" +msgstr "Güncellendi" #: js/personal.js:96 msgid "Saving..." @@ -134,7 +134,7 @@ msgstr "geri al" #: js/users.js:62 msgid "Unable to remove user" -msgstr "" +msgstr "Kullanıcı kaldırılamıyor" #: js/users.js:75 templates/users.php:26 templates/users.php:80 #: templates/users.php:105 @@ -151,19 +151,19 @@ msgstr "Sil" #: js/users.js:191 msgid "add group" -msgstr "" +msgstr "grup ekle" #: js/users.js:352 msgid "A valid username must be provided" -msgstr "" +msgstr "Geçerli bir kullanıcı adı mutlaka sağlanmalı" #: js/users.js:353 js/users.js:359 js/users.js:374 msgid "Error creating user" -msgstr "" +msgstr "Kullanıcı oluşturulurken hata" #: js/users.js:358 msgid "A valid password must be provided" -msgstr "" +msgstr "Geçerli bir parola mutlaka sağlanmalı" #: personal.php:29 personal.php:30 msgid "__language_name__" @@ -184,7 +184,7 @@ msgstr "data dizininiz ve dosyalarınız büyük ihtimalle internet üzerinden e #: templates/admin.php:29 msgid "Setup Warning" -msgstr "" +msgstr "Kurulum Uyarısı" #: templates/admin.php:32 msgid "" @@ -199,7 +199,7 @@ msgstr "" #: templates/admin.php:44 msgid "Module 'fileinfo' missing" -msgstr "" +msgstr "Modül 'fileinfo' kayıp" #: templates/admin.php:47 msgid "" @@ -352,7 +352,7 @@ msgstr "Uygulamanın sayfasına apps.owncloud.com adresinden bakın " #: templates/apps.php:29 msgid "-licensed by " -msgstr "" +msgstr "-lisanslayan " #: templates/apps.php:31 msgid "Update" @@ -393,7 +393,7 @@ msgstr "Dosyalarınızı senkronize etmek için uygulamayı indirin" #: templates/personal.php:25 msgid "Show First Run Wizard again" -msgstr "" +msgstr "İlk Çalıştırma Sihirbazını yeniden göster" #: templates/personal.php:36 templates/users.php:23 templates/users.php:79 msgid "Password" @@ -421,19 +421,19 @@ msgstr "Parola değiştir" #: templates/personal.php:54 templates/users.php:78 msgid "Display Name" -msgstr "" +msgstr "Ekran Adı" #: templates/personal.php:55 msgid "Your display name was changed" -msgstr "" +msgstr "Ekran adınız değiştirildi" #: templates/personal.php:56 msgid "Unable to change your display name" -msgstr "" +msgstr "Ekran adınız değiştirilemiyor" #: templates/personal.php:59 msgid "Change display name" -msgstr "" +msgstr "Ekran adını değiştir" #: templates/personal.php:68 msgid "Email" @@ -461,11 +461,11 @@ msgstr "WebDAV" #: templates/personal.php:89 msgid "Use this address to connect to your ownCloud in your file manager" -msgstr "" +msgstr "Bu adresi kullanarak ownCloud 'unuza dosya yöneticinizde bağlanın" #: templates/users.php:21 templates/users.php:77 msgid "Login Name" -msgstr "" +msgstr "Giriş Adı" #: templates/users.php:32 msgid "Create" @@ -473,11 +473,11 @@ msgstr "Oluştur" #: templates/users.php:35 msgid "Default Storage" -msgstr "" +msgstr "Varsayılan Depolama" #: templates/users.php:41 templates/users.php:139 msgid "Unlimited" -msgstr "" +msgstr "Limitsiz" #: templates/users.php:59 templates/users.php:154 msgid "Other" @@ -485,16 +485,16 @@ msgstr "Diğer" #: templates/users.php:84 msgid "Storage" -msgstr "" +msgstr "Depolama" #: templates/users.php:95 msgid "change display name" -msgstr "" +msgstr "ekran adını değiştir" #: templates/users.php:99 msgid "set new password" -msgstr "" +msgstr "yeni parola belirle" #: templates/users.php:134 msgid "Default" -msgstr "" +msgstr "Varsayılan" diff --git a/l10n/uk/files_trashbin.po b/l10n/uk/files_trashbin.po index d2cbb893abc..7f2bd9d813e 100644 --- a/l10n/uk/files_trashbin.po +++ b/l10n/uk/files_trashbin.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# пан Володимир , 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-02-12 15:10+0100\n" -"PO-Revision-Date: 2013-02-12 10:07+0000\n" -"Last-Translator: I Robot \n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" +"PO-Revision-Date: 2013-02-19 14:20+0000\n" +"Last-Translator: volodya327 \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" @@ -17,23 +18,23 @@ 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/delete.php:22 +#: ajax/delete.php:24 #, php-format msgid "Couldn't delete %s permanently" -msgstr "" +msgstr "Неможливо видалити %s назавжди" #: ajax/undelete.php:41 #, php-format msgid "Couldn't restore %s" -msgstr "" +msgstr "Неможливо відновити %s" #: js/trash.js:7 js/trash.js:94 msgid "perform restore operation" -msgstr "" +msgstr "виконати операцію відновлення" #: js/trash.js:33 msgid "delete file permanently" -msgstr "" +msgstr "видалити файл назавжди" #: js/trash.js:125 templates/index.php:17 msgid "Name" @@ -41,7 +42,7 @@ msgstr "Ім'я" #: js/trash.js:126 templates/index.php:27 msgid "Deleted" -msgstr "" +msgstr "Видалено" #: js/trash.js:135 msgid "1 folder" @@ -61,8 +62,8 @@ msgstr "{count} файлів" #: templates/index.php:9 msgid "Nothing in here. Your trash bin is empty!" -msgstr "" +msgstr "Нічого немає. Ваший кошик для сміття пустий!" #: templates/index.php:20 templates/index.php:22 msgid "Restore" -msgstr "" +msgstr "Відновити" diff --git a/l10n/uk/files_versions.po b/l10n/uk/files_versions.po index a511f9ae557..91c980409da 100644 --- a/l10n/uk/files_versions.po +++ b/l10n/uk/files_versions.po @@ -4,13 +4,14 @@ # # Translators: # , 2012. +# пан Володимир , 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-02-08 00:10+0100\n" -"PO-Revision-Date: 2013-02-07 23:11+0000\n" -"Last-Translator: I Robot \n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" +"PO-Revision-Date: 2013-02-19 14:30+0000\n" +"Last-Translator: volodya327 \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" @@ -21,33 +22,33 @@ msgstr "" #: ajax/rollbackVersion.php:15 #, php-format msgid "Could not revert: %s" -msgstr "" +msgstr "Не вдалося відновити: %s" #: history.php:40 msgid "success" -msgstr "" +msgstr "успішно" #: history.php:42 #, php-format msgid "File %s was reverted to version %s" -msgstr "" +msgstr "Файл %s був відновлений до версії %s" #: history.php:49 msgid "failure" -msgstr "" +msgstr "неуспішно" #: history.php:51 #, php-format msgid "File %s could not be reverted to version %s" -msgstr "" +msgstr "Файл %s не може бути відновлений до версії %s" #: history.php:68 msgid "No old versions available" -msgstr "" +msgstr "Старі версії недоступні" #: history.php:73 msgid "No path specified" -msgstr "" +msgstr "Шлях не вказаний" #: js/versions.js:16 msgid "History" @@ -55,7 +56,7 @@ msgstr "Історія" #: templates/history.php:20 msgid "Revert a file to a previous version by clicking on its revert button" -msgstr "" +msgstr "Відновити файл на попередню версію, натиснувши на кнопку Відновити" #: templates/settings.php:3 msgid "Files Versioning" diff --git a/l10n/uk/lib.po b/l10n/uk/lib.po index 68427402a33..3ed55cb1ef1 100644 --- a/l10n/uk/lib.po +++ b/l10n/uk/lib.po @@ -7,13 +7,14 @@ # , 2012. # , 2012. # , 2013. +# пан Володимир , 2013. msgid "" msgstr "" "Project-Id-Version: ownCloud\n" "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n" -"POT-Creation-Date: 2013-02-19 00:05+0100\n" -"PO-Revision-Date: 2013-02-18 13:40+0000\n" -"Last-Translator: I Robot \n" +"POT-Creation-Date: 2013-02-20 00:02+0100\n" +"PO-Revision-Date: 2013-02-19 14:10+0000\n" +"Last-Translator: volodya327 \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" @@ -91,51 +92,51 @@ msgstr "Зображення" #: setup.php:34 msgid "Set an admin username." -msgstr "" +msgstr "Встановіть ім'я адміністратора." #: setup.php:37 msgid "Set an admin password." -msgstr "" +msgstr "Встановіть пароль адміністратора." #: setup.php:40 msgid "Specify a data folder." -msgstr "" +msgstr "Вкажіть теку для даних." #: setup.php:53 #, php-format msgid "%s enter the database username." -msgstr "" +msgstr "%s введіть ім'я користувача бази даних." #: setup.php:56 #, php-format msgid "%s enter the database name." -msgstr "" +msgstr "%s введіть назву бази даних." #: setup.php:59 #, php-format msgid "%s you may not use dots in the database name" -msgstr "" +msgstr "%s не можна використовувати крапки в назві бази даних" #: setup.php:62 #, php-format msgid "%s set the database host." -msgstr "" +msgstr "%s встановити хост бази даних." #: setup.php:126 setup.php:294 setup.php:339 msgid "PostgreSQL username and/or password not valid" -msgstr "" +msgstr "PostgreSQL ім'я користувача та/або пароль не дійсні" #: setup.php:127 setup.php:150 setup.php:204 msgid "You need to enter either an existing account or the administrator." -msgstr "" +msgstr "Вам потрібно ввести або існуючий обліковий запис або administrator." #: setup.php:149 setup.php:427 setup.php:494 msgid "Oracle username and/or password not valid" -msgstr "" +msgstr "Oracle ім'я користувача та/або пароль не дійсні" #: setup.php:203 msgid "MySQL username and/or password not valid" -msgstr "" +msgstr "MySQL ім'я користувача та/або пароль не дійсні" #: setup.php:257 setup.php:360 setup.php:369 setup.php:387 setup.php:397 #: setup.php:406 setup.php:435 setup.php:501 setup.php:527 setup.php:534 @@ -143,37 +144,37 @@ msgstr "" #: setup.php:584 #, php-format msgid "DB Error: \"%s\"" -msgstr "" +msgstr "Помилка БД: \"%s\"" #: setup.php:258 setup.php:361 setup.php:370 setup.php:388 setup.php:398 #: setup.php:407 setup.php:436 setup.php:502 setup.php:528 setup.php:535 #: setup.php:546 setup.php:562 setup.php:570 setup.php:579 #, php-format msgid "Offending command was: \"%s\"" -msgstr "" +msgstr "Команда, що викликала проблему: \"%s\"" #: setup.php:273 #, php-format msgid "MySQL user '%s'@'localhost' exists already." -msgstr "" +msgstr "Користувач MySQL '%s'@'localhost' вже існує." #: setup.php:274 msgid "Drop this user from MySQL" -msgstr "" +msgstr "Видалити цього користувача з MySQL" #: setup.php:279 #, php-format msgid "MySQL user '%s'@'%%' already exists" -msgstr "" +msgstr "Користувач MySQL '%s'@'%%' вже існує" #: setup.php:280 msgid "Drop this user from MySQL." -msgstr "" +msgstr "Видалити цього користувача з MySQL." #: setup.php:553 setup.php:585 #, php-format msgid "Offending command was: \"%s\", name: %s, password: %s" -msgstr "" +msgstr "Команда, що викликала проблему: \"%s\", ім'я: %s, пароль: %s" #: setup.php:649 msgid "" diff --git a/lib/l10n/uk.php b/lib/l10n/uk.php index 434ddcd9736..415c0a80c27 100644 --- a/lib/l10n/uk.php +++ b/lib/l10n/uk.php @@ -16,6 +16,24 @@ "Files" => "Файли", "Text" => "Текст", "Images" => "Зображення", +"Set an admin username." => "Встановіть ім'я адміністратора.", +"Set an admin password." => "Встановіть пароль адміністратора.", +"Specify a data folder." => "Вкажіть теку для даних.", +"%s enter the database username." => "%s введіть ім'я користувача бази даних.", +"%s enter the database name." => "%s введіть назву бази даних.", +"%s you may not use dots in the database name" => "%s не можна використовувати крапки в назві бази даних", +"%s set the database host." => "%s встановити хост бази даних.", +"PostgreSQL username and/or password not valid" => "PostgreSQL ім'я користувача та/або пароль не дійсні", +"You need to enter either an existing account or the administrator." => "Вам потрібно ввести або існуючий обліковий запис або administrator.", +"Oracle username and/or password not valid" => "Oracle ім'я користувача та/або пароль не дійсні", +"MySQL username and/or password not valid" => "MySQL ім'я користувача та/або пароль не дійсні", +"DB Error: \"%s\"" => "Помилка БД: \"%s\"", +"Offending command was: \"%s\"" => "Команда, що викликала проблему: \"%s\"", +"MySQL user '%s'@'localhost' exists already." => "Користувач MySQL '%s'@'localhost' вже існує.", +"Drop this user from MySQL" => "Видалити цього користувача з MySQL", +"MySQL user '%s'@'%%' already exists" => "Користувач MySQL '%s'@'%%' вже існує", +"Drop this user from MySQL." => "Видалити цього користувача з MySQL.", +"Offending command was: \"%s\", name: %s, password: %s" => "Команда, що викликала проблему: \"%s\", ім'я: %s, пароль: %s", "Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken." => "Ваш Web-сервер ще не налаштований належним чином для того, щоб дозволити синхронізацію файлів, через те що інтерфейс WebDAV, здається, зламаний.", "Please double check the installation guides." => "Будь ласка, перевірте інструкції по встановленню.", "seconds ago" => "секунди тому", diff --git a/settings/l10n/el.php b/settings/l10n/el.php index 18417935285..56c1837625d 100644 --- a/settings/l10n/el.php +++ b/settings/l10n/el.php @@ -29,7 +29,9 @@ "Group Admin" => "Ομάδα Διαχειριστών", "Delete" => "Διαγραφή", "add group" => "προσθήκη ομάδας", +"A valid username must be provided" => "Πρέπει να δοθεί έγκυρο όνομα χρήστη", "Error creating user" => "Σφάλμα δημιουργίας χρήστη", +"A valid password must be provided" => "Πρέπει να δοθεί έγκυρο συνθηματικό", "__language_name__" => "__όνομα_γλώσσας__", "Security Warning" => "Προειδοποίηση Ασφαλείας", "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." => "Ο κατάλογος data και τα αρχεία σας πιθανόν να είναι διαθέσιμα στο διαδίκτυο. Το αρχείο .htaccess που παρέχει το ownCloud δεν δουλεύει. Σας προτείνουμε ανεπιφύλακτα να ρυθμίσετε το διακομιστή σας με τέτοιο τρόπο ώστε ο κατάλογος data να μην είναι πλέον προσβάσιμος ή να μετακινήσετε τον κατάλογο data έξω από τον κατάλογο του διακομιστή.", diff --git a/settings/l10n/tr.php b/settings/l10n/tr.php index 38a1d5f7f52..04db8cfcca5 100644 --- a/settings/l10n/tr.php +++ b/settings/l10n/tr.php @@ -1,6 +1,7 @@ "App Store'dan liste yüklenemiyor", "Authentication error" => "Eşleşme hata", +"Unable to change display name" => "Ekran adı değiştirilemiyor", "Group already exists" => "Grup zaten mevcut", "Unable to add group" => "Gruba eklenemiyor", "Could not enable app. " => "Uygulama devreye alınamadı", @@ -10,19 +11,34 @@ "Unable to delete user" => "Kullanıcı silinemiyor", "Language changed" => "Dil değiştirildi", "Invalid request" => "Geçersiz istek", +"Admins can't remove themself from the admin group" => "Yöneticiler kendilerini yönetici grubundan kaldıramaz", "Unable to add user to group %s" => "Kullanıcı %s grubuna eklenemiyor", +"Unable to remove user from group %s" => "%s grubundan kullanıcı kaldırılamıyor", +"Couldn't update app." => "Uygulama güncellenemedi.", +"Update to {appversion}" => "{appversion} Güncelle", "Disable" => "Etkin değil", "Enable" => "Etkin", +"Please wait...." => "Lütfen bekleyin....", +"Updating...." => "Güncelleniyor....", +"Error while updating app" => "Uygulama güncellenirken hata", "Error" => "Hata", +"Updated" => "Güncellendi", "Saving..." => "Kaydediliyor...", "deleted" => "silindi", "undo" => "geri al", +"Unable to remove user" => "Kullanıcı kaldırılamıyor", "Groups" => "Gruplar", "Group Admin" => "Yönetici Grubu ", "Delete" => "Sil", +"add group" => "grup ekle", +"A valid username must be provided" => "Geçerli bir kullanıcı adı mutlaka sağlanmalı", +"Error creating user" => "Kullanıcı oluşturulurken hata", +"A valid password must be provided" => "Geçerli bir parola mutlaka sağlanmalı", "__language_name__" => "__dil_adı__", "Security Warning" => "Güvenlik Uyarisi", "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." => "data dizininiz ve dosyalarınız büyük ihtimalle internet üzerinden erişilebilir. Owncloud tarafından sağlanan .htaccess dosyası çalışmıyor. Web sunucunuzu yapılandırarak data dizinine erişimi kapatmanızı veya data dizinini web sunucu döküman dizini dışına almanızı şiddetle tavsiye ederiz.", +"Setup Warning" => "Kurulum Uyarısı", +"Module 'fileinfo' missing" => "Modül 'fileinfo' kayıp", "More" => "Daha fazla", "Version" => "Sürüm", "Developed by the ownCloud community, the source code is licensed under the AGPL." => "Geliştirilen TarafownCloud community, the source code is altında lisanslanmıştır AGPL.", @@ -30,6 +46,7 @@ "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 ", +"-licensed by " => "-lisanslayan ", "Update" => "Güncelleme", "User Documentation" => "Kullanıcı Belgelendirmesi", "Administrator Documentation" => "Yönetici Belgelendirmesi", @@ -38,18 +55,31 @@ "Bugtracker" => "Hata Takip Sistemi", "Commercial Support" => "Ticari Destek", "Get the apps to sync your files" => "Dosyalarınızı senkronize etmek için uygulamayı indirin", +"Show First Run Wizard again" => "İlk Çalıştırma Sihirbazını yeniden göster", "Password" => "Parola", "Your password was changed" => "Şifreniz değiştirildi", "Unable to change your password" => "Parolanız değiştirilemiyor", "Current password" => "Mevcut parola", "New password" => "Yeni parola", "Change password" => "Parola değiştir", +"Display Name" => "Ekran Adı", +"Your display name was changed" => "Ekran adınız değiştirildi", +"Unable to change your display name" => "Ekran adınız değiştirilemiyor", +"Change display name" => "Ekran adını değiştir", "Email" => "Eposta", "Your email address" => "Eposta adresiniz", "Fill in an email address to enable password recovery" => "Parola sıfırlamayı aktifleştirmek için eposta adresi girin", "Language" => "Dil", "Help translate" => "Çevirilere yardım edin", "WebDAV" => "WebDAV", +"Use this address to connect to your ownCloud in your file manager" => "Bu adresi kullanarak ownCloud 'unuza dosya yöneticinizde bağlanın", +"Login Name" => "Giriş Adı", "Create" => "Oluştur", -"Other" => "Diğer" +"Default Storage" => "Varsayılan Depolama", +"Unlimited" => "Limitsiz", +"Other" => "Diğer", +"Storage" => "Depolama", +"change display name" => "ekran adını değiştir", +"set new password" => "yeni parola belirle", +"Default" => "Varsayılan" ); From 94e5de8fd08c832b713a8162609857b36ed995f7 Mon Sep 17 00:00:00 2001 From: maelzx Date: Wed, 20 Feb 2013 11:14:24 +0800 Subject: [PATCH 19/26] Update apps/files_versions/js/versions.js Fix "All version..." button not clickable. Reason is Google Chrome blocking inline javascript execution. --- apps/files_versions/js/versions.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/apps/files_versions/js/versions.js b/apps/files_versions/js/versions.js index b9c54689813..dec222eefce 100644 --- a/apps/files_versions/js/versions.js +++ b/apps/files_versions/js/versions.js @@ -41,6 +41,10 @@ $(document).ready(function(){ } }); +function goToVersionPage(url){ + window.location(url); +} + function createVersionsDropdown(filename, files) { var historyUrl = OC.linkTo('files_versions', 'history.php') + '?path='+encodeURIComponent( $( '#dir' ).val() ).replace( /%2F/g, '/' )+'/'+encodeURIComponent( filename ); @@ -51,7 +55,7 @@ function createVersionsDropdown(filename, files) { html += ''; html += ''; html += ''; - html += ''; + html += ''; html += ''; if (filename) { @@ -60,6 +64,10 @@ function createVersionsDropdown(filename, files) { } else { $(html).appendTo($('thead .share')); } + + $("#makelink").click(function() { + goToVersionPage(historyUrl); + }); $.ajax({ type: 'GET', From 0efa4182dce6eb7179bea42646d7260bf5c97ea5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn=20Friedrich=20Dreyer?= Date: Wed, 20 Feb 2013 10:42:54 +0100 Subject: [PATCH 20/26] Update office icons --- core/img/filetypes/application-msexcel.png | Bin 566 -> 663 bytes core/img/filetypes/application-mspowerpoint.png | Bin 519 -> 588 bytes core/img/filetypes/application-msword.png | Bin 789 -> 651 bytes core/img/filetypes/ms-excel.png | Bin 566 -> 663 bytes core/img/filetypes/ms-powerpoint.png | Bin 519 -> 588 bytes 5 files changed, 0 insertions(+), 0 deletions(-) diff --git a/core/img/filetypes/application-msexcel.png b/core/img/filetypes/application-msexcel.png index abcd93689a08ec9bdbf0984927e8da06c043c7cd..b977d7e52e2446ea01201c5c7209ac3a05f12c9f 100644 GIT binary patch delta 586 zcmV-Q0=50N1eXPnSbqX3NklocDYX+w13v#(9+(pm2Y`rBgB%HhpcqAwHGjs)zZ?XCjE;`p19k(R zh%^AQQ54xysU+ocx$c#f61Z4HnT#3u~FR(3>BnZni zMIF4DouI8HiGLE0r61qOq|?OXaf-zv&N+-Rq*5sW^wy3hj(uOG^bs)oLvem;DeqBPUOyv)#?i1TLZHCN9Kvwz0{ z!ivH7eYDnSt%=2A>wqw@%zT~Z`SdfMzRS^BJ z!=Cg$-p{_`)8~(bp23S8QPm(KD5Y@DHU8z<8`%xd*nMfQgkjj=`WeH(aO(OYtZ954 zXQkn>)qqC0o}%!w}4`Ea$4)7Uae39IBRVMaGM#n)~*6p{Z{8)wK{v7Okjch YFP;~xM=H}_J^%m!07*qoM6N<$f_ye1d;kCd delta 488 zcmVNB_XI7v8TT#7Ow1h@d0(p>E&7-?^Da3<+o?9Yr;hHU^L<$w4{Ujg*A z6d~mYV4na=hT4Nz+_}SGTgW|Iir!%$;@OGkWI6+j0H}~K4RYR%!7y|zM`O@*K>rL{ z*&}x3lR**HrGL3dS>LXps$d!#`oaNnj-xjmOk?1;&##}sm`GeCN0T diff --git a/core/img/filetypes/application-mspowerpoint.png b/core/img/filetypes/application-mspowerpoint.png index b4aaad9a45c9abbee2d47611a6963101b64a8023..c4eff0387d5888c638ba09473ba6d2369f7b56f0 100644 GIT binary patch delta 509 zcmVc0NZemuCP!{KnLBw#02DSHvpDe1=-fW?3Ng5AEt$=eUHr|W3$NRou{cuWWZ z5uw>^0$|k%0DtL+XPmfskJ|1YAw9w!9`N)1^Aesr;y5Nr5-ODn)oOL|CGi}f9!&iV zwpK$khld0mrhJP0SsGJ2%QK?#~b*9`#}2tLg_ZGie66CL#xbVLc0R9ACGy zg;F4R?|%VdonY_%5#Y^V>wJE;&UQ@&9vJ)v^(=h-6CamO00000NkvXXu0mjfs-Eoo delta 440 zcmV;p0Z0DK1cwBWS$~;HL_t&-8KuF`i;ZC%#^KNN_Mn)f%tDevel8Uo4J*k?DQ0aJ z^A9LnrL3%3C~WN5$YQc$H%pW$gGLQyL1JpkIcMJYd*7ZXj%HzMG}o1Evk{qM>h`NE zz+T`Ka2#w*LZ)dFO#(?MSlX1maAeQ+6Ubb>cr;;~%eP+M^?!f5`RI)cGQXXsxIg=y z5wo`GiE-Y3S{hPhDtQ-w9NM{sDkc8u-IpO%f6#8G$P~7>QW$vub;x=+B2i=t%b8+& zVx09-h$>T9P85^ZpD~b-VdlnJ&fhynuh&Bol8{71@OWwlE2uJsC8}@zmNUn8GxOpz zRj)V3!2|oKY=2{m*K_k!?t-eJuuQc)2wIz;!;UIKBoeE25mZt~l_`=$H5|6|+aLxl zl_YEf1{>Q%7gX+6s4|5yBQ}3^T_6XQZDbP)D!Ze~6zXIkQ9PYpWTZE?jfD>%Y1@{S zwk5itNez`{Q)G&e7J>b9cP_BngG&!ti|rp2nJV;T@-f=;!?sT%?T|XKumYeSaefwW^{L9a%BKPWN%_+AW3au zXJt}lVPtu6$z?nM00JFJL_t(I%Z-z}Ym`wC#eetleaWK1%?39JF2tk}u~TET5D~Pq z5y4U`Q(1_uU@IbslJqwDUxI~_Mv;KvgDjhk*J`>E223Q5>T$=~mtA71q-jdG+eJhOAyBW^0k9Gk1+rX8)zFx((CG^&tDY>6 zXaS~Fy!WJON|Gdujg5^~VztuuYwG*C7#d7W9 zBvaKCiHb1>0OuUm+Jg=h>mU}wnW==^*H59qga&Rb)N$4z!&@=N{JxnHyopq{wsW38 zJ_`ziENbxN!Q7~zy`2+^{icJz19&NfyN}*|40$#_+nAgc0Tn?NR1^_|HTxs{4KuW6 zfJ-5SRlsmGi1+@A9R^APi7^fUIZAVkaTkc@K%5)HINKvSh`{DAZnb%%j-IN{00000 LNkvXXu0mjfaN;Ef delta 764 zcmVV>IRB3Hx05CZ(F*PqRHSv*;z5oCKC3HntbW?9;ba!ELWdKcKV{&h8 zWn^h#AVz6&Wp{6KYjYq?SRgVmFf@mDtj_=d0%S=;|_vLc8iNLz}aL#b^d)TJM%km?_ZAh2T*bt$StQHP+YFf>|7^dcw`frp?Uu!csZ z=BBH=x$e62oq695vx$%pJ@7Ka%=6MO6_IR0Z)`T?Ii0t>;LTE1q4O<77rbU5T2SRey|Sr-7|3_&C!O{lGfzzsdk` zqU{iC*VmzHxOL+yvGUw3n`&26oR1jKm3Tiq#mKj>bPr_7}{^=BEKDzdQeDp0IB(u@uggIDTLY)`NA56UA0bNaQQZsw3$|XJ5`P?qfEG zw-$h>{lfq>HP+!gM7~P!@j>%qz`bYvv^A$NfOSH3q``?2d5FB?suopykXS0!i^nocDYX+w13v#(9+(pm2Y`rBgB%HhpcqAwHGjs)zZ?XCjE;`p19k(R zh%^AQQ54xysU+ocx$c#f61Z4HnT#3u~FR(3>BnZni zMIF4DouI8HiGLE0r61qOq|?OXaf-zv&N+-Rq*5sW^wy3hj(uOG^bs)oLvem;DeqBPUOyv)#?i1TLZHCN9Kvwz0{ z!ivH7eYDnSt%=2A>wqw@%zT~Z`SdfMzRS^BJ z!=Cg$-p{_`)8~(bp23S8QPm(KD5Y@DHU8z<8`%xd*nMfQgkjj=`WeH(aO(OYtZ954 zXQkn>)qqC0o}%!w}4`Ea$4)7Uae39IBRVMaGM#n)~*6p{Z{8)wK{v7Okjch YFP;~xM=H}_J^%m!07*qoM6N<$f_ye1d;kCd delta 488 zcmVNB_XI7v8TT#7Ow1h@d0(p>E&7-?^Da3<+o?9Yr;hHU^L<$w4{Ujg*A z6d~mYV4na=hT4Nz+_}SGTgW|Iir!%$;@OGkWI6+j0H}~K4RYR%!7y|zM`O@*K>rL{ z*&}x3lR**HrGL3dS>LXps$d!#`oaNnj-xjmOk?1;&##}sm`GeCN0T diff --git a/core/img/filetypes/ms-powerpoint.png b/core/img/filetypes/ms-powerpoint.png index b4aaad9a45c9abbee2d47611a6963101b64a8023..c4eff0387d5888c638ba09473ba6d2369f7b56f0 100644 GIT binary patch delta 509 zcmVc0NZemuCP!{KnLBw#02DSHvpDe1=-fW?3Ng5AEt$=eUHr|W3$NRou{cuWWZ z5uw>^0$|k%0DtL+XPmfskJ|1YAw9w!9`N)1^Aesr;y5Nr5-ODn)oOL|CGi}f9!&iV zwpK$khld0mrhJP0SsGJ2%QK?#~b*9`#}2tLg_ZGie66CL#xbVLc0R9ACGy zg;F4R?|%VdonY_%5#Y^V>wJE;&UQ@&9vJ)v^(=h-6CamO00000NkvXXu0mjfs-Eoo delta 440 zcmV;p0Z0DK1cwBWS$~;HL_t&-8KuF`i;ZC%#^KNN_Mn)f%tDevel8Uo4J*k?DQ0aJ z^A9LnrL3%3C~WN5$YQc$H%pW$gGLQyL1JpkIcMJYd*7ZXj%HzMG}o1Evk{qM>h`NE zz+T`Ka2#w*LZ)dFO#(?MSlX1maAeQ+6Ubb>cr;;~%eP+M^?!f5`RI)cGQXXsxIg=y z5wo`GiE-Y3S{hPhDtQ-w9NM{sDkc8u-IpO%f6#8G$P~7>QW$vub;x=+B2i=t%b8+& zVx09-h$>T9P85^ZpD~b-VdlnJ&fhynuh&Bol8{71@OWwlE2uJsC8}@zmNUn8GxOpz zRj)V3!2|oKY=2{m*K_k!?t-eJuuQc)2wIz;!;UIKBoeE25mZt~l_`=$H5|6|+aLxl zl_YEf1{>Q%7gX+6s4|5yBQ}3^T_6XQZDbP)D!Ze~6zXIkQ9PYpWTZE?jfD>%Y1@{S zwk5itNez`{Q)G&e7J>b9cP_BngG&!ti|rp2nJV;T@-f=;!?sT%?T|XKumY Date: Wed, 20 Feb 2013 15:17:32 +0100 Subject: [PATCH 21/26] use "|" as delimiter instead of ";", since "|" is not allowed in file/folder names --- apps/files_trashbin/ajax/delete.php | 6 +----- apps/files_trashbin/ajax/undelete.php | 2 +- apps/files_trashbin/js/trash.js | 4 ++-- 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/apps/files_trashbin/ajax/delete.php b/apps/files_trashbin/ajax/delete.php index 915ad9379f6..80382147eb7 100644 --- a/apps/files_trashbin/ajax/delete.php +++ b/apps/files_trashbin/ajax/delete.php @@ -5,11 +5,7 @@ OCP\JSON::callCheck(); $files = $_POST['files']; $dirlisting = $_POST['dirlisting']; -$list = explode(';', $files); - -if (!is_array($list)){ - $list = array($list); -} +$list = explode('|', $files); $error = array(); $success = array(); diff --git a/apps/files_trashbin/ajax/undelete.php b/apps/files_trashbin/ajax/undelete.php index 57f62816749..b76adb2a2a7 100644 --- a/apps/files_trashbin/ajax/undelete.php +++ b/apps/files_trashbin/ajax/undelete.php @@ -5,7 +5,7 @@ OCP\JSON::callCheck(); $files = $_POST['files']; $dirlisting = $_POST['dirlisting']; -$list = explode(';', $files); +$list = explode('|', $files); $error = array(); $success = array(); diff --git a/apps/files_trashbin/js/trash.js b/apps/files_trashbin/js/trash.js index fc38889dc37..c8b862837a6 100644 --- a/apps/files_trashbin/js/trash.js +++ b/apps/files_trashbin/js/trash.js @@ -93,7 +93,7 @@ $(document).ready(function() { $('.undelete').click('click',function(event) { var spinner = ''; var files=getSelectedFiles('file'); - var fileslist=files.join(';'); + var fileslist=files.join('|'); var dirlisting=getSelectedFiles('dirlisting')[0]; for (var i in files) { @@ -118,7 +118,7 @@ $(document).ready(function() { console.log("delete selected"); var spinner = ''; var files=getSelectedFiles('file'); - var fileslist=files.join(';'); + var fileslist=files.join('|'); var dirlisting=getSelectedFiles('dirlisting')[0]; for (var i in files) { From 273e1a146b27e197a7450589594edcb9131e3b5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Schie=C3=9Fle?= Date: Wed, 20 Feb 2013 16:33:45 +0100 Subject: [PATCH 22/26] switch to json encoded file list --- apps/files_trashbin/ajax/delete.php | 2 +- apps/files_trashbin/ajax/undelete.php | 2 +- apps/files_trashbin/js/trash.js | 10 ++++++---- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/apps/files_trashbin/ajax/delete.php b/apps/files_trashbin/ajax/delete.php index 80382147eb7..34f35c39ccb 100644 --- a/apps/files_trashbin/ajax/delete.php +++ b/apps/files_trashbin/ajax/delete.php @@ -5,7 +5,7 @@ OCP\JSON::callCheck(); $files = $_POST['files']; $dirlisting = $_POST['dirlisting']; -$list = explode('|', $files); +$list = json_decode($files); $error = array(); $success = array(); diff --git a/apps/files_trashbin/ajax/undelete.php b/apps/files_trashbin/ajax/undelete.php index b76adb2a2a7..93f2aaf1fa2 100644 --- a/apps/files_trashbin/ajax/undelete.php +++ b/apps/files_trashbin/ajax/undelete.php @@ -5,7 +5,7 @@ OCP\JSON::callCheck(); $files = $_POST['files']; $dirlisting = $_POST['dirlisting']; -$list = explode('|', $files); +$list = json_decode($files); $error = array(); $success = array(); diff --git a/apps/files_trashbin/js/trash.js b/apps/files_trashbin/js/trash.js index c8b862837a6..3841a098147 100644 --- a/apps/files_trashbin/js/trash.js +++ b/apps/files_trashbin/js/trash.js @@ -6,9 +6,10 @@ $(document).ready(function() { var tr=$('tr').filterAttr('data-file', filename); var spinner = ''; var undeleteAction = $('tr').filterAttr('data-file',filename).children("td.date"); + var files = tr.attr('data-file'); 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') }, + {files:JSON.stringify([files]), 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); @@ -31,10 +32,11 @@ $(document).ready(function() { var deleteAction = $('tr').filterAttr('data-file',filename).children("td.date").children(".action.delete"); var oldHTML = deleteAction[0].outerHTML; var newHTML = ''; + var files = tr.attr('data-file'); deleteAction[0].outerHTML = newHTML; $.post(OC.filePath('files_trashbin','ajax','delete.php'), - {files:tr.attr('data-file'), dirlisting:tr.attr('data-dirlisting') }, + {files:JSON.stringify([files]), 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); @@ -93,7 +95,7 @@ $(document).ready(function() { $('.undelete').click('click',function(event) { var spinner = ''; var files=getSelectedFiles('file'); - var fileslist=files.join('|'); + var fileslist = JSON.stringify(files); var dirlisting=getSelectedFiles('dirlisting')[0]; for (var i in files) { @@ -118,7 +120,7 @@ $(document).ready(function() { console.log("delete selected"); var spinner = ''; var files=getSelectedFiles('file'); - var fileslist=files.join('|'); + var fileslist = JSON.stringify(files); var dirlisting=getSelectedFiles('dirlisting')[0]; for (var i in files) { From 59fd9b2bd2a23e008a0be3180a423276d7a00f35 Mon Sep 17 00:00:00 2001 From: Frank Karlitschek Date: Wed, 20 Feb 2013 19:09:58 +0100 Subject: [PATCH 23/26] 5.0.0 beta 1 --- lib/util.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/util.php b/lib/util.php index b2a4fce65a2..636f3127f49 100755 --- a/lib/util.php +++ b/lib/util.php @@ -75,7 +75,7 @@ class OC_Util { 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, 92, 10); + return array(4, 93, 10); } /** @@ -83,7 +83,7 @@ class OC_Util { * @return string */ public static function getVersionString() { - return '5.0 alpha 1'; + return '5.0 beta 1'; } /** From 4f4e81d3d273d31686b177e2533991c7f078fee4 Mon Sep 17 00:00:00 2001 From: Brice Maron Date: Wed, 20 Feb 2013 21:14:55 +0100 Subject: [PATCH 24/26] Add message when trouble sending email ref #1799 --- core/lostpassword/controller.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/lostpassword/controller.php b/core/lostpassword/controller.php index 3ef8eaf71aa..fbcf4a87f22 100644 --- a/core/lostpassword/controller.php +++ b/core/lostpassword/controller.php @@ -44,7 +44,11 @@ class OC_Core_LostPassword_Controller { $msg = $tmpl->fetchPage(); $l = OC_L10N::get('core'); $from = OCP\Util::getDefaultEmailAddress('lostpassword-noreply'); - OC_Mail::send($email, $_POST['user'], $l->t('ownCloud password reset'), $msg, $from, 'ownCloud'); + try { + OC_Mail::send($email, $_POST['user'], $l->t('ownCloud password reset'), $msg, $from, 'ownCloud'); + } catch (Exception $e) { + OC_Template::printErrorPage( 'A problem occurs during sending the e-mail please contact your administrator.'); + } self::displayLostPasswordPage(false, true); } else { self::displayLostPasswordPage(true, false); From 3b9d9eea09bc7ccaad1445882f60ec2478bc34d0 Mon Sep 17 00:00:00 2001 From: Bernhard Posselt Date: Wed, 20 Feb 2013 21:57:50 +0100 Subject: [PATCH 25/26] replaced for in loops with normal enumerating loops to fix #1803 --- apps/files/js/filelist.js | 4 ++-- apps/files_trashbin/js/trash.js | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js index cc107656da8..0bf1f79ab77 100644 --- a/apps/files/js/filelist.js +++ b/apps/files/js/filelist.js @@ -315,8 +315,8 @@ var FileList={ do_delete:function(files){ if(files.substr){ files=[files]; - } - for (var i in files) { + } + for (var i=0; i'; diff --git a/apps/files_trashbin/js/trash.js b/apps/files_trashbin/js/trash.js index 6c810e4c2bd..23e5fb2fc93 100644 --- a/apps/files_trashbin/js/trash.js +++ b/apps/files_trashbin/js/trash.js @@ -88,7 +88,7 @@ $(document).ready(function() { } } processSelection(); - }); + }); $('.undelete').click('click',function(event) { var spinner = ''; @@ -96,7 +96,7 @@ $(document).ready(function() { var fileslist=files.join(';'); var dirlisting=getSelectedFiles('dirlisting')[0]; - for (var i in files) { + for (var i=0; i Date: Wed, 20 Feb 2013 22:32:44 +0100 Subject: [PATCH 26/26] change for loop to make it hopefully work with IE --- apps/files_trashbin/js/trash.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/files_trashbin/js/trash.js b/apps/files_trashbin/js/trash.js index 3841a098147..94fb4358d37 100644 --- a/apps/files_trashbin/js/trash.js +++ b/apps/files_trashbin/js/trash.js @@ -123,7 +123,7 @@ $(document).ready(function() { var fileslist = JSON.stringify(files); var dirlisting=getSelectedFiles('dirlisting')[0]; - for (var i in files) { + for (var i=0; i