diff --git a/.gitignore b/.gitignore
index ae636931706f08267bb177a07215387d55f4e2ed..4749dea19dc782532161ee51266e5a02e9b19602 100644
--- a/.gitignore
+++ b/.gitignore
@@ -19,10 +19,12 @@ _darcs/*
 CVS/*
 .svn/*
 RCS/*
+*.backup*
 
 # kdevelop
 .kdev
 *.kdev4
+*.kate-swp
 
 # Lokalize
 *lokalize*
diff --git a/.tx/config b/.tx/config
deleted file mode 100644
index b51860f8b2faeb1255febbc152ac3f0876b908b3..0000000000000000000000000000000000000000
--- a/.tx/config
+++ /dev/null
@@ -1,182 +0,0 @@
-[main]
-host = https://www.transifex.net
-
-[owncloud.core]
-file_filter = l10n/<lang>/core.po
-host = http://www.transifex.net
-source_file = l10n/templates/core.pot
-source_lang = en
-trans.bg_BG = l10n/bg_BG/core.po
-trans.ca = l10n/ca/core.po
-trans.cs_CZ = l10n/cs_CZ/core.po
-trans.da = l10n/da/core.po
-trans.de = l10n/de/core.po
-trans.el = l10n/el/core.po
-trans.es = l10n/es/core.po
-trans.et_EE = l10n/et_EE/core.po
-trans.fr = l10n/fr/core.po
-trans.id = l10n/id/core.po
-trans.it = l10n/it/core.po
-trans.lb = l10n/lb/core.po
-trans.ms_MY = l10n/ms_MY/core.po
-trans.nb_NO = l10n/nb_NO/core.po
-trans.nl = l10n/nl/core.po
-trans.pl = l10n/pl/core.po
-trans.pt_BR = l10n/pt_BR/core.po
-trans.pt_PT = l10n/pt_PT/core.po
-trans.ro = l10n/ro/core.po
-trans.ru = l10n/ru/core.po
-trans.sr = l10n/sr/core.po
-trans.sr@latin = l10n/sr@latin/core.po
-trans.sv = l10n/sv/core.po
-trans.zh_CN = l10n/zh_CN/core.po
-
-[owncloud.settings]
-file_filter = l10n/<lang>/settings.po
-host = http://www.transifex.net
-source_file = l10n/templates/settings.pot
-source_lang = en
-trans.bg_BG = l10n/bg_BG/settings.po
-trans.ca = l10n/ca/settings.po
-trans.cs_CZ = l10n/cs_CZ/settings.po
-trans.da = l10n/da/settings.po
-trans.de = l10n/de/settings.po
-trans.el = l10n/el/settings.po
-trans.es = l10n/es/settings.po
-trans.et_EE = l10n/et_EE/settings.po
-trans.fr = l10n/fr/settings.po
-trans.id = l10n/id/settings.po
-trans.it = l10n/it/settings.po
-trans.lb = l10n/lb/settings.po
-trans.ms_MY = l10n/ms_MY/settings.po
-trans.nb_NO = l10n/nb_NO/settings.po
-trans.nl = l10n/nl/settings.po
-trans.pl = l10n/pl/settings.po
-trans.pt_BR = l10n/pt_BR/settings.po
-trans.pt_PT = l10n/pt_PT/settings.po
-trans.ro = l10n/ro/settings.po
-trans.ru = l10n/ru/settings.po
-trans.sr = l10n/sr/settings.po
-trans.sr@latin = l10n/sr@latin/settings.po
-trans.sv = l10n/sv/settings.po
-trans.zh_CN = l10n/zh_CN/settings.po
-
-[owncloud.files]
-file_filter = translations/owncloud.files/<lang>.po
-host = http://www.transifex.net
-source_file = l10n/templates/files.pot
-source_lang = en
-trans.bg_BG = l10n/bg_BG/files.po
-trans.ca = l10n/ca/files.po
-trans.cs_CZ = l10n/cs_CZ/files.po
-trans.da = l10n/da/files.po
-trans.de = l10n/de/files.po
-trans.el = l10n/el/files.po
-trans.es = l10n/es/files.po
-trans.et_EE = l10n/et_EE/files.po
-trans.fr = l10n/fr/files.po
-trans.id = l10n/id/files.po
-trans.it = l10n/it/files.po
-trans.lb = l10n/lb/files.po
-trans.ms_MY = l10n/ms_MY/files.po
-trans.nb_NO = l10n/nb_NO/files.po
-trans.nl = l10n/nl/files.po
-trans.pl = l10n/pl/files.po
-trans.pt_BR = l10n/pt_BR/files.po
-trans.pt_PT = l10n/pt_PT/files.po
-trans.ro = l10n/ro/files.po
-trans.ru = l10n/ru/files.po
-trans.sr = l10n/sr/files.po
-trans.sr@latin = l10n/sr@latin/files.po
-trans.sv = l10n/sv/files.po
-trans.zh_CN = l10n/zh_CN/files.po
-
-[owncloud.media]
-file_filter = translations/owncloud.media/<lang>.po
-host = http://www.transifex.net
-source_file = l10n/templates/media.pot
-source_lang = en
-trans.bg_BG = l10n/bg_BG/media.po
-trans.ca = l10n/ca/media.po
-trans.cs_CZ = l10n/cs_CZ/media.po
-trans.da = l10n/da/media.po
-trans.de = l10n/de/media.po
-trans.el = l10n/el/media.po
-trans.es = l10n/es/media.po
-trans.et_EE = l10n/et_EE/media.po
-trans.fr = l10n/fr/media.po
-trans.id = l10n/id/media.po
-trans.it = l10n/it/media.po
-trans.lb = l10n/lb/media.po
-trans.ms_MY = l10n/ms_MY/media.po
-trans.nb_NO = l10n/nb_NO/media.po
-trans.nl = l10n/nl/media.po
-trans.pl = l10n/pl/media.po
-trans.pt_BR = l10n/pt_BR/media.po
-trans.pt_PT = l10n/pt_PT/media.po
-trans.ro = l10n/ro/media.po
-trans.ru = l10n/ru/media.po
-trans.sr = l10n/sr/media.po
-trans.sr@latin = l10n/sr@latin/media.po
-trans.sv = l10n/sv/media.po
-trans.zh_CN = l10n/zh_CN/media.po
-
-[owncloud.calendar]
-file_filter = l10n/<lang>/calendar.po
-host = http://www.transifex.net
-source_file = l10n/templates/calendar.pot
-source_lang = en
-trans.bg_BG = l10n/bg_BG/calendar.po
-trans.ca = l10n/ca/calendar.po
-trans.cs_CZ = l10n/cs_CZ/calendar.po
-trans.da = l10n/da/calendar.po
-trans.de = l10n/de/calendar.po
-trans.el = l10n/el/calendar.po
-trans.es = l10n/es/calendar.po
-trans.et_EE = l10n/et_EE/calendar.po
-trans.fr = l10n/fr/calendar.po
-trans.id = l10n/id/calendar.po
-trans.it = l10n/it/calendar.po
-trans.lb = l10n/lb/calendar.po
-trans.ms_MY = l10n/ms_MY/calendar.po
-trans.nb_NO = l10n/nb_NO/calendar.po
-trans.nl = l10n/nl/calendar.po
-trans.pl = l10n/pl/calendar.po
-trans.pt_BR = l10n/pt_BR/calendar.po
-trans.pt_PT = l10n/pt_PT/calendar.po
-trans.ro = l10n/ro/calendar.po
-trans.ru = l10n/ru/calendar.po
-trans.sr = l10n/sr/calendar.po
-trans.sr@latin = l10n/sr@latin/calendar.po
-trans.sv = l10n/sv/calendar.po
-trans.zh_CN = l10n/zh_CN/calendar.po
-
-[owncloud.contacts]
-file_filter = translations/owncloud.contacts/<lang>.po
-host = http://www.transifex.net
-source_file = l10n/templates/contacts.pot
-source_lang = en
-trans.bg_BG = l10n/bg_BG/contacts.po
-trans.ca = l10n/ca/contacts.po
-trans.cs_CZ = l10n/cs_CZ/contacts.po
-trans.da = l10n/da/contacts.po
-trans.de = l10n/de/contacts.po
-trans.el = l10n/el/contacts.po
-trans.es = l10n/es/contacts.po
-trans.et_EE = l10n/et_EE/contacts.po
-trans.fr = l10n/fr/contacts.po
-trans.id = l10n/id/contacts.po
-trans.it = l10n/it/contacts.po
-trans.lb = l10n/lb/contacts.po
-trans.ms_MY = l10n/ms_MY/contacts.po
-trans.nb_NO = l10n/nb_NO/contacts.po
-trans.nl = l10n/nl/contacts.po
-trans.pl = l10n/pl/contacts.po
-trans.pt_BR = l10n/pt_BR/contacts.po
-trans.pt_PT = l10n/pt_PT/contacts.po
-trans.ro = l10n/ro/contacts.po
-trans.ru = l10n/ru/contacts.po
-trans.sr = l10n/sr/contacts.po
-trans.sr@latin = l10n/sr@latin/contacts.po
-trans.sv = l10n/sv/contacts.po
-trans.zh_CN = l10n/zh_CN/contacts.po
diff --git a/AUTHORS b/AUTHORS
index f618df9311dca3572a97b07f87a7622de59b1de0..f79733c2502ae5df2ce011b82ad7ed84fb5f694d 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -19,3 +19,6 @@ With help from many libraries and frameworks including:
 	SabreDAV
 	jQuery
 	…
+
+"Lock” symbol from thenounproject.com collection
+"Clock” symbol by Brandon Hopkins, from thenounproject.com collection
\ No newline at end of file
diff --git a/apps/files/admin.php b/apps/files/admin.php
index d05eb7267b7d5e8ee2431fc0619060296eeaff76..a8f2deffc927a0d8fb70c658f57046fa80179e4c 100644
--- a/apps/files/admin.php
+++ b/apps/files/admin.php
@@ -23,7 +23,7 @@
 
 
 // Init owncloud
- 
+
 
 OCP\User::checkAdminUser();
 
@@ -33,7 +33,7 @@ $upload_max_filesize = OCP\Util::computerFileSize(ini_get('upload_max_filesize')
 $post_max_size = OCP\Util::computerFileSize(ini_get('post_max_size'));
 $maxUploadFilesize = OCP\Util::humanFileSize(min($upload_max_filesize, $post_max_size));
 if($_POST) {
-	if(isset($_POST['maxUploadSize'])){
+	if(isset($_POST['maxUploadSize'])) {
 		if(($setMaxSize = OC_Files::setUploadLimit(OCP\Util::computerFileSize($_POST['maxUploadSize']))) !== false) {
 			$maxUploadFilesize = OCP\Util::humanFileSize($setMaxSize);
 		}
diff --git a/apps/files/ajax/autocomplete.php b/apps/files/ajax/autocomplete.php
index e504bb24bf8b8ef6f06413fc7a00c7e9914169e6..fae38368a85fc0705871090e49442fc9c8bc0e73 100644
--- a/apps/files/ajax/autocomplete.php
+++ b/apps/files/ajax/autocomplete.php
@@ -11,20 +11,20 @@ OCP\JSON::checkLoggedIn();
 $query = $_GET['term'];
 $dirOnly=(isset($_GET['dironly']))?($_GET['dironly']=='true'):false;
 
-if($query[0]!='/'){
+if($query[0]!='/') {
 	$query='/'.$query;
 }
 
-if(substr($query,-1,1)=='/'){
+if(substr($query, -1, 1)=='/') {
 	$base=$query;
-}else{
+} else {
 	$base=dirname($query);
 }
 
-$query=substr($query,strlen($base));
+$query=substr($query, strlen($base));
 
-if($base!='/'){
-	$query=substr($query,1);
+if($base!='/') {
+	$query=substr($query, 1);
 }
 $queryLen=strlen($query);
 $query=strtolower($query);
@@ -33,17 +33,17 @@ $query=strtolower($query);
 
 $files=array();
 
-if(OC_Filesystem::file_exists($base) and OC_Filesystem::is_dir($base)){
+if(OC_Filesystem::file_exists($base) and OC_Filesystem::is_dir($base)) {
 	$dh = OC_Filesystem::opendir($base);
-	if($dh){
-		if(substr($base,-1,1)!='/'){
+	if($dh) {
+		if(substr($base, -1, 1)!='/') {
 			$base=$base.'/';
 		}
 		while (($file = readdir($dh)) !== false) {
-			if ($file != "." && $file != ".."){
-				if(substr(strtolower($file),0,$queryLen)==$query){
+			if ($file != "." && $file != "..") {
+				if(substr(strtolower($file), 0, $queryLen)==$query) {
 					$item=$base.$file;
-					if((!$dirOnly or OC_Filesystem::is_dir($item))){
+					if((!$dirOnly or OC_Filesystem::is_dir($item))) {
 						$files[]=(object)array('id'=>$item,'label'=>$item,'name'=>$item);
 					}
 				}
diff --git a/apps/files/ajax/delete.php b/apps/files/ajax/delete.php
index 695f803884eccee8d5bd5942702e92aa933c1541..e9bcea18932aaebfe1cb70d5ddb07e2bad92d288 100644
--- a/apps/files/ajax/delete.php
+++ b/apps/files/ajax/delete.php
@@ -15,7 +15,7 @@ $filesWithError = '';
 $success = true;
 //Now delete
 foreach($files as $file) {
-    if( !OC_Files::delete( $dir, $file )){
+    if( !OC_Files::delete( $dir, $file )) {
 		$filesWithError .= $file . "\n";
 		$success = false;
 	}
diff --git a/apps/files/ajax/list.php b/apps/files/ajax/list.php
index dae0c1a828dd8bacec93180133e46d19c866f6f7..568fe754c0239139c90afa7046ee83180abccad5 100644
--- a/apps/files/ajax/list.php
+++ b/apps/files/ajax/list.php
@@ -14,25 +14,25 @@ $doBreadcrumb = isset( $_GET['breadcrumb'] ) ? true : false;
 $data = array();
 
 // Make breadcrumb
-if($doBreadcrumb){
+if($doBreadcrumb) {
 	$breadcrumb = array();
 	$pathtohere = "/";
-	foreach( explode( "/", $dir ) as $i ){
-		if( $i != "" ){
+	foreach( explode( "/", $dir ) as $i ) {
+		if( $i != "" ) {
 			$pathtohere .= "$i/";
 			$breadcrumb[] = array( "dir" => $pathtohere, "name" => $i );
 		}
 	}
-	
+
 	$breadcrumbNav = new OCP\Template( "files", "part.breadcrumb", "" );
 	$breadcrumbNav->assign( "breadcrumb", $breadcrumb );
-	
+
 	$data['breadcrumb'] = $breadcrumbNav->fetchPage();
 }
 
 // make filelist
 $files = array();
-foreach( OC_Files::getdirectorycontent( $dir ) as $i ){
+foreach( OC_Files::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 3d4003a8edc456e211d67b1dcb0dbbe27784c4b2..8b3149ef14e35106294be23c8a8c481266b0d067 100644
--- a/apps/files/ajax/move.php
+++ b/apps/files/ajax/move.php
@@ -12,8 +12,8 @@ $file = stripslashes($_GET["file"]);
 $target = stripslashes($_GET["target"]);
 
 
-if(OC_Files::move($dir,$file,$target,$file)){
+if(OC_Files::move($dir, $file, $target, $file)) {
 	OCP\JSON::success(array("data" => array( "dir" => $dir, "files" => $file )));
-}else{
+} 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 cc9208ad08fcd439a574c5922421917e4cedcd47..4619315ce0913e230fe0773fdd2af7d131dc2252 100644
--- a/apps/files/ajax/newfile.php
+++ b/apps/files/ajax/newfile.php
@@ -3,7 +3,7 @@
 // Init owncloud
 global $eventSource;
 
-if(!OC_User::isLoggedIn()){
+if(!OC_User::isLoggedIn()) {
 	exit;
 }
 
@@ -15,9 +15,9 @@ $filename = isset( $_REQUEST['filename'] ) ? stripslashes($_REQUEST['filename'])
 $content = isset( $_REQUEST['content'] ) ? $_REQUEST['content'] : '';
 $source = isset( $_REQUEST['source'] ) ? stripslashes($_REQUEST['source']) : '';
 
-if($source){
+if($source) {
 	$eventSource=new OC_EventSource();
-}else{
+} else {
 	OC_JSON::callCheck();
 }
 
@@ -25,12 +25,12 @@ if($filename == '') {
 	OCP\JSON::error(array("data" => array( "message" => "Empty Filename" )));
 	exit();
 }
-if(strpos($filename,'/')!==false){
+if(strpos($filename, '/')!==false) {
 	OCP\JSON::error(array("data" => array( "message" => "Invalid Filename" )));
 	exit();
 }
 
-function progress($notification_code, $severity, $message, $message_code, $bytes_transferred, $bytes_max){
+function progress($notification_code, $severity, $message, $message_code, $bytes_transferred, $bytes_max) {
 	static $filesize = 0;
 	static $lastsize = 0;
 	global $eventSource;
@@ -39,14 +39,14 @@ function progress($notification_code, $severity, $message, $message_code, $bytes
 		case STREAM_NOTIFY_FILE_SIZE_IS:
 			$filesize = $bytes_max;
 			break;
-			
+
 		case STREAM_NOTIFY_PROGRESS:
 			if ($bytes_transferred > 0) {
 				if (!isset($filesize)) {
 				} else {
 					$progress = (int)(($bytes_transferred/$filesize)*100);
-					if($progress>$lastsize){//limit the number or messages send
-						$eventSource->send('progress',$progress);
+					if($progress>$lastsize) {//limit the number or messages send
+						$eventSource->send('progress', $progress);
 					}
 					$lastsize=$progress;
 				}
@@ -55,31 +55,31 @@ function progress($notification_code, $severity, $message, $message_code, $bytes
 	}
 }
 
-if($source){
-	if(substr($source,0,8)!='https://' and substr($source,0,7)!='http://'){
+if($source) {
+	if(substr($source, 0, 8)!='https://' and substr($source, 0, 7)!='http://') {
 		OCP\JSON::error(array("data" => array( "message" => "Not a valid source" )));
 		exit();
 	}
 
 	$ctx = stream_context_create(null, array('notification' =>'progress'));
-	$sourceStream=fopen($source,'rb', false, $ctx);
+	$sourceStream=fopen($source, 'rb', false, $ctx);
 	$target=$dir.'/'.$filename;
-	$result=OC_Filesystem::file_put_contents($target,$sourceStream);
-	if($result){
+	$result=OC_Filesystem::file_put_contents($target, $sourceStream);
+	if($result) {
 		$mime=OC_Filesystem::getMimetype($target);
-		$eventSource->send('success',$mime);
-	}else{
-		$eventSource->send('error',"Error while downloading ".$source. ' to '.$target);
+		$eventSource->send('success', $mime);
+	} else {
+		$eventSource->send('error', "Error while downloading ".$source. ' to '.$target);
 	}
 	$eventSource->close();
 	exit();
-}else{
-	if($content){
-		if(OC_Filesystem::file_put_contents($dir.'/'.$filename,$content)){
+} else {
+	if($content) {
+		if(OC_Filesystem::file_put_contents($dir.'/'.$filename, $content)) {
 			OCP\JSON::success(array("data" => array('content'=>$content)));
 			exit();
 		}
-	}elseif(OC_Files::newFile($dir, $filename, 'file')){
+	}elseif(OC_Files::newFile($dir, $filename, 'file')) {
 		OCP\JSON::success(array("data" => array('content'=>$content)));
 		exit();
 	}
diff --git a/apps/files/ajax/newfolder.php b/apps/files/ajax/newfolder.php
index ae92bcf09bb8f5f018a496593f361834ecc5a05b..34c2d0ca145a9d57cd855fc53087d2ce9bfd6e7b 100644
--- a/apps/files/ajax/newfolder.php
+++ b/apps/files/ajax/newfolder.php
@@ -14,7 +14,7 @@ if(trim($foldername) == '') {
 	OCP\JSON::error(array("data" => array( "message" => "Empty Foldername" )));
 	exit();
 }
-if(strpos($foldername,'/')!==false){
+if(strpos($foldername, '/')!==false) {
 	OCP\JSON::error(array("data" => array( "message" => "Invalid Foldername" )));
 	exit();
 }
diff --git a/apps/files/ajax/rawlist.php b/apps/files/ajax/rawlist.php
index d159f6e152f2bc3eddd12ca9ccb93c688adb2f21..e0aa0bdac52014c444feb2f645dc9124fa795098 100644
--- a/apps/files/ajax/rawlist.php
+++ b/apps/files/ajax/rawlist.php
@@ -5,19 +5,19 @@ $RUNTIME_APPTYPES=array('filesystem');
 
 // Init owncloud
 
-require_once('lib/template.php');
+require_once 'lib/template.php';
 
 OCP\JSON::checkLoggedIn();
 
 // Load the files
 $dir = isset( $_GET['dir'] ) ? $_GET['dir'] : '';
-$mimetype = isset($_GET['mimetype']) ? $_GET['mimetype'] : ''; 
+$mimetype = isset($_GET['mimetype']) ? $_GET['mimetype'] : '';
 
 // make filelist
 $files = array();
-foreach( OC_Files::getdirectorycontent( $dir, $mimetype ) as $i ){
+foreach( OC_Files::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']);
+	$i['mimetype_icon'] = $i['type'] == 'dir' ? \mimetype_icon('dir'): \mimetype_icon($i['mimetype']);
 	$files[] = $i;
 }
 
diff --git a/apps/files/ajax/scan.php b/apps/files/ajax/scan.php
index eef38858516b7e7bb2d27751ed487b717c6f76a7..d2ec1ab5161c9f51f525c78aedf66216af815a7c 100644
--- a/apps/files/ajax/scan.php
+++ b/apps/files/ajax/scan.php
@@ -6,38 +6,38 @@ $force=isset($_GET['force']) and $_GET['force']=='true';
 $dir=isset($_GET['dir'])?$_GET['dir']:'';
 $checkOnly=isset($_GET['checkonly']) and $_GET['checkonly']=='true';
 
-if(!$checkOnly){
+if(!$checkOnly) {
 	$eventSource=new OC_EventSource();
 }
 
 session_write_close();
 
 //create the file cache if necesary
-if($force or !OC_FileCache::inCache('')){
-	if(!$checkOnly){
+if($force or !OC_FileCache::inCache('')) {
+	if(!$checkOnly) {
 		OCP\DB::beginTransaction();
-		
-		if(OC_Cache::isFast()){
+
+		if(OC_Cache::isFast()) {
 			OC_Cache::clear('fileid/'); //make sure the old fileid's don't mess things up
 		}
-		
+
 		OC_FileCache::scan($dir,$eventSource);
 		OC_FileCache::clean();
 		OCP\DB::commit();
-		$eventSource->send('success',true);
-	}else{
+		$eventSource->send('success', true);
+	} else {
 		OCP\JSON::success(array('data'=>array('done'=>true)));
 		exit;
 	}
-}else{
-	if($checkOnly){
+} else {
+	if($checkOnly) {
 		OCP\JSON::success(array('data'=>array('done'=>false)));
 		exit;
 	}
-	if(isset($eventSource)){
-		$eventSource->send('success',false);
-	}else{
+	if(isset($eventSource)) {
+		$eventSource->send('success', false);
+	} else {
 		exit;
 	}
 }
-$eventSource->close();
\ No newline at end of file
+$eventSource->close();
diff --git a/apps/files/ajax/timezone.php b/apps/files/ajax/timezone.php
index 0be441a36a237d16184a21f3b48ee50e2c5f3297..b71fa3940cb975e24852d2f2d4d61e0639ba1460 100644
--- a/apps/files/ajax/timezone.php
+++ b/apps/files/ajax/timezone.php
@@ -3,4 +3,3 @@
 	// see lib/base.php for an example
 	//session_start();
 	$_SESSION['timezone'] = $_GET['time'];
-        
\ No newline at end of file
diff --git a/apps/files/ajax/upload.php b/apps/files/ajax/upload.php
index 74e6eb560d8df0af438511cc279079262ab1842f..7709becc6a8952c6be7b86920b855c4949a58ee3 100644
--- a/apps/files/ajax/upload.php
+++ b/apps/files/ajax/upload.php
@@ -35,27 +35,27 @@ $dir = $_POST['dir'];
 $error='';
 
 $totalSize=0;
-foreach($files['size'] as $size){
+foreach($files['size'] as $size) {
 	$totalSize+=$size;
 }
-if($totalSize>OC_Filesystem::free_space('/')){
+if($totalSize>OC_Filesystem::free_space('/')) {
 	OCP\JSON::error(array("data" => array( "message" => "Not enough space available" )));
 	exit();
 }
 
 $result=array();
-if(strpos($dir,'..') === false){
+if(strpos($dir, '..') === false) {
 	$fileCount=count($files['name']);
-	for($i=0;$i<$fileCount;$i++){
+	for($i=0;$i<$fileCount;$i++) {
         $target = OCP\Files::buildNotExistingFileName(stripslashes($dir), $files['name'][$i]);
-		if(is_uploaded_file($files['tmp_name'][$i]) and OC_Filesystem::fromTmpFile($files['tmp_name'][$i],$target)){
+		if(is_uploaded_file($files['tmp_name'][$i]) and OC_Filesystem::fromTmpFile($files['tmp_name'][$i], $target)) {
 			$meta=OC_FileCache_Cached::get($target);
 			$result[]=array( "status" => "success", 'mime'=>$meta['mimetype'],'size'=>$meta['size'],'name'=>basename($target));
 		}
 	}
 	OCP\JSON::encodedPrint($result);
 	exit();
-}else{
+} else {
 	$error='invalid dir';
 }
 
diff --git a/apps/files/appinfo/filesync.php b/apps/files/appinfo/filesync.php
index 707ee2435c083db00e102629b8bc9b89dcae01a6..c1fe444cec7ae44531fa12d53f219dbdd55f4a58 100644
--- a/apps/files/appinfo/filesync.php
+++ b/apps/files/appinfo/filesync.php
@@ -23,14 +23,14 @@
 // only need filesystem apps
 $RUNTIME_APPTYPES=array('filesystem','authentication');
 OC_App::loadApps($RUNTIME_APPTYPES);
-if(!OC_User::isLoggedIn()){
-        if(!isset($_SERVER['PHP_AUTH_USER'])){
+if(!OC_User::isLoggedIn()) {
+        if(!isset($_SERVER['PHP_AUTH_USER'])) {
                 header('WWW-Authenticate: Basic realm="ownCloud Server"');
                 header('HTTP/1.0 401 Unauthorized');
                 echo 'Valid credentials must be supplied';
                 exit();
         } else {
-                if(!OC_User::login($_SERVER["PHP_AUTH_USER"], $_SERVER["PHP_AUTH_PW"])){
+                if(!OC_User::login($_SERVER["PHP_AUTH_USER"], $_SERVER["PHP_AUTH_PW"])) {
                         exit();
                 }
         }
diff --git a/apps/files/appinfo/update.php b/apps/files/appinfo/update.php
index b2480a58f5e7130c2e5c4d282d4073066524e271..35008e345b9b9d8505d28af8acd968cc0a0cab05 100644
--- a/apps/files/appinfo/update.php
+++ b/apps/files/appinfo/update.php
@@ -5,7 +5,7 @@ $installedVersion=OCP\Config::getAppValue('files', 'installed_version');
 if (version_compare($installedVersion, '1.1.4', '<')) {
 	$query = OC_DB::prepare( "SELECT `propertyname`, `propertypath`, `userid` FROM `*PREFIX*properties`" );
 	$result = $query->execute();
-	while( $row = $result->fetchRow()){
+	while( $row = $result->fetchRow()) {
 		$query = OC_DB::prepare( 'UPDATE `*PREFIX*properties` SET `propertyname` = ? WHERE `userid` = ? AND `propertypath` = ?' );
 		$query->execute( array( preg_replace("/^{.*}/", "", $row["propertyname"]),$row["userid"], $row["propertypath"] ));
 	}
@@ -41,5 +41,3 @@ foreach($filesToRemove as $file) {
 		break;
     }
 }
-
-
diff --git a/apps/files/css/files.css b/apps/files/css/files.css
index bdd35285e796b977a19a79b304c92b508d43ce07..f35478ecc2167e61d082cca4075e5853ce9afa20 100644
--- a/apps/files/css/files.css
+++ b/apps/files/css/files.css
@@ -47,9 +47,6 @@ tbody a { color:#000; }
 span.extension, span.uploading, td.date { color:#999; }
 span.extension { text-transform:lowercase; -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; }
 tr:hover span.extension { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; color:#777; }
-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; }
 table tr.mouseOver td { background-color:#eee; }
 table th { height:2em; padding:0 .5em; color:#999; }
 table th .name { float:left; margin-left:.5em; }
diff --git a/apps/files/download.php b/apps/files/download.php
index 4e2478d1ad7cb55fbe5dac57ea194048dbad7972..ff6aefbbe0fd029ba8143c0ba67dcd36246555d5 100644
--- a/apps/files/download.php
+++ b/apps/files/download.php
@@ -22,14 +22,14 @@
 */
 
 // Init owncloud
- 
+
 
 // Check if we are a user
 OCP\User::checkLoggedIn();
 
 $filename = $_GET["file"];
 
-if(!OC_Filesystem::file_exists($filename)){
+if(!OC_Filesystem::file_exists($filename)) {
 	header("HTTP/1.0 404 Not Found");
 	$tmpl = new OCP\Template( '', '404', 'guest' );
 	$tmpl->assign('file',$filename);
diff --git a/apps/files/index.php b/apps/files/index.php
index 6d53527025ad22fa24a3a0e34db5fedeb53f4319..493087d26f1155eaaab65869d2c94f7ff1520867 100644
--- a/apps/files/index.php
+++ b/apps/files/index.php
@@ -31,7 +31,7 @@ OCP\Util::addscript( 'files', 'jquery.fileupload' );
 OCP\Util::addscript( 'files', 'files' );
 OCP\Util::addscript( 'files', 'filelist' );
 OCP\Util::addscript( 'files', 'fileactions' );
-if(!isset($_SESSION['timezone'])){
+if(!isset($_SESSION['timezone'])) {
 	OCP\Util::addscript( 'files', 'timezone' );
 }
 OCP\App::setActiveNavigationEntry( 'files_index' );
@@ -44,9 +44,9 @@ if(!OC_Filesystem::is_dir($dir.'/')) {
 }
 
 $files = array();
-foreach( OC_Files::getdirectorycontent( $dir ) as $i ){
+foreach( OC_Files::getdirectorycontent( $dir ) as $i ) {
 	$i['date'] = OCP\Util::formatDate($i['mtime'] );
-	if($i['type']=='file'){
+	if($i['type']=='file') {
 		$fileinfo=pathinfo($i['name']);
 		$i['basename']=$fileinfo['filename'];
 		if (!empty($fileinfo['extension'])) {
@@ -56,7 +56,7 @@ foreach( OC_Files::getdirectorycontent( $dir ) as $i ){
 			$i['extension']='';
 		}
 	}
-	if($i['directory']=='/'){
+	if($i['directory']=='/') {
 		$i['directory']='';
 	}
 	$files[] = $i;
@@ -65,8 +65,8 @@ foreach( OC_Files::getdirectorycontent( $dir ) as $i ){
 // Make breadcrumb
 $breadcrumb = array();
 $pathtohere = '';
-foreach( explode( '/', $dir ) as $i ){
-	if( $i != '' ){
+foreach( explode( '/', $dir ) as $i ) {
+	if( $i != '' ) {
 		$pathtohere .= '/'.str_replace('+','%20', urlencode($i));
 		$breadcrumb[] = array( 'dir' => $pathtohere, 'name' => $i );
 	}
@@ -89,11 +89,23 @@ $freeSpace=OC_Filesystem::free_space('/');
 $freeSpace=max($freeSpace,0);
 $maxUploadFilesize = min($maxUploadFilesize ,$freeSpace);
 
+$permissions = OCP\Share::PERMISSION_READ;
+if (OC_Filesystem::isUpdatable($dir.'/')) {
+	$permissions |= OCP\Share::PERMISSION_UPDATE;
+}
+if (OC_Filesystem::isDeletable($dir.'/')) {
+	$permissions |= OCP\Share::PERMISSION_DELETE;
+}
+if (OC_Filesystem::isSharable($dir.'/')) {
+	$permissions |= OCP\Share::PERMISSION_SHARE;
+}
+
 $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));
diff --git a/apps/files/js/fileactions.js b/apps/files/js/fileactions.js
index 89e7bdd7ad744987ce5e9e2840a9b6ff53df2969..1403d345e8a41f381bd61cc5d2e70f5e47182a8e 100644
--- a/apps/files/js/fileactions.js
+++ b/apps/files/js/fileactions.js
@@ -1,9 +1,4 @@
-FileActions={
-	PERMISSION_CREATE:4,
-	PERMISSION_READ:1,
-	PERMISSION_UPDATE:2,
-	PERMISSION_DELETE:8,
-	PERMISSION_SHARE:16,
+var FileActions={
 	actions:{},
 	defaults:{},
 	icons:{},
@@ -25,20 +20,20 @@ FileActions={
 	get:function(mime,type,permissions){
 		var actions={};
 		if(FileActions.actions.all){
-			actions=$.extend( actions, FileActions.actions.all )
+			actions=$.extend( actions, FileActions.actions.all );
 		}
 		if(mime){
 			if(FileActions.actions[mime]){
-				actions=$.extend( actions, FileActions.actions[mime] )
+				actions=$.extend( actions, FileActions.actions[mime] );
 			}
 			var mimePart=mime.substr(0,mime.indexOf('/'));
 			if(FileActions.actions[mimePart]){
-				actions=$.extend( actions, FileActions.actions[mimePart] )
+				actions=$.extend( actions, FileActions.actions[mimePart] );
 			}
 		}
 		if(type){//type is 'dir' or 'file'
 			if(FileActions.actions[type]){
-				actions=$.extend( actions, FileActions.actions[type] )
+				actions=$.extend( actions, FileActions.actions[type] );
 			}
 		}
 		var filteredActions = {};
@@ -108,7 +103,12 @@ FileActions={
 			if(img.call){
 				img=img(file);
 			}
-			var html='<a href="#" original-title="' + t('files', 'Delete') + '" class="action delete" style="display:none" />';
+			// NOTE: Temporary fix to allow unsharing of files in root of Shared folder
+			if ($('#dir').val() == '/Shared') {
+				var html = '<a href="#" original-title="' + t('files', 'Unshare') + '" class="action delete" style="display:none" />';
+			} else {
+				var html='<a href="#" original-title="' + t('files', 'Delete') + '" class="action delete" style="display:none" />';
+			}
 			var element=$(html);
 			if(img){
 				element.append($('<img src="'+img+'"/>'));
@@ -148,7 +148,7 @@ FileActions={
 	getCurrentPermissions:function() {
 		return FileActions.currentFile.parent().data('permissions');
 	}
-}
+};
 
 $(document).ready(function(){
 	if($('#allowZipDownload').val() == 1){
@@ -156,12 +156,12 @@ $(document).ready(function(){
 	} else {
 		var downloadScope = 'file';
 	}
-	FileActions.register(downloadScope,'Download', FileActions.PERMISSION_READ, function(){return OC.imagePath('core','actions/download')},function(filename){
+	FileActions.register(downloadScope,'Download', OC.PERMISSION_READ, function(){return OC.imagePath('core','actions/download');},function(filename){
 		window.location=OC.filePath('files', 'ajax', 'download.php') + encodeURIComponent('?files='+encodeURIComponent(filename)+'&dir='+encodeURIComponent($('#dir').val()));
 	});
 });
 
-FileActions.register('all','Delete', FileActions.PERMISSION_DELETE, function(){return OC.imagePath('core','actions/delete')},function(filename){
+FileActions.register('all','Delete', OC.PERMISSION_DELETE, function(){return OC.imagePath('core','actions/delete');},function(filename){
 	if(Files.cancelUpload(filename)) {
 		if(filename.substr){
 			filename=[filename];
@@ -179,11 +179,11 @@ FileActions.register('all','Delete', FileActions.PERMISSION_DELETE, function(){r
 	$('.tipsy').remove();
 });
 
-FileActions.register('all','Rename', FileActions.PERMISSION_UPDATE, function(){return OC.imagePath('core','actions/rename')},function(filename){
+FileActions.register('all','Rename', OC.PERMISSION_UPDATE, function(){return OC.imagePath('core','actions/rename');},function(filename){
 	FileList.rename(filename);
 });
 
-FileActions.register('dir','Open', FileActions.PERMISSION_READ, '', function(filename){
+FileActions.register('dir','Open', OC.PERMISSION_READ, '', function(filename){
 	window.location=OC.linkTo('files', 'index.php') + '&dir='+encodeURIComponent($('#dir').val()).replace(/%2F/g, '/')+'/'+encodeURIComponent(filename);
 });
 
diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index e0cf516411a933713513cdd9bc3f5d6e6148d755..7ebfd4b68bbe5ea83ce183beee0e2ffeac6b9522 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -1,11 +1,11 @@
-FileList={
+var FileList={
 	useUndo:true,
 	update:function(fileListHtml) {
 		$('#fileList').empty().html(fileListHtml);
 	},
-	addFile:function(name,size,lastModified,loading){
+	addFile:function(name,size,lastModified,loading,hidden){
 		var img=(loading)?OC.imagePath('core', 'loading.gif'):OC.imagePath('core', 'filetypes/file.png');
-		var html='<tr data-type="file" data-size="'+size+'">';
+		var html='<tr data-type="file" data-size="'+size+'" data-permissions="'+$('#permissions').val()+'">';
 		if(name.indexOf('.')!=-1){
 			var basename=name.substr(0,name.lastIndexOf('.'));
 			var extension=name.substr(name.lastIndexOf('.'));
@@ -14,7 +14,7 @@ FileList={
 			var extension=false;
 		}
 		html+='<td class="filename" style="background-image:url('+img+')"><input type="checkbox" />';
-		html+='<a class="name" href="download.php?file='+$('#dir').val().replace(/</, '&lt;').replace(/>/, '&gt;')+'/'+name+'"><span class="nametext">'+basename
+		html+='<a class="name" href="download.php?file='+$('#dir').val().replace(/</, '&lt;').replace(/>/, '&gt;')+'/'+name+'"><span class="nametext">'+basename;
 		if(extension){
 			html+='<span class="extension">'+extension+'</span>';
 		}
@@ -36,9 +36,12 @@ FileList={
 		}else{
 			$('tr').filterAttr('data-file',name).find('td.filename').draggable(dragOptions);
 		}
+		if (hidden) {
+			$('tr').filterAttr('data-file', name).hide();
+		}
 	},
-	addDir:function(name,size,lastModified){
-		html = $('<tr></tr>').attr({ "data-type": "dir", "data-size": size, "data-file": name});
+	addDir:function(name,size,lastModified,hidden){
+		html = $('<tr></tr>').attr({ "data-type": "dir", "data-size": size, "data-file": name, "data-permissions": $('#permissions').val()});
 		td = $('<td></td>').attr({"class": "filename", "style": 'background-image:url('+OC.imagePath('core', 'filetypes/folder.png')+')' });
 		td.append('<input type="checkbox" />');
 		var link_elem = $('<a></a>').attr({ "class": "name", "href": OC.linkTo('files', 'index.php')+"&dir="+ encodeURIComponent($('#dir').val()+'/'+name).replace(/%2F/g, '/') });
@@ -63,6 +66,9 @@ FileList={
 		FileList.insertElement(name,'dir',html);
 		$('tr').filterAttr('data-file',name).find('td.filename').draggable(dragOptions);
 		$('tr').filterAttr('data-file',name).find('td.filename').droppable(folderDropOptions);
+		if (hidden) {
+			$('tr').filterAttr('data-file', name).hide();
+		}
 	},
 	refresh:function(data) {
 		result = jQuery.parseJSON(data.responseText);
@@ -82,7 +88,7 @@ FileList={
 	},
 	insertElement:function(name,type,element){
 		//find the correct spot to insert the file or folder
-		var fileElements=$('tr[data-file][data-type="'+type+'"]');
+		var fileElements=$('tr[data-file][data-type="'+type+'"]:visible');
 		var pos;
 		if(name.localeCompare($(fileElements[0]).attr('data-file'))<0){
 			pos=-1;
@@ -137,11 +143,7 @@ FileList={
 			event.preventDefault();
 			var newname=input.val();
 			if (newname != name) {
-				if ($('tr').filterAttr('data-file', newname).length > 0) {
-					$('#notification').html(newname+' '+t('files', 'already exists')+'<span class="replace">'+t('files', 'replace')+'</span><span class="cancel">'+t('files', 'cancel')+'</span>');
-					$('#notification').data('oldName', name);
-					$('#notification').data('newName', newname);
-					$('#notification').fadeIn();
+				if (FileList.checkName(name, newname, false)) {
 					newname = name;
 				} else {
 					$.get(OC.filePath('files','ajax','rename.php'), { dir : $('#dir').val(), newname: newname, file: name },function(result) {
@@ -151,7 +153,6 @@ FileList={
 						}
 					});
 				}
-
 			}
 			tr.attr('data-file', newname);
 			var path = td.children('a.name').attr('href');
@@ -179,58 +180,77 @@ FileList={
 			form.trigger('submit');
 		});
 	},
-	replace:function(oldName, newName) {
+	checkName:function(oldName, newName, isNewFile) {
+		if (isNewFile || $('tr').filterAttr('data-file', newName).length > 0) {
+			if (isNewFile) {
+				$('#notification').html(newName+' '+t('files', 'already exists')+'<span class="replace">'+t('files', 'replace')+'</span><span class="suggest">'+t('files', 'suggest name')+'</span><span class="cancel">'+t('files', 'cancel')+'</span>');
+			} else {
+				$('#notification').html(newName+' '+t('files', 'already exists')+'<span class="replace">'+t('files', 'replace')+'</span><span class="cancel">'+t('files', 'cancel')+'</span>');
+			}
+			$('#notification').data('oldName', oldName);
+			$('#notification').data('newName', newName);
+			$('#notification').data('isNewFile', isNewFile);
+			$('#notification').fadeIn();
+			return true;
+		} else {
+			return false;
+		}
+	},
+	replace:function(oldName, newName, isNewFile) {
 		// Finish any existing actions
 		if (FileList.lastAction || !FileList.useUndo) {
 			FileList.lastAction();
 		}
-		var tr = $('tr').filterAttr('data-file', oldName);
-		tr.hide();
+		$('tr').filterAttr('data-file', oldName).hide();
+		$('tr').filterAttr('data-file', newName).hide();
+		var tr = $('tr').filterAttr('data-file', oldName).clone();
+		tr.attr('data-replace', 'true');
+		tr.attr('data-file', newName);
+		var td = tr.children('td.filename');
+		td.children('a.name .span').text(newName);
+		var path = td.children('a.name').attr('href');
+		td.children('a.name').attr('href', path.replace(encodeURIComponent(oldName), encodeURIComponent(newName)));
+		if (newName.indexOf('.') > 0) {
+			var basename = newName.substr(0, newName.lastIndexOf('.'));
+		} else {
+			var basename = newName;
+		}
+		td.children('a.name').empty();
+		var span = $('<span class="nametext"></span>');
+		span.text(basename);
+		td.children('a.name').append(span);
+		if (newName.indexOf('.') > 0) {
+			span.append($('<span class="extension">'+newName.substr(newName.lastIndexOf('.'))+'</span>'));
+		}
+		FileList.insertElement(newName, tr.data('type'), tr);
+		tr.show();
 		FileList.replaceCanceled = false;
 		FileList.replaceOldName = oldName;
 		FileList.replaceNewName = newName;
+		FileList.replaceIsNewFile = isNewFile;
 		FileList.lastAction = function() {
 			FileList.finishReplace();
 		};
-		$('#notification').html(t('files', 'replaced')+' '+newName+' '+t('files', 'with')+' '+oldName+'<span class="undo">'+t('files', 'undo')+'</span>');
+		if (isNewFile) {
+			$('#notification').html(t('files', 'replaced')+' '+newName+'<span class="undo">'+t('files', 'undo')+'</span>');
+		} else {
+			$('#notification').html(t('files', 'replaced')+' '+newName+' '+t('files', 'with')+' '+oldName+'<span class="undo">'+t('files', 'undo')+'</span>');
+		}
 		$('#notification').fadeIn();
 	},
 	finishReplace:function() {
 		if (!FileList.replaceCanceled && FileList.replaceOldName && FileList.replaceNewName) {
-			// Delete the file being replaced and rename the replacement
-			FileList.deleteCanceled = false;
-			FileList.deleteFiles = [FileList.replaceNewName];
-			FileList.finishDelete(function() {
-				$.ajax({url: OC.filePath('files', 'ajax', 'rename.php'), async: false, data: { dir: $('#dir').val(), newname: FileList.replaceNewName, file: FileList.replaceOldName }, success: function(result) {
-					if (result && result.status == 'success') {
-						var tr = $('tr').filterAttr('data-file', FileList.replaceOldName);
-						tr.attr('data-file', FileList.replaceNewName);
-						var td = tr.children('td.filename');
-						td.children('a.name .span').text(FileList.replaceNewName);
-						var path = td.children('a.name').attr('href');
-						td.children('a.name').attr('href', path.replace(encodeURIComponent(FileList.replaceOldName), encodeURIComponent(FileList.replaceNewName)));
-						if (FileList.replaceNewName.indexOf('.') > 0) {
-							var basename = FileList.replaceNewName.substr(0, FileList.replaceNewName.lastIndexOf('.'));
-						} else {
-							var basename = FileList.replaceNewName;
-						}
-						td.children('a.name').empty();
-						var span = $('<span class="nametext"></span>');
-						span.text(basename);
-						td.children('a.name').append(span);
-						if (FileList.replaceNewName.indexOf('.') > 0) {
-							span.append($('<span class="extension">'+FileList.replaceNewName.substr(FileList.replaceNewName.lastIndexOf('.'))+'</span>'));
-						}
-						tr.show();
-					} else {
-						OC.dialogs.alert(result.data.message, 'Error moving file');
-					}
-					FileList.replaceCanceled = true;
-					FileList.replaceOldName = null;
-					FileList.replaceNewName = null;
-					FileList.lastAction = null;
-				}});
-			}, true);
+			$.ajax({url: OC.filePath('files', 'ajax', 'rename.php'), async: false, data: { dir: $('#dir').val(), newname: FileList.replaceNewName, file: FileList.replaceOldName }, success: function(result) {
+				if (result && result.status == 'success') {
+					$('tr').filterAttr('data-replace', 'true').removeAttr('data-replace');
+				} else {
+					OC.dialogs.alert(result.data.message, 'Error moving file');
+				}
+				FileList.replaceCanceled = true;
+				FileList.replaceOldName = null;
+				FileList.replaceNewName = null;
+				FileList.lastAction = null;
+			}});
 		}
 	},
 	do_delete:function(files){
@@ -243,7 +263,12 @@ FileList={
 			return;
 		}
 		FileList.prepareDeletion(files);
-		$('#notification').html(t('files', 'deleted')+' '+files+'<span class="undo">'+t('files', 'undo')+'</span>');
+		// NOTE: Temporary fix to change the text to unshared for files in root of Shared folder
+		if ($('#dir').val() == '/Shared') {
+			$('#notification').html(t('files', 'unshared')+' '+files+'<span class="undo">'+t('files', 'undo')+'</span>');
+		} else {
+			$('#notification').html(t('files', 'deleted')+' '+files+'<span class="undo">'+t('files', 'undo')+'</span>');
+		}
 		$('#notification').fadeIn();
 	},
 	finishDelete:function(ready,sync){
@@ -255,7 +280,7 @@ FileList={
 				data: {dir:$('#dir').val(),files:fileNames},
 				complete: function(data){
 					boolOperationFinished(data, function(){
-						$('#notification').fadeOut();
+						$('#notification').fadeOut('400');
 						$.each(FileList.deleteFiles,function(index,file){
 							FileList.remove(file);
 						});
@@ -299,21 +324,39 @@ $(document).ready(function(){
 			FileList.deleteCanceled=true;
 			FileList.deleteFiles=null;
 		} else if (FileList.replaceOldName && FileList.replaceNewName) {
-			$('tr').filterAttr('data-file', FileList.replaceOldName).show();
+			if (FileList.replaceIsNewFile) {
+				// Delete the new uploaded file
+				FileList.deleteCanceled = false;
+				FileList.deleteFiles = [FileList.replaceOldName];
+				FileList.finishDelete(null, true);
+			} else {
+				$('tr').filterAttr('data-file', FileList.replaceOldName).show();
+			}
+			$('tr').filterAttr('data-replace', 'true').remove();
+			$('tr').filterAttr('data-file', FileList.replaceNewName).show();
 			FileList.replaceCanceled = true;
 			FileList.replaceOldName = null;
 			FileList.replaceNewName = null;
+			FileList.replaceIsNewFile = null;
 		}
 		FileList.lastAction = null;
-		$('#notification').fadeOut();
+		$('#notification').fadeOut('400');
 	});
 	$('#notification .replace').live('click', function() {
 		$('#notification').fadeOut('400', function() {
-			FileList.replace($('#notification').data('oldName'), $('#notification').data('newName'));
+			FileList.replace($('#notification').data('oldName'), $('#notification').data('newName'), $('#notification').data('isNewFile'));
 		});
 	});
+	$('#notification .suggest').live('click', function() {
+		$('tr').filterAttr('data-file', $('#notification').data('oldName')).show();
+		$('#notification').fadeOut('400');
+	});
 	$('#notification .cancel').live('click', function() {
-		$('#notification').fadeOut();
+		if ($('#notification').data('isNewFile')) {
+			FileList.deleteCanceled = false;
+			FileList.deleteFiles = [$('#notification').data('oldName')];
+			FileList.finishDelete(null, true);
+		}
 	});
 	FileList.useUndo=('onbeforeunload' in window)
 	$(window).bind('beforeunload', function (){
diff --git a/apps/files/js/files.js b/apps/files/js/files.js
index 049afea4f6194634dec8629e7b4d113aabbd15ee..101e2bad2e4c3d898ad5e96b613527854e453883 100644
--- a/apps/files/js/files.js
+++ b/apps/files/js/files.js
@@ -26,7 +26,7 @@ Files={
 		});
 		procesSelection();
 	}
-}
+};
 $(document).ready(function() {
 	$('#fileList tr').each(function(){
 		//little hack to set unescape filenames in attribute
@@ -40,8 +40,16 @@ $(document).ready(function() {
 	$('#file_action_panel').attr('activeAction', false);
 
 	//drag/drop of files
-	$('#fileList tr[data-write="true"] td.filename').draggable(dragOptions);
-	$('#fileList tr[data-type="dir"][data-write="true"] td.filename').droppable(folderDropOptions);
+	$('#fileList tr td.filename').each(function(i,e){
+		if ($(e).parent().data('permissions') & OC.PERMISSION_DELETE) {
+			$(e).draggable(dragOptions);
+		}
+	});
+	$('#fileList tr[data-type="dir"] td.filename').each(function(i,e){
+		if ($(e).parent().data('permissions') & OC.PERMISSION_CREATE){
+			$(e).droppable(folderDropOptions);
+		}
+	});
 	$('div.crumb:not(.last)').droppable(crumbDropOptions);
 	$('ul#apps>li:first-child').data('dir','');
 	if($('div.crumb').length){
@@ -228,7 +236,14 @@ $(document).ready(function() {
 								var size=t('files','Pending');
 							}
 							if(files && !dirName){
-								FileList.addFile(getUniqueName(files[i].name),size,date,true);
+								var uniqueName = getUniqueName(files[i].name);
+								if (uniqueName != files[i].name) {
+									FileList.checkName(uniqueName, files[i].name, true);
+									var hidden = true;
+								} else {
+									var hidden = false;
+								}
+								FileList.addFile(uniqueName,size,date,true,hidden);
 							} else if(dirName) {
 								var uploadtext = $('tr').filterAttr('data-type', 'dir').filterAttr('data-file', dirName).find('.uploadtext')
 								var currentUploads = parseInt(uploadtext.attr('currentUploads'));
@@ -247,7 +262,14 @@ $(document).ready(function() {
 						}
 					}else{
 						var filename=this.value.split('\\').pop(); //ie prepends C:\fakepath\ in front of the filename
-						FileList.addFile(getUniqueName(filename),'Pending',date,true);
+						var uniqueName = getUniqueName(filename);
+						if (uniqueName != filename) {
+							FileList.checkName(uniqueName, filename, true);
+							var hidden = true;
+						} else {
+							var hidden = false;
+						}
+						FileList.addFile(uniqueName,'Pending',date,true,hidden);
 					}
 					if($.support.xhrFileUpload) {
 						for(var i=0;i<files.length;i++){
@@ -379,13 +401,28 @@ $(document).ready(function() {
 			stop: function(e, data) {
 				if(data.dataType != 'iframe ') {
 					$('#upload input.stop').hide();
-				}	
+				}
 				$('#uploadprogressbar').progressbar('value',100);
 				$('#uploadprogressbar').fadeOut();
 			}
 		})
 	});
 
+	$.assocArraySize = function(obj) {
+		// http://stackoverflow.com/a/6700/11236
+		var size = 0, key;
+		for (key in obj) {
+		    if (obj.hasOwnProperty(key)) size++;
+		}
+		return size;
+	};
+
+	// warn user not to leave the page while upload is in progress
+	$(window).bind('beforeunload', function(e) {
+		if ($.assocArraySize(uploadingFiles) > 0)
+			return t('files','File upload is in progress. Leaving the page now will cancel the upload.');
+	});
+
 	//add multiply file upload attribute to all browsers except konqueror (which crashes when it's used)
 	if(navigator.userAgent.search(/konqueror/i)==-1){
 		$('.file_upload_start').attr('multiple','multiple')
@@ -452,21 +489,27 @@ $(document).ready(function() {
 		$(this).append(input);
 		input.focus();
 		input.change(function(){
-			var name=getUniqueName($(this).val());
-			if(type != 'web' && name.indexOf('/')!=-1){
+			if(type != 'web' && $(this).val().indexOf('/')!=-1){
 				$('#notification').text(t('files','Invalid name, \'/\' is not allowed.'));
 				$('#notification').fadeIn();
 				return;
 			}
+			var name = getUniqueName($(this).val());
+			if (name != $(this).val()) {
+				FileList.checkName(name, $(this).val(), true);
+				var hidden = true;
+			} else {
+				var hidden = false;
+			}
 			switch(type){
 				case 'file':
 					$.post(
 						OC.filePath('files','ajax','newfile.php'),
-						{dir:$('#dir').val(),filename:name,content:" \n"},
+						{dir:$('#dir').val(),filename:name},
 						function(result){
 							if (result.status == 'success') {
 								var date=new Date();
-								FileList.addFile(name,0,date);
+								FileList.addFile(name,0,date,false,hidden);
 								var tr=$('tr').filterAttr('data-file',name);
 								tr.data('mime','text/plain');
 								getMimeIcon('text/plain',function(path){
@@ -485,7 +528,7 @@ $(document).ready(function() {
 						function(result){
 							if (result.status == 'success') {
 								var date=new Date();
-								FileList.addDir(name,0,date);
+								FileList.addDir(name,0,date,hidden);
 							} else {
 								OC.dialogs.alert(result.data.message, 'Error');
 							}
@@ -516,7 +559,7 @@ $(document).ready(function() {
 					eventSource.listen('success',function(mime){
 						$('#uploadprogressbar').fadeOut();
 						var date=new Date();
-						FileList.addFile(localName,0,date);
+						FileList.addFile(localName,0,date,false,hidden);
 						var tr=$('tr').filterAttr('data-file',localName);
 						tr.data('mime',mime);
 						getMimeIcon(mime,function(path){
@@ -542,7 +585,7 @@ $(document).ready(function() {
 			scanFiles();
 		}
 	}, "json");
-	
+
 	var lastWidth = 0;
 	var breadcrumbs = [];
 	var breadcrumbsWidth = $('#navigation').get(0).offsetWidth;
@@ -603,7 +646,7 @@ $(document).ready(function() {
 	$(window).resize(function() {
 		resizeBreadcrumbs(false);
 	});
-	
+
 	resizeBreadcrumbs(true);
 });
 
diff --git a/apps/files/l10n/ca.php b/apps/files/l10n/ca.php
index 81bbfe03a0c7b113f43dd8594e84fdb64e0d0291..26c6ad4de6fae8bf5b24c7825ba497f5e5de0a99 100644
--- a/apps/files/l10n/ca.php
+++ b/apps/files/l10n/ca.php
@@ -7,19 +7,23 @@
 "Missing a temporary folder" => "S'ha perdut un fitxer temporal",
 "Failed to write to disk" => "Ha fallat en escriure al disc",
 "Files" => "Fitxers",
+"Unshare" => "Deixa de compartir",
 "Delete" => "Suprimeix",
 "already exists" => "ja existeix",
 "replace" => "substitueix",
+"suggest name" => "sugereix un nom",
 "cancel" => "cancel·la",
 "replaced" => "substituït",
-"with" => "per",
 "undo" => "desfés",
+"with" => "per",
+"unshared" => "No compartits",
 "deleted" => "esborrat",
 "generating ZIP-file, it may take some time." => "s'estan generant fitxers ZIP, pot trigar una estona.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "No es pot pujar el fitxer perquè és una carpeta o té 0 bytes",
 "Upload Error" => "Error en la pujada",
 "Pending" => "Pendents",
 "Upload cancelled." => "La pujada s'ha cancel·lat.",
+"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à.",
 "Invalid name, '/' is not allowed." => "El nom no és vàlid, no es permet '/'.",
 "Size" => "Mida",
 "Modified" => "Modificat",
@@ -34,6 +38,7 @@
 "Enable ZIP-download" => "Activa la baixada ZIP",
 "0 is unlimited" => "0 és sense límit",
 "Maximum input size for ZIP files" => "Mida màxima d'entrada per fitxers ZIP",
+"Save" => "Desa",
 "New" => "Nou",
 "Text file" => "Fitxer de text",
 "Folder" => "Carpeta",
diff --git a/apps/files/l10n/cs_CZ.php b/apps/files/l10n/cs_CZ.php
index 4dc4b8b0cb1d576f08fc4052a6ec760c9eb59cba..41ef4e7849951cec02062d65df83d419f6493f47 100644
--- a/apps/files/l10n/cs_CZ.php
+++ b/apps/files/l10n/cs_CZ.php
@@ -1,51 +1,56 @@
 <?php $TRANSLATIONS = array(
 "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" => "Odeslaný soubor přesáhl velikostí parametr upload_max_filesize v php.ini",
-"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Odeslaný soubor přesáhl velikostí parametr MAX_FILE_SIZE specifikovaný v HTML formuláři",
+"The uploaded file exceeds the upload_max_filesize directive in php.ini" => "Odeslaný soubor přesáhl svou velikostí parametr upload_max_filesize v php.ini",
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Odeslaný soubor přesáhl svou velikostí parametr MAX_FILE_SIZE specifikovaný v formuláři HTML",
 "The uploaded file was only partially uploaded" => "Soubor byl odeslán pouze částečně",
-"No file was uploaded" => "Soubor nebyl odeslán",
-"Missing a temporary folder" => "Chybí adresář pro sočasné soubory",
-"Failed to write to disk" => "Zápis na disk se nezdařil",
+"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",
 "Files" => "Soubory",
-"Delete" => "Vymazat",
+"Unshare" => "Zrušit sdílení",
+"Delete" => "Smazat",
 "already exists" => "již existuje",
-"replace" => "zaměnit",
-"cancel" => "storno",
-"replaced" => "zaměněno",
-"with" => "s",
+"replace" => "nahradit",
+"suggest name" => "navrhnout název",
+"cancel" => "zrušit",
+"replaced" => "nahrazeno",
 "undo" => "zpět",
+"with" => "s",
+"unshared" => "sdílení zrušeno",
 "deleted" => "smazáno",
-"generating ZIP-file, it may take some time." => "generuji ZIP soubor, může to chvíli trvat",
-"Unable to upload your file as it is a directory or has 0 bytes" => "Nemohu nahrát váš soubor neboť to je adresář a nebo má nulovou délku.",
-"Upload Error" => "Chyba při nahrávání",
-"Pending" => "Očekává se",
-"Upload cancelled." => "Nahrávání zrušeno",
-"Invalid name, '/' is not allowed." => "Špatné jméno, znak '/' není povolen",
+"generating ZIP-file, it may take some time." => "generuji ZIP soubor, může to nějakou dobu trvat.",
+"Unable to upload your file as it is a directory or has 0 bytes" => "Nelze odeslat Váš soubor, protože je to adresář nebo má velikost 0 bajtů",
+"Upload Error" => "Chyba odesílání",
+"Pending" => "Čekající",
+"Upload cancelled." => "Odesílání zrušeno.",
+"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í.",
+"Invalid name, '/' is not allowed." => "Neplatný název, znak '/' není povolen",
 "Size" => "Velikost",
 "Modified" => "Změněno",
-"folder" => "adresář",
-"folders" => "adresáře",
+"folder" => "složka",
+"folders" => "složky",
 "file" => "soubor",
 "files" => "soubory",
-"File handling" => "Nastavení chování k souborům",
-"Maximum upload size" => "Maximální velikost ukládaných souborů",
-"max. possible: " => "největší možná:",
-"Needed for multi-file and folder downloads." => "Potřeba pro vícesoborvé stahování a stahování adresářů",
+"File handling" => "Zacházení se soubory",
+"Maximum upload size" => "Maximální velikost pro odesílání",
+"max. possible: " => "největší možná: ",
+"Needed for multi-file and folder downloads." => "Potřebné pro více-souborové stahování a stahování složek.",
 "Enable ZIP-download" => "Povolit ZIP-stahování",
 "0 is unlimited" => "0 znamená bez omezení",
 "Maximum input size for ZIP files" => "Maximální velikost vstupu pro ZIP soubory",
+"Save" => "Uložit",
 "New" => "Nový",
 "Text file" => "Textový soubor",
-"Folder" => "Adresář",
+"Folder" => "Složka",
 "From url" => "Z url",
-"Upload" => "Uložit",
-"Cancel upload" => "Zrušit upload",
-"Nothing in here. Upload something!" => "Žádný obsah. Uložte si něco!",
+"Upload" => "Odeslat",
+"Cancel upload" => "Zrušit odesílání",
+"Nothing in here. Upload something!" => "Žádný obsah. Nahrajte něco.",
 "Name" => "Název",
 "Share" => "Sdílet",
 "Download" => "Stáhnout",
-"Upload too large" => "Příliš velký soubor",
-"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Soubory, které se snažíte uložit, překračují maximální velikosti uploadu na tomto serveru.",
+"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í"
 );
diff --git a/apps/files/l10n/da.php b/apps/files/l10n/da.php
index 56af0fa61d7b9e1020b97de006ac1801e32f3a52..020f6142ec65ce910afc4ec7478c26c7c7634dc5 100644
--- a/apps/files/l10n/da.php
+++ b/apps/files/l10n/da.php
@@ -12,14 +12,15 @@
 "replace" => "erstat",
 "cancel" => "fortryd",
 "replaced" => "erstattet",
-"with" => "med",
 "undo" => "fortryd",
+"with" => "med",
 "deleted" => "Slettet",
 "generating ZIP-file, it may take some time." => "genererer ZIP-fil, det kan tage lidt tid.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Kunne ikke uploade din fil, da det enten er en mappe eller er tom",
 "Upload Error" => "Fejl ved upload",
 "Pending" => "Afventer",
 "Upload cancelled." => "Upload afbrudt.",
+"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.",
 "Invalid name, '/' is not allowed." => "Ugyldigt navn, '/' er ikke tilladt.",
 "Size" => "Størrelse",
 "Modified" => "Ændret",
diff --git a/apps/files/l10n/de.php b/apps/files/l10n/de.php
index 5da3a997213032fec32508ad2434da2073637bfc..324fae16f08e0b534f7f6ecf18823565f39c98cf 100644
--- a/apps/files/l10n/de.php
+++ b/apps/files/l10n/de.php
@@ -1,26 +1,30 @@
 <?php $TRANSLATIONS = array(
 "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 Größe der hochzuladenden Datei überschreitet die upload_max_filesize-Richtlinie in php.ini",
-"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Die größe der hochzuladenden Datei überschreitet die MAX_FILE_SIZE-Richtlinie, die im HTML-Formular angegeben wurde",
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Die Größe der hochzuladenden Datei überschreitet die MAX_FILE_SIZE-Richtlinie, die im HTML-Formular angegeben wurde",
 "The uploaded file was only partially uploaded" => "Die Datei wurde nur teilweise hochgeladen.",
 "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",
 "Files" => "Dateien",
+"Unshare" => "Nicht mehr teilen",
 "Delete" => "Löschen",
 "already exists" => "ist bereits vorhanden",
 "replace" => "ersetzen",
+"suggest name" => "Name vorschlagen",
 "cancel" => "abbrechen",
 "replaced" => "ersetzt",
-"with" => "mit",
 "undo" => "rückgängig machen",
+"with" => "mit",
+"unshared" => "Nicht mehr teilen",
 "deleted" => "gelöscht",
 "generating ZIP-file, it may take some time." => "Erstelle ZIP-Datei. Dies kann eine Weile dauern.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Ihre Datei kann nicht hochgeladen werden, da sie ein Verzeichnis ist oder 0 Bytes hat.",
 "Upload Error" => "Fehler beim Hochladen",
 "Pending" => "Ausstehend",
 "Upload cancelled." => "Hochladen abgebrochen.",
-"Invalid name, '/' is not allowed." => "Ungültiger Name, \"/\" ist nicht erlaubt.",
+"File upload is in progress. Leaving the page now will cancel the upload." => "Dateiupload läuft. Wenn Sie die Seite jetzt verlassen, wird der Upload abgebrochen.",
+"Invalid name, '/' is not allowed." => "Ungültiger Name: \"/\" ist nicht erlaubt.",
 "Size" => "Größe",
 "Modified" => "Bearbeitet",
 "folder" => "Ordner",
@@ -30,10 +34,11 @@
 "File handling" => "Dateibehandlung",
 "Maximum upload size" => "Maximale Upload-Größe",
 "max. possible: " => "maximal möglich:",
-"Needed for multi-file and folder downloads." => "Für Mehrfachdateien- und Ordnerdownloads benötigt:",
+"Needed for multi-file and folder downloads." => "Für Mehrfachdatei- und Ordnerdownloads benötigt:",
 "Enable ZIP-download" => "ZIP-Download aktivieren",
 "0 is unlimited" => "0 bedeutet unbegrenzt",
-"Maximum input size for ZIP files" => "Maximale Größe für ZIP Dateien",
+"Maximum input size for ZIP files" => "Maximale Größe für ZIP-Dateien",
+"Save" => "Speichern",
 "New" => "Neu",
 "Text file" => "Textdatei",
 "Folder" => "Ordner",
diff --git a/apps/files/l10n/el.php b/apps/files/l10n/el.php
index 3ab4b120949c1cbed6ba8f0992015c5f21e38a3e..9f311c6b28eab3972a62d3ccd9d07bc45f05aba3 100644
--- a/apps/files/l10n/el.php
+++ b/apps/files/l10n/el.php
@@ -12,8 +12,8 @@
 "replace" => "αντικατέστησε",
 "cancel" => "ακύρωση",
 "replaced" => "αντικαταστάθηκε",
-"with" => "με",
 "undo" => "αναίρεση",
+"with" => "με",
 "deleted" => "διαγράφηκε",
 "generating ZIP-file, it may take some time." => "παραγωγή αρχείου ZIP, ίσως διαρκέσει αρκετά.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Αδυναμία στην μεταφόρτωση του αρχείου σας αφού είναι φάκελος ή έχει 0 bytes",
diff --git a/apps/files/l10n/eo.php b/apps/files/l10n/eo.php
index acaf06e830c5b55f16a5e7a344d55ea36e670719..95df1363ff1833c99a11c1ae477b3ad2e3412704 100644
--- a/apps/files/l10n/eo.php
+++ b/apps/files/l10n/eo.php
@@ -7,19 +7,23 @@
 "Missing a temporary folder" => "Mankas tempa dosierujo",
 "Failed to write to disk" => "Malsukcesis skribo al disko",
 "Files" => "Dosieroj",
+"Unshare" => "Malkunhavigi",
 "Delete" => "Forigi",
 "already exists" => "jam ekzistas",
 "replace" => "anstataŭigi",
+"suggest name" => "sugesti nomon",
 "cancel" => "nuligi",
 "replaced" => "anstataŭigita",
-"with" => "kun",
 "undo" => "malfari",
+"with" => "kun",
+"unshared" => "malkunhavigita",
 "deleted" => "forigita",
 "generating ZIP-file, it may take some time." => "generanta ZIP-dosiero, ĝi povas daŭri iom da tempo",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Ne eblis alŝuti vian dosieron ĉar ĝi estas dosierujo aŭ havas 0 duumokojn",
 "Upload Error" => "Alŝuta eraro",
 "Pending" => "Traktotaj",
 "Upload cancelled." => "La alŝuto nuliĝis.",
+"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.",
 "Invalid name, '/' is not allowed." => "Nevalida nomo, “/” ne estas permesata.",
 "Size" => "Grando",
 "Modified" => "Modifita",
@@ -34,6 +38,7 @@
 "Enable ZIP-download" => "Kapabligi ZIP-elŝuton",
 "0 is unlimited" => "0 signifas senlime",
 "Maximum input size for ZIP files" => "Maksimuma enirgrando por ZIP-dosieroj",
+"Save" => "Konservi",
 "New" => "Nova",
 "Text file" => "Tekstodosiero",
 "Folder" => "Dosierujo",
diff --git a/apps/files/l10n/es.php b/apps/files/l10n/es.php
index 6cd51d60e2731257966bf635205deb89d420ee84..d07149d8595210dc3282c2d0c621e57d655183a2 100644
--- a/apps/files/l10n/es.php
+++ b/apps/files/l10n/es.php
@@ -7,19 +7,23 @@
 "Missing a temporary folder" => "Falta un directorio temporal",
 "Failed to write to disk" => "La escritura en disco ha fallado",
 "Files" => "Archivos",
+"Unshare" => "Dejar de compartir",
 "Delete" => "Eliminado",
 "already exists" => "ya existe",
 "replace" => "reemplazar",
+"suggest name" => "sugerir nombre",
 "cancel" => "cancelar",
 "replaced" => "reemplazado",
-"with" => "con",
 "undo" => "deshacer",
+"with" => "con",
+"unshared" => "no compartido",
 "deleted" => "borrado",
 "generating ZIP-file, it may take some time." => "generando un fichero ZIP, puede llevar un tiempo.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "No ha sido posible subir tu archivo porque es un directorio o tiene 0 bytes",
 "Upload Error" => "Error al subir el archivo",
 "Pending" => "Pendiente",
 "Upload cancelled." => "Subida cancelada.",
+"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.",
 "Invalid name, '/' is not allowed." => "Nombre no válido, '/' no está permitido.",
 "Size" => "Tamaño",
 "Modified" => "Modificado",
@@ -34,6 +38,7 @@
 "Enable ZIP-download" => "Habilitar descarga en ZIP",
 "0 is unlimited" => "0 es ilimitado",
 "Maximum input size for ZIP files" => "Tamaño máximo para archivos ZIP de entrada",
+"Save" => "Guardar",
 "New" => "Nuevo",
 "Text file" => "Archivo de texto",
 "Folder" => "Carpeta",
diff --git a/apps/files/l10n/et_EE.php b/apps/files/l10n/et_EE.php
index 956c5cc911538ab7dc06713c6aab64b7d47bb5bd..88e91719282b72ad25de867500eb266e4b1f1181 100644
--- a/apps/files/l10n/et_EE.php
+++ b/apps/files/l10n/et_EE.php
@@ -7,19 +7,23 @@
 "Missing a temporary folder" => "Ajutiste failide kaust puudub",
 "Failed to write to disk" => "Kettale kirjutamine ebaõnnestus",
 "Files" => "Failid",
+"Unshare" => "Lõpeta jagamine",
 "Delete" => "Kustuta",
 "already exists" => "on juba olemas",
 "replace" => "asenda",
+"suggest name" => "soovita nime",
 "cancel" => "loobu",
 "replaced" => "asendatud",
-"with" => "millega",
 "undo" => "tagasi",
+"with" => "millega",
+"unshared" => "jagamata",
 "deleted" => "kustutatud",
 "generating ZIP-file, it may take some time." => "ZIP-faili loomine, see võib veidi aega võtta.",
 "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",
 "Pending" => "Ootel",
 "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.",
 "Invalid name, '/' is not allowed." => "Vigane nimi, '/' pole lubatud.",
 "Size" => "Suurus",
 "Modified" => "Muudetud",
@@ -34,6 +38,7 @@
 "Enable ZIP-download" => "Luba ZIP-ina allalaadimine",
 "0 is unlimited" => "0 tähendab piiramatut",
 "Maximum input size for ZIP files" => "Maksimaalne ZIP-faili sisestatava faili suurus",
+"Save" => "Salvesta",
 "New" => "Uus",
 "Text file" => "Tekstifail",
 "Folder" => "Kaust",
diff --git a/apps/files/l10n/eu.php b/apps/files/l10n/eu.php
index d9c2689d1cdd43a2701ab0b08a1fe4b128081e4e..d72e73adf0047a1fc1864ea2afda94f1e87f124b 100644
--- a/apps/files/l10n/eu.php
+++ b/apps/files/l10n/eu.php
@@ -7,19 +7,23 @@
 "Missing a temporary folder" => "Aldi baterako karpeta falta da",
 "Failed to write to disk" => "Errore bat izan da diskoan idazterakoan",
 "Files" => "Fitxategiak",
+"Unshare" => "Ez partekatu",
 "Delete" => "Ezabatu",
 "already exists" => "dagoeneko existitzen da",
 "replace" => "ordeztu",
+"suggest name" => "aholkatu izena",
 "cancel" => "ezeztatu",
 "replaced" => "ordeztua",
-"with" => "honekin",
 "undo" => "desegin",
+"with" => "honekin",
+"unshared" => "Ez partekatuta",
 "deleted" => "ezabatuta",
 "generating ZIP-file, it may take some time." => "ZIP-fitxategia sortzen ari da, denbora har dezake",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Ezin da zure fitxategia igo, karpeta bat da edo 0 byt ditu",
 "Upload Error" => "Igotzean errore bat suertatu da",
 "Pending" => "Zain",
 "Upload cancelled." => "Igoera ezeztatuta",
+"File upload is in progress. Leaving the page now will cancel the upload." => "Fitxategien igoera martxan da. Orria orain uzteak igoera ezeztatutko du.",
 "Invalid name, '/' is not allowed." => "Baliogabeko izena, '/' ezin da erabili. ",
 "Size" => "Tamaina",
 "Modified" => "Aldatuta",
@@ -34,6 +38,7 @@
 "Enable ZIP-download" => "Gaitu ZIP-deskarga",
 "0 is unlimited" => "0 mugarik gabe esan nahi du",
 "Maximum input size for ZIP files" => "ZIP fitxategien gehienezko tamaina",
+"Save" => "Gorde",
 "New" => "Berria",
 "Text file" => "Testu fitxategia",
 "Folder" => "Karpeta",
diff --git a/apps/files/l10n/fa.php b/apps/files/l10n/fa.php
index 4dac88fc542283db0c287eb0e4b416517fe53dd1..e6ddd50f91765fe191b7c63b9edea9061a400ddd 100644
--- a/apps/files/l10n/fa.php
+++ b/apps/files/l10n/fa.php
@@ -12,8 +12,8 @@
 "replace" => "جایگزین",
 "cancel" => "لغو",
 "replaced" => "جایگزین‌شده",
-"with" => "همراه",
 "undo" => "بازگشت",
+"with" => "همراه",
 "deleted" => "حذف شده",
 "generating ZIP-file, it may take some time." => "در حال ساخت فایل فشرده ممکن است زمان زیادی به طول بیانجامد",
 "Unable to upload your file as it is a directory or has 0 bytes" => "ناتوان در بارگذاری یا فایل یک پوشه است یا 0بایت دارد",
diff --git a/apps/files/l10n/fi_FI.php b/apps/files/l10n/fi_FI.php
index 902ea859a31a83c88676270de1cf3c63e09f5aa0..757d0594d30e6355b5fd86213f5b98ca0d3422fe 100644
--- a/apps/files/l10n/fi_FI.php
+++ b/apps/files/l10n/fi_FI.php
@@ -10,16 +10,18 @@
 "Delete" => "Poista",
 "already exists" => "on jo olemassa",
 "replace" => "korvaa",
+"suggest name" => "ehdota nimeä",
 "cancel" => "peru",
 "replaced" => "korvattu",
-"with" => "käyttäen",
 "undo" => "kumoa",
+"with" => "käyttäen",
 "deleted" => "poistettu",
 "generating ZIP-file, it may take some time." => "luodaan ZIP-tiedostoa, tämä saattaa kestää hetken.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Tiedoston lähetys epäonnistui, koska sen koko on 0 tavua tai kyseessä on kansio",
 "Upload Error" => "Lähetysvirhe.",
 "Pending" => "Odottaa",
 "Upload cancelled." => "Lähetys peruttu.",
+"File upload is in progress. Leaving the page now will cancel the upload." => "Tiedoston lähetys on meneillään. Sivulta poistuminen nyt peruu tiedoston lähetyksen.",
 "Invalid name, '/' is not allowed." => "Virheellinen nimi, merkki '/' ei ole sallittu.",
 "Size" => "Koko",
 "Modified" => "Muutettu",
@@ -34,6 +36,7 @@
 "Enable ZIP-download" => "Ota ZIP-paketin lataaminen käytöön",
 "0 is unlimited" => "0 on rajoittamaton",
 "Maximum input size for ZIP files" => "ZIP-tiedostojen enimmäiskoko",
+"Save" => "Tallenna",
 "New" => "Uusi",
 "Text file" => "Tekstitiedosto",
 "Folder" => "Kansio",
@@ -46,5 +49,6 @@
 "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."
+"Files are being scanned, please wait." => "Tiedostoja tarkistetaan, odota hetki.",
+"Current scanning" => "Tämänhetkinen tutkinta"
 );
diff --git a/apps/files/l10n/fr.php b/apps/files/l10n/fr.php
index 6eb4341bd6eae3b36b2db7840f961f8a993ca4cc..929a2ffd4a398c1768b5536f86708a57b52cd74e 100644
--- a/apps/files/l10n/fr.php
+++ b/apps/files/l10n/fr.php
@@ -10,16 +10,19 @@
 "Delete" => "Supprimer",
 "already exists" => "existe déjà",
 "replace" => "remplacer",
+"suggest name" => "Suggérer un nom",
 "cancel" => "annuler",
 "replaced" => "remplacé",
-"with" => "avec",
 "undo" => "annuler",
+"with" => "avec",
+"unshared" => "non partagée",
 "deleted" => "supprimé",
-"generating ZIP-file, it may take some time." => "Générer un fichier ZIP, cela peut prendre du temps",
+"generating ZIP-file, it may take some time." => "Fichier ZIP en cours d'assemblage ;  cela peut prendre du temps.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Impossible de charger vos fichiers car il s'agit d'un dossier ou le fichier fait 0 octet.",
 "Upload Error" => "Erreur de chargement",
 "Pending" => "En cours",
-"Upload cancelled." => "Chargement annulé",
+"Upload cancelled." => "Chargement annulé.",
+"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.",
 "Invalid name, '/' is not allowed." => "Nom invalide, '/' n'est pas autorisé.",
 "Size" => "Taille",
 "Modified" => "Modifié",
@@ -34,18 +37,19 @@
 "Enable ZIP-download" => "Activer le téléchargement ZIP",
 "0 is unlimited" => "0 est illimité",
 "Maximum input size for ZIP files" => "Taille maximale pour les fichiers ZIP",
+"Save" => "Sauvegarder",
 "New" => "Nouveau",
 "Text file" => "Fichier texte",
 "Folder" => "Dossier",
 "From url" => "Depuis URL",
 "Upload" => "Envoyer",
-"Cancel upload" => "Annuler envoi",
+"Cancel upload" => "Annuler l'envoi",
 "Nothing in here. Upload something!" => "Il n'y a rien ici ! Envoyez donc quelque chose :)",
 "Name" => "Nom",
 "Share" => "Partager",
 "Download" => "Téléchargement",
 "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 analysés, patientez svp.",
+"Files are being scanned, please wait." => "Les fichiers sont en cours d'analyse, veuillez patienter.",
 "Current scanning" => "Analyse en cours"
 );
diff --git a/apps/files/l10n/gl.php b/apps/files/l10n/gl.php
index 3a36a23f0ca120c71677e72dcdebfd2503c0bca7..67293de5cb754d8898a78e5dda36c370006fd810 100644
--- a/apps/files/l10n/gl.php
+++ b/apps/files/l10n/gl.php
@@ -12,8 +12,8 @@
 "replace" => "substituír",
 "cancel" => "cancelar",
 "replaced" => "substituído",
-"with" => "con",
 "undo" => "desfacer",
+"with" => "con",
 "deleted" => "eliminado",
 "generating ZIP-file, it may take some time." => "xerando ficheiro ZIP, pode levar un anaco.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Non se puido subir o ficheiro pois ou é un directorio ou ten 0 bytes",
diff --git a/apps/files/l10n/hr.php b/apps/files/l10n/hr.php
index cb8eb4033cfb0c3851275a0bb3e66e4f2d5aeabc..b05b7c568b45cc69841c6a836c4b3879aa78660d 100644
--- a/apps/files/l10n/hr.php
+++ b/apps/files/l10n/hr.php
@@ -12,8 +12,8 @@
 "replace" => "zamjeni",
 "cancel" => "odustani",
 "replaced" => "zamjenjeno",
-"with" => "sa",
 "undo" => "vrati",
+"with" => "sa",
 "deleted" => "izbrisano",
 "generating ZIP-file, it may take some time." => "generiranje ZIP datoteke, ovo može potrajati.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Nemoguće poslati datoteku jer je prazna ili je direktorij",
diff --git a/apps/files/l10n/hu_HU.php b/apps/files/l10n/hu_HU.php
index 8d52765e93e8cc8b37c06be90dac43257b9fe045..95b3c57ce11557bff6b3f83bec9bcf60f050a870 100644
--- a/apps/files/l10n/hu_HU.php
+++ b/apps/files/l10n/hu_HU.php
@@ -12,8 +12,8 @@
 "replace" => "cserél",
 "cancel" => "mégse",
 "replaced" => "kicserélve",
-"with" => "-val/-vel",
 "undo" => "visszavon",
+"with" => "-val/-vel",
 "deleted" => "törölve",
 "generating ZIP-file, it may take some time." => "ZIP-fájl generálása, ez eltarthat egy ideig.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Nem tölthető fel, mert mappa volt, vagy 0 byte méretű",
diff --git a/apps/files/l10n/id.php b/apps/files/l10n/id.php
index 47ce6429c9f3dc4fa5458a0924babbc6573fe097..351d06413881e39bb8ccca344096dfe530f0fd38 100644
--- a/apps/files/l10n/id.php
+++ b/apps/files/l10n/id.php
@@ -1,13 +1,32 @@
 <?php $TRANSLATIONS = array(
 "There is no error, the file uploaded with success" => "Tidak ada galat, berkas sukses diunggah",
+"The uploaded file exceeds the upload_max_filesize directive in php.ini" => "File yang diunggah melampaui directive upload_max_filesize di php.ini",
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "File yang diunggah melampaui directive MAX_FILE_SIZE yang disebutan dalam form HTML.",
 "The uploaded file was only partially uploaded" => "Berkas hanya diunggah sebagian",
 "No file was uploaded" => "Tidak ada berkas yang diunggah",
 "Missing a temporary folder" => "Kehilangan folder temporer",
 "Failed to write to disk" => "Gagal menulis ke disk",
 "Files" => "Berkas",
 "Delete" => "Hapus",
+"already exists" => "sudah ada",
+"replace" => "mengganti",
+"cancel" => "batalkan",
+"replaced" => "diganti",
+"undo" => "batal dikerjakan",
+"with" => "dengan",
+"deleted" => "dihapus",
+"generating ZIP-file, it may take some time." => "membuat berkas ZIP, ini mungkin memakan waktu.",
+"Unable to upload your file as it is a directory or has 0 bytes" => "Gagal mengunggah berkas anda karena berupa direktori atau mempunyai ukuran 0 byte",
+"Upload Error" => "Terjadi Galat Pengunggahan",
+"Pending" => "Menunggu",
+"Upload cancelled." => "Pengunggahan dibatalkan.",
+"Invalid name, '/' is not allowed." => "Kesalahan nama, '/' tidak diijinkan.",
 "Size" => "Ukuran",
 "Modified" => "Dimodifikasi",
+"folder" => "folder",
+"folders" => "folder-folder",
+"file" => "berkas",
+"files" => "berkas-berkas",
 "File handling" => "Penanganan berkas",
 "Maximum upload size" => "Ukuran unggah maksimum",
 "max. possible: " => "Kemungkinan maks:",
diff --git a/apps/files/l10n/it.php b/apps/files/l10n/it.php
index 6fda30a8f35cd8808518f7101530fa60d763aeeb..c7046118a3a1892449300f171dc9043cde0293ba 100644
--- a/apps/files/l10n/it.php
+++ b/apps/files/l10n/it.php
@@ -7,19 +7,23 @@
 "Missing a temporary folder" => "Cartella temporanea mancante",
 "Failed to write to disk" => "Scrittura su disco non riuscita",
 "Files" => "File",
+"Unshare" => "Rimuovi condivisione",
 "Delete" => "Elimina",
 "already exists" => "esiste già",
 "replace" => "sostituisci",
+"suggest name" => "suggerisci nome",
 "cancel" => "annulla",
 "replaced" => "sostituito",
-"with" => "con",
 "undo" => "annulla",
+"with" => "con",
+"unshared" => "condivisione rimossa",
 "deleted" => "eliminati",
 "generating ZIP-file, it may take some time." => "creazione file ZIP, potrebbe richiedere del tempo.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Impossibile inviare il file poiché è una cartella o ha dimensione 0 byte",
 "Upload Error" => "Errore di invio",
 "Pending" => "In corso",
 "Upload cancelled." => "Invio annullato",
+"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.",
 "Invalid name, '/' is not allowed." => "Nome non valido",
 "Size" => "Dimensione",
 "Modified" => "Modificato",
@@ -34,6 +38,7 @@
 "Enable ZIP-download" => "Abilita scaricamento ZIP",
 "0 is unlimited" => "0 è illimitato",
 "Maximum input size for ZIP files" => "Dimensione massima per i file ZIP",
+"Save" => "Salva",
 "New" => "Nuovo",
 "Text file" => "File di testo",
 "Folder" => "Cartella",
diff --git a/apps/files/l10n/ja_JP.php b/apps/files/l10n/ja_JP.php
index 8c19e45501289b50fe1ec3cf15bb32f9795d581a..6d278c3f0fb22873fd3f6e53650e13780b1d6263 100644
--- a/apps/files/l10n/ja_JP.php
+++ b/apps/files/l10n/ja_JP.php
@@ -7,19 +7,23 @@
 "Missing a temporary folder" => "テンポラリフォルダが見つかりません",
 "Failed to write to disk" => "ディスクへの書き込みに失敗しました",
 "Files" => "ファイル",
+"Unshare" => "共有しない",
 "Delete" => "削除",
 "already exists" => "既に存在します",
 "replace" => "置き換え",
+"suggest name" => "推奨名称",
 "cancel" => "キャンセル",
 "replaced" => "置換:",
-"with" => "←",
 "undo" => "元に戻す",
+"with" => "←",
+"unshared" => "未共有",
 "deleted" => "削除",
 "generating ZIP-file, it may take some time." => "ZIPファイルを生成中です、しばらくお待ちください。",
 "Unable to upload your file as it is a directory or has 0 bytes" => "アップロード使用としているファイルがディレクトリ、もしくはサイズが0バイトのため、アップロードできません。",
 "Upload Error" => "アップロードエラー",
 "Pending" => "保留",
 "Upload cancelled." => "アップロードはキャンセルされました。",
+"File upload is in progress. Leaving the page now will cancel the upload." => "ファイル転送を実行中です。今このページから移動するとアップロードが中止されます。",
 "Invalid name, '/' is not allowed." => "無効な名前、'/' は使用できません。",
 "Size" => "サイズ",
 "Modified" => "更新日時",
@@ -34,6 +38,7 @@
 "Enable ZIP-download" => "ZIP形式のダウンロードを有効にする",
 "0 is unlimited" => "0を指定した場合は無制限",
 "Maximum input size for ZIP files" => "ZIPファイルへの最大入力サイズ",
+"Save" => "保存",
 "New" => "新規",
 "Text file" => "テキストファイル",
 "Folder" => "フォルダ",
diff --git a/apps/files/l10n/ko.php b/apps/files/l10n/ko.php
index 218dd0ea2d7147e59fa83f80a88e49056dbb67d6..121be7d1abb887d47bf8e87d62d185f2d1d34a76 100644
--- a/apps/files/l10n/ko.php
+++ b/apps/files/l10n/ko.php
@@ -8,7 +8,15 @@
 "Failed to write to disk" => "디스크에 쓰지 못했습니다",
 "Files" => "파일",
 "Delete" => "삭제",
+"already exists" => "이미 존재 합니다",
+"replace" => "대체",
+"cancel" => "취소",
+"replaced" => "대체됨",
+"undo" => "복구",
+"with" => "와",
+"deleted" => "삭제",
 "generating ZIP-file, it may take some time." => "ZIP파일 생성에 시간이 걸릴 수 있습니다.",
+"Unable to upload your file as it is a directory or has 0 bytes" => "이 파일은 디렉토리이거나 0 바이트이기 때문에 업로드 할 수 없습니다.",
 "Upload Error" => "업로드 에러",
 "Pending" => "보류 중",
 "Upload cancelled." => "업로드 취소.",
diff --git a/apps/files/l10n/lb.php b/apps/files/l10n/lb.php
index f7a10fbc5cd06733567b3ce4f5a8ee02c80b2ef8..92acea1d1176f53f2853b65c85f290ea3aff429b 100644
--- a/apps/files/l10n/lb.php
+++ b/apps/files/l10n/lb.php
@@ -8,8 +8,25 @@
 "Failed to write to disk" => "Konnt net op den Disk schreiwen",
 "Files" => "Dateien",
 "Delete" => "Läschen",
+"already exists" => "existéiert schonn",
+"replace" => "ersetzen",
+"cancel" => "ofbriechen",
+"replaced" => "ersat",
+"undo" => "réckgängeg man",
+"with" => "mat",
+"deleted" => "geläscht",
+"generating ZIP-file, it may take some time." => "Et  gëtt eng ZIP-File generéiert, dëst ka bëssen daueren.",
+"Unable to upload your file as it is a directory or has 0 bytes" => "Kann deng Datei net eroplueden well et en Dossier ass oder 0 byte grouss ass.",
+"Upload Error" => "Fehler beim eroplueden",
+"Upload cancelled." => "Upload ofgebrach.",
+"File upload is in progress. Leaving the page now will cancel the upload." => "File Upload am gaang. Wann's de des Säit verléiss gëtt den Upload ofgebrach.",
+"Invalid name, '/' is not allowed." => "Ongültege Numm, '/' net erlaabt.",
 "Size" => "Gréisst",
 "Modified" => "Geännert",
+"folder" => "Dossier",
+"folders" => "Dossieren",
+"file" => "Datei",
+"files" => "Dateien",
 "File handling" => "Fichier handling",
 "Maximum upload size" => "Maximum Upload Gréisst ",
 "max. possible: " => "max. méiglech:",
diff --git a/apps/files/l10n/lv.php b/apps/files/l10n/lv.php
index 54bd79f55261f9dd9b6ebb2ae984b8ed16ef3370..eedab2546c55fcbd3e782c5c8bc9c2b6ab832c5b 100644
--- a/apps/files/l10n/lv.php
+++ b/apps/files/l10n/lv.php
@@ -1,6 +1,17 @@
 <?php $TRANSLATIONS = array(
+"No file was uploaded" => "Neviens fails netika augšuplādēts",
+"Failed to write to disk" => "Nav iespējams saglabāt",
 "Files" => "Faili",
 "Delete" => "Izdzēst",
+"already exists" => "tāds fails jau eksistē",
+"replace" => "aizvietot",
+"cancel" => "atcelt",
+"replaced" => "aizvietots",
+"undo" => "vienu soli atpakaļ",
+"with" => "ar",
+"deleted" => "izdzests",
+"generating ZIP-file, it may take some time." => "lai uzģenerētu ZIP failu, kāds brīdis ir jāpagaida",
+"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",
 "Pending" => "Gaida savu kārtu",
 "Upload cancelled." => "Augšuplāde ir atcelta",
@@ -12,9 +23,20 @@
 "file" => "fails",
 "files" => "faili",
 "Maximum upload size" => "Maksimālais failu augšuplādes apjoms",
+"max. possible: " => "maksīmālais iespējamais:",
+"Enable ZIP-download" => "Iespējot ZIP lejuplādi",
+"0 is unlimited" => "0 ir neierobežots",
+"New" => "Jauns",
+"Text file" => "Teksta fails",
+"Folder" => "Mape",
+"From url" => "No URL saites",
 "Upload" => "Augšuplādet",
+"Cancel upload" => "Atcelt augšuplādi",
 "Nothing in here. Upload something!" => "Te vēl nekas nav. Rīkojies, sāc augšuplādēt",
 "Name" => "Nosaukums",
+"Share" => "Līdzdalīt",
 "Download" => "Lejuplādēt",
-"Upload too large" => "Fails ir par lielu lai to augšuplādetu"
+"Upload too large" => "Fails ir par lielu lai to augšuplādetu",
+"Files are being scanned, please wait." => "Faili šobrīd tiek caurskatīti, nedaudz jāpagaida.",
+"Current scanning" => "Šobrīd tiek pārbaudīti"
 );
diff --git a/apps/files/l10n/nb_NO.php b/apps/files/l10n/nb_NO.php
index 92d0c23bfd245c6f51d09658de76eaa50303b189..6331de6d45ec84325adc2cdc963ffdc38b02ef68 100644
--- a/apps/files/l10n/nb_NO.php
+++ b/apps/files/l10n/nb_NO.php
@@ -12,8 +12,8 @@
 "replace" => "erstatt",
 "cancel" => "avbryt",
 "replaced" => "erstattet",
-"with" => "med",
 "undo" => "angre",
+"with" => "med",
 "deleted" => "slettet",
 "generating ZIP-file, it may take some time." => "opprettet ZIP-fil, dette kan ta litt tid",
 "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",
@@ -34,6 +34,7 @@
 "Enable ZIP-download" => "Aktiver nedlasting av ZIP",
 "0 is unlimited" => "0 er ubegrenset",
 "Maximum input size for ZIP files" => "Maksimal størrelse på ZIP-filer",
+"Save" => "Lagre",
 "New" => "Ny",
 "Text file" => "Tekstfil",
 "Folder" => "Mappe",
diff --git a/apps/files/l10n/nl.php b/apps/files/l10n/nl.php
index fb7ea34b9b85f943a33db1195937bcc7ac03d221..b54c96bd9aec825333e13e4f630964c9fc3a352a 100644
--- a/apps/files/l10n/nl.php
+++ b/apps/files/l10n/nl.php
@@ -7,19 +7,23 @@
 "Missing a temporary folder" => "Een tijdelijke map mist",
 "Failed to write to disk" => "Schrijven naar schijf mislukt",
 "Files" => "Bestanden",
+"Unshare" => "Stop delen",
 "Delete" => "Verwijder",
 "already exists" => "bestaat al",
 "replace" => "vervang",
+"suggest name" => "Stel een naam voor",
 "cancel" => "annuleren",
 "replaced" => "vervangen",
-"with" => "door",
 "undo" => "ongedaan maken",
+"with" => "door",
+"unshared" => "niet gedeeld",
 "deleted" => "verwijderd",
 "generating ZIP-file, it may take some time." => "aanmaken ZIP-file, dit kan enige tijd duren.",
 "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",
 "Pending" => "Wachten",
 "Upload cancelled." => "Uploaden geannuleerd.",
+"File upload is in progress. Leaving the page now will cancel the upload." => "Bestands upload is bezig. Wanneer de pagina nu verlaten wordt, stopt de upload.",
 "Invalid name, '/' is not allowed." => "Ongeldige naam, '/' is niet toegestaan.",
 "Size" => "Bestandsgrootte",
 "Modified" => "Laatst aangepast",
@@ -34,6 +38,7 @@
 "Enable ZIP-download" => "Zet ZIP-download aan",
 "0 is unlimited" => "0 is ongelimiteerd",
 "Maximum input size for ZIP files" => "Maximale grootte voor ZIP bestanden",
+"Save" => "Opslaan",
 "New" => "Nieuw",
 "Text file" => "Tekstbestand",
 "Folder" => "Map",
diff --git a/apps/files/l10n/pl.php b/apps/files/l10n/pl.php
index eb791330bfd24c444209f3788f83ed7ad57c77c8..d3814333aca07ff3891a2452ebf5423c2b5a5a91 100644
--- a/apps/files/l10n/pl.php
+++ b/apps/files/l10n/pl.php
@@ -10,16 +10,18 @@
 "Delete" => "Usuwa element",
 "already exists" => "Już istnieje",
 "replace" => "zastap",
+"suggest name" => "zasugeruj nazwę",
 "cancel" => "anuluj",
 "replaced" => "zastąpione",
-"with" => "z",
 "undo" => "wróć",
+"with" => "z",
 "deleted" => "skasuj",
 "generating ZIP-file, it may take some time." => "Generowanie pliku ZIP, może potrwać pewien czas.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Nie można wczytać pliku jeśli jest katalogiem lub ma 0 bajtów",
 "Upload Error" => "Błąd wczytywania",
 "Pending" => "Oczekujące",
 "Upload cancelled." => "Wczytywanie anulowane.",
+"File upload is in progress. Leaving the page now will cancel the upload." => "Wysyłanie pliku jest w toku. Teraz opuszczając stronę wysyłanie zostanie anulowane.",
 "Invalid name, '/' is not allowed." => "Nieprawidłowa nazwa '/' jest niedozwolone.",
 "Size" => "Rozmiar",
 "Modified" => "Czas modyfikacji",
@@ -34,6 +36,7 @@
 "Enable ZIP-download" => "Włącz pobieranie ZIP-paczki",
 "0 is unlimited" => "0 jest nielimitowane",
 "Maximum input size for ZIP files" => "Maksymalna wielkość pliku wejściowego ZIP ",
+"Save" => "Zapisz",
 "New" => "Nowy",
 "Text file" => "Plik tekstowy",
 "Folder" => "Katalog",
diff --git a/apps/files/l10n/pt_BR.php b/apps/files/l10n/pt_BR.php
index 09c4f2b02674f1f4716774d8e04fb9cbff73eab9..e9fe7747c13770b53d12c73ef0bdd0e3d1f0d7ee 100644
--- a/apps/files/l10n/pt_BR.php
+++ b/apps/files/l10n/pt_BR.php
@@ -12,8 +12,8 @@
 "replace" => "substituir",
 "cancel" => "cancelar",
 "replaced" => "substituido ",
-"with" => "com",
 "undo" => "desfazer",
+"with" => "com",
 "deleted" => "deletado",
 "generating ZIP-file, it may take some time." => "gerando arquivo ZIP, isso pode levar um tempo.",
 "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.",
diff --git a/apps/files/l10n/pt_PT.php b/apps/files/l10n/pt_PT.php
index e413d7cbe7401e0813380c96a8024d22aa4ec9a1..998c494a69542527d17cd7b1e20aef967c11d057 100644
--- a/apps/files/l10n/pt_PT.php
+++ b/apps/files/l10n/pt_PT.php
@@ -12,8 +12,8 @@
 "replace" => "substituir",
 "cancel" => "cancelar",
 "replaced" => "substituido",
-"with" => "com",
 "undo" => "desfazer",
+"with" => "com",
 "deleted" => "apagado",
 "generating ZIP-file, it may take some time." => "a gerar o ficheiro ZIP, poderá demorar algum tempo.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Não é possivel fazer o upload do ficheiro devido a ser uma pasta ou ter 0 bytes",
diff --git a/apps/files/l10n/ru.php b/apps/files/l10n/ru.php
index 71b30d22df448c18c53eea664d4fac7d65dd3fad..61091790af574b92b17510bee9ef9e4d93862738 100644
--- a/apps/files/l10n/ru.php
+++ b/apps/files/l10n/ru.php
@@ -7,19 +7,23 @@
 "Missing a temporary folder" => "Невозможно найти временную папку",
 "Failed to write to disk" => "Ошибка записи на диск",
 "Files" => "Файлы",
+"Unshare" => "Отменить публикацию",
 "Delete" => "Удалить",
 "already exists" => "уже существует",
 "replace" => "заменить",
+"suggest name" => "предложить название",
 "cancel" => "отмена",
 "replaced" => "заменён",
-"with" => "с",
 "undo" => "отмена",
+"with" => "с",
+"unshared" => "публикация отменена",
 "deleted" => "удален",
 "generating ZIP-file, it may take some time." => "создание ZIP-файла, это может занять некоторое время.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Не удается загрузить файл размером 0 байт в каталог",
 "Upload Error" => "Ошибка загрузки",
 "Pending" => "Ожидание",
 "Upload cancelled." => "Загрузка отменена.",
+"File upload is in progress. Leaving the page now will cancel the upload." => "Файл в процессе загрузки. Покинув страницу вы прервёте загрузку.",
 "Invalid name, '/' is not allowed." => "Неверное имя, '/' не допускается.",
 "Size" => "Размер",
 "Modified" => "Изменён",
@@ -34,6 +38,7 @@
 "Enable ZIP-download" => "Включить ZIP-скачивание",
 "0 is unlimited" => "0 - без ограничений",
 "Maximum input size for ZIP files" => "Максимальный исходный размер для ZIP файлов",
+"Save" => "Сохранить",
 "New" => "Новый",
 "Text file" => "Текстовый файл",
 "Folder" => "Папка",
diff --git a/apps/files/l10n/sl.php b/apps/files/l10n/sl.php
index f6322b2507d6dd1e87ee3f32bd9258edb3efe4a8..1a7ae8c0b10f353a7eededd63855c52c4e1f4777 100644
--- a/apps/files/l10n/sl.php
+++ b/apps/files/l10n/sl.php
@@ -7,19 +7,23 @@
 "Missing a temporary folder" => "Manjka začasna mapa",
 "Failed to write to disk" => "Pisanje na disk je spodletelo",
 "Files" => "Datoteke",
+"Unshare" => "Odstrani iz souporabe",
 "Delete" => "Izbriši",
 "already exists" => "že obstaja",
 "replace" => "nadomesti",
+"suggest name" => "predlagaj ime",
 "cancel" => "ekliči",
 "replaced" => "nadomeščen",
-"with" => "z",
 "undo" => "razveljavi",
+"with" => "z",
+"unshared" => "odstranjeno iz souporabe",
 "deleted" => "izbrisano",
 "generating ZIP-file, it may take some time." => "Ustvarjam ZIP datoteko. To lahko traja nekaj časa.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Nalaganje ni mogoče, saj gre za mapo, ali pa ima datoteka velikost 0 bajtov.",
 "Upload Error" => "Napaka pri nalaganju",
 "Pending" => "Na čakanju",
 "Upload cancelled." => "Nalaganje je bilo preklicano.",
+"File upload is in progress. Leaving the page now will cancel the upload." => "Nalaganje datoteke je v teku. Če zapustite to stran zdaj, boste nalaganje preklicali.",
 "Invalid name, '/' is not allowed." => "Neveljavno ime. Znak '/' ni dovoljen.",
 "Size" => "Velikost",
 "Modified" => "Spremenjeno",
@@ -34,6 +38,7 @@
 "Enable ZIP-download" => "Omogoči ZIP-prejemanje",
 "0 is unlimited" => "0 je neskončno",
 "Maximum input size for ZIP files" => "Največja vhodna velikost za ZIP datoteke",
+"Save" => "Shrani",
 "New" => "Nova",
 "Text file" => "Besedilna datoteka",
 "Folder" => "Mapa",
diff --git a/apps/files/l10n/sv.php b/apps/files/l10n/sv.php
index a62b7522511882974a74b3423d491fc6e3bb9ab3..06d988d451246f493c2faf0c618e90314eb6bdd9 100644
--- a/apps/files/l10n/sv.php
+++ b/apps/files/l10n/sv.php
@@ -7,19 +7,23 @@
 "Missing a temporary folder" => "Saknar en tillfällig mapp",
 "Failed to write to disk" => "Misslyckades spara till disk",
 "Files" => "Filer",
+"Unshare" => "Sluta dela",
 "Delete" => "Radera",
 "already exists" => "finns redan",
 "replace" => "ersätt",
+"suggest name" => "föreslå namn",
 "cancel" => "avbryt",
 "replaced" => "ersatt",
-"with" => "med",
 "undo" => "ångra",
+"with" => "med",
+"unshared" => "Ej delad",
 "deleted" => "raderad",
 "generating ZIP-file, it may take some time." => "genererar ZIP-fil, det kan ta lite tid.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Kunde inte ladda upp dina filer eftersom det antingen är en mapp eller har 0 bytes.",
 "Upload Error" => "Uppladdningsfel",
 "Pending" => "Väntar",
 "Upload cancelled." => "Uppladdning avbruten.",
+"File upload is in progress. Leaving the page now will cancel the upload." => "Filuppladdning pågår. Lämnar du sidan så avbryts uppladdningen.",
 "Invalid name, '/' is not allowed." => "Ogiltigt namn, '/' är inte tillåten.",
 "Size" => "Storlek",
 "Modified" => "Ändrad",
@@ -34,6 +38,7 @@
 "Enable ZIP-download" => "Aktivera ZIP-nerladdning",
 "0 is unlimited" => "0 är oändligt",
 "Maximum input size for ZIP files" => "Största tillåtna storlek för ZIP-filer",
+"Save" => "Spara",
 "New" => "Ny",
 "Text file" => "Textfil",
 "Folder" => "Mapp",
diff --git a/apps/files/l10n/th_TH.php b/apps/files/l10n/th_TH.php
index eed9c36e132afb2056c5ce26b98ae1eca5eb2702..2208051236c3fafb4279ee202e9262768b4af1a0 100644
--- a/apps/files/l10n/th_TH.php
+++ b/apps/files/l10n/th_TH.php
@@ -7,19 +7,23 @@
 "Missing a temporary folder" => "แฟ้มเอกสารชั่วคราวเกิดการสูญหาย",
 "Failed to write to disk" => "เขียนข้อมูลลงแผ่นดิสก์ล้มเหลว",
 "Files" => "ไฟล์",
+"Unshare" => "ยกเลิกการแชร์ข้อมูล",
 "Delete" => "ลบ",
 "already exists" => "มีอยู่แล้ว",
 "replace" => "แทนที่",
+"suggest name" => "แนะนำชื่อ",
 "cancel" => "ยกเลิก",
 "replaced" => "แทนที่แล้ว",
-"with" => "กับ",
 "undo" => "เลิกทำ",
+"with" => "กับ",
+"unshared" => "ยกเลิกการแชร์ข้อมูลแล้ว",
 "deleted" => "ลบแล้ว",
 "generating ZIP-file, it may take some time." => "กำลังสร้างไฟล์บีบอัด ZIP อาจใช้เวลาสักครู่",
 "Unable to upload your file as it is a directory or has 0 bytes" => "ไม่สามารถอัพโหลดไฟล์ของคุณได้ เนื่องจากไฟล์ดังกล่าวเป็นไดเร็กทอรี่หรือมีขนาด 0 ไบต์",
 "Upload Error" => "เกิดข้อผิดพลาดในการอัพโหลด",
 "Pending" => "อยู่ระหว่างดำเนินการ",
 "Upload cancelled." => "การอัพโหลดถูกยกเลิก",
+"File upload is in progress. Leaving the page now will cancel the upload." => "การอัพโหลดไฟล์กำลังอยู่ในระหว่างดำเนินการ การออกจากหน้าเว็บนี้จะทำให้การอัพโหลดถูกยกเลิก",
 "Invalid name, '/' is not allowed." => "ชื่อที่ใช้ไม่ถูกต้อง '/' ไม่อนุญาตให้ใช้งาน",
 "Size" => "ขนาด",
 "Modified" => "ปรับปรุงล่าสุด",
@@ -34,6 +38,7 @@
 "Enable ZIP-download" => "อนุญาตให้ดาวน์โหลดเป็นไฟล์ ZIP ได้",
 "0 is unlimited" => "0 หมายถึงไม่จำกัด",
 "Maximum input size for ZIP files" => "ขนาดไฟล์ ZIP สูงสุด",
+"Save" => "บันทึก",
 "New" => "อัพโหลดไฟล์ใหม่",
 "Text file" => "ไฟล์ข้อความ",
 "Folder" => "แฟ้มเอกสาร",
diff --git a/apps/files/l10n/tr.php b/apps/files/l10n/tr.php
index 224322b24e0d0a71edd5714ee080ad778fa7e306..72e0e1427d3b98090c23aa1bc4e77801b506a0af 100644
--- a/apps/files/l10n/tr.php
+++ b/apps/files/l10n/tr.php
@@ -8,13 +8,19 @@
 "Failed to write to disk" => "Diske yazılamadı",
 "Files" => "Dosyalar",
 "Delete" => "Sil",
+"already exists" => "zaten mevcut",
+"replace" => "değiştir",
+"cancel" => "iptal",
+"replaced" => "değiştirildi",
 "undo" => "geri al",
+"with" => "ile",
 "deleted" => "silindi",
 "generating ZIP-file, it may take some time." => "ZIP dosyası oluşturuluyor, biraz sürebilir.",
 "Unable to upload your file as it is a directory or has 0 bytes" => "Dosyanızın boyutu 0 byte olduğundan veya bir dizin olduğundan yüklenemedi",
 "Upload Error" => "Yükleme hatası",
 "Pending" => "Bekliyor",
 "Upload cancelled." => "Yükleme iptal edildi.",
+"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.",
 "Invalid name, '/' is not allowed." => "Geçersiz isim, '/' işaretine izin verilmiyor.",
 "Size" => "Boyut",
 "Modified" => "Değiştirilme",
diff --git a/apps/files/l10n/vi.php b/apps/files/l10n/vi.php
index c2284d5feb9c001d2187e04e93767c1076214035..ce7e0c219ab24f1f0f30cacd6df66657057ef37b 100644
--- a/apps/files/l10n/vi.php
+++ b/apps/files/l10n/vi.php
@@ -1,9 +1,28 @@
 <?php $TRANSLATIONS = array(
+"There is no error, the file uploaded with success" => "Không có lỗi, các tập tin đã được tải lên thành công",
+"The uploaded file exceeds the upload_max_filesize directive in php.ini" => "Những tập tin được tải lên vượt quá upload_max_filesize được chỉ định trong php.ini",
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" => "Kích thước những tập tin tải lên vượt quá MAX_FILE_SIZE đã được quy định",
+"The uploaded file was only partially uploaded" => "Tập tin tải lên mới chỉ tải lên được một phần",
+"No file was uploaded" => "Không có tập tin nào được tải lên",
+"Missing a temporary folder" => "Không tìm thấy thư mục tạm",
+"Failed to write to disk" => "Không thể ghi vào đĩa cứng",
 "Files" => "Tập tin",
+"Unshare" => "Không chia sẽ",
 "Delete" => "Xóa",
+"already exists" => "đã tồn tại",
+"replace" => "thay thế",
+"suggest name" => "tên gợi ý",
+"cancel" => "hủy",
+"replaced" => "đã được thay thế",
+"undo" => "lùi lại",
+"with" => "với",
+"deleted" => "đã xóa",
+"generating ZIP-file, it may take some time." => "Tạo tập tinh ZIP, điều này có thể mất một ít thời gian",
+"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",
 "Pending" => "Chờ",
 "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.",
 "Invalid name, '/' is not allowed." => "Tên không hợp lệ ,không được phép dùng '/'",
 "Size" => "Kích cỡ",
 "Modified" => "Thay đổi",
@@ -13,9 +32,11 @@
 "files" => "files",
 "File handling" => "Xử lý tập tin",
 "Maximum upload size" => "Kích thước tối đa ",
+"Needed for multi-file and folder downloads." => "Cần thiết cho tải nhiều tập tin và thư mục.",
 "Enable ZIP-download" => "Cho phép ZIP-download",
 "0 is unlimited" => "0 là không giới hạn",
 "Maximum input size for ZIP files" => "Kích thước tối đa cho các tập tin ZIP",
+"Save" => "Lưu",
 "New" => "Mới",
 "Text file" => "Tập tin văn bản",
 "Folder" => "Folder",
@@ -27,5 +48,7 @@
 "Share" => "Chia sẻ",
 "Download" => "Tải xuống",
 "Upload too large" => "File tải lên quá lớn",
-"Files are being scanned, please wait." => "Tập tin đang được quét ,vui lòng chờ."
+"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Các tập tin bạn đang cố gắng tải lên vượt quá kích thước tối đa cho phép trên máy chủ này.",
+"Files are being scanned, please wait." => "Tập tin đang được quét ,vui lòng chờ.",
+"Current scanning" => "Hiện tại đang quét"
 );
diff --git a/apps/files/l10n/zh_CN.GB2312.php b/apps/files/l10n/zh_CN.GB2312.php
index 6703e6f90880bc106ded889ad2b116a78404fb4a..42063712eac6b408ddeffe0e9960659c19623bcd 100644
--- a/apps/files/l10n/zh_CN.GB2312.php
+++ b/apps/files/l10n/zh_CN.GB2312.php
@@ -12,8 +12,8 @@
 "replace" => "替换",
 "cancel" => "取消",
 "replaced" => "替换过了",
-"with" => "随着",
 "undo" => "撤销",
+"with" => "随着",
 "deleted" => "删除",
 "generating ZIP-file, it may take some time." => "正在生成ZIP文件,这可能需要点时间",
 "Unable to upload your file as it is a directory or has 0 bytes" => "不能上传你指定的文件,可能因为它是个文件夹或者大小为0",
diff --git a/apps/files/l10n/zh_CN.php b/apps/files/l10n/zh_CN.php
index dc7830188485f7e88b63eaf5f4a99e9c04effa14..3fdb5b6af3e64d534fdcda07e9799e01bd220cb5 100644
--- a/apps/files/l10n/zh_CN.php
+++ b/apps/files/l10n/zh_CN.php
@@ -10,16 +10,18 @@
 "Delete" => "删除",
 "already exists" => "已经存在",
 "replace" => "替换",
+"suggest name" => "建议名称",
 "cancel" => "取消",
 "replaced" => "已经替换",
-"with" => "随着",
 "undo" => "撤销",
+"with" => "随着",
 "deleted" => "已经删除",
 "generating ZIP-file, it may take some time." => "正在生成 ZIP 文件,可能需要一些时间",
 "Unable to upload your file as it is a directory or has 0 bytes" => "无法上传文件,因为它是一个目录或者大小为 0 字节",
 "Upload Error" => "上传错误",
 "Pending" => "操作等待中",
 "Upload cancelled." => "上传已取消",
+"File upload is in progress. Leaving the page now will cancel the upload." => "文件正在上传中。现在离开此页会导致上传动作被取消。",
 "Invalid name, '/' is not allowed." => "非法的名称,不允许使用‘/’。",
 "Size" => "大小",
 "Modified" => "修改日期",
@@ -34,6 +36,7 @@
 "Enable ZIP-download" => "启用 ZIP 下载",
 "0 is unlimited" => "0 为无限制",
 "Maximum input size for ZIP files" => "ZIP 文件的最大输入大小",
+"Save" => "保存",
 "New" => "新建",
 "Text file" => "文本文件",
 "Folder" => "文件夹",
diff --git a/apps/files/l10n/zh_TW.php b/apps/files/l10n/zh_TW.php
index bc8aa4ff892db500635f7a9618e6244c3902b07e..9652fb5a073dc2a22f432c29d9ba74b7165235ea 100644
--- a/apps/files/l10n/zh_TW.php
+++ b/apps/files/l10n/zh_TW.php
@@ -8,6 +8,15 @@
 "Failed to write to disk" => "寫入硬碟失敗",
 "Files" => "檔案",
 "Delete" => "刪除",
+"already exists" => "已經存在",
+"replace" => "取代",
+"cancel" => "取消",
+"generating ZIP-file, it may take some time." => "產生壓縮檔, 它可能需要一段時間.",
+"Unable to upload your file as it is a directory or has 0 bytes" => "無法上傳您的檔案因為它可能是一個目錄或檔案大小為0",
+"Upload Error" => "上傳發生錯誤",
+"Upload cancelled." => "上傳取消",
+"File upload is in progress. Leaving the page now will cancel the upload." => "檔案上傳中. 離開此頁面將會取消上傳.",
+"Invalid name, '/' is not allowed." => "無效的名稱, '/'是不被允許的",
 "Size" => "大小",
 "Modified" => "修改",
 "File handling" => "檔案處理",
diff --git a/apps/files/settings.php b/apps/files/settings.php
index cd6dd8c1616c0e25e102269fe1743cb68eb53867..52ec9fd0fe3024c8119ec5cc39bfc8da2b682c41 100644
--- a/apps/files/settings.php
+++ b/apps/files/settings.php
@@ -23,7 +23,7 @@
 
 
 // Init owncloud
- 
+
 
 // Check if we are a user
 OCP\User::checkLoggedIn();
@@ -36,7 +36,7 @@ OCP\Util::addscript( "files", "files" );
 $dir = isset( $_GET['dir'] ) ? $_GET['dir'] : '';
 
 $files = array();
-foreach( OC_Files::getdirectorycontent( $dir ) as $i ){
+foreach( OC_Files::getdirectorycontent( $dir ) as $i ) {
 	$i["date"] = date( $CONFIG_DATEFORMAT, $i["mtime"] );
 	$files[] = $i;
 }
@@ -44,8 +44,8 @@ foreach( OC_Files::getdirectorycontent( $dir ) as $i ){
 // Make breadcrumb
 $breadcrumb = array();
 $pathtohere = "/";
-foreach( explode( "/", $dir ) as $i ){
-	if( $i != "" ){
+foreach( explode( "/", $dir ) as $i ) {
+	if( $i != "" ) {
 		$pathtohere .= "$i/";
 		$breadcrumb[] = array( "dir" => $pathtohere, "name" => $i );
 	}
diff --git a/apps/files/templates/admin.php b/apps/files/templates/admin.php
index 23021ec66477c7e6991c0bf8c50c7f07046a9a29..c4fe4c86569ad3298a543f450cc9e69dd614af6d 100644
--- a/apps/files/templates/admin.php
+++ b/apps/files/templates/admin.php
@@ -11,9 +11,6 @@
 			<input name="maxZipInputSize" id="maxZipInputSize" style="width:180px;" value='<?php echo $_['maxZipInputSize'] ?>' title="<?php echo $l->t( '0 is unlimited' ); ?>"<?php if (!$_['allowZipDownload']) echo ' disabled="disabled"'; ?> />
 			<label for="maxZipInputSize"><?php echo $l->t( 'Maximum input size for ZIP files' ); ?> </label><br />
 
-		<input type="submit" name="submitFilesAdminSettings" id="submitFilesAdminSettings" value="Save"/>
+		<input type="submit" name="submitFilesAdminSettings" id="submitFilesAdminSettings" value="<?php echo $l->t( 'Save' ); ?>"/>
 	</fieldset>
 </form>
-
-
-
diff --git a/apps/files/templates/index.php b/apps/files/templates/index.php
index bcf683ae4a8fa2e4809820b53d42aea3a76522a9..911a312fb9aa6badb59e9f076501e7a0661b3316 100644
--- a/apps/files/templates/index.php
+++ b/apps/files/templates/index.php
@@ -32,6 +32,7 @@
 	<?php else:?>
 		<input type="hidden" name="dir" value="<?php echo $_['dir'] ?>" id="dir">
 	<?php endif;?>
+	<input type="hidden" name="permissions" value="<?php echo $_['permissions']; ?>" id="permissions">
 </div>
 <div id='notification'></div>
 
@@ -53,7 +54,17 @@
 				</span>
 			</th>
 			<th id="headerSize"><?php echo $l->t( 'Size' ); ?></th>
-			<th id="headerDate"><span id="modified"><?php echo $l->t( 'Modified' ); ?></span><span class="selectedActions"><a href="" class="delete"><?php echo $l->t('Delete')?> <img class="svg" alt="<?php echo $l->t('Delete')?>" src="<?php echo OCP\image_path("core", "actions/delete.svg"); ?>" /></a></span></th>
+			<th id="headerDate">
+				<span id="modified"><?php echo $l->t( 'Modified' ); ?></span>
+				<?php if ($_['permissions'] & OCP\Share::PERMISSION_DELETE): ?>
+<!-- 					NOTE: Temporary fix to allow unsharing of files in root of Shared folder -->
+					<?php if ($_['dir'] == '/Shared'): ?>
+						<span class="selectedActions"><a href="" class="delete"><?php echo $l->t('Unshare')?> <img class="svg" alt="<?php echo $l->t('Unshare')?>" src="<?php echo OCP\image_path("core", "actions/delete.svg"); ?>" /></a></span>
+					<?php else: ?>
+						<span class="selectedActions"><a href="" class="delete"><?php echo $l->t('Delete')?> <img class="svg" alt="<?php echo $l->t('Delete')?>" src="<?php echo OCP\image_path("core", "actions/delete.svg"); ?>" /></a></span>
+					<?php endif; ?>
+				<?php endif; ?>
+			</th>
 		</tr>
 	</thead>
 	<tbody id="fileList">
diff --git a/apps/files/templates/part.breadcrumb.php b/apps/files/templates/part.breadcrumb.php
index 22d9bb4490df64a51b6d3495dc248264eac25cf1..875fc747bb774f41711492a249fb7c95dd296bee 100644
--- a/apps/files/templates/part.breadcrumb.php
+++ b/apps/files/templates/part.breadcrumb.php
@@ -1,6 +1,6 @@
 	<?php for($i=0; $i<count($_["breadcrumb"]); $i++):
         $crumb = $_["breadcrumb"][$i]; ?>
 		<div class="crumb <?php if($i == count($_["breadcrumb"])-1) echo 'last';?> svg" data-dir='<?php echo $crumb["dir"];?>' style='background-image:url("<?php echo OCP\image_path('core','breadcrumb.png');?>")'>
-    		<a href="<?php echo $_['baseURL'].$crumb["dir"]; ?>"><?php echo OCP\Util::sanitizeHTML($crumb["name"]); ?></a>
+		<a href="<?php echo $_['baseURL'].$crumb["dir"]; ?>"><?php echo OCP\Util::sanitizeHTML($crumb["name"]); ?></a>
 		</div>
 	<?php endfor;?>
diff --git a/apps/files_encryption/appinfo/app.php b/apps/files_encryption/appinfo/app.php
index 679d0b95edcbdf743921db4aa3ebc39672ad38e0..bb130a366beb41e1976f57c1e66c2de042b121b8 100644
--- a/apps/files_encryption/appinfo/app.php
+++ b/apps/files_encryption/appinfo/app.php
@@ -10,7 +10,7 @@ OCP\Util::connectHook('OC_User','post_login','OC_Crypt','loginListener');
 
 stream_wrapper_register('crypt','OC_CryptStream');
 
-if(!isset($_SESSION['enckey']) and OCP\User::isLoggedIn()){//force the user to re-loggin if the encryption key isn't unlocked (happens when a user is logged in before the encryption app is enabled)
+if(!isset($_SESSION['enckey']) and OCP\User::isLoggedIn()) {//force the user to re-loggin if the encryption key isn't unlocked (happens when a user is logged in before the encryption app is enabled)
 	OCP\User::logout();
 	header("Location: ".OC::$WEBROOT.'/');
 	exit();
diff --git a/apps/files_encryption/js/settings.js b/apps/files_encryption/js/settings.js
index 8cc433246cb31a85aa6049eb23f83260ce716b29..6fc70eba7f6af8c45592b2bd511b773d37755363 100644
--- a/apps/files_encryption/js/settings.js
+++ b/apps/files_encryption/js/settings.js
@@ -11,7 +11,7 @@ $(document).ready(function(){
 		onuncheck:blackListChange,
 		createText:'...',
 	});
-	
+
 	function blackListChange(){
 		var blackList=$('#encryption_blacklist').val().join(',');
 		OC.AppConfig.setValue('files_encryption','type_blacklist',blackList);
@@ -20,5 +20,5 @@ $(document).ready(function(){
 	$('#enable_encryption').change(function(){
 		var checked=$('#enable_encryption').is(':checked');
 		OC.AppConfig.setValue('files_encryption','enable_encryption',(checked)?'true':'false');
-	})
-})
\ No newline at end of file
+	});
+});
diff --git a/apps/files_encryption/l10n/cs_CZ.php b/apps/files_encryption/l10n/cs_CZ.php
index 15cf7705709124ac3f24674c83b21a706cd23884..9be2be98092114f5107515a396b958c5ebb4c41d 100644
--- a/apps/files_encryption/l10n/cs_CZ.php
+++ b/apps/files_encryption/l10n/cs_CZ.php
@@ -1,6 +1,6 @@
 <?php $TRANSLATIONS = array(
-"Encryption" => "Kryptování",
-"Exclude the following file types from encryption" => "Při kryptování vynechat následující typy souborů",
-"None" => "Žádný",
-"Enable Encryption" => "Povolit kryptování"
+"Encryption" => "Šifrování",
+"Exclude the following file types from encryption" => "Při šifrování vynechat následující typy souborů",
+"None" => "Žádné",
+"Enable Encryption" => "Povolit šifrování"
 );
diff --git a/apps/files_encryption/l10n/sk_SK.php b/apps/files_encryption/l10n/sk_SK.php
new file mode 100644
index 0000000000000000000000000000000000000000..598f1294f6ec69633ffe9668bc2f07f52a0fd7f8
--- /dev/null
+++ b/apps/files_encryption/l10n/sk_SK.php
@@ -0,0 +1,6 @@
+<?php $TRANSLATIONS = array(
+"Encryption" => "Šifrovanie",
+"Exclude the following file types from encryption" => "Vynechať nasledujúce súbory pri šifrovaní",
+"None" => "Žiadne",
+"Enable Encryption" => "Zapnúť šifrovanie"
+);
diff --git a/apps/files_encryption/l10n/vi.php b/apps/files_encryption/l10n/vi.php
new file mode 100644
index 0000000000000000000000000000000000000000..cabf2da7dcef9c8824f9cea2a660ad8abf21bdf8
--- /dev/null
+++ b/apps/files_encryption/l10n/vi.php
@@ -0,0 +1,6 @@
+<?php $TRANSLATIONS = array(
+"Encryption" => "Mã hóa",
+"Exclude the following file types from encryption" => "Loại trừ các loại tập tin sau đây từ mã hóa",
+"None" => "none",
+"Enable Encryption" => "BẬT mã hóa"
+);
diff --git a/apps/files_encryption/l10n/zh_CN.php b/apps/files_encryption/l10n/zh_CN.php
new file mode 100644
index 0000000000000000000000000000000000000000..1e1247d15ffa4bb03e64a242ad63d671c2ed39d8
--- /dev/null
+++ b/apps/files_encryption/l10n/zh_CN.php
@@ -0,0 +1,6 @@
+<?php $TRANSLATIONS = array(
+"Encryption" => "加密",
+"Exclude the following file types from encryption" => "从加密中排除列出的文件类型",
+"None" => "None",
+"Enable Encryption" => "开启加密"
+);
diff --git a/apps/files_encryption/l10n/zh_TW.php b/apps/files_encryption/l10n/zh_TW.php
new file mode 100644
index 0000000000000000000000000000000000000000..4c62130cf4f7b94977d99001a9f9a87eb151ebaf
--- /dev/null
+++ b/apps/files_encryption/l10n/zh_TW.php
@@ -0,0 +1,6 @@
+<?php $TRANSLATIONS = array(
+"Encryption" => "加密",
+"Exclude the following file types from encryption" => "下列的檔案類型不加密",
+"None" => "無",
+"Enable Encryption" => "啟用加密"
+);
diff --git a/apps/files_encryption/lib/crypt.php b/apps/files_encryption/lib/crypt.php
index 849e88ee0b2eb4fc521901121a17eabf5f7b0b92..38d8edf28c356fb9e6f4b78441033926d6b763d4 100644
--- a/apps/files_encryption/lib/crypt.php
+++ b/apps/files_encryption/lib/crypt.php
@@ -31,7 +31,7 @@
 //  - IMPORTANT! Check if the block lenght of the encrypted data stays the same
 
 
-require_once('Crypt_Blowfish/Blowfish.php');
+require_once 'Crypt_Blowfish/Blowfish.php';
 
 /**
  * This class is for crypting and decrypting
@@ -39,18 +39,18 @@ require_once('Crypt_Blowfish/Blowfish.php');
 class OC_Crypt {
 	static private $bf = null;
 
-	public static function loginListener($params){
+	public static function loginListener($params) {
 		self::init($params['uid'],$params['password']);
 	}
 
 	public static function init($login,$password) {
 		$view=new OC_FilesystemView('/');
-		if(!$view->file_exists('/'.$login)){
+		if(!$view->file_exists('/'.$login)) {
 			$view->mkdir('/'.$login);
 		}
 
 		OC_FileProxy::$enabled=false;
-		if(!$view->file_exists('/'.$login.'/encryption.key')){// does key exist?
+		if(!$view->file_exists('/'.$login.'/encryption.key')) {// does key exist?
 			OC_Crypt::createkey($login,$password);
 		}
 		$key=$view->file_get_contents('/'.$login.'/encryption.key');
@@ -66,14 +66,14 @@ class OC_Crypt {
 	 *
 	 * if the key is left out, the default handeler will be used
 	 */
-	public static function getBlowfish($key=''){
-		if($key){
+	public static function getBlowfish($key='') {
+		if($key) {
 			return new Crypt_Blowfish($key);
 		}else{
-			if(!isset($_SESSION['enckey'])){
+			if(!isset($_SESSION['enckey'])) {
 				return false;
 			}
-			if(!self::$bf){
+			if(!self::$bf) {
 				self::$bf=new Crypt_Blowfish($_SESSION['enckey']);
 			}
 			return self::$bf;
@@ -96,7 +96,7 @@ class OC_Crypt {
 	}
 
 	public static function changekeypasscode($oldPassword, $newPassword) {
-		if(OCP\User::isLoggedIn()){
+		if(OCP\User::isLoggedIn()) {
 			$username=OCP\USER::getUser();
 			$view=new OC_FilesystemView('/'.$username);
 
@@ -179,7 +179,7 @@ class OC_Crypt {
 			while (!feof($handleread)) {
 				$content = fread($handleread, 8192);
 				$enccontent=OC_CRYPT::decrypt( $content, $key);
-				if(feof($handleread)){
+				if(feof($handleread)) {
 					$enccontent=rtrim($enccontent, "\0");
 				}
 				fwrite($handlewrite, $enccontent);
@@ -188,29 +188,29 @@ class OC_Crypt {
 			fclose($handleread);
 		}
 	}
-	
+
 	/**
 	 * encrypt data in 8192b sized blocks
 	 */
-	public static function blockEncrypt($data, $key=''){
+	public static function blockEncrypt($data, $key='') {
 		$result='';
-		while(strlen($data)){
+		while(strlen($data)) {
 			$result.=self::encrypt(substr($data,0,8192),$key);
 			$data=substr($data,8192);
 		}
 		return $result;
 	}
-	
+
 	/**
 	 * decrypt data in 8192b sized blocks
 	 */
-	public static function blockDecrypt($data, $key='',$maxLength=0){
+	public static function blockDecrypt($data, $key='',$maxLength=0) {
 		$result='';
-		while(strlen($data)){
+		while(strlen($data)) {
 			$result.=self::decrypt(substr($data,0,8192),$key);
 			$data=substr($data,8192);
 		}
-		if($maxLength>0){
+		if($maxLength>0) {
 			return substr($result,0,$maxLength);
 		}else{
 			return rtrim($result, "\0");
diff --git a/apps/files_encryption/lib/cryptstream.php b/apps/files_encryption/lib/cryptstream.php
index 46471911d94482a04119ca38631eb4466bf3afbe..721a1b955dffd0c2f9c5b3bb51e0ef6da456e9a6 100644
--- a/apps/files_encryption/lib/cryptstream.php
+++ b/apps/files_encryption/lib/cryptstream.php
@@ -36,18 +36,18 @@ class OC_CryptStream{
 	private $size;
 	private static $rootView;
 
-	public function stream_open($path, $mode, $options, &$opened_path){
-		if(!self::$rootView){
+	public function stream_open($path, $mode, $options, &$opened_path) {
+		if(!self::$rootView) {
 			self::$rootView=new OC_FilesystemView('');
 		}
 		$path=str_replace('crypt://','',$path);
-		if(dirname($path)=='streams' and isset(self::$sourceStreams[basename($path)])){
+		if(dirname($path)=='streams' and isset(self::$sourceStreams[basename($path)])) {
 			$this->source=self::$sourceStreams[basename($path)]['stream'];
 			$this->path=self::$sourceStreams[basename($path)]['path'];
 			$this->size=self::$sourceStreams[basename($path)]['size'];
 		}else{
 			$this->path=$path;
-			if($mode=='w' or $mode=='w+' or $mode=='wb' or $mode=='wb+'){
+			if($mode=='w' or $mode=='w+' or $mode=='wb' or $mode=='wb+') {
 				$this->size=0;
 			}else{
 				$this->size=self::$rootView->filesize($path,$mode);
@@ -55,55 +55,55 @@ class OC_CryptStream{
 			OC_FileProxy::$enabled=false;//disable fileproxies so we can open the source file
 			$this->source=self::$rootView->fopen($path,$mode);
 			OC_FileProxy::$enabled=true;
-			if(!is_resource($this->source)){
+			if(!is_resource($this->source)) {
 				OCP\Util::writeLog('files_encryption','failed to open '.$path,OCP\Util::ERROR);
 			}
 		}
-		if(is_resource($this->source)){
+		if(is_resource($this->source)) {
 			$this->meta=stream_get_meta_data($this->source);
 		}
 		return is_resource($this->source);
 	}
-	
-	public function stream_seek($offset, $whence=SEEK_SET){
+
+	public function stream_seek($offset, $whence=SEEK_SET) {
 		$this->flush();
 		fseek($this->source,$offset,$whence);
 	}
-	
-	public function stream_tell(){
+
+	public function stream_tell() {
 		return ftell($this->source);
 	}
-	
-	public function stream_read($count){
+
+	public function stream_read($count) {
 		//$count will always be 8192 https://bugs.php.net/bug.php?id=21641
 		//This makes this function a lot simpler but will breake everything the moment it's fixed
 		$this->writeCache='';
-		if($count!=8192){
+		if($count!=8192) {
 			OCP\Util::writeLog('files_encryption','php bug 21641 no longer holds, decryption will not work',OCP\Util::FATAL);
 			die();
 		}
 		$pos=ftell($this->source);
 		$data=fread($this->source,8192);
-		if(strlen($data)){
+		if(strlen($data)) {
 			$result=OC_Crypt::decrypt($data);
 		}else{
 			$result='';
 		}
 		$length=$this->size-$pos;
-		if($length<8192){
+		if($length<8192) {
 			$result=substr($result,0,$length);
 		}
 		return $result;
 	}
-	
-	public function stream_write($data){
+
+	public function stream_write($data) {
 		$length=strlen($data);
 		$currentPos=ftell($this->source);
-		if($this->writeCache){
+		if($this->writeCache) {
 			$data=$this->writeCache.$data;
 			$this->writeCache='';
 		}
-		if($currentPos%8192!=0){
+		if($currentPos%8192!=0) {
 			//make sure we always start on a block start
 			fseek($this->source,-($currentPos%8192),SEEK_CUR);
 			$encryptedBlock=fread($this->source,8192);
@@ -113,8 +113,8 @@ class OC_CryptStream{
 			fseek($this->source,-($currentPos%8192),SEEK_CUR);
 		}
 		$currentPos=ftell($this->source);
-		while($remainingLength=strlen($data)>0){
-			if($remainingLength<8192){
+		while($remainingLength=strlen($data)>0) {
+			if($remainingLength<8192) {
 				$this->writeCache=$data;
 				$data='';
 			}else{
@@ -127,8 +127,8 @@ class OC_CryptStream{
 		return $length;
 	}
 
-	public function stream_set_option($option,$arg1,$arg2){
-		switch($option){
+	public function stream_set_option($option,$arg1,$arg2) {
+		switch($option) {
 			case STREAM_OPTION_BLOCKING:
 				stream_set_blocking($this->source,$arg1);
 				break;
@@ -140,33 +140,33 @@ class OC_CryptStream{
 		}
 	}
 
-	public function stream_stat(){
+	public function stream_stat() {
 		return fstat($this->source);
 	}
-	
-	public function stream_lock($mode){
+
+	public function stream_lock($mode) {
 		flock($this->source,$mode);
 	}
-	
-	public function stream_flush(){
+
+	public function stream_flush() {
 		return fflush($this->source);
 	}
 
-	public function stream_eof(){
+	public function stream_eof() {
 		return feof($this->source);
 	}
 
-	private function flush(){
-		if($this->writeCache){
+	private function flush() {
+		if($this->writeCache) {
 			$encrypted=OC_Crypt::encrypt($this->writeCache);
 			fwrite($this->source,$encrypted);
 			$this->writeCache='';
 		}
 	}
 
-	public function stream_close(){
+	public function stream_close() {
 		$this->flush();
-		if($this->meta['mode']!='r' and $this->meta['mode']!='rb'){
+		if($this->meta['mode']!='r' and $this->meta['mode']!='rb') {
 			OC_FileCache::put($this->path,array('encrypted'=>true,'size'=>$this->size),'');
 		}
 		return fclose($this->source);
diff --git a/apps/files_encryption/lib/proxy.php b/apps/files_encryption/lib/proxy.php
index f25e4a662f6ea568bcc6dc245dcef240780041f1..f61cd1e3773dc53de90f2c7471d579218c88619b 100644
--- a/apps/files_encryption/lib/proxy.php
+++ b/apps/files_encryption/lib/proxy.php
@@ -28,27 +28,27 @@
 class OC_FileProxy_Encryption extends OC_FileProxy{
 	private static $blackList=null; //mimetypes blacklisted from encryption
 	private static $enableEncryption=null;
-	
+
 	/**
 	 * check if a file should be encrypted during write
 	 * @param string $path
 	 * @return bool
 	 */
-	private static function shouldEncrypt($path){
-		if(is_null(self::$enableEncryption)){
+	private static function shouldEncrypt($path) {
+		if(is_null(self::$enableEncryption)) {
 			self::$enableEncryption=(OCP\Config::getAppValue('files_encryption','enable_encryption','true')=='true');
 		}
-		if(!self::$enableEncryption){
+		if(!self::$enableEncryption) {
 			return false;
 		}
-		if(is_null(self::$blackList)){
+		if(is_null(self::$blackList)) {
 			self::$blackList=explode(',',OCP\Config::getAppValue('files_encryption','type_blacklist','jpg,png,jpeg,avi,mpg,mpeg,mkv,mp3,oga,ogv,ogg'));
 		}
-		if(self::isEncrypted($path)){
+		if(self::isEncrypted($path)) {
 			return true;
 		}
 		$extension=substr($path,strrpos($path,'.')+1);
-		if(array_search($extension,self::$blackList)===false){
+		if(array_search($extension,self::$blackList)===false) {
 			return true;
 		}
 	}
@@ -58,13 +58,13 @@ class OC_FileProxy_Encryption extends OC_FileProxy{
 	 * @param string $path
 	 * @return bool
 	 */
-	private static function isEncrypted($path){
+	private static function isEncrypted($path) {
 		$metadata=OC_FileCache_Cached::get($path,'');
 		return isset($metadata['encrypted']) and (bool)$metadata['encrypted'];
 	}
-	
-	public function preFile_put_contents($path,&$data){
-		if(self::shouldEncrypt($path)){
+
+	public function preFile_put_contents($path,&$data) {
+		if(self::shouldEncrypt($path)) {
 			if (!is_resource($data)) {//stream put contents should have been converter to fopen
 				$size=strlen($data);
 				$data=OC_Crypt::blockEncrypt($data);
@@ -72,25 +72,25 @@ class OC_FileProxy_Encryption extends OC_FileProxy{
 			}
 		}
 	}
-	
-	public function postFile_get_contents($path,$data){
-		if(self::isEncrypted($path)){
+
+	public function postFile_get_contents($path,$data) {
+		if(self::isEncrypted($path)) {
 			$cached=OC_FileCache_Cached::get($path,'');
 			$data=OC_Crypt::blockDecrypt($data,'',$cached['size']);
 		}
 		return $data;
 	}
-	
-	public function postFopen($path,&$result){
-		if(!$result){
+
+	public function postFopen($path,&$result) {
+		if(!$result) {
 			return $result;
 		}
 		$meta=stream_get_meta_data($result);
-		if(self::isEncrypted($path)){
+		if(self::isEncrypted($path)) {
 			fclose($result);
 			$result=fopen('crypt://'.$path,$meta['mode']);
-		}elseif(self::shouldEncrypt($path) and $meta['mode']!='r' and $meta['mode']!='rb'){
-			if(OC_Filesystem::file_exists($path) and OC_Filesystem::filesize($path)>0){
+		}elseif(self::shouldEncrypt($path) and $meta['mode']!='r' and $meta['mode']!='rb') {
+			if(OC_Filesystem::file_exists($path) and OC_Filesystem::filesize($path)>0) {
 				//first encrypt the target file so we don't end up with a half encrypted file
 				OCP\Util::writeLog('files_encryption','Decrypting '.$path.' before writing',OCP\Util::DEBUG);
 				$tmp=fopen('php://temp');
@@ -104,23 +104,23 @@ class OC_FileProxy_Encryption extends OC_FileProxy{
 		return $result;
 	}
 
-	public function postGetMimeType($path,$mime){
-		if(self::isEncrypted($path)){
+	public function postGetMimeType($path,$mime) {
+		if(self::isEncrypted($path)) {
 			$mime=OCP\Files::getMimeType('crypt://'.$path,'w');
 		}
 		return $mime;
 	}
 
-	public function postStat($path,$data){
-		if(self::isEncrypted($path)){
+	public function postStat($path,$data) {
+		if(self::isEncrypted($path)) {
 			$cached=OC_FileCache_Cached::get($path,'');
 			$data['size']=$cached['size'];
 		}
 		return $data;
 	}
 
-	public function postFileSize($path,$size){
-		if(self::isEncrypted($path)){
+	public function postFileSize($path,$size) {
+		if(self::isEncrypted($path)) {
 			$cached=OC_FileCache_Cached::get($path,'');
 			return  $cached['size'];
 		}else{
diff --git a/apps/files_encryption/templates/settings.php b/apps/files_encryption/templates/settings.php
index 79780d694cfdeea3cfaa5e7446329d81dade18d0..55e8cf1542cfb9213d7fc5133fa302e854ac877c 100644
--- a/apps/files_encryption/templates/settings.php
+++ b/apps/files_encryption/templates/settings.php
@@ -7,6 +7,6 @@
 				<option selected="selected" value="<?php echo $type;?>"><?php echo $type;?></option>
 			<?php endforeach;?>
 		</select>
-		<input type='checkbox' id='enable_encryption' <?php if($_['encryption_enabled']){echo 'checked="checked"';} ?>></input><label for='enable_encryption'><?php echo $l->t('Enable Encryption')?></label>
+		<input type='checkbox' id='enable_encryption' <?php if($_['encryption_enabled']) {echo 'checked="checked"';} ?>></input><label for='enable_encryption'><?php echo $l->t('Enable Encryption')?></label>
 	</fieldset>
 </form>
diff --git a/apps/files_encryption/tests/encryption.php b/apps/files_encryption/tests/encryption.php
index 286770a69f51b5abcb882ac1e7cf6b4d5e94edae..89397f6ef2c066f2856470cc6a20fd048e17a8b0 100644
--- a/apps/files_encryption/tests/encryption.php
+++ b/apps/files_encryption/tests/encryption.php
@@ -7,7 +7,7 @@
  */
 
 class Test_Encryption extends UnitTestCase {
-	function testEncryption(){
+	function testEncryption() {
 		$key=uniqid();
 		$file=OC::$SERVERROOT.'/3rdparty/MDB2.php';
 		$source=file_get_contents($file); //nice large text file
@@ -23,7 +23,7 @@ class Test_Encryption extends UnitTestCase {
 		$decrypted=OC_Crypt::decrypt($encrypted,$key);
 		$decrypted=rtrim($decrypted, "\0");
 		$this->assertEqual($decrypted,$chunk);
-		
+
 		$encrypted=OC_Crypt::blockEncrypt($source,$key);
 		$decrypted=OC_Crypt::blockDecrypt($encrypted,$key);
 		$this->assertNotEqual($encrypted,$source);
@@ -54,9 +54,9 @@ class Test_Encryption extends UnitTestCase {
 
 	}
 
-	function testBinary(){
+	function testBinary() {
 		$key=uniqid();
-	
+
 		$file=__DIR__.'/binary';
 		$source=file_get_contents($file); //binary file
 		$encrypted=OC_Crypt::encrypt($source,$key);
diff --git a/apps/files_encryption/tests/proxy.php b/apps/files_encryption/tests/proxy.php
index 5463836a209da9bffe2aec5b15478ced6c065b79..042011a6c87814157a89a4589216ec81d8562890 100644
--- a/apps/files_encryption/tests/proxy.php
+++ b/apps/files_encryption/tests/proxy.php
@@ -9,18 +9,18 @@
 class Test_CryptProxy extends UnitTestCase {
 	private $oldConfig;
 	private $oldKey;
-	
-	public function setUp(){
+
+	public function setUp() {
 		$user=OC_User::getUser();
 
 		$this->oldConfig=OCP\Config::getAppValue('files_encryption','enable_encryption','true');
 		OCP\Config::setAppValue('files_encryption','enable_encryption','true');
 		$this->oldKey=isset($_SESSION['enckey'])?$_SESSION['enckey']:null;
-	
-		
+
+
 		//set testing key
 		$_SESSION['enckey']=md5(time());
-	
+
 		//clear all proxies and hooks so we can do clean testing
 		OC_FileProxy::clearProxies();
 		OC_Hook::clear('OC_Filesystem');
@@ -40,23 +40,23 @@ class Test_CryptProxy extends UnitTestCase {
 		$rootView->mkdir('/'.$user.'/files');
 	}
 
-	public function tearDown(){
+	public function tearDown() {
 		OCP\Config::setAppValue('files_encryption','enable_encryption',$this->oldConfig);
-		if(!is_null($this->oldKey)){
+		if(!is_null($this->oldKey)) {
 			$_SESSION['enckey']=$this->oldKey;
 		}
 	}
 
-	public function testSimple(){
+	public function testSimple() {
 		$file=OC::$SERVERROOT.'/3rdparty/MDB2.php';
 		$original=file_get_contents($file);
 
 		OC_Filesystem::file_put_contents('/file',$original);
-		
+
 		OC_FileProxy::$enabled=false;
 		$stored=OC_Filesystem::file_get_contents('/file');
 		OC_FileProxy::$enabled=true;
-		
+
 		$fromFile=OC_Filesystem::file_get_contents('/file');
 		$this->assertNotEqual($original,$stored);
 		$this->assertEqual(strlen($original),strlen($fromFile));
@@ -64,7 +64,7 @@ class Test_CryptProxy extends UnitTestCase {
 
 	}
 
-	public function testView(){
+	public function testView() {
 		$file=OC::$SERVERROOT.'/3rdparty/MDB2.php';
 		$original=file_get_contents($file);
 
@@ -86,7 +86,7 @@ class Test_CryptProxy extends UnitTestCase {
 		$this->assertEqual($original,$fromFile);
 	}
 
-	public function testBinary(){
+	public function testBinary() {
 		$file=__DIR__.'/binary';
 		$original=file_get_contents($file);
 
diff --git a/apps/files_encryption/tests/stream.php b/apps/files_encryption/tests/stream.php
index d95ea792f729ba24b1c98e588bab8d291e011cb2..39b136207826000704625d693ccef2bf29e683ca 100644
--- a/apps/files_encryption/tests/stream.php
+++ b/apps/files_encryption/tests/stream.php
@@ -8,8 +8,8 @@
 
 class Test_CryptStream extends UnitTestCase {
 	private $tmpFiles=array();
-	
-	function testStream(){
+
+	function testStream() {
 		$stream=$this->getStream('test1','w',strlen('foobar'));
 		fwrite($stream,'foobar');
 		fclose($stream);
@@ -40,11 +40,11 @@ class Test_CryptStream extends UnitTestCase {
 	 * @param int size
 	 * @return resource
 	 */
-	function getStream($id,$mode,$size){
-		if($id===''){
+	function getStream($id,$mode,$size) {
+		if($id==='') {
 			$id=uniqid();
 		}
-		if(!isset($this->tmpFiles[$id])){
+		if(!isset($this->tmpFiles[$id])) {
 			$file=OCP\Files::tmpFile();
 			$this->tmpFiles[$id]=$file;
 		}else{
@@ -55,7 +55,7 @@ class Test_CryptStream extends UnitTestCase {
 		return fopen('crypt://streams/'.$id,$mode);
 	}
 
-	function testBinary(){
+	function testBinary() {
 		$file=__DIR__.'/binary';
 		$source=file_get_contents($file);
 
diff --git a/apps/files_external/ajax/addRootCertificate.php b/apps/files_external/ajax/addRootCertificate.php
index d28a7d24b2d951040bd2ad10582e12cc984ffb2a..a8719fc7a3d3454aaadd9b963ca7af03e1e0b5f0 100644
--- a/apps/files_external/ajax/addRootCertificate.php
+++ b/apps/files_external/ajax/addRootCertificate.php
@@ -14,7 +14,7 @@ $fh = fopen($to, 'r');
 $data = fread($fh, filesize($to));
 fclose($fh);
 if (!strpos($data, 'BEGIN CERTIFICATE')) {
-	$pem = chunk_split(base64_encode($data), 64, "\n");
+	$pem = chunk_split(base64_encode($data), 64, "\n");
 	$pem = "-----BEGIN CERTIFICATE-----\n".$pem."-----END CERTIFICATE-----\n";
 	$fh = fopen($to, 'w');
 	fwrite($fh, $pem);
@@ -25,4 +25,3 @@ OC_Mount_Config::createCertificateBundle();
 
 header("Location: settings/personal.php");
 exit;
-?>
\ No newline at end of file
diff --git a/apps/files_external/ajax/dropbox.php b/apps/files_external/ajax/dropbox.php
index 5f2ff17e6259bb6e7ec896d3a025f22d7257a824..f5923940dc90ddd055f5ed48190e29ae5c96793b 100644
--- a/apps/files_external/ajax/dropbox.php
+++ b/apps/files_external/ajax/dropbox.php
@@ -37,5 +37,3 @@ if (isset($_POST['app_key']) && isset($_POST['app_secret'])) {
 } else {
 	OCP\JSON::error(array('data' => array('message' => 'Please provide a valid Dropbox app key and secret.')));
 }
-
-?>
\ No newline at end of file
diff --git a/apps/files_external/ajax/google.php b/apps/files_external/ajax/google.php
index 23ecfc3708dc20498369d24f538e0ce373d20dbe..4cd01c06cc9d9f81c90e05bb014f91707cd5a55a 100644
--- a/apps/files_external/ajax/google.php
+++ b/apps/files_external/ajax/google.php
@@ -47,5 +47,3 @@ if (isset($_POST['step'])) {
 			break;
 	}
 }
-
-?>
\ No newline at end of file
diff --git a/apps/files_external/ajax/removeRootCertificate.php b/apps/files_external/ajax/removeRootCertificate.php
index f78f85b8fe4dfee31f95b8ad028b25aa0bc97fbe..9b78e180d9ea01596e8efff0c2223a74b1ac85e7 100644
--- a/apps/files_external/ajax/removeRootCertificate.php
+++ b/apps/files_external/ajax/removeRootCertificate.php
@@ -9,4 +9,3 @@ $cert = $_POST['cert'];
 $file = \OCP\Config::getSystemValue('datadirectory').$view->getAbsolutePath("").'uploads/'.$cert;
 unlink($file);
 OC_Mount_Config::createCertificateBundle();
-?>
\ No newline at end of file
diff --git a/apps/files_external/js/dropbox.js b/apps/files_external/js/dropbox.js
index 92194792f42743d3209f69bf0f3f442e2d51c087..dd3a1cb1858f4a566aa9079f55d69f1e8431d8aa 100644
--- a/apps/files_external/js/dropbox.js
+++ b/apps/files_external/js/dropbox.js
@@ -10,7 +10,7 @@ $(document).ready(function() {
 			var app_secret = $(this).find('.configuration [data-parameter="app_secret"]').val();
 			var config = $(this).find('.configuration');
 			if (app_key != '' && app_secret != '') {
-				var pos = window.location.search.indexOf('oauth_token') + 12
+				var pos = window.location.search.indexOf('oauth_token') + 12;
 				var token = $(this).find('.configuration [data-parameter="token"]');
 				if (pos != -1 && window.location.search.substr(pos, $(token).val().length) == $(token).val()) {
 					var token_secret = $(this).find('.configuration [data-parameter="token_secret"]');
@@ -73,7 +73,7 @@ $(document).ready(function() {
 				}
 			});
 		} else {
-			OC.dialogs.alert('Please provide a valid Dropbox app key and secret.', 'Error configuring Dropbox storage')
+			OC.dialogs.alert('Please provide a valid Dropbox app key and secret.', 'Error configuring Dropbox storage');
 		}
 	});
 
diff --git a/apps/files_external/js/settings.js b/apps/files_external/js/settings.js
index 23f02bbefcb4eec075671344dc5ac14350c3958a..89f346574e2d991e88e50247acd4bbc6fafc2320 100644
--- a/apps/files_external/js/settings.js
+++ b/apps/files_external/js/settings.js
@@ -66,11 +66,11 @@ OC.MountConfig={
 			return true;
 		}
 	}
-}
+};
 
 $(document).ready(function() {
 	$('.chzn-select').chosen();
-	
+
 	$('#selectBackend').live('change', function() {
 		var tr = $(this).parent().parent();
 		$('#externalStorage tbody').append($(tr).clone());
@@ -133,7 +133,7 @@ $(document).ready(function() {
 			}
 		}
 		return defaultMountPoint+append;
-	} 
+	}
 
 	$('#externalStorage td').live('change', function() {
 		OC.MountConfig.saveStorage($(this).parent());
@@ -179,4 +179,4 @@ $(document).ready(function() {
 		}
 	});
 
-});
\ No newline at end of file
+});
diff --git a/apps/files_external/l10n/cs_CZ.php b/apps/files_external/l10n/cs_CZ.php
index 8f11d7da11961d6ad99ed713e83cc4bba759de64..75899603349534285edded5fc8c9d6d6a336b778 100644
--- a/apps/files_external/l10n/cs_CZ.php
+++ b/apps/files_external/l10n/cs_CZ.php
@@ -1,13 +1,18 @@
 <?php $TRANSLATIONS = array(
 "External Storage" => "Externí úložiště",
 "Mount point" => "Přípojný bod",
-"Configuration" => "Konfigurace",
-"Options" => "Nastavení",
-"Add mount point" => "Přidat přípojný bod",
+"Backend" => "Podpůrná vrstva",
+"Configuration" => "Nastavení",
+"Options" => "Možnosti",
+"Applicable" => "Platný",
+"Add mount point" => "Přidat bod připojení",
+"None set" => "Nenastaveno",
 "All Users" => "Všichni uživatelé",
 "Groups" => "Skupiny",
 "Users" => "Uživatelé",
 "Delete" => "Smazat",
-"Enable User External Storage" => "Zapnout uživatelské externí úložiště",
-"Allow users to mount their own external storage" => "Povolit uživatelů připojit jejich vlastní externí úložiště"
+"SSL root certificates" => "Kořenové certifikáty SSL",
+"Import Root Certificate" => "Importovat kořenového certifikátu",
+"Enable User External Storage" => "Zapnout externí uživatelské úložiště",
+"Allow users to mount their own external storage" => "Povolit uživatelům připojení jejich vlastních externích úložišť"
 );
diff --git a/apps/files_external/l10n/es.php b/apps/files_external/l10n/es.php
index c1c605735fe87cf88762b2026179bce774bd4ca4..004c352c19971ea50e28bb1a46f491c0045b1f95 100644
--- a/apps/files_external/l10n/es.php
+++ b/apps/files_external/l10n/es.php
@@ -1,5 +1,6 @@
 <?php $TRANSLATIONS = array(
 "External Storage" => "Almacenamiento externo",
+"Mount point" => "Punto de montaje",
 "Backend" => "Motor",
 "Configuration" => "Configuración",
 "Options" => "Opciones",
@@ -9,5 +10,9 @@
 "All Users" => "Todos los usuarios",
 "Groups" => "Grupos",
 "Users" => "Usuarios",
-"Delete" => "Eliiminar"
+"Delete" => "Eliiminar",
+"SSL root certificates" => "Raíz de certificados SSL  ",
+"Import Root Certificate" => "Importar certificado raíz",
+"Enable User External Storage" => "Habilitar almacenamiento de usuario externo",
+"Allow users to mount their own external storage" => "Permitir a los usuarios montar su propio almacenamiento externo"
 );
diff --git a/apps/files_external/l10n/et_EE.php b/apps/files_external/l10n/et_EE.php
index a6907e775bccf5b740a2c3f689fd790203c44601..f47ebc936b54ef6fb25b178eb26be4e6ea36be02 100644
--- a/apps/files_external/l10n/et_EE.php
+++ b/apps/files_external/l10n/et_EE.php
@@ -1,12 +1,18 @@
 <?php $TRANSLATIONS = array(
 "External Storage" => "Väline salvestuskoht",
 "Mount point" => "Ühenduspunkt",
+"Backend" => "Admin",
 "Configuration" => "Seadistamine",
 "Options" => "Valikud",
+"Applicable" => "Rakendatav",
 "Add mount point" => "Lisa ühenduspunkt",
 "None set" => "Pole määratud",
 "All Users" => "Kõik kasutajad",
 "Groups" => "Grupid",
 "Users" => "Kasutajad",
-"Delete" => "Kustuta"
+"Delete" => "Kustuta",
+"SSL root certificates" => "SSL root sertifikaadid",
+"Import Root Certificate" => "Impordi root sertifikaadid",
+"Enable User External Storage" => "Luba kasutajatele väline salvestamine",
+"Allow users to mount their own external storage" => "Luba kasutajatel ühendada külge nende enda välised salvestusseadmed"
 );
diff --git a/apps/files_external/l10n/eu.php b/apps/files_external/l10n/eu.php
index a594cdff1f270cc08e032bfddbd95e7c3b8e7ab4..6299390c266ffb0903289f1cb2a819788691f384 100644
--- a/apps/files_external/l10n/eu.php
+++ b/apps/files_external/l10n/eu.php
@@ -1,8 +1,10 @@
 <?php $TRANSLATIONS = array(
 "External Storage" => "Kanpoko Biltegiratzea",
 "Mount point" => "Montatze puntua",
+"Backend" => "Motorra",
 "Configuration" => "Konfigurazioa",
 "Options" => "Aukerak",
+"Applicable" => "Aplikagarria",
 "Add mount point" => "Gehitu muntatze puntua",
 "None set" => "Ezarri gabe",
 "All Users" => "Erabiltzaile guztiak",
diff --git a/apps/files_external/l10n/fi_FI.php b/apps/files_external/l10n/fi_FI.php
index 7dca49791e48d13424e3852083dd6ea1a5480316..cea671368ed36f70fc196c17bcf4f4df466f22d6 100644
--- a/apps/files_external/l10n/fi_FI.php
+++ b/apps/files_external/l10n/fi_FI.php
@@ -4,6 +4,7 @@
 "Backend" => "Taustaosa",
 "Configuration" => "Asetukset",
 "Options" => "Valinnat",
+"Applicable" => "Sovellettavissa",
 "Add mount point" => "Lisää liitospiste",
 "None set" => "Ei asetettu",
 "All Users" => "Kaikki käyttäjät",
@@ -12,5 +13,6 @@
 "Delete" => "Poista",
 "SSL root certificates" => "SSL-juurivarmenteet",
 "Import Root Certificate" => "Tuo juurivarmenne",
+"Enable User External Storage" => "Ota käyttöön ulkopuoliset tallennuspaikat",
 "Allow users to mount their own external storage" => "Salli käyttäjien liittää omia erillisiä tallennusvälineitä"
 );
diff --git a/apps/files_external/l10n/he.php b/apps/files_external/l10n/he.php
new file mode 100644
index 0000000000000000000000000000000000000000..edfa9aa85f0d19d5ff66a511c4ce95b9036ec45b
--- /dev/null
+++ b/apps/files_external/l10n/he.php
@@ -0,0 +1,13 @@
+<?php $TRANSLATIONS = array(
+"External Storage" => "אחסון חיצוני",
+"Configuration" => "הגדרות",
+"Options" => "אפשרויות",
+"All Users" => "כל המשתמשים",
+"Groups" => "קבוצות",
+"Users" => "משתמשים",
+"Delete" => "מחיקה",
+"SSL root certificates" => "שורש אישורי אבטחת SSL ",
+"Import Root Certificate" => "ייבוא אישור אבטחת שורש",
+"Enable User External Storage" => "הפעלת אחסון חיצוני למשתמשים",
+"Allow users to mount their own external storage" => "יאפשר למשתמשים לעגן את האחסון החיצוני שלהם"
+);
diff --git a/apps/files_external/l10n/it.php b/apps/files_external/l10n/it.php
index 927499b01722dd82518fe28534d6f4bf258361f7..5c5d32b214ce233b1931549935af7d9506ca5cad 100644
--- a/apps/files_external/l10n/it.php
+++ b/apps/files_external/l10n/it.php
@@ -11,8 +11,8 @@
 "Groups" => "Gruppi",
 "Users" => "Utenti",
 "Delete" => "Elimina",
-"SSL root certificates" => "Certificato principale per SSL",
-"Import Root Certificate" => "Importa certificato principale",
+"SSL root certificates" => "Certificati SSL radice",
+"Import Root Certificate" => "Importa certificato radice",
 "Enable User External Storage" => "Abilita la memoria esterna dell'utente",
-"Allow users to mount their own external storage" => "Consente agli utenti di montare la propria memoria esterna"
+"Allow users to mount their own external storage" => "Consenti agli utenti di montare la propria memoria esterna"
 );
diff --git a/apps/files_external/l10n/sk_SK.php b/apps/files_external/l10n/sk_SK.php
new file mode 100644
index 0000000000000000000000000000000000000000..24087ea7febe395b496af050a845df85a2c875c0
--- /dev/null
+++ b/apps/files_external/l10n/sk_SK.php
@@ -0,0 +1,18 @@
+<?php $TRANSLATIONS = array(
+"External Storage" => "Externé úložisko",
+"Mount point" => "Prípojný bod",
+"Backend" => "Backend",
+"Configuration" => "Nastavenia",
+"Options" => "Možnosti",
+"Applicable" => "Aplikovateľné",
+"Add mount point" => "Pridať prípojný bod",
+"None set" => "Žiadne nastavené",
+"All Users" => "Všetci užívatelia",
+"Groups" => "Skupiny",
+"Users" => "Užívatelia",
+"Delete" => "Odstrániť",
+"SSL root certificates" => "Koreňové SSL certifikáty",
+"Import Root Certificate" => "Importovať koreňový certifikát",
+"Enable User External Storage" => "Povoliť externé úložisko",
+"Allow users to mount their own external storage" => "Povoliť užívateľom pripojiť ich vlastné externé úložisko"
+);
diff --git a/apps/files_external/l10n/uk.php b/apps/files_external/l10n/uk.php
new file mode 100644
index 0000000000000000000000000000000000000000..79920b9014abf3fd552ce518237668a7f40d0ce0
--- /dev/null
+++ b/apps/files_external/l10n/uk.php
@@ -0,0 +1,5 @@
+<?php $TRANSLATIONS = array(
+"Groups" => "Групи",
+"Users" => "Користувачі",
+"Delete" => "Видалити"
+);
diff --git a/apps/files_external/l10n/vi.php b/apps/files_external/l10n/vi.php
new file mode 100644
index 0000000000000000000000000000000000000000..35312329da1fa7dd168a9f31ce8c51c8d9a2dd79
--- /dev/null
+++ b/apps/files_external/l10n/vi.php
@@ -0,0 +1,18 @@
+<?php $TRANSLATIONS = array(
+"External Storage" => "Lưu trữ ngoài",
+"Mount point" => "Điểm gắn",
+"Backend" => "phụ trợ",
+"Configuration" => "Cấu hình",
+"Options" => "Tùy chọn",
+"Applicable" => "Áp dụng",
+"Add mount point" => "Thêm điểm lắp",
+"None set" => "không",
+"All Users" => "Tất cả người dùng",
+"Groups" => "Nhóm",
+"Users" => "Người dùng",
+"Delete" => "Xóa",
+"SSL root certificates" => "Chứng chỉ SSL root",
+"Import Root Certificate" => "Nhập Root Certificate",
+"Enable User External Storage" => "Kích hoạt tính năng lưu trữ ngoài",
+"Allow users to mount their own external storage" => "Cho phép người dùng kết nối với lưu trữ riêng bên ngoài của họ"
+);
diff --git a/apps/files_external/lib/amazons3.php b/apps/files_external/lib/amazons3.php
index 3c2e3330175fa3dcb1aaca1d2cdd43dfeb121eb4..41ec3c70b45ed00471c4b5560846d104da11d72e 100644
--- a/apps/files_external/lib/amazons3.php
+++ b/apps/files_external/lib/amazons3.php
@@ -29,7 +29,7 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common {
 	private $objects = array();
 
 	private static $tempFiles = array();
-	
+
 	// TODO options: storage class, encryption server side, encrypt before upload?
 
 	public function __construct($params) {
@@ -216,7 +216,7 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common {
 	}
 
 	public function free_space($path) {
-		// Infinite? 
+		// Infinite?
 		return false;
 	}
 
@@ -232,5 +232,3 @@ class OC_Filestorage_AmazonS3 extends OC_Filestorage_Common {
 	}
 
 }
-
-?>
\ No newline at end of file
diff --git a/apps/files_external/lib/config.php b/apps/files_external/lib/config.php
index f1bc16e25378cfb8d9142e18566de064bd61eb40..eec31ec2ef9b158e740503f975eb9d542b0b6cce 100755
--- a/apps/files_external/lib/config.php
+++ b/apps/files_external/lib/config.php
@@ -1,283 +1,281 @@
-<?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/>.
-*/
-
-/**
-* Class to configure the config/mount.php and data/$user/mount.php files
-*/
-class OC_Mount_Config {
-
-	const MOUNT_TYPE_GLOBAL = 'global';
-	const MOUNT_TYPE_GROUP = 'group';
-	const MOUNT_TYPE_USER = 'user';
-
-	/**
-	* Get details on each of the external storage backends, used for the mount config UI
-	* If a custom UI is needed, add the key 'custom' and a javascript file with that name will be loaded
-	* If the configuration parameter should be secret, add a '*' to the beginning of the value
-	* If the configuration parameter is a boolean, add a '!' to the beginning of the value
-	* If the configuration parameter is optional, add a '&' to the beginning of the value
-	* If the configuration parameter is hidden, add a '#' to the begining of the value
-	* @return array
-	*/
-	public static function getBackends() {
-		return array(
-			'OC_Filestorage_Local' => array('backend' => 'Local', 'configuration' => array('datadir' => 'Location')),
-			'OC_Filestorage_AmazonS3' => array('backend' => 'Amazon S3', 'configuration' => array('key' => 'Key', 'secret' => '*Secret', 'bucket' => 'Bucket')),
-			'OC_Filestorage_Dropbox' => array('backend' => 'Dropbox', 'configuration' => array('configured' => '#configured','app_key' => 'App key', 'app_secret' => 'App secret', 'token' => '#token', 'token_secret' => '#token_secret'), 'custom' => 'dropbox'),
-			'OC_Filestorage_FTP' => array('backend' => 'FTP', 'configuration' => array('host' => 'URL', 'user' => 'Username', 'password' => '*Password', 'root' => '&Root', 'secure' => '!Secure ftps://')),
-			'OC_Filestorage_Google' => array('backend' => 'Google Drive', 'configuration' => array('configured' => '#configured', 'token' => '#token', 'token_secret' => '#token secret'), 'custom' => 'google'),
-			'OC_Filestorage_SWIFT' => array('backend' => 'OpenStack Swift', 'configuration' => array('host' => 'URL', 'user' => 'Username', 'token' => '*Token', 'root' => '&Root', 'secure' => '!Secure ftps://')),
-			'OC_Filestorage_SMB' => array('backend' => 'SMB', 'configuration' => array('host' => 'URL', 'user' => 'Username', 'password' => '*Password', 'share' => 'Share', 'root' => '&Root')),
-			'OC_Filestorage_DAV' => array('backend' => 'WebDAV', 'configuration' => array('host' => 'URL', 'user' => 'Username', 'password' => '*Password', 'root' => '&Root', 'secure' => '!Secure https://'))
-		);
-	}
-
-	/**
-	* Get the system mount points
-	* The returned array is not in the same format as getUserMountPoints()
-	* @return array
-	*/
-	public static function getSystemMountPoints() {
-		$mountPoints = self::readData(false);
-		$backends = self::getBackends();
-		$system = array();
-		if (isset($mountPoints[self::MOUNT_TYPE_GROUP])) {
-			foreach ($mountPoints[self::MOUNT_TYPE_GROUP] as $group => $mounts) {
-				foreach ($mounts as $mountPoint => $mount) {
-					// Remove '/$user/files/' from mount point
-					$mountPoint = substr($mountPoint, 13);
-					// Merge the mount point into the current mount points
-					if (isset($system[$mountPoint]) && $system[$mountPoint]['configuration'] == $mount['options']) {
-						$system[$mountPoint]['applicable']['groups'] = array_merge($system[$mountPoint]['applicable']['groups'], array($group));
-					} else {
-						$system[$mountPoint] = array('class' => $mount['class'], 'backend' => $backends[$mount['class']]['backend'], 'configuration' => $mount['options'], 'applicable' => array('groups' => array($group), 'users' => array()));
-					}
-				}
-			}
-		}
-		if (isset($mountPoints[self::MOUNT_TYPE_USER])) {
-			foreach ($mountPoints[self::MOUNT_TYPE_USER] as $user => $mounts) {
-				foreach ($mounts as $mountPoint => $mount) {
-					// Remove '/$user/files/' from mount point
-					$mountPoint = substr($mountPoint, 13);
-					// Merge the mount point into the current mount points
-					if (isset($system[$mountPoint]) && $system[$mountPoint]['configuration'] == $mount['options']) {
-						$system[$mountPoint]['applicable']['users'] = array_merge($system[$mountPoint]['applicable']['users'], array($user));
-					} else {
-						$system[$mountPoint] = array('class' => $mount['class'], 'backend' => $backends[$mount['class']]['backend'], 'configuration' => $mount['options'], 'applicable' => array('groups' => array(), 'users' => array($user)));
-					}
-				}
-			}
-		}
-		return $system;
-	}
-
-	/**
-	* Get the personal mount points of the current user
-	* The returned array is not in the same format as getUserMountPoints()
-	* @return array
-	*/
-	public static function getPersonalMountPoints() {
-		$mountPoints = self::readData(true);
-		$backends = self::getBackends();
-		$uid = OCP\User::getUser();
-		$personal = array();
-		if (isset($mountPoints[self::MOUNT_TYPE_USER][$uid])) {
-			foreach ($mountPoints[self::MOUNT_TYPE_USER][$uid] as $mountPoint => $mount) {
-				// Remove '/uid/files/' from mount point
-				$personal[substr($mountPoint, strlen($uid) + 8)] = array('class' => $mount['class'], 'backend' => $backends[$mount['class']]['backend'], 'configuration' => $mount['options']);
-			}
-		}
-		return $personal;
-	}
-
-	
-	/**
-	* Add a mount point to the filesystem
-	* @param string Mount point
-	* @param string Backend class
-	* @param array Backend parameters for the class
-	* @param string MOUNT_TYPE_GROUP | MOUNT_TYPE_USER
-	* @param string User or group to apply mount to
-	* @param bool Personal or system mount point i.e. is this being called from the personal or admin page
-	* @return bool
-	*/
-	public static function addMountPoint($mountPoint, $class, $classOptions, $mountType, $applicable, $isPersonal = false) {
-		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') {
-				return false;
-			}
-			$mountPoint = '/'.$applicable.'/files/'.ltrim($mountPoint, '/');
-		} else {
-			$mountPoint = '/$user/files/'.ltrim($mountPoint, '/');
-		}
-		$mount = array($applicable => array($mountPoint => array('class' => $class, 'options' => $classOptions)));
-		$mountPoints = self::readData($isPersonal);
-		// Merge the new mount point into the current mount points
-		if (isset($mountPoints[$mountType])) {
-			if (isset($mountPoints[$mountType][$applicable])) {
-				$mountPoints[$mountType][$applicable] = array_merge($mountPoints[$mountType][$applicable], $mount[$applicable]);
-			} else {
-				$mountPoints[$mountType] = array_merge($mountPoints[$mountType], $mount);
-			}
-		} else {
-			$mountPoints[$mountType] = $mount;
-		}
-		self::writeData($isPersonal, $mountPoints);
-		return true;
-	}
-
-	/**
-	*
-	* @param string Mount point
-	* @param string MOUNT_TYPE_GROUP | MOUNT_TYPE_USER
-	* @param string User or group to remove mount from
-	* @param bool Personal or system mount point
-	* @return bool
-	*/
-	public static function removeMountPoint($mountPoint, $mountType, $applicable, $isPersonal = false) {
-		// Verify that the mount point applies for the current user
-		if ($isPersonal) {
-			if ($applicable != OCP\User::getUser()) {
-				return false;
-			}
-			$mountPoint = '/'.$applicable.'/files/'.ltrim($mountPoint, '/');
-		} else {
-			$mountPoint = '/$user/files/'.ltrim($mountPoint, '/');
-		}
-		$mountPoints = self::readData($isPersonal);
-		// Remove mount point
-		unset($mountPoints[$mountType][$applicable][$mountPoint]);
-		// Unset parent arrays if empty
-		if (empty($mountPoints[$mountType][$applicable])) {
-			unset($mountPoints[$mountType][$applicable]);
-			if (empty($mountPoints[$mountType])) {
-				unset($mountPoints[$mountType]);
-			}
-		}
-		self::writeData($isPersonal, $mountPoints);
-		return true;
-	}
-
-	/**
-	* Read the mount points in the config file into an array
-	* @param bool Personal or system config file
-	* @return array
-	*/
-	private static function readData($isPersonal) {
-		if ($isPersonal) {
-			$file = OC::$SERVERROOT.'/data/'.OCP\User::getUser().'/mount.php';
-		} else {
-			$file = OC::$SERVERROOT.'/config/mount.php';
-		}
-		if (is_file($file)) {
-			$mountPoints = include($file);
-			if (is_array($mountPoints)) {
-				return $mountPoints;
-			}
-		}
-		return array();
-	}
-
-	/**
-	* Write the mount points to the config file
-	* @param bool Personal or system config file
-	* @param array Mount points
-	*/
-	private static function writeData($isPersonal, $data) {
-		if ($isPersonal) {
-			$file = OC::$SERVERROOT.'/data/'.OCP\User::getUser().'/mount.php';
-		} else {
-			$file = OC::$SERVERROOT.'/config/mount.php';
-		}
-		$content = "<?php return array (\n";
-		if (isset($data[self::MOUNT_TYPE_GROUP])) {
-			$content .= "\t'group' => array (\n";
-			foreach ($data[self::MOUNT_TYPE_GROUP] as $group => $mounts) {
-				$content .= "\t\t'".$group."' => array (\n";
-				foreach ($mounts as $mountPoint => $mount) {
-					$content .= "\t\t\t'".$mountPoint."' => ".str_replace("\n", '', var_export($mount, true)).",\n";
-					
-				}
-				$content .= "\t\t),\n";
-			}
-			$content .= "\t),\n";
-		}
-		if (isset($data[self::MOUNT_TYPE_USER])) {
-			$content .= "\t'user' => array (\n";
-			foreach ($data[self::MOUNT_TYPE_USER] as $user => $mounts) {
-				$content .= "\t\t'".$user."' => array (\n";
-				foreach ($mounts as $mountPoint => $mount) {
-					$content .= "\t\t\t'".$mountPoint."' => ".str_replace("\n", '', var_export($mount, true)).",\n";
-				}
-				$content .= "\t\t),\n";
-			}
-			$content .= "\t),\n";
-		}
-		$content .= ");\n?>";
-		@file_put_contents($file, $content);
-	}
-	
-	/**
-	 * Returns all user uploaded ssl root certificates
-	 * @return array
-	 */
-	public static function getCertificates() {
-		$view = \OCP\Files::getStorage('files_external');
-		$path=\OCP\Config::getSystemValue('datadirectory').$view->getAbsolutePath("").'uploads/';
-		if (!is_dir($path)) mkdir($path);
-		$result = array();
-		$handle = opendir($path);
-		while (false !== ($file = readdir($handle))) {
-			if($file != '.' && $file != '..') $result[] = $file;
-		}
-		return $result;
-	}
-	
-	/**
-	 * creates certificate bundle
-	 */
-	public static function createCertificateBundle() {
-		$view = \OCP\Files::getStorage("files_external");
-		$path = \OCP\Config::getSystemValue('datadirectory').$view->getAbsolutePath("");
-		
-		$certs = OC_Mount_Config::getCertificates();
-		$fh_certs = fopen($path."/rootcerts.crt", 'w');
-		foreach ($certs as $cert) {
-			$file=$path.'/uploads/'.$cert;
-			$fh = fopen($file, "r");
-			$data = fread($fh, filesize($file));
-			fclose($fh);
-			if (strpos($data, 'BEGIN CERTIFICATE')) {
-				fwrite($fh_certs, $data);
-			}
-		}
-		
-		fclose($fh_certs);
-		
-		return true;
-	} 
-
-}
-
-?>
\ No newline at end of file
+<?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/>.
+*/
+
+/**
+* Class to configure the config/mount.php and data/$user/mount.php files
+*/
+class OC_Mount_Config {
+
+	const MOUNT_TYPE_GLOBAL = 'global';
+	const MOUNT_TYPE_GROUP = 'group';
+	const MOUNT_TYPE_USER = 'user';
+
+	/**
+	* Get details on each of the external storage backends, used for the mount config UI
+	* If a custom UI is needed, add the key 'custom' and a javascript file with that name will be loaded
+	* If the configuration parameter should be secret, add a '*' to the beginning of the value
+	* If the configuration parameter is a boolean, add a '!' to the beginning of the value
+	* If the configuration parameter is optional, add a '&' to the beginning of the value
+	* If the configuration parameter is hidden, add a '#' to the begining of the value
+	* @return array
+	*/
+	public static function getBackends() {
+		return array(
+			'OC_Filestorage_Local' => array('backend' => 'Local', 'configuration' => array('datadir' => 'Location')),
+			'OC_Filestorage_AmazonS3' => array('backend' => 'Amazon S3', 'configuration' => array('key' => 'Key', 'secret' => '*Secret', 'bucket' => 'Bucket')),
+			'OC_Filestorage_Dropbox' => array('backend' => 'Dropbox', 'configuration' => array('configured' => '#configured','app_key' => 'App key', 'app_secret' => 'App secret', 'token' => '#token', 'token_secret' => '#token_secret'), 'custom' => 'dropbox'),
+			'OC_Filestorage_FTP' => array('backend' => 'FTP', 'configuration' => array('host' => 'URL', 'user' => 'Username', 'password' => '*Password', 'root' => '&Root', 'secure' => '!Secure ftps://')),
+			'OC_Filestorage_Google' => array('backend' => 'Google Drive', 'configuration' => array('configured' => '#configured', 'token' => '#token', 'token_secret' => '#token secret'), 'custom' => 'google'),
+			'OC_Filestorage_SWIFT' => array('backend' => 'OpenStack Swift', 'configuration' => array('host' => 'URL', 'user' => 'Username', 'token' => '*Token', 'root' => '&Root', 'secure' => '!Secure ftps://')),
+			'OC_Filestorage_SMB' => array('backend' => 'SMB', 'configuration' => array('host' => 'URL', 'user' => 'Username', 'password' => '*Password', 'share' => 'Share', 'root' => '&Root')),
+			'OC_Filestorage_DAV' => array('backend' => 'WebDAV', 'configuration' => array('host' => 'URL', 'user' => 'Username', 'password' => '*Password', 'root' => '&Root', 'secure' => '!Secure https://'))
+		);
+	}
+
+	/**
+	* Get the system mount points
+	* The returned array is not in the same format as getUserMountPoints()
+	* @return array
+	*/
+	public static function getSystemMountPoints() {
+		$mountPoints = self::readData(false);
+		$backends = self::getBackends();
+		$system = array();
+		if (isset($mountPoints[self::MOUNT_TYPE_GROUP])) {
+			foreach ($mountPoints[self::MOUNT_TYPE_GROUP] as $group => $mounts) {
+				foreach ($mounts as $mountPoint => $mount) {
+					// Remove '/$user/files/' from mount point
+					$mountPoint = substr($mountPoint, 13);
+					// Merge the mount point into the current mount points
+					if (isset($system[$mountPoint]) && $system[$mountPoint]['configuration'] == $mount['options']) {
+						$system[$mountPoint]['applicable']['groups'] = array_merge($system[$mountPoint]['applicable']['groups'], array($group));
+					} else {
+						$system[$mountPoint] = array('class' => $mount['class'], 'backend' => $backends[$mount['class']]['backend'], 'configuration' => $mount['options'], 'applicable' => array('groups' => array($group), 'users' => array()));
+					}
+				}
+			}
+		}
+		if (isset($mountPoints[self::MOUNT_TYPE_USER])) {
+			foreach ($mountPoints[self::MOUNT_TYPE_USER] as $user => $mounts) {
+				foreach ($mounts as $mountPoint => $mount) {
+					// Remove '/$user/files/' from mount point
+					$mountPoint = substr($mountPoint, 13);
+					// Merge the mount point into the current mount points
+					if (isset($system[$mountPoint]) && $system[$mountPoint]['configuration'] == $mount['options']) {
+						$system[$mountPoint]['applicable']['users'] = array_merge($system[$mountPoint]['applicable']['users'], array($user));
+					} else {
+						$system[$mountPoint] = array('class' => $mount['class'], 'backend' => $backends[$mount['class']]['backend'], 'configuration' => $mount['options'], 'applicable' => array('groups' => array(), 'users' => array($user)));
+					}
+				}
+			}
+		}
+		return $system;
+	}
+
+	/**
+	* Get the personal mount points of the current user
+	* The returned array is not in the same format as getUserMountPoints()
+	* @return array
+	*/
+	public static function getPersonalMountPoints() {
+		$mountPoints = self::readData(true);
+		$backends = self::getBackends();
+		$uid = OCP\User::getUser();
+		$personal = array();
+		if (isset($mountPoints[self::MOUNT_TYPE_USER][$uid])) {
+			foreach ($mountPoints[self::MOUNT_TYPE_USER][$uid] as $mountPoint => $mount) {
+				// Remove '/uid/files/' from mount point
+				$personal[substr($mountPoint, strlen($uid) + 8)] = array('class' => $mount['class'], 'backend' => $backends[$mount['class']]['backend'], 'configuration' => $mount['options']);
+			}
+		}
+		return $personal;
+	}
+
+
+	/**
+	* Add a mount point to the filesystem
+	* @param string Mount point
+	* @param string Backend class
+	* @param array Backend parameters for the class
+	* @param string MOUNT_TYPE_GROUP | MOUNT_TYPE_USER
+	* @param string User or group to apply mount to
+	* @param bool Personal or system mount point i.e. is this being called from the personal or admin page
+	* @return bool
+	*/
+	public static function addMountPoint($mountPoint, $class, $classOptions, $mountType, $applicable, $isPersonal = false) {
+		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') {
+				return false;
+			}
+			$mountPoint = '/'.$applicable.'/files/'.ltrim($mountPoint, '/');
+		} else {
+			$mountPoint = '/$user/files/'.ltrim($mountPoint, '/');
+		}
+		$mount = array($applicable => array($mountPoint => array('class' => $class, 'options' => $classOptions)));
+		$mountPoints = self::readData($isPersonal);
+		// Merge the new mount point into the current mount points
+		if (isset($mountPoints[$mountType])) {
+			if (isset($mountPoints[$mountType][$applicable])) {
+				$mountPoints[$mountType][$applicable] = array_merge($mountPoints[$mountType][$applicable], $mount[$applicable]);
+			} else {
+				$mountPoints[$mountType] = array_merge($mountPoints[$mountType], $mount);
+			}
+		} else {
+			$mountPoints[$mountType] = $mount;
+		}
+		self::writeData($isPersonal, $mountPoints);
+		return true;
+	}
+
+	/**
+	*
+	* @param string Mount point
+	* @param string MOUNT_TYPE_GROUP | MOUNT_TYPE_USER
+	* @param string User or group to remove mount from
+	* @param bool Personal or system mount point
+	* @return bool
+	*/
+	public static function removeMountPoint($mountPoint, $mountType, $applicable, $isPersonal = false) {
+		// Verify that the mount point applies for the current user
+		if ($isPersonal) {
+			if ($applicable != OCP\User::getUser()) {
+				return false;
+			}
+			$mountPoint = '/'.$applicable.'/files/'.ltrim($mountPoint, '/');
+		} else {
+			$mountPoint = '/$user/files/'.ltrim($mountPoint, '/');
+		}
+		$mountPoints = self::readData($isPersonal);
+		// Remove mount point
+		unset($mountPoints[$mountType][$applicable][$mountPoint]);
+		// Unset parent arrays if empty
+		if (empty($mountPoints[$mountType][$applicable])) {
+			unset($mountPoints[$mountType][$applicable]);
+			if (empty($mountPoints[$mountType])) {
+				unset($mountPoints[$mountType]);
+			}
+		}
+		self::writeData($isPersonal, $mountPoints);
+		return true;
+	}
+
+	/**
+	* Read the mount points in the config file into an array
+	* @param bool Personal or system config file
+	* @return array
+	*/
+	private static function readData($isPersonal) {
+		if ($isPersonal) {
+			$file = OC_User::getHome(OCP\User::getUser()).'/mount.php';
+		} else {
+			$file = OC::$SERVERROOT.'/config/mount.php';
+		}
+		if (is_file($file)) {
+			$mountPoints = include($file);
+			if (is_array($mountPoints)) {
+				return $mountPoints;
+			}
+		}
+		return array();
+	}
+
+	/**
+	* Write the mount points to the config file
+	* @param bool Personal or system config file
+	* @param array Mount points
+	*/
+	private static function writeData($isPersonal, $data) {
+		if ($isPersonal) {
+			$file = OC_User::getHome(OCP\User::getUser()).'/mount.php';
+		} else {
+			$file = OC::$SERVERROOT.'/config/mount.php';
+		}
+		$content = "<?php return array (\n";
+		if (isset($data[self::MOUNT_TYPE_GROUP])) {
+			$content .= "\t'group' => array (\n";
+			foreach ($data[self::MOUNT_TYPE_GROUP] as $group => $mounts) {
+				$content .= "\t\t'".$group."' => array (\n";
+				foreach ($mounts as $mountPoint => $mount) {
+					$content .= "\t\t\t'".$mountPoint."' => ".str_replace("\n", '', var_export($mount, true)).",\n";
+
+				}
+				$content .= "\t\t),\n";
+			}
+			$content .= "\t),\n";
+		}
+		if (isset($data[self::MOUNT_TYPE_USER])) {
+			$content .= "\t'user' => array (\n";
+			foreach ($data[self::MOUNT_TYPE_USER] as $user => $mounts) {
+				$content .= "\t\t'".$user."' => array (\n";
+				foreach ($mounts as $mountPoint => $mount) {
+					$content .= "\t\t\t'".$mountPoint."' => ".str_replace("\n", '', var_export($mount, true)).",\n";
+				}
+				$content .= "\t\t),\n";
+			}
+			$content .= "\t),\n";
+		}
+		$content .= ");\n?>";
+		@file_put_contents($file, $content);
+	}
+
+	/**
+	 * Returns all user uploaded ssl root certificates
+	 * @return array
+	 */
+	public static function getCertificates() {
+		$view = \OCP\Files::getStorage('files_external');
+		$path=\OCP\Config::getSystemValue('datadirectory').$view->getAbsolutePath("").'uploads/';
+		if (!is_dir($path)) mkdir($path);
+		$result = array();
+		$handle = opendir($path);
+		while (false !== ($file = readdir($handle))) {
+			if($file != '.' && $file != '..') $result[] = $file;
+		}
+		return $result;
+	}
+
+	/**
+	 * creates certificate bundle
+	 */
+	public static function createCertificateBundle() {
+		$view = \OCP\Files::getStorage("files_external");
+		$path = \OCP\Config::getSystemValue('datadirectory').$view->getAbsolutePath("");
+
+		$certs = OC_Mount_Config::getCertificates();
+		$fh_certs = fopen($path."/rootcerts.crt", 'w');
+		foreach ($certs as $cert) {
+			$file=$path.'/uploads/'.$cert;
+			$fh = fopen($file, "r");
+			$data = fread($fh, filesize($file));
+			fclose($fh);
+			if (strpos($data, 'BEGIN CERTIFICATE')) {
+				fwrite($fh_certs, $data);
+			}
+		}
+
+		fclose($fh_certs);
+
+		return true;
+	}
+
+}
diff --git a/apps/files_external/lib/dropbox.php b/apps/files_external/lib/dropbox.php
index b90563a5065ce655495a29d92f84d8c8e8bd1a2e..bb86894e55ea75dcf9bc71ed385125d3f0513a22 100755
--- a/apps/files_external/lib/dropbox.php
+++ b/apps/files_external/lib/dropbox.php
@@ -251,5 +251,3 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common {
 	}
 
 }
-
-?>
\ No newline at end of file
diff --git a/apps/files_external/lib/ftp.php b/apps/files_external/lib/ftp.php
index 63f14a28777c294c08c65c9c9ea0cba4fa6577f7..261141455cce8752add3be7627dd4cb3d6ae9836 100644
--- a/apps/files_external/lib/ftp.php
+++ b/apps/files_external/lib/ftp.php
@@ -14,14 +14,14 @@ class OC_FileStorage_FTP extends OC_FileStorage_StreamWrapper{
 	private $root;
 
 	private static $tempFiles=array();
-	
-	public function __construct($params){
+
+	public function __construct($params) {
 		$this->host=$params['host'];
 		$this->user=$params['user'];
 		$this->password=$params['password'];
 		$this->secure=isset($params['secure'])?(bool)$params['secure']:false;
 		$this->root=isset($params['root'])?$params['root']:'/';
-		if(!$this->root || $this->root[0]!='/'){
+		if(!$this->root || $this->root[0]!='/') {
 			$this->root='/'.$this->root;
 		}
 		//create the root folder if necesary
@@ -35,16 +35,16 @@ class OC_FileStorage_FTP extends OC_FileStorage_StreamWrapper{
 	 * @param string path
 	 * @return string
 	 */
-	public function constructUrl($path){
+	public function constructUrl($path) {
 		$url='ftp';
-		if($this->secure){
+		if($this->secure) {
 			$url.='s';
 		}
 		$url.='://'.$this->user.':'.$this->password.'@'.$this->host.$this->root.$path;
 		return $url;
 	}
-	public function fopen($path,$mode){
-		switch($mode){
+	public function fopen($path,$mode) {
+		switch($mode) {
 			case 'r':
 			case 'rb':
 			case 'w':
@@ -63,14 +63,14 @@ class OC_FileStorage_FTP extends OC_FileStorage_StreamWrapper{
 			case 'c':
 			case 'c+':
 				//emulate these
-				if(strrpos($path,'.')!==false){
+				if(strrpos($path,'.')!==false) {
 					$ext=substr($path,strrpos($path,'.'));
 				}else{
 					$ext='';
 				}
 				$tmpFile=OCP\Files::tmpFile($ext);
 				OC_CloseStreamWrapper::$callBacks[$tmpFile]=array($this,'writeBack');
-				if($this->file_exists($path)){
+				if($this->file_exists($path)) {
 					$this->getFile($path,$tmpFile);
 				}
 				self::$tempFiles[$tmpFile]=$path;
@@ -78,8 +78,8 @@ class OC_FileStorage_FTP extends OC_FileStorage_StreamWrapper{
 		}
 	}
 
-	public function writeBack($tmpFile){
-		if(isset(self::$tempFiles[$tmpFile])){
+	public function writeBack($tmpFile) {
+		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 73317bbf7141e9ace982f9de3db7c5c92352f122..9b83dcee537876d7a21fa370018686b904dea369 100644
--- a/apps/files_external/lib/google.php
+++ b/apps/files_external/lib/google.php
@@ -119,7 +119,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
 				}
 			}
 		}
-		return false; 
+		return false;
 	}
 
 	private function getFeed($feedUri, $httpMethod, $postData = null) {
@@ -174,7 +174,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
 				return 'html';
 		}
 	}
-	
+
 
 	public function mkdir($path) {
 		$collection = dirname($path);
@@ -254,7 +254,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
 		} else if ($entry = $this->getResource($path)) {
 			// NOTE: Native resources don't have a file size
 			$stat['size'] = $entry->getElementsByTagNameNS('http://schemas.google.com/g/2005', 'quotaBytesUsed')->item(0)->nodeValue;
-// 			if (isset($atime = $entry->getElementsByTagNameNS('http://schemas.google.com/g/2005', 'lastViewed')->item(0)->nodeValue)) 
+// 			if (isset($atime = $entry->getElementsByTagNameNS('http://schemas.google.com/g/2005', 'lastViewed')->item(0)->nodeValue))
 // 			$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);
@@ -304,7 +304,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
 		}
 		return false;
 	}
-	
+
 	public function file_exists($path) {
 		if ($path == '' || $path == '/') {
 			return true;
@@ -313,7 +313,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
 		}
 		return false;
 	}
-	
+
 	public function unlink($path) {
 		// Get resource self link to trash resource
 		if ($entry = $this->getResource($path)) {
@@ -482,7 +482,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
 			// TODO Wait for resource entry
 		}
 	}
-	
+
 	public function getMimeType($path, $entry = null) {
 		// Entry can be passed, because extension is required for opendir and the entry can't be cached without the extension
 		if ($entry == null) {
@@ -522,7 +522,7 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
 		}
 		return false;
 	}
-	
+
 	public function free_space($path) {
 		if ($dom = $this->getFeed('https://docs.google.com/feeds/metadata/default', 'GET')) {
 			// NOTE: Native Google Docs resources don't count towards quota
@@ -532,9 +532,9 @@ class OC_Filestorage_Google extends OC_Filestorage_Common {
 		}
 		return false;
 	}
-  
+
 	public function touch($path, $mtime = null) {
-	  
+
 	}
 
 }
\ No newline at end of file
diff --git a/apps/files_external/lib/smb.php b/apps/files_external/lib/smb.php
index 8a5e993b1d022221b5ae0228489a8b9f94fd408d..e5ba7a17743d0dc2fb855fe0c3375851df36c206 100644
--- a/apps/files_external/lib/smb.php
+++ b/apps/files_external/lib/smb.php
@@ -6,7 +6,7 @@
  * See the COPYING-README file.
  */
 
-require_once('smb4php/smb.php');
+require_once 'smb4php/smb.php';
 
 class OC_FileStorage_SMB extends OC_FileStorage_StreamWrapper{
 	private $password;
@@ -15,40 +15,40 @@ class OC_FileStorage_SMB extends OC_FileStorage_StreamWrapper{
 	private $root;
 	private $share;
 
-	public function __construct($params){
+	public function __construct($params) {
 		$this->host=$params['host'];
 		$this->user=$params['user'];
 		$this->password=$params['password'];
 		$this->share=$params['share'];
 		$this->root=isset($params['root'])?$params['root']:'/';
-		if(!$this->root || $this->root[0]!='/'){
+		if(!$this->root || $this->root[0]!='/') {
 			$this->root='/'.$this->root;
 		}
-		if(substr($this->root,-1,1)!='/'){
+		if(substr($this->root,-1,1)!='/') {
 			$this->root.='/';
 		}
-		if(!$this->share || $this->share[0]!='/'){
+		if(!$this->share || $this->share[0]!='/') {
 			$this->share='/'.$this->share;
 		}
-		if(substr($this->share,-1,1)=='/'){
+		if(substr($this->share,-1,1)=='/') {
 			$this->share=substr($this->share,0,-1);
 		}
 
 		//create the root folder if necesary
-		if(!$this->is_dir('')){
+		if(!$this->is_dir('')) {
 			$this->mkdir('');
 		}
 	}
 
-	public function constructUrl($path){
-		if(substr($path,-1)=='/'){
+	public function constructUrl($path) {
+		if(substr($path,-1)=='/') {
 			$path=substr($path,0,-1);
 		}
 		return 'smb://'.$this->user.':'.$this->password.'@'.$this->host.$this->share.$this->root.$path;
 	}
 
-	public function stat($path){
-		if(!$path and $this->root=='/'){//mtime doesn't work for shares
+	public function stat($path) {
+		if(!$path and $this->root=='/') {//mtime doesn't work for shares
 			$mtime=$this->shareMTime();
 			$stat=stat($this->constructUrl($path));
 			$stat['mtime']=$mtime;
@@ -58,7 +58,7 @@ class OC_FileStorage_SMB extends OC_FileStorage_StreamWrapper{
 		}
 	}
 
-	public function filetype($path){
+	public function filetype($path) {
 		return (bool)@$this->opendir($path);//using opendir causes the same amount of requests and caches the content of the folder in one go
 	}
 
@@ -67,8 +67,8 @@ class OC_FileStorage_SMB extends OC_FileStorage_StreamWrapper{
 	 * @param int $time
 	 * @return bool
 	 */
-	public function hasUpdated($path,$time){
-		if(!$path and $this->root=='/'){
+	public function hasUpdated($path,$time) {
+		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;
 		}else{
@@ -80,13 +80,13 @@ class OC_FileStorage_SMB extends OC_FileStorage_StreamWrapper{
 	/**
 	 * get the best guess for the modification time of the share
 	 */
-	private function shareMTime(){
+	private function shareMTime() {
 		$dh=$this->opendir('');
 		$lastCtime=0;
-		while($file=readdir($dh)){
-			if($file!='.' and $file!='..'){
+		while($file=readdir($dh)) {
+			if($file!='.' and $file!='..') {
 				$ctime=$this->filemtime($file);
-				if($ctime>$lastCtime){
+				if($ctime>$lastCtime) {
 					$lastCtime=$ctime;
 				}
 			}
diff --git a/apps/files_external/lib/streamwrapper.php b/apps/files_external/lib/streamwrapper.php
index 467c5a5b845b213db7c5b4defc38ac80dfd304ff..7263ef2325395ea882c6f2f8b5795884c5f05b37 100644
--- a/apps/files_external/lib/streamwrapper.php
+++ b/apps/files_external/lib/streamwrapper.php
@@ -10,12 +10,12 @@
 abstract class OC_FileStorage_StreamWrapper extends OC_Filestorage_Common{
 	abstract public function constructUrl($path);
 
-	public function mkdir($path){
+	public function mkdir($path) {
 		return mkdir($this->constructUrl($path));
 	}
 
-	public function rmdir($path){
-		if($this->file_exists($path)){
+	public function rmdir($path) {
+		if($this->file_exists($path)) {
 			$succes=rmdir($this->constructUrl($path));
 			clearstatcache();
 			return $succes;
@@ -24,42 +24,42 @@ abstract class OC_FileStorage_StreamWrapper extends OC_Filestorage_Common{
 		}
 	}
 
-	public function opendir($path){
+	public function opendir($path) {
 		return opendir($this->constructUrl($path));
 	}
 
-	public function filetype($path){
+	public function filetype($path) {
 		return filetype($this->constructUrl($path));
 	}
 
-	public function isReadable($path){
+	public function isReadable($path) {
 		return true;//not properly supported
 	}
 
-	public function isUpdatable($path){
+	public function isUpdatable($path) {
 		return true;//not properly supported
 	}
 
-	public function file_exists($path){
+	public function file_exists($path) {
 		return file_exists($this->constructUrl($path));
 	}
 
-	public function unlink($path){
+	public function unlink($path) {
 		$succes=unlink($this->constructUrl($path));
 		clearstatcache();
 		return $succes;
 	}
 
-	public function fopen($path,$mode){
+	public function fopen($path,$mode) {
 		return fopen($this->constructUrl($path),$mode);
 	}
 
-	public function free_space($path){
+	public function free_space($path) {
 		return 0;
 	}
 
-	public function touch($path,$mtime=null){
-		if(is_null($mtime)){
+	public function touch($path,$mtime=null) {
+		if(is_null($mtime)) {
 			$fh=$this->fopen($path,'a');
 			fwrite($fh,'');
 			fclose($fh);
@@ -68,19 +68,19 @@ abstract class OC_FileStorage_StreamWrapper extends OC_Filestorage_Common{
 		}
 	}
 
-	public function getFile($path,$target){
+	public function getFile($path,$target) {
 		return copy($this->constructUrl($path),$target);
 	}
 
-	public function uploadFile($path,$target){
+	public function uploadFile($path,$target) {
 		return copy($path,$this->constructUrl($target));
 	}
 
-	public function rename($path1,$path2){
+	public function rename($path1,$path2) {
 		return rename($this->constructUrl($path1),$this->constructUrl($path2));
 	}
 
-	public function stat($path){
+	public function stat($path) {
 		return stat($this->constructUrl($path));
 	}
 
diff --git a/apps/files_external/lib/swift.php b/apps/files_external/lib/swift.php
index 94ccde1ff8f9cb77b14667ffe78bb8a8d0f64a50..c29d28b44c12a006cfac5c9015add66b33ba409e 100644
--- a/apps/files_external/lib/swift.php
+++ b/apps/files_external/lib/swift.php
@@ -6,7 +6,7 @@
  * See the COPYING-README file.
  */
 
-require_once('php-cloudfiles/cloudfiles.php');
+require_once 'php-cloudfiles/cloudfiles.php';
 
 class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	private $host;
@@ -38,7 +38,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * @param string path
 	 * @return string
 	 */
-	private function getContainerName($path){
+	private function getContainerName($path) {
 		$path=trim($this->root.$path,'/');
 		return str_replace('/','\\',$path);
 	}
@@ -48,18 +48,18 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * @param string path
 	 * @return CF_Container
 	 */
-	private function getContainer($path){
-		if($path=='' or $path=='/'){
+	private function getContainer($path) {
+		if($path=='' or $path=='/') {
 			return $this->rootContainer;
 		}
-		if(isset($this->containers[$path])){
+		if(isset($this->containers[$path])) {
 			return $this->containers[$path];
 		}
 		try{
 			$container=$this->conn->get_container($this->getContainerName($path));
 			$this->containers[$path]=$container;
 			return $container;
-		}catch(NoSuchContainerException $e){
+		}catch(NoSuchContainerException $e) {
 			return null;
 		}
 	}
@@ -69,15 +69,15 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * @param string path
 	 * @return CF_Container
 	 */
-	private function createContainer($path){
-		if($path=='' or $path=='/'){
+	private function createContainer($path) {
+		if($path=='' or $path=='/') {
 			return $this->conn->create_container($this->getContainerName($path));
 		}
 		$parent=dirname($path);
-		if($parent=='' or $parent=='/'){
+		if($parent=='' or $parent=='/') {
 			$parentContainer=$this->rootContainer;
 		}else{
-			if(!$this->containerExists($parent)){
+			if(!$this->containerExists($parent)) {
 				$parentContainer=$this->createContainer($parent);
 			}else{
 				$parentContainer=$this->getContainer($parent);
@@ -92,19 +92,19 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * @param string path
 	 * @return CF_Object
 	 */
-	private function getObject($path){
-		if(isset($this->objects[$path])){
+	private function getObject($path) {
+		if(isset($this->objects[$path])) {
 			return $this->objects[$path];
 		}
 		$container=$this->getContainer(dirname($path));
-		if(is_null($container)){
+		if(is_null($container)) {
 			return null;
 		}else{
 			try{
 				$obj=$container->get_object(basename($path));
 				$this->objects[$path]=$obj;
 				return $obj;
-			}catch(NoSuchObjectException $e){
+			}catch(NoSuchObjectException $e) {
 				return null;
 			}
 		}
@@ -115,12 +115,12 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * @param CF_Container
 	 * @return array
 	 */
-	private function getObjects($container){
-		if(is_null($container)){
+	private function getObjects($container) {
+		if(is_null($container)) {
 			return array();
 		}else{
 			$files=$container->get_objects();
-			foreach($files as &$file){
+			foreach($files as &$file) {
 				$file=$file->name;
 			}
 			return $files;
@@ -132,9 +132,9 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * @param string path
 	 * @return CF_Object
 	 */
-	private function createObject($path){
+	private function createObject($path) {
 		$container=$this->getContainer(dirname($path));
-		if(!is_null($container)){
+		if(!is_null($container)) {
 			$container=$this->createContainer($path);
 		}
 		return $container->create_object(basename($path));
@@ -145,7 +145,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * @param string
 	 * @return bool
 	 */
-	private function objectExists($path){
+	private function objectExists($path) {
 		return !is_null($this->getObject($path));
 	}
 
@@ -154,7 +154,7 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * @param string path
 	 * @return bool
 	 */
-	private function containerExists($path){
+	private function containerExists($path) {
 		return !is_null($this->getContainer($path));
 	}
 
@@ -163,18 +163,18 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * @param CF_Container container
 	 * @return array
 	 */
-	private function getSubContainers($container){
+	private function getSubContainers($container) {
 		$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);
 		$containers=file($tmpFile);
 		unlink($tmpFile);
-		foreach($containers as &$sub){
+		foreach($containers as &$sub) {
 			$sub=trim($sub);
 		}
 		return $containers;
@@ -186,8 +186,8 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * @param string name
 	 * @return bool
 	 */
-	private function addSubContainer($container,$name){
-		if(!$name){
+	private function addSubContainer($container,$name) {
+		if(!$name) {
 			return false;
 		}
 		$tmpFile=OCP\Files::tmpFile();
@@ -195,17 +195,17 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 		try{
 			$obj->save_to_filename($tmpFile);
 			$containers=file($tmpFile);
-			foreach($containers as &$sub){
+			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");
 			}
-		}catch(Exception $e){
+		}catch(Exception $e) {
 			$containers=array();
 			file_put_contents($tmpFile,$name."\n");
 		}
@@ -221,8 +221,8 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * @param string name
 	 * @return bool
 	 */
-	private function removeSubContainer($container,$name){
-		if(!$name){
+	private function removeSubContainer($container,$name) {
+		if(!$name) {
 			return false;
 		}
 		$tmpFile=OCP\Files::tmpFile();
@@ -230,14 +230,14 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 		try{
 			$obj->save_to_filename($tmpFile);
 			$containers=file($tmpFile);
-		}catch(Exception $e){
+		}catch(Exception $e) {
 			return false;
 		}
-		foreach($containers as &$sub){
+		foreach($containers as &$sub) {
 			$sub=trim($sub);
 		}
 		$i=array_search($name,$containers);
-		if($i===false){
+		if($i===false) {
 			unlink($tmpFile);
 			return false;
 		}else{
@@ -255,29 +255,29 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * @param CF_Container container
 	 * @return CF_Object
 	 */
-	private function getSubContainerFile($container){
+	private function getSubContainerFile($container) {
 		try{
 			return $container->get_object(self::SUBCONTAINER_FILE);
-		}catch(NoSuchObjectException $e){
+		}catch(NoSuchObjectException $e) {
 			return $container->create_object(self::SUBCONTAINER_FILE);
 		}
 	}
 
-	public function __construct($params){
+	public function __construct($params) {
 		$this->token=$params['token'];
 		$this->host=$params['host'];
 		$this->user=$params['user'];
 		$this->root=isset($params['root'])?$params['root']:'/';
 		$this->secure=isset($params['secure'])?(bool)$params['secure']:true;
-		if(!$this->root || $this->root[0]!='/'){
+		if(!$this->root || $this->root[0]!='/') {
 			$this->root='/'.$this->root;
 		}
 		$this->auth = new CF_Authentication($this->user, $this->token, null, $this->host);
 		$this->auth->authenticate();
-		
+
 		$this->conn = new CF_Connection($this->auth);
 
-		if(!$this->containerExists($this->root)){
+		if(!$this->containerExists($this->root)) {
 			$this->rootContainer=$this->createContainer('/');
 		}else{
 			$this->rootContainer=$this->getContainer('/');
@@ -285,8 +285,8 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	}
 
 
-	public function mkdir($path){
-		if($this->containerExists($path)){
+	public function mkdir($path) {
+		if($this->containerExists($path)) {
 			return false;
 		}else{
 			$this->createContainer($path);
@@ -294,30 +294,30 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 		}
 	}
 
-	public function rmdir($path){
-		if(!$this->containerExists($path)){
+	public function rmdir($path) {
+		if(!$this->containerExists($path)) {
 			return false;
 		}else{
 			$this->emptyContainer($path);
-			if($path!='' and $path!='/'){
+			if($path!='' and $path!='/') {
 				$parentContainer=$this->getContainer(dirname($path));
 				$this->removeSubContainer($parentContainer,basename($path));
 			}
-			
+
 			$this->conn->delete_container($this->getContainerName($path));
 			unset($this->containers[$path]);
 			return true;
 		}
 	}
 
-	private function emptyContainer($path){
+	private function emptyContainer($path) {
 		$container=$this->getContainer($path);
-		if(is_null($container)){
+		if(is_null($container)) {
 			return;
 		}
 		$subContainers=$this->getSubContainers($container);
-		foreach($subContainers as $sub){
-			if($sub){
+		foreach($subContainers as $sub) {
+			if($sub) {
 				$this->emptyContainer($path.'/'.$sub);
 				$this->conn->delete_container($this->getContainerName($path.'/'.$sub));
 				unset($this->containers[$path.'/'.$sub]);
@@ -325,17 +325,17 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 		}
 
 		$objects=$this->getObjects($container);
-		foreach($objects as $object){
+		foreach($objects as $object) {
 			$container->delete_object($object);
 			unset($this->objects[$path.'/'.$object]);
 		}
 	}
 
-	public function opendir($path){
+	public function opendir($path) {
 		$container=$this->getContainer($path);
 		$files=$this->getObjects($container);
 		$i=array_search(self::SUBCONTAINER_FILE,$files);
-		if($i!==false){
+		if($i!==false) {
 			unset($files[$i]);
 		}
 		$subContainers=$this->getSubContainers($container);
@@ -345,43 +345,43 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 		return opendir('fakedir://'.$id);
 	}
 
-	public function filetype($path){
-		if($this->containerExists($path)){
+	public function filetype($path) {
+		if($this->containerExists($path)) {
 			return 'dir';
 		}else{
 			return 'file';
 		}
 	}
 
-	public function isReadable($path){
+	public function isReadable($path) {
 		return true;
 	}
 
-	public function isUpdatable($path){
+	public function isUpdatable($path) {
 		return true;
 	}
 
-	public function file_exists($path){
-		if($this->is_dir($path)){
+	public function file_exists($path) {
+		if($this->is_dir($path)) {
 			return true;
 		}else{
 			return $this->objectExists($path);
 		}
 	}
 
-	public function file_get_contents($path){
+	public function file_get_contents($path) {
 		$obj=$this->getObject($path);
-		if(is_null($obj)){
+		if(is_null($obj)) {
 			return false;
 		}
 		return $obj->read();
 	}
 
-	public function file_put_contents($path,$content){
+	public function file_put_contents($path,$content) {
 		$obj=$this->getObject($path);
-		if(is_null($obj)){
+		if(is_null($obj)) {
 			$container=$this->getContainer(dirname($path));
-			if(is_null($container)){
+			if(is_null($container)) {
 				return false;
 			}
 			$obj=$container->create_object(basename($path));
@@ -390,8 +390,8 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 		return $obj->write($content);
 	}
 
-	public function unlink($path){
-		if($this->objectExists($path)){
+	public function unlink($path) {
+		if($this->objectExists($path)) {
 			$container=$this->getContainer(dirname($path));
 			$container->delete_object(basename($path));
 			unset($this->objects[$path]);
@@ -400,17 +400,17 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 		}
 	}
 
-	public function fopen($path,$mode){
+	public function fopen($path,$mode) {
 		$obj=$this->getObject($path);
-		if(is_null($obj)){
+		if(is_null($obj)) {
 			return false;
 		}
-		switch($mode){
+		switch($mode) {
 			case 'r':
 			case 'rb':
 				$fp = fopen('php://temp', 'r+');
 				$obj->stream($fp);
-				
+
 				rewind($fp);
 				return $fp;
 			case 'w':
@@ -432,61 +432,61 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 		}
 	}
 
-	public function writeBack($tmpFile){
-		if(isset(self::$tempFiles[$tmpFile])){
+	public function writeBack($tmpFile) {
+		if(isset(self::$tempFiles[$tmpFile])) {
 			$this->fromTmpFile($tmpFile,self::$tempFiles[$tmpFile]);
 			unlink($tmpFile);
 		}
 	}
 
-	public function free_space($path){
+	public function free_space($path) {
 		return 0;
 	}
 
-	public function touch($path,$mtime=null){
+	public function touch($path,$mtime=null) {
 		$obj=$this->getObject($path);
-		if(is_null($obj)){
+		if(is_null($obj)) {
 			return false;
 		}
-		if(is_null($mtime)){
+		if(is_null($mtime)) {
 			$mtime=time();
 		}
-		
+
 		//emulate setting mtime with metadata
 		$obj->metadata['Mtime']=$mtime;
 		$obj->sync_metadata();
 	}
 
-	public function rename($path1,$path2){
+	public function rename($path1,$path2) {
 		$sourceContainer=$this->getContainer(dirname($path1));
 		$targetContainer=$this->getContainer(dirname($path2));
 		$result=$sourceContainer->move_object_to(basename($path1),$targetContainer,basename($path2));
 		unset($this->objects[$path1]);
-		if($result){
+		if($result) {
 			$targetObj=$this->getObject($path2);
 			$this->resetMTime($targetObj);
 		}
 		return $result;
 	}
 
-	public function copy($path1,$path2){
+	public function copy($path1,$path2) {
 		$sourceContainer=$this->getContainer(dirname($path1));
 		$targetContainer=$this->getContainer(dirname($path2));
 		$result=$sourceContainer->copy_object_to(basename($path1),$targetContainer,basename($path2));
-		if($result){
+		if($result) {
 			$targetObj=$this->getObject($path2);
 			$this->resetMTime($targetObj);
 		}
 		return $result;
 	}
 
-	public function stat($path){
+	public function stat($path) {
 		$obj=$this->getObject($path);
-		if(is_null($obj)){
+		if(is_null($obj)) {
 			return false;
 		}
 
-		if(isset($obj->metadata['Mtime']) and $obj->metadata['Mtime']>-1){
+		if(isset($obj->metadata['Mtime']) and $obj->metadata['Mtime']>-1) {
 			$mtime=$obj->metadata['Mtime'];
 		}else{
 			$mtime=strtotime($obj->last_modified);
@@ -498,9 +498,9 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 		);
 	}
 
-	private function getTmpFile($path){
+	private function getTmpFile($path) {
 		$obj=$this->getObject($path);
-		if(!is_null($obj)){
+		if(!is_null($obj)) {
 			$tmpFile=OCP\Files::tmpFile();
 			$obj->save_to_filename($tmpFile);
 			return $tmpFile;
@@ -509,9 +509,9 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 		}
 	}
 
-	private function fromTmpFile($tmpFile,$path){
+	private function fromTmpFile($tmpFile,$path) {
 		$obj=$this->getObject($path);
-		if(is_null($obj)){
+		if(is_null($obj)) {
 			$obj=$this->createObject($path);
 		}
 		$obj->load_from_filename($tmpFile);
@@ -522,8 +522,8 @@ class OC_FileStorage_SWIFT extends OC_Filestorage_Common{
 	 * remove custom mtime metadata
 	 * @param CF_Object obj
 	 */
-	private function resetMTime($obj){
-		if(isset($obj->metadata['Mtime'])){
+	private function resetMTime($obj) {
+		if(isset($obj->metadata['Mtime'])) {
 			$obj->metadata['Mtime']=-1;
 			$obj->sync_metadata();
 		}
diff --git a/apps/files_external/lib/webdav.php b/apps/files_external/lib/webdav.php
index e3f73c5c0a740117492bc8581f7cd35e9b82eb0a..3c18b227fa6dc94eeb52f9d2ba839fe691b9a448 100644
--- a/apps/files_external/lib/webdav.php
+++ b/apps/files_external/lib/webdav.php
@@ -18,8 +18,8 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
 	private $client;
 
 	private static $tempFiles=array();
-	
-	public function __construct($params){
+
+	public function __construct($params) {
 		$host = $params['host'];
 		//remove leading http[s], will be generated in createBaseUri()
 		if (substr($host,0,8) == "https://") $host = substr($host, 8);
@@ -29,13 +29,13 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
 		$this->password=$params['password'];
 		$this->secure=(isset($params['secure']) && $params['secure'] == 'true')?true:false;
 		$this->root=isset($params['root'])?$params['root']:'/';
-		if(!$this->root || $this->root[0]!='/'){
+		if(!$this->root || $this->root[0]!='/') {
 			$this->root='/'.$this->root;
 		}
-		if(substr($this->root,-1,1)!='/'){
+		if(substr($this->root,-1,1)!='/') {
 			$this->root.='/';
 		}
-		
+
 		$settings = array(
 			'baseUri' => $this->createBaseUri(),
 			'userName' => $this->user,
@@ -43,7 +43,7 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
 		);
 
 		$this->client = new OC_Connector_Sabre_Client($settings);
-		
+
 		if($caview = \OCP\Files::getStorage('files_external')) {
 			$certPath=\OCP\Config::getSystemValue('datadirectory').$caview->getAbsolutePath("").'rootcerts.crt';
 			if (file_exists($certPath))  {
@@ -54,26 +54,26 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
 		$this->mkdir('');
 	}
 
-	private function createBaseUri(){
+	private function createBaseUri() {
 		$baseUri='http';
-		if($this->secure){
+		if($this->secure) {
 			$baseUri.='s';
 		}
 		$baseUri.='://'.$this->host.$this->root;
 		return $baseUri;
 	}
 
-	public function mkdir($path){
+	public function mkdir($path) {
 		$path=$this->cleanPath($path);
 		return $this->simpleResponse('MKCOL',$path,null,201);
 	}
 
-	public function rmdir($path){
+	public function rmdir($path) {
 		$path=$this->cleanPath($path);
 		return $this->simpleResponse('DELETE',$path,null,204);
 	}
 
-	public function opendir($path){
+	public function opendir($path) {
 		$path=$this->cleanPath($path);
 		try{
 			$response=$this->client->propfind($path, array(),1);
@@ -81,54 +81,54 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
 			OC_FakeDirStream::$dirs[$id]=array();
 			$files=array_keys($response);
 			array_shift($files);//the first entry is the current directory
-			foreach($files as $file){
+			foreach($files as $file) {
 				$file = urldecode(basename($file));
 				OC_FakeDirStream::$dirs[$id][]=$file;
 			}
 			return opendir('fakedir://'.$id);
-		}catch(Exception $e){
+		}catch(Exception $e) {
 			return false;
 		}
 	}
 
-	public function filetype($path){
+	public function filetype($path) {
 		$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;
 		}
 	}
 
-	public function isReadable($path){
+	public function isReadable($path) {
 		return true;//not properly supported
 	}
 
-	public function isUpdatable($path){
+	public function isUpdatable($path) {
 		return true;//not properly supported
 	}
 
-	public function file_exists($path){
+	public function file_exists($path) {
 		$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){
+	public function unlink($path) {
 		return $this->simpleResponse('DELETE',$path,null,204);
 	}
 
-	public function fopen($path,$mode){
+	public function fopen($path,$mode) {
 		$path=$this->cleanPath($path);
-		switch($mode){
+		switch($mode) {
 			case 'r':
 			case 'rb':
 				//straight up curl instead of sabredav here, sabredav put's the entire get result in memory
@@ -155,14 +155,14 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
 			case 'c':
 			case 'c+':
 				//emulate these
-				if(strrpos($path,'.')!==false){
+				if(strrpos($path,'.')!==false) {
 					$ext=substr($path,strrpos($path,'.'));
 				}else{
 					$ext='';
 				}
 				$tmpFile=OCP\Files::tmpFile($ext);
 				OC_CloseStreamWrapper::$callBacks[$tmpFile]=array($this,'writeBack');
-				if($this->file_exists($path)){
+				if($this->file_exists($path)) {
 					$this->getFile($path,$tmpFile);
 				}
 				self::$tempFiles[$tmpFile]=$path;
@@ -170,41 +170,41 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
 		}
 	}
 
-	public function writeBack($tmpFile){
-		if(isset(self::$tempFiles[$tmpFile])){
+	public function writeBack($tmpFile) {
+		if(isset(self::$tempFiles[$tmpFile])) {
 			$this->uploadFile($tmpFile,self::$tempFiles[$tmpFile]);
 			unlink($tmpFile);
 		}
 	}
 
-	public function free_space($path){
+	public function free_space($path) {
 		$path=$this->cleanPath($path);
 		try{
 			$response=$this->client->propfind($path, array('{DAV:}quota-available-bytes'));
-			if(isset($response['{DAV:}quota-available-bytes'])){
+			if(isset($response['{DAV:}quota-available-bytes'])) {
 				return (int)$response['{DAV:}quota-available-bytes'];
 			}else{
 				return 0;
 			}
-		}catch(Exception $e){
+		}catch(Exception $e) {
 			return 0;
 		}
 	}
 
-	public function touch($path,$mtime=null){
-		if(is_null($mtime)){
+	public function touch($path,$mtime=null) {
+		if(is_null($mtime)) {
 			$mtime=time();
 		}
 		$path=$this->cleanPath($path);
 		$this->client->proppatch($path, array('{DAV:}lastmodified' => $mtime));
 	}
 
-	public function getFile($path,$target){
+	public function getFile($path,$target) {
 		$source=$this->fopen($path,'r');
 		file_put_contents($target,$source);
 	}
 
-	public function uploadFile($path,$target){
+	public function uploadFile($path,$target) {
 		$source=fopen($path,'r');
 
 		$curl = curl_init();
@@ -218,13 +218,13 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
 		curl_close ($curl);
 	}
 
-	public function rename($path1,$path2){
+	public function rename($path1,$path2) {
 		$path1=$this->cleanPath($path1);
 		$path2=$this->root.$this->cleanPath($path2);
 		try{
 			$response=$this->client->request('MOVE',$path1,null,array('Destination'=>$path2));
 			return true;
-		}catch(Exception $e){
+		}catch(Exception $e) {
 			echo $e;
 			echo 'fail';
 			var_dump($response);
@@ -232,13 +232,13 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
 		}
 	}
 
-	public function copy($path1,$path2){
+	public function copy($path1,$path2) {
 		$path1=$this->cleanPath($path1);
 		$path2=$this->root.$this->cleanPath($path2);
 		try{
 			$response=$this->client->request('COPY',$path1,null,array('Destination'=>$path2));
 			return true;
-		}catch(Exception $e){
+		}catch(Exception $e) {
 			echo $e;
 			echo 'fail';
 			var_dump($response);
@@ -246,7 +246,7 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
 		}
 	}
 
-	public function stat($path){
+	public function stat($path) {
 		$path=$this->cleanPath($path);
 		try{
 			$response=$this->client->propfind($path, array('{DAV:}getlastmodified','{DAV:}getcontentlength'));
@@ -255,45 +255,44 @@ class OC_FileStorage_DAV extends OC_Filestorage_Common{
 				'size'=>(int)isset($response['{DAV:}getcontentlength']) ? $response['{DAV:}getcontentlength'] : 0,
 				'ctime'=>-1,
 			);
-		}catch(Exception $e){
+		}catch(Exception $e) {
 			return array();
 		}
 	}
 
-	public function getMimeType($path){
+	public function getMimeType($path) {
 		$path=$this->cleanPath($path);
 		try{
 			$response=$this->client->propfind($path, array('{DAV:}getcontenttype','{DAV:}resourcetype'));
 			$responseType=$response["{DAV:}resourcetype"]->resourceType;
 			$type=(count($responseType)>0 and $responseType[0]=="{DAV:}collection")?'dir':'file';
-			if($type=='dir'){
+			if($type=='dir') {
 				return 'httpd/unix-directory';
-			}elseif(isset($response['{DAV:}getcontenttype'])){
+			}elseif(isset($response['{DAV:}getcontenttype'])) {
 				return $response['{DAV:}getcontenttype'];
 			}else{
 				return false;
 			}
-		}catch(Exception $e){
+		}catch(Exception $e) {
 			return false;
 		}
 	}
 
-	private function cleanPath($path){
-		if(!$path || $path[0]=='/'){
+	private function cleanPath($path) {
+		if(!$path || $path[0]=='/') {
 			return substr($path,1);
 		}else{
 			return $path;
 		}
 	}
 
-	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 dec501741b608736d48814950f7afc56e394fdd2..f0d76460f546056af83e35ce69c3ac8b56000a40 100755
--- a/apps/files_external/personal.php
+++ b/apps/files_external/personal.php
@@ -31,5 +31,3 @@ $tmpl->assign('mounts', OC_Mount_Config::getPersonalMountPoints());
 $tmpl->assign('certs', OC_Mount_Config::getCertificates());
 $tmpl->assign('backends', $backends);
 return $tmpl->fetchPage();
-
-?>
\ No newline at end of file
diff --git a/apps/files_external/settings.php b/apps/files_external/settings.php
index acc9036b299822f894cc40f713b93afa8fa4a658..b586ce1e8cd0914309793397ba85219a9cf36bce 100644
--- a/apps/files_external/settings.php
+++ b/apps/files_external/settings.php
@@ -30,5 +30,3 @@ $tmpl->assign('groups', OC_Group::getGroups());
 $tmpl->assign('users', OCP\User::getUsers());
 $tmpl->assign('allowUserMounting', OCP\Config::getAppValue('files_external', 'allow_user_mounting', 'yes'));
 return $tmpl->fetchPage();
-
-?>
\ No newline at end of file
diff --git a/apps/files_external/templates/settings.php b/apps/files_external/templates/settings.php
index 397f0d951b0acddb17ba695139beb0b51654b221..c44b09b180fed3f1d2fc6b1026f87aaef387b173 100644
--- a/apps/files_external/templates/settings.php
+++ b/apps/files_external/templates/settings.php
@@ -80,9 +80,9 @@
 			</tbody>
 		</table>
 		<br />
-		
+
 		<?php if (!$_['isAdminPage']):  ?>
-  		<table id="sslCertificate" data-admin='<?php echo json_encode($_['isAdminPage']); ?>'>
+		<table id="sslCertificate" data-admin='<?php echo json_encode($_['isAdminPage']); ?>'>
 			<thead>
 				<tr>
 					<th><?php echo $l->t('SSL root certificates'); ?></th>
@@ -91,17 +91,17 @@
 			</thead>
 			<tbody width="100%">
 			<?php foreach ($_['certs'] as $rootCert): ?>
-			<tr id="<?php echo $rootCert ?>">	
+			<tr id="<?php echo $rootCert ?>">
 			<td class="rootCert"><?php echo $rootCert ?></td>
 			<td <?php echo ($rootCert != '') ? 'class="remove"' : 'style="visibility:hidden;"'; ?>><img alt="<?php echo $l->t('Delete'); ?>" title="<?php echo $l->t('Delete'); ?>" class="svg action" src="<?php echo image_path('core', 'actions/delete.svg'); ?>" /></td>
 			</tr>
 			<?php endforeach; ?>
 			</tbody>
-		</table>		
+		</table>
         <input type="file" id="rootcert_import" name="rootcert_import" style="width:230px;">
-        <input type="submit" name="cert_import" value="<?php echo $l->t('Import Root Certificate'); ?>" />		
+        <input type="submit" name="cert_import" value="<?php echo $l->t('Import Root Certificate'); ?>" />
 		<?php endif; ?>
-		
+
 		<?php if ($_['isAdminPage']): ?>
 			<br />
 			<input type="checkbox" name="allowUserMounting" id="allowUserMounting" value="1" <?php if ($_['allowUserMounting'] == 'yes') echo ' checked="checked"'; ?> />
diff --git a/apps/files_external/tests/ftp.php b/apps/files_external/tests/ftp.php
index 97796bca1289c6c78278fb177b04af74d5b635b6..12f3ec3908df4cd431749365c7e301c4c86d8f1e 100644
--- a/apps/files_external/tests/ftp.php
+++ b/apps/files_external/tests/ftp.php
@@ -5,25 +5,24 @@
  * later.
  * See the COPYING-README file.
  */
- 
+
 $config=include('apps/files_external/tests/config.php');
-if(!is_array($config) or !isset($config['ftp']) or !$config['ftp']['run']){
+if(!is_array($config) or !isset($config['ftp']) or !$config['ftp']['run']) {
 	abstract class Test_Filestorage_FTP extends Test_FileStorage{}
 	return;
 }else{
 	class Test_Filestorage_FTP extends Test_FileStorage {
 		private $config;
 
-		public function setUp(){
+		public function setUp() {
 			$id=uniqid();
 			$this->config=include('apps/files_external/tests/config.php');
 			$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']);
 		}
 
-		public function tearDown(){
+		public function tearDown() {
 			OCP\Files::rmdirr($this->instance->constructUrl(''));
 		}
 	}
 }
-
diff --git a/apps/files_external/tests/google.php b/apps/files_external/tests/google.php
index 806db5a6aaae3c6adbfe2b76952052f26746601d..d2a6358ade4fde28d29982c248fff2bc4ae0b567 100644
--- a/apps/files_external/tests/google.php
+++ b/apps/files_external/tests/google.php
@@ -21,24 +21,23 @@
 */
 
 $config=include('apps/files_external/tests/config.php');
-if(!is_array($config) or !isset($config['google']) or !$config['google']['run']){
+if(!is_array($config) or !isset($config['google']) or !$config['google']['run']) {
 	abstract class Test_Filestorage_Google extends Test_FileStorage{}
 	return;
 }else{
 	class Test_Filestorage_Google extends Test_FileStorage {
-		
+
 		private $config;
 
-		public function setUp(){
+		public function setUp() {
 			$id=uniqid();
 			$this->config=include('apps/files_external/tests/config.php');
 			$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']);
 		}
 
-		public function tearDown(){
+		public function tearDown() {
 			$this->instance->rmdir('/');
 		}
 	}
 }
-
diff --git a/apps/files_external/tests/smb.php b/apps/files_external/tests/smb.php
index 001ef842276705b3fd3a759a6d89b57855448f88..7de4fddbb3425bbd1d2296b0da97ab39547fd8dd 100644
--- a/apps/files_external/tests/smb.php
+++ b/apps/files_external/tests/smb.php
@@ -8,21 +8,21 @@
 
 $config=include('apps/files_external/tests/config.php');
 
-if(!is_array($config) or !isset($config['smb']) or !$config['smb']['run']){
+if(!is_array($config) or !isset($config['smb']) or !$config['smb']['run']) {
 	abstract class Test_Filestorage_SMB extends Test_FileStorage{}
 	return;
 }else{
 	class Test_Filestorage_SMB extends Test_FileStorage {
 		private $config;
 
-		public function setUp(){
+		public function setUp() {
 			$id=uniqid();
 			$this->config=include('apps/files_external/tests/config.php');
 			$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']);
 		}
 
-		public function tearDown(){
+		public function tearDown() {
 			OCP\Files::rmdirr($this->instance->constructUrl(''));
 		}
 	}
diff --git a/apps/files_external/tests/swift.php b/apps/files_external/tests/swift.php
index 1520c9473d34e6f5db1c8c18d8ad3b3e344b25f8..a6f5eace1c862c76a0d1c7f69dd7f976345eab4a 100644
--- a/apps/files_external/tests/swift.php
+++ b/apps/files_external/tests/swift.php
@@ -7,25 +7,24 @@
  */
 
 $config=include('apps/files_external/tests/config.php');
-if(!is_array($config) or !isset($config['swift']) or !$config['swift']['run']){
+if(!is_array($config) or !isset($config['swift']) or !$config['swift']['run']) {
 	abstract class Test_Filestorage_SWIFT extends Test_FileStorage{}
 	return;
 }else{
 	class Test_Filestorage_SWIFT extends Test_FileStorage {
 		private $config;
 
-		public function setUp(){
+		public function setUp() {
 			$id=uniqid();
 			$this->config=include('apps/files_external/tests/config.php');
 			$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']);
 		}
 
-		
-		public function tearDown(){
+
+		public function tearDown() {
 		    $this->instance->rmdir('');
 		}
-		
+
 	}
 }
-
diff --git a/apps/files_external/tests/test.php b/apps/files_external/tests/test.php
deleted file mode 100644
index bd24404f3b9853d1a01e01f05ea5aa50f1a3ea67..0000000000000000000000000000000000000000
--- a/apps/files_external/tests/test.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-require_once 'files_external/lib/config.php';
-echo "<pre>";
-print_r(OC_Mount_Config::getSystemMountPoints());
-echo "</pre>";
-// OC_Mount_Config::addMountPoint('Photos', 'OC_Filestorage_SWIFT', array('host' => 'gapinthecloud.com', 'user' => 'Gap', 'token' => '23423afdasFJEW22', 'secure' => 'true', 'root' => ''), OC_Mount_Config::MOUNT_TYPE_GROUP, 'admin', false);
-?>
diff --git a/apps/files_external/tests/webdav.php b/apps/files_external/tests/webdav.php
index 14abbef2cbfac5cf666572ef8dcaafd9700687c8..74d980aa3f16c726bdab7b8ac8cf94759fb7f75a 100644
--- a/apps/files_external/tests/webdav.php
+++ b/apps/files_external/tests/webdav.php
@@ -7,23 +7,22 @@
  */
 
 $config=include('apps/files_external/tests/config.php');
-if(!is_array($config) or !isset($config['webdav']) or !$config['webdav']['run']){
+if(!is_array($config) or !isset($config['webdav']) or !$config['webdav']['run']) {
 	abstract class Test_Filestorage_DAV extends Test_FileStorage{}
 	return;
 }else{
 	class Test_Filestorage_DAV extends Test_FileStorage {
 		private $config;
 
-		public function setUp(){
+		public function setUp() {
 			$id=uniqid();
 			$this->config=include('apps/files_external/tests/config.php');
 			$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']);
 		}
 
-		public function tearDown(){
+		public function tearDown() {
 			$this->instance->rmdir('/');
 		}
 	}
 }
-
diff --git a/apps/files_sharing/ajax/togglesharewitheveryone.php b/apps/files_sharing/ajax/togglesharewitheveryone.php
deleted file mode 100644
index 96c43711cb5c843a076c856da19b84e44daa1bcb..0000000000000000000000000000000000000000
--- a/apps/files_sharing/ajax/togglesharewitheveryone.php
+++ /dev/null
@@ -1,11 +0,0 @@
-<?php
-
-OCP\JSON::callCheck();
-
-OCP\JSON::checkAppEnabled('files_sharing');
-OCP\JSON::checkAdminUser();
-if ($_POST['allowSharingWithEveryone'] == true) {
-	OCP\Config::setAppValue('files_sharing', 'allowSharingWithEveryone', 'yes');
-} else {
-	OCP\Config::setAppValue('files_sharing', 'allowSharingWithEveryone', 'no');
-}
\ No newline at end of file
diff --git a/apps/files_sharing/appinfo/database.xml b/apps/files_sharing/appinfo/database.xml
deleted file mode 100644
index c5cb632d4fe18186f0cdbb4ceb49d05c5e866721..0000000000000000000000000000000000000000
--- a/apps/files_sharing/appinfo/database.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" ?>
-<database>
-	 <name>*dbname*</name>
-	 <create>true</create>
-	 <overwrite>false</overwrite>
-	 <charset>utf8</charset>
-	 <table>
-		<name>*dbprefix*sharing</name>
-		<declaration>
-			<field>
-				<name>uid_owner</name>
-				<type>text</type>
-				<notnull>true</notnull>
-				<length>64</length>
-			</field>
-			<field>
-				<name>uid_shared_with</name>
-				<type>text</type>
-				<notnull>true</notnull>
-				<length>64</length>
-			</field>
-			<field>
-				<name>source</name>
-				<type>text</type>
-				<notnull>true</notnull>
-				<length>128</length>
-			</field>
-			<field>
-				<name>target</name>
-				<type>text</type>
-				<notnull>true</notnull>
-				<length>128</length>
-			</field>
-			<field>
-				<name>permissions</name>
-				<type>integer</type>
-				<notnull>true</notnull>
-				<length>1</length>
-			 </field>
-		</declaration>
-	</table>
-</database>
diff --git a/apps/files_sharing/appinfo/info.xml b/apps/files_sharing/appinfo/info.xml
index e31d3299f59bc2c6b738aca2ddb1b42c6d21ba99..6a8fc89adae9f36664d41c4b6d1ae312cfa1271b 100644
--- a/apps/files_sharing/appinfo/info.xml
+++ b/apps/files_sharing/appinfo/info.xml
@@ -12,7 +12,7 @@
 		<filesystem/>
 	</types>
 	<public>
-		<files>get.php</files>
-		<webdav>get.php</webdav>
+		<files>public.php</files>
+		<webdav>public.php</webdav>
 	</public>
 </info>
diff --git a/apps/files_sharing/appinfo/update.php b/apps/files_sharing/appinfo/update.php
index b43269d69f73518a3beed23c18bad16d06291897..eabd1167c97db4732b741c221405cf3d06e181fa 100644
--- a/apps/files_sharing/appinfo/update.php
+++ b/apps/files_sharing/appinfo/update.php
@@ -1,16 +1,47 @@
 <?php
-
-// touch shared directories to trigger one-time re-scan for all users
-$datadir = \OCP\Config::getSystemValue('datadirectory');
-$currentVersion=OC_Appconfig::getValue('files_sharing', 'installed_version');
-if (version_compare($currentVersion, '0.2.2', '<')) {
-	if ($handle = opendir($datadir)) {
-		while (false !== ($entry = readdir($handle))) {
-			$sharedFolder = $datadir.'/'.$entry.'/files/Shared';
-			if ($entry != "." && $entry != ".." && is_dir($sharedFolder)) {
-				touch($sharedFolder);
-			}
-		}
-		closedir($handle);
+$installedVersion = OCP\Config::getAppValue('files_sharing', 'installed_version');
+if (version_compare($installedVersion, '0.3', '<')) {
+	$query = OCP\DB::prepare('SELECT * FROM `*PREFIX*sharing`');
+	$result = $query->execute();
+	$groupShares = array();
+	while ($row = $result->fetchRow()) {
+		$itemSource = OC_FileCache::getId($row['source'], '');
+		if ($itemSource != -1) {
+			$file = OC_FileCache::get($row['source'], '');
+			if ($file['mimetype'] == 'httpd/unix-directory') {
+				$itemType = 'folder';
+			} else {
+				$itemType = 'file';
+			}
+			if ($row['permissions'] == 0) {
+				$permissions = OCP\Share::PERMISSION_READ;
+			} else {
+				$permissions = OCP\Share::PERMISSION_READ | OCP\Share::PERMISSION_UPDATE;
+				if ($itemType == 'folder') {
+					$permissions |= OCP\Share::PERMISSION_CREATE;
+				}
+			}
+			$pos = strrpos($row['uid_shared_with'], '@');
+			if ($pos !== false && OC_Group::groupExists(substr($row['uid_shared_with'], $pos + 1))) {
+				$shareType = OCP\Share::SHARE_TYPE_GROUP;
+				$shareWith = substr($row['uid_shared_with'], 0, $pos);
+				if (isset($groupShares[$shareWith][$itemSource])) {
+					continue;
+				} else {
+					$groupShares[$shareWith][$itemSource] = true;
+				}
+			} else if ($row['uid_shared_with'] == 'public') {
+				$shareType = OCP\Share::SHARE_TYPE_LINK;
+				$shareWith = null;
+			} else {
+				$shareType = OCP\Share::SHARE_TYPE_USER;
+				$shareWith = $row['uid_shared_with'];
+			}
+			OC_User::setUserId($row['uid_owner']);
+			OCP\Share::shareItem($itemType, $itemSource, $shareType, $shareWith, $permissions);
+		}
 	}
+	// NOTE: Let's drop the table after more testing
+// 	$query = OCP\DB::prepare('DROP TABLE `*PREFIX*sharing`');
+// 	$query->execute();
 }
\ No newline at end of file
diff --git a/apps/files_sharing/appinfo/version b/apps/files_sharing/appinfo/version
index f4778493c50025c6ab147a1fec7486ef0c706792..9fc80f937fab96c3d0109624aca8028d0f3edff6 100644
--- a/apps/files_sharing/appinfo/version
+++ b/apps/files_sharing/appinfo/version
@@ -1 +1 @@
-0.2.2
\ No newline at end of file
+0.3.2
\ No newline at end of file
diff --git a/apps/files_sharing/css/public.css b/apps/files_sharing/css/public.css
index aa76c06175bdc662e3f6d8a284db14ae640741bc..a700cc2169b5521dfe8f02b88a10ee6697cfb073 100644
--- a/apps/files_sharing/css/public.css
+++ b/apps/files_sharing/css/public.css
@@ -1,2 +1,8 @@
-#content { position:relative; }
-#preview p { text-align: center; }
\ No newline at end of file
+body { background:#ddd; }
+#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; }
+#details { color:#fff; }
+#header #download { margin-left:2em; font-weight:bold; color:#fff; }
+#preview { min-height:30em; margin:50px auto; padding-top:2em; border-bottom:1px solid #f8f8f8; background:#eee; text-align:center; }
+#noPreview { display:none; padding-top:5em; }
+p.info { width:22em; text-align: center; margin:2em auto; color:#777; text-shadow:#fff 0 1px 0; }
+p.info a { font-weight:bold; color:#777; }
\ No newline at end of file
diff --git a/apps/files_sharing/js/public.js b/apps/files_sharing/js/public.js
index 755382e073648c503117b77546734b5a5110404d..92b626bba18510c5dce916dbd6119d838efdb8b7 100644
--- a/apps/files_sharing/js/public.js
+++ b/apps/files_sharing/js/public.js
@@ -10,8 +10,12 @@ $(document).ready(function() {
 		// Show file preview if previewer is available, images are already handled by the template
 		if (mimetype.substr(0, mimetype.indexOf('/')) != 'image') {
 			// Trigger default action if not download TODO
-			var action = FileActions.getDefault(mimetype, 'file', FileActions.PERMISSION_READ);
-			action($('#filename').val());
+			var action = FileActions.getDefault(mimetype, 'file', OC.PERMISSION_READ);
+			if (typeof action === 'undefined') {
+				$('#noPreview').show();
+			} else {
+				action($('#filename').val());
+			}
 		}
 	}
 
diff --git a/apps/files_sharing/js/share.js b/apps/files_sharing/js/share.js
index 79ab4adebac392f1a6908c156c7def71d318eed3..9d0e2c90f8861e5fe591c49e64b106a063242d4b 100644
--- a/apps/files_sharing/js/share.js
+++ b/apps/files_sharing/js/share.js
@@ -2,7 +2,7 @@ $(document).ready(function() {
 
 	if (typeof OC.Share !== 'undefined' && typeof FileActions !== 'undefined') {
 		OC.Share.loadIcons('file');
-		FileActions.register('all', 'Share', FileActions.PERMISSION_READ, function(filename) {
+		FileActions.register('all', 'Share', OC.PERMISSION_READ, function(filename) {
 			// Return the correct sharing icon
 			if (scanFiles.scanning) { return; } // workaround to prevent additional http request block scanning feedback
 			if ($('#dir').val() == '/') {
@@ -39,8 +39,10 @@ $(document).ready(function() {
 			var tr = $('tr').filterAttr('data-file', filename);
 			if ($(tr).data('type') == 'dir') {
 				var itemType = 'folder';
+				var link = false;
 			} else {
 				var itemType = 'file';
+				var link = true;
 			}
 			var possiblePermissions = $(tr).data('permissions');
 			var appendTo = $(tr).find('td.filename');
@@ -49,14 +51,14 @@ $(document).ready(function() {
 				if (item != $('#dropdown').data('item')) {
 					OC.Share.hideDropDown(function () {
 						$(tr).addClass('mouseOver');
-						OC.Share.showDropDown(itemType, $(tr).data('id'), appendTo, true, possiblePermissions);
+						OC.Share.showDropDown(itemType, $(tr).data('id'), appendTo, link, possiblePermissions);
 					});
 				} else {
 					OC.Share.hideDropDown();
 				}
 			} else {
 				$(tr).addClass('mouseOver');
-				OC.Share.showDropDown(itemType, $(tr).data('id'), appendTo, true, possiblePermissions);
+				OC.Share.showDropDown(itemType, $(tr).data('id'), appendTo, link, possiblePermissions);
 			}
 		});
 	}
diff --git a/apps/files_sharing/l10n/ca.php b/apps/files_sharing/l10n/ca.php
index 6931389b9c997fcd8c3c2739a51c35c246033609..f00d0d72632ab7210c8963bc8c1555a531c5ce78 100644
--- a/apps/files_sharing/l10n/ca.php
+++ b/apps/files_sharing/l10n/ca.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Mida",
-"Modified" => "Modificat",
-"Delete all" => "Esborra-ho tot",
-"Delete" => "Elimina"
+"Password" => "Contrasenya",
+"Submit" => "Envia",
+"Download" => "Baixa",
+"No preview available for" => "No hi ha vista prèvia disponible per a",
+"web services under your control" => "controleu els vostres serveis web"
 );
diff --git a/apps/files_sharing/l10n/cs_CZ.php b/apps/files_sharing/l10n/cs_CZ.php
index 7c5828a6136507ba7e76dc4525a9f7fb15207c8b..e9185e979cd865f0fc99545c54bfe46a52402a52 100644
--- a/apps/files_sharing/l10n/cs_CZ.php
+++ b/apps/files_sharing/l10n/cs_CZ.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Velikost",
-"Modified" => "Upraveno",
-"Delete all" => "Smazat vše",
-"Delete" => "Smazat"
+"Password" => "Heslo",
+"Submit" => "Odeslat",
+"Download" => "Stáhnout",
+"No preview available for" => "Náhled není dostupný pro",
+"web services under your control" => "služby webu pod Vaší kontrolou"
 );
diff --git a/apps/files_sharing/l10n/de.php b/apps/files_sharing/l10n/de.php
index d42383b43b0e7a82d1d0128fbebff5ed65db9a5f..90dce8ec6232ab961702faab3c2fc3e68ed4854c 100644
--- a/apps/files_sharing/l10n/de.php
+++ b/apps/files_sharing/l10n/de.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Größe",
-"Modified" => "Geändert",
-"Delete all" => "Alle löschen",
-"Delete" => "Löschen"
+"Password" => "Passwort",
+"Submit" => "Absenden",
+"Download" => "Download",
+"No preview available for" => "Es ist keine Vorschau verfügbar für",
+"web services under your control" => "Web-Services unter Ihrer Kontrolle"
 );
diff --git a/apps/files_sharing/l10n/el.php b/apps/files_sharing/l10n/el.php
index 63f4c61204a654b13716282a24d383f2524a6878..123a008e554167cc2ef06a6a375ee40d496c50eb 100644
--- a/apps/files_sharing/l10n/el.php
+++ b/apps/files_sharing/l10n/el.php
@@ -1,6 +1,4 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Μέγεθος",
-"Modified" => "Τροποποιήθηκε",
-"Delete all" => "Διαγραφή όλων",
-"Delete" => "Διαγραφή"
+"Password" => "Συνθηματικό",
+"Submit" => "Καταχώρηση"
 );
diff --git a/apps/files_sharing/l10n/eo.php b/apps/files_sharing/l10n/eo.php
index 81a8dcb15256a037f0f62cb84104adec82984e9e..e71715f0f1f06e47e0f1d0fa200f5e660ace03f5 100644
--- a/apps/files_sharing/l10n/eo.php
+++ b/apps/files_sharing/l10n/eo.php
@@ -1,3 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Delete" => "Forigi"
+"Password" => "Pasvorto",
+"Submit" => "Sendi",
+"Download" => "Elŝuti",
+"No preview available for" => "Ne haveblas antaŭvido por",
+"web services under your control" => "TTT-servoj regataj de vi"
 );
diff --git a/apps/files_sharing/l10n/es.php b/apps/files_sharing/l10n/es.php
index 85f880927d6bf981dc9288a24d2b0ae65dd18470..b1d44e5485e1eadc2a3c8cf2b5665f0efed11387 100644
--- a/apps/files_sharing/l10n/es.php
+++ b/apps/files_sharing/l10n/es.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Tamaño",
-"Modified" => "Modificado",
-"Delete all" => "Eliminar todo",
-"Delete" => "Eliminar"
+"Password" => "Contraseña",
+"Submit" => "Enviar",
+"Download" => "Descargar",
+"No preview available for" => "No hay vista previa disponible para",
+"web services under your control" => "Servicios web bajo su control"
 );
diff --git a/apps/files_sharing/l10n/et_EE.php b/apps/files_sharing/l10n/et_EE.php
index da299f4ff70690b76e9a31ad8a7ab17d3048df67..94b9b1d7aef06f8960e8e1ac0eca1722f5d7945c 100644
--- a/apps/files_sharing/l10n/et_EE.php
+++ b/apps/files_sharing/l10n/et_EE.php
@@ -1,3 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Delete" => "Kustutamine"
+"Password" => "Parool",
+"Submit" => "Saada",
+"Download" => "Lae alla",
+"No preview available for" => "Eelvaadet pole saadaval",
+"web services under your control" => "veebitenused sinu kontrolli all"
 );
diff --git a/apps/files_sharing/l10n/eu.php b/apps/files_sharing/l10n/eu.php
index 916c3151dcfb70d6f097fd5a31cefbb47a6123f2..70ff2e8876cb90d9fce7aec4af59cbd40ae49faf 100644
--- a/apps/files_sharing/l10n/eu.php
+++ b/apps/files_sharing/l10n/eu.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Tamaina",
-"Modified" => "Aldatuta",
-"Delete all" => "Ezabatu dena",
-"Delete" => "Ezabatu"
+"Password" => "Pasahitza",
+"Submit" => "Bidali",
+"Download" => "Deskargatu",
+"No preview available for" => "Ez dago aurrebista eskuragarririk hauentzat ",
+"web services under your control" => "web zerbitzuak zure kontrolpean"
 );
diff --git a/apps/files_sharing/l10n/fi_FI.php b/apps/files_sharing/l10n/fi_FI.php
index ca7928aeecbee957059dd82c4b844f7a16f0cd6a..85c6c7a713258362f3ac97db860c60688d658747 100644
--- a/apps/files_sharing/l10n/fi_FI.php
+++ b/apps/files_sharing/l10n/fi_FI.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Koko",
-"Modified" => "Muokattu",
-"Delete all" => "Poista kaikki",
-"Delete" => "Poista"
+"Password" => "Salasana",
+"Submit" => "Lähetä",
+"Download" => "Lataa",
+"No preview available for" => "Ei esikatselua kohteelle",
+"web services under your control" => "verkkopalvelut hallinnassasi"
 );
diff --git a/apps/files_sharing/l10n/fr.php b/apps/files_sharing/l10n/fr.php
index 5a90331e4223e1c7eac1c832b841f97af14a2a66..54d9e9ec567414193e4379b2a16b099f45644762 100644
--- a/apps/files_sharing/l10n/fr.php
+++ b/apps/files_sharing/l10n/fr.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Taille",
-"Modified" => "Modifié",
-"Delete all" => "Tout effacer",
-"Delete" => "Effacement"
+"Password" => "Mot de passe",
+"Submit" => "Envoyer",
+"Download" => "Télécharger",
+"No preview available for" => "Pas d'aperçu disponible pour",
+"web services under your control" => "services web sous votre contrôle"
 );
diff --git a/apps/files_sharing/l10n/he.php b/apps/files_sharing/l10n/he.php
new file mode 100644
index 0000000000000000000000000000000000000000..68a337241da3c32c9fa1bd380319c291337995ea
--- /dev/null
+++ b/apps/files_sharing/l10n/he.php
@@ -0,0 +1,7 @@
+<?php $TRANSLATIONS = array(
+"Password" => "ססמה",
+"Submit" => "שליחה",
+"Download" => "הורדה",
+"No preview available for" => "אין תצוגה מקדימה זמינה עבור",
+"web services under your control" => "שירותי רשת תחת השליטה שלך"
+);
diff --git a/apps/files_sharing/l10n/it.php b/apps/files_sharing/l10n/it.php
index 7f91b856783a599ccc99fc79cccfc8460bfcdb4c..5bedabde9bb62f765f517766573fb8400d511477 100644
--- a/apps/files_sharing/l10n/it.php
+++ b/apps/files_sharing/l10n/it.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Dimensione",
-"Modified" => "Modificato",
-"Delete all" => "Elimina tutto",
-"Delete" => "Eliminazione"
+"Password" => "Password",
+"Submit" => "Invia",
+"Download" => "Scarica",
+"No preview available for" => "Nessuna anteprima disponibile per",
+"web services under your control" => "servizi web nelle tue mani"
 );
diff --git a/apps/files_sharing/l10n/ja_JP.php b/apps/files_sharing/l10n/ja_JP.php
index 9fca88d0a339e0c870e9bb39a950f201378b2a6b..5d63f371d56f11fdea02590aa10c79533cbde465 100644
--- a/apps/files_sharing/l10n/ja_JP.php
+++ b/apps/files_sharing/l10n/ja_JP.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "サイズ",
-"Modified" => "変更",
-"Delete all" => "すべて削除",
-"Delete" => "削除"
+"Password" => "パスワード",
+"Submit" => "送信",
+"Download" => "ダウンロード",
+"No preview available for" => "プレビューはありません",
+"web services under your control" => "管理下のウェブサービス"
 );
diff --git a/apps/files_sharing/l10n/nl.php b/apps/files_sharing/l10n/nl.php
index d357d66f67465fc4283d5e59165039ee6ac83d47..2f732ed662fc56334ba03f83db11d093a4da3933 100644
--- a/apps/files_sharing/l10n/nl.php
+++ b/apps/files_sharing/l10n/nl.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Grootte",
-"Modified" => "Aangepast",
-"Delete all" => "Verwijder alles",
-"Delete" => "Vewijder"
+"Password" => "Wachtwoord",
+"Submit" => "Verzenden",
+"Download" => "Downloaden",
+"No preview available for" => "Geen voorbeeldweergave beschikbaar voor",
+"web services under your control" => "Webdiensten in eigen beheer"
 );
diff --git a/apps/files_sharing/l10n/pl.php b/apps/files_sharing/l10n/pl.php
index 7f612126b93a99084ed5542909a6faef67a30317..1d5e6261ef03e26f800ff4ff021988806b75c828 100644
--- a/apps/files_sharing/l10n/pl.php
+++ b/apps/files_sharing/l10n/pl.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Rozmiar",
-"Modified" => "Zmodyfikowane",
-"Delete all" => "Usuń wszystko",
-"Delete" => "Usuń"
+"Password" => "Hasło",
+"Submit" => "Wyślij",
+"Download" => "Pobierz",
+"No preview available for" => "Podgląd nie jest dostępny dla",
+"web services under your control" => "Kontrolowane serwisy"
 );
diff --git a/apps/files_sharing/l10n/ru.php b/apps/files_sharing/l10n/ru.php
index 796403ae998c151a799d5d11a250b1272800731a..398d9a8bbc3ff89ca8513ede8141b90f539569cc 100644
--- a/apps/files_sharing/l10n/ru.php
+++ b/apps/files_sharing/l10n/ru.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Размер",
-"Modified" => "Изменён",
-"Delete all" => "Удалить все",
-"Delete" => "Удалить"
+"Password" => "Пароль",
+"Submit" => "Отправить",
+"Download" => "Скачать",
+"No preview available for" => "Предпросмотр недоступен для",
+"web services under your control" => "веб-сервисы под вашим управлением"
 );
diff --git a/apps/files_sharing/l10n/sk_SK.php b/apps/files_sharing/l10n/sk_SK.php
new file mode 100644
index 0000000000000000000000000000000000000000..ec9fc31c87817968299bc2ace2492a80f02a2b20
--- /dev/null
+++ b/apps/files_sharing/l10n/sk_SK.php
@@ -0,0 +1,7 @@
+<?php $TRANSLATIONS = array(
+"Password" => "Heslo",
+"Submit" => "Odoslať",
+"Download" => "Stiahnuť",
+"No preview available for" => "Žiaden náhľad k dispozícii pre",
+"web services under your control" => "webové služby pod Vašou kontrolou"
+);
diff --git a/apps/files_sharing/l10n/sl.php b/apps/files_sharing/l10n/sl.php
index a241c6e504fb31122a0db99fcb31d60f12c77693..5e7d2d5004b949a569e6e17e194e0656c6c0c858 100644
--- a/apps/files_sharing/l10n/sl.php
+++ b/apps/files_sharing/l10n/sl.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Velikost",
-"Modified" => "Spremenjeno",
-"Delete all" => "Izbriši vse",
-"Delete" => "Izbriši"
+"Password" => "Geslo",
+"Submit" => "Pošlji",
+"Download" => "Prenesi",
+"No preview available for" => "Predogled ni na voljo za",
+"web services under your control" => "spletne storitve pod vašim nadzorom"
 );
diff --git a/apps/files_sharing/l10n/sv.php b/apps/files_sharing/l10n/sv.php
index 5a2cda436869778f7ebff0419e60529e0704b4ba..78b19836497a3f975e8e8f6666fd9af64aa3094b 100644
--- a/apps/files_sharing/l10n/sv.php
+++ b/apps/files_sharing/l10n/sv.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "Storlek",
-"Modified" => "Ändrad",
-"Delete all" => "Radera alla",
-"Delete" => "Radera"
+"Password" => "Lösenord",
+"Submit" => "Skicka",
+"Download" => "Ladda ner",
+"No preview available for" => "Ingen förhandsgranskning tillgänglig för",
+"web services under your control" => "webbtjänster under din kontroll"
 );
diff --git a/apps/files_sharing/l10n/th_TH.php b/apps/files_sharing/l10n/th_TH.php
index 3f8908a91a33a452241e20642fd98342c0629109..8a3f1207db4270da54a4b990327b1d40b2e949f1 100644
--- a/apps/files_sharing/l10n/th_TH.php
+++ b/apps/files_sharing/l10n/th_TH.php
@@ -1,6 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Size" => "ขนาด",
-"Modified" => "แก้ไขแล้ว",
-"Delete all" => "ลบทั้งหมด",
-"Delete" => "ลบ"
+"Password" => "รหัสผ่าน",
+"Submit" => "ส่ง",
+"Download" => "ดาวน์โหลด",
+"No preview available for" => "ไม่สามารถดูตัวอย่างได้สำหรับ",
+"web services under your control" => "เว็บเซอร์วิสที่คุณควบคุมการใช้งานได้"
 );
diff --git a/apps/files_sharing/l10n/uk.php b/apps/files_sharing/l10n/uk.php
new file mode 100644
index 0000000000000000000000000000000000000000..43b86a28c175476002182c0a777ad60cbf349d6b
--- /dev/null
+++ b/apps/files_sharing/l10n/uk.php
@@ -0,0 +1,4 @@
+<?php $TRANSLATIONS = array(
+"Password" => "Пароль",
+"Download" => "Завантажити"
+);
diff --git a/apps/files_sharing/l10n/vi.php b/apps/files_sharing/l10n/vi.php
new file mode 100644
index 0000000000000000000000000000000000000000..d4faee06bf2fe9b808c3d2ffccb947c6db8cae3f
--- /dev/null
+++ b/apps/files_sharing/l10n/vi.php
@@ -0,0 +1,7 @@
+<?php $TRANSLATIONS = array(
+"Password" => "Mật khẩu",
+"Submit" => "Xác nhận",
+"Download" => "Tải về",
+"No preview available for" => "Không có xem trước cho",
+"web services under your control" => "dịch vụ web dưới sự kiểm soát của bạn"
+);
diff --git a/apps/files_sharing/l10n/zh_TW.php b/apps/files_sharing/l10n/zh_TW.php
new file mode 100644
index 0000000000000000000000000000000000000000..27fa634c03df56213f3b56fa729a8821582da2fb
--- /dev/null
+++ b/apps/files_sharing/l10n/zh_TW.php
@@ -0,0 +1,6 @@
+<?php $TRANSLATIONS = array(
+"Password" => "密碼",
+"Submit" => "送出",
+"Download" => "下載",
+"No preview available for" => "無法預覽"
+);
diff --git a/apps/files_sharing/lib/share/file.php b/apps/files_sharing/lib/share/file.php
index 5005d9a39d671c42dd6d53e7a4b06330c69f9284..2149da1d7319d299b5903a74b58d57983afd0cee 100644
--- a/apps/files_sharing/lib/share/file.php
+++ b/apps/files_sharing/lib/share/file.php
@@ -27,10 +27,10 @@ class OC_Share_Backend_File implements OCP\Share_Backend_File_Dependent {
 	const FORMAT_OPENDIR = 3;
 
 	private $path;
-	
+
 	public function isValidSource($itemSource, $uidOwner) {
 		$path = OC_FileCache::getPath($itemSource, $uidOwner);
-		if (OC_Filesystem::file_exists($path)) {
+		if ($path) {
 			$this->path = $path;
 			return true;
 		}
@@ -46,9 +46,25 @@ class OC_Share_Backend_File implements OCP\Share_Backend_File_Dependent {
 		return false;
 	}
 
-	public function generateTarget($itemSource, $shareWith, $exclude = null) {
-		// TODO Make sure target path doesn't exist already
-		return $itemSource;
+	public function generateTarget($filePath, $shareWith, $exclude = null) {
+		$target = $filePath;
+		if (isset($exclude)) {
+			if ($pos = strrpos($target, '.')) {
+				$name = substr($target, 0, $pos);
+				$ext = substr($target, $pos);
+			} else {
+				$name = $filePath;
+				$ext = '';
+			}
+			$i = 2;
+			$append = '';
+			while (in_array($name.$append.$ext, $exclude)) {
+				$append = ' ('.$i.')';
+				$i++;
+			}
+			$target = $name.$append.$ext;
+		}
+		return $target;
 	}
 
 	public function formatItems($items, $format, $parameters = null) {
@@ -75,6 +91,8 @@ class OC_Share_Backend_File implements OCP\Share_Backend_File_Dependent {
 					// Remove Create permission if type is file
 					$file['permissions'] &= ~OCP\Share::PERMISSION_CREATE;
 				}
+				// NOTE: Temporary fix to allow unsharing of files in root of Shared directory
+				$file['permissions'] |= OCP\Share::PERMISSION_DELETE;
 				$files[] = $file;
 			}
 			return $files;
@@ -94,7 +112,7 @@ class OC_Share_Backend_File implements OCP\Share_Backend_File_Dependent {
 				$files[] = basename($item['file_target']);
 			}
 			return $files;
-		} 
+		}
 		return array();
 	}
 
diff --git a/apps/files_sharing/lib/share/folder.php b/apps/files_sharing/lib/share/folder.php
index 665583e83ad603e3cc75d5e07b32dedaf68120c3..e29e9b7e002fba685424a6b7d1a2f8a7f572314c 100644
--- a/apps/files_sharing/lib/share/folder.php
+++ b/apps/files_sharing/lib/share/folder.php
@@ -19,7 +19,7 @@
 * License along with this library.  If not, see <http://www.gnu.org/licenses/>.
 */
 
-class OC_Share_Backend_Folder extends OC_Share_Backend_File {
+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) {
@@ -50,12 +50,22 @@ class OC_Share_Backend_Folder extends OC_Share_Backend_File {
 	}
 
 	public function getChildren($itemSource) {
-		$files = OC_FileCache::getFolderContent($itemSource);
-		$sources = array();
-		foreach ($files as $file) {
-			$sources[] = $file['path'];
+		$children = array();
+		$parents = array($itemSource);
+		while (!empty($parents)) {
+			$parents = "'".implode("','", $parents)."'";
+			$query = OC_DB::prepare('SELECT `id`, `name`, `mimetype` FROM `*PREFIX*fscache` WHERE `parent` IN ('.$parents.')');
+			$result = $query->execute();
+			$parents = array();
+			while ($file = $result->fetchRow()) {
+				$children[] = array('source' => $file['id'], 'file_path' => $file['name']);
+				// If a child folder is found look inside it 
+				if ($file['mimetype'] == 'httpd/unix-directory') {
+					$parents[] = $file['id'];
+				}
+			}
 		}
-		return $sources;
+		return $children;
 	}
 
 }
\ No newline at end of file
diff --git a/apps/files_sharing/lib/sharedstorage.php b/apps/files_sharing/lib/sharedstorage.php
index a3a8750d2737043534f8013a9fa7a88fed5e3de7..6dba76955a0af5b09f3b56c8749e7ca580d4a1fa 100644
--- a/apps/files_sharing/lib/sharedstorage.php
+++ b/apps/files_sharing/lib/sharedstorage.php
@@ -24,13 +24,12 @@
  * Convert target path to source path and pass the function call to the correct storage provider
  */
 class OC_Filestorage_Shared extends OC_Filestorage_Common {
-	
+
 	private $sharedFolder;
 	private $files = array();
-	
+
 	public function __construct($arguments) {
 		$this->sharedFolder = $arguments['sharedFolder'];
-		OC_Util::setupFS4all();
 	}
 
 	/**
@@ -78,6 +77,8 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
 	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'];
 		}
 		return false;
@@ -106,17 +107,17 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
 		$internalPath = substr($path, strlen($mountPoint));
 		return $internalPath;
 	}
-	
+
 	public function mkdir($path) {
 		if ($path == '' || $path == '/' || !$this->isCreatable(dirname($path))) {
-			return false; 
+			return false;
 		} else if ($source = $this->getSourcePath($path)) {
 			$storage = OC_Filesystem::getStorage($source);
 			return $storage->mkdir($this->getInternalPath($source));
 		}
 		return false;
 	}
-	
+
 	public function rmdir($path) {
 		if (($source = $this->getSourcePath($path)) && $this->isDeletable($path)) {
 			$storage = OC_Filesystem::getStorage($source);
@@ -124,7 +125,7 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
 		}
 		return false;
 	}
-	
+
 	public function opendir($path) {
 		if ($path == '' || $path == '/') {
 			$files = OCP\Share::getItemsSharedWith('file', OC_Share_Backend_Folder::FORMAT_OPENDIR);
@@ -208,7 +209,7 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
 
 	public function isDeletable($path) {
 		if ($path == '') {
-			return false;
+			return true;
 		}
 		return ($this->getPermissions($path) & OCP\Share::PERMISSION_DELETE);
 	}
@@ -229,10 +230,10 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
 		}
 		return false;
 	}
-	
+
 	public function filectime($path) {
 		if ($path == '' || $path == '/') {
-			$ctime = 0; 
+			$ctime = 0;
 			if ($dh = $this->opendir($path)) {
 				while (($filename = readdir($dh)) !== false) {
 					$tempctime = $this->filectime($filename);
@@ -250,10 +251,10 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
 			}
 		}
 	}
-	
+
 	public function filemtime($path) {
 		if ($path == '' || $path == '/') {
-			$mtime = 0; 
+			$mtime = 0;
 			if ($dh = $this->opendir($path)) {
 				while (($filename = readdir($dh)) !== false) {
 					$tempmtime = $this->filemtime($filename);
@@ -271,7 +272,7 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
 			}
 		}
 	}
-	
+
 	public function file_get_contents($path) {
 		$source = $this->getSourcePath($path);
 		if ($source) {
@@ -284,7 +285,7 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
 			return $storage->file_get_contents($this->getInternalPath($source));
 		}
 	}
-	
+
 	public function file_put_contents($path, $data) {
 		if ($source = $this->getSourcePath($path)) {
 			// Check if permission is granted
@@ -302,16 +303,26 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
 		}
 		return false;
 	}
-	
+
 	public function unlink($path) {
 		// Delete the file if DELETE permission is granted
-		if (($source = $this->getSourcePath($path)) && $this->isDeletable($path)) {
-			$storage = OC_Filesystem::getStorage($source);
-			return $storage->unlink($this->getInternalPath($source));
+		if ($source = $this->getSourcePath($path)) {
+			if ($this->isDeletable($path)) {
+				$storage = OC_Filesystem::getStorage($source);
+				return $storage->unlink($this->getInternalPath($source));
+			} 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)) {
+					$itemType = 'folder';
+				} else {
+					$itemType = 'file';
+				}
+				return OCP\Share::unshareFromSelf($itemType, $path);
+			}
 		}
 		return false;
 	}
-	
+
 	public function rename($path1, $path2) {
 		// Renaming/moving is only allowed within shared folders
 		$pos1 = strpos($path1, '/', 1);
@@ -344,7 +355,7 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
 		}
 		return false;
 	}
-	
+
 	public function copy($path1, $path2) {
 		// Copy the file if CREATE permission is granted
 		if ($this->isCreatable(dirname($path2))) {
@@ -432,7 +443,7 @@ class OC_Filestorage_Shared extends OC_Filestorage_Common {
 	 * @param int $time
 	 * @return bool
 	 */
-	public function hasUpdated($path,$time){
+	public function hasUpdated($path,$time) {
 		//TODO
 		return false;
 	}
diff --git a/apps/files_sharing/public.php b/apps/files_sharing/public.php
index 15dac576d98ae22138a367d475866220809904c0..010f6b9de1822a9dec43da52f332d8f7440dfef0 100644
--- a/apps/files_sharing/public.php
+++ b/apps/files_sharing/public.php
@@ -6,9 +6,8 @@ if (isset($_GET['file'])) {
 	$uidOwner = substr($_GET['file'], 1, $pos - 1);
 	if (OCP\User::userExists($uidOwner)) {
 		OC_Util::setupFS($uidOwner);
-		$file = substr($_GET['file'], $pos);
 		$fileSource = OC_Filecache::getId($_GET['file'], '');
-		if ($linkItem = OCP\Share::getItemSharedWithByLink('file', $fileSource, $uidOwner)) {
+		if ($fileSource != -1 && ($linkItem = OCP\Share::getItemSharedWithByLink('file', $fileSource, $uidOwner))) {
 			if (isset($linkItem['share_with'])) {
 				// Check password
 				if (isset($_POST['password'])) {
@@ -18,14 +17,19 @@ if (isset($_GET['file'])) {
 					$hasher = new PasswordHash(8, $forcePortable);
 					if (!($hasher->CheckPassword($password.OC_Config::getValue('passwordsalt', ''), $storedHash))) {
 						$tmpl = new OCP\Template('files_sharing', 'authenticate', 'guest');
+						$tmpl->assign('URL', OCP\Util::linkToPublic('files').'&file='.$_GET['file']);
 						$tmpl->assign('error', true);
 						$tmpl->printPage();
 						exit();
+					} else {
+						// Save item id in session for future requests
+						$_SESSION['public_link_authenticated'] = $linkItem['id'];
 					}
-					// Continue on if password is valid
-				} else {
+				// Check if item id is set in session
+				} else if (!isset($_SESSION['public_link_authenticated']) || $_SESSION['public_link_authenticated'] !== $linkItem['id']) {
 					// Prompt for password
 					$tmpl = new OCP\Template('files_sharing', 'authenticate', 'guest');
+					$tmpl->assign('URL', OCP\Util::linkToPublic('files').'&file='.$_GET['file']);
 					$tmpl->printPage();
 					exit();
 				}
@@ -45,7 +49,8 @@ if (isset($_GET['file'])) {
 				OCP\Util::addStyle('files_sharing', 'public');
 				OCP\Util::addScript('files_sharing', 'public');
 				OCP\Util::addScript('files', 'fileactions');
-				$tmpl = new OCP\Template('files_sharing', 'public', 'guest');
+				$tmpl = new OCP\Template('files_sharing', 'public', 'base');
+				$tmpl->assign('details', $uidOwner.' shared the file '.basename($path).' with you');
 				$tmpl->assign('owner', $uidOwner);
 				$tmpl->assign('name', basename($path));
 				// Show file list
@@ -66,4 +71,4 @@ if (isset($_GET['file'])) {
 }
 header('HTTP/1.0 404 Not Found');
 $tmpl = new OCP\Template('', '404', 'guest');
-$tmpl->printPage();
\ No newline at end of file
+$tmpl->printPage();
diff --git a/apps/files_sharing/templates/authenticate.php b/apps/files_sharing/templates/authenticate.php
index 41064d5146495598f55d52b65e2d118d360cc669..9695caebf1831d88e4d8aeb56a12cd71a5c3041e 100644
--- a/apps/files_sharing/templates/authenticate.php
+++ b/apps/files_sharing/templates/authenticate.php
@@ -1,4 +1,4 @@
-<form action="index.php" method="post">
+<form action="<?php echo $_['URL']; ?>" method="post">
 	<fieldset>
 		<p>
 			<label for="password" class="infield"><?php echo $l->t('Password'); ?></label>
diff --git a/apps/files_sharing/templates/public.php b/apps/files_sharing/templates/public.php
index 065818c2200e5b77337df8caeb7c84d36ecc4f97..ca48a35575eb3ab7117b929112f92ef411b0d598 100755
--- a/apps/files_sharing/templates/public.php
+++ b/apps/files_sharing/templates/public.php
@@ -2,12 +2,24 @@
 <input type="hidden" name="downloadURL" value="<?php echo $_['downloadURL'] ?>" id="downloadURL">
 <input type="hidden" name="filename" value="<?php echo $_['filename'] ?>" id="filename">
 <input type="hidden" name="mimetype" value="<?php echo $_['mimetype'] ?>" id="mimetype">
+<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>
+	<div class="header-right">
+		<span id="details"><?php echo $_['details']; ?></span>
+		<a href="<?php echo $_['downloadURL']; ?>" id="download"><img class="svg" alt="Download" src="<?php echo OCP\image_path("core", "actions/download.svg"); ?>" /><?php echo $l->t('Download')?></a>
+	</div>
+</div></header>
 <div id="preview">
-	<p><?php echo $_['owner']; ?> shared the file <?php echo $_['name'] ?> with you</p>
-</div>
-<div id="content">
 	<?php if (substr($_['mimetype'], 0 , strpos($_['mimetype'], '/')) == 'image'): ?>
 		<img src="<?php echo $_['downloadURL']; ?>" />
 	<?php endif; ?>
+	<ul id="noPreview">
+		<li class="error">
+			<?php echo $l->t('No preview available for').' '.$_['filename']; ?><br />
+			<a href="<?php echo $_['downloadURL']; ?>" id="download"><img class="svg" alt="Download" src="<?php echo OCP\image_path("core", "actions/download.svg"); ?>" /><?php echo $l->t('Download')?></a>
+		</li>
+	</ul>
+	<div id="content"></div>
+	<table></table>
 </div>
-<a href="<?php echo $_['downloadURL']; ?>">Download</a>
\ No newline at end of file
+<footer><p class="info"><a href="http://owncloud.org/">ownCloud</a> &ndash; <?php echo $l->t('web services under your control'); ?></p></footer>
\ No newline at end of file
diff --git a/apps/files_versions/ajax/expireAll.php b/apps/files_versions/ajax/expireAll.php
index 2a678c7f0a58e486acf0622dd54ea8b4997dfe7b..5c95885ffbdc15281bdb891967cbf0f04b34e32b 100644
--- a/apps/files_versions/ajax/expireAll.php
+++ b/apps/files_versions/ajax/expireAll.php
@@ -31,14 +31,14 @@ OCP\JSON::callCheck();
 
 $versions = new OCA_Versions\Storage();
 
-if( $versions->expireAll() ){
-	
+if( $versions->expireAll() ) {
+
 	OCP\JSON::success();
 	die();
-	
+
 } else {
-	
+
 	OCP\JSON::error();
 	die();
-	
+
 }
\ No newline at end of file
diff --git a/apps/files_versions/ajax/getVersions.php b/apps/files_versions/ajax/getVersions.php
index 1a0e21732ccb9fb4be6b2288777eb1d0425012c9..8476e5e8a51c54312954e5e357d8ca7906defcb0 100644
--- a/apps/files_versions/ajax/getVersions.php
+++ b/apps/files_versions/ajax/getVersions.php
@@ -9,19 +9,19 @@ if( OCA_Versions\Storage::isversioned( $source ) ) {
 	$count=5; //show the newest revisions
 	$versions = OCA_Versions\Storage::getVersions( $source, $count);
 	$versionsFormatted = array();
-	
+
 	foreach ( $versions AS $version ) {
 		$versionsFormatted[] = OCP\Util::formatDate( $version['version'] );
 	}
 
 	$versionsSorted = array_reverse( $versions );
-	
+
 	if ( !empty( $versionsSorted ) ) {
 		OCP\JSON::encodedPrint($versionsSorted);
 	}
-	
+
 } else {
 
 	return;
-	
+
 }
diff --git a/apps/files_versions/ajax/rollbackVersion.php b/apps/files_versions/ajax/rollbackVersion.php
index 24d71a914a4ebc2a3b10798a9370a073a3538bb2..f1b02eb4b928647fbc567fa543890a9a521f5901 100644
--- a/apps/files_versions/ajax/rollbackVersion.php
+++ b/apps/files_versions/ajax/rollbackVersion.php
@@ -9,7 +9,7 @@ $file = $_GET['file'];
 $revision=(int)$_GET['revision'];
 
 if( OCA_Versions\Storage::isversioned( $file ) ) {
-	if(OCA_Versions\Storage::rollback( $file, $revision )){
+	if(OCA_Versions\Storage::rollback( $file, $revision )) {
 		OCP\JSON::success(array("data" => array( "revision" => $revision, "file" => $file )));
 	}else{
 		OCP\JSON::error(array("data" => array( "message" => "Could not revert:" . $file )));
diff --git a/apps/files_versions/appinfo/api.php b/apps/files_versions/appinfo/api.php
index a7386bc2c9f2a21953ce25c6ba8a59d201fc2dc0..3c45ff52457c0b70fea67a69d84c8b76c57ba35d 100644
--- a/apps/files_versions/appinfo/api.php
+++ b/apps/files_versions/appinfo/api.php
@@ -32,5 +32,3 @@ return array(
 		)
 	)
 );
-
-?>
\ No newline at end of file
diff --git a/apps/files_versions/appinfo/app.php b/apps/files_versions/appinfo/app.php
index 9ac7f6d5cde7eae86a90c09ece79dc1e9277e849..746f89a81391dba71f0bd44020bbd8cae4bf23ba 100644
--- a/apps/files_versions/appinfo/app.php
+++ b/apps/files_versions/appinfo/app.php
@@ -1,6 +1,6 @@
 <?php
 
-//require_once('files_versions/versions.php');
+//require_once 'files_versions/versions.php';
 OC::$CLASSPATH['OCA_Versions\Storage'] = 'apps/files_versions/lib/versions.php';
 OC::$CLASSPATH['OCA_Versions\Hooks'] = 'apps/files_versions/lib/hooks.php';
 
diff --git a/apps/files_versions/appinfo/update.php b/apps/files_versions/appinfo/update.php
index 9569ca104856bef57dcffd9c054e07ff614e3ea6..52a4850758a0b416372180dc1c94a58fc0c6144d 100644
--- a/apps/files_versions/appinfo/update.php
+++ b/apps/files_versions/appinfo/update.php
@@ -5,12 +5,11 @@ $installedVersion=OCP\Config::getAppValue('files_versions', 'installed_version')
 if (version_compare($installedVersion, '1.0.2', '<')) {
 	$users = \OCP\User::getUsers();
 	$datadir =  \OCP\Config::getSystemValue('datadirectory').'/';
-    foreach ($users as $user) {
-    	$oldPath = $datadir.$user.'/versions';
-    	$newPath = $datadir.$user.'/files_versions';
-    	if(is_dir($oldPath)) {
-    		rename($oldPath, $newPath);
-    	}
-    }
-	
+	foreach ($users as $user) {
+		$oldPath = $datadir.$user.'/versions';
+		$newPath = $datadir.$user.'/files_versions';
+		if(is_dir($oldPath)) {
+			rename($oldPath, $newPath);
+		}
+	}
 }
diff --git a/apps/files_versions/history.php b/apps/files_versions/history.php
index 27dc8bfc382f60591d2720502b5b982317b593ed..0ebb34f45e49cfebb6ca3cff2a943c9d0758fec6 100644
--- a/apps/files_versions/history.php
+++ b/apps/files_versions/history.php
@@ -5,20 +5,20 @@
  *
  * @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 
+ * 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 Lesser General Public 
+ *
+ * You should have received a copy of the GNU Lesser General Public
  * License along with this library.  If not, see <http://www.gnu.org/licenses/>.
- * 
+ *
  */
 
 OCP\User::checkLoggedIn( );
@@ -34,40 +34,40 @@ if ( isset( $_GET['path'] ) ) {
 
 	// roll back to old version if button clicked
         if( isset( $_GET['revert'] ) ) {
-        	
-        	if( $versions->rollback( $path, $_GET['revert'] ) ) {
-			
+
+		if( $versions->rollback( $path, $_GET['revert'] ) ) {
+
 			$tmpl->assign( 'outcome_stat', 'success' );
-			
+
 			$tmpl->assign( 'outcome_msg', "File {$_GET['path']} was reverted to version ".OCP\Util::formatDate( doubleval($_GET['revert']) ) );
-			
+
 		} else {
-		
+
 			$tmpl->assign( 'outcome_stat', 'failure' );
-		
+
 			$tmpl->assign( 'outcome_msg', "File {$_GET['path']} could not be reverted to version ".OCP\Util::formatDate( doubleval($_GET['revert']) ) );
-			
+
 		}
-		
+
 	}
 
 	// show the history only if there is something to show
         if( OCA_Versions\Storage::isversioned( $path ) ) {
-	
+
 		$count = 999; //show the newest revisions
 	        $versions = OCA_Versions\Storage::getVersions( $path, $count);
 
 		$tmpl->assign( 'versions', array_reverse( $versions ) );
-		
+
 	}else{
-		
+
 		$tmpl->assign( 'message', 'No old versions available' );
-		
+
 	}
 }else{
-	
+
 	$tmpl->assign( 'message', 'No path specified' );
-	
+
 }
 
 $tmpl->printPage( );
diff --git a/apps/files_versions/js/settings-personal.js b/apps/files_versions/js/settings-personal.js
index 6ea8c1a950ffb1f75f37a9207636b824ae50914a..1e6b036fdab8136a0425ab6bceb2abd799c5d4ad 100644
--- a/apps/files_versions/js/settings-personal.js
+++ b/apps/files_versions/js/settings-personal.js
@@ -2,16 +2,16 @@
 
 $( document ).ready(function(){
 	//
-	$( '#expireAllBtn' ).click( 
-		
+	$( '#expireAllBtn' ).click(
+
 		function( event ) {
-		
+
 			// Prevent page from reloading
 			event.preventDefault();
-			
+
 			// Show loading gif
 			$('.expireAllLoading').show();
-		
+
 			$.getJSON(
 				OC.filePath('files_versions','ajax','expireAll.php'),
 				function(result){
@@ -19,20 +19,20 @@ $( document ).ready(function(){
 						$('.expireAllLoading').hide();
 						$('#expireAllBtn').html('Expiration successful');
 					} else {
-						
+
 						// Cancel loading
 						$('#expireAllBtn').html('Expiration failed');
-						
+
 						// Show Dialog
 						OC.dialogs.alert(
-							'Something went wrong, your files may not have been expired', 
-							'An error has occurred', 
-							function(){ 
-								$('#expireAllBtn').html(t('files_versions', 'Expire all versions')+'<img style="display: none;" class="loading" src="'+OC.filePath('core','img','loading.gif')+'" />'); 
-							}	
-						);		
+							'Something went wrong, your files may not have been expired',
+							'An error has occurred',
+							function(){
+								$('#expireAllBtn').html(t('files_versions', 'Expire all versions')+'<img style="display: none;" class="loading" src="'+OC.filePath('core','img','loading.gif')+'" />');
+							}
+						);
 					}
-				}	
+				}
 			);
 		}
 	);
diff --git a/apps/files_versions/js/versions.js b/apps/files_versions/js/versions.js
index c5c1553f1a8932c733ff098f9e598fd8de337603..1c8d083ea42631fca22f279d83f210ab3b97daaf 100644
--- a/apps/files_versions/js/versions.js
+++ b/apps/files_versions/js/versions.js
@@ -11,10 +11,10 @@ $(document).ready(function() {
 $(document).ready(function(){
 	if (typeof FileActions !== 'undefined') {
 		// Add history button to files/index.php
-		FileActions.register('file','History', FileActions.PERMISSION_UPDATE, function(){return OC.imagePath('core','actions/history')},function(filename){
+		FileActions.register('file','History', OC.PERMISSION_UPDATE, function(){return OC.imagePath('core','actions/history');},function(filename){
 
 			if (scanFiles.scanning){return;}//workaround to prevent additional http request block scanning feedback
-			
+
 			var file = $('#dir').val()+'/'+filename;
 			// Check if drop down is already visible for a different file
 			if (($('#dropdown').length > 0)) {
@@ -35,7 +35,7 @@ $(document).ready(function(){
 function createVersionsDropdown(filename, files) {
 
 	var historyUrl = OC.linkTo('files_versions', 'history.php') + '?path='+encodeURIComponent( $( '#dir' ).val() ).replace( /%2F/g, '/' )+'/'+encodeURIComponent( filename );
-	
+
 	var html = '<div id="dropdown" class="drop" data-file="'+files+'">';
 	html += '<div id="private">';
 	html += '<select data-placeholder="Saved versions" id="found_versions" class="chzen-select" style="width:16em;">';
@@ -45,14 +45,14 @@ function createVersionsDropdown(filename, files) {
 	//html += '<input type="button" value="Revert file" onclick="revertFile()" />';
 	html += '<input type="button" value="All versions..." onclick="window.location=\''+historyUrl+'\'" name="makelink" id="makelink" />';
 	html += '<input id="link" style="display:none; width:90%;" />';
-	
+
 	if (filename) {
 		$('tr').filterAttr('data-file',filename).addClass('mouseOver');
 		$(html).appendTo($('tr').filterAttr('data-file',filename).find('td.filename'));
 	} else {
 		$(html).appendTo($('thead .share'));
 	}
-	
+
 	$.ajax({
 		type: 'GET',
 		url: OC.filePath('files_versions', 'ajax', 'getVersions.php'),
@@ -60,9 +60,9 @@ function createVersionsDropdown(filename, files) {
 		data: { source: files },
 		async: false,
 		success: function( versions ) {
-			
+
 			//alert("helo "+OC.linkTo('files_versions', 'ajax/getVersions.php'));
-			
+
 			if (versions) {
 				$.each( versions, function(index, row ) {
 					addVersion( row );
@@ -76,12 +76,12 @@ function createVersionsDropdown(filename, files) {
 			$('#found_versions').change(function(){
 				var revision=parseInt($(this).val());
 				revertFile(files,revision);
-			})
+			});
 		}
 	});
-	
+
 	function revertFile(file, revision) {
-		
+
 		$.ajax({
 			type: 'GET',
 			url: OC.linkTo('files_versions', 'ajax/rollbackVersion.php'),
@@ -99,16 +99,16 @@ function createVersionsDropdown(filename, files) {
 					});
 				}
 			}
-		});	
-	
+		});
+
 	}
-	
+
 	function addVersion(revision ) {
 		name=formatDate(revision.version*1000);
 		var version=$('<option/>');
 		version.attr('value',revision.version);
 		version.text(name);
-		
+
 // 		} else {
 // 			var checked = ((permissions > 0) ? 'checked="checked"' : 'style="display:none;"');
 // 			var style = ((permissions == 0) ? 'style="display:none;"' : '');
@@ -119,11 +119,11 @@ function createVersionsDropdown(filename, files) {
 // 			user += '<label for="'+uid_shared_with+'" '+style+'>can edit</label>';
 // 			user += '</li>';
 // 		}
-		
+
 		version.appendTo('#found_versions');
 	}
 
 	$('#dropdown').show('blind');
-	
-	
+
+
 }
diff --git a/apps/files_versions/l10n/ca.php b/apps/files_versions/l10n/ca.php
index 8388556bec67f686e922da50b2ee02e439c9384e..b6ddc6feecf9d31757eef35466a0fba5fe250094 100644
--- a/apps/files_versions/l10n/ca.php
+++ b/apps/files_versions/l10n/ca.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Expira totes les versions",
+"Versions" => "Versions",
+"This will delete all existing backup versions of your files" => "Això eliminarà totes les versions de còpia de seguretat dels vostres fitxers",
 "Enable Files Versioning" => "Habilita les versions de fitxers"
 );
diff --git a/apps/files_versions/l10n/cs_CZ.php b/apps/files_versions/l10n/cs_CZ.php
index 3297648fa3077bb8330ddb216ffc1fd882003811..4f33c1915f2230f375eecea9fd30a8b6679ff9a8 100644
--- a/apps/files_versions/l10n/cs_CZ.php
+++ b/apps/files_versions/l10n/cs_CZ.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
-"Expire all versions" => "Vypršení všech verzí",
+"Expire all versions" => "Vypršet všechny verze",
+"Versions" => "Verze",
+"This will delete all existing backup versions of your files" => "Odstraní všechny existující zálohované verze Vašich souborů",
 "Enable Files Versioning" => "Povolit verzování souborů"
 );
diff --git a/apps/files_versions/l10n/de.php b/apps/files_versions/l10n/de.php
index 3d1a0a43f5ede9fcbfee0e19f2bfa9c8b9224718..2c15884d1b587b2ff102ceb11e5c08414c51b44c 100644
--- a/apps/files_versions/l10n/de.php
+++ b/apps/files_versions/l10n/de.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Alle Versionen löschen",
+"Versions" => "Versionen",
+"This will delete all existing backup versions of your files" => "Dies löscht alle vorhandenen Sicherungsversionen Ihrer Dateien.",
 "Enable Files Versioning" => "Datei-Versionierung aktivieren"
 );
diff --git a/apps/files_versions/l10n/eo.php b/apps/files_versions/l10n/eo.php
index 8ec0895638a1765645b1f6631eb0a4294d7958d1..2f22b5ac0a57e33c9972744b5c1a2f4a27a33597 100644
--- a/apps/files_versions/l10n/eo.php
+++ b/apps/files_versions/l10n/eo.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Eksvalidigi ĉiujn eldonojn",
+"Versions" => "Eldonoj",
+"This will delete all existing backup versions of your files" => "Ĉi tio forigos ĉiujn estantajn sekurkopiajn eldonojn de viaj dosieroj",
 "Enable Files Versioning" => "Kapabligi dosiereldonkontrolon"
 );
diff --git a/apps/files_versions/l10n/es.php b/apps/files_versions/l10n/es.php
index be416f5bfba5ce5fc4d751bd9f4e86c930394e35..83d7ed0da2cd16f459972c77476a33c5e14ba737 100644
--- a/apps/files_versions/l10n/es.php
+++ b/apps/files_versions/l10n/es.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Expirar todas las versiones",
+"Versions" => "Versiones",
+"This will delete all existing backup versions of your files" => "Esto eliminará todas las versiones guardadas como copia de seguridad de tus archivos",
 "Enable Files Versioning" => "Habilitar versionamiento de archivos"
 );
diff --git a/apps/files_versions/l10n/et_EE.php b/apps/files_versions/l10n/et_EE.php
index d136ae241cef9efc5394b5ae56f5893902ba3309..cfc48537e092e890f6e09e219c936f00485ed7b1 100644
--- a/apps/files_versions/l10n/et_EE.php
+++ b/apps/files_versions/l10n/et_EE.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Kõikide versioonide aegumine",
+"Versions" => "Versioonid",
+"This will delete all existing backup versions of your files" => "See kustutab kõik sinu failidest tehtud varuversiooni",
 "Enable Files Versioning" => "Luba failide versioonihaldus"
 );
diff --git a/apps/files_versions/l10n/eu.php b/apps/files_versions/l10n/eu.php
index eacbdd09934bfb50851a884533910a29f76d3199..0f065c1e93ca8f37d458615187694c51382f3740 100644
--- a/apps/files_versions/l10n/eu.php
+++ b/apps/files_versions/l10n/eu.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Iraungi bertsio guztiak",
+"Versions" => "Bertsioak",
+"This will delete all existing backup versions of your files" => "Honek zure fitxategien bertsio guztiak ezabatuko ditu",
 "Enable Files Versioning" => "Gaitu fitxategien bertsioak"
 );
diff --git a/apps/files_versions/l10n/fi_FI.php b/apps/files_versions/l10n/fi_FI.php
index c5092daf998ba0bdfbffcf675feeb01fcca12757..5cfcbf28bd4314885e00aa3dde62abf6d9cf291d 100644
--- a/apps/files_versions/l10n/fi_FI.php
+++ b/apps/files_versions/l10n/fi_FI.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Vanhenna kaikki versiot",
+"Versions" => "Versiot",
+"This will delete all existing backup versions of your files" => "Tämä poistaa kaikki tiedostojesi olemassa olevat varmuuskopioversiot",
 "Enable Files Versioning" => "Käytä tiedostojen versiointia"
 );
diff --git a/apps/files_versions/l10n/fr.php b/apps/files_versions/l10n/fr.php
index 02209f543b1f7f75accec33f6329cf0b235496e6..965fa02de98c61ba82bd9d54bdc7f88fd2764dca 100644
--- a/apps/files_versions/l10n/fr.php
+++ b/apps/files_versions/l10n/fr.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Supprimer les versions intermédiaires",
+"Versions" => "Versions",
+"This will delete all existing backup versions of your files" => "Cette opération va effacer toutes les versions intermédiaires de vos fichiers (et ne garder que la dernière version en date).",
 "Enable Files Versioning" => "Activer le versionnage"
 );
diff --git a/apps/files_versions/l10n/he.php b/apps/files_versions/l10n/he.php
new file mode 100644
index 0000000000000000000000000000000000000000..097169b2a499c783f607ae342063026b61c6289f
--- /dev/null
+++ b/apps/files_versions/l10n/he.php
@@ -0,0 +1,6 @@
+<?php $TRANSLATIONS = array(
+"Expire all versions" => "הפגת תוקף כל הגרסאות",
+"Versions" => "גרסאות",
+"This will delete all existing backup versions of your files" => "פעולה זו תמחק את כל גיבויי הגרסאות הקיימים של הקבצים שלך",
+"Enable Files Versioning" => "הפעלת ניהול גרסאות לקבצים"
+);
diff --git a/apps/files_versions/l10n/it.php b/apps/files_versions/l10n/it.php
index 9711ce18aa879c2724b2a0ff6855cafb63574c0e..b7b0b9627b16de72fbe30e3a338170a192a25585 100644
--- a/apps/files_versions/l10n/it.php
+++ b/apps/files_versions/l10n/it.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Scadenza di tutte le versioni",
+"Versions" => "Versioni",
+"This will delete all existing backup versions of your files" => "Ciò eliminerà tutte le versioni esistenti dei tuoi file",
 "Enable Files Versioning" => "Abilita controllo di versione"
 );
diff --git a/apps/files_versions/l10n/ja_JP.php b/apps/files_versions/l10n/ja_JP.php
index ec5e32f3e29ffdfa485fe34b89d0c4c9a2cefd28..81d17f56f8f5c457a2637fdb2cd3e843007a39fd 100644
--- a/apps/files_versions/l10n/ja_JP.php
+++ b/apps/files_versions/l10n/ja_JP.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "すべてのバージョンを削除する",
+"Versions" => "バージョン",
+"This will delete all existing backup versions of your files" => "これは、あなたのファイルのすべてのバックアップバージョンを削除します",
 "Enable Files Versioning" => "ファイルのバージョン管理を有効にする"
 );
diff --git a/apps/files_versions/l10n/nl.php b/apps/files_versions/l10n/nl.php
index 87e72a36202859f9be34682188c991b4420dc362..da31603ff54b4a311e1cb81e9cd2563281315ab5 100644
--- a/apps/files_versions/l10n/nl.php
+++ b/apps/files_versions/l10n/nl.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Alle versies laten verlopen",
+"Versions" => "Versies",
+"This will delete all existing backup versions of your files" => "Dit zal alle bestaande backup versies van uw bestanden verwijderen",
 "Enable Files Versioning" => "Activeer file versioning"
 );
diff --git a/apps/files_versions/l10n/pl.php b/apps/files_versions/l10n/pl.php
index faf2d39e709695cd5885db4736103633b03416a8..c25d37611a09dd2ddbe80c144744409cfb49e20e 100644
--- a/apps/files_versions/l10n/pl.php
+++ b/apps/files_versions/l10n/pl.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Wygasają wszystkie wersje",
+"Versions" => "Wersje",
+"This will delete all existing backup versions of your files" => "Spowoduje to usunięcie wszystkich istniejących wersji kopii zapasowych plików",
 "Enable Files Versioning" => "Włącz wersjonowanie plików"
 );
diff --git a/apps/files_versions/l10n/pt_BR.php b/apps/files_versions/l10n/pt_BR.php
new file mode 100644
index 0000000000000000000000000000000000000000..a90b48fe3a3182e3a20de2e7ba33e1a57639806f
--- /dev/null
+++ b/apps/files_versions/l10n/pt_BR.php
@@ -0,0 +1,4 @@
+<?php $TRANSLATIONS = array(
+"Expire all versions" => "Expirar todas as versões",
+"Enable Files Versioning" => "Habilitar versionamento de arquivos"
+);
diff --git a/apps/files_versions/l10n/ru.php b/apps/files_versions/l10n/ru.php
index 6a824779f303eff76e800124a3656af98be6ecc4..675dd090d3028bc3180613b7f03c0d173087b87b 100644
--- a/apps/files_versions/l10n/ru.php
+++ b/apps/files_versions/l10n/ru.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Просрочить все версии",
+"Versions" => "Версии",
+"This will delete all existing backup versions of your files" => "Очистить список версий ваших файлов",
 "Enable Files Versioning" => "Включить ведение версий файлов"
 );
diff --git a/apps/files_versions/l10n/sl.php b/apps/files_versions/l10n/sl.php
index e7db55930c170afb7681a57ea42ded036235b0ab..aec6edb3c22e8bda3e0e8f5ded6f36056b479890 100644
--- a/apps/files_versions/l10n/sl.php
+++ b/apps/files_versions/l10n/sl.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Zastaraj vse različice",
+"Versions" => "Različice",
+"This will delete all existing backup versions of your files" => "To bo izbrisalo vse obstoječe različice varnostnih kopij vaših datotek",
 "Enable Files Versioning" => "Omogoči sledenje različicam datotek"
 );
diff --git a/apps/files_versions/l10n/sv.php b/apps/files_versions/l10n/sv.php
index 03d4d54d0b97c436fe114172bffccbfaa919a27b..5788d8ae197e560d68ab63a32b20015c859a9d2c 100644
--- a/apps/files_versions/l10n/sv.php
+++ b/apps/files_versions/l10n/sv.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "Upphör alla versioner",
+"Versions" => "Versioner",
+"This will delete all existing backup versions of your files" => "Detta kommer att radera alla befintliga säkerhetskopior av dina filer",
 "Enable Files Versioning" => "Aktivera versionshantering"
 );
diff --git a/apps/files_versions/l10n/th_TH.php b/apps/files_versions/l10n/th_TH.php
index e880840f4b90c1615c75c51c5988c0a0f6206380..4f26e3bd03598731e51cdbeaa83ad141a4d1d678 100644
--- a/apps/files_versions/l10n/th_TH.php
+++ b/apps/files_versions/l10n/th_TH.php
@@ -1,4 +1,6 @@
 <?php $TRANSLATIONS = array(
 "Expire all versions" => "หมดอายุทุกรุ่น",
+"Versions" => "รุ่น",
+"This will delete all existing backup versions of your files" => "นี่จะเป็นลบทิ้งไฟล์รุ่นที่ทำการสำรองข้อมูลทั้งหมดที่มีอยู่ของคุณทิ้งไป",
 "Enable Files Versioning" => "เปิดใช้งานคุณสมบัติการแยกสถานะรุ่นหรือเวอร์ชั่นของไฟล์"
 );
diff --git a/apps/files_versions/l10n/vi.php b/apps/files_versions/l10n/vi.php
new file mode 100644
index 0000000000000000000000000000000000000000..6743395481fa6f80fff67ae3732230ea87e8be94
--- /dev/null
+++ b/apps/files_versions/l10n/vi.php
@@ -0,0 +1,6 @@
+<?php $TRANSLATIONS = array(
+"Expire all versions" => "Hết hạn tất cả các phiên bản",
+"Versions" => "Phiên bản",
+"This will delete all existing backup versions of your files" => "Điều này sẽ xóa tất cả các phiên bản sao lưu hiện có ",
+"Enable Files Versioning" => "BẬT tập tin phiên bản"
+);
diff --git a/apps/files_versions/l10n/zh_CN.php b/apps/files_versions/l10n/zh_CN.php
new file mode 100644
index 0000000000000000000000000000000000000000..56a474be89ac3e5353be298d514110f1ed87ac93
--- /dev/null
+++ b/apps/files_versions/l10n/zh_CN.php
@@ -0,0 +1,6 @@
+<?php $TRANSLATIONS = array(
+"Expire all versions" => "过期所有版本",
+"Versions" => "版本",
+"This will delete all existing backup versions of your files" => "将会删除您的文件的所有备份版本",
+"Enable Files Versioning" => "开启文件版本"
+);
diff --git a/apps/files_versions/lib/hooks.php b/apps/files_versions/lib/hooks.php
index bfc8fd3a378b6289c421edcfd372f027b871afc7..9ec0b01a7f9321fdc87c569417d9f274c4542312 100644
--- a/apps/files_versions/lib/hooks.php
+++ b/apps/files_versions/lib/hooks.php
@@ -9,7 +9,7 @@
 /**
  * This class contains all hooks.
  */
- 
+
 namespace OCA_Versions;
 
 class Hooks {
@@ -18,58 +18,58 @@ class Hooks {
 	 * listen to write event.
 	 */
 	public static function write_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->store( $path );
-			
+
 		}
 	}
-	
 
-	/**
-	 * @brief Erase versions of deleted file
-	 * @param array
-	 *
-	 * This function is connected to the delete signal of OC_Filesystem
-	 * cleanup the versions directory if the actual file gets deleted
-	 */
+
+	/**
+	 * @brief Erase versions of deleted file
+	 * @param array
+	 *
+	 * This function is connected to the delete signal of OC_Filesystem
+	 * cleanup the versions directory if the actual file gets deleted
+	 */
 	public static function remove_hook($params) {
-		$versions_fileview = \OCP\Files::getStorage('files_versions');
-		$rel_path =  $params['path'];
-		$abs_path = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath('').$rel_path.'.v';
-		if(Storage::isversioned($rel_path)) {
-			$versions = Storage::getVersions($rel_path);
-			foreach ($versions as $v){
-				unlink($abs_path . $v['version']);
-			}
-		}
-	}
-	
-	/**
-	 * @brief rename/move versions of renamed/moved files
-	 * @param array with oldpath and newpath
-	 *
-	 * This function is connected to the rename signal of OC_Filesystem and adjust the name and location
-	 * of the stored versions along the actual file
-	 */
+		$versions_fileview = \OCP\Files::getStorage('files_versions');
+		$rel_path =  $params['path'];
+		$abs_path = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath('').$rel_path.'.v';
+		if(Storage::isversioned($rel_path)) {
+			$versions = Storage::getVersions($rel_path);
+			foreach ($versions as $v) {
+				unlink($abs_path . $v['version']);
+			}
+		}
+	}
+
+	/**
+	 * @brief rename/move versions of renamed/moved files
+	 * @param array with oldpath and newpath
+	 *
+	 * This function is connected to the rename signal of OC_Filesystem and adjust the name and location
+	 * of the stored versions along the actual file
+	 */
 	public static function rename_hook($params) {
-		$versions_fileview = \OCP\Files::getStorage('files_versions');
-		$rel_oldpath =  $params['oldpath'];
-		$abs_oldpath = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath('').$rel_oldpath.'.v';
-		$abs_newpath = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath('').$params['newpath'].'.v';
+		$versions_fileview = \OCP\Files::getStorage('files_versions');
+		$rel_oldpath =  $params['oldpath'];
+		$abs_oldpath = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath('').$rel_oldpath.'.v';
+		$abs_newpath = \OCP\Config::getSystemValue('datadirectory').$versions_fileview->getAbsolutePath('').$params['newpath'].'.v';
 		if(Storage::isversioned($rel_oldpath)) {
-			$info=pathinfo($abs_newpath);
-			if(!file_exists($info['dirname'])) mkdir($info['dirname'],0700,true);
-			$versions = Storage::getVersions($rel_oldpath);
-			foreach ($versions as $v){
-				rename($abs_oldpath.$v['version'], $abs_newpath.$v['version']);
-			}
-		}
+			$info=pathinfo($abs_newpath);
+			if(!file_exists($info['dirname'])) mkdir($info['dirname'],0700,true);
+			$versions = Storage::getVersions($rel_oldpath);
+			foreach ($versions as $v) {
+				rename($abs_oldpath.$v['version'], $abs_newpath.$v['version']);
+			}
+		}
 	}
-	
+
 }
diff --git a/apps/files_versions/lib/versions.php b/apps/files_versions/lib/versions.php
index 30f0b93a7ffd32a916c806859cd3dab46c5c0e93..dedd83fc25a79bdaae0081eaf156b1a84e7741ef 100644
--- a/apps/files_versions/lib/versions.php
+++ b/apps/files_versions/lib/versions.php
@@ -1,311 +1,311 @@
-<?php
-/**
- * Copyright (c) 2012 Frank Karlitschek <frank@owncloud.org>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
- */
-
-/**
- * Versions
- *
- * A class to handle the versioning of files.
- */
-
-namespace OCA_Versions;
-
-class Storage {
-
-
-	// config.php configuration:
-	//   - files_versions
-	//   - files_versionsfolder
-	//   - files_versionsblacklist
-	//   - files_versionsmaxfilesize
-	//   - files_versionsinterval
-	//   - files_versionmaxversions
-	//
-	// todo:
-	//   - finish porting to OC_FilesystemView to enable network transparency
-	//   - add transparent compression. first test if it´s worth it.
-
-	const DEFAULTENABLED=true;
-	const DEFAULTBLACKLIST='avi mp3 mpg mp4 ctmp';
-	const DEFAULTMAXFILESIZE=1048576; // 10MB
-	const DEFAULTMININTERVAL=60; // 1 min
-	const DEFAULTMAXVERSIONS=50;
-
-	private $view;
-
-	function __construct() {
-
-		$this->view = \OCP\Files::getStorage('files_versions');
-
-	}
-
-	/**
-	 * listen to write event.
-	 */
-	public static function write_hook($params) {
-		if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
-			$path = $params[\OC_Filesystem::signal_param_path];
-			if($path<>'') $this->store($path);
-		}
-	}
-
-
-
-	/**
-	 * store a new version of a file.
-	 */
-	public function store($filename) {
-		if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
-
-			$files_view = \OCP\Files::getStorage("files");
-			$users_view = \OCP\Files::getStorage("files_versions");
-			$users_view->chroot(\OCP\User::getUser().'/');
-                        
-			//FIXME OC_Share no longer exists
-			//if (\OCP\App::isEnabled('files_sharing') && $source = \OC_Share::getSource('/'.\OCP\User::getUser().'/files'.$filename)) {
-			//	$pos = strpos($source, '/files', 1);
-			//	$uid = substr($source, 1, $pos - 1);
-			//	$filename = substr($source, $pos + 6);
-			//} else {
-				$uid = \OCP\User::getUser();
-			//}
-				
-			$versionsFolderName=\OCP\Config::getSystemValue('datadirectory') .  $this->view->getAbsolutePath('');
-				
-			//check if source file already exist as version to avoid recursions.
-			if ($users_view->file_exists($filename)) {
-				return false;
-			}
-				
-			// check if filename is a directory
-			if($files_view->is_dir($filename)){
-				return false;
-			}
-
-			// check filetype blacklist
-			$blacklist=explode(' ',\OCP\Config::getSystemValue('files_versionsblacklist', Storage::DEFAULTBLACKLIST));
-			foreach($blacklist as $bl) {
-				$parts=explode('.', $filename);
-				$ext=end($parts);
-				if(strtolower($ext)==$bl) {
-					return false;
-				}
-			}
-				
-			// check filesize
-			if($files_view->filesize($filename)>\OCP\Config::getSystemValue('files_versionsmaxfilesize', Storage::DEFAULTMAXFILESIZE)){
-				return false;
-			}
-
-
-			// check mininterval if the file is being modified by the owner (all shared files should be versioned despite mininterval)
-			if ($uid == \OCP\User::getUser()) {
-				$matches=glob($versionsFolderName.'/'.$filename.'.v*');
-				sort($matches);
-				$parts=explode('.v',end($matches));
-				if((end($parts)+Storage::DEFAULTMININTERVAL)>time()){
-					return false;
-				}
-			}
-
-
-			// create all parent folders
-			$info=pathinfo($filename);
-			if(!file_exists($versionsFolderName.'/'.$info['dirname'])) mkdir($versionsFolderName.'/'.$info['dirname'],0700,true);
-
-			// store a new version of a file
-			@$users_view->copy('files'.$filename, 'files_versions'.$filename.'.v'.time());
-
-			// expire old revisions if necessary
-			Storage::expire($filename);
-		}
-	}
-
-
-	/**
-	 * rollback to an old version of a file.
-	 */
-	public static function rollback($filename,$revision) {
-
-		if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
-			$users_view = \OCP\Files::getStorage("files_versions");
-			$users_view->chroot(\OCP\User::getUser().'/');
-				
-			//FIXME OC_Share no longer exists
-			//if (\OCP\App::isEnabled('files_sharing') && $source = \OC_Share::getSource('/'.\OCP\User::getUser().'/files'.$filename)) {
-			//	$pos = strpos($source, '/files', 1);
-			//	$uid = substr($source, 1, $pos - 1);
-			//	$filename = substr($source, $pos + 6);
-			//} else {
-				$uid = \OCP\User::getUser();
-			//}
-				
-			// rollback
-			if( @$users_view->copy('files_versions'.$filename.'.v'.$revision, 'files'.$filename) ) {
-					
-				return true;
-
-			}else{
-					
-				return false;
-
-			}
-				
-		}
-
-	}
-
-	/**
-	 * check if old versions of a file exist.
-	 */
-	public static function isversioned($filename) {
-		if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
-			$versions_fileview = \OCP\Files::getStorage("files_versions");
-			//FIXME OC_Share no longer exists
-			//if (\OCP\App::isEnabled('files_sharing') && $source = \OC_Share::getSource('/'.\OCP\User::getUser().'/files'.$filename)) {
-			//	$pos = strpos($source, '/files', 1);
-			//	$filename = substr($source, $pos + 6);
-			//}
-
-			$versionsFolderName=\OCP\Config::getSystemValue('datadirectory'). $versions_fileview->getAbsolutePath('');
-			
-			// check for old versions
-			$matches=glob($versionsFolderName.$filename.'.v*');
-			if(count($matches)>0){
-				return true;
-			}else{
-				return false;
-			}
-		}else{
-			return(false);
-		}
-	}
-
-
-
-	/**
-	 * @brief get a list of all available versions of a file in descending chronological order
-	 * @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 ) {
-
-		if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) {
-
-			//FIXME OC_Share no longer exists
-			//if (\OCP\App::isEnabled('files_sharing') && $source = \OC_Share::getSource('/'.\OCP\User::getUser().'/files'.$filename)) {
-			//	$pos = strpos($source, '/files', 1);
-			//	$uid = substr($source, 1, $pos - 1);
-			//	$filename = substr($source, $pos + 6);
-			//} else {
-				$uid = \OCP\User::getUser();
-			//}
-			$versions_fileview = \OCP\Files::getStorage('files_versions');
-			$versionsFolderName = \OCP\Config::getSystemValue('datadirectory'). $versions_fileview->getAbsolutePath('');
-			$versions = array();
-				
-			// fetch for old versions
-			$matches = glob( $versionsFolderName.'/'.$filename.'.v*' );
-				
-			sort( $matches );
-				
-			$i = 0;
-				
-			$files_view = \OCP\Files::getStorage('files');
-			$local_file = $files_view->getLocalFile($filename);
-			foreach( $matches as $ma ) {
-
-				$i++;
-				$versions[$i]['cur'] = 0;
-				$parts = explode( '.v', $ma );
-				$versions[$i]['version'] = ( end( $parts ) );
-
-				// if file with modified date exists, flag it in array as currently enabled version
-				( \md5_file( $ma ) == \md5_file( $local_file ) ? $versions[$i]['fileMatch'] = 1 : $versions[$i]['fileMatch'] = 0 );
-
-			}
-				
-			$versions = array_reverse( $versions );
-			
-			foreach( $versions as $key => $value ) {
-
-				// flag the first matched file in array (which will have latest modification date) as current version
-				if ( $value['fileMatch'] ) {
-
-					$value['cur'] = 1;
-					break;
-						
-				}
-					
-			}
-				
-			$versions = array_reverse( $versions );
-				
-			// only show the newest commits
-			if( $count != 0 and ( count( $versions )>$count ) ) {
-					
-				$versions = array_slice( $versions, count( $versions ) - $count );
-
-			}
-
-			return( $versions );
-
-
-		} else {
-
-			// if versioning isn't enabled then return an empty array
-			return( array() );
-
-		}
-
-	}
-
-	/**
-	 * @brief Erase a file's versions which exceed the set quota
-	 */
-	public static function expire($filename) {
-		if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
-
-			//FIXME OC_Share no longer exists
-			//if (\OCP\App::isEnabled('files_sharing') && $source = \OC_Share::getSource('/'.\OCP\User::getUser().'/files'.$filename)) {
-			//	$pos = strpos($source, '/files', 1);
-			//	$uid = substr($source, 1, $pos - 1);
-			//	$filename = substr($source, $pos + 6);
-			//} else {
-				$uid = \OCP\User::getUser();
-			//}
-			$versions_fileview = \OCP\Files::getStorage("files_versions");
-			$versionsFolderName=\OCP\Config::getSystemValue('datadirectory'). $versions_fileview->getAbsolutePath('');
-
-			// check for old versions
-			$matches = glob( $versionsFolderName.'/'.$filename.'.v*' );
-				
-			if( count( $matches ) > \OCP\Config::getSystemValue( 'files_versionmaxversions', Storage::DEFAULTMAXVERSIONS ) ) {
-					
-				$numberToDelete = count( $matches-\OCP\Config::getSystemValue( 'files_versionmaxversions', Storage::DEFAULTMAXVERSIONS ) );
-
-				// delete old versions of a file
-				$deleteItems = array_slice( $matches, 0, $numberToDelete );
-
-				foreach( $deleteItems as $de ) {
-
-					unlink( $versionsFolderName.'/'.$filename.'.v'.$de );
-						
-				}
-			}
-		}
-	}
-
-	/**
-	 * @brief Erase all old versions of all user files
-	 * @return true/false
-	 */
-	public function expireAll() {
-		return $this->view->deleteAll('', true);
-	}
-}
+<?php
+/**
+ * Copyright (c) 2012 Frank Karlitschek <frank@owncloud.org>
+ * This file is licensed under the Affero General Public License version 3 or
+ * later.
+ * See the COPYING-README file.
+ */
+
+/**
+ * Versions
+ *
+ * A class to handle the versioning of files.
+ */
+
+namespace OCA_Versions;
+
+class Storage {
+
+
+	// config.php configuration:
+	//   - files_versions
+	//   - files_versionsfolder
+	//   - files_versionsblacklist
+	//   - files_versionsmaxfilesize
+	//   - files_versionsinterval
+	//   - files_versionmaxversions
+	//
+	// todo:
+	//   - finish porting to OC_FilesystemView to enable network transparency
+	//   - add transparent compression. first test if it´s worth it.
+
+	const DEFAULTENABLED=true;
+	const DEFAULTBLACKLIST='avi mp3 mpg mp4 ctmp';
+	const DEFAULTMAXFILESIZE=1048576; // 10MB
+	const DEFAULTMININTERVAL=60; // 1 min
+	const DEFAULTMAXVERSIONS=50;
+
+	private $view;
+
+	function __construct() {
+
+		$this->view = \OCP\Files::getStorage('files_versions');
+
+	}
+
+	/**
+	 * listen to write event.
+	 */
+	public static function write_hook($params) {
+		if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
+			$path = $params[\OC_Filesystem::signal_param_path];
+			if($path<>'') $this->store($path);
+		}
+	}
+
+
+
+	/**
+	 * store a new version of a file.
+	 */
+	public function store($filename) {
+		if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
+
+			$files_view = \OCP\Files::getStorage("files");
+			$users_view = \OCP\Files::getStorage("files_versions");
+			$users_view->chroot(\OCP\User::getUser().'/');
+
+			//FIXME OC_Share no longer exists
+			//if (\OCP\App::isEnabled('files_sharing') && $source = \OC_Share::getSource('/'.\OCP\User::getUser().'/files'.$filename)) {
+			//	$pos = strpos($source, '/files', 1);
+			//	$uid = substr($source, 1, $pos - 1);
+			//	$filename = substr($source, $pos + 6);
+			//} else {
+				$uid = \OCP\User::getUser();
+			//}
+
+			$versionsFolderName=\OCP\Config::getSystemValue('datadirectory') .  $this->view->getAbsolutePath('');
+
+			//check if source file already exist as version to avoid recursions.
+			if ($users_view->file_exists($filename)) {
+				return false;
+			}
+
+			// check if filename is a directory
+			if($files_view->is_dir($filename)) {
+				return false;
+			}
+
+			// check filetype blacklist
+			$blacklist=explode(' ',\OCP\Config::getSystemValue('files_versionsblacklist', Storage::DEFAULTBLACKLIST));
+			foreach($blacklist as $bl) {
+				$parts=explode('.', $filename);
+				$ext=end($parts);
+				if(strtolower($ext)==$bl) {
+					return false;
+				}
+			}
+
+			// check filesize
+			if($files_view->filesize($filename)>\OCP\Config::getSystemValue('files_versionsmaxfilesize', Storage::DEFAULTMAXFILESIZE)) {
+				return false;
+			}
+
+
+			// check mininterval if the file is being modified by the owner (all shared files should be versioned despite mininterval)
+			if ($uid == \OCP\User::getUser()) {
+				$matches=glob($versionsFolderName.'/'.$filename.'.v*');
+				sort($matches);
+				$parts=explode('.v',end($matches));
+				if((end($parts)+Storage::DEFAULTMININTERVAL)>time()) {
+					return false;
+				}
+			}
+
+
+			// create all parent folders
+			$info=pathinfo($filename);
+			if(!file_exists($versionsFolderName.'/'.$info['dirname'])) mkdir($versionsFolderName.'/'.$info['dirname'],0700,true);
+
+			// store a new version of a file
+			@$users_view->copy('files'.$filename, 'files_versions'.$filename.'.v'.time());
+
+			// expire old revisions if necessary
+			Storage::expire($filename);
+		}
+	}
+
+
+	/**
+	 * rollback to an old version of a file.
+	 */
+	public static function rollback($filename,$revision) {
+
+		if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
+			$users_view = \OCP\Files::getStorage("files_versions");
+			$users_view->chroot(\OCP\User::getUser().'/');
+
+			//FIXME OC_Share no longer exists
+			//if (\OCP\App::isEnabled('files_sharing') && $source = \OC_Share::getSource('/'.\OCP\User::getUser().'/files'.$filename)) {
+			//	$pos = strpos($source, '/files', 1);
+			//	$uid = substr($source, 1, $pos - 1);
+			//	$filename = substr($source, $pos + 6);
+			//} else {
+				$uid = \OCP\User::getUser();
+			//}
+
+			// rollback
+			if( @$users_view->copy('files_versions'.$filename.'.v'.$revision, 'files'.$filename) ) {
+
+				return true;
+
+			}else{
+
+				return false;
+
+			}
+
+		}
+
+	}
+
+	/**
+	 * check if old versions of a file exist.
+	 */
+	public static function isversioned($filename) {
+		if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
+			$versions_fileview = \OCP\Files::getStorage("files_versions");
+			//FIXME OC_Share no longer exists
+			//if (\OCP\App::isEnabled('files_sharing') && $source = \OC_Share::getSource('/'.\OCP\User::getUser().'/files'.$filename)) {
+			//	$pos = strpos($source, '/files', 1);
+			//	$filename = substr($source, $pos + 6);
+			//}
+
+			$versionsFolderName=\OCP\Config::getSystemValue('datadirectory'). $versions_fileview->getAbsolutePath('');
+
+			// check for old versions
+			$matches=glob($versionsFolderName.$filename.'.v*');
+			if(count($matches)>0) {
+				return true;
+			}else{
+				return false;
+			}
+		}else{
+			return(false);
+		}
+	}
+
+
+
+	/**
+	 * @brief get a list of all available versions of a file in descending chronological order
+	 * @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 ) {
+
+		if( \OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true' ) {
+
+			//FIXME OC_Share no longer exists
+			//if (\OCP\App::isEnabled('files_sharing') && $source = \OC_Share::getSource('/'.\OCP\User::getUser().'/files'.$filename)) {
+			//	$pos = strpos($source, '/files', 1);
+			//	$uid = substr($source, 1, $pos - 1);
+			//	$filename = substr($source, $pos + 6);
+			//} else {
+				$uid = \OCP\User::getUser();
+			//}
+			$versions_fileview = \OCP\Files::getStorage('files_versions');
+			$versionsFolderName = \OCP\Config::getSystemValue('datadirectory'). $versions_fileview->getAbsolutePath('');
+			$versions = array();
+
+			// fetch for old versions
+			$matches = glob( $versionsFolderName.'/'.$filename.'.v*' );
+
+			sort( $matches );
+
+			$i = 0;
+
+			$files_view = \OCP\Files::getStorage('files');
+			$local_file = $files_view->getLocalFile($filename);
+			foreach( $matches as $ma ) {
+
+				$i++;
+				$versions[$i]['cur'] = 0;
+				$parts = explode( '.v', $ma );
+				$versions[$i]['version'] = ( end( $parts ) );
+
+				// if file with modified date exists, flag it in array as currently enabled version
+				( \md5_file( $ma ) == \md5_file( $local_file ) ? $versions[$i]['fileMatch'] = 1 : $versions[$i]['fileMatch'] = 0 );
+
+			}
+
+			$versions = array_reverse( $versions );
+
+			foreach( $versions as $key => $value ) {
+
+				// flag the first matched file in array (which will have latest modification date) as current version
+				if ( $value['fileMatch'] ) {
+
+					$value['cur'] = 1;
+					break;
+
+				}
+
+			}
+
+			$versions = array_reverse( $versions );
+
+			// only show the newest commits
+			if( $count != 0 and ( count( $versions )>$count ) ) {
+
+				$versions = array_slice( $versions, count( $versions ) - $count );
+
+			}
+
+			return( $versions );
+
+
+		} else {
+
+			// if versioning isn't enabled then return an empty array
+			return( array() );
+
+		}
+
+	}
+
+	/**
+	 * @brief Erase a file's versions which exceed the set quota
+	 */
+	public static function expire($filename) {
+		if(\OCP\Config::getSystemValue('files_versions', Storage::DEFAULTENABLED)=='true') {
+
+			//FIXME OC_Share no longer exists
+			//if (\OCP\App::isEnabled('files_sharing') && $source = \OC_Share::getSource('/'.\OCP\User::getUser().'/files'.$filename)) {
+			//	$pos = strpos($source, '/files', 1);
+			//	$uid = substr($source, 1, $pos - 1);
+			//	$filename = substr($source, $pos + 6);
+			//} else {
+				$uid = \OCP\User::getUser();
+			//}
+			$versions_fileview = \OCP\Files::getStorage("files_versions");
+			$versionsFolderName=\OCP\Config::getSystemValue('datadirectory'). $versions_fileview->getAbsolutePath('');
+
+			// check for old versions
+			$matches = glob( $versionsFolderName.'/'.$filename.'.v*' );
+
+			if( count( $matches ) > \OCP\Config::getSystemValue( 'files_versionmaxversions', Storage::DEFAULTMAXVERSIONS ) ) {
+
+				$numberToDelete = count( $matches-\OCP\Config::getSystemValue( 'files_versionmaxversions', Storage::DEFAULTMAXVERSIONS ) );
+
+				// delete old versions of a file
+				$deleteItems = array_slice( $matches, 0, $numberToDelete );
+
+				foreach( $deleteItems as $de ) {
+
+					unlink( $versionsFolderName.'/'.$filename.'.v'.$de );
+
+				}
+			}
+		}
+	}
+
+	/**
+	 * @brief Erase all old versions of all user files
+	 * @return true/false
+	 */
+	public function expireAll() {
+		return $this->view->deleteAll('', true);
+	}
+}
diff --git a/apps/files_versions/settings-personal.php b/apps/files_versions/settings-personal.php
index db80172979dd3fbd6bc0478c5b89e714841f73e5..4fb866bd999462979b7c1be5c2e40f65ebe13982 100644
--- a/apps/files_versions/settings-personal.php
+++ b/apps/files_versions/settings-personal.php
@@ -5,4 +5,3 @@ $tmpl = new OCP\Template( 'files_versions', 'settings-personal');
 OCP\Util::addscript('files_versions','settings-personal');
 
 return $tmpl->fetchPage();
-?>
\ No newline at end of file
diff --git a/apps/files_versions/templates/history.php b/apps/files_versions/templates/history.php
index 1b4425564212ebddec4e6f1ca82334b3159d8596..99bc153a816ad41275f1fda3ff1ec810eee5780d 100644
--- a/apps/files_versions/templates/history.php
+++ b/apps/files_versions/templates/history.php
@@ -11,18 +11,18 @@ if( isset( $_['message'] ) ) {
 }else{
 
 	if( isset( $_['outcome_stat'] ) ) {
-		
+
 		echo( '<div id="feedback-messages" class="'.$_['outcome_stat'].'"><h3>'.$_['outcome_msg'] ).'</h3></div><br>';
 
 	}
 
 	echo( '<strong>Versions of '.$_['path'] ).'</strong><br>';
 	echo('<p><em>Revert a file to a previous version by clicking on its revert button</em></p><br />');
-	
+
 	foreach ( $_['versions'] as $v ) {
 		echo ' ';
 		echo OCP\Util::formatDate( doubleval($v['version']) );
-		echo ' <a href="'.OCP\Util::linkTo('files_versions', 'history.php').'?path='.urlencode( $_['path'] ).'&revert='. $v['version'] .'" class="button">Revert</a><br /><br />';
+		echo ' <a href="'.OCP\Util::linkTo('files_versions', 'history.php', array('path' => urlencode( $_['path'] ), 'revert' => $v['version'])) .'" class="button">Revert</a><br /><br />';
 		if ( $v['cur'] ) { echo '  (<b>Current</b>)'; }
 		echo '<br /><br />';
 	}
diff --git a/apps/files_versions/templates/settings-personal.php b/apps/files_versions/templates/settings-personal.php
index fe9ba381e5866e8ce9c8994a27f5459190c71d89..6d97cea46c3e99728b7584afe9d1cae0b3a88a83 100644
--- a/apps/files_versions/templates/settings-personal.php
+++ b/apps/files_versions/templates/settings-personal.php
@@ -1,9 +1,14 @@
 <form id="versions">
 	<fieldset class="personalblock">
 		<legend>
-			<strong>Versions</strong><!-- translate using echo $l->t('foo'); -->
+			<strong><?php echo $l->t('Versions'); ?></strong>
 		</legend>
-		<p>This will delete all existing backup versions of your files</p><!-- translate using echo $l->t('foo'); -->
-		<button id="expireAllBtn">Expire all versions<img style="display: none;" class="expireAllLoading" src="<?php echo OCP\Util::imagePath('core', 'loading.gif'); ?>" /></button>
+		<p>
+            <?php echo $l->t('This will delete all existing backup versions of your files'); ?>
+        </p>
+		<button id="expireAllBtn">
+            <?php echo $l->t('Expire all versions'); ?>
+            <img style="display: none;" class="expireAllLoading" src="<?php echo OCP\Util::imagePath('core', 'loading.gif'); ?>" />
+        </button>
 	</fieldset>
 </form>
diff --git a/apps/user_ldap/appinfo/install.php b/apps/user_ldap/appinfo/install.php
index 9efc3bb24d283971a108275fa367b63aae0ed18a..378957ec4095dba8968f4301d4bbe65860f3c8cb 100644
--- a/apps/user_ldap/appinfo/install.php
+++ b/apps/user_ldap/appinfo/install.php
@@ -1,6 +1,6 @@
 <?php
 
 $state = OCP\Config::getSystemValue('ldapIgnoreNamingRules', 'doSet');
-if($state == 'doSet'){
+if($state == 'doSet') {
 	OCP\Config::setSystemValue('ldapIgnoreNamingRules', false);
 }
diff --git a/apps/user_ldap/appinfo/update.php b/apps/user_ldap/appinfo/update.php
index f06655c1dc1b30e38a1da9990464c09234eab32d..f23285a0dc63a744d5ae9776c9c435b66948ed88 100644
--- a/apps/user_ldap/appinfo/update.php
+++ b/apps/user_ldap/appinfo/update.php
@@ -18,7 +18,7 @@ if(!is_null($pw)) {
 //detect if we can switch on naming guidelines. We won't do it on conflicts.
 //it's a bit spaghetti, but hey.
 $state = OCP\Config::getSystemValue('ldapIgnoreNamingRules', 'unset');
-if($state == 'unset'){
+if($state == 'unset') {
 	OCP\Config::setSystemValue('ldapIgnoreNamingRules', false);
 }
 
@@ -34,7 +34,7 @@ $groupBE = new \OCA\user_ldap\GROUP_LDAP();
 $groupBE->setConnector($connector);
 
 foreach($objects as $object) {
-	$fetchDNSql = 'SELECT `ldap_dn` FROM `*PREFIX*ldap_'.$object.'_mapping`';
+	$fetchDNSql = 'SELECT `ldap_dn`, `owncloud_name` FROM `*PREFIX*ldap_'.$object.'_mapping` WHERE `directory_uuid` = ""';
 	$updateSql = 'UPDATE `*PREFIX*ldap_'.$object.'_mapping` SET `ldap_DN` = ?, `directory_uuid` = ? WHERE `ldap_dn` = ?';
 
 	$query = OCP\DB::prepare($fetchDNSql);
@@ -45,6 +45,8 @@ foreach($objects as $object) {
 		$newDN = mb_strtolower($dn['ldap_dn'], 'UTF-8');
 		if($object == 'user') {
 			$uuid = $userBE->getUUID($newDN);
+			//fix home folder to avoid new ones depending on the configuration
+			$userBE->getHome($dn['owncloud_name']);
 		} else {
 			$uuid = $groupBE->getUUID($newDN);
 		}
diff --git a/apps/user_ldap/appinfo/version b/apps/user_ldap/appinfo/version
index e689e4949ef5b33461c62c5b05bdfba5297c41e2..444b3e8a75a0eed4fc14cfdb7c64a17e739a1c79 100644
--- a/apps/user_ldap/appinfo/version
+++ b/apps/user_ldap/appinfo/version
@@ -1 +1 @@
-0.2.0.26
\ No newline at end of file
+0.2.0.30
\ No newline at end of file
diff --git a/apps/user_ldap/group_ldap.php b/apps/user_ldap/group_ldap.php
index b29ebe30c51728653a083e7630dd871cf3ff93d6..5ec259f6c47c26679da8ff9e10e9eebc3a1f34a5 100644
--- a/apps/user_ldap/group_ldap.php
+++ b/apps/user_ldap/group_ldap.php
@@ -231,8 +231,27 @@ class GROUP_LDAP extends lib\Access implements \OCP\GroupInterface {
 	 * @param string $gid
 	 * @return bool
 	 */
-	public function groupExists($gid){
-		return in_array($gid, $this->getGroups());
+	public function groupExists($gid) {
+		if($this->connection->isCached('groupExists'.$gid)) {
+			return $this->connection->getFromCache('groupExists'.$gid);
+		}
+
+		//getting dn, if false the group does not exist. If dn, it may be mapped only, requires more checking.
+		$dn = $this->username2dn($gid);
+		if(!$dn) {
+			$this->connection->writeToCache('groupExists'.$gid, false);
+			return false;
+		}
+
+		//if group really still exists, we will be able to read its objectclass
+		$objcs = $this->readAttribute($dn, 'objectclass');
+		if(!$objcs || empty($objcs)) {
+			$this->connection->writeToCache('groupExists'.$gid, false);
+			return false;
+		}
+
+		$this->connection->writeToCache('groupExists'.$gid, true);
+		return true;
 	}
 
 	/**
diff --git a/apps/user_ldap/l10n/ca.php b/apps/user_ldap/l10n/ca.php
index 04b0f8997db722ac5532e09a34d5baa5c2014336..be72912040d1dea413eb41672a158ef374995a68 100644
--- a/apps/user_ldap/l10n/ca.php
+++ b/apps/user_ldap/l10n/ca.php
@@ -32,5 +32,6 @@
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "Atribut LDAP a usar per generar el nom de grup ownCloud.",
 "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 6c0f227fa7a91ec9c13018ac45c9e499855fe067..c90dc9ed56891265bc53d793790a11930d97828b 100644
--- a/apps/user_ldap/l10n/cs_CZ.php
+++ b/apps/user_ldap/l10n/cs_CZ.php
@@ -1,36 +1,37 @@
 <?php $TRANSLATIONS = array(
-"Host" => "Hostitel",
-"You can omit the protocol, except you require SSL. Then start with ldaps://" => "Nelze vynechat protokol vyžadující SSL. Začněte s ldaps://",
-"Base DN" => "Base DN",
-"You can specify Base DN for users and groups in the Advanced tab" => "V Rozšířeném nastavení můžete specifikovat pro své uživatele a skupiny element Base DN",
-"User DN" => "DN uživatele",
+"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",
+"You can specify Base DN for users and groups in the Advanced tab" => "V rozšířeném nastavení můžete určit základní DN pro uživatele a skupiny",
+"User DN" => "Uživatelské 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 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é.",
 "Password" => "Heslo",
-"For anonymous access, leave DN and Password empty." => "Pro anonymní přístup ponechte údaje DN and Heslo prázdné.",
-"User Login Filter" => "Filtr uživatelských loginů",
-"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action." => "Definuje filtr, který je aplikován v průběhu logování. %%uid nahrazuje uživatelské jméno během logování.",
-"use %%uid placeholder, e.g. \"uid=%%uid\"" => "použijte %%uid pro rezervované místo, např. \"uid=%%uid\"",
-"User List Filter" => "Filtr uživateslkých seznamů",
-"Defines the filter to apply, when retrieving users." => "Defunije filtr, který je plaikován při návratu uživatelů.",
-"without any placeholder, e.g. \"objectClass=person\"." => "bez rezervace místa, např. \"objectClass=person\".",
-"Group Filter" => "Filtr skupiny",
-"Defines the filter to apply, when retrieving groups." => "Definuje filtr, který je aplikován při návratu skupin",
-"without any placeholder, e.g. \"objectClass=posixGroup\"." => "bez rezervace místa, např. \"objectClass=posixGroup\".",
+"For anonymous access, leave DN and Password empty." => "Pro anonymní přístup, ponechte údaje DN and heslo prázdné.",
+"User Login Filter" => "Filtr přihlášení uživatelů",
+"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action." => "Určuje použitý filtr, při pokusu o přihlášení. %%uid nahrazuje uživatelské jméno v činnosti přihlášení.",
+"use %%uid placeholder, e.g. \"uid=%%uid\"" => "použijte zástupný vzor %%uid, např. \"uid=%%uid\"",
+"User List Filter" => "Filtr uživatelských seznamů",
+"Defines the filter to apply, when retrieving users." => "Určuje použitý filtr, pro získávaní uživatelů.",
+"without any placeholder, e.g. \"objectClass=person\"." => "bez zástupných znaků, např. \"objectClass=person\".",
+"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\".",
 "Port" => "Port",
 "Base User Tree" => "Základní uživatelský strom",
 "Base Group Tree" => "Základní skupinový strom",
 "Group-Member association" => "Asociace člena skupiny",
-"Use TLS" => "Použijte TLS",
-"Do not use it for SSL connections, it will fail." => "Nepoužívejte pro SSL připojení, připojení selže.",
+"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." => "Vypněte 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 pracuje připojení pouze pokud je teto volba aktivní, importujte SSL certifikát LDAP serveru do Vašeho serveru ownCloud.",
-"Not recommended, use for testing only." => "Není doporučeno, pouze pro účely testování.",
+"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.",
 "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",
 "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",
-"in bytes" => "v bytech",
-"in seconds. A change empties the cache." => "ve vteřinách. Změna vyprázdní dočasnou paměť.",
+"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/de.php b/apps/user_ldap/l10n/de.php
index 9f917f277c4552f2a103b41784d25ead1ee22849..2c178d0b4fd9471e969c0649ffce5d09739a5e73 100644
--- a/apps/user_ldap/l10n/de.php
+++ b/apps/user_ldap/l10n/de.php
@@ -23,7 +23,7 @@
 "Use TLS" => "Nutze TLS",
 "Do not use it for SSL connections, it will fail." => "Verwenden Sie es 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.",
+"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, wird das SSL-Zertifikat des LDAP-Server importiert werden.",
 "Not recommended, use for testing only." => "Nicht empfohlen, nur zu Testzwecken.",
 "User Display Name Field" => "Feld für den Anzeigenamen des Benutzers",
@@ -32,5 +32,6 @@
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "Das LDAP-Attribut für die Generierung des Gruppennamens in ownCloud. ",
 "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. Anderenfalls geben Sie ein LDAP/AD-Attribut an.",
 "Help" => "Hilfe"
 );
diff --git a/apps/user_ldap/l10n/el.php b/apps/user_ldap/l10n/el.php
index 2f3c747a6725c16000590a268e19cdf753e4d753..1bb72f163a7305b3674ef9315b1f9857b4dd879d 100644
--- a/apps/user_ldap/l10n/el.php
+++ b/apps/user_ldap/l10n/el.php
@@ -1,6 +1,17 @@
 <?php $TRANSLATIONS = array(
+"Base DN" => "Base DN",
+"User DN" => "User DN",
 "Password" => "Συνθηματικό",
+"User Login Filter" => "User Login Filter",
+"User List Filter" => "User List Filter",
+"Group Filter" => "Group Filter",
 "Port" => "Θύρα",
+"Base User Tree" => "Base User Tree",
+"Base Group Tree" => "Base Group Tree",
+"Group-Member association" => "Group-Member association",
+"Use TLS" => "Χρήση TLS",
+"User Display Name Field" => "User Display Name Field",
+"Group Display Name Field" => "Group Display Name Field",
 "in bytes" => "σε bytes",
 "Help" => "Βοήθεια"
 );
diff --git a/apps/user_ldap/l10n/eo.php b/apps/user_ldap/l10n/eo.php
index 6f18506b095bdb5d2f19b54fa0007f644a7959a0..683c60ef840e5f6404b1983c0831b993008f91d0 100644
--- a/apps/user_ldap/l10n/eo.php
+++ b/apps/user_ldap/l10n/eo.php
@@ -17,6 +17,7 @@
 "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)",
@@ -28,5 +29,6 @@
 "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.",
 "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 55abf7b88e07778a4f099f594304d9a749b102ed..c89ceb8eee297674a33e6a735bc23b82b8763e81 100644
--- a/apps/user_ldap/l10n/es.php
+++ b/apps/user_ldap/l10n/es.php
@@ -1,7 +1,37 @@
 <?php $TRANSLATIONS = array(
+"Host" => "Servidor",
+"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",
+"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.",
 "Password" => "Contraseña",
+"For anonymous access, leave DN and Password empty." => "Para acceso anónimo, deje DN y contraseña vacíos.",
+"User Login Filter" => "Filtro de inicio de sesión de usuario",
+"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action." => "Define el filtro a aplicar cuando se ha realizado un login. %%uid remplazrá el nombre de usuario en el proceso de login.",
+"use %%uid placeholder, e.g. \"uid=%%uid\"" => "usar %%uid como placeholder, ej: \"uid=%%uid\"",
+"User List Filter" => "Lista de filtros de usuario",
+"Defines the filter to apply, when retrieving users." => "Define el filtro a aplicar, cuando se obtienen usuarios.",
+"without any placeholder, e.g. \"objectClass=person\"." => "Sin placeholder, ej: \"objectClass=person\".",
+"Group Filter" => "Filtro de grupo",
+"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.",
+"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.",
+"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.",
 "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/et_EE.php b/apps/user_ldap/l10n/et_EE.php
new file mode 100644
index 0000000000000000000000000000000000000000..f83142225e2a964e4c6f8f2e4acc8ff58d008801
--- /dev/null
+++ b/apps/user_ldap/l10n/et_EE.php
@@ -0,0 +1,31 @@
+<?php $TRANSLATIONS = array(
+"Host" => "Host",
+"Base DN" => "Baas DN",
+"User DN" => "Kasutaja DN",
+"Password" => "Parool",
+"User Login Filter" => "Kasutajanime filter",
+"use %%uid placeholder, e.g. \"uid=%%uid\"" => "kasuta %%uid kohatäitjat, nt. \"uid=%%uid\"",
+"User List Filter" => "Kasutajate nimekirja filter",
+"Defines the filter to apply, when retrieving users." => "Määrab kasutajaid hankides filtri, mida rakendatakse.",
+"without any placeholder, e.g. \"objectClass=person\"." => "ilma ühegi kohatäitjata, nt. \"objectClass=person\".",
+"Group Filter" => "Grupi filter",
+"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.",
+"Not recommended, use for testing only." => "Pole soovitatav, kasuta ainult testimiseks.",
+"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.",
+"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.",
+"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 cc042b13892716d61277c325b676dd54931a0571..35dacef3f2f5a449781825d6412f4c20bb35ea61 100644
--- a/apps/user_ldap/l10n/eu.php
+++ b/apps/user_ldap/l10n/eu.php
@@ -32,5 +32,6 @@
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "ownCloud taldearen izena sortzeko erabiliko den LDAP atributua",
 "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
new file mode 100644
index 0000000000000000000000000000000000000000..4432422116863522faf7df2e1891eeb09ede698c
--- /dev/null
+++ b/apps/user_ldap/l10n/fa.php
@@ -0,0 +1,5 @@
+<?php $TRANSLATIONS = array(
+"Host" => "میزبانی",
+"Password" => "رمز عبور",
+"Help" => "راه‌نما"
+);
diff --git a/apps/user_ldap/l10n/fi_FI.php b/apps/user_ldap/l10n/fi_FI.php
index f6d16f3acc1de9348528dfd6f005b45204afec67..24195649a64a7ede50fd11375e4811312dbc55cf 100644
--- a/apps/user_ldap/l10n/fi_FI.php
+++ b/apps/user_ldap/l10n/fi_FI.php
@@ -1,13 +1,14 @@
 <?php $TRANSLATIONS = array(
 "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 käytät SSL:ää. Aloita silloin ldaps://",
+"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",
-"You can specify Base DN for users and groups in the Advanced tab" => "Voit määrittää käyttäjien ja ryhmien oletus DN:n (distinguished name) 'tarkemmat asetukset' välilehdeltä  ",
+"You can specify Base DN for users and groups in the Advanced tab" => "Voit määrittää käyttäjien ja ryhmien oletus DN:n (distinguished name) 'tarkemmat asetukset'-välilehdeltä  ",
 "User DN" => "Käyttäjän 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." => "Asiakasohjelman DN, jolla yhdistäminen tehdään, ts. uid=agent,dc=example,dc=com. Mahdollistaaksesi anonyymin yhteyden, jätä DN ja salasana tyhjäksi.",
 "Password" => "Salasana",
 "For anonymous access, leave DN and Password empty." => "Jos haluat mahdollistaa anonyymin pääsyn, jätä DN ja Salasana tyhjäksi ",
 "User Login Filter" => "Login suodatus",
+"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action." => "Määrittelee käytettävän suodattimen, kun sisäänkirjautumista yritetään. %%uid korvaa sisäänkirjautumisessa käyttäjätunnuksen.",
 "use %%uid placeholder, e.g. \"uid=%%uid\"" => "käytä %%uid paikanvaraajaa, ts. \"uid=%%uid\"",
 "User List Filter" => "Käyttäjien suodatus",
 "Defines the filter to apply, when retrieving users." => "Määrittelee käytettävän suodattimen, kun käyttäjiä haetaan.  ",
@@ -16,16 +17,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" => "Oletus käyttäjäpuu",
+"Base User Tree" => "Oletuskäyttäjäpuu",
 "Base Group Tree" => "Ryhmien juuri",
-"Group-Member association" => "Ryhmä-jäsen assosiaatio (yhteys)",
+"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. ",
+"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." => "Sulje SSL sertifikaatin käyttö",
-"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Jos yhteys toimii vain tällä optiolla, siirrä LDAP palvelimen SSL sertifikaatti onwCloud palvelimellesi. ",
+"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.",
+"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ä ",
+"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",
 "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 64edf3b46803415dc973dd76afd0606762f825bd..a0b1c6b7d9cf855f4f77583012fb44f6b1125e5e 100644
--- a/apps/user_ldap/l10n/fr.php
+++ b/apps/user_ldap/l10n/fr.php
@@ -1,14 +1,14 @@
 <?php $TRANSLATIONS = array(
 "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 de base",
-"You can specify Base DN for users and groups in the Advanced tab" => "Vous pouvez spécifier le DN de base pour les utilisateurs et les groupes dans l'onglet Avancé",
-"User DN" => "DN Utilisateur",
+"Base DN" => "DN Racine",
+"You can specify Base DN for users and groups in the Advanced tab" => "Vous pouvez détailler les DN Racines de vos utilisateurs et groupes dans l'onglet Avancé",
+"User DN" => "DN Utilisateur (Autorisé à consulter l'annuaire)",
 "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." => "Le DN de l'utilisateur client avec lequel la liaison doit se faire, par exemple uid=agent,dc=example,dc=com. Pour l'accès anonyme, laisser le DN et le mot de passe vides.",
 "Password" => "Mot de passe",
-"For anonymous access, leave DN and Password empty." => "Pour l'accès anonyme, laisser le DN et le mot de passe vides.",
-"User Login Filter" => "Filtre d'identifiants utilisateur",
-"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action." => "Définit le filtre à appliquer lors d'une tentative de connexion. %%uid remplace le nom d'utilisateur lors de la connexion.",
+"For anonymous access, leave DN and Password empty." => "Pour un accès anonyme, laisser le DN Utilisateur et le mot de passe vides.",
+"User Login Filter" => "Modèle d'authentification utilisateurs",
+"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action." => "Définit le motif à appliquer, lors d'une tentative de connexion. %%uid est remplacé par le nom d'utilisateur lors de la connexion.",
 "use %%uid placeholder, e.g. \"uid=%%uid\"" => "veuillez utiliser le champ %%uid , ex.: \"uid=%%uid\"",
 "User List Filter" => "Filtre d'utilisateurs",
 "Defines the filter to apply, when retrieving users." => "Définit le filtre à appliquer lors de la récupération des utilisateurs.",
@@ -17,16 +17,21 @@
 "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\".",
 "Port" => "Port",
+"Base User Tree" => "DN racine de l'arbre utilisateurs",
+"Base Group Tree" => "DN racine de l'arbre groupes",
 "Group-Member association" => "Association groupe-membre",
 "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",
+"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 recommendé, utilisation pour tests uniquement.",
-"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",
-"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",
+"Not recommended, use for testing only." => "Non recommandé, utilisation pour tests uniquement.",
+"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.",
+"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.",
 "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/it.php b/apps/user_ldap/l10n/it.php
index c86b4ea2a575618711ace7fcddc21e53972b20f5..f07f0aa5a420d27258adec503cd558092fe4f990 100644
--- a/apps/user_ldap/l10n/it.php
+++ b/apps/user_ldap/l10n/it.php
@@ -32,5 +32,6 @@
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "L'attributo LDAP da usare per generare il nome del gruppo ownCloud.",
 "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 8d4473b4e2803ee2ff314d1e1e87bfefcd5dc32f..c8599f5636236c45489a45676c7462f289d763eb 100644
--- a/apps/user_ldap/l10n/ja_JP.php
+++ b/apps/user_ldap/l10n/ja_JP.php
@@ -32,5 +32,6 @@
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "グループのownCloud名の生成に利用するLDAP属性。",
 "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/pl.php b/apps/user_ldap/l10n/pl.php
index fa7618d68dcd26cd2dd585f3abd837e24036ecb4..7ebebe1e073e18c09909d0986b70e6b25c7ee416 100644
--- a/apps/user_ldap/l10n/pl.php
+++ b/apps/user_ldap/l10n/pl.php
@@ -32,5 +32,6 @@
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "Atrybut LDAP służy do generowania nazwy grup ownCloud.",
 "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/ro.php b/apps/user_ldap/l10n/ro.php
index 326e47f96fea61b12fb2918d607ab992d4e544d7..beeed857455c30306271313e705e97ec2ae457cd 100644
--- a/apps/user_ldap/l10n/ro.php
+++ b/apps/user_ldap/l10n/ro.php
@@ -32,5 +32,6 @@
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "Atributul LDAP folosit pentru a genera numele grupurilor din ownCloud",
 "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 fc89d998065b5b8ce4ccfdcdf2d5eaacb6b7628b..92982d868b84bfbd6779a1330f95a8314730ef9d 100644
--- a/apps/user_ldap/l10n/ru.php
+++ b/apps/user_ldap/l10n/ru.php
@@ -15,12 +15,23 @@
 "without any placeholder, e.g. \"objectClass=person\"." => "без заполнителя, например: \"objectClass=person\".",
 "Group Filter" => "Фильтр группы",
 "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." => "Не рекомендуется, используйте только для тестирования.",
+"User Display Name Field" => "Поле отображаемого имени пользователя",
+"The LDAP attribute to use to generate the user`s ownCloud name." => "Атрибут LDAP для генерации имени пользователя ownCloud.",
+"Group Display Name Field" => "Поле отображаемого имени группы",
+"The LDAP attribute to use to generate the groups`s ownCloud name." => "Атрибут LDAP для генерации имени группы ownCloud.",
 "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/sl.php b/apps/user_ldap/l10n/sl.php
index 312346958bee3ab0b8f008d339cc06d355bffe10..fd28b6401562b65961d53c554c5159b98595c83f 100644
--- a/apps/user_ldap/l10n/sl.php
+++ b/apps/user_ldap/l10n/sl.php
@@ -32,5 +32,6 @@
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "LDAP atribut uporabljen pri ustvarjanju ownCloud imen skupin.",
 "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 LDAP/AD atribut.",
 "Help" => "Pomoč"
 );
diff --git a/apps/user_ldap/l10n/sv.php b/apps/user_ldap/l10n/sv.php
index a23cc094b4d94288897b666a54269a00d91e3a66..2a0abb9296778dc47ffa00b6aaca82c818a86fba 100644
--- a/apps/user_ldap/l10n/sv.php
+++ b/apps/user_ldap/l10n/sv.php
@@ -32,5 +32,6 @@
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "Attribut som används för att generera gruppnamn i ownCloud.",
 "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/th_TH.php b/apps/user_ldap/l10n/th_TH.php
index a1baa648135f440dd5af0d218321d7a061f874d0..acc7a4936bcca688c8a72dbe2f89686fdb1fa640 100644
--- a/apps/user_ldap/l10n/th_TH.php
+++ b/apps/user_ldap/l10n/th_TH.php
@@ -32,5 +32,6 @@
 "The LDAP attribute to use to generate the groups`s ownCloud name." => "คุณลักษณะ LDAP ที่ต้องการใช้สร้างชื่อกลุ่มของ ownCloud",
 "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/uk.php b/apps/user_ldap/l10n/uk.php
new file mode 100644
index 0000000000000000000000000000000000000000..fd6a88d23728587dbedc20722500587af891e5f4
--- /dev/null
+++ b/apps/user_ldap/l10n/uk.php
@@ -0,0 +1,4 @@
+<?php $TRANSLATIONS = array(
+"Password" => "Пароль",
+"Help" => "Допомога"
+);
diff --git a/apps/user_ldap/l10n/vi.php b/apps/user_ldap/l10n/vi.php
new file mode 100644
index 0000000000000000000000000000000000000000..7a6ac2665c6666b2fbeb3ad1306bd557747a138b
--- /dev/null
+++ b/apps/user_ldap/l10n/vi.php
@@ -0,0 +1,13 @@
+<?php $TRANSLATIONS = array(
+"Host" => "Máy chủ",
+"Password" => "Mật khẩu",
+"Port" => "Cổng",
+"Use TLS" => "Sử dụng TLS",
+"Turn off SSL certificate validation." => "Tắt xác thực chứng nhận SSL",
+"Not recommended, use for testing only." => "Không khuyến khích, Chỉ sử dụng để thử nghiệm.",
+"User Display Name Field" => "Hiển thị tên người sử dụng",
+"Group Display Name Field" => "Hiển thị tên nhóm",
+"in bytes" => "Theo Byte",
+"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/lib/access.php b/apps/user_ldap/lib/access.php
index 68df4c4cb93644e30a28dc05ea547ea744bbc091..089548a69ba75fe9ae95926cb1c3be4c837b587f 100644
--- a/apps/user_ldap/lib/access.php
+++ b/apps/user_ldap/lib/access.php
@@ -137,17 +137,6 @@ abstract class Access {
 		$dn = $this->ocname2dn($name, true);
 		if($dn) {
 			return $dn;
-		} else {
-			//fallback: user is not mapped
-			$filter = $this->combineFilterWithAnd(array(
-				$this->connection->ldapUserFilter,
-				$this->connection->ldapUserDisplayName . '=' . $name,
-			));
-			$result = $this->searchUsers($filter, 'dn');
-			if(isset($result[0]['dn'])) {
-				$this->mapComponent($result[0], $name, true);
-				return $result[0];
-			}
 		}
 
 		return false;
@@ -265,18 +254,23 @@ abstract class Access {
 		$ldapname = $this->sanitizeUsername($ldapname);
 
 		//a new user/group! Then let's try to add it. We're shooting into the blue with the user/group name, assuming that in most cases there will not be a conflict. Otherwise an error will occur and we will continue with our second shot.
-		if($this->mapComponent($dn, $ldapname, $isUser)) {
-			return $ldapname;
+		if(($isUser && !\OCP\User::userExists($ldapname)) || (!$isUser && !\OC_Group::groupExists($ldapname))) {
+			if($this->mapComponent($dn, $ldapname, $isUser)) {
+				return $ldapname;
+			}
 		}
 
 		//doh! There is a conflict. We need to distinguish between users/groups. Adding indexes is an idea, but not much of a help for the user. The DN is ugly, but for now the only reasonable way. But we transform it to a readable format and remove the first part to only give the path where this object is located.
 		$oc_name = $this->alternateOwnCloudName($ldapname, $dn);
-		if($this->mapComponent($dn, $oc_name, $isUser)) {
-			return $oc_name;
+		if(($isUser && !\OCP\User::userExists($oc_name)) || (!$isUser && !\OC_Group::groupExists($oc_name))) {
+			if($this->mapComponent($dn, $oc_name, $isUser)) {
+				return $oc_name;
+			}
 		}
 
 		//if everything else did not help..
 		\OCP\Util::writeLog('user_ldap', 'Could not create unique ownCloud name for '.$dn.'.', \OCP\Util::INFO);
+		return false;
 	}
 
 	/**
@@ -320,28 +314,11 @@ abstract class Access {
 				continue;
 			}
 
-			//we do not take empty usernames
-			if(!isset($ldapObject[$nameAttribute]) || empty($ldapObject[$nameAttribute])) {
-				\OCP\Util::writeLog('user_ldap', 'No or empty name for '.$ldapObject['dn'].', skipping.', \OCP\Util::INFO);
-				continue;
-			}
-
-			//a new group! Then let's try to add it. We're shooting into the blue with the group name, assuming that in most cases there will not be a conflict. But first make sure, that the display name contains only allowed characters.
-			$ocname = $this->sanitizeUsername($ldapObject[$nameAttribute]);
-			if($this->mapComponent($ldapObject['dn'], $ocname, $isUsers)) {
+			$ocname = $this->dn2ocname($ldapObject['dn'], $ldapObject[$nameAttribute], $isUsers);
+			if($ocname) {
 				$ownCloudNames[] = $ocname;
-				continue;
 			}
-
-			//doh! There is a conflict. We need to distinguish between groups. Adding indexes is an idea, but not much of a help for the user. The DN is ugly, but for now the only reasonable way. But we transform it to a readable format and remove the first part to only give the path where this entry is located.
-			$ocname = $this->alternateOwnCloudName($ocname, $ldapObject['dn']);
-			if($this->mapComponent($ldapObject['dn'], $ocname, $isUsers)) {
-				$ownCloudNames[] = $ocname;
-				continue;
-			}
-
-			//if everything else did not help..
-			\OCP\Util::writeLog('user_ldap', 'Could not create unique ownCloud name for '.$ldapObject['dn'].', skipping.', \OCP\Util::INFO);
+			continue;
 		}
 		return $ownCloudNames;
 	}
diff --git a/apps/user_ldap/lib/connection.php b/apps/user_ldap/lib/connection.php
index dc160a1642d7c288ab85d536ea8c573ba7710b7d..1922e7ff1f28d9ffbbdc2a9e40022e34feffc310 100644
--- a/apps/user_ldap/lib/connection.php
+++ b/apps/user_ldap/lib/connection.php
@@ -55,6 +55,7 @@ class Connection {
 		'ldapCacheTTL' => null,
 		'ldapUuidAttribute' => null,
 		'ldapOverrideUuidAttribute' => null,
+		'homeFolderNamingRule' => null,
 	);
 
 	public function __construct($configID = 'user_ldap') {
@@ -200,6 +201,7 @@ class Connection {
 			$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');
 
 			$this->configured = $this->validateConfiguration();
 		}
@@ -218,7 +220,7 @@ class Connection {
 
 		$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');
+		'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');
 
 		foreach($config as $parameter => $value) {
 		    if(isset($this->config[$parameter])) {
diff --git a/apps/user_ldap/lib/jobs.php b/apps/user_ldap/lib/jobs.php
index 4224ee9d7e5eb3a0a339791e6b17e261099140d5..aff519226c8e456c166592f8acbe19b9bf4967c1 100644
--- a/apps/user_ldap/lib/jobs.php
+++ b/apps/user_ldap/lib/jobs.php
@@ -113,7 +113,7 @@ class Jobs {
 			WHERE `owncloudname` = ?
 		');
 		foreach($removedGroups as $removedGroup) {
-			\OCP\Util::writeLog('user_ldap', 'bgJ "updateGroups" – group "'.$createdGroup.'" was removed.', \OCP\Util::INFO);
+			\OCP\Util::writeLog('user_ldap', 'bgJ "updateGroups" – group "'.$removedGroup.'" was removed.', \OCP\Util::INFO);
 		    $query->execute(array($removedGroup));
 		}
 		\OCP\Util::writeLog('user_ldap', 'bgJ "updateGroups" – FINISHED dealing with removed groups.', \OCP\Util::DEBUG);
diff --git a/apps/user_ldap/settings.php b/apps/user_ldap/settings.php
index 39aa3296265b02c20b95d42fee1128d6cefaacf5..f765151456a462ea3d1b4c653bc5f8f1737fe4e4 100644
--- a/apps/user_ldap/settings.php
+++ b/apps/user_ldap/settings.php
@@ -20,14 +20,14 @@
  * License along with this library.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
-$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');
+$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');
 
 OCP\Util::addscript('user_ldap', 'settings');
 OCP\Util::addstyle('user_ldap', 'settings');
 
 if ($_POST) {
-	foreach($params as $param){
-		if(isset($_POST[$param])){
+	foreach($params as $param) {
+		if(isset($_POST[$param])) {
 			if('ldap_agent_password' == $param) {
 				OCP\Config::setAppValue('user_ldap', $param, base64_encode($_POST[$param]));
 			} elseif('ldap_cache_ttl' == $param) {
@@ -36,6 +36,9 @@ if ($_POST) {
 					$ldap->clearCache();
 					OCP\Config::setAppValue('user_ldap', $param, $_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]);
 			}
@@ -55,7 +58,7 @@ if ($_POST) {
 
 // fill template
 $tmpl = new OCP\Template( 'user_ldap', 'settings');
-foreach($params as $param){
+foreach($params as $param) {
 		$value = OCP\Config::getAppValue('user_ldap', $param,'');
 		$tmpl->assign($param, $value);
 }
@@ -67,5 +70,8 @@ $tmpl->assign( 'ldap_group_display_name', OCP\Config::getAppValue('user_ldap', '
 $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, '');
 
 return $tmpl->fetchPage();
diff --git a/apps/user_ldap/templates/settings.php b/apps/user_ldap/templates/settings.php
index 861c9ba60526483c4a032ef339e1e44c3515da38..3a653ad7208f2d10c8632e22694bb7cd04faf229 100644
--- a/apps/user_ldap/templates/settings.php
+++ b/apps/user_ldap/templates/settings.php
@@ -23,10 +23,11 @@
 		<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']; ?>" />
-		<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_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>
 	</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>
 	</div>
diff --git a/apps/user_ldap/tests/group_ldap.php b/apps/user_ldap/tests/group_ldap.php
index 106459580fa0e8e900f4c88c694724d441946576..b953127d86e74c18f89a314977441a97492c07e4 100644
--- a/apps/user_ldap/tests/group_ldap.php
+++ b/apps/user_ldap/tests/group_ldap.php
@@ -21,15 +21,15 @@
 */
 
 class Test_Group_Ldap extends UnitTestCase {
-	function setUp(){
+	function setUp() {
 		OC_Group::clearBackends();
 	}
 
-	function testSingleBackend(){
+	function testSingleBackend() {
 		OC_Group::useBackend(new OCA\user_ldap\GROUP_LDAP());
 		$group_ldap = new OCA\user_ldap\GROUP_LDAP();
 
- 		$this->assertIsA(OC_Group::getGroups(),gettype(array()));
+		$this->assertIsA(OC_Group::getGroups(),gettype(array()));
 		$this->assertIsA($group_ldap->getGroups(),gettype(array()));
 
 		$this->assertFalse(OC_Group::inGroup('john','dosers'),gettype(false));
diff --git a/apps/user_ldap/user_ldap.php b/apps/user_ldap/user_ldap.php
index a97df7b4fd16839b95d4f8dbe3acefb5c9031110..bacdb8b9ae1da482f81a28a037817397a6cc6ac3 100644
--- a/apps/user_ldap/user_ldap.php
+++ b/apps/user_ldap/user_ldap.php
@@ -65,7 +65,7 @@ class USER_LDAP extends lib\Access implements \OCP\UserInterface {
 	 *
 	 * Check if the password is correct without logging in the user
 	 */
-	public function checkPassword($uid, $password){
+	public function checkPassword($uid, $password) {
 		//find out dn of the user name
 		$filter = \OCP\Util::mb_str_replace('%uid', $uid, $this->connection->ldapLoginFilter, 'UTF-8');
 		$ldap_users = $this->fetchListOfUsers($filter, 'dn');
@@ -82,7 +82,7 @@ class USER_LDAP extends lib\Access implements \OCP\UserInterface {
 		//do we have a username for him/her?
 		$ocname = $this->dn2username($dn);
 
-		if($ocname){
+		if($ocname) {
 			//update some settings, if necessary
 			$this->updateQuota($dn);
 			$this->updateEmail($dn);
@@ -100,7 +100,7 @@ class USER_LDAP extends lib\Access implements \OCP\UserInterface {
 	 *
 	 * Get a list of all users.
 	 */
-	public function getUsers($search = '', $limit = 10, $offset = 0){
+	public function getUsers($search = '', $limit = 10, $offset = 0) {
 		$ldap_users = $this->connection->getFromCache('getUsers');
 		if(is_null($ldap_users)) {
 			$ldap_users = $this->fetchListOfUsers($this->connection->ldapUserFilter, array($this->connection->ldapUserDisplayName, 'dn'));
@@ -126,7 +126,7 @@ class USER_LDAP extends lib\Access implements \OCP\UserInterface {
 	 * @param string $uid the username
 	 * @return boolean
 	 */
-	public function userExists($uid){
+	public function userExists($uid) {
 		if($this->connection->isCached('userExists'.$uid)) {
 			return $this->connection->getFromCache('userExists'.$uid);
 		}
@@ -161,6 +161,44 @@ class USER_LDAP extends lib\Access implements \OCP\UserInterface {
 	}
 
 	/**
+	* @brief determine the user's home directory
+	* @param string $uid the owncloud username
+	* @return boolean
+	*/
+	private function determineHomeDir($uid) {
+		if(strpos($this->connection->homeFolderNamingRule, 'attr:') === 0) {
+			$attr = substr($this->connection->homeFolderNamingRule, strlen('attr:'));
+			$homedir = $this->readAttribute($this->username2dn($uid), $attr);
+			if($homedir) {
+				$homedir = \OCP\Config::getSystemValue( "datadirectory", \OC::$SERVERROOT."/data" ) . '/' . $homedir[0];
+				\OCP\Config::setUserValue($uid, 'user_ldap', 'homedir', $homedir);
+				return $homedir;
+			}
+		}
+
+		//fallback and default: username
+		$homedir = \OCP\Config::getSystemValue( "datadirectory", \OC::$SERVERROOT."/data" ) . '/' . $uid;
+		\OCP\Config::setUserValue($uid, 'user_ldap', 'homedir', $homedir);
+		return $homedir;
+	}
+
+	/**
+	* @brief get the user's home directory
+	* @param string $uid the username
+	* @return boolean
+	*/
+	public function getHome($uid) {
+		if($this->userExists($uid)) {
+			$homedir = \OCP\Config::getUserValue($uid, 'user_ldap', 'homedir', false);
+			if(!$homedir) {
+				$homedir = $this->determineHomeDir($uid);
+			}
+			return $homedir;
+		}
+		return false;
+	}
+
+		/**
 	* @brief Check if backend implements actions
 	* @param $actions bitwise-or'ed actions
 	* @returns boolean
@@ -169,7 +207,7 @@ class USER_LDAP extends lib\Access implements \OCP\UserInterface {
 	* compared with OC_USER_BACKEND_CREATE_USER etc.
 	*/
 	public function implementsActions($actions) {
-		return (bool)(OC_USER_BACKEND_CHECK_PASSWORD & $actions);
+		return (bool)((OC_USER_BACKEND_CHECK_PASSWORD | OC_USER_BACKEND_GET_HOME) & $actions);
 	}
 
 }
\ No newline at end of file
diff --git a/apps/user_webdavauth/appinfo/app.php b/apps/user_webdavauth/appinfo/app.php
index db1087449a5574f01c996f2f49437f08af28f4db..3ab323becce5360372cfd026f2c34255ad2e6603 100755
--- a/apps/user_webdavauth/appinfo/app.php
+++ b/apps/user_webdavauth/appinfo/app.php
@@ -21,7 +21,7 @@
 *
 */
 
-require_once('apps/user_webdavauth/user_webdavauth.php');
+require_once 'apps/user_webdavauth/user_webdavauth.php';
 
 OC_APP::registerAdmin('user_webdavauth','settings');
 
@@ -35,4 +35,3 @@ $entry = array(
 	'href' => OC_Helper::linkTo( "user_webdavauth", "settings.php" ),
 	'name' => 'WEBDAVAUTH'
 );
-?>
diff --git a/apps/user_webdavauth/appinfo/info.xml b/apps/user_webdavauth/appinfo/info.xml
index 77fe3b892ca2cc8ee3995ca30388e63cffd7d2ff..dc555739f46914ec018b059b846c6b8d8b0ef76f 100755
--- a/apps/user_webdavauth/appinfo/info.xml
+++ b/apps/user_webdavauth/appinfo/info.xml
@@ -7,4 +7,5 @@
 	<licence>AGPL</licence>
 	<author>Frank Karlitschek</author>
 	<require>3</require>
+	<shipped>true</shipped>
 </info>
diff --git a/apps/user_webdavauth/settings.php b/apps/user_webdavauth/settings.php
index 5bd1af53c924c1f98dcc3e890420723170cad2c6..4f1ddbbefda4a91838bdabad11f11f3c30eb3aeb 100755
--- a/apps/user_webdavauth/settings.php
+++ b/apps/user_webdavauth/settings.php
@@ -22,9 +22,9 @@
  */
 
 print_r($_POST);
-if($_POST){
+if($_POST) {
 
-		if(isset($_POST['webdav_url'])){
+		if(isset($_POST['webdav_url'])) {
 			OC_CONFIG::setValue('user_webdavauth_url', strip_tags($_POST['webdav_url']));
 		}
 }
@@ -34,7 +34,3 @@ $tmpl = new OC_Template( 'user_webdavauth', 'settings');
 $tmpl->assign( 'webdav_url', OC_Config::getValue( "user_webdavauth_url" ));
 
 return $tmpl->fetchPage();
-
-
-
-?>
diff --git a/apps/user_webdavauth/user_webdavauth.php b/apps/user_webdavauth/user_webdavauth.php
index 71c503f9400531a81d55521be3d2eeecbf7ac3cc..c36d37c1fa2ef892aa77e82f8a7513e04add3703 100755
--- a/apps/user_webdavauth/user_webdavauth.php
+++ b/apps/user_webdavauth/user_webdavauth.php
@@ -23,11 +23,11 @@
 
 class OC_USER_WEBDAVAUTH extends OC_User_Backend {
 	protected $webdavauth_url;
-	
+
 	public function __construct() {
 		$this->webdavauth_url = OC_Config::getValue( "user_webdavauth_url" );
 	}
-	
+
 	public function createUser() {
 		// Can't create user
 		OC_Log::write('OC_USER_WEBDAVAUTH', 'Not possible to create users from web frontend using WebDAV user backend',3);
@@ -45,14 +45,14 @@ class OC_USER_WEBDAVAUTH extends OC_User_Backend {
 		OC_Log::write('OC_USER_WEBDAVAUTH', 'Not possible to change password for users from web frontend using WebDAV user backend',3);
 		return false;
 	}
-	
+
 	public function checkPassword( $uid, $password ) {
 
 		$url= 'http://'.urlencode($uid).':'.urlencode($password).'@'.$this->webdavauth_url;
 		$headers = get_headers($url);
-		if($headers==false){
+		if($headers==false) {
 			OC_Log::write('OC_USER_WEBDAVAUTH', 'Not possible to connect to WebDAV Url: "'.$this->webdavauth_url.'" ' ,3);
-			return false;	
+			return false;
 
 		}
 		$returncode= substr($headers[0], 9, 3);
@@ -64,22 +64,20 @@ class OC_USER_WEBDAVAUTH extends OC_User_Backend {
 		}
 
 	}
-	
+
 	/*
 	* we don´t know if a user exists without the password. so we have to return false all the time
 	*/
-	public function userExists( $uid ){
+	public function userExists( $uid ) {
 		return false;
 	}
 
 	/*
 	* we don´t know the users so all we can do it return an empty array here
 	*/
-	public function getUsers(){
+	public function getUsers() {
 		$returnArray = array();
-		
+
 		return $returnArray;
 	}
 }
-
-?>
diff --git a/core/ajax/appconfig.php b/core/ajax/appconfig.php
index bf749be3e30db95dadabc419f663974f6300cae9..1b43afa74fbf781d5e8ac3fcacbd6d2a9a0918fc 100644
--- a/core/ajax/appconfig.php
+++ b/core/ajax/appconfig.php
@@ -5,18 +5,18 @@
  * See the COPYING-README file.
  */
 
-require_once ("../../lib/base.php");
+require_once "../../lib/base.php";
 OC_Util::checkAdminUser();
 OCP\JSON::callCheck();
 
 $action=isset($_POST['action'])?$_POST['action']:$_GET['action'];
 $result=false;
-switch($action){
+switch($action) {
 	case 'getValue':
-		$result=OC_Appconfig::getValue($_GET['app'],$_GET['key'],$_GET['defaultValue']);
+		$result=OC_Appconfig::getValue($_GET['app'], $_GET['key'], $_GET['defaultValue']);
 		break;
 	case 'setValue':
-		$result=OC_Appconfig::setValue($_POST['app'],$_POST['key'],$_POST['value']);
+		$result=OC_Appconfig::setValue($_POST['app'], $_POST['key'], $_POST['value']);
 		break;
 	case 'getApps':
 		$result=OC_Appconfig::getApps();
@@ -25,10 +25,10 @@ switch($action){
 		$result=OC_Appconfig::getKeys($_GET['app']);
 		break;
 	case 'hasKey':
-		$result=OC_Appconfig::hasKey($_GET['app'],$_GET['key']);
+		$result=OC_Appconfig::hasKey($_GET['app'], $_GET['key']);
 		break;
 	case 'deleteKey':
-		$result=OC_Appconfig::deleteKey($_POST['app'],$_POST['key']);
+		$result=OC_Appconfig::deleteKey($_POST['app'], $_POST['key']);
 		break;
 	case 'deleteApp':
 		$result=OC_Appconfig::deleteApp($_POST['app']);
diff --git a/core/ajax/share.php b/core/ajax/share.php
index 8c2e85523e3e97582371c0057ffcc29705f57578..b615cfd3541bf77c5363030cf33309ec7817e725 100644
--- a/core/ajax/share.php
+++ b/core/ajax/share.php
@@ -78,7 +78,7 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo
 					$reshare = false;
 				}
 				if ($_GET['checkShares'] == 'true') {
-					$shares = OCP\Share::getItemShared($_GET['itemType'], $_GET['itemSource']);
+					$shares = OCP\Share::getItemShared($_GET['itemType'], $_GET['itemSource'], OCP\Share::FORMAT_NONE, null, true);
 				} else {
 					$shares = false;
 				}
@@ -88,23 +88,23 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo
 		case 'getShareWith':
 			if (isset($_GET['search'])) {
 				$shareWith = array();
-				if (OC_App::isEnabled('contacts')) {
-					// TODO Add function to contacts to only get the 'fullname' column to improve performance
-					$ids = OC_Contacts_Addressbook::activeIds();
-					foreach ($ids as $id) {
-						$vcards = OC_Contacts_VCard::all($id);
-						foreach ($vcards as $vcard) {
-							$contact = $vcard['fullname'];
-							if (stripos($contact, $_GET['search']) !== false
-								&& (!isset($_GET['itemShares'])
-								|| !isset($_GET['itemShares'][OCP\Share::SHARE_TYPE_CONTACT])
-								|| !is_array($_GET['itemShares'][OCP\Share::SHARE_TYPE_CONTACT])
-								|| !in_array($contact, $_GET['itemShares'][OCP\Share::SHARE_TYPE_CONTACT]))) {
-								$shareWith[] = array('label' => $contact, 'value' => array('shareType' => 5, 'shareWith' => $vcard['id']));
-							}
-						}
-					}
-				}
+// 				if (OC_App::isEnabled('contacts')) {
+// 					// TODO Add function to contacts to only get the 'fullname' column to improve performance
+// 					$ids = OC_Contacts_Addressbook::activeIds();
+// 					foreach ($ids as $id) {
+// 						$vcards = OC_Contacts_VCard::all($id);
+// 						foreach ($vcards as $vcard) {
+// 							$contact = $vcard['fullname'];
+// 							if (stripos($contact, $_GET['search']) !== false
+// 								&& (!isset($_GET['itemShares'])
+// 								|| !isset($_GET['itemShares'][OCP\Share::SHARE_TYPE_CONTACT])
+// 								|| !is_array($_GET['itemShares'][OCP\Share::SHARE_TYPE_CONTACT])
+// 								|| !in_array($contact, $_GET['itemShares'][OCP\Share::SHARE_TYPE_CONTACT]))) {
+// 								$shareWith[] = array('label' => $contact, 'value' => array('shareType' => 5, 'shareWith' => $vcard['id']));
+// 							}
+// 						}
+// 					}
+// 				}
 				$count = 0;
 				$users = array();
 				$limit = 0;
@@ -141,5 +141,3 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo
 			break;
 	}
 }
-
-?>
\ No newline at end of file
diff --git a/core/ajax/translations.php b/core/ajax/translations.php
index 2bd6b7ed634d9b8032ed223a26393190cc788b5f..75679da2c0466cf904955aabf6fc39013398abfd 100644
--- a/core/ajax/translations.php
+++ b/core/ajax/translations.php
@@ -22,7 +22,7 @@
 */
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 
 $app = $_POST["app"];
 
diff --git a/core/ajax/vcategories/add.php b/core/ajax/vcategories/add.php
index e69f8bb726b14b3941c3793b1b559b4d1a3146bc..81fa06dbf19491079955f89d77273b7e70509ede 100644
--- a/core/ajax/vcategories/add.php
+++ b/core/ajax/vcategories/add.php
@@ -7,14 +7,14 @@
  */
 function bailOut($msg) {
 	OC_JSON::error(array('data' => array('message' => $msg)));
-	OC_Log::write('core','ajax/vcategories/add.php: '.$msg, OC_Log::DEBUG);
+	OC_Log::write('core', 'ajax/vcategories/add.php: '.$msg, OC_Log::DEBUG);
 	exit();
 }
 function debug($msg) {
-	OC_Log::write('core','ajax/vcategories/add.php: '.$msg, OC_Log::DEBUG);
+	OC_Log::write('core', 'ajax/vcategories/add.php: '.$msg, OC_Log::DEBUG);
 }
 
-require_once('../../../lib/base.php');
+require_once '../../../lib/base.php';
 OC_JSON::checkLoggedIn();
 $category = isset($_GET['category'])?strip_tags($_GET['category']):null;
 $app = isset($_GET['app'])?$_GET['app']:null;
diff --git a/core/ajax/vcategories/delete.php b/core/ajax/vcategories/delete.php
index a41fa083c3889c914d6b4b23a0395ec3d94c5741..cd46a25b79df9d898debabb4b49432389fa610a6 100644
--- a/core/ajax/vcategories/delete.php
+++ b/core/ajax/vcategories/delete.php
@@ -8,14 +8,14 @@
 
 function bailOut($msg) {
 	OC_JSON::error(array('data' => array('message' => $msg)));
-	OC_Log::write('core','ajax/vcategories/delete.php: '.$msg, OC_Log::DEBUG);
+	OC_Log::write('core', 'ajax/vcategories/delete.php: '.$msg, OC_Log::DEBUG);
 	exit();
 }
 function debug($msg) {
-	OC_Log::write('core','ajax/vcategories/delete.php: '.$msg, OC_Log::DEBUG);
+	OC_Log::write('core', 'ajax/vcategories/delete.php: '.$msg, OC_Log::DEBUG);
 }
 
-require_once('../../../lib/base.php');
+require_once '../../../lib/base.php';
 OC_JSON::checkLoggedIn();
 $app = isset($_POST['app'])?$_POST['app']:null;
 $categories = isset($_POST['categories'])?$_POST['categories']:null;
diff --git a/core/ajax/vcategories/edit.php b/core/ajax/vcategories/edit.php
index 3e5540cbc227dc521172821a1fb49f79ff39dbe7..a0e67841c5571d1b6489b8ac032ca8c69f78de9c 100644
--- a/core/ajax/vcategories/edit.php
+++ b/core/ajax/vcategories/edit.php
@@ -8,14 +8,14 @@
 
 function bailOut($msg) {
 	OC_JSON::error(array('data' => array('message' => $msg)));
-	OC_Log::write('core','ajax/vcategories/edit.php: '.$msg, OC_Log::DEBUG);
+	OC_Log::write('core', 'ajax/vcategories/edit.php: '.$msg, OC_Log::DEBUG);
 	exit();
 }
 function debug($msg) {
-	OC_Log::write('core','ajax/vcategories/edit.php: '.$msg, OC_Log::DEBUG);
+	OC_Log::write('core', 'ajax/vcategories/edit.php: '.$msg, OC_Log::DEBUG);
 }
 
-require_once('../../../lib/base.php');
+require_once '../../../lib/base.php';
 OC_JSON::checkLoggedIn();
 $app = isset($_GET['app'])?$_GET['app']:null;
 
@@ -29,5 +29,5 @@ $tmpl = new OC_TEMPLATE("core", "edit_categories_dialog");
 $vcategories = new OC_VCategories($app);
 $categories = $vcategories->categories();
 debug(print_r($categories, true));
-$tmpl->assign('categories',$categories);
+$tmpl->assign('categories', $categories);
 $tmpl->printpage();
diff --git a/core/css/share.css b/core/css/share.css
index a8ffc8df42ef4c0e53d292acb9650dd932f08fa2..cccc3585a47f007b0be89b04fb12c0ea0787462c 100644
--- a/core/css/share.css
+++ b/core/css/share.css
@@ -15,4 +15,6 @@ a.showCruds { display:inline; opacity:.5; }
 a.showCruds:hover { opacity:1; }
 a.unshare { float:right; display:inline; padding:.3em 0 0 .3em !important; opacity:.5; }
 a.unshare:hover { opacity:1; }
-#link { border-top:1px solid #ddd; padding-top:0.5em; }
\ No newline at end of file
+#link { border-top:1px solid #ddd; padding-top:0.5em; }
+#dropdown input[type="text"], #dropdown input[type="password"] { width:90%; }
+#linkText, #linkPass { display:none; }
diff --git a/core/css/styles.css b/core/css/styles.css
index 488ac48e4b4ccc73f6a677a80f7b42ed747b0f0c..6bf3757df2569bed974d00ea2c71e558787cbd2b 100644
--- a/core/css/styles.css
+++ b/core/css/styles.css
@@ -169,3 +169,8 @@ a.bookmarklet { background-color: #ddd; border:1px solid #ccc; padding: 5px;padd
 .arrow.left { left: -13px; bottom: 1.2em; -webkit-transform: rotate(270deg); -moz-transform: rotate(270deg); -o-transform: rotate(270deg); -ms-transform: rotate(270deg); transform: rotate(270deg); }
 .arrow.up { top: -8px; right: 2em; }
 .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; }
diff --git a/core/img/actions/clock.png b/core/img/actions/clock.png
new file mode 100644
index 0000000000000000000000000000000000000000..671b3f4f0c1daf8bbea5eb8c8881b07e79ec3b4c
Binary files /dev/null and b/core/img/actions/clock.png differ
diff --git a/core/img/actions/clock.svg b/core/img/actions/clock.svg
new file mode 100755
index 0000000000000000000000000000000000000000..1821f474df50d8a88b205060e93fb0426f8952a3
--- /dev/null
+++ b/core/img/actions/clock.svg
@@ -0,0 +1,20 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="Layer_1" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 100 100" xml:space="preserve">
+<path d="M50,89.836c-23.389,0-42.418-19.027-42.418-42.417C7.582,24.029,26.611,5,50,5c23.389,0,42.418,19.029,42.418,42.419  C92.418,70.809,73.389,89.836,50,89.836z M50,9.912c-20.681,0-37.506,16.826-37.506,37.508c0,20.681,16.826,37.505,37.506,37.505  s37.507-16.824,37.507-37.505C87.507,26.737,70.681,9.912,50,9.912z"/>
+<path d="M50.001,49.875c-0.141,0-0.283-0.011-0.427-0.037c-1.173-0.206-2.03-1.226-2.03-2.419V29.442c0-1.355,1.1-2.456,2.456-2.456  c1.355,0,2.456,1.1,2.456,2.456v4.003l5.431-14.974c0.464-1.274,1.872-1.937,3.146-1.471c1.274,0.462,1.934,1.871,1.471,3.146  l-10.195,28.11C51.952,49.241,51.019,49.875,50.001,49.875z"/>
+<circle cx="49.999" cy="12.956" r="1.617"/>
+<path d="M50,14.778c-1.006,0-1.823-0.817-1.823-1.823c0-1.005,0.817-1.823,1.823-1.823c1.004,0,1.821,0.817,1.821,1.823  C51.821,13.961,51.004,14.778,50,14.778z M50,11.542c-0.779,0-1.414,0.635-1.414,1.413c0,0.779,0.635,1.414,1.414,1.414  s1.412-0.635,1.412-1.414C51.412,12.177,50.779,11.542,50,11.542z"/>
+<circle cx="34.343" cy="20.301" r="1.47"/>
+<path d="M23.617,30.488c0.703,0.409,0.945,1.305,0.537,2.008c-0.405,0.704-1.305,0.947-2.007,0.538  c-0.703-0.403-0.945-1.305-0.539-2.008C22.016,30.325,22.913,30.085,23.617,30.488z"/>
+<circle cx="15.536" cy="47.42" r="1.618"/>
+<path d="M15.536,49.242c-1.006,0-1.823-0.817-1.823-1.823c0.001-1,0.819-1.819,1.823-1.822c1.006,0,1.823,0.817,1.823,1.822  C17.359,48.425,16.542,49.242,15.536,49.242z M15.536,46.006c-0.777,0.003-1.412,0.636-1.414,1.413c0,0.779,0.635,1.414,1.414,1.414  s1.413-0.635,1.413-1.414C16.949,46.641,16.315,46.006,15.536,46.006z"/>
+<path d="M22.147,61.803c0.705-0.406,1.602-0.167,2.007,0.537c0.408,0.703,0.166,1.602-0.537,2.008  c-0.704,0.406-1.604,0.163-2.008-0.537C21.202,63.104,21.447,62.209,22.147,61.803z"/>
+<path d="M33.07,73.803c0.408-0.706,1.305-0.946,2.008-0.537c0.704,0.403,0.945,1.302,0.538,2.005  c-0.405,0.704-1.307,0.947-2.007,0.537C32.904,75.402,32.667,74.507,33.07,73.803z"/>
+<path d="M48.382,81.884c0-0.896,0.725-1.618,1.618-1.618c0.892-0.003,1.618,0.723,1.618,1.618c0,0.892-0.728,1.618-1.618,1.618  C49.104,83.498,48.385,82.775,48.382,81.884z"/>
+<path d="M50,83.706L50,83.706c-1.002-0.003-1.819-0.82-1.823-1.822c0-1.006,0.817-1.823,1.823-1.823  c1.007,0,1.822,0.817,1.822,1.823C51.822,82.889,51.006,83.706,50,83.706z M50.006,80.47c-0.785,0-1.42,0.635-1.42,1.414  c0.003,0.775,0.637,1.41,1.414,1.413c0.78,0,1.413-0.635,1.413-1.413C51.413,81.104,50.782,80.47,50.006,80.47z"/>
+<path d="M64.385,75.271c-0.408-0.703-0.167-1.602,0.537-2.005c0.702-0.409,1.601-0.169,2.008,0.537  c0.406,0.7,0.163,1.603-0.539,2.005C65.686,76.214,64.791,75.971,64.385,75.271z"/>
+<path d="M76.384,64.348c-0.704-0.406-0.945-1.305-0.537-2.008c0.402-0.704,1.301-0.943,2.006-0.537  c0.704,0.402,0.945,1.308,0.539,2.008C77.98,64.511,77.087,64.751,76.384,64.348z"/>
+<path d="M84.464,49.038c-0.896-0.003-1.618-0.726-1.618-1.618c-0.001-0.892,0.723-1.618,1.618-1.618  c0.893-0.003,1.618,0.726,1.618,1.618C86.077,48.315,85.356,49.034,84.464,49.038z"/>
+<path d="M84.464,49.242L84.464,49.242c-1.006-0.003-1.822-0.822-1.822-1.823c-0.002-0.486,0.188-0.943,0.532-1.287  c0.344-0.345,0.803-0.535,1.29-0.535c1.007,0,1.822,0.817,1.822,1.822C86.282,48.422,85.463,49.239,84.464,49.242z M84.471,46.006  c-0.386,0-0.74,0.147-1.008,0.416c-0.267,0.267-0.412,0.621-0.412,0.998c0,0.777,0.635,1.41,1.413,1.414  c0.775-0.003,1.408-0.638,1.413-1.415C85.877,46.641,85.246,46.006,84.471,46.006z"/>
+<path d="M77.853,33.034c-0.705,0.409-1.604,0.166-2.006-0.538c-0.408-0.7-0.168-1.599,0.537-2.008  c0.701-0.406,1.604-0.163,2.008,0.537C78.795,31.732,78.553,32.627,77.853,33.034z"/>
+<path d="M66.93,21.036c-0.407,0.704-1.308,0.943-2.008,0.537c-0.704-0.403-0.945-1.305-0.537-2.008  c0.404-0.703,1.306-0.943,2.006-0.537C67.095,19.437,67.333,20.333,66.93,21.036z"/>
+</svg>
\ No newline at end of file
diff --git a/core/img/actions/lock.png b/core/img/actions/lock.png
new file mode 100644
index 0000000000000000000000000000000000000000..511bfa615bb4b28755140658d0f868cb3fe411ec
Binary files /dev/null and b/core/img/actions/lock.png differ
diff --git a/core/img/actions/lock.svg b/core/img/actions/lock.svg
new file mode 100755
index 0000000000000000000000000000000000000000..8fb039b9e3bfda809ed00b3b36e755291315641f
--- /dev/null
+++ b/core/img/actions/lock.svg
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+	 width="16px" height="16px" viewBox="0 0 71 100" xml:space="preserve">
+<path d="M65.5,45V30c0-16.542-13.458-30-30-30s-30,13.458-30,30v15H0v55h71V45H65.5z M13.5,30c0-12.131,9.869-22,22-22
+	s22,9.869,22,22v15h-44V30z"/>
+</svg>
diff --git a/core/img/icon-error.png b/core/img/icon-error.png
index 1ce0be0fb2ebbb2778f59be6a57f111d55e36999..edeaceb16980c6af896cfb1b5f46447f3e91b5d1 100644
Binary files a/core/img/icon-error.png and b/core/img/icon-error.png differ
diff --git a/core/img/icon-error.svg b/core/img/icon-error.svg
index 6392d819ad8371007b638beabb49643ecf127c82..bba639bfd7e564de5fec8374f1c91c4b068198c5 100644
--- a/core/img/icon-error.svg
+++ b/core/img/icon-error.svg
@@ -19,9 +19,9 @@
    viewBox="0 0 32 31.999997"
    enable-background="new 0 0 595.275 311.111"
    xml:space="preserve"
-   inkscape:version="0.48.2 r9819"
-   sodipodi:docname="icon-error.svg"
-   inkscape:export-filename="/home/user/owncloud/core/img/icon-error.png"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="icon-error-light.svg"
+   inkscape:export-filename="/home/user/owncloud/core/img/icon-error-light.png"
    inkscape:export-xdpi="89.826416"
    inkscape:export-ydpi="89.826416"><metadata
    id="metadata327"><rdf:RDF><cc:Work
@@ -245,11 +245,11 @@
    id="SVGID_9_">
 		<stop
    id="stop317"
-   style="stop-color:#BED5E1"
+   style="stop-color:#b23636;stop-opacity:1;"
    offset="0" />
 		<stop
    id="stop319"
-   style="stop-color:#567B8F"
+   style="stop-color:#b20000;stop-opacity:1;"
    offset="1" />
 	</linearGradient>
 	
@@ -289,7 +289,7 @@
    x2="-2.4040222"
    y2="18.967093" /><linearGradient
    inkscape:collect="always"
-   xlink:href="#linearGradient3587-6-5-26"
+   xlink:href="#SVGID_9_"
    id="linearGradient3956"
    gradientUnits="userSpaceOnUse"
    gradientTransform="matrix(0.25,0,0,0.25,0,0.500024)"
@@ -306,14 +306,14 @@
    inkscape:pageopacity="0"
    inkscape:pageshadow="2"
    inkscape:window-width="1280"
-   inkscape:window-height="774"
+   inkscape:window-height="800"
    id="namedview323"
    showgrid="true"
-   inkscape:zoom="2.8284271"
-   inkscape:cx="-37.832842"
-   inkscape:cy="0.28559212"
+   inkscape:zoom="5.6568542"
+   inkscape:cx="20.718961"
+   inkscape:cy="-0.99657908"
    inkscape:window-x="0"
-   inkscape:window-y="26"
+   inkscape:window-y="-31"
    inkscape:window-maximized="1"
    inkscape:current-layer="Layer_1"
    units="px"
@@ -796,7 +796,7 @@
    d="M 14.5 7.6875 C 12.118202 7.6875 10.1875 9.6181999 10.1875 12 C 10.1875 12.98178 10.511318 13.90142 11.0625 14.625 C 12.258208 13.24105 14.029595 12.34375 16 12.34375 C 16.964013 12.34375 17.863805 12.56114 18.6875 12.9375 C 18.75419 12.6359 18.78125 12.32193 18.78125 12 C 18.78125 9.6181999 16.8818 7.6875 14.5 7.6875 z M 8.875 9.6875 C 7.634625 9.6875 6.625 10.69712 6.625 11.9375 C 6.625 12.3391 6.72279 12.70624 6.90625 13.03125 C 7.65474 12.60902 8.5183475 12.375 9.4375 12.375 C 9.526205 12.375 9.63115 12.371 9.71875 12.375 C 9.70882 12.2497 9.6875 12.12826 9.6875 12 C 9.6875 11.30913 9.83008 10.65627 10.09375 10.0625 C 9.7387425 9.8244499 9.3358175 9.6875 8.875 9.6875 z M 19.21875 11.25 C 19.25778 11.49606 19.28125 11.74306 19.28125 12 C 19.28125 12.39985 19.248935 12.78521 19.15625 13.15625 C 20.2429 13.75761 21.12418 14.65908 21.71875 15.75 C 22.335455 15.42894 23.01983 15.23643 23.75 15.1875 C 23.56182 12.98063 21.755825 11.25 19.5 11.25 C 19.40836 11.25 19.30897 11.2444 19.21875 11.25 z M 16 12.84375 C 12.66715 12.84375 9.96875 15.54192 9.96875 18.875 C 9.96875 22.20772 12.667013 24.90625 16 24.90625 C 19.33299 24.90625 22.03125 22.20771 22.03125 18.875 C 22.03125 15.54193 19.332853 12.84375 16 12.84375 z M 9.4375 12.875 C 6.85184 12.875 4.78125 14.94559 4.78125 17.53125 C 4.78125 19.05338 5.501155 20.42736 6.625 21.28125 C 7.09879 20.36744 8.0570875 19.71875 9.15625 19.71875 C 9.289095 19.71875 9.403215 19.7323 9.53125 19.75 C 9.491058 19.45758 9.46875 19.1784 9.46875 18.875 C 9.46875 17.4244 9.947247 16.08344 10.75 15 C 10.26948 14.39871 9.9278275 13.66206 9.78125 12.875 C 9.6726175 12.867 9.5480625 12.875 9.4375 12.875 z M 12.8125 15 L 16 17.40625 L 19.1875 15 L 20 15.8125 L 17.59375 19 L 20 22.1875 L 19.1875 23 L 16 20.59375 L 12.8125 23 L 12 22.1875 L 14.40625 19 L 12 15.8125 L 12.8125 15 z M 24.09375 15.65625 C 23.308625 15.65625 22.586838 15.84758 21.9375 16.1875 C 22.306215 17.00423 22.5 17.92139 22.5 18.875 C 22.5 20.66055 21.78996 22.2909 20.625 23.46875 C 21.48082 24.41888 22.712632 25 24.09375 25 C 26.67941 25 28.78125 22.89816 28.78125 20.3125 C 28.78125 17.726839 26.67941 15.65625 24.09375 15.65625 z M 4.3125 16.28125 C 1.9306325 16.28125 0 18.18063 0 20.5625 C 0 22.94437 1.9306325 24.875 4.3125 24.875 C 5.2190732 24.875 6.056265 24.602439 6.75 24.125 C 6.463335 23.67955 6.3125 23.129619 6.3125 22.5625 C 6.3125 22.268139 6.3542845 21.98594 6.4375 21.71875 C 5.13876 20.78017 4.28125 19.25317 4.28125 17.53125 C 4.28125 17.09375 4.3347293 16.6872 4.4375 16.28125 C 4.394842 16.28025 4.3554647 16.28125 4.3125 16.28125 z M 29.625 19.96875 C 29.497935 19.96875 29.371487 19.9807 29.25 20 C 29.2567 20.1074 29.28125 20.20342 29.28125 20.3125 C 29.28125 21.68587 28.720337 22.9487 27.84375 23.875 C 28.275 24.37649 28.908165 24.6875 29.625 24.6875 C 30.93072 24.6875 32 23.64947 32 22.34375 C 32 21.03803 30.93072 19.96875 29.625 19.96875 z M 9.15625 20.21875 C 7.8505975 20.21875 6.78125 21.25684 6.78125 22.5625 C 6.78125 23.86815 7.8505975 24.9375 9.15625 24.9375 C 10.15705 24.9375 10.99878 24.31592 11.34375 23.4375 C 10.50201 22.5802 9.8922975 21.49648 9.625 20.28125 C 9.4685825 20.24891 9.322335 20.21875 9.15625 20.21875 z "
    transform="translate(0,-1.5e-6)"
    id="path7625" /><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.8;color:#000000;fill:url(#linearGradient3956);fill-opacity:1;stroke:none;stroke-width:4;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:0.80000000000000004;color:#000000;fill:url(#linearGradient3956);fill-opacity:1.0;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
    d="m 14.5,6.687498 c -2.381798,0 -4.3125,1.9307 -4.3125,4.312501 0,0.98178 0.323818,1.90142 0.875,2.625 1.195708,-1.38395 2.967095,-2.28125 4.9375,-2.28125 0.964013,0 1.863805,0.21739 2.6875,0.59375 0.06669,-0.3016 0.09375,-0.61557 0.09375,-0.9375 0,-2.381801 -1.89945,-4.312501 -4.28125,-4.312501 z m -5.625,2 c -1.240375,0 -2.25,1.00963 -2.25,2.250001 0,0.4016 0.09779,0.76874 0.28125,1.09375 0.74849,-0.422231 1.6120975,-0.65625 2.53125,-0.65625 0.088705,0 0.19365,-0.004 0.28125,0 -0.00993,-0.1253 -0.03125,-0.246741 -0.03125,-0.375 0,-0.69086 0.14258,-1.343731 0.40625,-1.937501 -0.3550075,-0.238049 -0.7579325,-0.375 -1.21875,-0.375 z m 10.34375,1.562501 c 0.03903,0.24606 0.0625,0.49307 0.0625,0.75 0,0.39985 -0.03232,0.78521 -0.125,1.15625 1.08665,0.60137 1.96793,1.50283 2.5625,2.59375 0.616705,-0.32106 1.30108,-0.51356 2.03125,-0.5625 -0.18818,-2.20687 -1.994175,-3.9375 -4.25,-3.9375 -0.09164,0 -0.19103,-0.0056 -0.28125,0 z M 16,11.843749 c -3.33285,0 -6.03125,2.69817 -6.03125,6.031249 0,3.33272 2.698263,6.03125 6.03125,6.03125 3.33299,0 6.03125,-2.69854 6.03125,-6.03125 0,-3.333069 -2.698397,-6.031249 -6.03125,-6.031249 z m -6.5625,0.03125 c -2.58566,0 -4.65625,2.07058 -4.65625,4.656249 0,1.52212 0.719905,2.89611 1.84375,3.75 0.47379,-0.913811 1.4320875,-1.5625 2.53125,-1.5625 0.132845,0 0.246965,0.01355 0.375,0.03125 -0.040192,-0.29242 -0.0625,-0.5716 -0.0625,-0.875 0,-1.450599 0.478497,-2.791559 1.28125,-3.874999 -0.48052,-0.60129 -0.8221725,-1.33794 -0.96875,-2.125 -0.1086325,-0.008 -0.2331875,0 -0.34375,0 z m 3.375,2.125 L 16,16.406248 19.1875,13.999999 20,14.812499 17.59375,17.999998 20,21.187498 19.1875,21.999998 16,19.593748 12.8125,21.999998 12,21.187498 14.40625,17.999998 12,14.812499 l 0.8125,-0.8125 z m 11.28125,0.65625 c -0.785125,0 -1.506912,0.19133 -2.15625,0.53125 0.368715,0.816729 0.5625,1.733889 0.5625,2.687499 0,1.78555 -0.71004,3.4159 -1.875,4.59375 0.85582,0.950131 2.087632,1.53125 3.46875,1.53125 2.58566,0 4.6875,-2.10184 4.6875,-4.6875 0,-2.58566 -2.10184,-4.656249 -4.6875,-4.656249 z m -19.78125,0.625 C 1.9306325,15.281249 0,17.180628 0,19.562498 c 0,2.38187 1.9306325,4.3125 4.3125,4.3125 0.9065732,0 1.743765,-0.272561 2.4375,-0.75 -0.286665,-0.44545 -0.4375,-0.99538 -0.4375,-1.5625 0,-0.29436 0.041785,-0.57656 0.125,-0.84375 -1.29874,-0.938579 -2.15625,-2.465589 -2.15625,-4.1875 0,-0.43751 0.053479,-0.844049 0.15625,-1.249999 -0.042658,-0.001 -0.082035,0 -0.125,0 z m 25.3125,3.687499 c -0.127065,0 -0.253513,0.01195 -0.375,0.03125 0.0067,0.1074 0.03125,0.203421 0.03125,0.3125 0,1.373371 -0.560913,2.6362 -1.4375,3.5625 0.43125,0.50149 1.064415,0.8125 1.78125,0.8125 1.30572,0 2.375,-1.03803 2.375,-2.34375 0,-1.30572 -1.06928,-2.375 -2.375,-2.375 z m -20.46875,0.25 c -1.3056525,0 -2.375,1.03809 -2.375,2.34375 0,1.30565 1.0693475,2.375 2.375,2.375 1.0008,0 1.84253,-0.621579 2.1875,-1.5 -0.84174,-0.857299 -1.4514525,-1.941019 -1.71875,-3.15625 -0.1564175,-0.03234 -0.302665,-0.0625 -0.46875,-0.0625 z"
    id="circle238"
    inkscape:connector-curvature="0" />
diff --git a/core/img/icon-sync.png b/core/img/icon-sync.png
index a3d09704246107252ca46d79d4791f66b23055e3..c38ca87a237bd0be449e41c845c8f7add91b230c 100644
Binary files a/core/img/icon-sync.png and b/core/img/icon-sync.png differ
diff --git a/core/img/icon-sync.svg b/core/img/icon-sync.svg
index f9ebec4a5b560c93e5ac07a0430c492159dc9e3d..0806572f2c717fea53640cd450f8dc74982f02a9 100644
--- a/core/img/icon-sync.svg
+++ b/core/img/icon-sync.svg
@@ -19,9 +19,9 @@
    viewBox="0 0 32 31.999997"
    enable-background="new 0 0 595.275 311.111"
    xml:space="preserve"
-   inkscape:version="0.48.2 r9819"
-   sodipodi:docname="icon-sync.svg"
-   inkscape:export-filename="/home/user/owncloud/core/img/icon.png"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="icon-sync-light.svg"
+   inkscape:export-filename="/home/user/owncloud/core/img/icon-sync-light.png"
    inkscape:export-xdpi="89.826416"
    inkscape:export-ydpi="89.826416"><metadata
    id="metadata327"><rdf:RDF><cc:Work
@@ -289,7 +289,7 @@
    x2="-2.4040222"
    y2="18.967093" /><linearGradient
    inkscape:collect="always"
-   xlink:href="#linearGradient3587-6-5-26"
+   xlink:href="#SVGID_9_"
    id="linearGradient3342"
    gradientUnits="userSpaceOnUse"
    gradientTransform="matrix(0.25,0,0,0.25,0,0.500024)"
@@ -306,14 +306,14 @@
    inkscape:pageopacity="0"
    inkscape:pageshadow="2"
    inkscape:window-width="1280"
-   inkscape:window-height="774"
+   inkscape:window-height="800"
    id="namedview323"
    showgrid="true"
-   inkscape:zoom="8"
-   inkscape:cx="9.2669664"
-   inkscape:cy="16.482737"
+   inkscape:zoom="5.6568543"
+   inkscape:cx="30.833096"
+   inkscape:cy="24.980259"
    inkscape:window-x="0"
-   inkscape:window-y="26"
+   inkscape:window-y="-31"
    inkscape:window-maximized="1"
    inkscape:current-layer="Layer_1"
    units="px"
@@ -796,7 +796,7 @@
    d="M 14.5 7.6875 C 12.118202 7.6875 10.1875 9.6181999 10.1875 12 C 10.1875 12.98178 10.511318 13.90142 11.0625 14.625 C 12.258208 13.24105 14.029595 12.34375 16 12.34375 C 16.964013 12.34375 17.863805 12.56114 18.6875 12.9375 C 18.75419 12.6359 18.78125 12.32193 18.78125 12 C 18.78125 9.6181999 16.8818 7.6875 14.5 7.6875 z M 8.875 9.6875 C 7.634625 9.6875 6.625 10.69712 6.625 11.9375 C 6.625 12.3391 6.72279 12.70624 6.90625 13.03125 C 7.65474 12.60902 8.5183475 12.375 9.4375 12.375 C 9.526205 12.375 9.63115 12.371 9.71875 12.375 C 9.70882 12.2497 9.6875 12.12826 9.6875 12 C 9.6875 11.30913 9.83008 10.65627 10.09375 10.0625 C 9.7387425 9.8244499 9.3358175 9.6875 8.875 9.6875 z M 19.21875 11.25 C 19.25778 11.49606 19.28125 11.74306 19.28125 12 C 19.28125 12.39985 19.248935 12.78521 19.15625 13.15625 C 20.2429 13.75761 21.12418 14.65908 21.71875 15.75 C 22.335455 15.42894 23.01983 15.23643 23.75 15.1875 C 23.56182 12.98063 21.755825 11.25 19.5 11.25 C 19.40836 11.25 19.30897 11.2444 19.21875 11.25 z M 16 12.84375 C 12.66715 12.84375 9.96875 15.54192 9.96875 18.875 C 9.96875 22.20772 12.667013 24.90625 16 24.90625 C 19.33299 24.90625 22.03125 22.20771 22.03125 18.875 C 22.03125 15.54193 19.332853 12.84375 16 12.84375 z M 9.4375 12.875 C 6.85184 12.875 4.78125 14.94559 4.78125 17.53125 C 4.78125 19.05338 5.501155 20.42736 6.625 21.28125 C 7.09879 20.36744 8.0570875 19.71875 9.15625 19.71875 C 9.289095 19.71875 9.403215 19.7323 9.53125 19.75 C 9.491058 19.45758 9.46875 19.1784 9.46875 18.875 C 9.46875 17.4244 9.947247 16.08344 10.75 15 C 10.26948 14.39871 9.9278275 13.66206 9.78125 12.875 C 9.6726175 12.867 9.5480625 12.875 9.4375 12.875 z M 16 15 C 16.786501 15 17.505108 15.232582 18.125 15.625 L 18.375 15.3125 L 18.78125 16.28125 L 19.15625 17.25 L 18.125 17.09375 L 17.125 16.9375 L 17.34375 16.65625 C 16.954783 16.434451 16.48047 16.34375 16 16.34375 C 14.525735 16.34375 13.34375 17.525635 13.34375 19 C 13.34375 19.1555 13.34954 19.289339 13.375 19.4375 L 12.0625 19.65625 C 12.02588 19.438476 12 19.228287 12 19 C 12 16.788454 13.788603 15 16 15 z M 24.09375 15.65625 C 23.308625 15.65625 22.586838 15.84758 21.9375 16.1875 C 22.306215 17.00423 22.5 17.92139 22.5 18.875 C 22.5 20.66055 21.78996 22.2909 20.625 23.46875 C 21.48082 24.41888 22.712632 25 24.09375 25 C 26.67941 25 28.78125 22.89816 28.78125 20.3125 C 28.78125 17.726839 26.67941 15.65625 24.09375 15.65625 z M 4.3125 16.28125 C 1.9306325 16.28125 0 18.18063 0 20.5625 C 0 22.94437 1.9306325 24.875 4.3125 24.875 C 5.2190732 24.875 6.056265 24.602439 6.75 24.125 C 6.463335 23.67955 6.3125 23.129619 6.3125 22.5625 C 6.3125 22.268139 6.3542845 21.98594 6.4375 21.71875 C 5.13876 20.78017 4.28125 19.25317 4.28125 17.53125 C 4.28125 17.09375 4.3347293 16.6872 4.4375 16.28125 C 4.394842 16.28025 4.3554647 16.28125 4.3125 16.28125 z M 19.9375 18.34375 C 19.97413 18.561539 20 18.771691 20 19 C 20 21.211306 18.21149 23 16 23 C 15.213467 23 14.494885 22.767434 13.875 22.375 L 13.625 22.6875 L 13.21875 21.71875 L 12.84375 20.75 L 13.875 20.90625 L 14.875 21.0625 L 14.65625 21.34375 C 15.045211 21.565557 15.51951 21.65625 16 21.65625 C 17.474326 21.65625 18.65625 20.474204 18.65625 19 C 18.65625 18.844486 18.65047 18.710671 18.625 18.5625 L 19.9375 18.34375 z M 29.625 19.96875 C 29.497935 19.96875 29.371487 19.9807 29.25 20 C 29.2567 20.1074 29.28125 20.20342 29.28125 20.3125 C 29.28125 21.68587 28.720337 22.9487 27.84375 23.875 C 28.275 24.37649 28.908165 24.6875 29.625 24.6875 C 30.93072 24.6875 32 23.64947 32 22.34375 C 32 21.03803 30.93072 19.96875 29.625 19.96875 z M 9.15625 20.21875 C 7.8505975 20.21875 6.78125 21.25684 6.78125 22.5625 C 6.78125 23.86815 7.8505975 24.9375 9.15625 24.9375 C 10.15705 24.9375 10.99878 24.31592 11.34375 23.4375 C 10.50201 22.5802 9.8922975 21.49648 9.625 20.28125 C 9.4685825 20.24891 9.322335 20.21875 9.15625 20.21875 z "
    transform="translate(0,-1.5e-6)"
    id="path7625" /><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.8;color:#000000;fill:url(#linearGradient3342);fill-opacity:1;stroke:none;stroke-width:4;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:0.80000000000000004;color:#000000;fill:url(#linearGradient3342);fill-opacity:1.0;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
    d="m 14.5,6.687498 c -2.381798,0 -4.3125,1.9307 -4.3125,4.312501 0,0.98178 0.323818,1.90142 0.875,2.625 1.195708,-1.38395 2.967095,-2.28125 4.9375,-2.28125 0.964013,0 1.863805,0.21739 2.6875,0.59375 0.06669,-0.3016 0.09375,-0.61557 0.09375,-0.9375 0,-2.381801 -1.89945,-4.312501 -4.28125,-4.312501 z M 8.875,8.687499 c -1.240375,0 -2.25,1.009629 -2.25,2.25 0,0.4016 0.09779,0.76874 0.28125,1.09375 0.74849,-0.422231 1.6120975,-0.65625 2.53125,-0.65625 0.088705,0 0.19365,-0.004 0.28125,0 -0.00993,-0.1253 -0.03125,-0.246741 -0.03125,-0.375 0,-0.69086 0.14258,-1.343731 0.40625,-1.9375 -0.3550075,-0.23805 -0.7579325,-0.375 -1.21875,-0.375 z m 10.34375,1.5625 c 0.03903,0.24606 0.0625,0.49307 0.0625,0.75 0,0.39985 -0.03232,0.78521 -0.125,1.15625 1.08665,0.60137 1.96793,1.50283 2.5625,2.593749 0.616705,-0.32106 1.30108,-0.51356 2.03125,-0.5625 -0.18818,-2.206869 -1.994175,-3.937499 -4.25,-3.937499 -0.09164,0 -0.19103,-0.0056 -0.28125,0 z M 16,11.843749 c -3.33285,0 -6.03125,2.69817 -6.03125,6.031249 0,3.33272 2.698263,6.03125 6.03125,6.03125 3.33299,0 6.03125,-2.69854 6.03125,-6.03125 0,-3.33307 -2.698397,-6.031249 -6.03125,-6.031249 z m -6.5625,0.03125 c -2.58566,0 -4.65625,2.07058 -4.65625,4.656249 0,1.52212 0.719905,2.89611 1.84375,3.75 0.47379,-0.913811 1.4320875,-1.5625 2.53125,-1.5625 0.132845,0 0.246965,0.01355 0.375,0.03125 -0.040192,-0.29242 -0.0625,-0.5716 -0.0625,-0.875 0,-1.4506 0.478497,-2.79156 1.28125,-3.874999 -0.48052,-0.60129 -0.8221725,-1.33794 -0.96875,-2.125 -0.1086325,-0.008 -0.2331875,0 -0.34375,0 z m 6.5625,2.125 c 0.786501,0 1.505108,0.232583 2.125,0.624999 l 0.25,-0.3125 0.40625,0.96875 0.375,0.96875 -1.03125,-0.15625 -1,-0.15625 0.21875,-0.28125 c -0.388967,-0.221799 -0.86328,-0.3125 -1.34375,-0.3125 -1.474265,0 -2.65625,1.181886 -2.65625,2.65625 0,0.1555 0.0058,0.28934 0.03125,0.4375 l -1.3125,0.21875 C 12.02588,18.438475 12,18.228286 12,17.999998 c 0,-2.211546 1.788603,-3.999999 4,-3.999999 z m 8.09375,0.656249 c -0.785125,0 -1.506912,0.19133 -2.15625,0.53125 0.368715,0.81673 0.5625,1.73389 0.5625,2.6875 0,1.78555 -0.71004,3.4159 -1.875,4.59375 0.85582,0.950131 2.087632,1.53125 3.46875,1.53125 2.58566,0 4.6875,-2.10184 4.6875,-4.6875 0,-2.585661 -2.10184,-4.65625 -4.6875,-4.65625 z m -19.78125,0.625 c -2.3818675,0 -4.3125,1.89938 -4.3125,4.28125 0,2.38187 1.9306325,4.3125 4.3125,4.3125 0.9065732,0 1.743765,-0.272561 2.4375,-0.75 -0.286665,-0.44545 -0.4375,-0.99538 -0.4375,-1.5625 0,-0.29436 0.041785,-0.57656 0.125,-0.84375 -1.29874,-0.93858 -2.15625,-2.465589 -2.15625,-4.1875 0,-0.43751 0.053479,-0.84405 0.15625,-1.25 -0.042658,-10e-4 -0.082035,0 -0.125,0 z m 15.625,2.0625 C 19.97413,17.561537 20,17.771689 20,17.999998 c 0,2.211306 -1.78851,4 -4,4 -0.786533,0 -1.505115,-0.232565 -2.125,-0.625 l -0.25,0.3125 -0.40625,-0.96875 -0.375,-0.96875 1.03125,0.15625 1,0.15625 -0.21875,0.28125 c 0.388961,0.221806 0.86326,0.3125 1.34375,0.3125 1.474326,0 2.65625,-1.182046 2.65625,-2.65625 0,-0.155514 -0.0058,-0.289328 -0.03125,-0.4375 l 1.3125,-0.21875 z m 9.6875,1.625 c -0.127065,0 -0.253513,0.01195 -0.375,0.03125 0.0067,0.1074 0.03125,0.203421 0.03125,0.3125 0,1.373371 -0.560913,2.6362 -1.4375,3.5625 0.43125,0.50149 1.064415,0.8125 1.78125,0.8125 1.30572,0 2.375,-1.03803 2.375,-2.34375 0,-1.30572 -1.06928,-2.375 -2.375,-2.375 z m -20.46875,0.25 c -1.3056525,0 -2.375,1.03809 -2.375,2.34375 0,1.30565 1.0693475,2.375 2.375,2.375 1.0008,0 1.84253,-0.62158 2.1875,-1.5 -0.84174,-0.857299 -1.4514525,-1.94102 -1.71875,-3.15625 -0.1564175,-0.03234 -0.302665,-0.0625 -0.46875,-0.0625 z"
    id="circle238"
    inkscape:connector-curvature="0" />
diff --git a/core/img/icon.png b/core/img/icon.png
index 745b82584c6547aa4293f7b3cf97956eed3cc22d..e87191f1c0cedd918056b7330b9966e1f65cca3f 100644
Binary files a/core/img/icon.png and b/core/img/icon.png differ
diff --git a/core/img/icon.svg b/core/img/icon.svg
index 95eac44548961cf67926c504cf57535a3e7784fe..6f91abe6e48cd02529552f8b7158ae286b3be41a 100644
--- a/core/img/icon.svg
+++ b/core/img/icon.svg
@@ -19,14 +19,14 @@
    viewBox="0 0 32 31.999997"
    enable-background="new 0 0 595.275 311.111"
    xml:space="preserve"
-   inkscape:version="0.48.2 r9819"
-   sodipodi:docname="icon.svg"
+   inkscape:version="0.48.3.1 r9886"
+   sodipodi:docname="icon-light.svg"
    inkscape:export-filename="/home/user/owncloud/core/img/icon.png"
    inkscape:export-xdpi="89.826416"
    inkscape:export-ydpi="89.826416"><metadata
    id="metadata327"><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
+         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
    id="defs325"><linearGradient
    inkscape:collect="always"
    xlink:href="#SVGID_1_"
@@ -289,7 +289,7 @@
    x2="-2.4040222"
    y2="18.967093" /><linearGradient
    inkscape:collect="always"
-   xlink:href="#linearGradient3587-6-5-26"
+   xlink:href="#SVGID_9_"
    id="linearGradient7623"
    x1="58.866638"
    y1="24.928007"
@@ -297,7 +297,7 @@
    y2="93.882034"
    gradientUnits="userSpaceOnUse"
    gradientTransform="matrix(0.25,0,0,0.25,0,0.500024)" /></defs><sodipodi:namedview
-   pagecolor="#ffffff"
+   pagecolor="#000000"
    bordercolor="#666666"
    borderopacity="1"
    objecttolerance="10"
@@ -306,14 +306,14 @@
    inkscape:pageopacity="0"
    inkscape:pageshadow="2"
    inkscape:window-width="1280"
-   inkscape:window-height="774"
+   inkscape:window-height="800"
    id="namedview323"
    showgrid="true"
-   inkscape:zoom="8"
-   inkscape:cx="32.984032"
-   inkscape:cy="11.601392"
+   inkscape:zoom="16"
+   inkscape:cx="24.701671"
+   inkscape:cy="13.807816"
    inkscape:window-x="0"
-   inkscape:window-y="26"
+   inkscape:window-y="-31"
    inkscape:window-maximized="1"
    inkscape:current-layer="Layer_1"
    units="px"
@@ -800,7 +800,7 @@
    id="path7625"
    d="m 14.488658,7.6997589 c -2.381798,0 -4.30607,1.92427 -4.30607,4.3060701 0,0.98178 0.32692,1.88539 0.878102,2.60897 1.195708,-1.38395 2.960465,-2.2628 4.93087,-2.2628 0.964013,0 1.878155,0.21467 2.70185,0.59103 0.06669,-0.3016 0.101318,-0.61527 0.101318,-0.9372 0,-2.3818001 -1.92427,-4.3060701 -4.30607,-4.3060701 z m -5.6232205,1.99261 c -1.240375,0 -2.2374675,1.0055301 -2.2374675,2.2459101 0,0.4016 0.10361,0.78106 0.28707,1.10607 0.74849,-0.42223 1.61383,-0.66702 2.5329825,-0.66702 0.088705,0 0.1741425,0.004 0.2617425,0.008 -0.00993,-0.1253 -0.016875,-0.25124 -0.016875,-0.3795 0,-0.69087 0.15005,-1.34819 0.41372,-1.94196 C 9.7516025,9.8258189 9.3262675,9.6923689 8.86545,9.6923689 z M 19.487078,11.237489 c -0.09164,0 -0.179965,0.0113 -0.270185,0.0169 0.03903,0.24606 0.06755,0.49451 0.06755,0.75145 0,0.39985 -0.05085,0.78569 -0.143535,1.15673 1.08665,0.60136 1.989072,1.50116 2.583642,2.59208 0.616705,-0.32106 1.30466,-0.52521 2.03483,-0.57414 -0.18818,-2.20687 -2.016472,-3.94301 -4.272297,-3.94301 z m -3.495518,1.60422 c -3.33285,0 -6.0284975,2.69542 -6.0284975,6.0285 0,3.33272 2.6955105,6.0285 6.0284975,6.0285 3.33299,0 6.0285,-2.69579 6.0285,-6.0285 0,-3.33307 -2.695647,-6.0285 -6.0285,-6.0285 z m -6.5435375,0.0253 c -2.58566,0 -4.6775725,2.09191 -4.6775725,4.67757 0,1.52213 0.7252325,2.8696 1.8490775,3.72349 0.47379,-0.91381 1.425375,-1.53668 2.5245375,-1.53668 0.132845,0 0.260355,0.0161 0.38839,0.0338 -0.040192,-0.29242 -0.0591,-0.59159 -0.0591,-0.89499 0,-1.4506 0.47218,-2.79202 1.274933,-3.87546 -0.48052,-0.60129 -0.8244005,-1.32376 -0.970978,-2.11082 -0.1086325,-0.008 -0.218725,-0.0169 -0.3292875,-0.0169 z m 14.6575255,2.78628 c -0.785125,0 -1.520585,0.20045 -2.169923,0.54037 0.368715,0.81673 0.574143,1.72291 0.574143,2.67652 0,1.78555 -0.71789,3.406849 -1.88285,4.584699 0.85582,0.95013 2.097512,1.54512 3.47863,1.54512 2.58566,0 4.677575,-2.091919 4.677575,-4.677579 0,-2.585661 -2.091915,-4.66913 -4.677575,-4.66913 z M 4.3145118,16.269679 C 1.9326443,16.269679 0,18.185439 0,20.567309 c 0,2.38187 1.9326443,4.31451 4.3145118,4.31451 0.9065732,0 1.7463732,-0.282451 2.4401082,-0.75989 -0.286665,-0.44545 -0.4559375,-0.978001 -0.4559375,-1.54512 0,-0.294361 0.043432,-0.57714 0.1266475,-0.84433 -1.29874,-0.93858 -2.1445912,-2.46595 -2.1445912,-4.18787 0,-0.4375 0.057653,-0.86054 0.1604237,-1.26649 -0.042658,-0.001 -0.083686,-0.008 -0.1266507,-0.008 z m 25.3213812,3.69816 c -0.127065,0 -0.250018,0.0145 -0.371505,0.0338 0.0067,0.1074 0.0084,0.21176 0.0084,0.32084 0,1.37337 -0.541883,2.61988 -1.41847,3.54618 0.43125,0.50149 1.064697,0.819 1.781532,0.819 1.30572,0 2.364118,-1.04996 2.364118,-2.35568 0,-1.30572 -1.058398,-2.36411 -2.364118,-2.36411 z m -20.491828,0.25329 c -1.3056525,0 -2.3556725,1.05002 -2.3556725,2.35568 0,1.30565 1.05002,2.36411 2.3556725,2.36411 1.0008,0 1.850283,-0.62448 2.195253,-1.5029 -0.84174,-0.8573 -1.446688,-1.951 -1.7139855,-3.16623 C 9.468915,20.239449 9.31015,20.221129 9.144065,20.221129 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.2;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:4;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.8;color:#000000;fill:url(#linearGradient7623);fill-opacity:1;stroke:none;stroke-width:4;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:0.80000000000000004;color:#000000;fill:url(#linearGradient7623);fill-opacity:1.0;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
    d="m 14.488658,6.699758 c -2.381798,0 -4.30607,1.92427 -4.30607,4.306071 0,0.98178 0.32692,1.88539 0.878102,2.60897 1.195708,-1.38395 2.960465,-2.2628 4.93087,-2.2628 0.964013,0 1.878155,0.21467 2.70185,0.59103 0.06669,-0.3016 0.101318,-0.61527 0.101318,-0.9372 0,-2.381801 -1.92427,-4.306071 -4.30607,-4.306071 z m -5.6232205,1.99261 c -1.240375,0 -2.2374675,1.00554 -2.2374675,2.245911 0,0.4016 0.10361,0.78106 0.28707,1.10607 0.74849,-0.42223 1.61383,-0.66702 2.5329825,-0.66702 0.088705,0 0.1741425,0.004 0.2617425,0.008 -0.00993,-0.1253 -0.016875,-0.25124 -0.016875,-0.3795 0,-0.69086 0.15005,-1.348191 0.41372,-1.941961 -0.3550075,-0.23805 -0.7803425,-0.3715 -1.24116,-0.3715 z m 10.6216405,1.545121 c -0.09164,0 -0.179965,0.0113 -0.270185,0.0169 0.03903,0.24606 0.06755,0.49452 0.06755,0.75145 0,0.39985 -0.05085,0.78569 -0.143535,1.15673 1.08665,0.60137 1.989072,1.50116 2.583642,2.59208 0.616705,-0.32106 1.30466,-0.5252 2.03483,-0.57414 -0.18818,-2.20687 -2.016472,-3.94301 -4.272297,-3.94301 z m -3.495518,1.60422 c -3.33285,0 -6.0284975,2.69542 -6.0284975,6.0285 0,3.33272 2.6955105,6.0285 6.0284975,6.0285 3.33299,0 6.0285,-2.69579 6.0285,-6.0285 0,-3.33307 -2.695647,-6.0285 -6.0285,-6.0285 z m -6.5435375,0.0253 c -2.58566,0 -4.6775725,2.09191 -4.6775725,4.67758 0,1.52212 0.7252325,2.86959 1.8490775,3.72348 0.47379,-0.913811 1.425375,-1.53668 2.5245375,-1.53668 0.132845,0 0.260355,0.0161 0.38839,0.0338 -0.040192,-0.29242 -0.0591,-0.59159 -0.0591,-0.89499 0,-1.4506 0.47218,-2.792019 1.274933,-3.875459 -0.48052,-0.60129 -0.8244005,-1.32376 -0.970978,-2.11082 -0.1086325,-0.008 -0.218725,-0.0169 -0.3292875,-0.0169 z m 14.6575255,2.78628 c -0.785125,0 -1.520585,0.20045 -2.169923,0.54037 0.368715,0.81673 0.574143,1.72291 0.574143,2.67652 0,1.78555 -0.71789,3.406849 -1.88285,4.584699 0.85582,0.95013 2.097512,1.54512 3.47863,1.54512 2.58566,0 4.677575,-2.091919 4.677575,-4.677579 0,-2.585661 -2.091915,-4.66913 -4.677575,-4.66913 z M 4.3145118,15.269679 C 1.9326443,15.269679 0,17.185439 0,19.567309 c 0,2.38187 1.9326443,4.31451 4.3145118,4.31451 0.9065732,0 1.7463732,-0.282451 2.4401082,-0.75989 -0.286665,-0.44545 -0.4559375,-0.978001 -0.4559375,-1.54512 0,-0.294361 0.043432,-0.57714 0.1266475,-0.84433 -1.29874,-0.93858 -2.1445912,-2.46595 -2.1445912,-4.18786 0,-0.43751 0.057653,-0.86055 0.1604237,-1.2665 -0.042658,-10e-4 -0.083686,-0.008 -0.1266507,-0.008 z m 25.3213812,3.69816 c -0.127065,0 -0.250018,0.0145 -0.371505,0.0338 0.0067,0.1074 0.0084,0.21176 0.0084,0.32084 0,1.37337 -0.541883,2.61988 -1.41847,3.54618 0.43125,0.50149 1.064697,0.819 1.781532,0.819 1.30572,0 2.364118,-1.04996 2.364118,-2.35568 0,-1.30572 -1.058398,-2.36411 -2.364118,-2.36411 z m -20.491828,0.25329 c -1.3056525,0 -2.3556725,1.05002 -2.3556725,2.35568 0,1.30565 1.05002,2.36411 2.3556725,2.36411 1.0008,0 1.850283,-0.62448 2.195253,-1.5029 -0.84174,-0.8573 -1.446688,-1.951 -1.7139855,-3.16623 C 9.468915,19.239449 9.31015,19.221129 9.144065,19.221129 z"
    id="circle238"
    inkscape:export-filename="/home/user/owncloud/core/img/logo.png"
diff --git a/core/js/config.js b/core/js/config.js
index 11168f1c483f6e97fd4c503975828b579ac53aa3..f7a29276f7dc1e6eb3f8061ef32ece33121affbe 100644
--- a/core/js/config.js
+++ b/core/js/config.js
@@ -51,5 +51,5 @@ OC.AppConfig={
 	deleteApp:function(app){
 		OC.AppConfig.postCall('deleteApp',{app:app});
 	},
-}
+};
 //TODO OC.Preferences
diff --git a/core/js/js.js b/core/js/js.js
index 0c842f05593289513ef371733b36c279ab74877f..e3c3716e055c803166b5a46fddb1f8f268515b0d 100644
--- a/core/js/js.js
+++ b/core/js/js.js
@@ -4,6 +4,8 @@
  * @param text the string to translate
  * @return string
  */
+var OC;
+
 function t(app,text){
 	if( !( app in t.cache )){
 		$.ajax(OC.filePath('core','ajax','translations.php'),{
@@ -40,6 +42,11 @@ function fileDownloadPath(dir, file) {
 }
 
 OC={
+	PERMISSION_CREATE:4,
+	PERMISSION_READ:1,
+	PERMISSION_UPDATE:2,
+	PERMISSION_DELETE:8,
+	PERMISSION_SHARE:16,
 	webroot:oc_webroot,
 	appswebroots:oc_appswebroots,
 	currentUser:(typeof oc_current_user!=='undefined')?oc_current_user:false,
@@ -120,18 +127,19 @@ OC={
 	 */
 	addScript:function(app,script,ready){
 		var path=OC.filePath(app,'js',script+'.js');
-		if(OC.addScript.loaded.indexOf(path)==-1){
-			OC.addScript.loaded.push(path);
+		if(!OC.addScript.loaded[path]){
 			if(ready){
-				$.getScript(path,ready);
+				var deferred=$.getScript(path,ready);
 			}else{
-				$.getScript(path);
+				var deferred=$.getScript(path);
 			}
+			OC.addScript.loaded[path]=deferred;
 		}else{
 			if(ready){
 				ready();
 			}
 		}
+		return OC.addScript.loaded[path];
 	},
 	/**
 	 * load a css file and load it
@@ -146,6 +154,12 @@ OC={
 			$('head').append(style);
 		}
 	},
+	basename: function(path) {
+		return path.replace(/\\/g,'/').replace( /.*\//, '' );
+	},
+	dirname: function(path) {
+		return path.replace(/\\/g,'/').replace(/\/[^\/]*$/, '');;
+	},
 	/**
 	 * do a search query and display the results
 	 * @param query the search query
@@ -200,7 +214,7 @@ OC={
 					popup.prepend('<span class="arrow '+arrowclass+'"></span><h2>'+t('core', 'Settings')+'</h2><a class="close svg"></a>').show();
 					popup.find('.close').bind('click', function() {
 						popup.remove();
-					})
+					});
 					if(typeof props.loadJS !== 'undefined') {
 						var scriptname;
 						if(props.loadJS === true) {
@@ -230,6 +244,49 @@ OC.search.lastResults={};
 OC.addStyle.loaded=[];
 OC.addScript.loaded=[];
 
+OC.Breadcrumb={
+	container:null,
+	crumbs:[],
+	push:function(name, link){
+		if(!OC.Breadcrumb.container){//default
+			OC.Breadcrumb.container=$('#controls');
+		}
+		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);
+		crumbLink.text(name);
+		crumb.append(crumbLink);
+
+		var existing=OC.Breadcrumb.container.find('div.crumb');
+		if(existing.length){
+			existing.removeClass('last');
+			existing.last().after(crumb);
+		}else{
+			OC.Breadcrumb.container.append(crumb);
+		}
+		OC.Breadcrumb.crumbs.push(crumb);
+		return crumb;
+	},
+	pop:function(){
+		if(!OC.Breadcrumb.container){//default
+			OC.Breadcrumb.container=$('#controls');
+		}
+		OC.Breadcrumb.container.find('div.crumb').last().remove();
+		OC.Breadcrumb.container.find('div.crumb').last().addClass('last');
+		OC.Breadcrumb.crumbs.pop();
+	},
+	clear:function(){
+		if(!OC.Breadcrumb.container){//default
+			OC.Breadcrumb.container=$('#controls');
+		}
+		OC.Breadcrumb.container.find('div.crumb').remove();
+		OC.Breadcrumb.crumbs=[];
+	}
+}
+
 if(typeof localStorage !='undefined' && localStorage != null){
 	//user and instance awere localstorage
 	OC.localStorage={
@@ -586,3 +643,40 @@ function formatDate(date){
 	t('files','July'), t('files','August'), t('files','September'), t('files','October'), t('files','November'), t('files','December') ];
 	return monthNames[date.getMonth()]+' '+date.getDate()+', '+date.getFullYear()+', '+((date.getHours()<10)?'0':'')+date.getHours()+':'+((date.getMinutes()<10)?'0':'')+date.getMinutes();
 }
+
+/**
+ * get a variable by name
+ * @param string name
+ */
+OC.get=function(name) {
+	var namespaces = name.split(".");
+	var tail = namespaces.pop();
+	var context=window;
+	
+	for(var i = 0; i < namespaces.length; i++) {
+		context = context[namespaces[i]];
+		if(!context){
+			return false;
+		}
+	}
+	return context[tail];
+}
+
+/**
+ * set a variable by name
+ * @param string name
+ * @param mixed value
+ */
+OC.set=function(name, value) {
+	var namespaces = name.split(".");
+	var tail = namespaces.pop();
+	var context=window;
+	
+	for(var i = 0; i < namespaces.length; i++) {
+		if(!context[namespaces[i]]){
+			context[namespaces[i]]={};
+		}
+		context = context[namespaces[i]];
+	}
+	context[tail]=value;
+}
diff --git a/core/js/listview.js b/core/js/listview.js
index e3e5ebdab8f9635d0310838ea25303e5adb95e9f..3a713a6222cfb6e031c021d1da63c5c2b4704c4a 100644
--- a/core/js/listview.js
+++ b/core/js/listview.js
@@ -11,15 +11,15 @@ ListView.generateTable=function(collumns){
 	html+='<thead>';
 	html+='</head>';
 	html+='<tbody>';
-	html+'<tr class="template">'
+	html+'<tr class="template">';
 	$.each(collumns,function(index,collumn){
 		html+='<th class="'+collumn.toLower()+'"</th>';
 	});
-	html+'</tr>'
+	html+'</tr>';
 	html+='</tbody>';
 	html='</table>';
 	return $(html);
-}
+};
 
 ListView.prototype={
 	rows:{},
@@ -49,7 +49,7 @@ ListView.prototype={
 				var element=$(html);
 				element.append($('<img src="'+element.icon+'"/>'));
 				element.click(element.callback);
-				tr.children('td.'+collumn).append(element)
+				tr.children('td.'+collumn).append(element);
 			});
 		});
 		if(this.deleteCallback){
@@ -68,4 +68,4 @@ ListView.prototype={
 	empty:function(){
 		this.element.children('tr:not(.template)').remove();
 	}
-}
\ No newline at end of file
+};
diff --git a/core/js/oc-dialogs.js b/core/js/oc-dialogs.js
index 0fa41696a164906557f8250de5349608cbfdc0dd..4dd3c89c14dbfb484a49d9c5eaee9d793adb0925 100644
--- a/core/js/oc-dialogs.js
+++ b/core/js/oc-dialogs.js
@@ -22,7 +22,7 @@
 /**
  * this class to ease the usage of jquery dialogs
  */
-OCdialogs = {
+var OCdialogs = {
 	/**
 	* displays alert dialog
 	* @param text content of dialog
diff --git a/core/js/oc-vcategories.js b/core/js/oc-vcategories.js
index dfed8223b1b791edd69feb36ad747df253bcd9cc..c99dd51f53a6fc30f7f1bac68ab85d64aa3a41ff 100644
--- a/core/js/oc-vcategories.js
+++ b/core/js/oc-vcategories.js
@@ -1,4 +1,4 @@
-OCCategories={
+var OCCategories={
 	edit:function(){
 		if(OCCategories.app == undefined) {
 			OC.dialogs.alert('OCCategories.app is not set!');
@@ -95,7 +95,7 @@ OCCategories={
 			}
 		}).error(function(xhr){
 			if (xhr.status == 404) {
-				OC.dialogs.alert('The required file ' + OC.filePath(Categories.app, 'ajax', 'categories/rescan.php') + ' is not installed!', 'Error');
+				OC.dialogs.alert('The required file ' + OC.filePath(OCCategories.app, 'ajax', 'categories/rescan.php') + ' is not installed!', 'Error');
 			}
 		});
 	},
diff --git a/core/js/setup.js b/core/js/setup.js
index 23c705a068699d5241eccd6c397742dddb207195..39fcf4a2715cfa6ac03990d3265c9d0fb7a1f5dc 100644
--- a/core/js/setup.js
+++ b/core/js/setup.js
@@ -1,11 +1,11 @@
-var dbtypes
+var dbtypes;
 $(document).ready(function() {
 	dbtypes={
 		sqlite:!!$('#hasSQLite').val(),
 		mysql:!!$('#hasMySQL').val(),
 		postgresql:!!$('#hasPostgreSQL').val(),
 		oracle:!!$('#hasOracle').val(),
-	}
+	};
 	
 	$('#selectDbType').buttonset();
 	$('#datadirContent').hide(250);
diff --git a/core/js/share.js b/core/js/share.js
index 2f3b5c2fa505027125db0a3f4cb15b632daa2f4d..8a00587b77abb9c1fe859bd1d14d815569fa44f0 100644
--- a/core/js/share.js
+++ b/core/js/share.js
@@ -3,11 +3,6 @@ OC.Share={
 	SHARE_TYPE_GROUP:1,
 	SHARE_TYPE_LINK:3,
 	SHARE_TYPE_EMAIL:4,
-	PERMISSION_CREATE:4,
-	PERMISSION_READ:1,
-	PERMISSION_UPDATE:2,
-	PERMISSION_DELETE:8,
-	PERMISSION_SHARE:16,
 	itemShares:[],
 	statuses:[],
 	droppedDown:false,
@@ -76,7 +71,8 @@ OC.Share={
 			var item = itemSource;
 		}
 		if (typeof OC.Share.statuses[item] === 'undefined') {
-			checkShares = false;
+			// NOTE: Check doesn't always work and misses some shares, fix later
+			checkShares = true;
 		} else {
 			checkShares = true;
 		}
@@ -129,18 +125,19 @@ OC.Share={
 			}
 			html += '<br />';
 		}
-		if (possiblePermissions & OC.Share.PERMISSION_SHARE) {
-			html += '<input id="shareWith" type="text" placeholder="Share with" style="width:90%;"/>';
+		if (possiblePermissions & OC.PERMISSION_SHARE) {
+			html += '<input id="shareWith" type="text" placeholder="Share with" />';
 			html += '<ul id="shareWithList">';
 			html += '</ul>';
 			if (link) {
 				html += '<div id="link">';
 				html += '<input type="checkbox" name="linkCheckbox" id="linkCheckbox" value="1" /><label for="linkCheckbox">Share with link</label>';
-				// TODO Change to lock/unlock icon?
-				html += '<a href="#" id="showPassword" style="display:none;"><img class="svg" alt="Password protect" src="'+OC.imagePath('core', 'actions/triangle-n')+'"/></a>';
+				html += '<a href="#" id="showPassword" style="display:none;"><img class="svg" alt="Password protect" src="'+OC.imagePath('core', 'actions/lock')+'"/></a>';
 				html += '<br />';
-				html += '<input id="linkText" style="display:none; width:90%;" readonly="readonly" />';
-				html += '<input id="linkPassText" type="password" placeholder="Password" style="display:none; width:90%;" />';
+				html += '<input id="linkText" type="text" readonly="readonly" />';
+				html += '<div id="linkPass">';
+				html += '<input id="linkPassText" type="password" placeholder="Password" />';
+				html += '</div>';
 				html += '</div>';
 			}
 			html += '<div id="expiration">';
@@ -155,7 +152,11 @@ OC.Share={
 					if (share.share_type == OC.Share.SHARE_TYPE_LINK) {
 						OC.Share.showLink(itemSource, share.share_with);
 					} else {
-						OC.Share.addShareWith(share.share_type, share.share_with, share.permissions, possiblePermissions);
+						if (share.collection) {
+							OC.Share.addShareWith(share.share_type, share.share_with, share.permissions, possiblePermissions, share.collection);
+						} else {
+							OC.Share.addShareWith(share.share_type, share.share_with, share.permissions, possiblePermissions, false);
+						}
 					}
 				});
 			}
@@ -168,12 +169,12 @@ OC.Share={
 							response(result.data);
 						} else {
 							// Suggest sharing via email if valid email address
-							var pattern = new RegExp(/^[+a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/i);
-							if (pattern.test(search.term)) {
-								response([{label: 'Share via email: '+search.term, value: {shareType: OC.Share.SHARE_TYPE_EMAIL, shareWith: search.term}}]);
-							} else {
+// 							var pattern = new RegExp(/^[+a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/i);
+// 							if (pattern.test(search.term)) {
+// 								response([{label: 'Share via email: '+search.term, value: {shareType: OC.Share.SHARE_TYPE_EMAIL, shareWith: search.term}}]);
+// 							} else {
 								response(['No people found']);
-							}
+// 							}
 						}
 					});
 	// 			}
@@ -188,7 +189,7 @@ OC.Share={
 				var shareWith = selected.item.value.shareWith;
 				$(this).val(shareWith);
 				// Default permissions are Read and Share
-				var permissions = OC.Share.PERMISSION_READ | OC.Share.PERMISSION_SHARE;
+				var permissions = OC.PERMISSION_READ | OC.PERMISSION_SHARE;
 				OC.Share.share(itemType, itemSource, shareType, shareWith, permissions, function() {
 					OC.Share.addShareWith(shareType, shareWith, permissions, possiblePermissions);
 					$('#shareWith').val('');
@@ -219,56 +220,70 @@ OC.Share={
 			}
 		});
 	},
-	addShareWith:function(shareType, shareWith, permissions, possiblePermissions) {
+	addShareWith:function(shareType, shareWith, permissions, possiblePermissions, collection) {
 		if (!OC.Share.itemShares[shareType]) {
 			OC.Share.itemShares[shareType] = [];
 		}
 		OC.Share.itemShares[shareType].push(shareWith);
-		var editChecked = createChecked = updateChecked = deleteChecked = shareChecked = '';
-		if (permissions & OC.Share.PERMISSION_CREATE) {
-			createChecked = 'checked="checked"';
-			editChecked = 'checked="checked"';
-		}
-		if (permissions & OC.Share.PERMISSION_UPDATE) {
-			updateChecked = 'checked="checked"';
-			editChecked = 'checked="checked"';
-		}
-		if (permissions & OC.Share.PERMISSION_DELETE) {
-			deleteChecked = 'checked="checked"';
-			editChecked = 'checked="checked"';
-		}
-		if (permissions & OC.Share.PERMISSION_SHARE) {
-			shareChecked = 'checked="checked"';
-		}
-		var html = '<li style="clear: both;" data-share-type="'+shareType+'" data-share-with="'+shareWith+'">';
-		html += shareWith;
-		if (possiblePermissions & OC.Share.PERMISSION_CREATE || possiblePermissions & OC.Share.PERMISSION_UPDATE || possiblePermissions & OC.Share.PERMISSION_DELETE) {
-			if (editChecked == '') {
-				html += '<label style="display:none;">';
+		if (collection) {
+			if (collection.item_type == 'file' || collection.item_type == 'folder') {
+				var item = collection.path;
 			} else {
-				html += '<label>';
+				var item = collection.item_source;
 			}
-			html += '<input type="checkbox" name="edit" class="permissions" '+editChecked+' />can edit</label>';
-		}
-		html += '<a href="#" class="showCruds" style="display:none;"><img class="svg" alt="Unshare" src="'+OC.imagePath('core', 'actions/triangle-s')+'"/></a>';
-		html += '<a href="#" class="unshare" style="display:none;"><img class="svg" alt="Unshare" src="'+OC.imagePath('core', 'actions/delete')+'"/></a>';
-		html += '<div class="cruds" style="display:none;">';
-			if (possiblePermissions & OC.Share.PERMISSION_CREATE) {
-				html += '<label><input type="checkbox" name="create" class="permissions" '+createChecked+' data-permissions="'+OC.Share.PERMISSION_CREATE+'" />create</label>';
+			var collectionList = $('#shareWithList li').filterAttr('data-collection', item);
+			if (collectionList.length > 0) {
+				$(collectionList).append(', '+shareWith);
+			} else {
+				var html = '<li style="clear: both;" data-collection="'+item+'">Shared in '+item+' with '+shareWith+'</li>';
+				$('#shareWithList').prepend(html);
 			}
-			if (possiblePermissions & OC.Share.PERMISSION_UPDATE) {
-				html += '<label><input type="checkbox" name="update" class="permissions" '+updateChecked+' data-permissions="'+OC.Share.PERMISSION_UPDATE+'" />update</label>';
+		} else {
+			var editChecked = createChecked = updateChecked = deleteChecked = shareChecked = '';
+			if (permissions & OC.PERMISSION_CREATE) {
+				createChecked = 'checked="checked"';
+				editChecked = 'checked="checked"';
 			}
-			if (possiblePermissions & OC.Share.PERMISSION_DELETE) {
-				html += '<label><input type="checkbox" name="delete" class="permissions" '+deleteChecked+' data-permissions="'+OC.Share.PERMISSION_DELETE+'" />delete</label>';
+			if (permissions & OC.PERMISSION_UPDATE) {
+				updateChecked = 'checked="checked"';
+				editChecked = 'checked="checked"';
 			}
-			if (possiblePermissions & OC.Share.PERMISSION_SHARE) {
-				html += '<label><input type="checkbox" name="share" class="permissions" '+shareChecked+' data-permissions="'+OC.Share.PERMISSION_SHARE+'" />share</label>';
+			if (permissions & OC.PERMISSION_DELETE) {
+				deleteChecked = 'checked="checked"';
+				editChecked = 'checked="checked"';
 			}
-		html += '</div>';
-		html += '</li>';
-		$(html).appendTo('#shareWithList');
-
+			if (permissions & OC.PERMISSION_SHARE) {
+				shareChecked = 'checked="checked"';
+			}
+			var html = '<li style="clear: both;" data-share-type="'+shareType+'" data-share-with="'+shareWith+'">';
+			html += shareWith;
+			if (possiblePermissions & OC.PERMISSION_CREATE || possiblePermissions & OC.PERMISSION_UPDATE || possiblePermissions & OC.PERMISSION_DELETE) {
+				if (editChecked == '') {
+					html += '<label style="display:none;">';
+				} else {
+					html += '<label>';
+				}
+				html += '<input type="checkbox" name="edit" class="permissions" '+editChecked+' />can edit</label>';
+			}
+			html += '<a href="#" class="showCruds" style="display:none;"><img class="svg" alt="Unshare" src="'+OC.imagePath('core', 'actions/triangle-s')+'"/></a>';
+			html += '<a href="#" class="unshare" style="display:none;"><img class="svg" alt="Unshare" src="'+OC.imagePath('core', 'actions/delete')+'"/></a>';
+			html += '<div class="cruds" style="display:none;">';
+				if (possiblePermissions & OC.PERMISSION_CREATE) {
+					html += '<label><input type="checkbox" name="create" class="permissions" '+createChecked+' data-permissions="'+OC.PERMISSION_CREATE+'" />create</label>';
+				}
+				if (possiblePermissions & OC.PERMISSION_UPDATE) {
+					html += '<label><input type="checkbox" name="update" class="permissions" '+updateChecked+' data-permissions="'+OC.PERMISSION_UPDATE+'" />update</label>';
+				}
+				if (possiblePermissions & OC.PERMISSION_DELETE) {
+					html += '<label><input type="checkbox" name="delete" class="permissions" '+deleteChecked+' data-permissions="'+OC.PERMISSION_DELETE+'" />delete</label>';
+				}
+				if (possiblePermissions & OC.PERMISSION_SHARE) {
+					html += '<label><input type="checkbox" name="share" class="permissions" '+shareChecked+' data-permissions="'+OC.PERMISSION_SHARE+'" />share</label>';
+				}
+			html += '</div>';
+			html += '</li>';
+			$(html).appendTo('#shareWithList');
+		}
 	},
 	showLink:function(itemSource, password) {
 		$('#linkCheckbox').attr('checked', true);
@@ -283,9 +298,15 @@ OC.Share={
 		$('#linkText').val(link);
 		$('#linkText').show('blind');
 		$('#showPassword').show();
+		if (password != null) {
+			$('#linkPass').show('blind');
+			$('#linkPassText').attr('placeholder', 'Password protected');
+		}
 	},
 	hideLink:function() {
 		$('#linkText').hide('blind');
+		$('#showPassword').hide();
+		$('#linkPass').hide();
 	},
 	dirname:function(path) {
 		return path.replace(/\\/g,'/').replace(/\/[^\/]*$/, '');
@@ -381,7 +402,7 @@ $(document).ready(function() {
 				$(checkboxes).filter('input[name="edit"]').attr('checked', true);
 			}
 		}
-		var permissions = OC.Share.PERMISSION_READ;
+		var permissions = OC.PERMISSION_READ;
 		$(checkboxes).filter(':not(input[name="edit"])').filter(':checked').each(function(index, checkbox) {
 			permissions |= $(checkbox).data('permissions');
 		});
@@ -393,7 +414,7 @@ $(document).ready(function() {
 		var itemSource = $('#dropdown').data('item-source');
 		if (this.checked) {
 			// Create a link
-			OC.Share.share(itemType, itemSource, OC.Share.SHARE_TYPE_LINK, '', OC.Share.PERMISSION_READ, function() {
+			OC.Share.share(itemType, itemSource, OC.Share.SHARE_TYPE_LINK, '', OC.PERMISSION_READ, function() {
 				OC.Share.showLink(itemSource);
 				// TODO Change icon
 			});
@@ -411,30 +432,28 @@ $(document).ready(function() {
 	});
 
 	$('#showPassword').live('click', function() {
-		$('#linkText').after('<br />');
-		$('#linkPassText').toggle('blind');
+		$('#linkPass').toggle('blind');
 	});
 
 	$('#linkPassText').live('keyup', function(event) {
 		if (event.keyCode == 13) {
 			var itemType = $('#dropdown').data('item-type');
 			var itemSource = $('#dropdown').data('item-source');
-			// TODO Do this internally
-			OC.Share.unshare(itemType, itemSource, OC.Share.SHARE_TYPE_LINK, '');
-			OC.Share.share(itemType, itemSource, OC.Share.SHARE_TYPE_LINK, $(this).val(), OC.Share.PERMISSION_READ);
+			OC.Share.share(itemType, itemSource, OC.Share.SHARE_TYPE_LINK, $(this).val(), OC.PERMISSION_READ, function() {
+				$('#linkPassText').val('');
+				$('#linkPassText').attr('placeholder', 'Password protected');
+			});
 		}
 	});
 
-	$('#expirationCheckbox').live('change', function() {
+	$('#expirationCheckbox').live('click', function() {
 		if (this.checked) {
-			console.log('checked');
 			$('#expirationDate').before('<br />');
 			$('#expirationDate').show();
 			$('#expirationDate').datepicker({
 				dateFormat : 'dd-mm-yy'
 			});
 		} else {
-			console.log('unchecled');
 			$('#expirationDate').hide();
 		}
 	});
@@ -449,7 +468,4 @@ $(document).ready(function() {
 		});
 	});
 
-	$('#emailPrivateLink').live('submit', function() {
-		OC.Share.emailPrivateLink();
-	});
 });
diff --git a/core/l10n/ca.php b/core/l10n/ca.php
index 9be2fe6adfc0d3bd0789e1cbaa9d3231869a54f4..6c70c29e6cb7382c4aa5a2235b791b3655015700 100644
--- a/core/l10n/ca.php
+++ b/core/l10n/ca.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "No s'ha facilitat cap nom per l'aplicació.",
 "No category to add?" => "No voleu afegir cap categoria?",
 "This category already exists: " => "Aquesta categoria ja existeix:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Arranjament",
 "January" => "Gener",
 "February" => "Febrer",
@@ -51,6 +50,7 @@
 "Database user" => "Usuari de la base de dades",
 "Database password" => "Contrasenya de la base de dades",
 "Database name" => "Nom de la base de dades",
+"Database tablespace" => "Espai de taula de la base de dades",
 "Database host" => "Ordinador central de la base de dades",
 "Finish setup" => "Acaba la configuració",
 "web services under your control" => "controleu els vostres serveis web",
diff --git a/core/l10n/cs_CZ.php b/core/l10n/cs_CZ.php
index 7daeb52e6313d02c7cdb73298668fdc93caa66c4..6a4dad08cbdd18c55568ee26692a2467db1972b6 100644
--- a/core/l10n/cs_CZ.php
+++ b/core/l10n/cs_CZ.php
@@ -1,8 +1,7 @@
 <?php $TRANSLATIONS = array(
-"Application name not provided." => "Jméno aplikace nezadáno.",
+"Application name not provided." => "Nezadán název aplikace.",
 "No category to add?" => "Žádná kategorie k přidání?",
-"This category already exists: " => "Tato kategorie již existuje:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
+"This category already exists: " => "Tato kategorie již existuje: ",
 "Settings" => "Nastavení",
 "January" => "Leden",
 "February" => "Únor",
@@ -19,14 +18,14 @@
 "Cancel" => "Zrušit",
 "No" => "Ne",
 "Yes" => "Ano",
-"Ok" => "Budiž",
+"Ok" => "Ok",
 "No categories selected for deletion." => "Žádné kategorie nebyly vybrány ke smazání.",
 "Error" => "Chyba",
-"ownCloud password reset" => "Reset hesla pro ownCloud",
-"Use the following link to reset your password: {link}" => "Heslo vyresetujete použitím následujícího odkazu: {link}",
-"You will receive a link to reset your password via Email." => "Bude Vám zaslán odkaz pro obnovu hesla",
+"ownCloud password reset" => "Obnovení hesla pro ownCloud",
+"Use the following link to reset your password: {link}" => "Heslo obnovíte použitím následujícího odkazu: {link}",
+"You will receive a link to reset your password via Email." => "Bude Vám e-mailem zaslán odkaz pro obnovu hesla.",
 "Requested" => "Požadováno",
-"Login failed!" => "Přihlášení selhalo",
+"Login failed!" => "Přihlášení selhalo.",
 "Username" => "Uživatelské jméno",
 "Request reset" => "Vyžádat obnovu",
 "Your password was reset" => "Vaše heslo bylo obnoveno",
@@ -36,29 +35,30 @@
 "Personal" => "Osobní",
 "Users" => "Uživatelé",
 "Apps" => "Aplikace",
-"Admin" => "Admin",
+"Admin" => "Administrace",
 "Help" => "Nápověda",
-"Access forbidden" => "Přístup odmítnut",
+"Access forbidden" => "Přístup zakázán",
 "Cloud not found" => "Cloud nebyl nalezen",
 "Edit categories" => "Upravit kategorie",
 "Add" => "Přidat",
 "Create an <strong>admin account</strong>" => "Vytvořit <strong>účet správce</strong>",
 "Password" => "Heslo",
-"Advanced" => "Rozšířené volby",
-"Data folder" => "Datový adresář",
-"Configure the database" => "Konfigurace databáze",
+"Advanced" => "Pokročilé",
+"Data folder" => "Složka s daty",
+"Configure the database" => "Nastavit databázi",
 "will be used" => "bude použito",
 "Database user" => "Uživatel databáze",
-"Database password" => "Heslo k databázi",
+"Database password" => "Heslo databáze",
 "Database name" => "Název databáze",
+"Database tablespace" => "Tabulkový prostor databáze",
 "Database host" => "Hostitel databáze",
-"Finish setup" => "Dokončit instalaci",
+"Finish setup" => "Dokončit nastavení",
 "web services under your control" => "webové služby pod Vaší kontrolou",
 "Log out" => "Odhlásit se",
-"Lost your password?" => "Zapomenuté heslo?",
+"Lost your password?" => "Ztratili jste své heslo?",
 "remember" => "zapamatovat si",
-"Log in" => "Login",
+"Log in" => "Přihlásit",
 "You are logged out." => "Jste odhlášeni.",
-"prev" => "zpět",
-"next" => "vpřed"
+"prev" => "předchozí",
+"next" => "následující"
 );
diff --git a/core/l10n/da.php b/core/l10n/da.php
index 5e62b5b95dbead9889c1ad08a51c8215eab21e65..4bb953a4c5db1a7808822d8d082f44967e5f38dd 100644
--- a/core/l10n/da.php
+++ b/core/l10n/da.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Applikationens navn ikke medsendt",
 "No category to add?" => "Ingen kategori at tilføje?",
 "This category already exists: " => "Denne kategori eksisterer allerede: ",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Indstillinger",
 "January" => "Januar",
 "February" => "Februar",
@@ -51,6 +50,7 @@
 "Database user" => "Databasebruger",
 "Database password" => "Databasekodeord",
 "Database name" => "Navn på database",
+"Database tablespace" => "Database tabelplads",
 "Database host" => "Databasehost",
 "Finish setup" => "Afslut opsætning",
 "web services under your control" => "Webtjenester under din kontrol",
diff --git a/core/l10n/de.php b/core/l10n/de.php
index 9ed2d6178281ae8b27b3c37cf9f6525ea4c23e43..611c208fe4d7552e1509b3c826acb5d2eb218ccf 100644
--- a/core/l10n/de.php
+++ b/core/l10n/de.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Applikationsname nicht angegeben",
 "No category to add?" => "Keine Kategorie hinzuzufügen?",
 "This category already exists: " => "Kategorie existiert bereits:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Einstellungen",
 "January" => "Januar",
 "February" => "Februar",
@@ -20,7 +19,7 @@
 "No" => "Nein",
 "Yes" => "Ja",
 "Ok" => "OK",
-"No categories selected for deletion." => "Keine Kategorien zum Löschen angegeben.",
+"No categories selected for deletion." => "Es wurde keine Kategorien zum Löschen ausgewählt.",
 "Error" => "Fehler",
 "ownCloud password reset" => "ownCloud-Passwort zurücksetzen",
 "Use the following link to reset your password: {link}" => "Nutzen Sie den nachfolgenden Link, um Ihr Passwort zurückzusetzen: {link}",
@@ -51,6 +50,7 @@
 "Database user" => "Datenbank-Benutzer",
 "Database password" => "Datenbank-Passwort",
 "Database name" => "Datenbank-Name",
+"Database tablespace" => "Datenbank-Tablespace",
 "Database host" => "Datenbank-Host",
 "Finish setup" => "Installation abschließen",
 "web services under your control" => "Web-Services unter Ihrer Kontrolle",
diff --git a/core/l10n/el.php b/core/l10n/el.php
index d8f32fb51e02d2addfad1e09d3400e11339e733b..18a26f892c0ce69d78c54ed136244655e53c096a 100644
--- a/core/l10n/el.php
+++ b/core/l10n/el.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Δε προσδιορίστηκε όνομα εφαρμογής",
 "No category to add?" => "Δεν έχετε να προστέσθέσεται μια κα",
 "This category already exists: " => "Αυτή η κατηγορία υπάρχει ήδη",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Ρυθμίσεις",
 "January" => "Ιανουάριος",
 "February" => "Φεβρουάριος",
diff --git a/core/l10n/eo.php b/core/l10n/eo.php
index f5e5ca9d0e1dca1f6172eab020199c501746f232..f1deaf3c9d7a01370cbb41b229b51d6654bdd0f2 100644
--- a/core/l10n/eo.php
+++ b/core/l10n/eo.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Nomo de aplikaĵo ne proviziiĝis.",
 "No category to add?" => "Ĉu neniu kategorio estas aldonota?",
 "This category already exists: " => "Ĉi tiu kategorio jam ekzistas: ",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Agordo",
 "January" => "Januaro",
 "February" => "Februaro",
@@ -51,6 +50,7 @@
 "Database user" => "Datumbaza uzanto",
 "Database password" => "Datumbaza pasvorto",
 "Database name" => "Datumbaza nomo",
+"Database tablespace" => "Datumbaza tabelospaco",
 "Database host" => "Datumbaza gastigo",
 "Finish setup" => "Fini la instalon",
 "web services under your control" => "TTT-servoj sub via kontrolo",
diff --git a/core/l10n/es.php b/core/l10n/es.php
index 8766228ba89e71738101281c3d8f15000f9ac278..21866d2ed6759b188bf8d829b993e1169fa74855 100644
--- a/core/l10n/es.php
+++ b/core/l10n/es.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Nombre de la aplicación no provisto.",
 "No category to add?" => "¿Ninguna categoría para añadir?",
 "This category already exists: " => "Esta categoría ya existe: ",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Ajustes",
 "January" => "Enero",
 "February" => "Febrero",
@@ -51,6 +50,7 @@
 "Database user" => "Usuario de la base de datos",
 "Database password" => "Contraseña de la base de datos",
 "Database name" => "Nombre de la base de datos",
+"Database tablespace" => "Espacio de tablas de la base de datos",
 "Database host" => "Host de la base de datos",
 "Finish setup" => "Completar la instalación",
 "web services under your control" => "servicios web bajo tu control",
diff --git a/core/l10n/et_EE.php b/core/l10n/et_EE.php
index 734021605ca4733dbff20d1acbc84cce19e8cf25..871cc25fee08b19f192fc82396cbc89e2ecb3205 100644
--- a/core/l10n/et_EE.php
+++ b/core/l10n/et_EE.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Rakenduse nime pole sisestatud.",
 "No category to add?" => "Pole kategooriat, mida lisada?",
 "This category already exists: " => "See kategooria on juba olemas: ",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Seaded",
 "January" => "Jaanuar",
 "February" => "Veebruar",
diff --git a/core/l10n/eu.php b/core/l10n/eu.php
index 2e5a2c00e2a17c43799f79c71cd0fdf2ce414a47..58a63b6e684cd4e9464e1b6affefc9abd242201c 100644
--- a/core/l10n/eu.php
+++ b/core/l10n/eu.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Aplikazioaren izena falta da",
 "No category to add?" => "Ez dago gehitzeko kategoriarik?",
 "This category already exists: " => "Kategoria hau dagoeneko existitzen da:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Ezarpenak",
 "January" => "Urtarrila",
 "February" => "Otsaila",
@@ -51,6 +50,7 @@
 "Database user" => "Datubasearen erabiltzailea",
 "Database password" => "Datubasearen pasahitza",
 "Database name" => "Datubasearen izena",
+"Database tablespace" => "Datu basearen taula-lekua",
 "Database host" => "Datubasearen hostalaria",
 "Finish setup" => "Bukatu konfigurazioa",
 "web services under your control" => "web zerbitzuak zure kontrolpean",
diff --git a/core/l10n/fa.php b/core/l10n/fa.php
index 5fe98629ba20ac70fd2c8ab46d7739a70845ada3..7b7af3937b8d19f384ce3c3a1fb7f07c2c9d8d49 100644
--- a/core/l10n/fa.php
+++ b/core/l10n/fa.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "نام برنامه پیدا نشد",
 "No category to add?" => "آیا گروه دیگری برای افزودن ندارید",
 "This category already exists: " => "این گروه از قبل اضافه شده",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "تنظیمات",
 "January" => "ژانویه",
 "February" => "فبریه",
diff --git a/core/l10n/fi_FI.php b/core/l10n/fi_FI.php
index 64bb4dca631a7f8406e9e0dc3fc6389d892a0eec..d253ee9433a4cf906523a9977cab358724cef596 100644
--- a/core/l10n/fi_FI.php
+++ b/core/l10n/fi_FI.php
@@ -50,6 +50,7 @@
 "Database user" => "Tietokannan käyttäjä",
 "Database password" => "Tietokannan salasana",
 "Database name" => "Tietokannan nimi",
+"Database tablespace" => "Tietokannan taulukkotila",
 "Database host" => "Tietokantapalvelin",
 "Finish setup" => "Viimeistele asennus",
 "web services under your control" => "verkkopalvelut hallinnassasi",
diff --git a/core/l10n/fr.php b/core/l10n/fr.php
index 43917917ad8b3f357260777c6d2a1f46b5980e5a..2904ebf48b20cbc54bc0f338ffed8d236df2781b 100644
--- a/core/l10n/fr.php
+++ b/core/l10n/fr.php
@@ -2,21 +2,20 @@
 "Application name not provided." => "Nom de l'application non fourni.",
 "No category to add?" => "Pas de catégorie à ajouter ?",
 "This category already exists: " => "Cette catégorie existe déjà : ",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Paramètres",
-"January" => "Janvier",
-"February" => "Février",
-"March" => "Mars",
-"April" => "Avril",
-"May" => "Mai",
-"June" => "Juin",
-"July" => "Juillet",
-"August" => "Août",
-"September" => "Septembre",
-"October" => "Octobre",
-"November" => "Novembre",
-"December" => "Décembre",
-"Cancel" => "Annulé",
+"January" => "janvier",
+"February" => "février",
+"March" => "mars",
+"April" => "avril",
+"May" => "mai",
+"June" => "juin",
+"July" => "juillet",
+"August" => "août",
+"September" => "septembre",
+"October" => "octobre",
+"November" => "novembre",
+"December" => "décembre",
+"Cancel" => "Annuler",
 "No" => "Non",
 "Yes" => "Oui",
 "Ok" => "Ok",
@@ -24,7 +23,7 @@
 "Error" => "Erreur",
 "ownCloud password reset" => "Réinitialisation de votre mot de passe Owncloud",
 "Use the following link to reset your password: {link}" => "Utilisez le lien suivant pour réinitialiser votre mot de passe : {link}",
-"You will receive a link to reset your password via Email." => "Vous allez recevoir un e-mail contenant un lien pour réinitialiser votre mot de passe",
+"You will receive a link to reset your password via Email." => "Vous allez recevoir un e-mail contenant un lien pour réinitialiser votre mot de passe.",
 "Requested" => "Demande envoyée",
 "Login failed!" => "Nom d'utilisateur ou e-mail invalide",
 "Username" => "Nom d'utilisateur",
@@ -51,6 +50,7 @@
 "Database user" => "Utilisateur pour la base de données",
 "Database password" => "Mot de passe de la base de données",
 "Database name" => "Nom de la base de données",
+"Database tablespace" => "Tablespaces de la base de données",
 "Database host" => "Serveur de la base de données",
 "Finish setup" => "Terminer l'installation",
 "web services under your control" => "services web sous votre contrôle",
diff --git a/core/l10n/gl.php b/core/l10n/gl.php
index eeff78826f868a5d7de8a86ee3d5ccfeb5a1867b..af8497121994c91fc3d42243aa381ca52227cc91 100644
--- a/core/l10n/gl.php
+++ b/core/l10n/gl.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Non se indicou o nome do aplicativo.",
 "No category to add?" => "Sen categoría que engadir?",
 "This category already exists: " => "Esta categoría xa existe: ",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Preferencias",
 "January" => "Xaneiro",
 "February" => "Febreiro",
diff --git a/core/l10n/hi.php b/core/l10n/hi.php
new file mode 100644
index 0000000000000000000000000000000000000000..cc9cbdb22f3a0df3080a59df421ec12b64f6bf53
--- /dev/null
+++ b/core/l10n/hi.php
@@ -0,0 +1,14 @@
+<?php $TRANSLATIONS = array(
+"Username" => "प्रयोक्ता का नाम",
+"Cloud not found" => "क्लौड नहीं मिला ",
+"Create an <strong>admin account</strong>" => "व्यवस्थापक खाता बनाएँ",
+"Password" => "पासवर्ड",
+"Advanced" => "उन्नत",
+"Configure the database" => "डेटाबेस कॉन्फ़िगर करें ",
+"Database user" => "डेटाबेस उपयोगकर्ता",
+"Database password" => "डेटाबेस पासवर्ड",
+"Finish setup" => "सेटअप समाप्त करे",
+"You are logged out." => "आप लोग आउट  कर दिए गए हैं.",
+"prev" => "पिछला",
+"next" => "अगला"
+);
diff --git a/core/l10n/hr.php b/core/l10n/hr.php
index d4e773afc1e525d602d68df029a0a5cc68a1cfc9..723cceb4d01039e92cc1abb5225d205eb73a1313 100644
--- a/core/l10n/hr.php
+++ b/core/l10n/hr.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Ime aplikacije nije pribavljeno.",
 "No category to add?" => "Nemate kategorija koje možete dodati?",
 "This category already exists: " => "Ova kategorija već postoji: ",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Postavke",
 "January" => "Siječanj",
 "February" => "Veljača",
diff --git a/core/l10n/hu_HU.php b/core/l10n/hu_HU.php
index dbfe2781d5fd45036145dc9829b9912a31f8c063..a97c4cb8861b6bc19fca869ed9882e97d1a6207b 100644
--- a/core/l10n/hu_HU.php
+++ b/core/l10n/hu_HU.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Alkalmazásnév hiányzik",
 "No category to add?" => "Nincs hozzáadandó kategória?",
 "This category already exists: " => "Ez a kategória már létezik",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Beállítások",
 "January" => "Január",
 "February" => "Február",
diff --git a/core/l10n/id.php b/core/l10n/id.php
index 296e2d62a4a1839f0e72ceb5571a78cb766cdc45..47758f8861b878001737ca4a2237f2704510d628 100644
--- a/core/l10n/id.php
+++ b/core/l10n/id.php
@@ -3,6 +3,23 @@
 "No category to add?" => "Tidak ada kategori yang akan ditambahkan?",
 "This category already exists: " => "Kategori ini sudah ada:",
 "Settings" => "Setelan",
+"January" => "Januari",
+"February" => "Februari",
+"March" => "Maret",
+"April" => "April",
+"May" => "Mei",
+"June" => "Juni",
+"July" => "Juli",
+"August" => "Agustus",
+"September" => "September",
+"October" => "Oktober",
+"November" => "Nopember",
+"December" => "Desember",
+"Cancel" => "Batalkan",
+"No" => "Tidak",
+"Yes" => "Ya",
+"Ok" => "Oke",
+"No categories selected for deletion." => "Tidak ada kategori terpilih untuk penghapusan.",
 "ownCloud password reset" => "reset password ownCloud",
 "Use the following link to reset your password: {link}" => "Gunakan tautan berikut untuk mereset password anda: {link}",
 "You will receive a link to reset your password via Email." => "Anda akan mendapatkan link untuk mereset password anda lewat Email.",
diff --git a/core/l10n/ignorelist b/core/l10n/ignorelist
new file mode 100644
index 0000000000000000000000000000000000000000..a2b225cbe4a589bb6937c1d6ce4216bb7fd35cbe
--- /dev/null
+++ b/core/l10n/ignorelist
@@ -0,0 +1 @@
+js/jquery-ui-1.8.16.custom.min.js
diff --git a/core/l10n/it.php b/core/l10n/it.php
index 1c0bf94ca71b03d46e9390f7b2ce88000ee5e2b3..8d9ac21cd43d661a11e51ba7224b559578425836 100644
--- a/core/l10n/it.php
+++ b/core/l10n/it.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Nome dell'applicazione non fornito.",
 "No category to add?" => "Nessuna categoria da aggiungere?",
 "This category already exists: " => "Questa categoria esiste già: ",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Impostazioni",
 "January" => "Gennaio",
 "February" => "Febbraio",
@@ -39,7 +38,7 @@
 "Admin" => "Admin",
 "Help" => "Aiuto",
 "Access forbidden" => "Accesso negato",
-"Cloud not found" => "Cloud non trovata",
+"Cloud not found" => "Nuvola non trovata",
 "Edit categories" => "Modifica le categorie",
 "Add" => "Aggiungi",
 "Create an <strong>admin account</strong>" => "Crea un <strong>account amministratore</strong>",
@@ -47,10 +46,11 @@
 "Advanced" => "Avanzate",
 "Data folder" => "Cartella dati",
 "Configure the database" => "Configura il database",
-"will be used" => "sarà usato",
+"will be used" => "sarà utilizzato",
 "Database user" => "Utente del database",
 "Database password" => "Password del database",
 "Database name" => "Nome del database",
+"Database tablespace" => "Spazio delle tabelle del database",
 "Database host" => "Host del database",
 "Finish setup" => "Termina la configurazione",
 "web services under your control" => "servizi web nelle tue mani",
diff --git a/core/l10n/ja_JP.php b/core/l10n/ja_JP.php
index 5f9b9da33a662c3a4b61296a7ac66e5cf4476c91..62f5e16f3ca6e6f7c6b0143130cc5030e8684e32 100644
--- a/core/l10n/ja_JP.php
+++ b/core/l10n/ja_JP.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "アプリケーション名は提供されていません。",
 "No category to add?" => "追加するカテゴリはありませんか?",
 "This category already exists: " => "このカテゴリはすでに存在します: ",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "設定",
 "January" => "1月",
 "February" => "2月",
@@ -51,6 +50,7 @@
 "Database user" => "データベースのユーザ名",
 "Database password" => "データベースのパスワード",
 "Database name" => "データベース名",
+"Database tablespace" => "データベースの表領域",
 "Database host" => "データベースのホスト名",
 "Finish setup" => "セットアップを完了します",
 "web services under your control" => "管理下にあるウェブサービス",
diff --git a/core/l10n/ko.php b/core/l10n/ko.php
index 5a330581ff1cd96cdf324f6eff01bd8c0b07c924..9f82a79c43c09c326c3fba5713818bbe168b98ab 100644
--- a/core/l10n/ko.php
+++ b/core/l10n/ko.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "응용 프로그램의 이름이 규정되어 있지 않습니다. ",
 "No category to add?" => "추가할 카테고리가 없습니까?",
 "This category already exists: " => "이 카테고리는 이미 존재합니다:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "설정",
 "January" => "1월",
 "February" => "2월",
diff --git a/core/l10n/lb.php b/core/l10n/lb.php
index eafdcc3737034a6a7be011149a28c65e4e1224eb..0959e0ed25f5f234709eaa96d763565dbe91d376 100644
--- a/core/l10n/lb.php
+++ b/core/l10n/lb.php
@@ -3,6 +3,24 @@
 "No category to add?" => "Keng Kategorie fir bäizesetzen?",
 "This category already exists: " => "Des Kategorie existéiert schonn:",
 "Settings" => "Astellungen",
+"January" => "Januar",
+"February" => "Februar",
+"March" => "Mäerz",
+"April" => "Abrëll",
+"May" => "Mee",
+"June" => "Juni",
+"July" => "Juli",
+"August" => "August",
+"September" => "September",
+"October" => "Oktober",
+"November" => "November",
+"December" => "Dezember",
+"Cancel" => "Ofbriechen",
+"No" => "Nee",
+"Yes" => "Jo",
+"Ok" => "OK",
+"No categories selected for deletion." => "Keng Kategorien ausgewielt fir ze läschen.",
+"Error" => "Fehler",
 "ownCloud password reset" => "ownCloud Passwuert reset",
 "Use the following link to reset your password: {link}" => "Benotz folgende Link fir däi Passwuert ze reseten: {link}",
 "You will receive a link to reset your password via Email." => "Du kriss en Link fir däin Passwuert nei ze setzen via Email geschéckt.",
@@ -25,13 +43,14 @@
 "Add" => "Bäisetzen",
 "Create an <strong>admin account</strong>" => "En <strong>Admin Account</strong> uleeën",
 "Password" => "Passwuert",
-"Advanced" => "Erweidert",
+"Advanced" => "Advanced",
 "Data folder" => "Daten Dossier",
 "Configure the database" => "Datebank konfiguréieren",
 "will be used" => "wärt benotzt ginn",
 "Database user" => "Datebank Benotzer",
 "Database password" => "Datebank Passwuert",
 "Database name" => "Datebank Numm",
+"Database tablespace" => "Datebank Tabelle-Gréisst",
 "Database host" => "Datebank Server",
 "Finish setup" => "Installatioun ofschléissen",
 "web services under your control" => "Web Servicer ënnert denger Kontroll",
diff --git a/core/l10n/lt_LT.php b/core/l10n/lt_LT.php
index f36f697b67c62627aeacbc0403784be02969abab..0a3320351cfdfb4ce719bcaff45099878d74e816 100644
--- a/core/l10n/lt_LT.php
+++ b/core/l10n/lt_LT.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Nepateiktas programos pavadinimas.",
 "No category to add?" => "Nepridėsite jokios kategorijos?",
 "This category already exists: " => "Tokia kategorija jau yra:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Nustatymai",
 "January" => "Sausis",
 "February" => "Vasaris",
diff --git a/core/l10n/mk.php b/core/l10n/mk.php
index af49a04f11c0e527fdbb1f416b285166edf6f189..3eea6cd58d1eb24359fff12f106bf192f033f604 100644
--- a/core/l10n/mk.php
+++ b/core/l10n/mk.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Име за апликацијата не е доставено.",
 "No category to add?" => "Нема категорија да се додаде?",
 "This category already exists: " => "Оваа категорија веќе постои:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Поставки",
 "January" => "Јануари",
 "February" => "Февруари",
diff --git a/core/l10n/ms_MY.php b/core/l10n/ms_MY.php
index 25da7cd8622c1541e59e1fc5fcf486db8be7cc80..c99c510be620c2a48e5ea38425642b836a2bce36 100644
--- a/core/l10n/ms_MY.php
+++ b/core/l10n/ms_MY.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "nama applikasi tidak disediakan",
 "No category to add?" => "Tiada kategori untuk di tambah?",
 "This category already exists: " => "Kategori ini telah wujud",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Tetapan",
 "January" => "Januari",
 "February" => "Februari",
diff --git a/core/l10n/nb_NO.php b/core/l10n/nb_NO.php
index d30823b59f279abeab88abc71bdd969d27e98495..a8bfebb8a55b5228b93f7c2193a7fb35bcdf390b 100644
--- a/core/l10n/nb_NO.php
+++ b/core/l10n/nb_NO.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Applikasjonsnavn ikke angitt.",
 "No category to add?" => "Ingen kategorier å legge til?",
 "This category already exists: " => "Denne kategorien finnes allerede:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Innstillinger",
 "January" => "Januar",
 "February" => "Februar",
diff --git a/core/l10n/nl.php b/core/l10n/nl.php
index 874a710a75928a20fc7e6dbf0d839b134ffd277c..3497381f74cbf9f87e09646bdcb2929558e16b3d 100644
--- a/core/l10n/nl.php
+++ b/core/l10n/nl.php
@@ -28,7 +28,7 @@
 "Login failed!" => "Login mislukt!",
 "Username" => "Gebruikersnaam",
 "Request reset" => "Resetaanvraag",
-"Your password was reset" => "Je wachtwoord is geweizigd",
+"Your password was reset" => "Je wachtwoord is gewijzigd",
 "To login page" => "Naar de login-pagina",
 "New password" => "Nieuw wachtwoord",
 "Reset password" => "Reset wachtwoord",
@@ -50,6 +50,7 @@
 "Database user" => "Gebruiker databank",
 "Database password" => "Wachtwoord databank",
 "Database name" => "Naam databank",
+"Database tablespace" => "Database tablespace",
 "Database host" => "Database server",
 "Finish setup" => "Installatie afronden",
 "web services under your control" => "webdiensten die je beheerst",
diff --git a/core/l10n/pl.php b/core/l10n/pl.php
index 4eb5f1f9ae905a32a9cd20575e5664671b1a0f09..5f8752b69bb47e1d2278b8c39224dc6be3c176e6 100644
--- a/core/l10n/pl.php
+++ b/core/l10n/pl.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Brak nazwy dla aplikacji",
 "No category to add?" => "Brak kategorii",
 "This category already exists: " => "Ta kategoria już istnieje",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Ustawienia",
 "January" => "Styczeń",
 "February" => "Luty",
@@ -51,6 +50,7 @@
 "Database user" => "Użytkownik bazy danych",
 "Database password" => "Hasło do bazy danych",
 "Database name" => "Nazwa bazy danych",
+"Database tablespace" => "Obszar tabel bazy danych",
 "Database host" => "Komputer bazy danych",
 "Finish setup" => "Zakończ konfigurowanie",
 "web services under your control" => "usługi internetowe pod kontrolą",
diff --git a/core/l10n/pt_BR.php b/core/l10n/pt_BR.php
index 46d601e6ebf27923b1703c3feabf2e890747cad7..9ad2f3de53f4561818cdb48bdde4d93f25301247 100644
--- a/core/l10n/pt_BR.php
+++ b/core/l10n/pt_BR.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Nome da aplicação não foi fornecido.",
 "No category to add?" => "Nenhuma categoria adicionada?",
 "This category already exists: " => "Essa categoria já existe",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Configurações",
 "January" => "Janeiro",
 "February" => "Fevereiro",
diff --git a/core/l10n/pt_PT.php b/core/l10n/pt_PT.php
index 29135f0d66d5a187ae5beb46fba03994de2b75f3..4da513c1aecbd40cef5a8cbe9b97c5854210290a 100644
--- a/core/l10n/pt_PT.php
+++ b/core/l10n/pt_PT.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Nome da aplicação não definida.",
 "No category to add?" => "Nenhuma categoria para adicionar?",
 "This category already exists: " => "Esta categoria já existe:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Definições",
 "January" => "Janeiro",
 "February" => "Fevereiro",
diff --git a/core/l10n/ru.php b/core/l10n/ru.php
index edb55577772a7a33b1a882fbb0b7b82ebfd26abb..c7ce381c05ed59ca1861d5955d94a714719a2a41 100644
--- a/core/l10n/ru.php
+++ b/core/l10n/ru.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Имя приложения не установлено.",
 "No category to add?" => "Нет категорий для добавления?",
 "This category already exists: " => "Эта категория уже существует: ",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Настройки",
 "January" => "Январь",
 "February" => "Февраль",
@@ -51,6 +50,7 @@
 "Database user" => "Имя пользователя для базы данных",
 "Database password" => "Пароль для базы данных",
 "Database name" => "Название базы данных",
+"Database tablespace" => "Табличое пространство базы данных",
 "Database host" => "Хост базы данных",
 "Finish setup" => "Завершить установку",
 "web services under your control" => "Сетевые службы под твоим контролем",
diff --git a/core/l10n/sk_SK.php b/core/l10n/sk_SK.php
index b6bff1e0497507e63062206cbd4bf9e3530fb70b..8c3339170d677c3d51b51c139694a71d60d285c8 100644
--- a/core/l10n/sk_SK.php
+++ b/core/l10n/sk_SK.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Meno aplikácie nezadané.",
 "No category to add?" => "Žiadna kategória pre pridanie?",
 "This category already exists: " => "Táto kategória už existuje:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Nastavenia",
 "January" => "Január",
 "February" => "Február",
diff --git a/core/l10n/sl.php b/core/l10n/sl.php
index 2f998c95492e0a2cd7287126d1e0b76fcd68d986..b7850c28619461433addcfe921bccdced9cc181a 100644
--- a/core/l10n/sl.php
+++ b/core/l10n/sl.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Ime aplikacije ni bilo določeno.",
 "No category to add?" => "Ni kategorije za dodajanje?",
 "This category already exists: " => "Ta kategorija že obstaja:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Nastavitve",
 "January" => "januar",
 "February" => "februar",
@@ -51,6 +50,7 @@
 "Database user" => "Uporabnik zbirke",
 "Database password" => "Geslo podatkovne zbirke",
 "Database name" => "Ime podatkovne zbirke",
+"Database tablespace" => "Razpredelnica podatkovne zbirke",
 "Database host" => "Gostitelj podatkovne zbirke",
 "Finish setup" => "Dokončaj namestitev",
 "web services under your control" => "spletne storitve pod vašim nadzorom",
diff --git a/core/l10n/sv.php b/core/l10n/sv.php
index 25ba95558e7bf0627d3c7fa97c024d8cfce06c07..6b075f0aaf206b6c3cf7e69ceb8a69930a016412 100644
--- a/core/l10n/sv.php
+++ b/core/l10n/sv.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Programnamn har inte angetts.",
 "No category to add?" => "Ingen kategori att lägga till?",
 "This category already exists: " => "Denna kategori finns redan:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Inställningar",
 "January" => "Januari",
 "February" => "Februari",
@@ -51,6 +50,7 @@
 "Database user" => "Databasanvändare",
 "Database password" => "Lösenord till databasen",
 "Database name" => "Databasnamn",
+"Database tablespace" => "Databas tabellutrymme",
 "Database host" => "Databasserver",
 "Finish setup" => "Avsluta installation",
 "web services under your control" => "webbtjänster under din kontroll",
diff --git a/core/l10n/th_TH.php b/core/l10n/th_TH.php
index 8bd4d36524f19c3331adc3f0228eece89e3c4c28..fd25105f150f016a9e8054d13fae3f4faca4709e 100644
--- a/core/l10n/th_TH.php
+++ b/core/l10n/th_TH.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "ยังไม่ได้ตั้งชื่อแอพพลิเคชั่น",
 "No category to add?" => "ไม่มีหมวดหมู่ที่ต้องการเพิ่ม?",
 "This category already exists: " => "หมวดหมู่นี้มีอยู่แล้ว: ",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "ตั้งค่า",
 "January" => "มกราคม",
 "February" => "กุมภาพันธ์",
@@ -51,6 +50,7 @@
 "Database user" => "ชื่อผู้ใช้งานฐานข้อมูล",
 "Database password" => "รหัสผ่านฐานข้อมูล",
 "Database name" => "ชื่อฐานข้อมูล",
+"Database tablespace" => "พื้นที่ตารางในฐานข้อมูล",
 "Database host" => "Database host",
 "Finish setup" => "ติดตั้งเรียบร้อยแล้ว",
 "web services under your control" => "web services under your control",
diff --git a/core/l10n/tr.php b/core/l10n/tr.php
index e2d0d9b073d2caf057d7852216ee734637db33e6..7d6d4a33a6d4dc2a70f8823bebd450e3ac467986 100644
--- a/core/l10n/tr.php
+++ b/core/l10n/tr.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Uygulama adı verilmedi.",
 "No category to add?" => "Eklenecek kategori yok?",
 "This category already exists: " => "Bu kategori zaten mevcut: ",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Ayarlar",
 "January" => "Ocak",
 "February" => "Şubat",
@@ -51,6 +50,7 @@
 "Database user" => "Veritabanı kullanıcı adı",
 "Database password" => "Veritabanı parolası",
 "Database name" => "Veritabanı adı",
+"Database tablespace" => "Veritabanı tablo alanı",
 "Database host" => "Veritabanı sunucusu",
 "Finish setup" => "Kurulumu tamamla",
 "web services under your control" => "kontrolünüzdeki web servisleri",
diff --git a/core/l10n/uk.php b/core/l10n/uk.php
index 4a10a9fc74557d076a3df997b0aad80214746ba7..e84ec8f8830bafb2ba35edf592a96b6a1bceecb6 100644
--- a/core/l10n/uk.php
+++ b/core/l10n/uk.php
@@ -1,5 +1,21 @@
 <?php $TRANSLATIONS = array(
 "Settings" => "Налаштування",
+"January" => "Січень",
+"February" => "Лютий",
+"March" => "Березень",
+"April" => "Квітень",
+"May" => "Травень",
+"June" => "Червень",
+"July" => "Липень",
+"August" => "Серпень",
+"September" => "Вересень",
+"October" => "Жовтень",
+"November" => "Листопад",
+"December" => "Грудень",
+"Cancel" => "Відмінити",
+"No" => "Ні",
+"Yes" => "Так",
+"Error" => "Помилка",
 "You will receive a link to reset your password via Email." => "Ви отримаєте посилання для скидання вашого паролю на e-mail.",
 "Username" => "Ім'я користувача",
 "Your password was reset" => "Ваш пароль був скинутий",
@@ -10,6 +26,7 @@
 "Users" => "Користувачі",
 "Admin" => "Адміністратор",
 "Help" => "Допомога",
+"Add" => "Додати",
 "Password" => "Пароль",
 "Configure the database" => "Налаштування бази даних",
 "will be used" => "буде використано",
diff --git a/core/l10n/vi.php b/core/l10n/vi.php
index 4a4c97032fd6ee655fd73da55753a1b0791aead7..de4764c3a54a2e98610654ded51978d264516108 100644
--- a/core/l10n/vi.php
+++ b/core/l10n/vi.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "Tên ứng dụng không tồn tại",
 "No category to add?" => "Không có danh mục được thêm?",
 "This category already exists: " => "Danh mục này đã được tạo :",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "Cài đặt",
 "January" => "Tháng 1",
 "February" => "Tháng 2",
diff --git a/core/l10n/zh_CN.GB2312.php b/core/l10n/zh_CN.GB2312.php
index 770d2b6772de180963d0296c35e8c542f3d1afe2..58104df399726ae0ea4f00197dfcda898e70d7f6 100644
--- a/core/l10n/zh_CN.GB2312.php
+++ b/core/l10n/zh_CN.GB2312.php
@@ -2,7 +2,6 @@
 "Application name not provided." => "应用程序并没有被提供.",
 "No category to add?" => "没有分类添加了?",
 "This category already exists: " => "这个分类已经存在了:",
-"ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" => "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=",
 "Settings" => "设置",
 "January" => "一月",
 "February" => "二月",
diff --git a/core/l10n/zh_CN.php b/core/l10n/zh_CN.php
index 1f5216a2fffaf0a4d072d9d674d76f475ad3e3ee..4e0a37a877477ea9bedd67a5ea084cacf8f09d2d 100644
--- a/core/l10n/zh_CN.php
+++ b/core/l10n/zh_CN.php
@@ -50,6 +50,7 @@
 "Database user" => "数据库用户",
 "Database password" => "数据库密码",
 "Database name" => "数据库名",
+"Database tablespace" => "数据库表空间",
 "Database host" => "数据库主机",
 "Finish setup" => "安装完成",
 "web services under your control" => "由您掌控的网络服务",
diff --git a/core/l10n/zh_TW.php b/core/l10n/zh_TW.php
index 37c0d8cc9d1f26f3215c901b31529fa7140e18b8..57a087fae9268bdd862a6de90fe074e42f55e232 100644
--- a/core/l10n/zh_TW.php
+++ b/core/l10n/zh_TW.php
@@ -3,6 +3,24 @@
 "No category to add?" => "無分類添加?",
 "This category already exists: " => "此分類已經存在:",
 "Settings" => "設定",
+"January" => "一月",
+"February" => "二月",
+"March" => "三月",
+"April" => "四月",
+"May" => "五月",
+"June" => "六月",
+"July" => "七月",
+"August" => "八月",
+"September" => "九月",
+"October" => "十月",
+"November" => "十一月",
+"December" => "十二月",
+"Cancel" => "取消",
+"No" => "No",
+"Yes" => "Yes",
+"Ok" => "Ok",
+"No categories selected for deletion." => "沒選擇要刪除的分類",
+"Error" => "錯誤",
 "ownCloud password reset" => "ownCloud 密碼重設",
 "Use the following link to reset your password: {link}" => "請循以下聯結重設你的密碼: (聯結) ",
 "You will receive a link to reset your password via Email." => "重設密碼的連結將會寄到你的電子郵件信箱",
@@ -32,6 +50,7 @@
 "Database user" => "資料庫使用者",
 "Database password" => "資料庫密碼",
 "Database name" => "資料庫名稱",
+"Database tablespace" => "資料庫 tablespace",
 "Database host" => "資料庫主機",
 "Finish setup" => "完成設定",
 "web services under your control" => "網路服務已在你控制",
diff --git a/core/lostpassword/index.php b/core/lostpassword/index.php
index 8f86fe23aad489e2274c7343d97a72d87904e0a1..3f58b03c982ce2ae44e015d9101aa66e88ff3871 100644
--- a/core/lostpassword/index.php
+++ b/core/lostpassword/index.php
@@ -7,7 +7,7 @@
 */
 
 $RUNTIME_NOAPPS = TRUE; //no apps
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 
 
 // Someone lost their password:
@@ -17,26 +17,26 @@ if (isset($_POST['user'])) {
 		OC_Preferences::setValue($_POST['user'], 'owncloud', 'lostpassword', $token);
 		$email = OC_Preferences::getValue($_POST['user'], 'settings', 'email', '');
 		if (!empty($email) and isset($_POST['sectoken']) and isset($_SESSION['sectoken']) and ($_POST['sectoken']==$_SESSION['sectoken']) ) {
-			$link = OC_Helper::linkToAbsolute('core/lostpassword', 'resetpassword.php').'?user='.urlencode($_POST['user']).'&token='.$token;
+			$link = OC_Helper::linkToAbsolute('core/lostpassword', 'resetpassword.php', array('user' => urlencode($_POST['user']), 'token' => $token));
 			$tmpl = new OC_Template('core/lostpassword', 'email');
 			$tmpl->assign('link', $link, false);
 			$msg = $tmpl->fetchPage();
 			$l = OC_L10N::get('core');
 			$from = 'lostpassword-noreply@' . OCP\Util::getServerHost();
-			OC_MAIL::send($email,$_POST['user'],$l->t('ownCloud password reset'),$msg,$from,'ownCloud');
+			OC_MAIL::send($email, $_POST['user'], $l->t('ownCloud password reset'), $msg, $from, 'ownCloud');
 			echo('sent');
 
 		}
-		$sectoken=rand(1000000,9999999);
+		$sectoken=rand(1000000, 9999999);
 		$_SESSION['sectoken']=$sectoken;
 		OC_Template::printGuestPage('core/lostpassword', 'lostpassword', array('error' => false, 'requested' => true, 'sectoken' => $sectoken));
 	} else {
-		$sectoken=rand(1000000,9999999);
+		$sectoken=rand(1000000, 9999999);
 		$_SESSION['sectoken']=$sectoken;
 		OC_Template::printGuestPage('core/lostpassword', 'lostpassword', array('error' => true, 'requested' => false, 'sectoken' => $sectoken));
 	}
 } else {
-	$sectoken=rand(1000000,9999999);
+	$sectoken=rand(1000000, 9999999);
 	$_SESSION['sectoken']=$sectoken;
 	OC_Template::printGuestPage('core/lostpassword', 'lostpassword', array('error' => false, 'requested' => false, 'sectoken' => $sectoken));
 }
diff --git a/core/lostpassword/resetpassword.php b/core/lostpassword/resetpassword.php
index 33be9d7053bccf7688d306bfea82bb09fde60abc..28a0063fc647c5d7b7bf21076fa921173bcbf05d 100644
--- a/core/lostpassword/resetpassword.php
+++ b/core/lostpassword/resetpassword.php
@@ -7,7 +7,7 @@
 */
 
 $RUNTIME_NOAPPS = TRUE; //no apps
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 
 // Someone wants to reset their password:
 if(isset($_GET['token']) && isset($_GET['user']) && OC_Preferences::getValue($_GET['user'], 'owncloud', 'lostpassword') === $_GET['token']) {
diff --git a/core/lostpassword/templates/email.php b/core/lostpassword/templates/email.php
index d146d8e4c373aa481798546ad275e8eb84a1cdff..b65049feffea2af609daefcab9f824c68cc95ee6 100644
--- a/core/lostpassword/templates/email.php
+++ b/core/lostpassword/templates/email.php
@@ -1 +1,2 @@
-<?php echo str_replace('{link}', $_['link'], $l->t('Use the following link to reset your password: {link}')) ?>
+<?php
+echo str_replace('{link}', $_['link'], $l->t('Use the following link to reset your password: {link}'));
\ No newline at end of file
diff --git a/core/minimizer.php b/core/minimizer.php
index 0abbca7502723aa962a664785068978ae73ba2df..4da9037c41308afeeae59a09cd2bfd27051fc49f 100644
--- a/core/minimizer.php
+++ b/core/minimizer.php
@@ -3,12 +3,12 @@ session_write_close();
 
 OC_App::loadApps();
 
-if ($service == 'core.css'){
+if ($service == 'core.css') {
 	$minimizer = new OC_Minimizer_CSS();
 	$files = OC_TemplateLayout::findStylesheetFiles(OC_Util::$core_styles);
 	$minimizer->output($files, $service);
 }
-else if ($service == 'core.js'){
+else if ($service == 'core.js') {
 	$minimizer = new OC_Minimizer_JS();
 	$files = OC_TemplateLayout::findJavascriptFiles(OC_Util::$core_scripts);
 	$minimizer->output($files, $service);
diff --git a/core/templates/403.php b/core/templates/403.php
index cdfef08ac769234c11a0aefdb061b71a03cca989..fbf0e64fdb6e570692667b39965ed87ea347504b 100644
--- a/core/templates/403.php
+++ b/core/templates/403.php
@@ -1,5 +1,5 @@
 <?php
-if(!isset($_)){//also provide standalone error page
+if(!isset($_)) {//also provide standalone error page
 	require_once '../../lib/base.php';
 	
 	$tmpl = new OC_Template( '', '403', 'guest' );
diff --git a/core/templates/404.php b/core/templates/404.php
index 13a81010343449ec60658b55083529e582b35eb5..c111fd70fa92eb17d1597e83c54b20a00b8c4de5 100644
--- a/core/templates/404.php
+++ b/core/templates/404.php
@@ -1,5 +1,5 @@
 <?php
-if(!isset($_)){//also provide standalone error page
+if(!isset($_)) {//also provide standalone error page
 	require_once '../../lib/base.php';
 	
 	$tmpl = new OC_Template( '', '404', 'guest' );
diff --git a/core/templates/exception.php b/core/templates/exception.php
index 7f58ce252cf72f6b2eeb8e2caf91e182b148abfd..4b951fca51bbd1ee8d5555877a8d74463014f172 100644
--- a/core/templates/exception.php
+++ b/core/templates/exception.php
@@ -4,7 +4,7 @@
 		<summary class="error">We're sorry, but something went terribly wrong.<br></summary>
 		<p class="exception">
 		<?php
-		if($_['showsysinfo'] == true){
+		if($_['showsysinfo'] == true) {
 			echo 'If you would like to support ownCloud\'s developers and report this error in our <a href="http://bugs.owncloud.org">Bugtracker</a>, please copy the following informations into the description. <br><br><textarea readonly>';
 			echo 'Message: '  . $_['message'] . "\n";
 			echo 'Error Code: '  . $_['code'] . "\n";
diff --git a/core/templates/layout.base.php b/core/templates/layout.base.php
new file mode 100644
index 0000000000000000000000000000000000000000..c113a4db24e0570e39ec6b8354ae0eb2b1c62f5b
--- /dev/null
+++ b/core/templates/layout.base.php
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<html>
+	<head>
+		<title>ownCloud</title>
+		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+		<link rel="shortcut icon" href="<?php echo image_path('', 'favicon.png'); ?>" /><link rel="apple-touch-icon-precomposed" href="<?php echo image_path('', 'favicon-touch.png'); ?>" />
+		<?php foreach ($_['cssfiles'] as $cssfile): ?>
+			<link rel="stylesheet" href="<?php echo $cssfile; ?>" type="text/css" media="screen" />
+		<?php endforeach; ?>
+		<script type="text/javascript">
+			var oc_webroot = '<?php echo OC::$WEBROOT; ?>';
+			var oc_appswebroots = <?php echo $_['apps_paths'] ?>;
+		</script>
+		<?php foreach ($_['jsfiles'] as $jsfile): ?>
+			<script type="text/javascript" src="<?php echo $jsfile; ?>"></script>
+		<?php endforeach; ?>
+		<?php foreach ($_['headers'] as $header): ?>
+			<?php
+				echo '<'.$header['tag'].' ';
+				foreach ($header['attributes'] as $name => $value) {
+					echo "$name='$value' ";
+				};
+				echo '/>';
+			?>
+		<?php endforeach; ?>
+	</head>
+
+	<body>
+		<?php echo $_['content']; ?>
+	</body>
+</html>
diff --git a/core/templates/layout.guest.php b/core/templates/layout.guest.php
index 4cdbfd16e524bc4adb2a52047efce1bd45b65629..0d2e71c180f24b6f25bfbcb6f18ed7982c157746 100644
--- a/core/templates/layout.guest.php
+++ b/core/templates/layout.guest.php
@@ -4,9 +4,6 @@
 		<title>ownCloud</title>
 		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 		<link rel="shortcut icon" href="<?php echo image_path('', 'favicon.png'); ?>" /><link rel="apple-touch-icon-precomposed" href="<?php echo image_path('', 'favicon-touch.png'); ?>" />
-		<?php if (!empty(OC_Util::$core_styles)): ?>
-		<link rel="stylesheet" href="<?php echo OC_Helper::linkToRemote('core.css', false) ?>" type="text/css" media="screen" />
-		<?php endif ?>
 		<?php foreach($_['cssfiles'] as $cssfile): ?>
 			<link rel="stylesheet" href="<?php echo $cssfile; ?>" type="text/css" media="screen" />
 		<?php endforeach; ?>
@@ -14,9 +11,6 @@
 			var oc_webroot = '<?php echo OC::$WEBROOT; ?>';
 			var oc_appswebroots = <?php echo $_['apps_paths'] ?>;
 		</script>
-		<?php if (!empty(OC_Util::$core_scripts)): ?>
-		<script type="text/javascript" src="<?php echo OC_Helper::linkToRemote('core.js', false) ?>"></script>
-		<?php endif ?>
 		<?php foreach($_['jsfiles'] as $jsfile): ?>
 			<script type="text/javascript" src="<?php echo $jsfile; ?>"></script>
 		<?php endforeach; ?>
@@ -24,7 +18,7 @@
 		<?php foreach($_['headers'] as $header): ?>
 			<?php
 				echo '<'.$header['tag'].' ';
-				foreach($header['attributes'] as $name=>$value){
+				foreach($header['attributes'] as $name=>$value) {
 					echo "$name='$value' ";
 				};
 				echo '/>';
diff --git a/core/templates/layout.user.php b/core/templates/layout.user.php
index 2abe4da8538d0925d5d8bf295e1461692695d93e..4fa0fd01360d7ddec3265dd6e96276d0354c92c6 100644
--- a/core/templates/layout.user.php
+++ b/core/templates/layout.user.php
@@ -4,9 +4,6 @@
 		<title><?php echo isset($_['application']) && !empty($_['application'])?$_['application'].' | ':'' ?>ownCloud <?php echo OC_User::getUser()?' ('.OC_User::getUser().') ':'' ?></title>
 		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 		<link rel="shortcut icon" href="<?php echo image_path('', 'favicon.png'); ?>" /><link rel="apple-touch-icon-precomposed" href="<?php echo image_path('', 'favicon-touch.png'); ?>" />
-		<?php if (!empty(OC_Util::$core_styles)): ?>
-		<link rel="stylesheet" href="<?php echo OC_Helper::linkToRemote('core.css', false) ?>" type="text/css" media="screen" />
-		<?php endif ?>
 		<?php foreach($_['cssfiles'] as $cssfile): ?>
 			<link rel="stylesheet" href="<?php echo $cssfile; ?>" type="text/css" media="screen" />
 		<?php endforeach; ?>
@@ -15,30 +12,23 @@
 			var oc_appswebroots = <?php echo $_['apps_paths'] ?>;
 			var oc_current_user = '<?php echo OC_User::getUser() ?>';
 		</script>
-		<?php if (!empty(OC_Util::$core_scripts)): ?>
-		<script type="text/javascript" src="<?php echo OC_Helper::linkToRemote('core.js', false) ?>"></script>
-		<?php endif ?>
 		<?php foreach($_['jsfiles'] as $jsfile): ?>
 			<script type="text/javascript" src="<?php echo $jsfile; ?>"></script>
 		<?php endforeach; ?>
 		<?php foreach($_['headers'] as $header): ?>
 			<?php
 				echo '<'.$header['tag'].' ';
-				foreach($header['attributes'] as $name=>$value){
+				foreach($header['attributes'] as $name=>$value) {
 					echo "$name='$value' ";
 				};
 				echo '/>';
 			?>
 		<?php endforeach; ?>
 		<script type="text/javascript">
-			$(function() {
-				requesttoken = '<?php echo $_['requesttoken']; ?>';
-				OC.EventSource.requesttoken=requesttoken;
-				$(document).bind('ajaxSend', function(elm, xhr, s){
-					if(requesttoken) {
-						xhr.setRequestHeader('requesttoken', requesttoken);
-					}
-				});
+			requesttoken = '<?php echo $_['requesttoken']; ?>';
+			OC.EventSource.requesttoken=requesttoken;
+			$(document).bind('ajaxSend', function(elm, xhr, s) {
+				xhr.setRequestHeader('requesttoken', requesttoken);
 			});
 		</script>
 	</head>
@@ -48,7 +38,7 @@
 			<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');?>" src="<?php echo image_path('', 'actions/logout.svg'); ?>" /></a>
 			<form class="searchbox header-right" 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 />
+				<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>
 
diff --git a/cron.php b/cron.php
index 83285e8a47cf771930c3f72671596751b24d34ad..f13b284b818d06f504824885798beb16467ccf88 100644
--- a/cron.php
+++ b/cron.php
@@ -26,8 +26,8 @@ class my_temporary_cron_class {
 }
 
 function handleUnexpectedShutdown() {
-	if( !my_temporary_cron_class::$sent ){
-		if( OC::$CLI ){
+	if( !my_temporary_cron_class::$sent ) {
+		if( OC::$CLI ) {
 			echo 'Unexpected error!'.PHP_EOL;
 		}
 		else{
@@ -37,10 +37,10 @@ function handleUnexpectedShutdown() {
 }
 
 $RUNTIME_NOSETUPFS = true;
-require_once('lib/base.php');
+require_once 'lib/base.php';
 
 // Don't do anything if ownCloud has not been installed
-if( !OC_Config::getValue( 'installed', false )){
+if( !OC_Config::getValue( 'installed', false )) {
 	exit( 0 );
 }
 
@@ -49,9 +49,9 @@ register_shutdown_function('handleUnexpectedShutdown');
 
 // Exit if background jobs are disabled!
 $appmode = OC_Appconfig::getValue( 'core', 'backgroundjobs_mode', 'ajax' );
-if( $appmode == 'none' ){
+if( $appmode == 'none' ) {
 	my_temporary_cron_class::$sent = true;
-	if( OC::$CLI ){
+	if( OC::$CLI ) {
 		echo 'Background Jobs are disabled!'.PHP_EOL;
 	}
 	else{
@@ -60,14 +60,14 @@ if( $appmode == 'none' ){
 	exit( 1 );
 }
 
-if( OC::$CLI ){
-	if( $appmode != 'cron' ){
+if( OC::$CLI ) {
+	if( $appmode != 'cron' ) {
 		OC_Appconfig::setValue( 'core', 'backgroundjobs_mode', 'cron' );
 	}
 
 	// check if backgroundjobs is still running
 	$pid = OC_Appconfig::getValue( 'core', 'backgroundjobs_pid', false );
-	if( $pid !== false ){
+	if( $pid !== false ) {
 		// FIXME: check if $pid is still alive (*nix/mswin). if so then exit
 	}
 	// save pid
@@ -77,7 +77,7 @@ if( OC::$CLI ){
 	OC_BackgroundJob_Worker::doAllSteps();
 }
 else{
-	if( $appmode == 'cron' ){
+	if( $appmode == 'cron' ) {
 		OC_JSON::error( array( 'data' => array( 'message' => 'Backgroundjobs are using system cron!')));
 	}
 	else{
diff --git a/db_structure.xml b/db_structure.xml
index d4299e1e8a5513d9d504c3b0d74582882fad69bc..2256dff943cfb840d9a02878e51765870e25693b 100644
--- a/db_structure.xml
+++ b/db_structure.xml
@@ -402,9 +402,8 @@
 
    <field>
     <name>configvalue</name>
-    <type>text</type>
-    <notnull>true</notnull>
-    <length>255</length>
+    <type>clob</type>
+    <notnull>false</notnull>
    </field>
 
   </declaration>
@@ -479,7 +478,7 @@
     <name>share_with</name>
     <type>text</type>
     <default></default>
-    <notnull>true</notnull>
+    <notnull>false</notnull>
     <length>255</length>
    </field>
    
diff --git a/files/webdav.php b/files/webdav.php
index c19c4c6b72f2e4dc0468170553e0431967e10e57..e7292d5a19f0c2e8a85048149323821b0d4633f9 100644
--- a/files/webdav.php
+++ b/files/webdav.php
@@ -25,7 +25,7 @@
 
 // only need filesystem apps
 $RUNTIME_APPTYPES=array('filesystem','authentication');
-require_once('../lib/base.php');
+require_once '../lib/base.php';
 
 // Backends
 $authBackend = new OC_Connector_Sabre_Auth();
@@ -36,10 +36,10 @@ $publicDir = new OC_Connector_Sabre_Directory('');
 
 // Fire up server
 $server = new Sabre_DAV_Server($publicDir);
-$server->setBaseUri(OC::$WEBROOT.'/files/webdav.php');
+$server->setBaseUri(OC::$WEBROOT. '/files/webdav.php');
 
 // Load plugins
-$server->addPlugin(new Sabre_DAV_Auth_Plugin($authBackend,'ownCloud'));
+$server->addPlugin(new Sabre_DAV_Auth_Plugin($authBackend, 'ownCloud'));
 $server->addPlugin(new Sabre_DAV_Locks_Plugin($lockBackend));
 $server->addPlugin(new Sabre_DAV_Browser_Plugin(false)); // Show something in the Browser, but no upload
 
diff --git a/index.php b/index.php
index a972993c19ca85e782d00f3979d382f93b3edee2..12b2d8f406d1d9b7504e036ca3ba72d60e7ff12b 100755
--- a/index.php
+++ b/index.php
@@ -23,6 +23,6 @@
 
 $RUNTIME_NOAPPS = TRUE; //no apps, yet
 
-require_once('lib/base.php');
+require_once 'lib/base.php';
 
 OC::handleRequest();
diff --git a/l10n/af/core.po b/l10n/af/core.po
index 001cac78bccced3c59db820615859799018fbdaa..437c1e26953d87b34ba3dbb12e07b92a6080f489 100644
--- a/l10n/af/core.po
+++ b/l10n/af/core.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Afrikaans (http://www.transifex.com/projects/p/owncloud/language/af/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: af\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -29,59 +29,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -113,7 +109,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr ""
 
@@ -243,7 +239,7 @@ msgstr ""
 msgid "web services under your control"
 msgstr ""
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr ""
 
diff --git a/l10n/af/files.po b/l10n/af/files.po
index b683bb7b55b8dba9fe2f9f62157276b6c9c23b42..6cd6b21cefa6a190499cd923e348752386d218f7 100644
--- a/l10n/af/files.po
+++ b/l10n/af/files.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Afrikaans (http://www.transifex.com/projects/p/owncloud/language/af/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: af\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -51,83 +51,100 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr ""
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -159,6 +176,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr ""
@@ -183,36 +204,36 @@ msgstr ""
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr ""
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr ""
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr ""
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr ""
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr ""
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/af/files_sharing.po b/l10n/af/files_sharing.po
index 7ca711a2521fe4f7360ee317e8bfc133008c46b6..4e3ab5ee4771cf189b311ec6c3f5761342726981 100644
--- a/l10n/af/files_sharing.po
+++ b/l10n/af/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Afrikaans (http://www.transifex.com/projects/p/owncloud/language/af/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: af\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/af/files_versions.po b/l10n/af/files_versions.po
index d7b621cc6f3e20f403c861bda5737fd0e1e36a98..48efcf1e4309c638425f6d16d242b3b8a2570c26 100644
--- a/l10n/af/files_versions.po
+++ b/l10n/af/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Afrikaans (http://www.transifex.com/projects/p/owncloud/language/af/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: af\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/af/lib.po b/l10n/af/lib.po
index a5cbac26247ba5a52618945ab3d70c1dcbab8b7e..a38949f2308af04013a986d6e1e252a3cbd51bbf 100644
--- a/l10n/af/lib.po
+++ b/l10n/af/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Afrikaans (http://www.transifex.com/projects/p/owncloud/language/af/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: af\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/af/settings.po b/l10n/af/settings.po
index 1d213427bcbe9d50f4811e9d7a82684f93a6c69f..b6b7b9e156584a58c32f3f37d07abaf7d4c6d7f3 100644
--- a/l10n/af/settings.po
+++ b/l10n/af/settings.po
@@ -7,20 +7,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Afrikaans (http://www.transifex.com/projects/p/owncloud/language/af/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: af\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -37,14 +50,28 @@ msgstr ""
 msgid "Invalid request"
 msgstr ""
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr ""
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -69,30 +96,85 @@ msgstr ""
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -106,34 +188,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr ""
-
-#: templates/apps.php:30
-msgid "by"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
 msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr ""
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr ""
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr ""
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr ""
 
diff --git a/l10n/af/user_ldap.po b/l10n/af/user_ldap.po
index 7abe79a5a8a2767467a2e71f742fdfdf252aa868..37f2c1ae38c509e6cebbc812085b13f055798c6e 100644
--- a/l10n/af/user_ldap.po
+++ b/l10n/af/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Afrikaans (http://www.transifex.com/projects/p/owncloud/language/af/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/ar/core.po b/l10n/ar/core.po
index 0ec803f64e699c6156cdcc59160c2257c8c4273b..febb0d7a63746abc0250f21405ddbca2b1cf90a5 100644
--- a/l10n/ar/core.po
+++ b/l10n/ar/core.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -30,59 +30,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "تعديلات"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -114,7 +110,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "استخدم هذه الوصلة لاسترجاع كلمة السر: {link}"
 
@@ -244,7 +240,7 @@ msgstr "انهاء التعديلات"
 msgid "web services under your control"
 msgstr "خدمات الوب تحت تصرفك"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "الخروج"
 
diff --git a/l10n/ar/files.po b/l10n/ar/files.po
index 36056ab59eeacbf6cd2e9cfecd69e3f873b8cf35..7221caf070d40d7c38233fa5b0584c9d5f10bc3f 100644
--- a/l10n/ar/files.po
+++ b/l10n/ar/files.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -52,83 +52,100 @@ msgstr ""
 msgid "Files"
 msgstr "الملفات"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "محذوف"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "حجم"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "معدل"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -160,6 +177,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "جديد"
@@ -184,36 +205,36 @@ msgstr "إرفع"
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "لا يوجد شيء هنا. إرفع بعض الملفات!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "الاسم"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "تحميل"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "حجم الترفيع أعلى من المسموح"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "حجم الملفات التي تريد ترفيعها أعلى من المسموح على الخادم."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/ar/files_sharing.po b/l10n/ar/files_sharing.po
index f3922ed92a3486f14f029b271ed0fa237668ecb5..6aeb9ddf0e5c4b2020f8bfde3fa0ef9c43051b21 100644
--- a/l10n/ar/files_sharing.po
+++ b/l10n/ar/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Arabic (http://www.transifex.com/projects/p/owncloud/language/ar/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ 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"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/ar/files_versions.po b/l10n/ar/files_versions.po
index de2471bc46e0730eccb21802cff42452e71054ef..ab6c4493898999ea0c8838016bb4d73c8f879862 100644
--- a/l10n/ar/files_versions.po
+++ b/l10n/ar/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ 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"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/ar/lib.po b/l10n/ar/lib.po
index 36dea95d34605d90047105e51518ae531ed97546..562af94ac63701e384854036de1851b87ec64695 100644
--- a/l10n/ar/lib.po
+++ b/l10n/ar/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ 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"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/ar/settings.po b/l10n/ar/settings.po
index 0f13d4ebb2a9340bc1f86c9a250f04f357cfe302..ece25b8fda82948d2626179e2820495a0bd6652d 100644
--- a/l10n/ar/settings.po
+++ b/l10n/ar/settings.po
@@ -9,20 +9,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -39,14 +52,28 @@ msgstr "تم تغيير ال OpenID"
 msgid "Invalid request"
 msgstr "طلبك غير مفهوم"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "تم تغيير اللغة"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -71,30 +98,85 @@ msgstr "__language_name__"
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -108,34 +190,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-مسجل"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "من قبل"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "إسأل سؤال"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "الاتصال بقاعدة بيانات المساعدة لم يتم بنجاح"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "إذهب هنالك بنفسك"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "الجواب"
 
diff --git a/l10n/ar/user_ldap.po b/l10n/ar/user_ldap.po
index fc345689568c39bace7da0e3984038f900ecc4e2..51ea5c8216f6ec6eb263f240d3390339a2073a0d 100644
--- a/l10n/ar/user_ldap.po
+++ b/l10n/ar/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/ar_SA/core.po b/l10n/ar_SA/core.po
index 5878f907926cf9ed16b8f7a23532a4fadb6809e7..c251db4e5304b67eec277fed23feaa1e69f2f2eb 100644
--- a/l10n/ar_SA/core.po
+++ b/l10n/ar_SA/core.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Arabic (Saudi Arabia) (http://www.transifex.com/projects/p/owncloud/language/ar_SA/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: ar_SA\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -29,59 +29,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -113,7 +109,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr ""
 
@@ -243,7 +239,7 @@ msgstr ""
 msgid "web services under your control"
 msgstr ""
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr ""
 
diff --git a/l10n/ar_SA/files.po b/l10n/ar_SA/files.po
index 1e89550f0eba8bc8b77963c1bff0f0dd0cf84f5d..8651ddd072e4e8441a5b55fe5040c2230f8f3cdd 100644
--- a/l10n/ar_SA/files.po
+++ b/l10n/ar_SA/files.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Arabic (Saudi Arabia) (http://www.transifex.com/projects/p/owncloud/language/ar_SA/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: ar_SA\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -51,83 +51,100 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr ""
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -159,6 +176,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr ""
@@ -183,36 +204,36 @@ msgstr ""
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr ""
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr ""
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr ""
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr ""
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr ""
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/ar_SA/files_sharing.po b/l10n/ar_SA/files_sharing.po
index c2408734072bbd003a2fdb76556376a45c51644e..b0c8fb706a30426bd365ea7af58716d0888539dc 100644
--- a/l10n/ar_SA/files_sharing.po
+++ b/l10n/ar_SA/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Arabic (Saudi Arabia) (http://www.transifex.com/projects/p/owncloud/language/ar_SA/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: ar_SA\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/ar_SA/files_versions.po b/l10n/ar_SA/files_versions.po
index 0b3630c5046dc5099546e438205bde78dd4e01f4..9596994e8a8829683ec1c7d227e6cbf8f6db5d4f 100644
--- a/l10n/ar_SA/files_versions.po
+++ b/l10n/ar_SA/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Arabic (Saudi Arabia) (http://www.transifex.com/projects/p/owncloud/language/ar_SA/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: ar_SA\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/ar_SA/lib.po b/l10n/ar_SA/lib.po
index 1d1cba42b76f8c6e5e6cb16aafcec36556ceb00e..9b889a6e7100d396d00c7f3f61db0c54207b7ff8 100644
--- a/l10n/ar_SA/lib.po
+++ b/l10n/ar_SA/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Arabic (Saudi Arabia) (http://www.transifex.com/projects/p/owncloud/language/ar_SA/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: ar_SA\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/ar_SA/settings.po b/l10n/ar_SA/settings.po
index 803e9d5953d61446693294c4d0863b2159507f08..22e19d517dbecdbecd553075267eca3d772ad08a 100644
--- a/l10n/ar_SA/settings.po
+++ b/l10n/ar_SA/settings.po
@@ -7,20 +7,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Arabic (Saudi Arabia) (http://www.transifex.com/projects/p/owncloud/language/ar_SA/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: ar_SA\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -37,14 +50,28 @@ msgstr ""
 msgid "Invalid request"
 msgstr ""
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr ""
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -69,30 +96,85 @@ msgstr ""
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -106,34 +188,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr ""
-
-#: templates/apps.php:30
-msgid "by"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
 msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr ""
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr ""
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr ""
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr ""
 
diff --git a/l10n/ar_SA/user_ldap.po b/l10n/ar_SA/user_ldap.po
index 92a90a4f3b06033c5b666fe8f6e5b74fa99f7f94..2345855a173885966a78cab88da69a350789b2c5 100644
--- a/l10n/ar_SA/user_ldap.po
+++ b/l10n/ar_SA/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Arabic (Saudi Arabia) (http://www.transifex.com/projects/p/owncloud/language/ar_SA/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/bg_BG/core.po b/l10n/bg_BG/core.po
index 02fa44cb786e4ecf4ff77c2277d2f8ebb3bb5830..681b5dd14b60cb5d17f125ec55d75015070949e0 100644
--- a/l10n/bg_BG/core.po
+++ b/l10n/bg_BG/core.po
@@ -11,15 +11,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:01+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -33,59 +33,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr "Категорията вече съществува:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Настройки"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Януари"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Февруари"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Март"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Април"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Май"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Юни"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Юли"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Август"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Септември"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Октомври"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Ноември"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Декември"
 
@@ -117,7 +113,7 @@ msgstr "Грешка"
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr ""
 
@@ -247,7 +243,7 @@ msgstr "Завършване на настройките"
 msgid "web services under your control"
 msgstr ""
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Изход"
 
diff --git a/l10n/bg_BG/files.po b/l10n/bg_BG/files.po
index d016c1a31f4b3056125e438a24bdb6fe62f6f61a..f1667a2327f5d3d765a50eca91b169a6cf9285fb 100644
--- a/l10n/bg_BG/files.po
+++ b/l10n/bg_BG/files.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +53,100 @@ msgstr "Грешка при запис на диска"
 msgid "Files"
 msgstr "Файлове"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Изтриване"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Грешка при качване"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Качването е отменено."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Неправилно име – \"/\" не е позволено."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Размер"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Променено"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "папка"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "папки"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "файл"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -161,6 +178,10 @@ msgstr "0 означава без ограничение"
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Нов"
@@ -185,36 +206,36 @@ msgstr "Качване"
 msgid "Cancel upload"
 msgstr "Отказване на качването"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Няма нищо, качете нещо!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Име"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Споделяне"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Изтегляне"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Файлът е прекалено голям"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "Файловете които се опитвате да качите са по-големи от позволеното за сървъра."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Файловете се претърсват, изчакайте."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/bg_BG/files_sharing.po b/l10n/bg_BG/files_sharing.po
index f03989ba48d3cd20f62c9059d5c0b30d6ae06fe2..fa2d7899a7d02f4b3e9875fe67da4be0cce2cfaf 100644
--- a/l10n/bg_BG/files_sharing.po
+++ b/l10n/bg_BG/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Bulgarian (Bulgaria) (http://www.transifex.com/projects/p/owncloud/language/bg_BG/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: bg_BG\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/bg_BG/files_versions.po b/l10n/bg_BG/files_versions.po
index 40a5fc5e9bf5b640d7da9a16e27e507fffb7fb1e..bc5aaca01cc774d57adbdac0062c20bb886f0dd2 100644
--- a/l10n/bg_BG/files_versions.po
+++ b/l10n/bg_BG/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: bg_BG\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/bg_BG/lib.po b/l10n/bg_BG/lib.po
index 04f21db7de61f76bc85eb57db83c40572340004d..f6ce9e2d63830dc386dd566352a324a175522ea9 100644
--- a/l10n/bg_BG/lib.po
+++ b/l10n/bg_BG/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: bg_BG\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/bg_BG/settings.po b/l10n/bg_BG/settings.po
index e7697bb27ee20c688b154c08f3450712b6f33cbd..fc6de0ffaac6a5fcc41ff9d0881751e4da4145f1 100644
--- a/l10n/bg_BG/settings.po
+++ b/l10n/bg_BG/settings.po
@@ -10,20 +10,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Е-пощата е записана"
@@ -40,14 +53,28 @@ msgstr "OpenID е сменено"
 msgid "Invalid request"
 msgstr "Невалидна заявка"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Езика е сменен"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -72,30 +99,85 @@ msgstr ""
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -109,34 +191,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-лицензирано"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "от"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Документация"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Задайте въпрос"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Проблеми при свързване с помощната база"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Отидете ръчно."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Отговор"
 
diff --git a/l10n/bg_BG/user_ldap.po b/l10n/bg_BG/user_ldap.po
index 8b8f5723ceded983b45db2b51a6846bb603f9eed..23f9ad3829be98400b20554ec83e11b62ecae3c2 100644
--- a/l10n/bg_BG/user_ldap.po
+++ b/l10n/bg_BG/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/ca/core.po b/l10n/ca/core.po
index e8b808d6af7915181038d186ae7f73753b06e57f..6366450bdd344785bbf5fc90d88712ca88f2366f 100644
--- a/l10n/ca/core.po
+++ b/l10n/ca/core.po
@@ -4,20 +4,20 @@
 # 
 # Translators:
 #   <joan@montane.cat>, 2012.
-#   <rcalvoi@yahoo.com>, 2011, 2012.
+#   <rcalvoi@yahoo.com>, 2011-2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -31,59 +31,55 @@ msgstr "No voleu afegir cap categoria?"
 msgid "This category already exists: "
 msgstr "Aquesta categoria ja existeix:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Arranjament"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Gener"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Febrer"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Març"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Abril"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Maig"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Juny"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Juliol"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Agost"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Setembre"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Octubre"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Novembre"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Desembre"
 
@@ -115,7 +111,7 @@ msgstr "Error"
 msgid "ownCloud password reset"
 msgstr "estableix de nou la contrasenya Owncloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Useu l'enllaç següent per restablir la contrasenya: {link}"
 
@@ -231,7 +227,7 @@ msgstr "Nom de la base de dades"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Espai de taula de la base de dades"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -245,7 +241,7 @@ msgstr "Acaba la configuració"
 msgid "web services under your control"
 msgstr "controleu els vostres serveis web"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Surt"
 
diff --git a/l10n/ca/files.po b/l10n/ca/files.po
index aa8f41dca0ad4ce6dffd70e44ac32627ad3beeb2..09799489c82340179f2dd187383ae492cec72eef 100644
--- a/l10n/ca/files.po
+++ b/l10n/ca/files.po
@@ -3,21 +3,22 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <bury1000@gmail.com>, 2012.
 #   <joan@montane.cat>, 2012.
-#   <rcalvoi@yahoo.com>, 2011, 2012.
+#   <rcalvoi@yahoo.com>, 2011-2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-11 02:02+0200\n"
+"PO-Revision-Date: 2012-09-10 07:25+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: ca\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +54,100 @@ msgstr "Ha fallat en escriure al disc"
 msgid "Files"
 msgstr "Fitxers"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Deixa de compartir"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Suprimeix"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "ja existeix"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "substitueix"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "sugereix un nom"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "cancel·la"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "substituït"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "desfés"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "per"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "desfés"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "No compartits"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "esborrat"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "s'estan generant fitxers ZIP, pot trigar una estona."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Error en la pujada"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Pendents"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "La pujada s'ha cancel·lat."
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "El nom no és vàlid, no es permet '/'."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Mida"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Modificat"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "carpeta"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "carpetes"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "fitxer"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "fitxers"
 
@@ -161,6 +179,10 @@ msgstr "0 és sense límit"
 msgid "Maximum input size for ZIP files"
 msgstr "Mida màxima d'entrada per fitxers ZIP"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Desa"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nou"
@@ -185,36 +207,36 @@ msgstr "Puja"
 msgid "Cancel upload"
 msgstr "Cancel·la la pujada"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Res per aquí. Pugeu alguna cosa!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nom"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Comparteix"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Baixa"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "La pujada és massa gran"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "S'estan escanejant els fitxers, espereu"
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Actualment escanejant"
diff --git a/l10n/ca/files_sharing.po b/l10n/ca/files_sharing.po
index bc5fa18cf293e7fe1e418d28f9ce07da29475f1d..2424e26a3c576aacbdf61425960096e071cccd40 100644
--- a/l10n/ca/files_sharing.po
+++ b/l10n/ca/files_sharing.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-08-31 11:34+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"
@@ -18,18 +18,22 @@ msgstr ""
 "Language: ca\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Mida"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Contrasenya"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Modificat"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Envia"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Esborra-ho tot"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Baixa"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Elimina"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "No hi ha vista prèvia disponible per a"
+
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr "controleu els vostres serveis web"
diff --git a/l10n/ca/files_versions.po b/l10n/ca/files_versions.po
index d0555a50f1235cb6e26a60871c6f295a8e6b7893..12b6059c7b608679f00bd4f8319d9024738450b3 100644
--- a/l10n/ca/files_versions.po
+++ b/l10n/ca/files_versions.po
@@ -8,20 +8,28 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-13 18:18+0000\n"
+"POT-Creation-Date: 2012-09-04 02:01+0200\n"
+"PO-Revision-Date: 2012-09-03 10:13+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: ca\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Expira totes les versions"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Versions"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Això eliminarà totes les versions de còpia de seguretat dels vostres fitxers"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Habilita les versions de fitxers"
diff --git a/l10n/ca/lib.po b/l10n/ca/lib.po
index 397969d686a6cc04aedaae40de4ec8b70c6aff46..e43b91310b549121789c699b0d61142ad0af8983 100644
--- a/l10n/ca/lib.po
+++ b/l10n/ca/lib.po
@@ -8,53 +8,53 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-29 02:04+0200\n"
-"PO-Revision-Date: 2012-07-28 13:42+0000\n"
+"POT-Creation-Date: 2012-09-04 02:01+0200\n"
+"PO-Revision-Date: 2012-09-03 10:11+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: ca\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr "Ajuda"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr "Personal"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr "Configuració"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr "Usuaris"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr "Aplicacions"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr "Administració"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "La baixada en ZIP està desactivada."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Els fitxers s'han de baixar d'un en un."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Torna a Fitxers"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "Els fitxers seleccionats son massa grans per generar un fitxer zip."
 
@@ -70,44 +70,57 @@ msgstr "Error d'autenticació"
 msgid "Token expired. Please reload page."
 msgstr "El testimoni ha expirat. Torneu a carregar la pàgina."
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
 msgstr "segons enrere"
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
 msgstr "fa 1 minut"
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
 msgstr "fa %d minuts"
 
-#: template.php:91
+#: template.php:92
 msgid "today"
 msgstr "avui"
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
 msgstr "ahir"
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
 msgstr "fa %d dies"
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
 msgstr "el mes passat"
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
 msgstr "mesos enrere"
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
 msgstr "l'any passat"
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
 msgstr "fa anys"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s està disponible. Obtén <a href=\"%s\">més informació</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "actualitzat"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "la comprovació d'actualitzacions està desactivada"
diff --git a/l10n/ca/settings.po b/l10n/ca/settings.po
index dfacbada2c87c1c0c1d76c552f0b76216072fb66..8065c1ebeec2c5b4e888e722182a795643481545 100644
--- a/l10n/ca/settings.po
+++ b/l10n/ca/settings.po
@@ -3,26 +3,40 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <bury1000@gmail.com>, 2012.
 #   <joan@montane.cat>, 2012.
-#   <rcalvoi@yahoo.com>, 2011, 2012.
+#   <rcalvoi@yahoo.com>, 2011-2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-20 07:27+0000\n"
+"POT-Creation-Date: 2012-09-07 02:04+0200\n"
+"PO-Revision-Date: 2012-09-06 06:39+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: ca\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "No s'ha pogut carregar la llista des de l'App Store"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Error d'autenticació"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "El grup ja existeix"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "No es pot afegir el grup"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "S'ha desat el correu electrònic"
@@ -39,14 +53,28 @@ msgstr "OpenID ha canviat"
 msgid "Invalid request"
 msgstr "Sol.licitud no vàlida"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Error d'autenticació"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "No es pot eliminar el grup"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "No es pot eliminar l'usuari"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "S'ha canviat l'idioma"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "No es pot afegir l'usuari al grup %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "No es pot eliminar l'usuari del grup %s"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Error"
@@ -71,30 +99,85 @@ msgstr "Català"
 msgid "Security Warning"
 msgstr "Avís de seguretat"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "La carpeta de dades i els vostres fitxersprobablement són accessibles des d'Internet. La fitxer .htaccess que ownCloud proporciona no funciona. Us recomanem que configureu el servidor web de tal manera que la carpeta de dades no sigui accessible o que moveu la carpeta de dades fora de l'arrel de documents del servidor web."
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "executa una tasca en carregar cada pàgina"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php està registrat en un servei web cron"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "usa el servei cron del sistema"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "API de compartir"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Activa l'API de compartir"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Permet que les aplicacions usin l'API de compartir"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Permet enllaços"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Permet als usuaris compartir elements amb el públic amb enllaços"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Permet compartir de nou"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Permet als usuaris comparir elements ja compartits amb ells"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Permet als usuaris compartir amb qualsevol"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Permet als usuaris compartir només amb usuaris del seu grup"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Registre"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Més"
 
+#: templates/admin.php:105
+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 "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>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Afegiu la vostra aplicació"
@@ -108,34 +191,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Mireu la pàgina d'aplicacions a apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "- amb llicència"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "de"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-propietat de <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Documentació"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Gestió de fitxers grans"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Feu una pregunta"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problemes per connectar amb la base de dades d'ajuda."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Vés-hi manualment."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Resposta"
 
@@ -145,7 +224,7 @@ msgstr "Esteu usant"
 
 #: templates/personal.php:8
 msgid "of the available"
-msgstr "del disponible"
+msgstr "d'un total disponible de"
 
 #: templates/personal.php:12
 msgid "Desktop and Mobile Syncing Clients"
diff --git a/l10n/ca/user_ldap.po b/l10n/ca/user_ldap.po
index 9261cd06e5bfcd2e44090d25ee6e357f1f6698c1..78f5bcc2ccd636250163965de4495b1c3847b928 100644
--- a/l10n/ca/user_ldap.po
+++ b/l10n/ca/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: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-13 18:54+0000\n"
+"POT-Creation-Date: 2012-08-30 02:02+0200\n"
+"PO-Revision-Date: 2012-08-29 13:55+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"
@@ -160,6 +160,12 @@ msgstr "en bytes"
 msgid "in seconds. A change empties the cache."
 msgstr "en segons. Un canvi buidarà la memòria de cau."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+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:32
 msgid "Help"
 msgstr "Ajuda"
diff --git a/l10n/cs_CZ/core.po b/l10n/cs_CZ/core.po
index 84cea7fb08de2b33787bd3cddef405b688d1d3e8..c1d1ba2da0761baf9dc365a3a0e1a9160b2471ed 100644
--- a/l10n/cs_CZ/core.po
+++ b/l10n/cs_CZ/core.po
@@ -4,25 +4,26 @@
 # 
 # Translators:
 # Jan Krejci <krejca85@gmail.com>, 2011.
-# Martin  <fireball@atlas.cz>, 2011, 2012.
+# Martin  <fireball@atlas.cz>, 2011-2012.
 # Michal Hrušecký <Michal@hrusecky.net>, 2012.
+# Tomáš Chvátal <tomas.chvatal@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
-msgstr "Jméno aplikace nezadáno."
+msgstr "Nezadán název aplikace."
 
 #: ajax/vcategories/add.php:29
 msgid "No category to add?"
@@ -30,61 +31,57 @@ msgstr "Žádná kategorie k přidání?"
 
 #: ajax/vcategories/add.php:36
 msgid "This category already exists: "
-msgstr "Tato kategorie již existuje:"
+msgstr "Tato kategorie již existuje: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Nastavení"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Leden"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Únor"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Březen"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Duben"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Květen"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Červen"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Červenec"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Srpen"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Září"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Říjen"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Listopad"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Prosinec"
 
@@ -102,7 +99,7 @@ msgstr "Ano"
 
 #: js/oc-dialogs.js:177
 msgid "Ok"
-msgstr "Budiž"
+msgstr "Ok"
 
 #: js/oc-vcategories.js:68
 msgid "No categories selected for deletion."
@@ -114,15 +111,15 @@ msgstr "Chyba"
 
 #: lostpassword/index.php:26
 msgid "ownCloud password reset"
-msgstr "Reset hesla pro ownCloud"
+msgstr "Obnovení hesla pro ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
-msgstr "Heslo vyresetujete použitím následujícího odkazu: {link}"
+msgstr "Heslo obnovíte použitím následujícího odkazu: {link}"
 
 #: lostpassword/templates/lostpassword.php:3
 msgid "You will receive a link to reset your password via Email."
-msgstr "Bude Vám zaslán odkaz pro obnovu hesla"
+msgstr "Bude Vám e-mailem zaslán odkaz pro obnovu hesla."
 
 #: lostpassword/templates/lostpassword.php:5
 msgid "Requested"
@@ -130,7 +127,7 @@ msgstr "Požadováno"
 
 #: lostpassword/templates/lostpassword.php:8
 msgid "Login failed!"
-msgstr "Přihlášení selhalo"
+msgstr "Přihlášení selhalo."
 
 #: lostpassword/templates/lostpassword.php:11 templates/installation.php:26
 #: templates/login.php:9
@@ -171,7 +168,7 @@ msgstr "Aplikace"
 
 #: strings.php:8
 msgid "Admin"
-msgstr "Admin"
+msgstr "Administrace"
 
 #: strings.php:9
 msgid "Help"
@@ -179,7 +176,7 @@ msgstr "Nápověda"
 
 #: templates/403.php:12
 msgid "Access forbidden"
-msgstr "Přístup odmítnut"
+msgstr "Přístup zakázán"
 
 #: templates/404.php:12
 msgid "Cloud not found"
@@ -203,15 +200,15 @@ msgstr "Heslo"
 
 #: templates/installation.php:36
 msgid "Advanced"
-msgstr "Rozšířené volby"
+msgstr "Pokročilé"
 
 #: templates/installation.php:38
 msgid "Data folder"
-msgstr "Datový adresář"
+msgstr "Složka s daty"
 
 #: templates/installation.php:45
 msgid "Configure the database"
-msgstr "Konfigurace databáze"
+msgstr "Nastavit databázi"
 
 #: templates/installation.php:50 templates/installation.php:61
 #: templates/installation.php:71 templates/installation.php:81
@@ -224,7 +221,7 @@ msgstr "Uživatel databáze"
 
 #: templates/installation.php:97
 msgid "Database password"
-msgstr "Heslo k databázi"
+msgstr "Heslo databáze"
 
 #: templates/installation.php:101
 msgid "Database name"
@@ -232,7 +229,7 @@ msgstr "Název databáze"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Tabulkový prostor databáze"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -240,19 +237,19 @@ msgstr "Hostitel databáze"
 
 #: templates/installation.php:120
 msgid "Finish setup"
-msgstr "Dokončit instalaci"
+msgstr "Dokončit nastavení"
 
 #: templates/layout.guest.php:42
 msgid "web services under your control"
 msgstr "webové služby pod Vaší kontrolou"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Odhlásit se"
 
 #: templates/login.php:6
 msgid "Lost your password?"
-msgstr "Zapomenuté heslo?"
+msgstr "Ztratili jste své heslo?"
 
 #: templates/login.php:17
 msgid "remember"
@@ -260,7 +257,7 @@ msgstr "zapamatovat si"
 
 #: templates/login.php:18
 msgid "Log in"
-msgstr "Login"
+msgstr "Přihlásit"
 
 #: templates/logout.php:1
 msgid "You are logged out."
@@ -268,8 +265,8 @@ msgstr "Jste odhlášeni."
 
 #: templates/part.pagenavi.php:3
 msgid "prev"
-msgstr "zpět"
+msgstr "předchozí"
 
 #: templates/part.pagenavi.php:20
 msgid "next"
-msgstr "vpřed"
+msgstr "následující"
diff --git a/l10n/cs_CZ/files.po b/l10n/cs_CZ/files.po
index 77f16b10d6701199054852969c3118fd4b48f80e..8da1d5687eb235efd0fe475258b9da01ba8c63db 100644
--- a/l10n/cs_CZ/files.po
+++ b/l10n/cs_CZ/files.po
@@ -3,21 +3,22 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# Martin  <fireball@atlas.cz>, 2011, 2012.
+# Martin  <fireball@atlas.cz>, 2011-2012.
 # Michal Hrušecký <Michal@hrusecky.net>, 2012.
+# Tomáš Chvátal <tomas.chvatal@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-10 02:02+0200\n"
+"PO-Revision-Date: 2012-09-09 10:25+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: cs_CZ\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -25,13 +26,13 @@ msgstr "Soubor byl odeslán úspěšně"
 
 #: ajax/upload.php:21
 msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini"
-msgstr "Odeslaný soubor přesáhl velikostí parametr upload_max_filesize v php.ini"
+msgstr "Odeslaný soubor přesáhl svou velikostí parametr upload_max_filesize v php.ini"
 
 #: ajax/upload.php:22
 msgid ""
 "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
 "the HTML form"
-msgstr "Odeslaný soubor přesáhl velikostí parametr MAX_FILE_SIZE specifikovaný v HTML formuláři"
+msgstr "Odeslaný soubor přesáhl svou velikostí parametr MAX_FILE_SIZE specifikovaný v formuláři HTML"
 
 #: ajax/upload.php:23
 msgid "The uploaded file was only partially uploaded"
@@ -39,115 +40,132 @@ msgstr "Soubor byl odeslán pouze částečně"
 
 #: ajax/upload.php:24
 msgid "No file was uploaded"
-msgstr "Soubor nebyl odeslán"
+msgstr "Žádný soubor nebyl odeslán"
 
 #: ajax/upload.php:25
 msgid "Missing a temporary folder"
-msgstr "Chybí adresář pro sočasné soubory"
+msgstr "Chybí adresář pro dočasné soubory"
 
 #: ajax/upload.php:26
 msgid "Failed to write to disk"
-msgstr "Zápis na disk se nezdařil"
+msgstr "Zápis na disk selhal"
 
 #: appinfo/app.php:6
 msgid "Files"
 msgstr "Soubory"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Zrušit sdílení"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
-msgstr "Vymazat"
+msgstr "Smazat"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "již existuje"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
-msgstr "zaměnit"
+msgstr "nahradit"
+
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "navrhnout název"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
-msgstr "storno"
+msgstr "zrušit"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
-msgstr "zaměněno"
+msgstr "nahrazeno"
+
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "zpět"
 
-#: js/filelist.js:195
+#: js/filelist.js:237
 msgid "with"
 msgstr "s"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "zpět"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "sdílení zrušeno"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "smazáno"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
-msgstr "generuji ZIP soubor, může to chvíli trvat"
+msgstr "generuji ZIP soubor, může to nějakou dobu trvat."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
-msgstr "Nemohu nahrát váš soubor neboť to je adresář a nebo má nulovou délku."
+msgstr "Nelze odeslat Váš soubor, protože je to adresář nebo má velikost 0 bajtů"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
-msgstr "Chyba při nahrávání"
+msgstr "Chyba odesílání"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
-msgstr "Očekává se"
+msgstr "Čekající"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
-msgstr "Nahrávání zrušeno"
+msgstr "Odesílání zrušeno."
+
+#: js/files.js:423
+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:457
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
-msgstr "Špatné jméno, znak '/' není povolen"
+msgstr "Neplatný název, znak '/' není povolen"
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Velikost"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Změněno"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
-msgstr "adresář"
+msgstr "složka"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
-msgstr "adresáře"
+msgstr "složky"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "soubor"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "soubory"
 
 #: templates/admin.php:5
 msgid "File handling"
-msgstr "Nastavení chování k souborům"
+msgstr "Zacházení se soubory"
 
 #: templates/admin.php:7
 msgid "Maximum upload size"
-msgstr "Maximální velikost ukládaných souborů"
+msgstr "Maximální velikost pro odesílání"
 
 #: templates/admin.php:7
 msgid "max. possible: "
-msgstr "největší možná:"
+msgstr "největší možná: "
 
 #: templates/admin.php:9
 msgid "Needed for multi-file and folder downloads."
-msgstr "Potřeba pro vícesoborvé stahování a stahování adresářů"
+msgstr "Potřebné pro více-souborové stahování a stahování složek."
 
 #: templates/admin.php:9
 msgid "Enable ZIP-download"
@@ -161,6 +179,10 @@ msgstr "0 znamená bez omezení"
 msgid "Maximum input size for ZIP files"
 msgstr "Maximální velikost vstupu pro ZIP soubory"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Uložit"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nový"
@@ -171,7 +193,7 @@ msgstr "Textový soubor"
 
 #: templates/index.php:10
 msgid "Folder"
-msgstr "Adresář"
+msgstr "Složka"
 
 #: templates/index.php:11
 msgid "From url"
@@ -179,42 +201,42 @@ msgstr "Z url"
 
 #: templates/index.php:21
 msgid "Upload"
-msgstr "Uložit"
+msgstr "Odeslat"
 
 #: templates/index.php:27
 msgid "Cancel upload"
-msgstr "Zrušit upload"
+msgstr "Zrušit odesílání"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
-msgstr "Žádný obsah. Uložte si něco!"
+msgstr "Žádný obsah. Nahrajte něco."
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Název"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Sdílet"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Stáhnout"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
-msgstr "Příliš velký soubor"
+msgstr "Odeslaný soubor je příliš velký"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
-msgstr "Soubory, které se snažíte uložit, překračují maximální velikosti uploadu na tomto serveru."
+msgstr "Soubory, které se snažíte odeslat, překračují limit velikosti odesílání na tomto serveru."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Soubory se prohledávají, prosím čekejte."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Aktuální prohledávání"
diff --git a/l10n/cs_CZ/files_encryption.po b/l10n/cs_CZ/files_encryption.po
index 4055cc18fccbca3c56e678779816f328425136d7..96298cc22053a7baa9a8490efda9d1d72d057fdf 100644
--- a/l10n/cs_CZ/files_encryption.po
+++ b/l10n/cs_CZ/files_encryption.po
@@ -4,32 +4,33 @@
 # 
 # Translators:
 # Martin  <fireball@atlas.cz>, 2012.
+# Tomáš Chvátal <tomas.chvatal@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-16 02:04+0200\n"
-"PO-Revision-Date: 2012-08-15 10:33+0000\n"
-"Last-Translator: Martin <fireball@atlas.cz>\n"
+"POT-Creation-Date: 2012-09-06 02:01+0200\n"
+"PO-Revision-Date: 2012-09-05 13:37+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: cs_CZ\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
 #: templates/settings.php:3
 msgid "Encryption"
-msgstr "Kryptování"
+msgstr "Šifrování"
 
 #: templates/settings.php:4
 msgid "Exclude the following file types from encryption"
-msgstr "Při kryptování vynechat následující typy souborů"
+msgstr "Při šifrování vynechat následující typy souborů"
 
 #: templates/settings.php:5
 msgid "None"
-msgstr "Žádný"
+msgstr "Žádné"
 
 #: templates/settings.php:10
 msgid "Enable Encryption"
-msgstr "Povolit kryptování"
+msgstr "Povolit šifrování"
diff --git a/l10n/cs_CZ/files_external.po b/l10n/cs_CZ/files_external.po
index 1c175fb4db6c75578fcfa593d5a7e14c0f369324..90f40c4ffc706d292145562434d686f8ed16f0c7 100644
--- a/l10n/cs_CZ/files_external.po
+++ b/l10n/cs_CZ/files_external.po
@@ -4,20 +4,22 @@
 # 
 # Translators:
 # Jan Krejci <krejca85@gmail.com>, 2012.
+# Martin  <fireball@atlas.cz>, 2012.
 # Michal Hrušecký <Michal@hrusecky.net>, 2012.
+# Tomáš Chvátal <tomas.chvatal@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 23:53+0000\n"
-"Last-Translator: Jan Krejci <krejca85@gmail.com>\n"
+"POT-Creation-Date: 2012-09-06 02:01+0200\n"
+"PO-Revision-Date: 2012-09-05 13:37+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: cs_CZ\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
 #: templates/settings.php:3
 msgid "External Storage"
@@ -29,27 +31,27 @@ msgstr "Přípojný bod"
 
 #: templates/settings.php:8
 msgid "Backend"
-msgstr ""
+msgstr "Podpůrná vrstva"
 
 #: templates/settings.php:9
 msgid "Configuration"
-msgstr "Konfigurace"
+msgstr "Nastavení"
 
 #: templates/settings.php:10
 msgid "Options"
-msgstr "Nastavení"
+msgstr "Možnosti"
 
 #: templates/settings.php:11
 msgid "Applicable"
-msgstr ""
+msgstr "Platný"
 
 #: templates/settings.php:23
 msgid "Add mount point"
-msgstr "Přidat přípojný bod"
+msgstr "Přidat bod připojení"
 
 #: templates/settings.php:54 templates/settings.php:62
 msgid "None set"
-msgstr ""
+msgstr "Nenastaveno"
 
 #: templates/settings.php:63
 msgid "All Users"
@@ -69,16 +71,16 @@ msgstr "Smazat"
 
 #: templates/settings.php:88
 msgid "SSL root certificates"
-msgstr ""
+msgstr "Kořenové certifikáty SSL"
 
 #: templates/settings.php:102
 msgid "Import Root Certificate"
-msgstr ""
+msgstr "Importovat kořenového certifikátu"
 
 #: templates/settings.php:108
 msgid "Enable User External Storage"
-msgstr "Zapnout uživatelské externí úložiště"
+msgstr "Zapnout externí uživatelské úložiště"
 
 #: templates/settings.php:109
 msgid "Allow users to mount their own external storage"
-msgstr "Povolit uživatelů připojit jejich vlastní externí úložiště"
+msgstr "Povolit uživatelům připojení jejich vlastních externích úložišť"
diff --git a/l10n/cs_CZ/files_sharing.po b/l10n/cs_CZ/files_sharing.po
index 232114a8e63c60cc26a20f90cfcdc7e91d722723..d4c56e763568a9cbfdca338c517391978124220d 100644
--- a/l10n/cs_CZ/files_sharing.po
+++ b/l10n/cs_CZ/files_sharing.po
@@ -5,32 +5,37 @@
 # Translators:
 # Martin  <fireball@atlas.cz>, 2012.
 # Michal Hrušecký <Michal@hrusecky.net>, 2012.
+# Tomáš Chvátal <tomas.chvatal@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 19:58+0000\n"
-"Last-Translator: Michal Hrušecký <Michal@hrusecky.net>\n"
+"POT-Creation-Date: 2012-09-06 02:01+0200\n"
+"PO-Revision-Date: 2012-09-05 13:37+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: cs_CZ\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Velikost"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Heslo"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Upraveno"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Odeslat"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Smazat vše"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Stáhnout"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Smazat"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Náhled není dostupný pro"
+
+#: templates/public.php:25
+msgid "web services under your control"
+msgstr "služby webu pod Vaší kontrolou"
diff --git a/l10n/cs_CZ/files_versions.po b/l10n/cs_CZ/files_versions.po
index cac58a2122d7749095feab71830792853c469471..0c6a43324f78e135dd970525f3b8047c9bc1766f 100644
--- a/l10n/cs_CZ/files_versions.po
+++ b/l10n/cs_CZ/files_versions.po
@@ -4,23 +4,32 @@
 # 
 # Translators:
 # Martin  <fireball@atlas.cz>, 2012.
+# Tomáš Chvátal <tomas.chvatal@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-16 02:04+0200\n"
-"PO-Revision-Date: 2012-08-15 10:32+0000\n"
-"Last-Translator: Martin <fireball@atlas.cz>\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 13:37+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: cs_CZ\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
-msgstr "Vypršení všech verzí"
+msgstr "Vypršet všechny verze"
+
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Verze"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Odstraní všechny existující zálohované verze Vašich souborů"
 
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
diff --git a/l10n/cs_CZ/lib.po b/l10n/cs_CZ/lib.po
index f6c62f880344c1db76ba9debe3229bd681a3205d..eb0f3cb40a730dffa34e60ec15af7fdf8a58bdb8 100644
--- a/l10n/cs_CZ/lib.po
+++ b/l10n/cs_CZ/lib.po
@@ -4,19 +4,20 @@
 # 
 # Translators:
 # Martin  <fireball@atlas.cz>, 2012.
+# Tomáš Chvátal <tomas.chvatal@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-16 02:04+0200\n"
-"PO-Revision-Date: 2012-08-15 09:24+0000\n"
-"Last-Translator: Martin <fireball@atlas.cz>\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 13:37+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: cs_CZ\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
 #: app.php:288
 msgid "Help"
@@ -40,23 +41,23 @@ msgstr "Aplikace"
 
 #: app.php:314
 msgid "Admin"
-msgstr "Admin"
+msgstr "Administrace"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "Stahování ZIPu je vypnuto."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
-msgstr "Soubory je nutno stahovat samostatně."
+msgstr "Soubory musí být stahovány jednotlivě."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Zpět k souborům"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
-msgstr "Vybarné soubory jsou pro vytvoření zipu příliš velké."
+msgstr "Vybrané soubory jsou příliš velké pro vytvoření zip souboru."
 
 #: json.php:28
 msgid "Application is not enabled"
@@ -64,50 +65,63 @@ msgstr "Aplikace není povolena"
 
 #: json.php:39 json.php:63 json.php:75
 msgid "Authentication error"
-msgstr "Chyba autorizace"
+msgstr "Chyba ověření"
 
 #: json.php:51
 msgid "Token expired. Please reload page."
-msgstr "Realce expirovala. Obnovte prosím stranu."
+msgstr "Token vypršel. Obnovte prosím stránku."
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
 msgstr "před vteřinami"
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
 msgstr "před 1 minutou"
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
 msgstr "před %d minutami"
 
-#: template.php:91
+#: template.php:92
 msgid "today"
 msgstr "dnes"
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
 msgstr "včera"
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
 msgstr "před %d dny"
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
 msgstr "minulý měsíc"
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
 msgstr "před měsíci"
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
 msgstr "loni"
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
 msgstr "před lety"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s je dostupná. Získat <a href=\"%s\">více informací</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "aktuální"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "kontrola aktualizací je vypnuta"
diff --git a/l10n/cs_CZ/settings.po b/l10n/cs_CZ/settings.po
index 64ed6cf955167f62e55bc38969b4daeffe94caa6..3511d379d65d8c50fd0c5ab9bf63f591431b48e1 100644
--- a/l10n/cs_CZ/settings.po
+++ b/l10n/cs_CZ/settings.po
@@ -4,27 +4,41 @@
 # 
 # Translators:
 #   <icewind1991@gmail.com>, 2012.
-# Jan Krejci <krejca85@gmail.com>, 2011, 2012.
-# Martin  <fireball@atlas.cz>, 2011, 2012.
+# Jan Krejci <krejca85@gmail.com>, 2011-2012.
+# 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.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 13:36+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: cs_CZ\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
-msgstr "Nepodařílo se stáhnout seznam z App Store"
+msgstr "Nelze načíst seznam z App Store"
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Chyba ověření"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Skupina již existuje"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Nelze přidat skupinu"
 
 #: ajax/lostpassword.php:14
 msgid "Email saved"
@@ -36,31 +50,45 @@ msgstr "Neplatný e-mail"
 
 #: ajax/openid.php:16
 msgid "OpenID Changed"
-msgstr "OpenID změněn"
+msgstr "OpenID změněno"
 
 #: ajax/openid.php:18 ajax/setlanguage.php:20 ajax/setlanguage.php:23
 msgid "Invalid request"
-msgstr "Chybný dotaz"
+msgstr "Neplatný požadavek"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Chyba autorizace"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Nelze smazat skupinu"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Nelze smazat uživatele"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Jazyk byl změněn"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Nelze přidat uživatele do skupiny %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Nelze odstranit uživatele ze skupiny %s"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Chyba"
 
 #: js/apps.js:39 js/apps.js:73
 msgid "Disable"
-msgstr "Vypnout"
+msgstr "Zakázat"
 
 #: js/apps.js:39 js/apps.js:62
 msgid "Enable"
-msgstr "Zapnout"
+msgstr "Povolit"
 
 #: js/personal.js:69
 msgid "Saving..."
@@ -72,35 +100,90 @@ msgstr "Česky"
 
 #: templates/admin.php:14
 msgid "Security Warning"
-msgstr "Bezpečnostní upozornění"
+msgstr "Bezpečnostní varování"
+
+#: templates/admin.php:17
+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 "Váš adresář dat a soubory jsou pravděpodobně přístupné z internetu. Soubor .htacces, který ownCloud poskytuje nefunguje. Doporučujeme Vám abyste nastavili Váš webový server tak, aby nebylo možno přistupovat do adresáře s daty, nebo přesunuli adresář dat mimo kořenovou složku dokumentů webového serveru."
 
-#: templates/admin.php:29
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
-msgstr "spustit jednu úlohu s každou nataženou stranou"
+msgstr "spustit jednu úlohu s každou načtenou stránkou"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php je registrován jako služba webcron"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
-msgstr "použijte systémovou službu cron"
+msgstr "použít systémovou službu cron"
+
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "API sdílení"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Povolit API sdílení"
 
-#: templates/admin.php:39
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Povolit aplikacím používat API sdílení"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Povolit odkazy"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Povolit uživatelům sdílet položky s veřejností pomocí odkazů"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Povolit znovu-sdílení"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Povolit uživatelům znovu sdílet položky, které jsou pro ně sdíleny"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Povolit uživatelům sdílet s kýmkoliv"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Povolit uživatelům sdílet pouze s uživateli v jejich skupinách"
+
+#: templates/admin.php:69
 msgid "Log"
-msgstr "Log"
+msgstr "Záznam"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Více"
 
+#: templates/admin.php:105
+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 "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>."
+
 #: templates/apps.php:10
 msgid "Add your App"
-msgstr "Přidat vaší aplikaci"
+msgstr "Přidat Vaší aplikaci"
 
 #: templates/apps.php:26
 msgid "Select an App"
@@ -111,34 +194,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Více na stránce s aplikacemi na apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licencováno"
+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:30
-msgid "by"
-msgstr "podle"
-
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentace"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
-msgstr "Spravování velkých souborů"
+msgstr "Správa velkých souborů"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Zeptat se"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problémy s připojením k databázi s nápovědou."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Přejít ručně."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Odpověď"
 
@@ -164,11 +243,11 @@ msgstr "Vaše heslo bylo změněno"
 
 #: templates/personal.php:20
 msgid "Unable to change your password"
-msgstr "Vaše heslo se nepodařilo změnit"
+msgstr "Vaše heslo nelze změnit"
 
 #: templates/personal.php:21
 msgid "Current password"
-msgstr "Aktuální heslo"
+msgstr "Současné heslo"
 
 #: templates/personal.php:22
 msgid "New password"
@@ -184,15 +263,15 @@ msgstr "Změnit heslo"
 
 #: templates/personal.php:30
 msgid "Email"
-msgstr "Email"
+msgstr "E-mail"
 
 #: templates/personal.php:31
 msgid "Your email address"
-msgstr "Vaše emailová adresa"
+msgstr "Vaše e-mailová adresa"
 
 #: templates/personal.php:32
 msgid "Fill in an email address to enable password recovery"
-msgstr "Pro povolení změny hesla vyplňte email adresu"
+msgstr "Pro povolení změny hesla vyplňte adresu e-mailu"
 
 #: templates/personal.php:38 templates/personal.php:39
 msgid "Language"
@@ -200,7 +279,7 @@ msgstr "Jazyk"
 
 #: templates/personal.php:44
 msgid "Help translate"
-msgstr "Pomoci překládat"
+msgstr "Pomoci s překladem"
 
 #: templates/personal.php:51
 msgid "use this address to connect to your ownCloud in your file manager"
@@ -228,11 +307,11 @@ msgstr "Výchozí kvóta"
 
 #: templates/users.php:55 templates/users.php:138
 msgid "Other"
-msgstr "Jiné"
+msgstr "Jiná"
 
 #: templates/users.php:80 templates/users.php:112
 msgid "Group Admin"
-msgstr ""
+msgstr "Správa skupiny"
 
 #: templates/users.php:82
 msgid "Quota"
@@ -240,4 +319,4 @@ msgstr "Kvóta"
 
 #: templates/users.php:146
 msgid "Delete"
-msgstr "Vymazat"
+msgstr "Smazat"
diff --git a/l10n/cs_CZ/user_ldap.po b/l10n/cs_CZ/user_ldap.po
index 25f623c83bd9089fe11d77de4ef16e9757916c5d..808367304a878cae5131ea401a6d93feaddd467c 100644
--- a/l10n/cs_CZ/user_ldap.po
+++ b/l10n/cs_CZ/user_ldap.po
@@ -4,40 +4,41 @@
 # 
 # Translators:
 # Martin  <fireball@atlas.cz>, 2012.
+# Tomáš Chvátal <tomas.chvatal@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-17 16:01+0000\n"
-"Last-Translator: Martin <fireball@atlas.cz>\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 13:37+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: cs_CZ\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
 #: templates/settings.php:8
 msgid "Host"
-msgstr "Hostitel"
+msgstr "Počítač"
 
 #: templates/settings.php:8
 msgid ""
 "You can omit the protocol, except you require SSL. Then start with ldaps://"
-msgstr "Nelze vynechat protokol vyžadující SSL. Začněte s ldaps://"
+msgstr "Můžete vynechat protokol, vyjma pokud požadujete SSL. Tehdy začněte s ldaps://"
 
 #: templates/settings.php:9
 msgid "Base DN"
-msgstr "Base DN"
+msgstr "Základní DN"
 
 #: templates/settings.php:9
 msgid "You can specify Base DN for users and groups in the Advanced tab"
-msgstr "V Rozšířeném nastavení můžete specifikovat pro své uživatele a skupiny element Base DN"
+msgstr "V rozšířeném nastavení můžete určit základní DN pro uživatele a skupiny"
 
 #: templates/settings.php:10
 msgid "User DN"
-msgstr "DN uživatele"
+msgstr "Uživatelské DN"
 
 #: templates/settings.php:10
 msgid ""
@@ -52,47 +53,47 @@ msgstr "Heslo"
 
 #: templates/settings.php:11
 msgid "For anonymous access, leave DN and Password empty."
-msgstr "Pro anonymní přístup ponechte údaje DN and Heslo prázdné."
+msgstr "Pro anonymní přístup, ponechte údaje DN and heslo prázdné."
 
 #: templates/settings.php:12
 msgid "User Login Filter"
-msgstr "Filtr uživatelských loginů"
+msgstr "Filtr přihlášení uživatelů"
 
 #: templates/settings.php:12
 #, php-format
 msgid ""
 "Defines the filter to apply, when login is attempted. %%uid replaces the "
 "username in the login action."
-msgstr "Definuje filtr, který je aplikován v průběhu logování. %%uid nahrazuje uživatelské jméno během logování."
+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:12
 #, php-format
 msgid "use %%uid placeholder, e.g. \"uid=%%uid\""
-msgstr "použijte %%uid pro rezervované místo, např. \"uid=%%uid\""
+msgstr "použijte zástupný vzor %%uid, např. \"uid=%%uid\""
 
 #: templates/settings.php:13
 msgid "User List Filter"
-msgstr "Filtr uživateslkých seznamů"
+msgstr "Filtr uživatelských seznamů"
 
 #: templates/settings.php:13
 msgid "Defines the filter to apply, when retrieving users."
-msgstr "Defunije filtr, který je plaikován při návratu uživatelů."
+msgstr "Určuje použitý filtr, pro získávaní uživatelů."
 
 #: templates/settings.php:13
 msgid "without any placeholder, e.g. \"objectClass=person\"."
-msgstr "bez rezervace místa, např. \"objectClass=person\"."
+msgstr "bez zástupných znaků, např. \"objectClass=person\"."
 
 #: templates/settings.php:14
 msgid "Group Filter"
-msgstr "Filtr skupiny"
+msgstr "Filtr skupin"
 
 #: templates/settings.php:14
 msgid "Defines the filter to apply, when retrieving groups."
-msgstr "Definuje filtr, který je aplikován při návratu skupin"
+msgstr "Určuje použitý filtr, pro získávaní skupin."
 
 #: templates/settings.php:14
 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"."
-msgstr "bez rezervace místa, např. \"objectClass=posixGroup\"."
+msgstr "bez zástupných znaků, např. \"objectClass=posixGroup\"."
 
 #: templates/settings.php:17
 msgid "Port"
@@ -112,11 +113,11 @@ msgstr "Asociace člena skupiny"
 
 #: templates/settings.php:21
 msgid "Use TLS"
-msgstr "Použijte TLS"
+msgstr "Použít TLS"
 
 #: templates/settings.php:21
 msgid "Do not use it for SSL connections, it will fail."
-msgstr "Nepoužívejte pro SSL připojení, připojení selže."
+msgstr "Nepoužívejte pro připojení pomocí SSL, připojení selže."
 
 #: templates/settings.php:22
 msgid "Case insensitve LDAP server (Windows)"
@@ -124,17 +125,17 @@ msgstr "LDAP server nerozlišující velikost znaků (Windows)"
 
 #: templates/settings.php:23
 msgid "Turn off SSL certificate validation."
-msgstr "Vypněte ověřování SSL certifikátu"
+msgstr "Vypnout ověřování SSL certifikátu."
 
 #: templates/settings.php:23
 msgid ""
 "If connection only works with this option, import the LDAP server's SSL "
 "certificate in your ownCloud server."
-msgstr "pokud pracuje připojení pouze pokud je teto volba aktivní, importujte SSL certifikát LDAP serveru do Vašeho serveru ownCloud."
+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:23
 msgid "Not recommended, use for testing only."
-msgstr "Není doporučeno, pouze pro účely testování."
+msgstr "Není doporučeno, pouze pro testovací účely."
 
 #: templates/settings.php:24
 msgid "User Display Name Field"
@@ -154,12 +155,18 @@ msgstr "Atribut LDAP použitý k vytvoření jména skupiny ownCloud"
 
 #: templates/settings.php:27
 msgid "in bytes"
-msgstr "v bytech"
+msgstr "v bajtech"
 
 #: templates/settings.php:29
 msgid "in seconds. A change empties the cache."
-msgstr "ve vteřinách. Změna vyprázdní dočasnou paměť."
+msgstr "ve vteřinách. Změna vyprázdní vyrovnávací paměť."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+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:32
 msgid "Help"
 msgstr "Nápověda"
diff --git a/l10n/da/core.po b/l10n/da/core.po
index d5210b045cdb30e99bb1162063df2bd64c2d50e5..bbb688dca5778f651df67a9ebbdc68f81b3010f6 100644
--- a/l10n/da/core.po
+++ b/l10n/da/core.po
@@ -6,21 +6,22 @@
 #   <mikkelbjerglarsen@gmail.com>, 2011, 2012.
 # Morten Juhl-Johansen Zölde-Fejér <morten@writtenandread.net>, 2011, 2012.
 # Pascal d'Hermilly <pascal@dhermilly.dk>, 2011.
+#   <simon@rosmi.dk>, 2012.
 # Thomas Tanghus <>, 2012.
 # Thomas Tanghus <thomas@tanghus.net>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:01+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -34,59 +35,55 @@ msgstr "Ingen kategori at tilføje?"
 msgid "This category already exists: "
 msgstr "Denne kategori eksisterer allerede: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Indstillinger"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Januar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Februar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Marts"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "April"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Maj"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Juni"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Juli"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "August"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "September"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Oktober"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "November"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "December"
 
@@ -118,7 +115,7 @@ msgstr "Fejl"
 msgid "ownCloud password reset"
 msgstr "Nulstil ownCloud kodeord"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Anvend følgende link til at nulstille din adgangskode: {link}"
 
@@ -234,7 +231,7 @@ msgstr "Navn på database"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Database tabelplads"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -248,7 +245,7 @@ msgstr "Afslut opsætning"
 msgid "web services under your control"
 msgstr "Webtjenester under din kontrol"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Log ud"
 
diff --git a/l10n/da/files.po b/l10n/da/files.po
index 3524d6c05af27f8aa31ea1afcb6cf3df52ffc4ba..c2e2ab70ee009ca3cc794086781f5df5377910ef 100644
--- a/l10n/da/files.po
+++ b/l10n/da/files.po
@@ -5,21 +5,22 @@
 # Translators:
 # Morten Juhl-Johansen Zölde-Fejér <morten@writtenandread.net>, 2011, 2012.
 # Pascal d'Hermilly <pascal@dhermilly.dk>, 2011.
+#   <simon@rosmi.dk>, 2012.
 # Thomas Tanghus <>, 2012.
 # Thomas Tanghus <thomas@tanghus.net>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -55,83 +56,100 @@ msgstr "Fejl ved skrivning til disk."
 msgid "Files"
 msgstr "Filer"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Slet"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "findes allerede"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "erstat"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "fortryd"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "erstattet"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "fortryd"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "med"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "fortryd"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "Slettet"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "genererer ZIP-fil, det kan tage lidt tid."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Fejl ved upload"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Afventer"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Upload afbrudt."
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Ugyldigt navn, '/' er ikke tilladt."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Størrelse"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Ændret"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "mappe"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "mapper"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "fil"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "filer"
 
@@ -163,6 +181,10 @@ msgstr "0 er ubegrænset"
 msgid "Maximum input size for ZIP files"
 msgstr "Maksimal størrelse på ZIP filer"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Ny"
@@ -187,36 +209,36 @@ msgstr "Upload"
 msgid "Cancel upload"
 msgstr "Fortryd upload"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Her er tomt. Upload noget!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Navn"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Del"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Download"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Upload for stor"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Filerne bliver indlæst, vent venligst."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Indlæser"
diff --git a/l10n/da/files_sharing.po b/l10n/da/files_sharing.po
index 7ed986fd0293fe66bc6626c842ff63c3f902856d..cae9bfa4d9b51cf5f874ed8021a7f5a6f3279cea 100644
--- a/l10n/da/files_sharing.po
+++ b/l10n/da/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Danish (http://www.transifex.com/projects/p/owncloud/language/da/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: da\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/da/files_versions.po b/l10n/da/files_versions.po
index 2aae166d774b3a5899a00724c337bf9e4db3fd36..667b5eef5511d9edf75aa70753704d227ee32dc9 100644
--- a/l10n/da/files_versions.po
+++ b/l10n/da/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: da\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/da/lib.po b/l10n/da/lib.po
index 8d65f903fef34b40daa30a1555717104993bf56e..75cf36398bc8be6d33b68b60a4ccd3568d350285 100644
--- a/l10n/da/lib.po
+++ b/l10n/da/lib.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Morten Juhl-Johansen Zölde-Fejér <morten@writtenandread.net>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,96 +18,109 @@ msgstr ""
 "Language: da\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
-msgstr ""
+msgstr "Hjælp"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
-msgstr ""
+msgstr "Personlig"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
-msgstr ""
+msgstr "Indstillinger"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
-msgstr ""
+msgstr "Brugere"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
-msgstr ""
+msgstr "Apps"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
-msgstr ""
+msgstr "Admin"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
-msgstr ""
+msgstr "ZIP-download er slået fra."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
-msgstr ""
+msgstr "Filer skal downloades en for en."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
-msgstr ""
+msgstr "Tilbage til Filer"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
-msgstr ""
+msgstr "De markerede filer er for store til at generere en ZIP-fil."
 
 #: json.php:28
 msgid "Application is not enabled"
-msgstr ""
+msgstr "Programmet er ikke aktiveret"
 
 #: json.php:39 json.php:63 json.php:75
 msgid "Authentication error"
-msgstr ""
+msgstr "Adgangsfejl"
 
 #: json.php:51
 msgid "Token expired. Please reload page."
-msgstr ""
+msgstr "Adgang er udløbet. Genindlæs siden."
 
 #: template.php:86
 msgid "seconds ago"
-msgstr ""
+msgstr "sekunder siden"
 
 #: template.php:87
 msgid "1 minute ago"
-msgstr ""
+msgstr "1 minut siden"
 
 #: template.php:88
 #, php-format
 msgid "%d minutes ago"
-msgstr ""
+msgstr "%d minutter siden"
 
 #: template.php:91
 msgid "today"
-msgstr ""
+msgstr "I dag"
 
 #: template.php:92
 msgid "yesterday"
-msgstr ""
+msgstr "I går"
 
 #: template.php:93
 #, php-format
 msgid "%d days ago"
-msgstr ""
+msgstr "%d dage siden"
 
 #: template.php:94
 msgid "last month"
-msgstr ""
+msgstr "Sidste måned"
 
 #: template.php:95
 msgid "months ago"
-msgstr ""
+msgstr "måneder siden"
 
 #: template.php:96
 msgid "last year"
-msgstr ""
+msgstr "Sidste år"
 
 #: template.php:97
 msgid "years ago"
+msgstr "år siden"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
 msgstr ""
diff --git a/l10n/da/settings.po b/l10n/da/settings.po
index 52548033030b5f107a52d6fe385a316ae3344aa6..022d5ee2338a0c7c5b4e794b4ebc725cefdfa664 100644
--- a/l10n/da/settings.po
+++ b/l10n/da/settings.po
@@ -7,6 +7,7 @@
 #   <mikkelbjerglarsen@gmail.com>, 2011.
 # Morten Juhl-Johansen Zölde-Fejér <morten@writtenandread.net>, 2011, 2012.
 # Pascal d'Hermilly <pascal@dhermilly.dk>, 2011.
+#   <simon@rosmi.dk>, 2012.
 #   <sr@ybnet.dk>, 2012.
 # Thomas Tanghus <>, 2012.
 # Thomas Tanghus <thomas@tanghus.net>, 2012.
@@ -14,20 +15,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-20 14:35+0000\n"
-"Last-Translator: ressel <sr@ybnet.dk>\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Kunne ikke indlæse listen fra App Store"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Adgangsfejl"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Email adresse gemt"
@@ -44,14 +58,28 @@ msgstr "OpenID ændret"
 msgid "Invalid request"
 msgstr "Ugyldig forespørgsel"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Adgangsfejl"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Sprog ændret"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Fejl"
@@ -76,30 +104,85 @@ msgstr "Dansk"
 msgid "Security Warning"
 msgstr "Sikkerhedsadvarsel"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
-msgstr ""
+msgstr "udfør en opgave for hver indlæst side"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php er tilmeldt en webcron tjeneste"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
+msgstr "brug systemets cron service"
+
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "Del API"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Aktiver dele API"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Tillad apps a bruge dele APIen"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Tillad links"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Tillad brugere at dele elementer med offentligheden med links"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Tillad gendeling"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Tillad brugere at dele med hvem som helst"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Tillad kun deling med brugere i brugerens egen gruppe"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Log"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Mere"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Tilføj din App"
@@ -113,34 +196,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Se applikationens side på apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licenseret"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "af"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentation"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Håndter store filer"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Stil et spørgsmål"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problemer med at forbinde til hjælpe-databasen."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Gå derhen manuelt."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Svar"
 
@@ -234,7 +313,7 @@ msgstr "Andet"
 
 #: templates/users.php:80 templates/users.php:112
 msgid "Group Admin"
-msgstr ""
+msgstr "Gruppe Administrator"
 
 #: templates/users.php:82
 msgid "Quota"
diff --git a/l10n/da/user_ldap.po b/l10n/da/user_ldap.po
index 5103ecf98ccfb3a9f350096099e5150aadee4941..1d87e554059a3632afa9109744842da2c08810f3 100644
--- a/l10n/da/user_ldap.po
+++ b/l10n/da/user_ldap.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-20 14:58+0000\n"
-"Last-Translator: ressel <sr@ybnet.dk>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -160,6 +160,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr "Hjælp"
diff --git a/l10n/de/core.po b/l10n/de/core.po
index b7300133f0f588b261cc25468e4cf206d56d9e1e..d2dca57566e008aab82d2b5b2ea2e322b1a3159a 100644
--- a/l10n/de/core.po
+++ b/l10n/de/core.po
@@ -18,15 +18,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:01+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -40,59 +40,55 @@ msgstr "Keine Kategorie hinzuzufügen?"
 msgid "This category already exists: "
 msgstr "Kategorie existiert bereits:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Einstellungen"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Januar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Februar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "März"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "April"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Mai"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Juni"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Juli"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "August"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "September"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Oktober"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "November"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Dezember"
 
@@ -114,7 +110,7 @@ msgstr "OK"
 
 #: js/oc-vcategories.js:68
 msgid "No categories selected for deletion."
-msgstr "Keine Kategorien zum Löschen angegeben."
+msgstr "Es wurde keine Kategorien zum Löschen ausgewählt."
 
 #: js/oc-vcategories.js:68
 msgid "Error"
@@ -124,7 +120,7 @@ msgstr "Fehler"
 msgid "ownCloud password reset"
 msgstr "ownCloud-Passwort zurücksetzen"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Nutzen Sie den nachfolgenden Link, um Ihr Passwort zurückzusetzen: {link}"
 
@@ -240,7 +236,7 @@ msgstr "Datenbank-Name"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Datenbank-Tablespace"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -254,7 +250,7 @@ msgstr "Installation abschließen"
 msgid "web services under your control"
 msgstr "Web-Services unter Ihrer Kontrolle"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Abmelden"
 
diff --git a/l10n/de/files.po b/l10n/de/files.po
index b7f13aa70201f7ffa36933db3d863968456d9c80..406a0d25064041dd77cdeecdde28c9bd32049779 100644
--- a/l10n/de/files.po
+++ b/l10n/de/files.po
@@ -4,11 +4,13 @@
 # 
 # Translators:
 #   <admin@s-goecker.de>, 2012.
+# I Robot <thomas.mueller@tmit.eu>, 2012.
 # Jan-Christoph Borchardt <JanCBorchardt@fsfe.org>, 2011.
 # Jan-Christoph Borchardt <jan@unhosted.org>, 2011.
 # Marcel Kühlhorn <susefan93@gmx.de>, 2012.
 # Michael Krell <m4dmike.mni@gmail.com>, 2012.
 #   <nelsonfritsch@gmail.com>, 2012.
+#   <niko@nik-o-mat.de>, 2012.
 # Phi Lieb <>, 2012.
 #   <thomas.mueller@tmit.eu>, 2012.
 # Thomas Müller <>, 2012.
@@ -17,15 +19,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 09:11+0000\n"
-"Last-Translator: traductor <transifex.3.mensaje@spamgourmet.com>\n"
+"POT-Creation-Date: 2012-09-11 02:02+0200\n"
+"PO-Revision-Date: 2012-09-10 13:09+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -39,7 +41,7 @@ msgstr "Die Größe der hochzuladenden Datei überschreitet die upload_max_files
 msgid ""
 "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
 "the HTML form"
-msgstr "Die größe der hochzuladenden Datei überschreitet die MAX_FILE_SIZE-Richtlinie, die im HTML-Formular angegeben wurde"
+msgstr "Die Größe der hochzuladenden Datei überschreitet die MAX_FILE_SIZE-Richtlinie, die im HTML-Formular angegeben wurde"
 
 #: ajax/upload.php:23
 msgid "The uploaded file was only partially uploaded"
@@ -61,83 +63,100 @@ msgstr "Fehler beim Schreiben auf die Festplatte"
 msgid "Files"
 msgstr "Dateien"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Nicht mehr teilen"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Löschen"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "ist bereits vorhanden"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "ersetzen"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "Name vorschlagen"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "abbrechen"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "ersetzt"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "rückgängig machen"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "mit"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "rückgängig machen"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "Nicht mehr teilen"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "gelöscht"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "Erstelle ZIP-Datei. Dies kann eine Weile dauern."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "Ihre Datei kann nicht hochgeladen werden, da sie ein Verzeichnis ist oder 0 Bytes hat."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Fehler beim Hochladen"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Ausstehend"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Hochladen abgebrochen."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr "Dateiupload läuft. Wenn Sie die Seite jetzt verlassen, wird der Upload abgebrochen."
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
-msgstr "Ungültiger Name, \"/\" ist nicht erlaubt."
+msgstr "Ungültiger Name: \"/\" ist nicht erlaubt."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Größe"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Bearbeitet"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "Ordner"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "Ordner"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "Datei"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "Dateien"
 
@@ -155,7 +174,7 @@ msgstr "maximal möglich:"
 
 #: templates/admin.php:9
 msgid "Needed for multi-file and folder downloads."
-msgstr "Für Mehrfachdateien- und Ordnerdownloads benötigt:"
+msgstr "Für Mehrfachdatei- und Ordnerdownloads benötigt:"
 
 #: templates/admin.php:9
 msgid "Enable ZIP-download"
@@ -167,7 +186,11 @@ msgstr "0 bedeutet unbegrenzt"
 
 #: templates/admin.php:12
 msgid "Maximum input size for ZIP files"
-msgstr "Maximale Größe für ZIP Dateien"
+msgstr "Maximale Größe für ZIP-Dateien"
+
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Speichern"
 
 #: templates/index.php:7
 msgid "New"
@@ -193,36 +216,36 @@ msgstr "Hochladen"
 msgid "Cancel upload"
 msgstr "Upload abbrechen"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Alles leer. Lade etwas hoch!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Name"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Teilen"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Herunterladen"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Upload zu groß"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Dateien werden gescannt, bitte warten."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Scannen"
diff --git a/l10n/de/files_sharing.po b/l10n/de/files_sharing.po
index 8f7dfd3059e9e1a07834cd5243014231f3dca3d2..7d11d393690603c1ffb7a8ccc4a3de4899e988eb 100644
--- a/l10n/de/files_sharing.po
+++ b/l10n/de/files_sharing.po
@@ -6,13 +6,14 @@
 # I Robot <thomas.mueller@tmit.eu>, 2012.
 #   <niko@nik-o-mat.de>, 2012.
 #   <thomas.mueller@tmit.eu>, 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: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-08-31 09:46+0000\n"
+"Last-Translator: traductor <transifex.3.mensaje@spamgourmet.com>\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"
@@ -20,18 +21,22 @@ msgstr ""
 "Language: de\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Größe"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Passwort"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Geändert"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Absenden"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Alle löschen"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Download"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Löschen"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Es ist keine Vorschau verfügbar für"
+
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr "Web-Services unter Ihrer Kontrolle"
diff --git a/l10n/de/files_versions.po b/l10n/de/files_versions.po
index 789af981fbf9939b2803a62ec508128e6ec4557d..f4e27ec5144301a09f73d99373f9dfe85a61459e 100644
--- a/l10n/de/files_versions.po
+++ b/l10n/de/files_versions.po
@@ -3,14 +3,16 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# I Robot <thomas.mueller@tmit.eu>, 2012.
+#   <niko@nik-o-mat.de>, 2012.
 #   <thomas.mueller@tmit.eu>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-15 02:03+0200\n"
-"PO-Revision-Date: 2012-08-14 08:15+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-03 02:04+0200\n"
+"PO-Revision-Date: 2012-09-02 06:01+0000\n"
+"Last-Translator: JamFX <niko@nik-o-mat.de>\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"
@@ -18,10 +20,18 @@ msgstr ""
 "Language: de\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Alle Versionen löschen"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Versionen"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Dies löscht alle vorhandenen Sicherungsversionen Ihrer Dateien."
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Datei-Versionierung aktivieren"
diff --git a/l10n/de/lib.po b/l10n/de/lib.po
index 0e1b5201dcc041f7c38bfc5f874809c34e52eafb..b43e2799fd99badeb554a2a2b59db47b6891deb9 100644
--- a/l10n/de/lib.po
+++ b/l10n/de/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: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 09:41+0000\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 08:07+0000\n"
 "Last-Translator: traductor <transifex.3.mensaje@spamgourmet.com>\n"
 "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n"
 "MIME-Version: 1.0\n"
@@ -44,19 +44,19 @@ msgstr "Apps"
 msgid "Admin"
 msgstr "Administrator"
 
-#: files.php:276
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "Der ZIP-Download ist deaktiviert."
 
-#: files.php:277
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Die Dateien müssen einzeln heruntergeladen werden."
 
-#: files.php:277 files.php:302
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Zurück zu \"Dateien\""
 
-#: files.php:301
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "Die gewählten Dateien sind zu groß, um eine ZIP-Datei zu erstellen."
 
@@ -113,3 +113,16 @@ msgstr "Letztes Jahr"
 #: template.php:97
 msgid "years ago"
 msgstr "Vor Jahren"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s ist verfügbar. <a href=\"%s\">Weitere Informationen</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "aktuell"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "Die Update-Überprüfung ist ausgeschaltet"
diff --git a/l10n/de/settings.po b/l10n/de/settings.po
index 29ec31c8a51b210aa40a7fbe193a890388499db1..e0d81804f6aa26adb49e921f40c51b2cd6216e80 100644
--- a/l10n/de/settings.po
+++ b/l10n/de/settings.po
@@ -5,6 +5,7 @@
 # Translators:
 #   <admin@s-goecker.de>, 2011, 2012.
 #   <icewind1991@gmail.com>, 2012.
+# I Robot <thomas.mueller@tmit.eu>, 2012.
 # Jan-Christoph Borchardt <JanCBorchardt@fsfe.org>, 2011.
 # Marcel Kühlhorn <susefan93@gmx.de>, 2012.
 #   <nelsonfritsch@gmail.com>, 2012.
@@ -16,19 +17,32 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 09:08+0000\n"
-"Last-Translator: traductor <transifex.3.mensaje@spamgourmet.com>\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 07:52+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
-msgstr "Liste der Apps im Store konnte nicht geladen werden."
+msgstr "Die Liste der Apps im Store konnte nicht geladen werden."
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Anmeldungsfehler"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Gruppe existiert bereits"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Gruppe konnte nicht angelegt werden"
 
 #: ajax/lostpassword.php:14
 msgid "Email saved"
@@ -46,14 +60,28 @@ msgstr "OpenID geändert"
 msgid "Invalid request"
 msgstr "Ungültige Anfrage"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Anmeldungsfehler"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Gruppe konnte nicht gelöscht werden"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Benutzer konnte nicht gelöscht werden"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Sprache geändert"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Der Benutzer konnte nicht zur Gruppe %s hinzugefügt werden"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Der Benutzer konnte nicht aus der Gruppe %s entfernt werden"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Fehler"
@@ -78,71 +106,122 @@ msgstr "Deutsch"
 msgid "Security Warning"
 msgstr "Sicherheitshinweis"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "Ihr Datenverzeichnis ist möglicher Weise aus dem Internet erreichbar. Die .htaccess-Datei von OwnCloud funktioniert nicht. Wir raten Ihnen dringend, dass Sie Ihren Webserver dahingehend konfigurieren, dass Ihr Datenverzeichnis nicht länger aus dem Internet erreichbar ist, oder Sie verschieben das Datenverzeichnis außerhalb des Wurzelverzeichnisses des Webservers."
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "Führe eine Aufgabe pro geladener Seite aus."
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php ist beim Webcron-Service registriert"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "Nutze System-Cron-Service"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "Teilungs-API"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Teilungs-API aktivieren"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Erlaubt Nutzern, die Teilungs-API zu nutzen"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Links erlauben"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Erlaube Nutzern, Dateien mithilfe von Links mit der Öffentlichkeit zu teilen"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Erneutes Teilen erlauben"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Erlaubt Nutzern, Dateien die mit ihnen geteilt wurden, erneut zu teilen"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Erlaube Nutzern mit jedem zu Teilen"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Erlaube Nutzern nur das Teilen in ihrer Gruppe"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Log"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Mehr"
 
+#: templates/admin.php:105
+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 "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."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Fügen Sie Ihre App hinzu"
 
 #: templates/apps.php:26
 msgid "Select an App"
-msgstr "Wähle eine Anwendung aus"
+msgstr "Wählen Sie eine Anwendung aus"
 
 #: templates/apps.php:29
 msgid "See application page at apps.owncloud.com"
-msgstr "Weitere Anwendungen auf apps.owncloud.com"
-
-#: templates/apps.php:30
-msgid "-licensed"
-msgstr "-lizenziert"
+msgstr "Weitere Anwendungen finden Sie auf apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "by"
-msgstr "von"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-lizenziert von <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentation"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Große Dateien verwalten"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
-msgstr "Stell eine Frage"
+msgstr "Stellen Sie eine Frage"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Probleme bei der Verbindung zur Hilfe-Datenbank."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Datenbank direkt besuchen."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Antwort"
 
@@ -208,7 +287,7 @@ msgstr "Helfen Sie bei der Übersetzung"
 
 #: templates/personal.php:51
 msgid "use this address to connect to your ownCloud in your file manager"
-msgstr "Benutzen Sie diese Adresse, um Ihr ownCloud mit deinem Dateimanager zu verbinden."
+msgstr "Benutzen Sie diese Adresse, um Ihre ownCloud mit Ihrem Dateimanager zu verbinden."
 
 #: templates/users.php:21 templates/users.php:76
 msgid "Name"
diff --git a/l10n/de/user_ldap.po b/l10n/de/user_ldap.po
index 5cd6c4762f7716c79fb941e5565e82ccd26f2915..c8b3a60d6a6858735e6c394cb5e56a2856267856 100644
--- a/l10n/de/user_ldap.po
+++ b/l10n/de/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: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 10:14+0000\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-08-31 15:48+0000\n"
 "Last-Translator: traductor <transifex.3.mensaje@spamgourmet.com>\n"
 "Language-Team: German (http://www.transifex.com/projects/p/owncloud/language/de/)\n"
 "MIME-Version: 1.0\n"
@@ -128,7 +128,7 @@ msgstr "LDAP-Server (Windows: Groß- und Kleinschreibung bleibt unbeachtet)"
 
 #: templates/settings.php:23
 msgid "Turn off SSL certificate validation."
-msgstr "Schalte die SSL Zertifikatsprüfung aus."
+msgstr "Schalte die SSL-Zertifikatsprüfung aus."
 
 #: templates/settings.php:23
 msgid ""
@@ -164,6 +164,12 @@ msgstr "in Bytes"
 msgid "in seconds. A change empties the cache."
 msgstr "in Sekunden. Eine Änderung leert den Cache."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr "Ohne Eingabe wird der Benutzername (Standard) verwendet. Anderenfalls geben Sie ein LDAP/AD-Attribut an."
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr "Hilfe"
diff --git a/l10n/de_DE/calendar.po b/l10n/de_DE/calendar.po
deleted file mode 100644
index cc381094ca50c949f33a953875faae72e2147281..0000000000000000000000000000000000000000
--- a/l10n/de_DE/calendar.po
+++ /dev/null
@@ -1,636 +0,0 @@
-# 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://owncloud.shapado.com/\n"
-"POT-Creation-Date: 2012-01-24 00:24+0100\n"
-"PO-Revision-Date: 2011-09-03 16:52+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\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"
-
-#: ajax/guesstimezone.php:42
-msgid "New Timezone:"
-msgstr ""
-
-#: ajax/settimezone.php:22
-msgid "Timezone changed"
-msgstr ""
-
-#: ajax/settimezone.php:24
-msgid "Invalid request"
-msgstr ""
-
-#: appinfo/app.php:20 templates/calendar.php:14
-#: templates/part.eventform.php:20
-msgid "Calendar"
-msgstr ""
-
-#: lib/app.php:19
-msgid "Wrong calendar"
-msgstr ""
-
-#: lib/app.php:60 lib/object.php:332
-msgid "Birthday"
-msgstr ""
-
-#: lib/app.php:61 lib/object.php:333
-msgid "Business"
-msgstr ""
-
-#: lib/app.php:62 lib/object.php:334
-msgid "Call"
-msgstr ""
-
-#: lib/app.php:63 lib/object.php:335
-msgid "Clients"
-msgstr ""
-
-#: lib/app.php:64 lib/object.php:336
-msgid "Deliverer"
-msgstr ""
-
-#: lib/app.php:65 lib/object.php:337
-msgid "Holidays"
-msgstr ""
-
-#: lib/app.php:66 lib/object.php:338
-msgid "Ideas"
-msgstr ""
-
-#: lib/app.php:67 lib/object.php:339
-msgid "Journey"
-msgstr ""
-
-#: lib/app.php:68 lib/object.php:340
-msgid "Jubilee"
-msgstr ""
-
-#: lib/app.php:69 lib/object.php:341
-msgid "Meeting"
-msgstr ""
-
-#: lib/app.php:70 lib/object.php:342
-msgid "Other"
-msgstr ""
-
-#: lib/app.php:71 lib/object.php:343
-msgid "Personal"
-msgstr ""
-
-#: lib/app.php:72 lib/object.php:344
-msgid "Projects"
-msgstr ""
-
-#: lib/app.php:73 lib/object.php:345
-msgid "Questions"
-msgstr ""
-
-#: lib/app.php:74 lib/object.php:346
-msgid "Work"
-msgstr ""
-
-#: lib/object.php:353
-msgid "Does not repeat"
-msgstr ""
-
-#: lib/object.php:354
-msgid "Daily"
-msgstr ""
-
-#: lib/object.php:355
-msgid "Weekly"
-msgstr ""
-
-#: lib/object.php:356
-msgid "Every Weekday"
-msgstr ""
-
-#: lib/object.php:357
-msgid "Bi-Weekly"
-msgstr ""
-
-#: lib/object.php:358
-msgid "Monthly"
-msgstr ""
-
-#: lib/object.php:359
-msgid "Yearly"
-msgstr ""
-
-#: lib/object.php:366
-msgid "never"
-msgstr ""
-
-#: lib/object.php:367
-msgid "by occurrences"
-msgstr ""
-
-#: lib/object.php:368
-msgid "by date"
-msgstr ""
-
-#: lib/object.php:375
-msgid "by monthday"
-msgstr ""
-
-#: lib/object.php:376
-msgid "by weekday"
-msgstr ""
-
-#: lib/object.php:383 templates/lAfix.php:3
-msgid "Monday"
-msgstr ""
-
-#: lib/object.php:384 templates/lAfix.php:4
-msgid "Tuesday"
-msgstr ""
-
-#: lib/object.php:385 templates/lAfix.php:5
-msgid "Wednesday"
-msgstr ""
-
-#: lib/object.php:386 templates/lAfix.php:6
-msgid "Thursday"
-msgstr ""
-
-#: lib/object.php:387 templates/lAfix.php:7
-msgid "Friday"
-msgstr ""
-
-#: lib/object.php:388 templates/lAfix.php:8
-msgid "Saturday"
-msgstr ""
-
-#: lib/object.php:389 templates/lAfix.php:2
-msgid "Sunday"
-msgstr ""
-
-#: lib/object.php:396
-msgid "events week of month"
-msgstr ""
-
-#: lib/object.php:397
-msgid "first"
-msgstr ""
-
-#: lib/object.php:398
-msgid "second"
-msgstr ""
-
-#: lib/object.php:399
-msgid "third"
-msgstr ""
-
-#: lib/object.php:400
-msgid "fourth"
-msgstr ""
-
-#: lib/object.php:401
-msgid "fifth"
-msgstr ""
-
-#: lib/object.php:402
-msgid "last"
-msgstr ""
-
-#: lib/object.php:424 templates/lAfix.php:16
-msgid "January"
-msgstr ""
-
-#: lib/object.php:425 templates/lAfix.php:17
-msgid "February"
-msgstr ""
-
-#: lib/object.php:426 templates/lAfix.php:18
-msgid "March"
-msgstr ""
-
-#: lib/object.php:427 templates/lAfix.php:19
-msgid "April"
-msgstr ""
-
-#: lib/object.php:428 templates/lAfix.php:20
-msgid "May"
-msgstr ""
-
-#: lib/object.php:429 templates/lAfix.php:21
-msgid "June"
-msgstr ""
-
-#: lib/object.php:430 templates/lAfix.php:22
-msgid "July"
-msgstr ""
-
-#: lib/object.php:431 templates/lAfix.php:23
-msgid "August"
-msgstr ""
-
-#: lib/object.php:432 templates/lAfix.php:24
-msgid "September"
-msgstr ""
-
-#: lib/object.php:433 templates/lAfix.php:25
-msgid "October"
-msgstr ""
-
-#: lib/object.php:434 templates/lAfix.php:26
-msgid "November"
-msgstr ""
-
-#: lib/object.php:435 templates/lAfix.php:27
-msgid "December"
-msgstr ""
-
-#: lib/object.php:441
-msgid "by events date"
-msgstr ""
-
-#: lib/object.php:442
-msgid "by yearday(s)"
-msgstr ""
-
-#: lib/object.php:443
-msgid "by weeknumber(s)"
-msgstr ""
-
-#: lib/object.php:444
-msgid "by day and month"
-msgstr ""
-
-#: lib/object.php:467
-msgid "Not an array"
-msgstr ""
-
-#: lib/search.php:32 lib/search.php:34 lib/search.php:37
-msgid "Date"
-msgstr ""
-
-#: lib/search.php:40
-msgid "Cal."
-msgstr ""
-
-#: templates/calendar.php:10
-msgid "All day"
-msgstr ""
-
-#: templates/calendar.php:11 templates/part.choosecalendar.php:15
-msgid "New Calendar"
-msgstr ""
-
-#: templates/calendar.php:12
-msgid "Missing fields"
-msgstr ""
-
-#: templates/calendar.php:13 templates/part.eventform.php:3
-msgid "Title"
-msgstr ""
-
-#: templates/calendar.php:15
-msgid "From Date"
-msgstr ""
-
-#: templates/calendar.php:16
-msgid "From Time"
-msgstr ""
-
-#: templates/calendar.php:17
-msgid "To Date"
-msgstr ""
-
-#: templates/calendar.php:18
-msgid "To Time"
-msgstr ""
-
-#: templates/calendar.php:19
-msgid "The event ends before it starts"
-msgstr ""
-
-#: templates/calendar.php:20
-msgid "There was a database fail"
-msgstr ""
-
-#: templates/calendar.php:38
-msgid "Week"
-msgstr ""
-
-#: templates/calendar.php:39
-msgid "Month"
-msgstr ""
-
-#: templates/calendar.php:40
-msgid "List"
-msgstr ""
-
-#: templates/calendar.php:46
-msgid "Today"
-msgstr ""
-
-#: templates/calendar.php:47
-msgid "Calendars"
-msgstr ""
-
-#: templates/calendar.php:65
-msgid "There was a fail, while parsing the file."
-msgstr ""
-
-#: templates/lAfix.php:9
-msgid "Sun."
-msgstr ""
-
-#: templates/lAfix.php:10
-msgid "Mon."
-msgstr ""
-
-#: templates/lAfix.php:11
-msgid "Tue."
-msgstr ""
-
-#: templates/lAfix.php:12
-msgid "Wed."
-msgstr ""
-
-#: templates/lAfix.php:13
-msgid "Thu."
-msgstr ""
-
-#: templates/lAfix.php:14
-msgid "Fri."
-msgstr ""
-
-#: templates/lAfix.php:15
-msgid "Sat."
-msgstr ""
-
-#: templates/lAfix.php:28
-msgid "Jan."
-msgstr ""
-
-#: templates/lAfix.php:29
-msgid "Feb."
-msgstr ""
-
-#: templates/lAfix.php:30
-msgid "Mar."
-msgstr ""
-
-#: templates/lAfix.php:31
-msgid "Apr."
-msgstr ""
-
-#: templates/lAfix.php:32
-msgid "May."
-msgstr ""
-
-#: templates/lAfix.php:33
-msgid "Jun."
-msgstr ""
-
-#: templates/lAfix.php:34
-msgid "Jul."
-msgstr ""
-
-#: templates/lAfix.php:35
-msgid "Aug."
-msgstr ""
-
-#: templates/lAfix.php:36
-msgid "Sep."
-msgstr ""
-
-#: templates/lAfix.php:37
-msgid "Oct."
-msgstr ""
-
-#: templates/lAfix.php:38
-msgid "Nov."
-msgstr ""
-
-#: templates/lAfix.php:39
-msgid "Dec."
-msgstr ""
-
-#: templates/part.choosecalendar.php:1
-msgid "Choose active calendars"
-msgstr ""
-
-#: templates/part.choosecalendar.php:20
-#: templates/part.choosecalendar.rowfields.php:4
-msgid "CalDav Link"
-msgstr ""
-
-#: templates/part.choosecalendar.rowfields.php:4
-msgid "Download"
-msgstr ""
-
-#: templates/part.choosecalendar.rowfields.php:4
-msgid "Edit"
-msgstr ""
-
-#: templates/part.choosecalendar.rowfields.php:4
-#: templates/part.editevent.php:9
-msgid "Delete"
-msgstr ""
-
-#: templates/part.editcalendar.php:9
-msgid "New calendar"
-msgstr ""
-
-#: templates/part.editcalendar.php:9
-msgid "Edit calendar"
-msgstr ""
-
-#: templates/part.editcalendar.php:12
-msgid "Displayname"
-msgstr ""
-
-#: templates/part.editcalendar.php:23
-msgid "Active"
-msgstr ""
-
-#: templates/part.editcalendar.php:29
-msgid "Calendar color"
-msgstr ""
-
-#: templates/part.editcalendar.php:42
-msgid "Save"
-msgstr ""
-
-#: templates/part.editcalendar.php:42 templates/part.editevent.php:8
-#: templates/part.newevent.php:6
-msgid "Submit"
-msgstr ""
-
-#: templates/part.editcalendar.php:43
-msgid "Cancel"
-msgstr ""
-
-#: templates/part.editevent.php:1
-msgid "Edit an event"
-msgstr ""
-
-#: templates/part.editevent.php:10
-msgid "Export"
-msgstr ""
-
-#: templates/part.eventform.php:5
-msgid "Title of the Event"
-msgstr ""
-
-#: templates/part.eventform.php:11
-msgid "Category"
-msgstr ""
-
-#: templates/part.eventform.php:13
-msgid "Select category"
-msgstr ""
-
-#: templates/part.eventform.php:37
-msgid "All Day Event"
-msgstr ""
-
-#: templates/part.eventform.php:41
-msgid "From"
-msgstr ""
-
-#: templates/part.eventform.php:49
-msgid "To"
-msgstr ""
-
-#: templates/part.eventform.php:57
-msgid "Advanced options"
-msgstr ""
-
-#: templates/part.eventform.php:61
-msgid "Repeat"
-msgstr ""
-
-#: templates/part.eventform.php:68
-msgid "Advanced"
-msgstr ""
-
-#: templates/part.eventform.php:112
-msgid "Select weekdays"
-msgstr ""
-
-#: templates/part.eventform.php:125 templates/part.eventform.php:138
-msgid "Select days"
-msgstr ""
-
-#: templates/part.eventform.php:130
-msgid "and the events day of year."
-msgstr ""
-
-#: templates/part.eventform.php:143
-msgid "and the events day of month."
-msgstr ""
-
-#: templates/part.eventform.php:151
-msgid "Select months"
-msgstr ""
-
-#: templates/part.eventform.php:164
-msgid "Select weeks"
-msgstr ""
-
-#: templates/part.eventform.php:169
-msgid "and the events week of year."
-msgstr ""
-
-#: templates/part.eventform.php:175
-msgid "Interval"
-msgstr ""
-
-#: templates/part.eventform.php:181
-msgid "End"
-msgstr ""
-
-#: templates/part.eventform.php:193
-msgid "occurrences"
-msgstr ""
-
-#: templates/part.eventform.php:208
-msgid "Location"
-msgstr ""
-
-#: templates/part.eventform.php:210
-msgid "Location of the Event"
-msgstr ""
-
-#: templates/part.eventform.php:216
-msgid "Description"
-msgstr ""
-
-#: templates/part.eventform.php:218
-msgid "Description of the Event"
-msgstr ""
-
-#: templates/part.import.php:1
-msgid "Import a calendar file"
-msgstr ""
-
-#: templates/part.import.php:6
-msgid "Please choose the calendar"
-msgstr ""
-
-#: templates/part.import.php:10
-msgid "create a new calendar"
-msgstr ""
-
-#: templates/part.import.php:15
-msgid "Name of new calendar"
-msgstr ""
-
-#: templates/part.import.php:17
-msgid "Import"
-msgstr ""
-
-#: templates/part.import.php:20
-msgid "Importing calendar"
-msgstr ""
-
-#: templates/part.import.php:23
-msgid "Calendar imported successfully"
-msgstr ""
-
-#: templates/part.import.php:24
-msgid "Close Dialog"
-msgstr ""
-
-#: templates/part.newevent.php:1
-msgid "Create a new event"
-msgstr ""
-
-#: templates/settings.php:13
-msgid "Timezone"
-msgstr ""
-
-#: templates/settings.php:30
-msgid "Check always for changes of the timezone"
-msgstr ""
-
-#: templates/settings.php:32
-msgid "Timeformat"
-msgstr ""
-
-#: templates/settings.php:34
-msgid "24h"
-msgstr ""
-
-#: templates/settings.php:35
-msgid "12h"
-msgstr ""
-
-#: templates/settings.php:41
-msgid "Calendar CalDAV syncing address:"
-msgstr ""
-
-
diff --git a/l10n/de_DE/core.po b/l10n/de_DE/core.po
deleted file mode 100644
index 22a83603b4c118473d67ba60c27fb55dcbad7ea9..0000000000000000000000000000000000000000
--- a/l10n/de_DE/core.po
+++ /dev/null
@@ -1,170 +0,0 @@
-# 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://owncloud.shapado.com/\n"
-"POT-Creation-Date: 2012-01-24 00:25+0100\n"
-"PO-Revision-Date: 2011-07-25 16:05+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\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"
-
-#: lostpassword/index.php:24
-msgid "Owncloud password reset"
-msgstr ""
-
-#: lostpassword/templates/email.php:1
-msgid "Use the following link to reset your password: {link}"
-msgstr ""
-
-#: lostpassword/templates/lostpassword.php:3
-msgid "You will receive a link to reset your password via Email."
-msgstr ""
-
-#: lostpassword/templates/lostpassword.php:5
-msgid "Requested"
-msgstr ""
-
-#: lostpassword/templates/lostpassword.php:8
-msgid "Login failed!"
-msgstr ""
-
-#: lostpassword/templates/lostpassword.php:11 templates/installation.php:22
-#: templates/login.php:8
-msgid "Username"
-msgstr ""
-
-#: lostpassword/templates/lostpassword.php:14
-msgid "Request reset"
-msgstr ""
-
-#: lostpassword/templates/resetpassword.php:4
-msgid "Your password was reset"
-msgstr ""
-
-#: lostpassword/templates/resetpassword.php:5
-msgid "To login page"
-msgstr ""
-
-#: lostpassword/templates/resetpassword.php:8
-msgid "New password"
-msgstr ""
-
-#: lostpassword/templates/resetpassword.php:11
-msgid "Reset password"
-msgstr ""
-
-#: strings.php:5
-msgid "Personal"
-msgstr ""
-
-#: strings.php:6
-msgid "Users"
-msgstr ""
-
-#: strings.php:7
-msgid "Apps"
-msgstr ""
-
-#: strings.php:8
-msgid "Admin"
-msgstr ""
-
-#: strings.php:9
-msgid "Help"
-msgstr ""
-
-#: templates/404.php:12
-msgid "Cloud not found"
-msgstr ""
-
-#: templates/installation.php:20
-msgid "Create an <strong>admin account</strong>"
-msgstr ""
-
-#: templates/installation.php:26 templates/login.php:12
-msgid "Password"
-msgstr ""
-
-#: templates/installation.php:32
-msgid "Advanced"
-msgstr ""
-
-#: templates/installation.php:34
-msgid "Data folder"
-msgstr ""
-
-#: templates/installation.php:41
-msgid "Configure the database"
-msgstr ""
-
-#: templates/installation.php:46 templates/installation.php:57
-#: templates/installation.php:67
-msgid "will be used"
-msgstr ""
-
-#: templates/installation.php:79
-msgid "Database user"
-msgstr ""
-
-#: templates/installation.php:83
-msgid "Database password"
-msgstr ""
-
-#: templates/installation.php:87
-msgid "Database name"
-msgstr ""
-
-#: templates/installation.php:93
-msgid "Database host"
-msgstr ""
-
-#: templates/installation.php:98
-msgid "Finish setup"
-msgstr ""
-
-#: templates/layout.guest.php:35
-msgid "web services under your control"
-msgstr ""
-
-#: templates/layout.user.php:34
-msgid "Log out"
-msgstr ""
-
-#: templates/layout.user.php:46 templates/layout.user.php:47
-msgid "Settings"
-msgstr ""
-
-#: templates/login.php:5
-msgid "Lost your password?"
-msgstr ""
-
-#: templates/login.php:15
-msgid "remember"
-msgstr ""
-
-#: templates/login.php:16
-msgid "Log in"
-msgstr ""
-
-#: templates/logout.php:1
-msgid "You are logged out."
-msgstr ""
-
-#: templates/part.pagenavi.php:3
-msgid "prev"
-msgstr ""
-
-#: templates/part.pagenavi.php:20
-msgid "next"
-msgstr ""
-
-
diff --git a/l10n/de_DE/files.po b/l10n/de_DE/files.po
deleted file mode 100644
index b9201beb1d82beb8fcc57bd60f247816422f49a0..0000000000000000000000000000000000000000
--- a/l10n/de_DE/files.po
+++ /dev/null
@@ -1,108 +0,0 @@
-# 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://owncloud.shapado.com/\n"
-"POT-Creation-Date: 2012-01-24 00:25+0100\n"
-"PO-Revision-Date: 2011-08-13 02:19+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\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"
-
-#: ajax/upload.php:19
-msgid "There is no error, the file uploaded with success"
-msgstr ""
-
-#: ajax/upload.php:20
-msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini"
-msgstr ""
-
-#: ajax/upload.php:21
-msgid ""
-"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
-"the HTML form"
-msgstr ""
-
-#: ajax/upload.php:22
-msgid "The uploaded file was only partially uploaded"
-msgstr ""
-
-#: ajax/upload.php:23
-msgid "No file was uploaded"
-msgstr ""
-
-#: ajax/upload.php:24
-msgid "Missing a temporary folder"
-msgstr ""
-
-#: appinfo/app.php:8
-msgid "Files"
-msgstr ""
-
-#: templates/admin.php:5
-msgid "Maximum upload size"
-msgstr ""
-
-#: templates/index.php:7
-msgid "New"
-msgstr ""
-
-#: templates/index.php:10
-msgid "Text file"
-msgstr ""
-
-#: templates/index.php:11
-msgid "Folder"
-msgstr ""
-
-#: templates/index.php:12
-msgid "From the web"
-msgstr ""
-
-#: templates/index.php:22
-msgid "Upload"
-msgstr ""
-
-#: templates/index.php:35
-msgid "Nothing in here. Upload something!"
-msgstr ""
-
-#: templates/index.php:43
-msgid "Name"
-msgstr ""
-
-#: templates/index.php:45
-msgid "Download"
-msgstr ""
-
-#: templates/index.php:49
-msgid "Size"
-msgstr ""
-
-#: templates/index.php:50
-msgid "Modified"
-msgstr ""
-
-#: templates/index.php:50
-msgid "Delete"
-msgstr ""
-
-#: templates/index.php:58
-msgid "Upload too large"
-msgstr ""
-
-#: templates/index.php:60
-msgid ""
-"The files you are trying to upload exceed the maximum size for file uploads "
-"on this server."
-msgstr ""
-
-
diff --git a/l10n/de_DE/media.po b/l10n/de_DE/media.po
deleted file mode 100644
index 0e994abde234f07ab799bdb7a9eb20bda1dfb350..0000000000000000000000000000000000000000
--- a/l10n/de_DE/media.po
+++ /dev/null
@@ -1,64 +0,0 @@
-# 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://owncloud.shapado.com/\n"
-"POT-Creation-Date: 2012-01-24 00:25+0100\n"
-"PO-Revision-Date: 2011-08-13 02:19+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\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"
-
-#: appinfo/app.php:32 templates/player.php:9
-msgid "Music"
-msgstr ""
-
-#: templates/music.php:3 templates/player.php:13
-msgid "Play"
-msgstr ""
-
-#: templates/music.php:4 templates/music.php:26 templates/player.php:14
-msgid "Pause"
-msgstr ""
-
-#: templates/music.php:5
-msgid "Previous"
-msgstr ""
-
-#: templates/music.php:6 templates/player.php:15
-msgid "Next"
-msgstr ""
-
-#: templates/music.php:7
-msgid "Mute"
-msgstr ""
-
-#: templates/music.php:8
-msgid "Unmute"
-msgstr ""
-
-#: templates/music.php:25
-msgid "Rescan Collection"
-msgstr ""
-
-#: templates/music.php:37
-msgid "Artist"
-msgstr ""
-
-#: templates/music.php:38
-msgid "Album"
-msgstr ""
-
-#: templates/music.php:39
-msgid "Title"
-msgstr ""
-
-
diff --git a/l10n/de_DE/settings.po b/l10n/de_DE/settings.po
deleted file mode 100644
index 53aba4cebaf9a69a0c248da396fba4571a880bb4..0000000000000000000000000000000000000000
--- a/l10n/de_DE/settings.po
+++ /dev/null
@@ -1,156 +0,0 @@
-# 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://owncloud.shapado.com/\n"
-"POT-Creation-Date: 2012-01-24 00:25+0100\n"
-"PO-Revision-Date: 2011-07-25 16:05+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\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"
-
-#: ajax/lostpassword.php:14
-msgid "email Changed"
-msgstr ""
-
-#: ajax/lostpassword.php:16 ajax/openid.php:17 ajax/setlanguage.php:16
-msgid "Invalid request"
-msgstr ""
-
-#: ajax/openid.php:15
-msgid "OpenID Changed"
-msgstr ""
-
-#: ajax/setlanguage.php:14
-msgid "Language changed"
-msgstr ""
-
-#: personal.php:36 personal.php:37
-msgid "__language_name__"
-msgstr ""
-
-#: templates/admin.php:13
-msgid "Log level"
-msgstr ""
-
-#: templates/apps.php:8
-msgid "Add your application"
-msgstr ""
-
-#: templates/apps.php:21
-msgid "Select an App"
-msgstr ""
-
-#: templates/apps.php:23
-msgid "-licensed"
-msgstr ""
-
-#: templates/apps.php:23
-msgid "by"
-msgstr ""
-
-#: templates/help.php:8
-msgid "Ask a question"
-msgstr ""
-
-#: templates/help.php:20
-msgid "Problems connecting to help database."
-msgstr ""
-
-#: templates/help.php:21
-msgid "Go there manually."
-msgstr ""
-
-#: templates/help.php:29
-msgid "Answer"
-msgstr ""
-
-#: templates/personal.php:8
-msgid "You use"
-msgstr ""
-
-#: templates/personal.php:8
-msgid "of the available"
-msgstr ""
-
-#: templates/personal.php:13
-msgid "Your password got changed"
-msgstr ""
-
-#: templates/personal.php:14
-msgid "Unable to change your password"
-msgstr ""
-
-#: templates/personal.php:15
-msgid "Current password"
-msgstr ""
-
-#: templates/personal.php:16
-msgid "New password"
-msgstr ""
-
-#: templates/personal.php:17
-msgid "show"
-msgstr ""
-
-#: templates/personal.php:18
-msgid "Change password"
-msgstr ""
-
-#: templates/personal.php:24
-msgid "Email"
-msgstr ""
-
-#: templates/personal.php:25
-msgid "Your email address"
-msgstr ""
-
-#: templates/personal.php:26
-msgid "Fill in an email address to enable password recovery"
-msgstr ""
-
-#: templates/personal.php:32 templates/personal.php:33
-msgid "Language"
-msgstr ""
-
-#: templates/personal.php:38
-msgid "Help translate"
-msgstr ""
-
-#: templates/personal.php:45
-msgid "use this address to connect to your ownCloud in your file manager"
-msgstr ""
-
-#: templates/users.php:15 templates/users.php:30
-msgid "Name"
-msgstr ""
-
-#: templates/users.php:16 templates/users.php:31
-msgid "Password"
-msgstr ""
-
-#: templates/users.php:17 templates/users.php:32 templates/users.php:46
-msgid "Groups"
-msgstr ""
-
-#: templates/users.php:23
-msgid "Create"
-msgstr ""
-
-#: templates/users.php:33
-msgid "Quota"
-msgstr ""
-
-#: templates/users.php:58
-msgid "Delete"
-msgstr ""
-
-
diff --git a/l10n/el/core.po b/l10n/el/core.po
index ffd90d39f23aa43f2abe5e24cee2e9707426da87..0a9a6e0388fa7378546f015fe0cd6cb38fdd94ec 100644
--- a/l10n/el/core.po
+++ b/l10n/el/core.po
@@ -11,15 +11,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:01+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -33,59 +33,55 @@ msgstr "Δεν έχετε να προστέσθέσεται μια κα"
 msgid "This category already exists: "
 msgstr "Αυτή η κατηγορία υπάρχει ήδη"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Ρυθμίσεις"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Ιανουάριος"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Φεβρουάριος"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Μάρτιος"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Απρίλιος"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Μάϊος"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Ιούνιος"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Ιούλιος"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Αύγουστος"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Σεπτέμβριος"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Οκτώβριος"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Νοέμβριος"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Δεκέμβριος"
 
@@ -117,7 +113,7 @@ msgstr "Σφάλμα"
 msgid "ownCloud password reset"
 msgstr "Επαναφορά κωδικού ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Χρησιμοποιήστε τον ακόλουθο σύνδεσμο για να επανεκδόσετε τον κωδικό: {link}"
 
@@ -247,7 +243,7 @@ msgstr "Ολοκλήρωση εγκατάστασης"
 msgid "web services under your control"
 msgstr "Υπηρεσίες web υπό τον έλεγχό σας"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Αποσύνδεση"
 
diff --git a/l10n/el/files.po b/l10n/el/files.po
index de2b3f80a1d59cfbbb7d0af57a63bfe747589d0a..0daee77ea7d82b18ba576d50d949a1dba424bde6 100644
--- a/l10n/el/files.po
+++ b/l10n/el/files.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -54,83 +54,100 @@ msgstr "Η εγγραφή στο δίσκο απέτυχε"
 msgid "Files"
 msgstr "Αρχεία"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Διαγραφή"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "υπάρχει ήδη"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "αντικατέστησε"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "ακύρωση"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "αντικαταστάθηκε"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "αναίρεση"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "με"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "αναίρεση"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "διαγράφηκε"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "παραγωγή αρχείου ZIP, ίσως διαρκέσει αρκετά."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "Αδυναμία στην μεταφόρτωση του αρχείου σας αφού είναι φάκελος ή έχει 0 bytes"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Σφάλμα Μεταφόρτωσης"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Εν αναμονή"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Η μεταφόρτωση ακυρώθηκε."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Μη έγκυρο όνομα, το '/' δεν επιτρέπεται."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Μέγεθος"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Τροποποιήθηκε"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "φάκελος"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "φάκελοι"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "αρχείο"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "αρχεία"
 
@@ -162,6 +179,10 @@ msgstr "0 για απεριόριστο"
 msgid "Maximum input size for ZIP files"
 msgstr "Μέγιστο μέγεθος για αρχεία ZIP"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Νέο"
@@ -186,36 +207,36 @@ msgstr "Μεταφόρτωση"
 msgid "Cancel upload"
 msgstr "Ακύρωση ανεβάσματος"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Δεν υπάρχει τίποτα εδώ. Ανέβασε κάτι!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Όνομα"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Διαμοίρασε"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Λήψη"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Πολύ μεγάλο το αρχείο προς μεταφόρτωση"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "Τα αρχεία που προσπαθείτε να ανεβάσετε υπερβαίνουν το μέγιστο μέγεθος μεταφόρτωσης αρχείων σε αυτόν το διακομιστή."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Τα αρχεία ανιχνεύονται, παρακαλώ περιμένετε"
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Τρέχουσα αναζήτηση "
diff --git a/l10n/el/files_sharing.po b/l10n/el/files_sharing.po
index 32f11e9f2c8353a4e696c1988218cac7d770aba0..fafebf49441f6bf441393cee4a28509fe4d8689d 100644
--- a/l10n/el/files_sharing.po
+++ b/l10n/el/files_sharing.po
@@ -3,14 +3,15 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Dimitris M. <monopatis@gmail.com>, 2012.
 # Nisok Kosin <nikos.efthimiou@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 08:57+0000\n"
-"Last-Translator: Nisok Kosin <nikos.efthimiou@gmail.com>\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:04+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -18,18 +19,22 @@ msgstr ""
 "Language: el\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Μέγεθος"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Συνθηματικό"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Τροποποιήθηκε"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Καταχώρηση"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Διαγραφή όλων"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr ""
+
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Διαγραφή"
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr ""
diff --git a/l10n/el/files_versions.po b/l10n/el/files_versions.po
index 134edc89db3db7402ab4a5432148ec11554c4246..df855bfec1280abbeed2f3df1a14ddb467e06155 100644
--- a/l10n/el/files_versions.po
+++ b/l10n/el/files_versions.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 18:26+0000\n"
-"Last-Translator: Nisok Kosin <nikos.efthimiou@gmail.com>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -18,10 +18,18 @@ msgstr ""
 "Language: el\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Λήξη όλων των εκδόσεων"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Ενεργοποίηση παρακολούθησης εκδόσεων αρχείων"
diff --git a/l10n/el/lib.po b/l10n/el/lib.po
index da331c0cb8089e4870ab4de3fe86da7b2ffa9f07..2a3ab249c2539b422c13f88b337c862ee626729b 100644
--- a/l10n/el/lib.po
+++ b/l10n/el/lib.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-29 02:04+0200\n"
-"PO-Revision-Date: 2012-07-28 11:45+0000\n"
-"Last-Translator: Efstathios Iosifidis <diamond_gr@freemail.gr>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -18,43 +18,43 @@ msgstr ""
 "Language: el\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr "Βοήθεια"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr "Προσωπικά"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr "Ρυθμίσεις"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr "Χρήστες"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr "Εφαρμογές"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr "Διαχειριστής"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "Η λήψη ZIP απενεργοποιήθηκε."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Τα αρχεία πρέπει να ληφθούν ένα-ένα."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Πίσω στα Αρχεία"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "Τα επιλεγμένα αρχεία είναι μεγάλα ώστε να δημιουργηθεί αρχείο zip."
 
@@ -111,3 +111,16 @@ msgstr "τον προηγούμενο χρόνο"
 #: template.php:97
 msgid "years ago"
 msgstr "χρόνια πριν"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/el/settings.po b/l10n/el/settings.po
index 6d7243e05b9a820082173acfeab618a62611fed4..bbec7abd9bff1cde3583f05bef1464e1e619a9d4 100644
--- a/l10n/el/settings.po
+++ b/l10n/el/settings.po
@@ -14,20 +14,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 08:43+0000\n"
-"Last-Translator: Nisok Kosin <nikos.efthimiou@gmail.com>\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Σφάλμα στην φόρτωση της λίστας από το App Store"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Σφάλμα πιστοποίησης"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Το Email αποθηκεύτηκε "
@@ -44,14 +57,28 @@ msgstr "Το OpenID άλλαξε"
 msgid "Invalid request"
 msgstr "Μη έγκυρο αίτημα"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Σφάλμα πιστοποίησης"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Η γλώσσα άλλαξε"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Σφάλμα"
@@ -76,30 +103,85 @@ msgstr "__όνομα_γλώσσας__"
 msgid "Security Warning"
 msgstr "Προειδοποίηση Ασφαλείας"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "Εκτέλεση μίας εργασίας με κάθε σελίδα που φορτώνεται"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "Το cron.php έχει καταχωρηθεί σε μια webcron υπηρεσία"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "Χρήση της υπηρεσίας cron του συστήματος"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Αρχείο καταγραφής"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Περισσότερο"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Πρόσθεσε τη δικιά σου εφαρμογή "
@@ -113,34 +195,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Η σελίδα εφαρμογών στο apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-με άδεια"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "από"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Τεκμηρίωση"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Διαχείριση μεγάλων αρχείων"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Ρωτήστε μια ερώτηση"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Προβλήματα κατά τη σύνδεση με τη βάση δεδομένων βοήθειας."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Χειροκίνητη μετάβαση."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Απάντηση"
 
diff --git a/l10n/el/user_ldap.po b/l10n/el/user_ldap.po
index cfea140f22123d62e26292f806d5642f9b54cee6..0509e10da4d97b0f3081f85e5bfd3147592a9a1f 100644
--- a/l10n/el/user_ldap.po
+++ b/l10n/el/user_ldap.po
@@ -4,19 +4,20 @@
 # 
 # Translators:
 # Efstathios Iosifidis <diamond_gr@freemail.gr>, 2012.
+# Marios Bekatoros <>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 13:38+0000\n"
-"Last-Translator: Efstathios Iosifidis <diamond_gr@freemail.gr>\n"
+"POT-Creation-Date: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-09-07 07:17+0000\n"
+"Last-Translator: Marios Bekatoros <>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: templates/settings.php:8
 msgid "Host"
@@ -29,7 +30,7 @@ msgstr ""
 
 #: templates/settings.php:9
 msgid "Base DN"
-msgstr ""
+msgstr "Base DN"
 
 #: templates/settings.php:9
 msgid "You can specify Base DN for users and groups in the Advanced tab"
@@ -37,7 +38,7 @@ msgstr ""
 
 #: templates/settings.php:10
 msgid "User DN"
-msgstr ""
+msgstr "User DN"
 
 #: templates/settings.php:10
 msgid ""
@@ -56,7 +57,7 @@ msgstr ""
 
 #: templates/settings.php:12
 msgid "User Login Filter"
-msgstr ""
+msgstr "User Login Filter"
 
 #: templates/settings.php:12
 #, php-format
@@ -72,7 +73,7 @@ msgstr ""
 
 #: templates/settings.php:13
 msgid "User List Filter"
-msgstr ""
+msgstr "User List Filter"
 
 #: templates/settings.php:13
 msgid "Defines the filter to apply, when retrieving users."
@@ -84,7 +85,7 @@ msgstr ""
 
 #: templates/settings.php:14
 msgid "Group Filter"
-msgstr ""
+msgstr "Group Filter"
 
 #: templates/settings.php:14
 msgid "Defines the filter to apply, when retrieving groups."
@@ -100,19 +101,19 @@ msgstr "Θύρα"
 
 #: templates/settings.php:18
 msgid "Base User Tree"
-msgstr ""
+msgstr "Base User Tree"
 
 #: templates/settings.php:19
 msgid "Base Group Tree"
-msgstr ""
+msgstr "Base Group Tree"
 
 #: templates/settings.php:20
 msgid "Group-Member association"
-msgstr ""
+msgstr "Group-Member association"
 
 #: templates/settings.php:21
 msgid "Use TLS"
-msgstr ""
+msgstr "Χρήση TLS"
 
 #: templates/settings.php:21
 msgid "Do not use it for SSL connections, it will fail."
@@ -138,7 +139,7 @@ msgstr ""
 
 #: templates/settings.php:24
 msgid "User Display Name Field"
-msgstr ""
+msgstr "User Display Name Field"
 
 #: templates/settings.php:24
 msgid "The LDAP attribute to use to generate the user`s ownCloud name."
@@ -146,7 +147,7 @@ msgstr ""
 
 #: templates/settings.php:25
 msgid "Group Display Name Field"
-msgstr ""
+msgstr "Group Display Name Field"
 
 #: templates/settings.php:25
 msgid "The LDAP attribute to use to generate the groups`s ownCloud name."
@@ -160,6 +161,12 @@ msgstr "σε bytes"
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr "Βοήθεια"
diff --git a/l10n/eo/core.po b/l10n/eo/core.po
index d870802209261b9f7b33a6bfa04561ec2e8afe2b..5af54675c7971a85ef28bbc60e79c03ad890f0b8 100644
--- a/l10n/eo/core.po
+++ b/l10n/eo/core.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 21:41+0000\n"
+"Last-Translator: Mariano <mstreet@kde.org.ar>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -32,59 +32,55 @@ msgstr "Ĉu neniu kategorio estas aldonota?"
 msgid "This category already exists: "
 msgstr "Ĉi tiu kategorio jam ekzistas: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:214 templates/layout.user.php:54 templates/layout.user.php:55
 msgid "Settings"
 msgstr "Agordo"
 
-#: js/js.js:575
+#: js/js.js:599
 msgid "January"
 msgstr "Januaro"
 
-#: js/js.js:575
+#: js/js.js:599
 msgid "February"
 msgstr "Februaro"
 
-#: js/js.js:575
+#: js/js.js:599
 msgid "March"
 msgstr "Marto"
 
-#: js/js.js:575
+#: js/js.js:599
 msgid "April"
 msgstr "Aprilo"
 
-#: js/js.js:575
+#: js/js.js:599
 msgid "May"
 msgstr "Majo"
 
-#: js/js.js:575
+#: js/js.js:599
 msgid "June"
 msgstr "Junio"
 
-#: js/js.js:576
+#: js/js.js:600
 msgid "July"
 msgstr "Julio"
 
-#: js/js.js:576
+#: js/js.js:600
 msgid "August"
 msgstr "Aŭgusto"
 
-#: js/js.js:576
+#: js/js.js:600
 msgid "September"
 msgstr "Septembro"
 
-#: js/js.js:576
+#: js/js.js:600
 msgid "October"
 msgstr "Oktobro"
 
-#: js/js.js:576
+#: js/js.js:600
 msgid "November"
 msgstr "Novembro"
 
-#: js/js.js:576
+#: js/js.js:600
 msgid "December"
 msgstr "Decembro"
 
@@ -116,7 +112,7 @@ msgstr "Eraro"
 msgid "ownCloud password reset"
 msgstr "La pasvorto de ownCloud restariĝis."
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Uzu la jenan ligilon por restarigi vian pasvorton: {link}"
 
@@ -232,7 +228,7 @@ msgstr "Datumbaza nomo"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Datumbaza tabelospaco"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -242,11 +238,11 @@ msgstr "Datumbaza gastigo"
 msgid "Finish setup"
 msgstr "Fini la instalon"
 
-#: templates/layout.guest.php:42
+#: templates/layout.guest.php:36
 msgid "web services under your control"
 msgstr "TTT-servoj sub via kontrolo"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:39
 msgid "Log out"
 msgstr "Elsaluti"
 
diff --git a/l10n/eo/files.po b/l10n/eo/files.po
index cc7ffcd01a2b4d6bbafeaeb4a4be33355fb19336..d62532d142c55fe4c649ace5a2aa18db9cb78ebf 100644
--- a/l10n/eo/files.po
+++ b/l10n/eo/files.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 21:57+0000\n"
+"Last-Translator: Mariano <mstreet@kde.org.ar>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +53,100 @@ msgstr "Malsukcesis skribo al disko"
 msgid "Files"
 msgstr "Dosieroj"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Malkunhavigi"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Forigi"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "jam ekzistas"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "anstataŭigi"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "sugesti nomon"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "nuligi"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "anstataŭigita"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "malfari"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "kun"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "malfari"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "malkunhavigita"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "forigita"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "generanta ZIP-dosiero, ĝi povas daŭri iom da tempo"
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Alŝuta eraro"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Traktotaj"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "La alŝuto nuliĝis."
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Nevalida nomo, “/” ne estas permesata."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Grando"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Modifita"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "dosierujo"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "dosierujoj"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "dosiero"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "dosieroj"
 
@@ -161,6 +178,10 @@ msgstr "0 signifas senlime"
 msgid "Maximum input size for ZIP files"
 msgstr "Maksimuma enirgrando por ZIP-dosieroj"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Konservi"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nova"
@@ -185,36 +206,36 @@ msgstr "Alŝuti"
 msgid "Cancel upload"
 msgstr "Nuligi alŝuton"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Nenio estas ĉi tie. Alŝutu ion!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nomo"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Kunhavigi"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Elŝuti"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Elŝuto tro larĝa"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Dosieroj estas skanataj, bonvolu atendi."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Nuna skano"
diff --git a/l10n/eo/files_sharing.po b/l10n/eo/files_sharing.po
index f1afe868724046be2c6495856cfda0f990af0233..633cd4eca82d5519aefb65276ea56628cc22a3e8 100644
--- a/l10n/eo/files_sharing.po
+++ b/l10n/eo/files_sharing.po
@@ -8,28 +8,32 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 21:35+0000\n"
+"Last-Translator: Mariano <mstreet@kde.org.ar>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr ""
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Pasvorto"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr ""
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Sendi"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr ""
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Elŝuti"
+
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Ne haveblas antaŭvido por"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Forigi"
+#: templates/public.php:25
+msgid "web services under your control"
+msgstr "TTT-servoj regataj de vi"
diff --git a/l10n/eo/files_versions.po b/l10n/eo/files_versions.po
index 23851036eaa77ff677dafc0d98ee61064b47fbba..75c78ded12a2a4fc7b76bca3c88493b6db6b49dd 100644
--- a/l10n/eo/files_versions.po
+++ b/l10n/eo/files_versions.po
@@ -8,20 +8,28 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-16 02:04+0200\n"
-"PO-Revision-Date: 2012-08-15 20:20+0000\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 21:36+0000\n"
 "Last-Translator: Mariano <mstreet@kde.org.ar>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Eksvalidigi ĉiujn eldonojn"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Eldonoj"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Ĉi tio forigos ĉiujn estantajn sekurkopiajn eldonojn de viaj dosieroj"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Kapabligi dosiereldonkontrolon"
diff --git a/l10n/eo/lib.po b/l10n/eo/lib.po
index 83d78e5ea55df2ecf0d250fc741baf2e95adb24e..5e677a604558e5b2b00f87606b837d926a462e78 100644
--- a/l10n/eo/lib.po
+++ b/l10n/eo/lib.po
@@ -8,53 +8,53 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-04 02:02+0200\n"
-"PO-Revision-Date: 2012-08-03 22:37+0000\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 21:50+0000\n"
 "Last-Translator: Mariano <mstreet@kde.org.ar>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: app.php:287
+#: app.php:285
 msgid "Help"
 msgstr "Helpo"
 
-#: app.php:294
+#: app.php:292
 msgid "Personal"
 msgstr "Persona"
 
-#: app.php:299
+#: app.php:297
 msgid "Settings"
 msgstr "Agordo"
 
-#: app.php:304
+#: app.php:302
 msgid "Users"
 msgstr "Uzantoj"
 
-#: app.php:311
+#: app.php:309
 msgid "Apps"
 msgstr "Aplikaĵoj"
 
-#: app.php:313
+#: app.php:311
 msgid "Admin"
-msgstr ""
+msgstr "Administranto"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "ZIP-elŝuto estas malkapabligita."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Dosieroj devas elŝutiĝi unuope."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Reen al la dosieroj"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "La elektitaj dosieroj tro grandas por genero de ZIP-dosiero."
 
@@ -70,44 +70,57 @@ msgstr "Aŭtentiga eraro"
 msgid "Token expired. Please reload page."
 msgstr "Ĵetono eksvalidiĝis. Bonvolu reŝargi la paĝon."
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
 msgstr "sekundojn antaŭe"
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
 msgstr "antaŭ 1 minuto"
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
 msgstr "antaŭ %d minutoj"
 
-#: template.php:91
+#: template.php:92
 msgid "today"
 msgstr "hodiaŭ"
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
 msgstr "hieraŭ"
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
 msgstr "antaŭ %d tagoj"
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
 msgstr "lasta monato"
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
 msgstr "monatojn antaŭe"
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
 msgstr "lasta jaro"
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
 msgstr "jarojn antaŭe"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s haveblas. Ekhavu <a href=\"%s\">pli da informo</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "ĝisdata"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "ĝisdateckontrolo estas malkapabligita"
diff --git a/l10n/eo/settings.po b/l10n/eo/settings.po
index 15e0d6d85ac004dff2d528bd69fe45fc4553edd4..d51e0c54239002ceb9c9886f00593499d02ce8d6 100644
--- a/l10n/eo/settings.po
+++ b/l10n/eo/settings.po
@@ -9,20 +9,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-19 02:02+0200\n"
-"PO-Revision-Date: 2012-08-18 17:13+0000\n"
-"Last-Translator: Mariano <mstreet@kde.org.ar>\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Ne eblis ŝargi liston el aplikaĵovendejo"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Aŭtentiga eraro"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "La retpoŝtadreso konserviĝis"
@@ -39,14 +52,28 @@ msgstr "La agordo de OpenID estas ŝanĝita"
 msgid "Invalid request"
 msgstr "Nevalida peto"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Aŭtentiga eraro"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "La lingvo estas ŝanĝita"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Eraro"
@@ -71,30 +98,85 @@ msgstr "Esperanto"
 msgid "Security Warning"
 msgstr "Sekureca averto"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "lanĉi unu taskon po ĉiu paĝo ŝargita"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php estas registrita kiel webcron-servilo"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "uzi la cron-servon de la sistemo"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Protokolo"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Pli"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Aldonu vian aplikaĵon"
@@ -108,34 +190,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Vidu la paĝon pri aplikaĵoj ĉe apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-permesila"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "de"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentaro"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Administrante grandajn dosierojn"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Faru demandon"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problemoj okazis dum konektado al la helpa datumbazo."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Iri tien mane."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Respondi"
 
diff --git a/l10n/eo/user_ldap.po b/l10n/eo/user_ldap.po
index d83f307fe23b6b5b818258e543cfa812f7e5e20b..ff8480473e14d7269f4e859a363497db04bf900f 100644
--- a/l10n/eo/user_ldap.po
+++ b/l10n/eo/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: 2012-08-19 02:02+0200\n"
-"PO-Revision-Date: 2012-08-18 14:28+0000\n"
+"POT-Creation-Date: 2012-08-30 02:02+0200\n"
+"PO-Revision-Date: 2012-08-29 20:31+0000\n"
 "Last-Translator: Mariano <mstreet@kde.org.ar>\n"
 "Language-Team: Esperanto (http://www.transifex.com/projects/p/owncloud/language/eo/)\n"
 "MIME-Version: 1.0\n"
@@ -108,7 +108,7 @@ msgstr "Baza gruparbo"
 
 #: templates/settings.php:20
 msgid "Group-Member association"
-msgstr ""
+msgstr "Asocio de grupo kaj membro"
 
 #: templates/settings.php:21
 msgid "Use TLS"
@@ -160,6 +160,12 @@ msgstr "duumoke"
 msgid "in seconds. A change empties the cache."
 msgstr "sekunde. Ajna ŝanĝo malplenigas la kaŝmemoron."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+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:32
 msgid "Help"
 msgstr "Helpo"
diff --git a/l10n/es/core.po b/l10n/es/core.po
index 339d3e2d62c5fbcbf69e3b9c1de99f23db2354f8..efe18cd7f0ab8e1cf82c667d70c7feacab15f026 100644
--- a/l10n/es/core.po
+++ b/l10n/es/core.po
@@ -9,20 +9,21 @@
 # Raul Fernandez Garcia <raulfg3@gmail.com>, 2012.
 #   <rodrigo.calvo@gmail.com>, 2012.
 #   <rom1dep@gmail.com>, 2011.
+# Rubén Trujillo <rubentrf@gmail.com>, 2012.
 #   <sergioballesterossolanas@gmail.com>, 2011, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:01+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -36,59 +37,55 @@ msgstr "¿Ninguna categoría para añadir?"
 msgid "This category already exists: "
 msgstr "Esta categoría ya existe: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Ajustes"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Enero"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Febrero"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Marzo"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Abril"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Mayo"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Junio"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Julio"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Agosto"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Septiembre"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Octubre"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Noviembre"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Diciembre"
 
@@ -120,7 +117,7 @@ msgstr "Fallo"
 msgid "ownCloud password reset"
 msgstr "Reiniciar contraseña de ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Utiliza el siguiente enlace para restablecer tu contraseña: {link}"
 
@@ -236,7 +233,7 @@ msgstr "Nombre de la base de datos"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Espacio de tablas de la base de datos"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -250,7 +247,7 @@ msgstr "Completar la instalación"
 msgid "web services under your control"
 msgstr "servicios web bajo tu control"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Salir"
 
diff --git a/l10n/es/files.po b/l10n/es/files.po
index d7855d52e08942d156f9fe66c638f23249e4defd..a50f0e53fd3a6d7bb79a8dcb6690c96b71fc3c63 100644
--- a/l10n/es/files.po
+++ b/l10n/es/files.po
@@ -5,20 +5,21 @@
 # Translators:
 # Javier Llorente <javier@opensuse.org>, 2012.
 #   <juanma@kde.org.ar>, 2012.
+# Rubén Trujillo <rubentrf@gmail.com>, 2012.
 #   <sergioballesterossolanas@gmail.com>, 2011, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-10 02:02+0200\n"
+"PO-Revision-Date: 2012-09-09 03:24+0000\n"
+"Last-Translator: juanman <juanma@kde.org.ar>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -54,83 +55,100 @@ msgstr "La escritura en disco ha fallado"
 msgid "Files"
 msgstr "Archivos"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Dejar de compartir"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Eliminado"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "ya existe"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "reemplazar"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "sugerir nombre"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "cancelar"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "reemplazado"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "deshacer"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "con"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "deshacer"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "no compartido"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "borrado"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "generando un fichero ZIP, puede llevar un tiempo."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Error al subir el archivo"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Pendiente"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Subida cancelada."
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Nombre no válido, '/' no está permitido."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Tamaño"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Modificado"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "carpeta"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "carpetas"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "archivo"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "archivos"
 
@@ -162,6 +180,10 @@ msgstr "0 es ilimitado"
 msgid "Maximum input size for ZIP files"
 msgstr "Tamaño máximo para archivos ZIP de entrada"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Guardar"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nuevo"
@@ -186,36 +208,36 @@ msgstr "Subir"
 msgid "Cancel upload"
 msgstr "Cancelar subida"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Aquí no hay nada. ¡Sube algo!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nombre"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Compartir"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Descargar"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "El archivo es demasiado grande"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Se están escaneando los archivos, por favor espere."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Escaneo actual"
diff --git a/l10n/es/files_external.po b/l10n/es/files_external.po
index 2a26b728a9360d1bebd59f8ed4e70ea239a28520..b8da8c7725149df53d464c50661296a5b36980a8 100644
--- a/l10n/es/files_external.po
+++ b/l10n/es/files_external.po
@@ -4,13 +4,14 @@
 # 
 # Translators:
 # Javier Llorente <javier@opensuse.org>, 2012.
+#   <pedro.navia@etecsa.cu>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 09:26+0000\n"
-"Last-Translator: Javier Llorente <javier@opensuse.org>\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-30 20:26+0000\n"
+"Last-Translator: pedro.navia <pedro.navia@etecsa.cu>\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"
@@ -24,7 +25,7 @@ msgstr "Almacenamiento externo"
 
 #: templates/settings.php:7 templates/settings.php:19
 msgid "Mount point"
-msgstr ""
+msgstr "Punto de montaje"
 
 #: templates/settings.php:8
 msgid "Backend"
@@ -68,16 +69,16 @@ msgstr "Eliiminar"
 
 #: templates/settings.php:88
 msgid "SSL root certificates"
-msgstr ""
+msgstr "Raíz de certificados SSL  "
 
 #: templates/settings.php:102
 msgid "Import Root Certificate"
-msgstr ""
+msgstr "Importar certificado raíz"
 
 #: templates/settings.php:108
 msgid "Enable User External Storage"
-msgstr ""
+msgstr "Habilitar almacenamiento de usuario externo"
 
 #: templates/settings.php:109
 msgid "Allow users to mount their own external storage"
-msgstr ""
+msgstr "Permitir a los usuarios montar su propio almacenamiento externo"
diff --git a/l10n/es/files_sharing.po b/l10n/es/files_sharing.po
index e53147b10f296ca0c0b1504d29c999b94051fe7d..d6c7ffea13d2ec7ea117cd34f0eedd05ec8c8c9e 100644
--- a/l10n/es/files_sharing.po
+++ b/l10n/es/files_sharing.po
@@ -4,13 +4,15 @@
 # 
 # Translators:
 # Javier Llorente <javier@opensuse.org>, 2012.
+#   <pedro.navia@etecsa.cu>, 2012.
+# Rubén Trujillo <rubentrf@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 09:11+0000\n"
-"Last-Translator: Javier Llorente <javier@opensuse.org>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-08-31 22:41+0000\n"
+"Last-Translator: Rubén Trujillo <rubentrf@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"
@@ -18,18 +20,22 @@ msgstr ""
 "Language: es\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Tamaño"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Contraseña"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Modificado"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Enviar"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Eliminar todo"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Descargar"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Eliminar"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "No hay vista previa disponible para"
+
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr "Servicios web bajo su control"
diff --git a/l10n/es/files_versions.po b/l10n/es/files_versions.po
index 544b3a53b0490c38bf6671ee20bf56d6f504a6e3..05f6814b37ae8d6ced9a0cf60e9e318dcb955a4b 100644
--- a/l10n/es/files_versions.po
+++ b/l10n/es/files_versions.po
@@ -5,13 +5,14 @@
 # Translators:
 # Javier Llorente <javier@opensuse.org>, 2012.
 #   <juanma@kde.org.ar>, 2012.
+# Rubén Trujillo <rubentrf@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-27 05:54+0000\n"
-"Last-Translator: juanman <juanma@kde.org.ar>\n"
+"POT-Creation-Date: 2012-09-02 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 18:22+0000\n"
+"Last-Translator: Rubén Trujillo <rubentrf@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"
@@ -19,10 +20,18 @@ msgstr ""
 "Language: es\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Expirar todas las versiones"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Versiones"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Esto eliminará todas las versiones guardadas como copia de seguridad de tus archivos"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Habilitar versionamiento de archivos"
diff --git a/l10n/es/lib.po b/l10n/es/lib.po
index a8931cbabc67caae33944bfde23d0a4d81f055cd..a98b88c383d5fc51fdb690b9185fbdf8205e166d 100644
--- a/l10n/es/lib.po
+++ b/l10n/es/lib.po
@@ -4,13 +4,14 @@
 # 
 # Translators:
 #   <juanma@kde.org.ar>, 2012.
+# Rubén Trujillo <rubentrf@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-31 22:53+0200\n"
-"PO-Revision-Date: 2012-07-31 05:46+0000\n"
-"Last-Translator: juanman <juanma@kde.org.ar>\n"
+"POT-Creation-Date: 2012-09-02 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 18:23+0000\n"
+"Last-Translator: Rubén Trujillo <rubentrf@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"
@@ -18,43 +19,43 @@ msgstr ""
 "Language: es\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr "Ayuda"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr "Personal"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr "Ajustes"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr "Usuarios"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr "Aplicaciones"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr "Administración"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "La descarga en ZIP está desactivada."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Los archivos deben ser descargados uno por uno."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Volver a Archivos"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "Los archivos seleccionados son demasiado grandes para generar el archivo zip."
 
@@ -111,3 +112,16 @@ msgstr "este año"
 #: template.php:97
 msgid "years ago"
 msgstr "hace años"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s está disponible. Obtén <a href=\"%s\">más información</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "actualizado"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "comprobar actualizaciones está desactivado"
diff --git a/l10n/es/settings.po b/l10n/es/settings.po
index 4fadce58dcce5ffa3e941786baec5ad5a4c189b5..8d1da62428c8befd92df4c65d1eb06f8b65d502f 100644
--- a/l10n/es/settings.po
+++ b/l10n/es/settings.po
@@ -5,30 +5,44 @@
 # Translators:
 #   <davidlopez.david@gmail.com>, 2012.
 # Javier Llorente <javier@opensuse.org>, 2012.
-#   <juanma@kde.org.ar>, 2011, 2012.
+#   <juanma@kde.org.ar>, 2011-2012.
 #   <monty_2731@hotmail.com>, 2011.
 # oSiNaReF  <>, 2012.
 #   <rodrigo.calvo@gmail.com>, 2012.
 #   <rom1dep@gmail.com>, 2011.
+# Rubén Trujillo <rubentrf@gmail.com>, 2012.
 #   <sergioballesterossolanas@gmail.com>, 2011, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 09:14+0000\n"
-"Last-Translator: Javier Llorente <javier@opensuse.org>\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 15:29+0000\n"
+"Last-Translator: juanman <juanma@kde.org.ar>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Imposible cargar la lista desde el App Store"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Error de autenticación"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "El grupo ya existe"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "No se pudo añadir el grupo"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Correo guardado"
@@ -45,14 +59,28 @@ msgstr "OpenID cambiado"
 msgid "Invalid request"
 msgstr "Solicitud no válida"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Error de autenticación"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "No se pudo eliminar el grupo"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "No se pudo eliminar el usuario"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Idioma cambiado"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Imposible añadir el usuario al grupo %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Imposible eliminar al usuario del grupo %s"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Error"
@@ -77,30 +105,85 @@ msgstr "Castellano"
 msgid "Security Warning"
 msgstr "Advertencia de seguridad"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "El directorio de datos -data- y sus archivos probablemente son accesibles desde internet. El archivo .htaccess que provee ownCloud no está funcionando. Recomendamos fuertemente que configure su servidor web de forma que el directorio de datos ya no sea accesible o mueva el directorio de datos fuera de la raíz de documentos del servidor web."
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "ejecutar una tarea con cada página cargada"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php se registra en un servicio webcron"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "usar servicio cron del sistema"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "API de compartición"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Activar API de compartición"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Permitir a las aplicaciones usar la API de compartición"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Permitir enlaces"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Permitir a los usuarios compartir elementos públicamente con enlaces"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Permitir re-compartir"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Permitir a los usuarios compartir elementos compartidos con ellos de nuevo"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Permitir a los usuarios compartir con cualquiera"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Permitir a los usuarios compartir con usuarios en sus grupos"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Registro"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Más"
 
+#: templates/admin.php:105
+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 "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>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Añade tu aplicación"
@@ -114,34 +197,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Echa un vistazo a la web de aplicaciones apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-autorizado"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "por"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-licenciado por <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Documentación"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Administra archivos grandes"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Hacer una pregunta"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problemas al conectar con la base de datos de ayuda."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Ir manualmente"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Respuesta"
 
diff --git a/l10n/es/user_ldap.po b/l10n/es/user_ldap.po
index 11d0ce6c53153b5f195aa1c42a697dadb0b83e58..fdf3b2be402c57c1e42cbd616101e5ba8f827f9f 100644
--- a/l10n/es/user_ldap.po
+++ b/l10n/es/user_ldap.po
@@ -4,47 +4,51 @@
 # 
 # Translators:
 # Javier Llorente <javier@opensuse.org>, 2012.
+#   <juanma@kde.org.ar>, 2012.
+# Raul Fernandez Garcia <raulfg3@gmail.com>, 2012.
+# Rubén Trujillo <rubentrf@gmail.com>, 2012.
+#   <sergioballesterossolanas@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 09:28+0000\n"
-"Last-Translator: Javier Llorente <javier@opensuse.org>\n"
+"POT-Creation-Date: 2012-09-04 02:01+0200\n"
+"PO-Revision-Date: 2012-09-03 14:15+0000\n"
+"Last-Translator: Raul Fernandez Garcia <raulfg3@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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: es\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: templates/settings.php:8
 msgid "Host"
-msgstr ""
+msgstr "Servidor"
 
 #: templates/settings.php:8
 msgid ""
 "You can omit the protocol, except you require SSL. Then start with ldaps://"
-msgstr ""
+msgstr "Puede omitir el protocolo, excepto si requiere SSL. En ese caso, empiece con ldaps://"
 
 #: templates/settings.php:9
 msgid "Base DN"
-msgstr ""
+msgstr "DN base"
 
 #: templates/settings.php:9
 msgid "You can specify Base DN for users and groups in the Advanced tab"
-msgstr ""
+msgstr "Puede especificar el DN base para usuarios y grupos en la pestaña Avanzado"
 
 #: templates/settings.php:10
 msgid "User DN"
-msgstr ""
+msgstr "DN usuario"
 
 #: templates/settings.php:10
 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 "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:11
 msgid "Password"
@@ -52,47 +56,47 @@ msgstr "Contraseña"
 
 #: templates/settings.php:11
 msgid "For anonymous access, leave DN and Password empty."
-msgstr ""
+msgstr "Para acceso anónimo, deje DN y contraseña vacíos."
 
 #: templates/settings.php:12
 msgid "User Login Filter"
-msgstr ""
+msgstr "Filtro de inicio de sesión de usuario"
 
 #: templates/settings.php:12
 #, php-format
 msgid ""
 "Defines the filter to apply, when login is attempted. %%uid replaces the "
 "username in the login action."
-msgstr ""
+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:12
 #, php-format
 msgid "use %%uid placeholder, e.g. \"uid=%%uid\""
-msgstr ""
+msgstr "usar %%uid como placeholder, ej: \"uid=%%uid\""
 
 #: templates/settings.php:13
 msgid "User List Filter"
-msgstr ""
+msgstr "Lista de filtros de usuario"
 
 #: templates/settings.php:13
 msgid "Defines the filter to apply, when retrieving users."
-msgstr ""
+msgstr "Define el filtro a aplicar, cuando se obtienen usuarios."
 
 #: templates/settings.php:13
 msgid "without any placeholder, e.g. \"objectClass=person\"."
-msgstr ""
+msgstr "Sin placeholder, ej: \"objectClass=person\"."
 
 #: templates/settings.php:14
 msgid "Group Filter"
-msgstr ""
+msgstr "Filtro de grupo"
 
 #: templates/settings.php:14
 msgid "Defines the filter to apply, when retrieving groups."
-msgstr ""
+msgstr "Define el filtro a aplicar, cuando se obtienen grupos."
 
 #: templates/settings.php:14
 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"."
-msgstr ""
+msgstr "Con cualquier placeholder, ej: \"objectClass=posixGroup\"."
 
 #: templates/settings.php:17
 msgid "Port"
@@ -100,15 +104,15 @@ msgstr "Puerto"
 
 #: templates/settings.php:18
 msgid "Base User Tree"
-msgstr ""
+msgstr "Árbol base de usuario"
 
 #: templates/settings.php:19
 msgid "Base Group Tree"
-msgstr ""
+msgstr "Árbol base de grupo"
 
 #: templates/settings.php:20
 msgid "Group-Member association"
-msgstr ""
+msgstr "Asociación Grupo-Miembro"
 
 #: templates/settings.php:21
 msgid "Use TLS"
@@ -116,41 +120,41 @@ msgstr "Usar TLS"
 
 #: templates/settings.php:21
 msgid "Do not use it for SSL connections, it will fail."
-msgstr ""
+msgstr "No usarlo para SSL, habrá error."
 
 #: templates/settings.php:22
 msgid "Case insensitve LDAP server (Windows)"
-msgstr ""
+msgstr "Servidor de LDAP sensible a mayúsculas/minúsculas (Windows)"
 
 #: templates/settings.php:23
 msgid "Turn off SSL certificate validation."
-msgstr ""
+msgstr "Apagar la validación por certificado SSL."
 
 #: templates/settings.php:23
 msgid ""
 "If connection only works with this option, import the LDAP server's SSL "
 "certificate in your ownCloud server."
-msgstr ""
+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:23
 msgid "Not recommended, use for testing only."
-msgstr ""
+msgstr "No recomendado, sólo para pruebas."
 
 #: templates/settings.php:24
 msgid "User Display Name Field"
-msgstr ""
+msgstr "Campo de nombre de usuario a mostrar"
 
 #: templates/settings.php:24
 msgid "The LDAP attribute to use to generate the user`s ownCloud name."
-msgstr ""
+msgstr "El atributo LDAP a usar para generar el nombre de usuario de ownCloud."
 
 #: templates/settings.php:25
 msgid "Group Display Name Field"
-msgstr ""
+msgstr "Campo de nombre de grupo a mostrar"
 
 #: templates/settings.php:25
 msgid "The LDAP attribute to use to generate the groups`s ownCloud name."
-msgstr ""
+msgstr "El atributo LDAP a usar para generar el nombre de los grupos de ownCloud."
 
 #: templates/settings.php:27
 msgid "in bytes"
@@ -158,8 +162,14 @@ msgstr "en bytes"
 
 #: templates/settings.php:29
 msgid "in seconds. A change empties the cache."
-msgstr ""
+msgstr "en segundos. Un cambio vacía la cache."
+
+#: templates/settings.php:30
+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:31
+#: templates/settings.php:32
 msgid "Help"
 msgstr "Ayuda"
diff --git a/l10n/et_EE/core.po b/l10n/et_EE/core.po
index b02a2462018c9134f894819043be43c64738da59..f8d3d186521098b514ffd36267b35a5fadbf41fd 100644
--- a/l10n/et_EE/core.po
+++ b/l10n/et_EE/core.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:01+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -30,59 +30,55 @@ msgstr "Pole kategooriat, mida lisada?"
 msgid "This category already exists: "
 msgstr "See kategooria on juba olemas: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Seaded"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Jaanuar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Veebruar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Märts"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Aprill"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Mai"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Juuni"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Juuli"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "August"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "September"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Oktoober"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "November"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Detsember"
 
@@ -114,7 +110,7 @@ msgstr "Viga"
 msgid "ownCloud password reset"
 msgstr "ownCloud parooli taastamine"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Kasuta järgnevat linki oma parooli taastamiseks: {link}"
 
@@ -244,7 +240,7 @@ msgstr "Lõpeta seadistamine"
 msgid "web services under your control"
 msgstr "veebiteenused sinu kontrolli all"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Logi välja"
 
diff --git a/l10n/et_EE/files.po b/l10n/et_EE/files.po
index d0fad31b018b01661163016ed313870a3fe9e132..a2e851dd2f1bb385e12ec793c081842b421c5be6 100644
--- a/l10n/et_EE/files.po
+++ b/l10n/et_EE/files.po
@@ -3,20 +3,20 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-# Rivo Zängov <eraser@eraser.ee>, 2011, 2012.
+# Rivo Zängov <eraser@eraser.ee>, 2011-2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-26 19:46+0200\n"
-"PO-Revision-Date: 2012-08-26 17:20+0000\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\n"
+"PO-Revision-Date: 2012-09-11 10:21+0000\n"
 "Last-Translator: Rivo Zängov <eraser@eraser.ee>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -52,83 +52,100 @@ msgstr "Kettale kirjutamine ebaõnnestus"
 msgid "Files"
 msgstr "Failid"
 
-#: js/fileactions.js:111 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Lõpeta jagamine"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Kustuta"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "on juba olemas"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "asenda"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "soovita nime"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "loobu"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "asendatud"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "tagasi"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "millega"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "tagasi"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "jagamata"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "kustutatud"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "ZIP-faili loomine, see võib veidi aega võtta."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Üleslaadimise viga"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Ootel"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Üleslaadimine tühistati."
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Vigane nimi, '/' pole lubatud."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Suurus"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Muudetud"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "kaust"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "kausta"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "fail"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "faili"
 
@@ -160,6 +177,10 @@ msgstr "0 tähendab piiramatut"
 msgid "Maximum input size for ZIP files"
 msgstr "Maksimaalne ZIP-faili sisestatava faili suurus"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Salvesta"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Uus"
@@ -184,36 +205,36 @@ msgstr "Lae üles"
 msgid "Cancel upload"
 msgstr "Tühista üleslaadimine"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Siin pole midagi. Lae midagi üles!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nimi"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Jaga"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Lae alla"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Üleslaadimine on liiga suur"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Faile skannitakse, palun oota"
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Praegune skannimine"
diff --git a/l10n/et_EE/files_external.po b/l10n/et_EE/files_external.po
index 3daaecb163320618bf89553526f5ecda74e65bc6..e8e4379ae09f4fbc65e4ae5df986da82a818031d 100644
--- a/l10n/et_EE/files_external.po
+++ b/l10n/et_EE/files_external.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-19 02:02+0200\n"
-"PO-Revision-Date: 2012-08-18 06:32+0000\n"
+"POT-Creation-Date: 2012-09-10 02:02+0200\n"
+"PO-Revision-Date: 2012-09-09 20:19+0000\n"
 "Last-Translator: Rivo Zängov <eraser@eraser.ee>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: templates/settings.php:3
 msgid "External Storage"
@@ -28,7 +28,7 @@ msgstr "Ühenduspunkt"
 
 #: templates/settings.php:8
 msgid "Backend"
-msgstr ""
+msgstr "Admin"
 
 #: templates/settings.php:9
 msgid "Configuration"
@@ -40,7 +40,7 @@ msgstr "Valikud"
 
 #: templates/settings.php:11
 msgid "Applicable"
-msgstr ""
+msgstr "Rakendatav"
 
 #: templates/settings.php:23
 msgid "Add mount point"
@@ -68,16 +68,16 @@ msgstr "Kustuta"
 
 #: templates/settings.php:88
 msgid "SSL root certificates"
-msgstr ""
+msgstr "SSL root sertifikaadid"
 
 #: templates/settings.php:102
 msgid "Import Root Certificate"
-msgstr ""
+msgstr "Impordi root sertifikaadid"
 
 #: templates/settings.php:108
 msgid "Enable User External Storage"
-msgstr ""
+msgstr "Luba kasutajatele väline salvestamine"
 
 #: templates/settings.php:109
 msgid "Allow users to mount their own external storage"
-msgstr ""
+msgstr "Luba kasutajatel ühendada külge nende enda välised salvestusseadmed"
diff --git a/l10n/et_EE/files_sharing.po b/l10n/et_EE/files_sharing.po
index ebe1c5cb9b76c361fc4e14141801d0a7c9345c46..44a935c9b7223217e34b02b1a953fc32047f3ee6 100644
--- a/l10n/et_EE/files_sharing.po
+++ b/l10n/et_EE/files_sharing.po
@@ -8,28 +8,32 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 13:31+0000\n"
+"Last-Translator: Rivo Zängov <eraser@eraser.ee>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr ""
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Parool"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr ""
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Saada"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr ""
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Lae alla"
+
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Eelvaadet pole saadaval"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Kustutamine"
+#: templates/public.php:25
+msgid "web services under your control"
+msgstr "veebitenused sinu kontrolli all"
diff --git a/l10n/et_EE/files_versions.po b/l10n/et_EE/files_versions.po
index fd569f5b70bc466ce0e76032b6f3a099b96b97f8..4344220fe7b4fcd66caf33f2a596d4261482e294 100644
--- a/l10n/et_EE/files_versions.po
+++ b/l10n/et_EE/files_versions.po
@@ -8,20 +8,28 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-19 02:02+0200\n"
-"PO-Revision-Date: 2012-08-18 06:33+0000\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\n"
+"PO-Revision-Date: 2012-09-11 10:28+0000\n"
 "Last-Translator: Rivo Zängov <eraser@eraser.ee>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Kõikide versioonide aegumine"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Versioonid"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "See kustutab kõik sinu failidest tehtud varuversiooni"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Luba failide versioonihaldus"
diff --git a/l10n/et_EE/lib.po b/l10n/et_EE/lib.po
index 323ca1311493f505763c94c6d6fa1b47ca40b6ee..da4dcfe526905ef29a841240a4d8d4aa21c9cae2 100644
--- a/l10n/et_EE/lib.po
+++ b/l10n/et_EE/lib.po
@@ -8,53 +8,53 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-31 22:53+0200\n"
-"PO-Revision-Date: 2012-07-31 10:25+0000\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\n"
+"PO-Revision-Date: 2012-09-11 10:18+0000\n"
 "Last-Translator: Rivo Zängov <eraser@eraser.ee>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: app.php:287
+#: app.php:285
 msgid "Help"
 msgstr "Abiinfo"
 
-#: app.php:294
+#: app.php:292
 msgid "Personal"
 msgstr "Isiklik"
 
-#: app.php:299
+#: app.php:297
 msgid "Settings"
 msgstr "Seaded"
 
-#: app.php:304
+#: app.php:302
 msgid "Users"
 msgstr "Kasutajad"
 
-#: app.php:311
+#: app.php:309
 msgid "Apps"
 msgstr "Rakendused"
 
-#: app.php:313
+#: app.php:311
 msgid "Admin"
 msgstr "Admin"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "ZIP-ina allalaadimine on välja lülitatud."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Failid tuleb alla laadida ükshaaval."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Tagasi failide juurde"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "Valitud failid on ZIP-faili loomiseks liiga suured."
 
@@ -70,44 +70,57 @@ msgstr "Autentimise viga"
 msgid "Token expired. Please reload page."
 msgstr "Kontrollkood aegus. Paelun lae leht uuesti."
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
 msgstr "sekundit tagasi"
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
 msgstr "1 minut tagasi"
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
 msgstr "%d minutit tagasi"
 
-#: template.php:91
+#: template.php:92
 msgid "today"
 msgstr "täna"
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
 msgstr "eile"
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
 msgstr "%d päeva tagasi"
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
 msgstr "eelmisel kuul"
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
 msgstr "kuud tagasi"
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
 msgstr "eelmisel aastal"
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
 msgstr "aastat tagasi"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s on saadaval. Vaata <a href=\"%s\">lisainfot</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "ajakohane"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "uuenduste kontrollimine on välja lülitatud"
diff --git a/l10n/et_EE/settings.po b/l10n/et_EE/settings.po
index 089670c04cc268aac7356d603c2acf2af8af2c72..90042b1958565428b60c342d9abfeaee5597e5e5 100644
--- a/l10n/et_EE/settings.po
+++ b/l10n/et_EE/settings.po
@@ -4,25 +4,38 @@
 # 
 # Translators:
 #   <icewind1991@gmail.com>, 2012.
-# Rivo Zängov <eraser@eraser.ee>, 2011, 2012.
+# Rivo Zängov <eraser@eraser.ee>, 2011-2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-26 19:46+0200\n"
-"PO-Revision-Date: 2012-08-26 17:19+0000\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\n"
+"PO-Revision-Date: 2012-09-11 11:12+0000\n"
 "Last-Translator: Rivo Zängov <eraser@eraser.ee>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "App Sotre'i nimekirja laadimine ebaõnnestus"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Autentimise viga"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Grupp on juba olemas"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Keela grupi lisamine"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Kiri on salvestatud"
@@ -39,14 +52,28 @@ msgstr "OpenID on muudetud"
 msgid "Invalid request"
 msgstr "Vigane päring"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Autentimise viga"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Keela grupi kustutamine"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Keela kasutaja kustutamine"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Keel on muudetud"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Kasutajat ei saa lisada gruppi %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Kasutajat ei saa eemaldada grupist %s"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Viga"
@@ -71,30 +98,85 @@ msgstr "Eesti"
 msgid "Security Warning"
 msgstr "Turvahoiatus"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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/admin.php:31
 msgid "Cron"
 msgstr "Ajastatud töö"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "käivita iga laetud lehe juures üks ülesanne"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php on webcron teenuses registreeritud"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "kasuta süsteemide cron teenuseid"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "Jagamise API"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Luba jagamise API"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Luba rakendustel kasutada jagamise API-t"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Luba linke"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Luba kasutajatel jagada kirjeid avalike linkidega"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Luba edasijagamine"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Luba kasutajatel jagada edasi kirjeid, mida on neile jagatud"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Luba kasutajatel kõigiga jagada"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Luba kasutajatel jagada kirjeid ainult nende grupi liikmetele, millesse nad ise kuuluvad"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Logi"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Veel"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Lisa oma rakendus"
@@ -108,34 +190,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Vaata rakenduste lehte aadressil apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-litsenseeritud"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "kelle poolt"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-litsenseeritud <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentatsioon"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Suurte failide haldamine"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Küsi küsimus"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Probleemid abiinfo andmebaasiga ühendumisel."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Mine sinna käsitsi."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Vasta"
 
diff --git a/l10n/et_EE/user_ldap.po b/l10n/et_EE/user_ldap.po
index 38de7d5c1089234569ee80d7638f462c87e478ea..d955f91c9ddce25bbda67689748b575c5970ff66 100644
--- a/l10n/et_EE/user_ldap.po
+++ b/l10n/et_EE/user_ldap.po
@@ -3,23 +3,24 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Rivo Zängov <eraser@eraser.ee>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\n"
+"PO-Revision-Date: 2012-09-11 10:46+0000\n"
+"Last-Translator: Rivo Zängov <eraser@eraser.ee>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: templates/settings.php:8
 msgid "Host"
-msgstr ""
+msgstr "Host"
 
 #: templates/settings.php:8
 msgid ""
@@ -28,7 +29,7 @@ msgstr ""
 
 #: templates/settings.php:9
 msgid "Base DN"
-msgstr ""
+msgstr "Baas DN"
 
 #: templates/settings.php:9
 msgid "You can specify Base DN for users and groups in the Advanced tab"
@@ -36,7 +37,7 @@ msgstr ""
 
 #: templates/settings.php:10
 msgid "User DN"
-msgstr ""
+msgstr "Kasutaja DN"
 
 #: templates/settings.php:10
 msgid ""
@@ -47,7 +48,7 @@ msgstr ""
 
 #: templates/settings.php:11
 msgid "Password"
-msgstr ""
+msgstr "Parool"
 
 #: templates/settings.php:11
 msgid "For anonymous access, leave DN and Password empty."
@@ -55,7 +56,7 @@ msgstr ""
 
 #: templates/settings.php:12
 msgid "User Login Filter"
-msgstr ""
+msgstr "Kasutajanime filter"
 
 #: templates/settings.php:12
 #, php-format
@@ -67,63 +68,63 @@ msgstr ""
 #: templates/settings.php:12
 #, php-format
 msgid "use %%uid placeholder, e.g. \"uid=%%uid\""
-msgstr ""
+msgstr "kasuta %%uid kohatäitjat, nt. \"uid=%%uid\""
 
 #: templates/settings.php:13
 msgid "User List Filter"
-msgstr ""
+msgstr "Kasutajate nimekirja filter"
 
 #: templates/settings.php:13
 msgid "Defines the filter to apply, when retrieving users."
-msgstr ""
+msgstr "Määrab kasutajaid hankides filtri, mida rakendatakse."
 
 #: templates/settings.php:13
 msgid "without any placeholder, e.g. \"objectClass=person\"."
-msgstr ""
+msgstr "ilma ühegi kohatäitjata, nt. \"objectClass=person\"."
 
 #: templates/settings.php:14
 msgid "Group Filter"
-msgstr ""
+msgstr "Grupi filter"
 
 #: templates/settings.php:14
 msgid "Defines the filter to apply, when retrieving groups."
-msgstr ""
+msgstr "Määrab gruppe hankides filtri, mida rakendatakse."
 
 #: templates/settings.php:14
 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"."
-msgstr ""
+msgstr "ilma ühegi kohatäitjata, nt. \"objectClass=posixGroup\"."
 
 #: templates/settings.php:17
 msgid "Port"
-msgstr ""
+msgstr "Port"
 
 #: templates/settings.php:18
 msgid "Base User Tree"
-msgstr ""
+msgstr "Baaskasutaja puu"
 
 #: templates/settings.php:19
 msgid "Base Group Tree"
-msgstr ""
+msgstr "Baasgrupi puu"
 
 #: templates/settings.php:20
 msgid "Group-Member association"
-msgstr ""
+msgstr "Grupiliikme seotus"
 
 #: templates/settings.php:21
 msgid "Use TLS"
-msgstr ""
+msgstr "Kasutaja TLS"
 
 #: templates/settings.php:21
 msgid "Do not use it for SSL connections, it will fail."
-msgstr ""
+msgstr "Ära kasuta seda SSL ühenduse jaoks, see ei toimi."
 
 #: templates/settings.php:22
 msgid "Case insensitve LDAP server (Windows)"
-msgstr ""
+msgstr "Mittetõstutundlik LDAP server (Windows)"
 
 #: templates/settings.php:23
 msgid "Turn off SSL certificate validation."
-msgstr ""
+msgstr "Lülita SSL sertifikaadi kontrollimine välja."
 
 #: templates/settings.php:23
 msgid ""
@@ -133,32 +134,38 @@ msgstr ""
 
 #: templates/settings.php:23
 msgid "Not recommended, use for testing only."
-msgstr ""
+msgstr "Pole soovitatav, kasuta ainult testimiseks."
 
 #: templates/settings.php:24
 msgid "User Display Name Field"
-msgstr ""
+msgstr "Kasutaja näidatava nime väli"
 
 #: templates/settings.php:24
 msgid "The LDAP attribute to use to generate the user`s ownCloud name."
-msgstr ""
+msgstr "LDAP omadus, mida kasutatakse kasutaja ownCloudi nime loomiseks."
 
 #: templates/settings.php:25
 msgid "Group Display Name Field"
-msgstr ""
+msgstr "Grupi näidatava nime väli"
 
 #: templates/settings.php:25
 msgid "The LDAP attribute to use to generate the groups`s ownCloud name."
-msgstr ""
+msgstr "LDAP omadus, mida kasutatakse ownCloudi grupi nime loomiseks."
 
 #: templates/settings.php:27
 msgid "in bytes"
-msgstr ""
+msgstr "baitides"
 
 #: templates/settings.php:29
 msgid "in seconds. A change empties the cache."
-msgstr ""
+msgstr "sekundites. Muudatus tühjendab vahemälu."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+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:32
 msgid "Help"
-msgstr ""
+msgstr "Abiinfo"
diff --git a/l10n/eu/core.po b/l10n/eu/core.po
index 109068c645714c55b11c3de860e9462a285871a4..610d3d95db98c21aaccc87a9b15ef020a9e4da2f 100644
--- a/l10n/eu/core.po
+++ b/l10n/eu/core.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 19:24+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: eu\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -31,59 +31,55 @@ msgstr "Ez dago gehitzeko kategoriarik?"
 msgid "This category already exists: "
 msgstr "Kategoria hau dagoeneko existitzen da:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:214 templates/layout.user.php:54 templates/layout.user.php:55
 msgid "Settings"
 msgstr "Ezarpenak"
 
-#: js/js.js:575
+#: js/js.js:599
 msgid "January"
 msgstr "Urtarrila"
 
-#: js/js.js:575
+#: js/js.js:599
 msgid "February"
 msgstr "Otsaila"
 
-#: js/js.js:575
+#: js/js.js:599
 msgid "March"
 msgstr "Martxoa"
 
-#: js/js.js:575
+#: js/js.js:599
 msgid "April"
 msgstr "Apirila"
 
-#: js/js.js:575
+#: js/js.js:599
 msgid "May"
 msgstr "Maiatza"
 
-#: js/js.js:575
+#: js/js.js:599
 msgid "June"
 msgstr "Ekaina"
 
-#: js/js.js:576
+#: js/js.js:600
 msgid "July"
 msgstr "Uztaila"
 
-#: js/js.js:576
+#: js/js.js:600
 msgid "August"
 msgstr "Abuztua"
 
-#: js/js.js:576
+#: js/js.js:600
 msgid "September"
 msgstr "Iraila"
 
-#: js/js.js:576
+#: js/js.js:600
 msgid "October"
 msgstr "Urria"
 
-#: js/js.js:576
+#: js/js.js:600
 msgid "November"
 msgstr "Azaroa"
 
-#: js/js.js:576
+#: js/js.js:600
 msgid "December"
 msgstr "Abendua"
 
@@ -115,7 +111,7 @@ msgstr "Errorea"
 msgid "ownCloud password reset"
 msgstr "ownCloud-en pasahitza berrezarri"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Eribili hurrengo lotura zure pasahitza berrezartzeko: {link}"
 
@@ -231,7 +227,7 @@ msgstr "Datubasearen izena"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Datu basearen taula-lekua"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -241,11 +237,11 @@ msgstr "Datubasearen hostalaria"
 msgid "Finish setup"
 msgstr "Bukatu konfigurazioa"
 
-#: templates/layout.guest.php:42
+#: templates/layout.guest.php:36
 msgid "web services under your control"
 msgstr "web zerbitzuak zure kontrolpean"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:39
 msgid "Log out"
 msgstr "Saioa bukatu"
 
diff --git a/l10n/eu/files.po b/l10n/eu/files.po
index d450fd0522e7735c6d2a2666d4b7c6365b96e1a3..2cd338beb7493fcdca5098ad4d79cbec4c248e92 100644
--- a/l10n/eu/files.po
+++ b/l10n/eu/files.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 19:20+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: eu\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +53,100 @@ msgstr "Errore bat izan da diskoan idazterakoan"
 msgid "Files"
 msgstr "Fitxategiak"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Ez partekatu"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Ezabatu"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "dagoeneko existitzen da"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "ordeztu"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "aholkatu izena"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "ezeztatu"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "ordeztua"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "desegin"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "honekin"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "desegin"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "Ez partekatuta"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "ezabatuta"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "ZIP-fitxategia sortzen ari da, denbora har dezake"
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Igotzean errore bat suertatu da"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Zain"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Igoera ezeztatuta"
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Baliogabeko izena, '/' ezin da erabili. "
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Tamaina"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Aldatuta"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "karpeta"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "Karpetak"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "fitxategia"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "fitxategiak"
 
@@ -161,6 +178,10 @@ msgstr "0 mugarik gabe esan nahi du"
 msgid "Maximum input size for ZIP files"
 msgstr "ZIP fitxategien gehienezko tamaina"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Gorde"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Berria"
@@ -185,36 +206,36 @@ msgstr "Igo"
 msgid "Cancel upload"
 msgstr "Ezeztatu igoera"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Ez dago ezer. Igo zerbait!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Izena"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Elkarbanatu"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Deskargatu"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Igotakoa handiegia da"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Fitxategiak eskaneatzen ari da, itxoin mezedez."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Orain eskaneatzen ari da"
diff --git a/l10n/eu/files_external.po b/l10n/eu/files_external.po
index eae7996496165400e4b8ad40c00080c399fb924b..5ba75efacda13263a7e08b9de093bcbab29fb78b 100644
--- a/l10n/eu/files_external.po
+++ b/l10n/eu/files_external.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-27 09:04+0000\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 19:25+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: eu\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: templates/settings.php:3
 msgid "External Storage"
@@ -28,7 +28,7 @@ msgstr "Montatze puntua"
 
 #: templates/settings.php:8
 msgid "Backend"
-msgstr ""
+msgstr "Motorra"
 
 #: templates/settings.php:9
 msgid "Configuration"
@@ -40,7 +40,7 @@ msgstr "Aukerak"
 
 #: templates/settings.php:11
 msgid "Applicable"
-msgstr ""
+msgstr "Aplikagarria"
 
 #: templates/settings.php:23
 msgid "Add mount point"
diff --git a/l10n/eu/files_sharing.po b/l10n/eu/files_sharing.po
index a7eb7ffe2a355ab65d00b815d23aec0efccd8276..162fca43720484a80c30669106f4413340d34619 100644
--- a/l10n/eu/files_sharing.po
+++ b/l10n/eu/files_sharing.po
@@ -8,28 +8,32 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-27 08:54+0000\n"
+"POT-Creation-Date: 2012-09-04 02:01+0200\n"
+"PO-Revision-Date: 2012-09-03 13:00+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: eu\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Tamaina"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Pasahitza"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Aldatuta"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Bidali"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Ezabatu dena"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Deskargatu"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Ezabatu"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Ez dago aurrebista eskuragarririk hauentzat "
+
+#: templates/public.php:25
+msgid "web services under your control"
+msgstr "web zerbitzuak zure kontrolpean"
diff --git a/l10n/eu/files_versions.po b/l10n/eu/files_versions.po
index 3279db24a33585d20a203ec8c4f933ed5979eef8..0f7610079ceaedc60562fb74c7a564d41d65dada 100644
--- a/l10n/eu/files_versions.po
+++ b/l10n/eu/files_versions.po
@@ -8,20 +8,28 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-27 08:55+0000\n"
+"POT-Creation-Date: 2012-09-04 02:01+0200\n"
+"PO-Revision-Date: 2012-09-03 12:58+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: eu\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Iraungi bertsio guztiak"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Bertsioak"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Honek zure fitxategien bertsio guztiak ezabatuko ditu"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Gaitu fitxategien bertsioak"
diff --git a/l10n/eu/lib.po b/l10n/eu/lib.po
index f8625e4759eda0a8ee67a53bf1b68c22ad4a0637..1fd4db54aa20dd03a8a3bd28783527ac3f024f12 100644
--- a/l10n/eu/lib.po
+++ b/l10n/eu/lib.po
@@ -3,110 +3,124 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <asieriko@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-04 02:01+0200\n"
+"PO-Revision-Date: 2012-09-03 13:06+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: eu\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
-msgstr ""
+msgstr "Laguntza"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
-msgstr ""
+msgstr "Pertsonala"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
-msgstr ""
+msgstr "Ezarpenak"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
-msgstr ""
+msgstr "Erabiltzaileak"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
-msgstr ""
+msgstr "Aplikazioak"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
-msgstr ""
+msgstr "Admin"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
-msgstr ""
+msgstr "ZIP deskarga ez dago gaituta."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
-msgstr ""
+msgstr "Fitxategiak banan-banan deskargatu behar dira."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
-msgstr ""
+msgstr "Itzuli fitxategietara"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
-msgstr ""
+msgstr "Hautatuko fitxategiak oso handiak dira zip fitxategia sortzeko."
 
 #: json.php:28
 msgid "Application is not enabled"
-msgstr ""
+msgstr "Aplikazioa ez dago gaituta"
 
 #: json.php:39 json.php:63 json.php:75
 msgid "Authentication error"
-msgstr ""
+msgstr "Autentikazio errorea"
 
 #: json.php:51
 msgid "Token expired. Please reload page."
-msgstr ""
+msgstr "Tokena iraungitu da. Mesedez birkargatu orria."
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
-msgstr ""
+msgstr "orain dela segundu batzuk"
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
-msgstr ""
+msgstr "orain dela minutu 1"
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
-msgstr ""
+msgstr "orain dela %d minutu"
 
-#: template.php:91
+#: template.php:92
 msgid "today"
-msgstr ""
+msgstr "gaur"
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
-msgstr ""
+msgstr "atzo"
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
-msgstr ""
+msgstr "orain dela %d egun"
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
-msgstr ""
+msgstr "joan den hilabetea"
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
-msgstr ""
+msgstr "orain dela hilabete batzuk"
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
-msgstr ""
+msgstr "joan den urtea"
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
-msgstr ""
+msgstr "orain dela urte batzuk"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s eskuragarri dago. Lortu <a href=\"%s\">informazio gehiago</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "eguneratuta"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "eguneraketen egiaztapena ez dago gaituta"
diff --git a/l10n/eu/settings.po b/l10n/eu/settings.po
index b6a2050a81ccfe737458fcf5fde80012326d67fa..1fb2c354a997f4136d081557d6b148998e199df9 100644
--- a/l10n/eu/settings.po
+++ b/l10n/eu/settings.po
@@ -10,20 +10,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-27 11:17+0000\n"
+"POT-Creation-Date: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-09-07 14: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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: eu\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Ezin izan da App Dendatik zerrenda kargatu"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Autentifikazio errorea"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Taldea dagoeneko existitzenda"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Ezin izan da taldea gehitu"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Eposta gorde da"
@@ -40,14 +53,28 @@ msgstr "OpenID aldatuta"
 msgid "Invalid request"
 msgstr "Baliogabeko eskaria"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Autentifikazio errorea"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Ezin izan da taldea ezabatu"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Ezin izan da erabiltzailea ezabatu"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Hizkuntza aldatuta"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Ezin izan da erabiltzailea %s taldera gehitu"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Ezin izan da erabiltzailea %s taldetik ezabatu"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Errorea"
@@ -72,30 +99,85 @@ msgstr "Euskera"
 msgid "Security Warning"
 msgstr "Segurtasun abisua"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "Zure data karpeta eta zure fitxategiak internetetik zuzenean eskuragarri egon daitezke. ownCloudek emandako .htaccess fitxategia ez du bere lana egiten. Aholkatzen dizugu zure web zerbitzaria ongi konfiguratzea data karpeta eskuragarri ez izateko edo data karpeta web zerbitzariaren dokumentu errotik mugitzea."
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "exekutatu zeregina orri karga bakoitzean"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php webcron zerbitzu batean erregistratuta dago"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "erabili sistemaren cron zerbitzua"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "Partekatze APIa"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Gaitu Partekatze APIa"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Baimendu aplikazioak Partekatze APIa erabiltzeko"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Baimendu loturak"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Baimendu erabiltzaileak loturen bidez fitxategiak publikoki partekatzen"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Baimendu birpartekatzea"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Baimendu erabiltzaileak haiekin partekatutako fitxategiak berriz ere partekatzen"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Baimendu erabiltzaileak edonorekin partekatzen"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Baimendu erabiltzaileak bakarrik bere taldeko erabiltzaileekin partekatzen"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Egunkaria"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Gehiago"
 
+#: templates/admin.php:105
+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 "<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>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Gehitu zure aplikazioa"
@@ -109,34 +191,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Ikusi programen orria apps.owncloud.com en"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "lizentziarekin"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr " Egilea:"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-lizentziatua <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentazioa"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Fitxategi handien kudeaketa"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Egin galdera bat"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Arazoak daude laguntza datubasera konektatzeko."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Joan hara eskuz."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Erantzun"
 
diff --git a/l10n/eu/user_ldap.po b/l10n/eu/user_ldap.po
index 95f361427dac92ed509dc32ca212f90da13470f7..a8b8ab93ae8cbe160f26d65608d66336ae397fb5 100644
--- a/l10n/eu/user_ldap.po
+++ b/l10n/eu/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: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-27 10:45+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-30 21:29+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"
@@ -160,6 +160,12 @@ msgstr "bytetan"
 msgid "in seconds. A change empties the cache."
 msgstr "segundutan. Aldaketak katxea husten du."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+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:32
 msgid "Help"
 msgstr "Laguntza"
diff --git a/l10n/eu_ES/core.po b/l10n/eu_ES/core.po
index 5c54a269c0776361d7e4232cdb8a2a082a6a2a1c..b3baf2cb39f8cf496ed84ff42363191a57bdf82a 100644
--- a/l10n/eu_ES/core.po
+++ b/l10n/eu_ES/core.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Basque (Spain) (http://www.transifex.com/projects/p/owncloud/language/eu_ES/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: eu_ES\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -29,59 +29,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -113,7 +109,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr ""
 
@@ -243,7 +239,7 @@ msgstr ""
 msgid "web services under your control"
 msgstr ""
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr ""
 
diff --git a/l10n/eu_ES/files.po b/l10n/eu_ES/files.po
index cf36b73d5b672dca2f54b03b96cc0ccc6f53c13b..0b6110c70d7bd8526591b108731ec3a2ab4e8688 100644
--- a/l10n/eu_ES/files.po
+++ b/l10n/eu_ES/files.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Basque (Spain) (http://www.transifex.com/projects/p/owncloud/language/eu_ES/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: eu_ES\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -51,83 +51,100 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr ""
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -159,6 +176,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr ""
@@ -183,36 +204,36 @@ msgstr ""
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr ""
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr ""
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr ""
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr ""
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr ""
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/eu_ES/files_sharing.po b/l10n/eu_ES/files_sharing.po
index 0ba46e6c77a0485d5f78ecdd543040894177e6e1..da8e6d23662d355581f8afbe82593fa3ed9c4829 100644
--- a/l10n/eu_ES/files_sharing.po
+++ b/l10n/eu_ES/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Basque (Spain) (http://www.transifex.com/projects/p/owncloud/language/eu_ES/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: eu_ES\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/eu_ES/files_versions.po b/l10n/eu_ES/files_versions.po
index e27dd7812a5af2a5c3ed84a89e680b0e8ec59428..cf5651aa2224207c25fd731f4e5f35fcb11336ad 100644
--- a/l10n/eu_ES/files_versions.po
+++ b/l10n/eu_ES/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Basque (Spain) (http://www.transifex.com/projects/p/owncloud/language/eu_ES/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: eu_ES\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/eu_ES/lib.po b/l10n/eu_ES/lib.po
index 366fbd9fb9c0b3158c091d6a20652dc152917714..120167c89264a87641ad50e902d56f4e942d0358 100644
--- a/l10n/eu_ES/lib.po
+++ b/l10n/eu_ES/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-31 22:53+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Basque (Spain) (http://www.transifex.com/projects/p/owncloud/language/eu_ES/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: eu_ES\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/eu_ES/settings.po b/l10n/eu_ES/settings.po
index 82cc89a620703b71b9ac47988f7afd25d488fdc8..bca1c25debd4b3a686e1f061d4b23f46b6892cfa 100644
--- a/l10n/eu_ES/settings.po
+++ b/l10n/eu_ES/settings.po
@@ -7,20 +7,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Basque (Spain) (http://www.transifex.com/projects/p/owncloud/language/eu_ES/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: eu_ES\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -37,14 +50,28 @@ msgstr ""
 msgid "Invalid request"
 msgstr ""
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr ""
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -69,30 +96,85 @@ msgstr ""
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -106,34 +188,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr ""
-
-#: templates/apps.php:30
-msgid "by"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
 msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr ""
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr ""
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr ""
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr ""
 
diff --git a/l10n/eu_ES/user_ldap.po b/l10n/eu_ES/user_ldap.po
index 34f25c3435dfb27fbf018ca48b06437e481bec5c..2999d7de988b948552d5f4d971d17c04f5c41c71 100644
--- a/l10n/eu_ES/user_ldap.po
+++ b/l10n/eu_ES/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Basque (Spain) (http://www.transifex.com/projects/p/owncloud/language/eu_ES/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/fa/core.po b/l10n/fa/core.po
index 3a6f8b7c702ec291e920e79d80a73563c17e4a5a..df531775248935d0d44073d4c436ea62b81fab25 100644
--- a/l10n/fa/core.po
+++ b/l10n/fa/core.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -30,59 +30,55 @@ msgstr "آیا گروه دیگری برای افزودن ندارید"
 msgid "This category already exists: "
 msgstr "این گروه از قبل اضافه شده"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "تنظیمات"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "ژانویه"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "فبریه"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "مارس"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "آوریل"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "می"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "ژوئن"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "جولای"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "آگوست"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "سپتامبر"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "اکتبر"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "نوامبر"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "دسامبر"
 
@@ -114,7 +110,7 @@ msgstr "خطا"
 msgid "ownCloud password reset"
 msgstr "پسورد ابرهای شما تغییرکرد"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "از لینک زیر جهت دوباره سازی پسورد استفاده کنید :\n{link}"
 
@@ -244,7 +240,7 @@ msgstr "اتمام نصب"
 msgid "web services under your control"
 msgstr "سرویس وب تحت کنترل شما"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "خروج"
 
diff --git a/l10n/fa/files.po b/l10n/fa/files.po
index 5dc2cb2c38f1ddc521dbb7b0dee956469d54834a..37b2cc70c39a88506ed49e13aeccdba5eea47c3a 100644
--- a/l10n/fa/files.po
+++ b/l10n/fa/files.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 20:17+0000\n"
-"Last-Translator: Mohammad Dashtizadeh <mohammad@dashtizadeh.net>\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -54,83 +54,100 @@ msgstr "نوشتن بر روی دیسک سخت ناموفق بود"
 msgid "Files"
 msgstr "فایل ها"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "پاک کردن"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "وجود دارد"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "جایگزین"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "لغو"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "جایگزین‌شده"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "بازگشت"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "همراه"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "بازگشت"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "حذف شده"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "در حال ساخت فایل فشرده ممکن است زمان زیادی به طول بیانجامد"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "ناتوان در بارگذاری یا فایل یک پوشه است یا 0بایت دارد"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "خطا در بار گذاری"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "در انتظار"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "بار گذاری لغو شد"
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "نام نامناسب '/' غیرفعال است"
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "اندازه"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "تغییر یافته"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "پوشه"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "پوشه ها"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "پرونده"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "پرونده ها"
 
@@ -162,6 +179,10 @@ msgstr "0 نامحدود است"
 msgid "Maximum input size for ZIP files"
 msgstr "حداکثرمقدار برای بار گزاری پرونده های فشرده"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "جدید"
@@ -186,36 +207,36 @@ msgstr "بارگذاری"
 msgid "Cancel upload"
 msgstr "متوقف کردن بار گذاری"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "اینجا هیچ چیز نیست."
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "نام"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "به اشتراک گذاری"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "بارگیری"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "حجم بارگذاری بسیار زیاد است"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "پرونده ها در حال بازرسی هستند لطفا صبر کنید"
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "بازرسی کنونی"
diff --git a/l10n/fa/files_sharing.po b/l10n/fa/files_sharing.po
index 9b11f7a5ec68140dfabe3e1133fc484be12e8a46..84f1a537d3cdb3c2cd9cb4d7960d0447e07fb84c 100644
--- a/l10n/fa/files_sharing.po
+++ b/l10n/fa/files_sharing.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 20:07+0000\n"
-"Last-Translator: Mohammad Dashtizadeh <mohammad@dashtizadeh.net>\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -18,18 +18,22 @@ msgstr ""
 "Language: fa\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "اندازه"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr ""
+
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "تاریخ"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "حذف همه"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "حذف"
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr ""
diff --git a/l10n/fa/files_versions.po b/l10n/fa/files_versions.po
index 10bdb927924445afc96057b9a88146add567a6a6..012dceedd11479d65d170a5c008c02b27a17f0b1 100644
--- a/l10n/fa/files_versions.po
+++ b/l10n/fa/files_versions.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 20:14+0000\n"
-"Last-Translator: Mohammad Dashtizadeh <mohammad@dashtizadeh.net>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -18,10 +18,18 @@ msgstr ""
 "Language: fa\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "انقضای تمامی نسخه‌ها"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "فعال‌کردن پرونده‌های نسخه‌بندی"
diff --git a/l10n/fa/lib.po b/l10n/fa/lib.po
index 7e1c82ad5e187eae77308ed45e749b567b1fc61e..589e967a94fc93de891d941da060f9e756d50e73 100644
--- a/l10n/fa/lib.po
+++ b/l10n/fa/lib.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 20:01+0000\n"
-"Last-Translator: Mohammad Dashtizadeh <mohammad@dashtizadeh.net>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -42,19 +42,19 @@ msgstr ""
 msgid "Admin"
 msgstr "مدیر"
 
-#: files.php:276
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:277
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:277 files.php:302
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:301
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -111,3 +111,16 @@ msgstr "سال قبل"
 #: template.php:97
 msgid "years ago"
 msgstr "سال‌های قبل"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/fa/settings.po b/l10n/fa/settings.po
index 38f01f759c0b2fc665c35b0aaa4f4f8d53391ce0..9f3314e70602695aaca5d6b7c6c57090794c51a8 100644
--- a/l10n/fa/settings.po
+++ b/l10n/fa/settings.po
@@ -9,20 +9,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "ایمیل ذخیره شد"
@@ -39,14 +52,28 @@ msgstr "OpenID تغییر کرد"
 msgid "Invalid request"
 msgstr "درخواست غیر قابل قبول"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "زبان تغییر کرد"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "خطا"
@@ -71,30 +98,85 @@ msgstr "__language_name__"
 msgid "Security Warning"
 msgstr "اخطار امنیتی"
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "کارنامه"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "بیشتر"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "برنامه خود را بیافزایید"
@@ -108,34 +190,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "صفحه این اٌپ را در apps.owncloud.com ببینید"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "مجوزنامه"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "به وسیله"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "مستندات"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "مدیریت پرونده های بزرگ"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "یک سوال بپرسید"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "مشکلاتی برای وصل شدن به پایگاه داده کمکی"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "بروید آنجا به صورت دستی"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "پاسخ"
 
diff --git a/l10n/fa/user_ldap.po b/l10n/fa/user_ldap.po
index eb2a0fd767f562f27d9cda7b8c887067ee40f686..4a711bf20190e9af8bde42f6a3bc1e7950efd8b2 100644
--- a/l10n/fa/user_ldap.po
+++ b/l10n/fa/user_ldap.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# 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-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -19,7 +20,7 @@ msgstr ""
 
 #: templates/settings.php:8
 msgid "Host"
-msgstr ""
+msgstr "میزبانی"
 
 #: templates/settings.php:8
 msgid ""
@@ -47,7 +48,7 @@ msgstr ""
 
 #: templates/settings.php:11
 msgid "Password"
-msgstr ""
+msgstr "رمز عبور"
 
 #: templates/settings.php:11
 msgid "For anonymous access, leave DN and Password empty."
@@ -159,6 +160,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
-msgid "Help"
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
 msgstr ""
+
+#: templates/settings.php:32
+msgid "Help"
+msgstr "راه‌نما"
diff --git a/l10n/fi/core.po b/l10n/fi/core.po
index 992a3d306522a76bc3d609d0d302948c6faaed3c..6b84b560723bee319b05eb52296f8938253f7341 100644
--- a/l10n/fi/core.po
+++ b/l10n/fi/core.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Finnish (http://www.transifex.com/projects/p/owncloud/language/fi/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: fi\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -29,59 +29,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -113,7 +109,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr ""
 
@@ -243,7 +239,7 @@ msgstr ""
 msgid "web services under your control"
 msgstr ""
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr ""
 
diff --git a/l10n/fi/files.po b/l10n/fi/files.po
index edf5daa8da98db3b28d51be41b5ab96bf770263a..1d569839df60ec8bf75793358984bd0ecd175878 100644
--- a/l10n/fi/files.po
+++ b/l10n/fi/files.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Finnish (http://www.transifex.com/projects/p/owncloud/language/fi/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: fi\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -51,83 +51,100 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr ""
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -159,6 +176,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr ""
@@ -183,36 +204,36 @@ msgstr ""
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr ""
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr ""
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr ""
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr ""
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr ""
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/fi/files_sharing.po b/l10n/fi/files_sharing.po
index b8c06567b5bea0f16055dcbd3f2fcb825385d392..4cee2cd498e0d6e1921d0616cb3fd9fca462f393 100644
--- a/l10n/fi/files_sharing.po
+++ b/l10n/fi/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Finnish (http://www.transifex.com/projects/p/owncloud/language/fi/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: fi\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/fi/files_versions.po b/l10n/fi/files_versions.po
index 89bfb8144e696a212cc89e5308e3255fac40ddbb..cd80c0a4869c425eefaae63967ad5bdc6736f4db 100644
--- a/l10n/fi/files_versions.po
+++ b/l10n/fi/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Finnish (http://www.transifex.com/projects/p/owncloud/language/fi/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: fi\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/fi/lib.po b/l10n/fi/lib.po
index eee9ac5f9e5b37ef7093384d2085f500fc8bd2b8..6ed65abd5e957def7b3356d4940b97f95e7f6f5a 100644
--- a/l10n/fi/lib.po
+++ b/l10n/fi/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-09 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Finnish (http://www.transifex.com/projects/p/owncloud/language/fi/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -41,19 +41,19 @@ msgstr ""
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/fi/settings.po b/l10n/fi/settings.po
index 823276532f7404df43f7bf40c4d738dd96b9a7b6..b2daafd990f041124d07c9bb471736129637a007 100644
--- a/l10n/fi/settings.po
+++ b/l10n/fi/settings.po
@@ -7,20 +7,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Finnish (http://www.transifex.com/projects/p/owncloud/language/fi/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: fi\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -37,14 +50,28 @@ msgstr ""
 msgid "Invalid request"
 msgstr ""
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr ""
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -69,30 +96,85 @@ msgstr ""
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -106,34 +188,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr ""
-
-#: templates/apps.php:30
-msgid "by"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
 msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr ""
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr ""
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr ""
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr ""
 
diff --git a/l10n/fi/user_ldap.po b/l10n/fi/user_ldap.po
index 70707a1d170b1a7f4cc8dbe00a7464f42bebc119..5f8865fafa71e6bfd43d9eb79dde9954dad8c265 100644
--- a/l10n/fi/user_ldap.po
+++ b/l10n/fi/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Finnish (http://www.transifex.com/projects/p/owncloud/language/fi/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/fi_FI/core.po b/l10n/fi_FI/core.po
index e78e8f7504fd1d1fc4ec14676012d99a5ff89b95..cbce73136935272f884b4cf1491044e0b3f1956c 100644
--- a/l10n/fi_FI/core.po
+++ b/l10n/fi_FI/core.po
@@ -7,20 +7,21 @@
 # Jiri Grönroos <jiri.gronroos@iki.fi>, 2012.
 # Johannes Korpela <>, 2012.
 # Pekka Sutela <pekka.sutela@gmail.com>, 2012.
+#   <tehoratopato@gmail.com>, 2012.
 #   <tscooter@hotmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -34,59 +35,55 @@ msgstr "Ei lisättävää luokkaa?"
 msgid "This category already exists: "
 msgstr "Tämä luokka on jo olemassa: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Asetukset"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Tammikuu"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Helmikuu"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Maaliskuu"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Huhtikuu"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Toukokuu"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Kesäkuu"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Heinäkuu"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Elokuu"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Syyskuu"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Lokakuu"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Marraskuu"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Joulukuu"
 
@@ -118,7 +115,7 @@ msgstr "Virhe"
 msgid "ownCloud password reset"
 msgstr "ownCloud-salasanan nollaus"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Voit palauttaa salasanasi seuraavassa osoitteessa: {link}"
 
@@ -234,7 +231,7 @@ msgstr "Tietokannan nimi"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Tietokannan taulukkotila"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -248,7 +245,7 @@ msgstr "Viimeistele asennus"
 msgid "web services under your control"
 msgstr "verkkopalvelut hallinnassasi"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Kirjaudu ulos"
 
diff --git a/l10n/fi_FI/files.po b/l10n/fi_FI/files.po
index e4ee45867c33b9ce788b2fdd8e4b50708f12e667..c642c07ab82dba3b2e1cfd51ccb7b6cefd7834af 100644
--- a/l10n/fi_FI/files.po
+++ b/l10n/fi_FI/files.po
@@ -6,20 +6,21 @@
 # Jesse Jaara <jesse.jaara@gmail.com>, 2012.
 # Jiri Grönroos <jiri.gronroos@iki.fi>, 2012.
 # Johannes Korpela <>, 2012.
+#   <tehoratopato@gmail.com>, 2012.
 #   <tscooter@hotmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 12:10+0000\n"
-"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -55,83 +56,100 @@ msgstr "Levylle kirjoitus epäonnistui"
 msgid "Files"
 msgstr "Tiedostot"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Poista"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "on jo olemassa"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "korvaa"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "ehdota nimeä"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "peru"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "korvattu"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "kumoa"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "käyttäen"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "kumoa"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "poistettu"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "luodaan ZIP-tiedostoa, tämä saattaa kestää hetken."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Lähetysvirhe."
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Odottaa"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Lähetys peruttu."
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Virheellinen nimi, merkki '/' ei ole sallittu."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Koko"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Muutettu"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "kansio"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "kansiota"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "tiedosto"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "tiedostoa"
 
@@ -163,6 +181,10 @@ msgstr "0 on rajoittamaton"
 msgid "Maximum input size for ZIP files"
 msgstr "ZIP-tiedostojen enimmäiskoko"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Tallenna"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Uusi"
@@ -187,36 +209,36 @@ msgstr "Lähetä"
 msgid "Cancel upload"
 msgstr "Peru lähetys"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Täällä ei ole mitään. Lähetä tänne jotakin!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nimi"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Jaa"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Lataa"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Lähetettävä tiedosto on liian suuri"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Tiedostoja tarkistetaan, odota hetki."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
-msgstr ""
+msgstr "Tämänhetkinen tutkinta"
diff --git a/l10n/fi_FI/files_external.po b/l10n/fi_FI/files_external.po
index 2cee464ea2494db4672068ed975be512db12a1f3..404c33a01435d778cefdd238af737311c5e3f983 100644
--- a/l10n/fi_FI/files_external.po
+++ b/l10n/fi_FI/files_external.po
@@ -4,19 +4,20 @@
 # 
 # Translators:
 # Jiri Grönroos <jiri.gronroos@iki.fi>, 2012.
+#   <tehoratopato@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-17 00:44+0200\n"
-"PO-Revision-Date: 2012-08-16 11:04+0000\n"
-"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
+"POT-Creation-Date: 2012-09-06 02:01+0200\n"
+"PO-Revision-Date: 2012-09-05 16:30+0000\n"
+"Last-Translator: teho <tehoratopato@gmail.com>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: templates/settings.php:3
 msgid "External Storage"
@@ -40,7 +41,7 @@ msgstr "Valinnat"
 
 #: templates/settings.php:11
 msgid "Applicable"
-msgstr ""
+msgstr "Sovellettavissa"
 
 #: templates/settings.php:23
 msgid "Add mount point"
@@ -76,7 +77,7 @@ msgstr "Tuo juurivarmenne"
 
 #: templates/settings.php:108
 msgid "Enable User External Storage"
-msgstr ""
+msgstr "Ota käyttöön ulkopuoliset tallennuspaikat"
 
 #: templates/settings.php:109
 msgid "Allow users to mount their own external storage"
diff --git a/l10n/fi_FI/files_sharing.po b/l10n/fi_FI/files_sharing.po
index dba2e1225d7726cb84768470374d42b0ab0cb340..f55a452032285dbe8540e76691a48e768e82d13e 100644
--- a/l10n/fi_FI/files_sharing.po
+++ b/l10n/fi_FI/files_sharing.po
@@ -4,32 +4,37 @@
 # 
 # Translators:
 # Jiri Grönroos <jiri.gronroos@iki.fi>, 2012.
+#   <tehoratopato@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 11:35+0000\n"
-"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
+"POT-Creation-Date: 2012-09-04 02:01+0200\n"
+"PO-Revision-Date: 2012-09-03 15:46+0000\n"
+"Last-Translator: teho <tehoratopato@gmail.com>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Koko"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Salasana"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Muokattu"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Lähetä"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Poista kaikki"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Lataa"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Poista"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Ei esikatselua kohteelle"
+
+#: templates/public.php:25
+msgid "web services under your control"
+msgstr "verkkopalvelut hallinnassasi"
diff --git a/l10n/fi_FI/files_versions.po b/l10n/fi_FI/files_versions.po
index c4bdbdc58216bbd185f9070e3a83d3760820398d..7d47ae421418e4107150c132b5ffef499ad18957 100644
--- a/l10n/fi_FI/files_versions.po
+++ b/l10n/fi_FI/files_versions.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-17 00:44+0200\n"
-"PO-Revision-Date: 2012-08-16 10:59+0000\n"
+"POT-Creation-Date: 2012-09-03 02:04+0200\n"
+"PO-Revision-Date: 2012-09-02 15:39+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"
@@ -18,10 +18,18 @@ msgstr ""
 "Language: fi_FI\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Vanhenna kaikki versiot"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Versiot"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Tämä poistaa kaikki tiedostojesi olemassa olevat varmuuskopioversiot"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Käytä tiedostojen versiointia"
diff --git a/l10n/fi_FI/lib.po b/l10n/fi_FI/lib.po
index 50d80dd63b73ffc19f11d4e9f0292ddf78b512fb..961500dae1ee34e049bd8565f99d70a48367566e 100644
--- a/l10n/fi_FI/lib.po
+++ b/l10n/fi_FI/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-03 02:02+0200\n"
-"PO-Revision-Date: 2012-08-02 18:23+0000\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 10: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"
@@ -18,43 +18,43 @@ msgstr ""
 "Language: fi_FI\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr "Ohje"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr "Henkilökohtainen"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr "Asetukset"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr "Käyttäjät"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr "Sovellukset"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr "Ylläpitäjä"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "ZIP-lataus on poistettu käytöstä."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Tiedostot on ladattava yksittäin."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Takaisin tiedostoihin"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "Valitut tiedostot ovat liian suurikokoisia mahtuakseen zip-tiedostoon."
 
@@ -111,3 +111,16 @@ msgstr "viime vuonna"
 #: template.php:97
 msgid "years ago"
 msgstr "vuotta sitten"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s on saatavilla. Lue <a href=\"%s\">lisätietoja</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "ajan tasalla"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "päivitysten tarkistus on pois käytöstä"
diff --git a/l10n/fi_FI/settings.po b/l10n/fi_FI/settings.po
index f3610fa859f46988034b86a48cb93aafd9a99ccc..2f9cfc602d5bbd2c5de8188a1dc1dd9c542eccbb 100644
--- a/l10n/fi_FI/settings.po
+++ b/l10n/fi_FI/settings.po
@@ -5,23 +5,37 @@
 # Translators:
 # Jesse Jaara <jesse.jaara@gmail.com>, 2012.
 # Jiri Grönroos <jiri.gronroos@iki.fi>, 2012.
+#   <tehoratopato@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 12:07+0000\n"
-"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 16:14+0000\n"
+"Last-Translator: teho <tehoratopato@gmail.com>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
-msgstr ""
+msgstr "Ei pystytä lataamaan listaa sovellusvarastosta (App Store)"
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Todennusvirhe"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Ryhmä on jo olemassa"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Ryhmän lisäys epäonnistui"
 
 #: ajax/lostpassword.php:14
 msgid "Email saved"
@@ -39,14 +53,28 @@ msgstr "OpenID on vaihdettu"
 msgid "Invalid request"
 msgstr "Virheellinen pyyntö"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Todennusvirhe"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Ryhmän poisto epäonnistui"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Käyttäjän poisto epäonnistui"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Kieli on vaihdettu"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Käyttäjän tai ryhmän %s lisääminen ei onnistu"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Käyttäjän poistaminen ryhmästä %s ei onnistu"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Virhe"
@@ -71,30 +99,85 @@ msgstr "_kielen_nimi_"
 msgid "Security Warning"
 msgstr "Turvallisuusvaroitus"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "Data-kansio ja tiedostot ovat ehkä saavutettavissa Internetistä. .htaccess-tiedosto, jolla kontrolloidaan pääsyä, ei toimi. Suosittelemme, että muutat web-palvelimesi asetukset niin ettei data-kansio ole enää pääsyä tai siirrät data-kansion pois web-palvelimen tiedostojen juuresta."
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
-msgstr ""
+msgstr "suorita yksi tehtävä jokaisella ladatulla sivulla"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
-msgstr ""
+msgstr "cron.php on rekisteröity webcron-palvelulla"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "käytä järjestelmän cron-palvelua"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "Jaon ohelmointirajapinta (Share API)"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Ota käyttöön jaon ohjelmoitirajapinta (Share API)"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Salli sovellusten käyttää jaon ohjelmointirajapintaa (Share API)"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Salli linkit"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Salli käyttäjien jakaa kohteita julkisesti linkkejä käyttäen"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Salli uudelleenjako"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Salli käyttäjien jakaa heille itselleen jaettuja tietoja edelleen"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Salli käyttäjien jakaa kohteita kenen tahansa kanssa"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Salli käyttäjien jakaa kohteita vain omien ryhmien jäsenten kesken"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Loki"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Lisää"
 
+#: templates/admin.php:105
+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 "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."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Lisää ohjelmasi"
@@ -108,34 +191,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Katso sovellussivu osoitteessa apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-lisenssöity"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "henkilölle"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-lisensoija <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentaatio"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Suurten tiedostojen hallinta"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Kysy jotain"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Virhe yhdistettäessä tietokantaan."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Ohje löytyy sieltä."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Vastaus"
 
@@ -229,7 +308,7 @@ msgstr "Muu"
 
 #: templates/users.php:80 templates/users.php:112
 msgid "Group Admin"
-msgstr ""
+msgstr "Ryhmän ylläpitäjä"
 
 #: templates/users.php:82
 msgid "Quota"
diff --git a/l10n/fi_FI/user_ldap.po b/l10n/fi_FI/user_ldap.po
index a8c8f4e5c8f93d1614715b0ba6c545cdd149bec8..085ca3dd65bcfd7454c95d40faa223139d2a971e 100644
--- a/l10n/fi_FI/user_ldap.po
+++ b/l10n/fi_FI/user_ldap.po
@@ -5,19 +5,20 @@
 # Translators:
 #   <jarkko.moilanen@want3d.fi>, 2012.
 # Jiri Grönroos <jiri.gronroos@iki.fi>, 2012.
+#   <tehoratopato@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 18:00+0000\n"
-"Last-Translator: kyyberi <jarkko.moilanen@want3d.fi>\n"
+"POT-Creation-Date: 2012-09-07 02:04+0200\n"
+"PO-Revision-Date: 2012-09-06 10:56+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: fi_FI\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: templates/settings.php:8
 msgid "Host"
@@ -26,7 +27,7 @@ msgstr "Isäntä"
 #: templates/settings.php:8
 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 käytät SSL:ää. Aloita silloin ldaps://"
+msgstr "Voit jättää protokollan määrittämättä, paitsi kun vaadit SSL:ää. Aloita silloin ldaps://"
 
 #: templates/settings.php:9
 msgid "Base DN"
@@ -34,7 +35,7 @@ msgstr "Oletus DN"
 
 #: templates/settings.php:9
 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ä  "
+msgstr "Voit määrittää käyttäjien ja ryhmien oletus DN:n (distinguished name) 'tarkemmat asetukset'-välilehdeltä  "
 
 #: templates/settings.php:10
 msgid "User DN"
@@ -64,7 +65,7 @@ msgstr "Login suodatus"
 msgid ""
 "Defines the filter to apply, when login is attempted. %%uid replaces the "
 "username in the login action."
-msgstr ""
+msgstr "Määrittelee käytettävän suodattimen, kun sisäänkirjautumista yritetään. %%uid korvaa sisäänkirjautumisessa käyttäjätunnuksen."
 
 #: templates/settings.php:12
 #, php-format
@@ -101,7 +102,7 @@ msgstr "Portti"
 
 #: templates/settings.php:18
 msgid "Base User Tree"
-msgstr "Oletus käyttäjäpuu"
+msgstr "Oletuskäyttäjäpuu"
 
 #: templates/settings.php:19
 msgid "Base Group Tree"
@@ -109,7 +110,7 @@ msgstr "Ryhmien juuri"
 
 #: templates/settings.php:20
 msgid "Group-Member association"
-msgstr "Ryhmä-jäsen assosiaatio (yhteys)"
+msgstr "Ryhmän ja jäsenen assosiaatio (yhteys)"
 
 #: templates/settings.php:21
 msgid "Use TLS"
@@ -117,7 +118,7 @@ msgstr "Käytä TLS:ää"
 
 #: templates/settings.php:21
 msgid "Do not use it for SSL connections, it will fail."
-msgstr "Älä käytä SSL yhteyttä varten, se epäonnistuu. "
+msgstr "Älä käytä SSL-yhteyttä varten, se epäonnistuu. "
 
 #: templates/settings.php:22
 msgid "Case insensitve LDAP server (Windows)"
@@ -125,13 +126,13 @@ msgstr "Kirjainkoosta piittamaton LDAP-palvelin (Windows)"
 
 #: templates/settings.php:23
 msgid "Turn off SSL certificate validation."
-msgstr "Sulje SSL sertifikaatin käyttö"
+msgstr "Poista käytöstä SSL-varmenteen vahvistus"
 
 #: templates/settings.php:23
 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ä optiolla, siirrä LDAP palvelimen SSL sertifikaatti onwCloud palvelimellesi. "
+msgstr "Jos yhteys toimii vain tällä valinnalla, siirrä LDAP-palvelimen SSL-varmenne ownCloud-palvelimellesi."
 
 #: templates/settings.php:23
 msgid "Not recommended, use for testing only."
@@ -139,19 +140,19 @@ msgstr "Ei suositella, käytä vain testausta varten."
 
 #: templates/settings.php:24
 msgid "User Display Name Field"
-msgstr ""
+msgstr "Käyttäjän näytettävän nimen kenttä"
 
 #: templates/settings.php:24
 msgid "The LDAP attribute to use to generate the user`s ownCloud name."
-msgstr ""
+msgstr "LDAP-attribuutti, jota käytetään käyttäjän ownCloud-käyttäjänimenä "
 
 #: templates/settings.php:25
 msgid "Group Display Name Field"
-msgstr ""
+msgstr "Ryhmän \"näytettävä nimi\"-kenttä"
 
 #: templates/settings.php:25
 msgid "The LDAP attribute to use to generate the groups`s ownCloud name."
-msgstr ""
+msgstr "LDAP-attribuutti, jota käytetään luomaan ryhmän ownCloud-nimi"
 
 #: templates/settings.php:27
 msgid "in bytes"
@@ -161,6 +162,12 @@ msgstr "tavuissa"
 msgid "in seconds. A change empties the cache."
 msgstr "sekunneissa. Muutos tyhjentää välimuistin."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+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:32
 msgid "Help"
 msgstr "Ohje"
diff --git a/l10n/fr/core.po b/l10n/fr/core.po
index e7c32969565aeda295023306b18e08f206fa3fdb..c6fd6a4041275baf75c3eb79aff31ac064e343b7 100644
--- a/l10n/fr/core.po
+++ b/l10n/fr/core.po
@@ -3,6 +3,8 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <florentin.lemoal@gmail.com>, 2012.
+# Guillaume Paumier <guillom.pom@gmail.com>, 2012.
 # Nahir Mohamed <nahirmoha@gmail.com>, 2012.
 #   <nathaplop@gmail.com>, 2012.
 #   <rom1dep@gmail.com>, 2011.
@@ -11,15 +13,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:01+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -33,65 +35,61 @@ msgstr "Pas de catégorie à ajouter ?"
 msgid "This category already exists: "
 msgstr "Cette catégorie existe déjà : "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Paramètres"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
-msgstr "Janvier"
+msgstr "janvier"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
-msgstr "Février"
+msgstr "février"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
-msgstr "Mars"
+msgstr "mars"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
-msgstr "Avril"
+msgstr "avril"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
-msgstr "Mai"
+msgstr "mai"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
-msgstr "Juin"
+msgstr "juin"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
-msgstr "Juillet"
+msgstr "juillet"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
-msgstr "Août"
+msgstr "août"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
-msgstr "Septembre"
+msgstr "septembre"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
-msgstr "Octobre"
+msgstr "octobre"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
-msgstr "Novembre"
+msgstr "novembre"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
-msgstr "Décembre"
+msgstr "décembre"
 
 #: js/oc-dialogs.js:143 js/oc-dialogs.js:163
 msgid "Cancel"
-msgstr "Annulé"
+msgstr "Annuler"
 
 #: js/oc-dialogs.js:159
 msgid "No"
@@ -117,13 +115,13 @@ msgstr "Erreur"
 msgid "ownCloud password reset"
 msgstr "Réinitialisation de votre mot de passe Owncloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Utilisez le lien suivant pour réinitialiser votre mot de passe : {link}"
 
 #: lostpassword/templates/lostpassword.php:3
 msgid "You will receive a link to reset your password via Email."
-msgstr "Vous allez recevoir un e-mail contenant un lien pour réinitialiser votre mot de passe"
+msgstr "Vous allez recevoir un e-mail contenant un lien pour réinitialiser votre mot de passe."
 
 #: lostpassword/templates/lostpassword.php:5
 msgid "Requested"
@@ -233,7 +231,7 @@ msgstr "Nom de la base de données"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Tablespaces de la base de données"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -247,7 +245,7 @@ msgstr "Terminer l'installation"
 msgid "web services under your control"
 msgstr "services web sous votre contrôle"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Se déconnecter"
 
diff --git a/l10n/fr/files.po b/l10n/fr/files.po
index 19cb780d180ab7f5024a81359c8455ed19f1ad77..c60dcb1567c60c79092f1bd280f87ca366d66aa1 100644
--- a/l10n/fr/files.po
+++ b/l10n/fr/files.po
@@ -5,7 +5,10 @@
 # Translators:
 # Cyril Glapa <kyriog@gmail.com>, 2012.
 # Geoffrey Guerrier <geoffrey.guerrier@gmail.com>, 2012.
+#   <gp4004@arghh.org>, 2012.
 #   <guiguidu31300@gmail.com>, 2012.
+# Guillaume Paumier <guillom.pom@gmail.com>, 2012.
+#   <life_0n_mars@live.fr>, 2012.
 # Nahir Mohamed <nahirmoha@gmail.com>, 2012.
 #   <rom1dep@gmail.com>, 2011.
 # Romain DEP. <rom1dep@gmail.com>, 2012.
@@ -13,15 +16,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\n"
+"PO-Revision-Date: 2012-09-11 14:35+0000\n"
+"Last-Translator: Geoffrey Guerrier <geoffrey.guerrier@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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: fr\n"
-"Plural-Forms: nplurals=2; plural=(n > 1)\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -57,83 +60,100 @@ msgstr "Erreur d'écriture sur le disque"
 msgid "Files"
 msgstr "Fichiers"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Supprimer"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "existe déjà"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "remplacer"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "Suggérer un nom"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "annuler"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "remplacé"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "annuler"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "avec"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "annuler"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "non partagée"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "supprimé"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
-msgstr "Générer un fichier ZIP, cela peut prendre du temps"
+msgstr "Fichier ZIP en cours d'assemblage ;  cela peut prendre du temps."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Erreur de chargement"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "En cours"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
-msgstr "Chargement annulé"
+msgstr "Chargement annulé."
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Nom invalide, '/' n'est pas autorisé."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Taille"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Modifié"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "dossier"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "dossiers"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "fichier"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "fichiers"
 
@@ -165,6 +185,10 @@ msgstr "0 est illimité"
 msgid "Maximum input size for ZIP files"
 msgstr "Taille maximale pour les fichiers ZIP"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Sauvegarder"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nouveau"
@@ -187,38 +211,38 @@ msgstr "Envoyer"
 
 #: templates/index.php:27
 msgid "Cancel upload"
-msgstr "Annuler envoi"
+msgstr "Annuler l'envoi"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Il n'y a rien ici ! Envoyez donc quelque chose :)"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nom"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Partager"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Téléchargement"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Fichier trop volumineux"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
-msgstr "Les fichiers sont analysés, patientez svp."
+msgstr "Les fichiers sont en cours d'analyse, veuillez patienter."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Analyse en cours"
diff --git a/l10n/fr/files_sharing.po b/l10n/fr/files_sharing.po
index 254df78bd1298a3385ce14ed7bcaef1d20872110..13fe8b5a464c09900c563b8fa854f32ee2636357 100644
--- a/l10n/fr/files_sharing.po
+++ b/l10n/fr/files_sharing.po
@@ -3,15 +3,18 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <florentin.lemoal@gmail.com>, 2012.
 #   <gp4004@arghh.org>, 2012.
+# Guillaume Paumier <guillom.pom@gmail.com>, 2012.
 # Romain DEP. <rom1dep@gmail.com>, 2012.
+#   <windes@tructor.net>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-08-31 19:11+0000\n"
+"Last-Translator: Florentin Le Moal <florentin.lemoal@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"
@@ -19,18 +22,22 @@ msgstr ""
 "Language: fr\n"
 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Taille"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Mot de passe"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Modifié"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Envoyer"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Tout effacer"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Télécharger"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Effacement"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Pas d'aperçu disponible pour"
+
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr "services web sous votre contrôle"
diff --git a/l10n/fr/files_versions.po b/l10n/fr/files_versions.po
index 74b1426e8c5c84ec19ee5fefb2458ad264612107..707718935247fdb0ad1b85be8584c2ba2b73a21a 100644
--- a/l10n/fr/files_versions.po
+++ b/l10n/fr/files_versions.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-15 02:03+0200\n"
-"PO-Revision-Date: 2012-08-14 16:49+0000\n"
+"POT-Creation-Date: 2012-09-02 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 16:41+0000\n"
 "Last-Translator: Romain DEP. <rom1dep@gmail.com>\n"
 "Language-Team: French (http://www.transifex.com/projects/p/owncloud/language/fr/)\n"
 "MIME-Version: 1.0\n"
@@ -18,10 +18,18 @@ msgstr ""
 "Language: fr\n"
 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Supprimer les versions intermédiaires"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Versions"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Cette opération va effacer toutes les versions intermédiaires de vos fichiers (et ne garder que la dernière version en date)."
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Activer le versionnage"
diff --git a/l10n/fr/lib.po b/l10n/fr/lib.po
index 42c784ce915857bae1d5a958d5e3c5e5e4aac955..7eaa311dfdaf6ad2f4b12af398ee6c6d9a7a1977 100644
--- a/l10n/fr/lib.po
+++ b/l10n/fr/lib.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-31 22:53+0200\n"
-"PO-Revision-Date: 2012-07-31 00:22+0000\n"
+"POT-Creation-Date: 2012-09-02 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 16:36+0000\n"
 "Last-Translator: Romain DEP. <rom1dep@gmail.com>\n"
 "Language-Team: French (http://www.transifex.com/projects/p/owncloud/language/fr/)\n"
 "MIME-Version: 1.0\n"
@@ -19,43 +19,43 @@ msgstr ""
 "Language: fr\n"
 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr "Aide"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr "Personnel"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr "Paramètres"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr "Utilisateurs"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr "Applications"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr "Administration"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "Téléchargement ZIP désactivé."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Les fichiers nécessitent d'être téléchargés un par un."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Retour aux Fichiers"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "Les fichiers sélectionnés sont trop volumineux pour être compressés."
 
@@ -112,3 +112,16 @@ msgstr "l'année dernière"
 #: template.php:97
 msgid "years ago"
 msgstr "il y a plusieurs années"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s est disponible. Obtenez <a href=\"%s\">plus d'informations</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "À jour"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "la vérification des mises à jour est désactivée"
diff --git a/l10n/fr/settings.po b/l10n/fr/settings.po
index c1d17de2c441090fd6e6a2fa0180f78268f10fb9..ae731ca30bf64cdb0ba23d5e60e4f62e48515bfa 100644
--- a/l10n/fr/settings.po
+++ b/l10n/fr/settings.po
@@ -3,11 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Brice  <bmaron@gmail.com>, 2012.
 # Cyril Glapa <kyriog@gmail.com>, 2012.
 #   <fboulogne@april.org>, 2011.
+#   <florentin.lemoal@gmail.com>, 2012.
 #   <gp4004@arghh.org>, 2012.
 #   <guiguidu31300@gmail.com>, 2012.
 # Jan-Christoph Borchardt <JanCBorchardt@fsfe.org>, 2011.
+#   <life_0n_mars@live.fr>, 2012.
 # Nahir Mohamed <nahirmoha@gmail.com>, 2012.
 #   <pierreamiel.giraud@gmail.com>, 2012.
 #   <rom1dep@gmail.com>, 2011, 2012.
@@ -16,20 +19,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-20 15:19+0000\n"
-"Last-Translator: gp4004 <gp4004@arghh.org>\n"
+"POT-Creation-Date: 2012-09-11 02:02+0200\n"
+"PO-Revision-Date: 2012-09-10 20:41+0000\n"
+"Last-Translator: Brice <bmaron@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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: fr\n"
-"Plural-Forms: nplurals=2; plural=(n > 1)\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Impossible de charger la liste depuis l'App Store"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Erreur d'authentification"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Ce groupe existe déjà"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Impossible d'ajouter le groupe"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "E-mail sauvegardé"
@@ -46,14 +62,28 @@ msgstr "Identifiant OpenID changé"
 msgid "Invalid request"
 msgstr "Requête invalide"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Erreur d'authentification"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Impossible de supprimer le groupe"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Impossible de supprimer l'utilisateur"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Langue changée"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Impossible d'ajouter l'utilisateur au groupe %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Impossible de supprimer l'utilisateur du groupe %s"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Erreur"
@@ -78,30 +108,85 @@ msgstr "Français"
 msgid "Security Warning"
 msgstr "Alertes de sécurité"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "Votre répertoire de données et vos fichiers sont probablement accessibles depuis internet. Le fichier .htaccess fourni avec ownCloud ne fonctionne pas. Nous vous recommandons vivement de configurer votre serveur web de façon à ce que ce répertoire ne soit plus accessible, ou bien de déplacer le répertoire de données à l'extérieur de la racine du serveur web."
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "exécuter une tâche pour chaque page chargée"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php est enregistré comme un service webcron"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "utiliser le service cron du système "
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "API de partage"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Activer l'API de partage"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Autoriser les applications à utiliser l'API de partage"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Autoriser les liens"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Autoriser les utilisateurs à partager du contenu public avec des liens"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Autoriser le re-partage"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Autoriser les utilisateurs à partager des éléments déjà partagés entre eux"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Autoriser les utilisateurs à partager avec tout le monde"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Autoriser les utilisateurs à ne partager qu'avec les utilisateurs dans leurs groupes"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Journaux"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Plus"
 
+#: templates/admin.php:105
+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 "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>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Ajoutez votre application"
@@ -115,34 +200,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Voir la page des applications à l'url apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "sous licence"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "par"
+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/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Documentation"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Gérer les gros fichiers"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Poser une question"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problème de connexion à la base de données d'aide."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "S'y rendre manuellement."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Réponse"
 
diff --git a/l10n/fr/user_ldap.po b/l10n/fr/user_ldap.po
index 1ca6075cb63aba5709ef90d17730d0ef8c4f6aae..7fca3da0d596481bb2e4e83b1cd7ee203e14430d 100644
--- a/l10n/fr/user_ldap.po
+++ b/l10n/fr/user_ldap.po
@@ -3,15 +3,18 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Cyril Glapa <kyriog@gmail.com>, 2012.
+#   <mathieu.payrol@gmail.com>, 2012.
 # Romain DEP. <rom1dep@gmail.com>, 2012.
+#   <windes@tructor.net>, 2012.
 #   <zrk951@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 17:01+0000\n"
-"Last-Translator: Romain DEP. <rom1dep@gmail.com>\n"
+"POT-Creation-Date: 2012-08-30 02:02+0200\n"
+"PO-Revision-Date: 2012-08-29 08:51+0000\n"
+"Last-Translator: Windes <windes@tructor.net>\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,15 +33,15 @@ msgstr "Vous pouvez omettre le protocole, sauf si vous avez besoin de SSL. Dans
 
 #: templates/settings.php:9
 msgid "Base DN"
-msgstr "DN de base"
+msgstr "DN Racine"
 
 #: templates/settings.php:9
 msgid "You can specify Base DN for users and groups in the Advanced tab"
-msgstr "Vous pouvez spécifier le DN de base pour les utilisateurs et les groupes dans l'onglet Avancé"
+msgstr "Vous pouvez détailler les DN Racines de vos utilisateurs et groupes dans l'onglet Avancé"
 
 #: templates/settings.php:10
 msgid "User DN"
-msgstr "DN Utilisateur"
+msgstr "DN Utilisateur (Autorisé à consulter l'annuaire)"
 
 #: templates/settings.php:10
 msgid ""
@@ -53,18 +56,18 @@ msgstr "Mot de passe"
 
 #: templates/settings.php:11
 msgid "For anonymous access, leave DN and Password empty."
-msgstr "Pour l'accès anonyme, laisser le DN et le mot de passe vides."
+msgstr "Pour un accès anonyme, laisser le DN Utilisateur et le mot de passe vides."
 
 #: templates/settings.php:12
 msgid "User Login Filter"
-msgstr "Filtre d'identifiants utilisateur"
+msgstr "Modèle d'authentification utilisateurs"
 
 #: templates/settings.php:12
 #, php-format
 msgid ""
 "Defines the filter to apply, when login is attempted. %%uid replaces the "
 "username in the login action."
-msgstr "Définit le filtre à appliquer lors d'une tentative de connexion. %%uid remplace le nom d'utilisateur lors de la connexion."
+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:12
 #, php-format
@@ -101,11 +104,11 @@ msgstr "Port"
 
 #: templates/settings.php:18
 msgid "Base User Tree"
-msgstr ""
+msgstr "DN racine de l'arbre utilisateurs"
 
 #: templates/settings.php:19
 msgid "Base Group Tree"
-msgstr ""
+msgstr "DN racine de l'arbre groupes"
 
 #: templates/settings.php:20
 msgid "Group-Member association"
@@ -125,7 +128,7 @@ msgstr "Serveur LDAP insensible à la casse (Windows)"
 
 #: templates/settings.php:23
 msgid "Turn off SSL certificate validation."
-msgstr "Désactiver la validation du certificat SSL"
+msgstr "Désactiver la validation du certificat SSL."
 
 #: templates/settings.php:23
 msgid ""
@@ -135,23 +138,23 @@ msgstr "Si la connexion ne fonctionne qu'avec cette option, importez le certific
 
 #: templates/settings.php:23
 msgid "Not recommended, use for testing only."
-msgstr "Non recommendé, utilisation pour tests uniquement."
+msgstr "Non recommandé, utilisation pour tests uniquement."
 
 #: templates/settings.php:24
 msgid "User Display Name Field"
-msgstr ""
+msgstr "Champ \"nom d'affichage\" de l'utilisateur"
 
 #: templates/settings.php:24
 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"
+msgstr "L'attribut LDAP utilisé pour générer les noms d'utilisateurs d'ownCloud."
 
 #: templates/settings.php:25
 msgid "Group Display Name Field"
-msgstr ""
+msgstr "Champ \"nom d'affichage\" du groupe"
 
 #: templates/settings.php:25
 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"
+msgstr "L'attribut LDAP utilisé pour générer les noms de groupes d'ownCloud."
 
 #: templates/settings.php:27
 msgid "in bytes"
@@ -161,6 +164,12 @@ msgstr "en octets"
 msgid "in seconds. A change empties the cache."
 msgstr "en secondes. Tout changement vide le cache."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr "Laisser vide "
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr "Aide"
diff --git a/l10n/gl/core.po b/l10n/gl/core.po
index fa591dfb3cf8b4c48a9f13df8af0170aa5cff21d..98c21db78b22b055b4a4a9412eb38e4033193b74 100644
--- a/l10n/gl/core.po
+++ b/l10n/gl/core.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -31,59 +31,55 @@ msgstr "Sen categoría que engadir?"
 msgid "This category already exists: "
 msgstr "Esta categoría xa existe: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Preferencias"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Xaneiro"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Febreiro"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Marzo"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Abril"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Maio"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Xuño"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Xullo"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Agosto"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Setembro"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Outubro"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Novembro"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Nadal"
 
@@ -115,7 +111,7 @@ msgstr "Erro"
 msgid "ownCloud password reset"
 msgstr "Restablecer contrasinal de ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Use a seguinte ligazón para restablecer o contrasinal: {link}"
 
@@ -245,7 +241,7 @@ msgstr "Rematar configuración"
 msgid "web services under your control"
 msgstr "servizos web baixo o seu control"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Desconectar"
 
diff --git a/l10n/gl/files.po b/l10n/gl/files.po
index 6725283e332e2e89c5ee326cb73c854f7a1648ea..f51ab64695bed107f58869ffa93dcaaa1145a425 100644
--- a/l10n/gl/files.po
+++ b/l10n/gl/files.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +53,100 @@ msgstr "Erro ao escribir no disco"
 msgid "Files"
 msgstr "Ficheiros"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Eliminar"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "xa existe"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "substituír"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "cancelar"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "substituído"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "desfacer"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "con"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "desfacer"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "eliminado"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "xerando ficheiro ZIP, pode levar un anaco."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Erro na subida"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Pendentes"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Subida cancelada."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Nome non válido, '/' non está permitido."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Tamaño"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Modificado"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "cartafol"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "cartafoles"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "ficheiro"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "ficheiros"
 
@@ -161,6 +178,10 @@ msgstr "0 significa ilimitado"
 msgid "Maximum input size for ZIP files"
 msgstr "Tamaño máximo de descarga para os ZIP"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Novo"
@@ -185,36 +206,36 @@ msgstr "Enviar"
 msgid "Cancel upload"
 msgstr "Cancelar subida"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Nada por aquí. Envíe algo."
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nome"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Compartir"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Descargar"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Envío demasiado grande"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Estanse analizando os ficheiros, espere por favor."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Análise actual."
diff --git a/l10n/gl/files_sharing.po b/l10n/gl/files_sharing.po
index ef1d19e933bca30a11d7491793bb7fff48bd0043..88ab158776084f523faed8c1acc375561cc38e8b 100644
--- a/l10n/gl/files_sharing.po
+++ b/l10n/gl/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Galician (http://www.transifex.com/projects/p/owncloud/language/gl/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: gl\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/gl/files_versions.po b/l10n/gl/files_versions.po
index 7c68c81752b34f48cce409018762baa8cfb9bddf..035f8080242bd1a828ef6e4e3bfc37f8e1c43fa3 100644
--- a/l10n/gl/files_versions.po
+++ b/l10n/gl/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: gl\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/gl/lib.po b/l10n/gl/lib.po
index 2e675b5678cba8672663b4d1e8bd363fc0f07bdd..a0531aaba0b3b245d3eeb862e260c885f5d3d2d4 100644
--- a/l10n/gl/lib.po
+++ b/l10n/gl/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: gl\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/gl/settings.po b/l10n/gl/settings.po
index 8c45f0bd139a881be35843a62d0b12f873de8ca6..60828ee96fa166413a6437606fa051811acfa727 100644
--- a/l10n/gl/settings.po
+++ b/l10n/gl/settings.po
@@ -9,20 +9,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Non se puido cargar a lista desde a App Store"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Erro na autenticación"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Correo electrónico gardado"
@@ -39,14 +52,28 @@ msgstr "Mudou o OpenID"
 msgid "Invalid request"
 msgstr "Petición incorrecta"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Erro na autenticación"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "O idioma mudou"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Erro"
@@ -71,30 +98,85 @@ msgstr "Galego"
 msgid "Security Warning"
 msgstr "Aviso de seguridade"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "executar unha tarefa con cada páxina cargada"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php está rexistrada como un servizo webcron"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "utilice o servizo cron do sistema"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Conectar"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Máis"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Engade o teu aplicativo"
@@ -108,34 +190,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Vexa a páxina do aplicativo en apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licenciado"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "por"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Documentación"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Xestionar Grandes Ficheiros"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Pregunte"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problemas conectando coa base de datos de axuda"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Ir manualmente."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Resposta"
 
diff --git a/l10n/gl/user_ldap.po b/l10n/gl/user_ldap.po
index 08efd8bd99fafc025e5b936434c795c01ec0bd16..84304f7f0a9247c71923886248095f7f3fa263da 100644
--- a/l10n/gl/user_ldap.po
+++ b/l10n/gl/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/he/core.po b/l10n/he/core.po
index db54c7bcbb327b5f4d24c6b7f48069d871f27dd0..babf202fb320fbc0bf1558d32324c55c083819b2 100644
--- a/l10n/he/core.po
+++ b/l10n/he/core.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -32,59 +32,55 @@ msgstr "אין קטגוריה להוספה?"
 msgid "This category already exists: "
 msgstr "קטגוריה זאת כבר קיימת: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "הגדרות"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "ינואר"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "פברואר"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "מרץ"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "אפריל"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "מאי"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "יוני"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "יולי"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "אוגוסט"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "ספטמבר"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "אוקטובר"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "נובמבר"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "דצמבר"
 
@@ -116,7 +112,7 @@ msgstr "שגיאה"
 msgid "ownCloud password reset"
 msgstr "איפוס הססמה של ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "יש להשתמש בקישור הבא כדי לאפס את הססמה שלך: {link}"
 
@@ -246,7 +242,7 @@ msgstr "סיום התקנה"
 msgid "web services under your control"
 msgstr "שירותי רשת בשליטתך"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "התנתקות"
 
diff --git a/l10n/he/files.po b/l10n/he/files.po
index ae9614b3482defe05e1ab9c2e9b524c6385981de..5cac6d4e90d5f1343af496620b0c3f5fb5c555e2 100644
--- a/l10n/he/files.po
+++ b/l10n/he/files.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -54,83 +54,100 @@ msgstr "הכתיבה לכונן נכשלה"
 msgid "Files"
 msgstr "קבצים"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "מחיקה"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "יוצר קובץ ZIP, אנא המתן."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "לא יכול להעלות את הקובץ מכיוון שזו תקיה או שמשקל הקובץ 0 בתים"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "שגיאת העלאה"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "ממתין"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "ההעלאה בוטלה."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "שם לא חוקי, '/' אסור לשימוש."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "גודל"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "זמן שינוי"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "תקיה"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "תקיות"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "קובץ"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "קבצים"
 
@@ -162,6 +179,10 @@ msgstr "0 - ללא הגבלה"
 msgid "Maximum input size for ZIP files"
 msgstr "גודל הקלט המרבי לקובצי ZIP"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "חדש"
@@ -186,36 +207,36 @@ msgstr "העלאה"
 msgid "Cancel upload"
 msgstr "ביטול ההעלאה"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "אין כאן שום דבר. אולי ברצונך להעלות משהו?"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "שם"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "שיתוף"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "הורדה"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "העלאה גדולה מידי"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "הקבצים שניסית להעלות חרגו מהגודל המקסימלי להעלאת קבצים על שרת זה."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "הקבצים נסרקים, נא להמתין."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "הסריקה הנוכחית"
diff --git a/l10n/he/files_external.po b/l10n/he/files_external.po
index ba3aa0596eb82e0820f4905828f69eab5ef72f66..78e36b4a5ab74c17d012b7ccdd17259e10b60ff4 100644
--- a/l10n/he/files_external.po
+++ b/l10n/he/files_external.po
@@ -3,23 +3,24 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Tomer Cohen <tomerc+transifex.net@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:34+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-05 02:01+0200\n"
+"PO-Revision-Date: 2012-09-04 23:27+0000\n"
+"Last-Translator: Tomer Cohen <tomerc+transifex.net@gmail.com>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: templates/settings.php:3
 msgid "External Storage"
-msgstr ""
+msgstr "אחסון חיצוני"
 
 #: templates/settings.php:7 templates/settings.php:19
 msgid "Mount point"
@@ -31,11 +32,11 @@ msgstr ""
 
 #: templates/settings.php:9
 msgid "Configuration"
-msgstr ""
+msgstr "הגדרות"
 
 #: templates/settings.php:10
 msgid "Options"
-msgstr ""
+msgstr "אפשרויות"
 
 #: templates/settings.php:11
 msgid "Applicable"
@@ -51,32 +52,32 @@ msgstr ""
 
 #: templates/settings.php:63
 msgid "All Users"
-msgstr ""
+msgstr "כל המשתמשים"
 
 #: templates/settings.php:64
 msgid "Groups"
-msgstr ""
+msgstr "קבוצות"
 
 #: templates/settings.php:69
 msgid "Users"
-msgstr ""
+msgstr "משתמשים"
 
 #: templates/settings.php:77 templates/settings.php:96
 msgid "Delete"
-msgstr ""
+msgstr "מחיקה"
 
 #: templates/settings.php:88
 msgid "SSL root certificates"
-msgstr ""
+msgstr "שורש אישורי אבטחת SSL "
 
 #: templates/settings.php:102
 msgid "Import Root Certificate"
-msgstr ""
+msgstr "ייבוא אישור אבטחת שורש"
 
 #: templates/settings.php:108
 msgid "Enable User External Storage"
-msgstr ""
+msgstr "הפעלת אחסון חיצוני למשתמשים"
 
 #: templates/settings.php:109
 msgid "Allow users to mount their own external storage"
-msgstr ""
+msgstr "יאפשר למשתמשים לעגן את האחסון החיצוני שלהם"
diff --git a/l10n/he/files_sharing.po b/l10n/he/files_sharing.po
index 75c35f14622e1689a5d5fe882d885669e7ec7bce..0e6dea4b5b14860119b076a27423892240c94cd5 100644
--- a/l10n/he/files_sharing.po
+++ b/l10n/he/files_sharing.po
@@ -3,32 +3,37 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Tomer Cohen <tomerc+transifex.net@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-05 02:01+0200\n"
+"PO-Revision-Date: 2012-09-04 23:20+0000\n"
+"Last-Translator: Tomer Cohen <tomerc+transifex.net@gmail.com>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr ""
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "ססמה"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr ""
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "שליחה"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr ""
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "הורדה"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr ""
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "אין תצוגה מקדימה זמינה עבור"
+
+#: templates/public.php:25
+msgid "web services under your control"
+msgstr "שירותי רשת תחת השליטה שלך"
diff --git a/l10n/he/files_versions.po b/l10n/he/files_versions.po
index 824d188bfd6037346859b9f042896372bff65306..e0cb0e526e39b9c87246c7052d5e63ac2b24c6cc 100644
--- a/l10n/he/files_versions.po
+++ b/l10n/he/files_versions.po
@@ -3,24 +3,33 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Tomer Cohen <tomerc+transifex.net@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-05 02:01+0200\n"
+"PO-Revision-Date: 2012-09-04 23:22+0000\n"
+"Last-Translator: Tomer Cohen <tomerc+transifex.net@gmail.com>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
-msgstr ""
+msgstr "הפגת תוקף כל הגרסאות"
+
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "גרסאות"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "פעולה זו תמחק את כל גיבויי הגרסאות הקיימים של הקבצים שלך"
 
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
-msgstr ""
+msgstr "הפעלת ניהול גרסאות לקבצים"
diff --git a/l10n/he/lib.po b/l10n/he/lib.po
index 78686b991a161ea0add7e59ac16810643ed2cdee..d85313a6ab8cd1cf61417e99b6c4604dda65edd9 100644
--- a/l10n/he/lib.po
+++ b/l10n/he/lib.po
@@ -3,110 +3,124 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Tomer Cohen <tomerc+transifex.net@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-05 02:01+0200\n"
+"PO-Revision-Date: 2012-09-04 23:19+0000\n"
+"Last-Translator: Tomer Cohen <tomerc+transifex.net@gmail.com>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
-msgstr ""
+msgstr "עזרה"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
-msgstr ""
+msgstr "אישי"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
-msgstr ""
+msgstr "הגדרות"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
-msgstr ""
+msgstr "משתמשים"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
-msgstr ""
+msgstr "יישומים"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
-msgstr ""
+msgstr "מנהל"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
-msgstr ""
+msgstr "הורדת ZIP כבויה"
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
-msgstr ""
+msgstr "יש להוריד את הקבצים אחד אחרי השני."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
-msgstr ""
+msgstr "חזרה לקבצים"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
-msgstr ""
+msgstr "הקבצים הנבחרים גדולים מידי ליצירת קובץ zip."
 
 #: json.php:28
 msgid "Application is not enabled"
-msgstr ""
+msgstr "יישומים אינם מופעלים"
 
 #: json.php:39 json.php:63 json.php:75
 msgid "Authentication error"
-msgstr ""
+msgstr "שגיאת הזדהות"
 
 #: json.php:51
 msgid "Token expired. Please reload page."
-msgstr ""
+msgstr "פג תוקף. נא לטעון שוב את הדף."
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
-msgstr ""
+msgstr "שניות"
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
-msgstr ""
+msgstr "לפני דקה אחת"
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
-msgstr ""
+msgstr "לפני %d דקות"
 
-#: template.php:91
+#: template.php:92
 msgid "today"
-msgstr ""
+msgstr "היום"
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
-msgstr ""
+msgstr "אתמול"
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
-msgstr ""
+msgstr "לפני %d ימים"
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
-msgstr ""
+msgstr "חודש שעבר"
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
-msgstr ""
+msgstr "חודשים"
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
-msgstr ""
+msgstr "שנה שעברה"
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
-msgstr ""
+msgstr "שנים"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s זמין. קבלת <a href=\"%s\">מידע נוסף</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "עדכני"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "בדיקת עדכונים מנוטרלת"
diff --git a/l10n/he/settings.po b/l10n/he/settings.po
index cd199ce76a6871330c879bac26309de2b4d17a82..bd56d364279b24cbb68d7dcd2431c54ee7b7a6c3 100644
--- a/l10n/he/settings.po
+++ b/l10n/he/settings.po
@@ -10,20 +10,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "הדוא״ל נשמר"
@@ -40,14 +53,28 @@ msgstr "OpenID השתנה"
 msgid "Invalid request"
 msgstr "בקשה לא חוקית"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "שפה השתנתה"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -72,30 +99,85 @@ msgstr "עברית"
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "יומן"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "עוד"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "הוספת היישום שלך"
@@ -109,34 +191,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "צפה בעמוד הישום ב apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "רשיון"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "מאת"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "תיעוד"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "ניהול קבצים גדולים"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "שאל שאלה"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "בעיות בהתחברות לבסיס נתוני העזרה"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "גש לשם באופן ידני"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "מענה"
 
diff --git a/l10n/he/user_ldap.po b/l10n/he/user_ldap.po
index 4dfdbd692b43a946d48be9bc6d228d4db5f10fb2..883705131350cab92ca6ba89e38a8f3709f85707 100644
--- a/l10n/he/user_ldap.po
+++ b/l10n/he/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/hi/core.po b/l10n/hi/core.po
new file mode 100644
index 0000000000000000000000000000000000000000..67cd5aa9ff7b21fb0bc886e1a276508e34945fe6
--- /dev/null
+++ b/l10n/hi/core.po
@@ -0,0 +1,269 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+# Sanjay Rabidas <rabidassanjay@gmail.com>, 2012.
+msgid ""
+msgstr ""
+"Project-Id-Version: ownCloud\n"
+"Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
+msgid "Application name not provided."
+msgstr ""
+
+#: ajax/vcategories/add.php:29
+msgid "No category to add?"
+msgstr ""
+
+#: ajax/vcategories/add.php:36
+msgid "This category already exists: "
+msgstr ""
+
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
+msgid "Settings"
+msgstr ""
+
+#: js/js.js:593
+msgid "January"
+msgstr ""
+
+#: js/js.js:593
+msgid "February"
+msgstr ""
+
+#: js/js.js:593
+msgid "March"
+msgstr ""
+
+#: js/js.js:593
+msgid "April"
+msgstr ""
+
+#: js/js.js:593
+msgid "May"
+msgstr ""
+
+#: js/js.js:593
+msgid "June"
+msgstr ""
+
+#: js/js.js:594
+msgid "July"
+msgstr ""
+
+#: js/js.js:594
+msgid "August"
+msgstr ""
+
+#: js/js.js:594
+msgid "September"
+msgstr ""
+
+#: js/js.js:594
+msgid "October"
+msgstr ""
+
+#: js/js.js:594
+msgid "November"
+msgstr ""
+
+#: js/js.js:594
+msgid "December"
+msgstr ""
+
+#: js/oc-dialogs.js:143 js/oc-dialogs.js:163
+msgid "Cancel"
+msgstr ""
+
+#: js/oc-dialogs.js:159
+msgid "No"
+msgstr ""
+
+#: js/oc-dialogs.js:160
+msgid "Yes"
+msgstr ""
+
+#: js/oc-dialogs.js:177
+msgid "Ok"
+msgstr ""
+
+#: js/oc-vcategories.js:68
+msgid "No categories selected for deletion."
+msgstr ""
+
+#: js/oc-vcategories.js:68
+msgid "Error"
+msgstr ""
+
+#: lostpassword/index.php:26
+msgid "ownCloud password reset"
+msgstr ""
+
+#: lostpassword/templates/email.php:2
+msgid "Use the following link to reset your password: {link}"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:3
+msgid "You will receive a link to reset your password via Email."
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:5
+msgid "Requested"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:8
+msgid "Login failed!"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:11 templates/installation.php:26
+#: templates/login.php:9
+msgid "Username"
+msgstr "प्रयोक्ता का नाम"
+
+#: lostpassword/templates/lostpassword.php:15
+msgid "Request reset"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:4
+msgid "Your password was reset"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:5
+msgid "To login page"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:8
+msgid "New password"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:11
+msgid "Reset password"
+msgstr ""
+
+#: strings.php:5
+msgid "Personal"
+msgstr ""
+
+#: strings.php:6
+msgid "Users"
+msgstr ""
+
+#: strings.php:7
+msgid "Apps"
+msgstr ""
+
+#: strings.php:8
+msgid "Admin"
+msgstr ""
+
+#: strings.php:9
+msgid "Help"
+msgstr ""
+
+#: templates/403.php:12
+msgid "Access forbidden"
+msgstr ""
+
+#: templates/404.php:12
+msgid "Cloud not found"
+msgstr "क्लौड नहीं मिला "
+
+#: templates/edit_categories_dialog.php:4
+msgid "Edit categories"
+msgstr ""
+
+#: templates/edit_categories_dialog.php:14
+msgid "Add"
+msgstr ""
+
+#: templates/installation.php:24
+msgid "Create an <strong>admin account</strong>"
+msgstr "व्यवस्थापक खाता बनाएँ"
+
+#: templates/installation.php:30 templates/login.php:13
+msgid "Password"
+msgstr "पासवर्ड"
+
+#: templates/installation.php:36
+msgid "Advanced"
+msgstr "उन्नत"
+
+#: templates/installation.php:38
+msgid "Data folder"
+msgstr ""
+
+#: templates/installation.php:45
+msgid "Configure the database"
+msgstr "डेटाबेस कॉन्फ़िगर करें "
+
+#: templates/installation.php:50 templates/installation.php:61
+#: templates/installation.php:71 templates/installation.php:81
+msgid "will be used"
+msgstr ""
+
+#: templates/installation.php:93
+msgid "Database user"
+msgstr "डेटाबेस उपयोगकर्ता"
+
+#: templates/installation.php:97
+msgid "Database password"
+msgstr "डेटाबेस पासवर्ड"
+
+#: templates/installation.php:101
+msgid "Database name"
+msgstr ""
+
+#: templates/installation.php:109
+msgid "Database tablespace"
+msgstr ""
+
+#: templates/installation.php:115
+msgid "Database host"
+msgstr ""
+
+#: templates/installation.php:120
+msgid "Finish setup"
+msgstr "सेटअप समाप्त करे"
+
+#: templates/layout.guest.php:42
+msgid "web services under your control"
+msgstr ""
+
+#: templates/layout.user.php:45
+msgid "Log out"
+msgstr ""
+
+#: templates/login.php:6
+msgid "Lost your password?"
+msgstr ""
+
+#: templates/login.php:17
+msgid "remember"
+msgstr ""
+
+#: templates/login.php:18
+msgid "Log in"
+msgstr ""
+
+#: templates/logout.php:1
+msgid "You are logged out."
+msgstr "आप लोग आउट  कर दिए गए हैं."
+
+#: templates/part.pagenavi.php:3
+msgid "prev"
+msgstr "पिछला"
+
+#: templates/part.pagenavi.php:20
+msgid "next"
+msgstr "अगला"
diff --git a/l10n/hi/files.po b/l10n/hi/files.po
new file mode 100644
index 0000000000000000000000000000000000000000..238575d5e479b3dda3661dd80822a32d53770e06
--- /dev/null
+++ b/l10n/hi/files.po
@@ -0,0 +1,239 @@
+# 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: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: ajax/upload.php:20
+msgid "There is no error, the file uploaded with success"
+msgstr ""
+
+#: ajax/upload.php:21
+msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini"
+msgstr ""
+
+#: ajax/upload.php:22
+msgid ""
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
+"the HTML form"
+msgstr ""
+
+#: ajax/upload.php:23
+msgid "The uploaded file was only partially uploaded"
+msgstr ""
+
+#: ajax/upload.php:24
+msgid "No file was uploaded"
+msgstr ""
+
+#: ajax/upload.php:25
+msgid "Missing a temporary folder"
+msgstr ""
+
+#: ajax/upload.php:26
+msgid "Failed to write to disk"
+msgstr ""
+
+#: appinfo/app.php:6
+msgid "Files"
+msgstr ""
+
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
+msgid "Delete"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
+msgid "already exists"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
+msgid "replace"
+msgstr ""
+
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
+msgid "cancel"
+msgstr ""
+
+#: js/filelist.js:235 js/filelist.js:237
+msgid "replaced"
+msgstr ""
+
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
+msgid "with"
+msgstr ""
+
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
+
+#: js/filelist.js:270
+msgid "deleted"
+msgstr ""
+
+#: js/files.js:179
+msgid "generating ZIP-file, it may take some time."
+msgstr ""
+
+#: js/files.js:208
+msgid "Unable to upload your file as it is a directory or has 0 bytes"
+msgstr ""
+
+#: js/files.js:208
+msgid "Upload Error"
+msgstr ""
+
+#: js/files.js:236 js/files.js:341 js/files.js:370
+msgid "Pending"
+msgstr ""
+
+#: js/files.js:355
+msgid "Upload cancelled."
+msgstr ""
+
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
+msgid "Invalid name, '/' is not allowed."
+msgstr ""
+
+#: js/files.js:746 templates/index.php:56
+msgid "Size"
+msgstr ""
+
+#: js/files.js:747 templates/index.php:58
+msgid "Modified"
+msgstr ""
+
+#: js/files.js:774
+msgid "folder"
+msgstr ""
+
+#: js/files.js:776
+msgid "folders"
+msgstr ""
+
+#: js/files.js:784
+msgid "file"
+msgstr ""
+
+#: js/files.js:786
+msgid "files"
+msgstr ""
+
+#: templates/admin.php:5
+msgid "File handling"
+msgstr ""
+
+#: templates/admin.php:7
+msgid "Maximum upload size"
+msgstr ""
+
+#: templates/admin.php:7
+msgid "max. possible: "
+msgstr ""
+
+#: templates/admin.php:9
+msgid "Needed for multi-file and folder downloads."
+msgstr ""
+
+#: templates/admin.php:9
+msgid "Enable ZIP-download"
+msgstr ""
+
+#: templates/admin.php:11
+msgid "0 is unlimited"
+msgstr ""
+
+#: templates/admin.php:12
+msgid "Maximum input size for ZIP files"
+msgstr ""
+
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
+#: templates/index.php:7
+msgid "New"
+msgstr ""
+
+#: templates/index.php:9
+msgid "Text file"
+msgstr ""
+
+#: templates/index.php:10
+msgid "Folder"
+msgstr ""
+
+#: templates/index.php:11
+msgid "From url"
+msgstr ""
+
+#: templates/index.php:21
+msgid "Upload"
+msgstr ""
+
+#: templates/index.php:27
+msgid "Cancel upload"
+msgstr ""
+
+#: templates/index.php:40
+msgid "Nothing in here. Upload something!"
+msgstr ""
+
+#: templates/index.php:48
+msgid "Name"
+msgstr ""
+
+#: templates/index.php:50
+msgid "Share"
+msgstr ""
+
+#: templates/index.php:52
+msgid "Download"
+msgstr ""
+
+#: templates/index.php:75
+msgid "Upload too large"
+msgstr ""
+
+#: templates/index.php:77
+msgid ""
+"The files you are trying to upload exceed the maximum size for file uploads "
+"on this server."
+msgstr ""
+
+#: templates/index.php:82
+msgid "Files are being scanned, please wait."
+msgstr ""
+
+#: templates/index.php:85
+msgid "Current scanning"
+msgstr ""
diff --git a/l10n/hi/files_encryption.po b/l10n/hi/files_encryption.po
new file mode 100644
index 0000000000000000000000000000000000000000..e6ff91a68b51879e3d2ac5009cfca524d2974880
--- /dev/null
+++ b/l10n/hi/files_encryption.po
@@ -0,0 +1,34 @@
+# 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: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-12 22:33+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: templates/settings.php:3
+msgid "Encryption"
+msgstr ""
+
+#: templates/settings.php:4
+msgid "Exclude the following file types from encryption"
+msgstr ""
+
+#: templates/settings.php:5
+msgid "None"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "Enable Encryption"
+msgstr ""
diff --git a/l10n/hi/files_external.po b/l10n/hi/files_external.po
new file mode 100644
index 0000000000000000000000000000000000000000..e27f4710d0800deace96e97e53702542ca9b36ba
--- /dev/null
+++ b/l10n/hi/files_external.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: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-12 22:34+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: templates/settings.php:3
+msgid "External Storage"
+msgstr ""
+
+#: templates/settings.php:7 templates/settings.php:19
+msgid "Mount point"
+msgstr ""
+
+#: templates/settings.php:8
+msgid "Backend"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "Configuration"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "Options"
+msgstr ""
+
+#: templates/settings.php:11
+msgid "Applicable"
+msgstr ""
+
+#: templates/settings.php:23
+msgid "Add mount point"
+msgstr ""
+
+#: templates/settings.php:54 templates/settings.php:62
+msgid "None set"
+msgstr ""
+
+#: templates/settings.php:63
+msgid "All Users"
+msgstr ""
+
+#: templates/settings.php:64
+msgid "Groups"
+msgstr ""
+
+#: templates/settings.php:69
+msgid "Users"
+msgstr ""
+
+#: templates/settings.php:77 templates/settings.php:96
+msgid "Delete"
+msgstr ""
+
+#: templates/settings.php:88
+msgid "SSL root certificates"
+msgstr ""
+
+#: templates/settings.php:102
+msgid "Import Root Certificate"
+msgstr ""
+
+#: templates/settings.php:108
+msgid "Enable User External Storage"
+msgstr ""
+
+#: templates/settings.php:109
+msgid "Allow users to mount their own external storage"
+msgstr ""
diff --git a/l10n/hi/files_sharing.po b/l10n/hi/files_sharing.po
new file mode 100644
index 0000000000000000000000000000000000000000..2c1a5c69458b754ac96ca5e7c482f53649b62cd2
--- /dev/null
+++ b/l10n/hi/files_sharing.po
@@ -0,0 +1,38 @@
+# 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: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:04+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr ""
+
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr ""
+
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr ""
+
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr ""
diff --git a/l10n/hi/files_versions.po b/l10n/hi/files_versions.po
new file mode 100644
index 0000000000000000000000000000000000000000..c1e27c1c31ddc2e26f1ae409fb81b17fd09f8f5f
--- /dev/null
+++ b/l10n/hi/files_versions.po
@@ -0,0 +1,34 @@
+# 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: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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/settings-personal.js:31 templates/settings-personal.php:10
+msgid "Expire all versions"
+msgstr ""
+
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
+#: templates/settings.php:3
+msgid "Enable Files Versioning"
+msgstr ""
diff --git a/l10n/hi/lib.po b/l10n/hi/lib.po
new file mode 100644
index 0000000000000000000000000000000000000000..c7209b64c42ff334689ac7dc8be686706996cb1e
--- /dev/null
+++ b/l10n/hi/lib.po
@@ -0,0 +1,125 @@
+# 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: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: app.php:288
+msgid "Help"
+msgstr ""
+
+#: app.php:295
+msgid "Personal"
+msgstr ""
+
+#: app.php:300
+msgid "Settings"
+msgstr ""
+
+#: app.php:305
+msgid "Users"
+msgstr ""
+
+#: app.php:312
+msgid "Apps"
+msgstr ""
+
+#: app.php:314
+msgid "Admin"
+msgstr ""
+
+#: files.php:280
+msgid "ZIP download is turned off."
+msgstr ""
+
+#: files.php:281
+msgid "Files need to be downloaded one by one."
+msgstr ""
+
+#: files.php:281 files.php:306
+msgid "Back to Files"
+msgstr ""
+
+#: files.php:305
+msgid "Selected files too large to generate zip file."
+msgstr ""
+
+#: json.php:28
+msgid "Application is not enabled"
+msgstr ""
+
+#: json.php:39 json.php:63 json.php:75
+msgid "Authentication error"
+msgstr ""
+
+#: json.php:51
+msgid "Token expired. Please reload page."
+msgstr ""
+
+#: template.php:86
+msgid "seconds ago"
+msgstr ""
+
+#: template.php:87
+msgid "1 minute ago"
+msgstr ""
+
+#: template.php:88
+#, php-format
+msgid "%d minutes ago"
+msgstr ""
+
+#: template.php:91
+msgid "today"
+msgstr ""
+
+#: template.php:92
+msgid "yesterday"
+msgstr ""
+
+#: template.php:93
+#, php-format
+msgid "%d days ago"
+msgstr ""
+
+#: template.php:94
+msgid "last month"
+msgstr ""
+
+#: template.php:95
+msgid "months ago"
+msgstr ""
+
+#: template.php:96
+msgid "last year"
+msgstr ""
+
+#: template.php:97
+msgid "years ago"
+msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/hi/settings.po b/l10n/hi/settings.po
new file mode 100644
index 0000000000000000000000000000000000000000..db0cc7e30fa1f69b9bb7e684ff09b17cd7b983e5
--- /dev/null
+++ b/l10n/hi/settings.po
@@ -0,0 +1,316 @@
+# 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: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: ajax/apps/ocs.php:23
+msgid "Unable to load list from App Store"
+msgstr ""
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
+#: ajax/lostpassword.php:14
+msgid "Email saved"
+msgstr ""
+
+#: ajax/lostpassword.php:16
+msgid "Invalid email"
+msgstr ""
+
+#: ajax/openid.php:16
+msgid "OpenID Changed"
+msgstr ""
+
+#: ajax/openid.php:18 ajax/setlanguage.php:20 ajax/setlanguage.php:23
+msgid "Invalid request"
+msgstr ""
+
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
+
+#: ajax/setlanguage.php:18
+msgid "Language changed"
+msgstr ""
+
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
+#: js/apps.js:18
+msgid "Error"
+msgstr ""
+
+#: js/apps.js:39 js/apps.js:73
+msgid "Disable"
+msgstr ""
+
+#: js/apps.js:39 js/apps.js:62
+msgid "Enable"
+msgstr ""
+
+#: js/personal.js:69
+msgid "Saving..."
+msgstr ""
+
+#: personal.php:46 personal.php:47
+msgid "__language_name__"
+msgstr ""
+
+#: templates/admin.php:14
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:17
+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/admin.php:31
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:33
+msgid "execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
+msgid "use systems cron service"
+msgstr ""
+
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:97
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:105
+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/apps.php:10
+msgid "Add your App"
+msgstr ""
+
+#: templates/apps.php:26
+msgid "Select an App"
+msgstr ""
+
+#: templates/apps.php:29
+msgid "See application page at apps.owncloud.com"
+msgstr ""
+
+#: templates/apps.php:30
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
+
+#: templates/help.php:9
+msgid "Documentation"
+msgstr ""
+
+#: templates/help.php:10
+msgid "Managing Big Files"
+msgstr ""
+
+#: templates/help.php:11
+msgid "Ask a question"
+msgstr ""
+
+#: templates/help.php:23
+msgid "Problems connecting to help database."
+msgstr ""
+
+#: templates/help.php:24
+msgid "Go there manually."
+msgstr ""
+
+#: templates/help.php:32
+msgid "Answer"
+msgstr ""
+
+#: templates/personal.php:8
+msgid "You use"
+msgstr ""
+
+#: templates/personal.php:8
+msgid "of the available"
+msgstr ""
+
+#: templates/personal.php:12
+msgid "Desktop and Mobile Syncing Clients"
+msgstr ""
+
+#: templates/personal.php:13
+msgid "Download"
+msgstr ""
+
+#: templates/personal.php:19
+msgid "Your password got changed"
+msgstr ""
+
+#: templates/personal.php:20
+msgid "Unable to change your password"
+msgstr ""
+
+#: templates/personal.php:21
+msgid "Current password"
+msgstr ""
+
+#: templates/personal.php:22
+msgid "New password"
+msgstr ""
+
+#: templates/personal.php:23
+msgid "show"
+msgstr ""
+
+#: templates/personal.php:24
+msgid "Change password"
+msgstr ""
+
+#: templates/personal.php:30
+msgid "Email"
+msgstr ""
+
+#: templates/personal.php:31
+msgid "Your email address"
+msgstr ""
+
+#: templates/personal.php:32
+msgid "Fill in an email address to enable password recovery"
+msgstr ""
+
+#: templates/personal.php:38 templates/personal.php:39
+msgid "Language"
+msgstr ""
+
+#: templates/personal.php:44
+msgid "Help translate"
+msgstr ""
+
+#: templates/personal.php:51
+msgid "use this address to connect to your ownCloud in your file manager"
+msgstr ""
+
+#: templates/users.php:21 templates/users.php:76
+msgid "Name"
+msgstr ""
+
+#: templates/users.php:23 templates/users.php:77
+msgid "Password"
+msgstr ""
+
+#: templates/users.php:26 templates/users.php:78 templates/users.php:98
+msgid "Groups"
+msgstr ""
+
+#: templates/users.php:32
+msgid "Create"
+msgstr ""
+
+#: templates/users.php:35
+msgid "Default Quota"
+msgstr ""
+
+#: templates/users.php:55 templates/users.php:138
+msgid "Other"
+msgstr ""
+
+#: templates/users.php:80 templates/users.php:112
+msgid "Group Admin"
+msgstr ""
+
+#: templates/users.php:82
+msgid "Quota"
+msgstr ""
+
+#: templates/users.php:146
+msgid "Delete"
+msgstr ""
diff --git a/l10n/hi/user_ldap.po b/l10n/hi/user_ldap.po
new file mode 100644
index 0000000000000000000000000000000000000000..1ca5b6139b6af5c9936b958862c6cee9c59b53e3
--- /dev/null
+++ b/l10n/hi/user_ldap.po
@@ -0,0 +1,170 @@
+# 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: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: templates/settings.php:8
+msgid "Host"
+msgstr ""
+
+#: templates/settings.php:8
+msgid ""
+"You can omit the protocol, except you require SSL. Then start with ldaps://"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "Base DN"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "You can specify Base DN for users and groups in the Advanced tab"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "User DN"
+msgstr ""
+
+#: templates/settings.php:10
+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:11
+msgid "Password"
+msgstr ""
+
+#: templates/settings.php:11
+msgid "For anonymous access, leave DN and Password empty."
+msgstr ""
+
+#: templates/settings.php:12
+msgid "User Login Filter"
+msgstr ""
+
+#: templates/settings.php:12
+#, php-format
+msgid ""
+"Defines the filter to apply, when login is attempted. %%uid replaces the "
+"username in the login action."
+msgstr ""
+
+#: templates/settings.php:12
+#, php-format
+msgid "use %%uid placeholder, e.g. \"uid=%%uid\""
+msgstr ""
+
+#: templates/settings.php:13
+msgid "User List Filter"
+msgstr ""
+
+#: templates/settings.php:13
+msgid "Defines the filter to apply, when retrieving users."
+msgstr ""
+
+#: templates/settings.php:13
+msgid "without any placeholder, e.g. \"objectClass=person\"."
+msgstr ""
+
+#: templates/settings.php:14
+msgid "Group Filter"
+msgstr ""
+
+#: templates/settings.php:14
+msgid "Defines the filter to apply, when retrieving groups."
+msgstr ""
+
+#: templates/settings.php:14
+msgid "without any placeholder, e.g. \"objectClass=posixGroup\"."
+msgstr ""
+
+#: templates/settings.php:17
+msgid "Port"
+msgstr ""
+
+#: templates/settings.php:18
+msgid "Base User Tree"
+msgstr ""
+
+#: templates/settings.php:19
+msgid "Base Group Tree"
+msgstr ""
+
+#: templates/settings.php:20
+msgid "Group-Member association"
+msgstr ""
+
+#: templates/settings.php:21
+msgid "Use TLS"
+msgstr ""
+
+#: templates/settings.php:21
+msgid "Do not use it for SSL connections, it will fail."
+msgstr ""
+
+#: templates/settings.php:22
+msgid "Case insensitve LDAP server (Windows)"
+msgstr ""
+
+#: templates/settings.php:23
+msgid "Turn off SSL certificate validation."
+msgstr ""
+
+#: templates/settings.php:23
+msgid ""
+"If connection only works with this option, import the LDAP server's SSL "
+"certificate in your ownCloud server."
+msgstr ""
+
+#: templates/settings.php:23
+msgid "Not recommended, use for testing only."
+msgstr ""
+
+#: templates/settings.php:24
+msgid "User Display Name Field"
+msgstr ""
+
+#: templates/settings.php:24
+msgid "The LDAP attribute to use to generate the user`s ownCloud name."
+msgstr ""
+
+#: templates/settings.php:25
+msgid "Group Display Name Field"
+msgstr ""
+
+#: templates/settings.php:25
+msgid "The LDAP attribute to use to generate the groups`s ownCloud name."
+msgstr ""
+
+#: templates/settings.php:27
+msgid "in bytes"
+msgstr ""
+
+#: templates/settings.php:29
+msgid "in seconds. A change empties the cache."
+msgstr ""
+
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
+msgid "Help"
+msgstr ""
diff --git a/l10n/hr/core.po b/l10n/hr/core.po
index f4c681a5e1feca12755824e8ddfd62ce3e2ed5e7..3c0fc9718617e337afd66f3cf03ce836649e7ccc 100644
--- a/l10n/hr/core.po
+++ b/l10n/hr/core.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -32,59 +32,55 @@ msgstr "Nemate kategorija koje možete dodati?"
 msgid "This category already exists: "
 msgstr "Ova kategorija već postoji: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Postavke"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Siječanj"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Veljača"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Ožujak"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Travanj"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Svibanj"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Lipanj"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Srpanj"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Kolovoz"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Rujan"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Listopad"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Studeni"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Prosinac"
 
@@ -116,7 +112,7 @@ msgstr "Pogreška"
 msgid "ownCloud password reset"
 msgstr "ownCloud resetiranje lozinke"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Koristite ovaj link da biste poništili lozinku: {link}"
 
@@ -246,7 +242,7 @@ msgstr "Završi postavljanje"
 msgid "web services under your control"
 msgstr "web usluge pod vašom kontrolom"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Odjava"
 
diff --git a/l10n/hr/files.po b/l10n/hr/files.po
index b68ac016d93e13768ed0bcff559237b3f37731b0..c7d3870a5a142761399548399fc022b8e5f33ceb 100644
--- a/l10n/hr/files.po
+++ b/l10n/hr/files.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-27 13:17+0000\n"
-"Last-Translator: fposavec <franz@franz-net.info>\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"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/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -54,83 +54,100 @@ msgstr "Neuspjelo pisanje na disk"
 msgid "Files"
 msgstr "Datoteke"
 
-#: js/fileactions.js:111 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Briši"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "već postoji"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "zamjeni"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "odustani"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "zamjenjeno"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "vrati"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "sa"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "vrati"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "izbrisano"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "generiranje ZIP datoteke, ovo može potrajati."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Pogreška pri slanju"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "U tijeku"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Slanje poništeno."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Neispravan naziv, znak '/' nije dozvoljen."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Veličina"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Zadnja promjena"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "mapa"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "mape"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "datoteka"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "datoteke"
 
@@ -162,6 +179,10 @@ msgstr "0 je \"bez limita\""
 msgid "Maximum input size for ZIP files"
 msgstr "Maksimalna veličina za ZIP datoteke"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "novo"
@@ -186,36 +207,36 @@ msgstr "Pošalji"
 msgid "Cancel upload"
 msgstr "Prekini upload"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Nema ničega u ovoj mapi. Pošalji nešto!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Naziv"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "podjeli"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Preuzmi"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Prijenos je preobiman"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Datoteke se skeniraju, molimo pričekajte."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Trenutno skeniranje"
diff --git a/l10n/hr/files_sharing.po b/l10n/hr/files_sharing.po
index 902174e80eb22f7b6ac215f20a54740cb2527a6a..d104bf184a131ab1d7ec9581e7cf239cf8da70d9 100644
--- a/l10n/hr/files_sharing.po
+++ b/l10n/hr/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:04+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Croatian (http://www.transifex.com/projects/p/owncloud/language/hr/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ 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"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/hr/files_versions.po b/l10n/hr/files_versions.po
index f49ed48608134f8d80e47b1945dfc15d0a890910..46ae10682732959f71b8bd2f067e0746ffa2e39f 100644
--- a/l10n/hr/files_versions.po
+++ b/l10n/hr/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ 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"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/hr/lib.po b/l10n/hr/lib.po
index d38126e621cb4df340cdfa7643800ee12db5e99f..a9682726b85ac2e3d5df173d3b5322517bcace57 100644
--- a/l10n/hr/lib.po
+++ b/l10n/hr/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ 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"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/hr/settings.po b/l10n/hr/settings.po
index 38e378b862c3555a3152ce3535b8bc72b029c0fe..ef3eacff14859f39552440c4692554f14fd94b7f 100644
--- a/l10n/hr/settings.po
+++ b/l10n/hr/settings.po
@@ -10,20 +10,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-27 13:20+0000\n"
-"Last-Translator: fposavec <franz@franz-net.info>\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"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/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Nemogićnost učitavanja liste sa Apps Stora"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Greška kod autorizacije"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Email spremljen"
@@ -40,14 +53,28 @@ msgstr "OpenID promijenjen"
 msgid "Invalid request"
 msgstr "Neispravan zahtjev"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Greška kod autorizacije"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Jezik promijenjen"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Greška"
@@ -72,30 +99,85 @@ msgstr "__ime_jezika__"
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr ""
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php je registriran kod webcron servisa"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "koristi sistemski cron servis"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "dnevnik"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "više"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Dodajte vašu aplikaciju"
@@ -109,34 +191,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Pogledajte stranicu s aplikacijama na apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licencirano"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "od"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "dokumentacija"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Upravljanje velikih datoteka"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Postavite pitanje"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problem pri spajanju na bazu podataka pomoći"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Idite tamo ručno."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Odgovor"
 
diff --git a/l10n/hr/user_ldap.po b/l10n/hr/user_ldap.po
index 14dcd91c0119f1ee09e29e673a8f9fcd70d1e589..a7e026ac7912b52c55cd9c951fb79d45dee5fd51 100644
--- a/l10n/hr/user_ldap.po
+++ b/l10n/hr/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/hu_HU/core.po b/l10n/hu_HU/core.po
index 965d3bd8a29aee70bb7156c31cf08e0d456f3906..6d1680b032c55c852f3e0c14fa4d0ecdf6b1ff95 100644
--- a/l10n/hu_HU/core.po
+++ b/l10n/hu_HU/core.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -32,59 +32,55 @@ msgstr "Nincs hozzáadandó kategória?"
 msgid "This category already exists: "
 msgstr "Ez a kategória már létezik"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Beállítások"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Január"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Február"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Március"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Április"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Május"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Június"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Július"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Augusztus"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Szeptember"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Október"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "November"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "December"
 
@@ -116,7 +112,7 @@ msgstr "Hiba"
 msgid "ownCloud password reset"
 msgstr "ownCloud jelszó-visszaállítás"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Használja az alábbi linket a jelszó-visszaállításhoz: {link}"
 
@@ -246,7 +242,7 @@ msgstr "Beállítás befejezése"
 msgid "web services under your control"
 msgstr "webszolgáltatások az irányításod alatt"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Kilépés"
 
diff --git a/l10n/hu_HU/files.po b/l10n/hu_HU/files.po
index 7ad223a345b1a07cbc0a83c79c45ca6e82925e66..09722e387138326ab953d7748bcba9d47114b4de 100644
--- a/l10n/hu_HU/files.po
+++ b/l10n/hu_HU/files.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -54,83 +54,100 @@ msgstr "Nem írható lemezre"
 msgid "Files"
 msgstr "Fájlok"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Törlés"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "már létezik"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "cserél"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "mégse"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "kicserélve"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "visszavon"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "-val/-vel"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "visszavon"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "törölve"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "ZIP-fájl generálása, ez eltarthat egy ideig."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Feltöltési hiba"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Folyamatban"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Feltöltés megszakítva"
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Érvénytelen név, a '/' nem megengedett"
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Méret"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Módosítva"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "mappa"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "mappák"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "fájl"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "fájlok"
 
@@ -162,6 +179,10 @@ msgstr "0 = korlátlan"
 msgid "Maximum input size for ZIP files"
 msgstr "ZIP file-ok maximum mérete"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Új"
@@ -186,36 +207,36 @@ msgstr "Feltöltés"
 msgid "Cancel upload"
 msgstr "Feltöltés megszakítása"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Töltsön fel egy fájlt."
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Név"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Megosztás"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Letöltés"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Feltöltés túl nagy"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "A fájlokat amit próbálsz feltölteni meghaladta a legnagyobb fájlméretet ezen a szerveren."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "File-ok vizsgálata, kis türelmet"
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Aktuális vizsgálat"
diff --git a/l10n/hu_HU/files_sharing.po b/l10n/hu_HU/files_sharing.po
index 6d274d3823629a5711c885ce7598131de8ae00d2..11d84d4a408b3d123910ae778bc5fe54e367bdca 100644
--- a/l10n/hu_HU/files_sharing.po
+++ b/l10n/hu_HU/files_sharing.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-26 19:46+0200\n"
-"PO-Revision-Date: 2012-08-26 09:23+0000\n"
-"Last-Translator: Csaba Orban <vicsabi@gmail.com>\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -18,18 +18,22 @@ msgstr ""
 "Language: hu_HU\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Méret"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr ""
+
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Módosítva"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Összes törlése"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Törlés"
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr ""
diff --git a/l10n/hu_HU/files_versions.po b/l10n/hu_HU/files_versions.po
index c7ef6a41ba62730e6d4d7e31077711f6e004cf6b..8110815df5c7f3ccefe9be2d596c8d1f1fbf5f41 100644
--- a/l10n/hu_HU/files_versions.po
+++ b/l10n/hu_HU/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: hu_HU\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/hu_HU/lib.po b/l10n/hu_HU/lib.po
index cd149d946d776a0b524e18e8b6c10a86a7fcf5e2..ddbcd4f2d02937a237aa3e69178167a5662c210f 100644
--- a/l10n/hu_HU/lib.po
+++ b/l10n/hu_HU/lib.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Adam Toth <adazlord@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,96 +18,109 @@ msgstr ""
 "Language: hu_HU\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
-msgstr ""
+msgstr "Súgó"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
-msgstr ""
+msgstr "Személyes"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
-msgstr ""
+msgstr "Beállítások"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
-msgstr ""
+msgstr "Felhasználók"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
-msgstr ""
+msgstr "Alkalmazások"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
-msgstr ""
+msgstr "Admin"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
-msgstr ""
+msgstr "ZIP-letöltés letiltva"
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
-msgstr ""
+msgstr "A file-okat egyenként kell letölteni"
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
-msgstr ""
+msgstr "Vissza a File-okhoz"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
-msgstr ""
+msgstr "Túl nagy file-ok a zip-generáláshoz"
 
 #: json.php:28
 msgid "Application is not enabled"
-msgstr ""
+msgstr "Az alkalmazás nincs engedélyezve"
 
 #: json.php:39 json.php:63 json.php:75
 msgid "Authentication error"
-msgstr ""
+msgstr "Hitelesítési hiba"
 
 #: json.php:51
 msgid "Token expired. Please reload page."
-msgstr ""
+msgstr "A token lejárt. Frissítsd az oldalt."
 
 #: template.php:86
 msgid "seconds ago"
-msgstr ""
+msgstr "másodperccel ezelőtt"
 
 #: template.php:87
 msgid "1 minute ago"
-msgstr ""
+msgstr "1 perccel ezelőtt"
 
 #: template.php:88
 #, php-format
 msgid "%d minutes ago"
-msgstr ""
+msgstr "%d perccel ezelőtt"
 
 #: template.php:91
 msgid "today"
-msgstr ""
+msgstr "ma"
 
 #: template.php:92
 msgid "yesterday"
-msgstr ""
+msgstr "tegnap"
 
 #: template.php:93
 #, php-format
 msgid "%d days ago"
-msgstr ""
+msgstr "%d évvel ezelőtt"
 
 #: template.php:94
 msgid "last month"
-msgstr ""
+msgstr "múlt hónapban"
 
 #: template.php:95
 msgid "months ago"
-msgstr ""
+msgstr "hónappal ezelőtt"
 
 #: template.php:96
 msgid "last year"
-msgstr ""
+msgstr "tavaly"
 
 #: template.php:97
 msgid "years ago"
+msgstr "évvel ezelőtt"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
 msgstr ""
diff --git a/l10n/hu_HU/settings.po b/l10n/hu_HU/settings.po
index 0b5b94d6c6c41483efe49ead9113b838630aba65..5f3d66a4dd96003e38bf0788b5d926333f1e2ea6 100644
--- a/l10n/hu_HU/settings.po
+++ b/l10n/hu_HU/settings.po
@@ -9,20 +9,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Nem tölthető le a lista az App Store-ból"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Hitelesítési hiba"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Email mentve"
@@ -39,14 +52,28 @@ msgstr "OpenID megváltozott"
 msgid "Invalid request"
 msgstr "Érvénytelen kérés"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Hitelesítési hiba"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "A nyelv megváltozott"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Hiba"
@@ -71,30 +98,85 @@ msgstr "__language_name__"
 msgid "Security Warning"
 msgstr "Biztonsági figyelmeztetés"
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Napló"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Tovább"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "App hozzáadása"
@@ -108,34 +190,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Lásd apps.owncloud.com, alkalmazások oldal"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licencelt"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr ":"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentáció"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Nagy fájlok kezelése"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Tégy fel egy kérdést"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Sikertelen csatlakozás a Súgó adatbázishoz"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Menj oda kézzel"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Válasz"
 
diff --git a/l10n/hu_HU/user_ldap.po b/l10n/hu_HU/user_ldap.po
index 87c015d08c7bb4e1a81b52264c4c2e8bf4bc7871..cacb371b1b53f67c33f3a2e9697cce5bc43f77fb 100644
--- a/l10n/hu_HU/user_ldap.po
+++ b/l10n/hu_HU/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/hy/core.po b/l10n/hy/core.po
index 5f319f687d7af7d5f5ddbc757048810c941068b6..bd1b74571d7bd8a3b2735ac62984e43516ef91c5 100644
--- a/l10n/hy/core.po
+++ b/l10n/hy/core.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Armenian (http://www.transifex.com/projects/p/owncloud/language/hy/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: hy\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -29,59 +29,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -113,7 +109,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr ""
 
@@ -243,7 +239,7 @@ msgstr ""
 msgid "web services under your control"
 msgstr ""
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr ""
 
diff --git a/l10n/hy/files.po b/l10n/hy/files.po
index 7d158306ff63b5f7d6aa1c3f78ca5baca15060bd..9a144a813094808b854f754f661f25fd5d1f2b03 100644
--- a/l10n/hy/files.po
+++ b/l10n/hy/files.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Armenian (http://www.transifex.com/projects/p/owncloud/language/hy/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: hy\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -51,83 +51,100 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr ""
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -159,6 +176,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr ""
@@ -183,36 +204,36 @@ msgstr ""
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr ""
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr ""
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr ""
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr ""
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr ""
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/hy/files_sharing.po b/l10n/hy/files_sharing.po
index d7ecd0cfa11eb2c18762afd0b6f4a86348ed4418..b21d68c683156e2727798b7ce0ed15c3863047b6 100644
--- a/l10n/hy/files_sharing.po
+++ b/l10n/hy/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Armenian (http://www.transifex.com/projects/p/owncloud/language/hy/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: hy\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/hy/files_versions.po b/l10n/hy/files_versions.po
index 756f8887dd8cc22c8f29a26ec827f59c9a5fd85e..7ac5f7649e76e651ab09aa94082b9d728748959d 100644
--- a/l10n/hy/files_versions.po
+++ b/l10n/hy/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Armenian (http://www.transifex.com/projects/p/owncloud/language/hy/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: hy\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/hy/lib.po b/l10n/hy/lib.po
index 1a8aea0ebb468e87f92cf502fec809a65380c4e0..a6359330b340cf390a2b6652c37be07d9fabed51 100644
--- a/l10n/hy/lib.po
+++ b/l10n/hy/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Armenian (http://www.transifex.com/projects/p/owncloud/language/hy/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: hy\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/hy/settings.po b/l10n/hy/settings.po
index 13b4e1663584cecd13aa01bc82dd36fe2b8a6d85..394122cdf15f8dfb2d426c1b5673b4647af09d68 100644
--- a/l10n/hy/settings.po
+++ b/l10n/hy/settings.po
@@ -7,20 +7,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Armenian (http://www.transifex.com/projects/p/owncloud/language/hy/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: hy\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -37,14 +50,28 @@ msgstr ""
 msgid "Invalid request"
 msgstr ""
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr ""
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -69,30 +96,85 @@ msgstr ""
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -106,34 +188,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr ""
-
-#: templates/apps.php:30
-msgid "by"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
 msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr ""
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr ""
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr ""
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr ""
 
diff --git a/l10n/hy/user_ldap.po b/l10n/hy/user_ldap.po
index 78202c352c04bd0ab581b4b94820b58fad31763e..438a2108b76873cf9c642095ab8dd9b49d3eb9ab 100644
--- a/l10n/hy/user_ldap.po
+++ b/l10n/hy/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Armenian (http://www.transifex.com/projects/p/owncloud/language/hy/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/ia/core.po b/l10n/ia/core.po
index 2aa2484da6951004bc5bd2e4fadc84e347fffc15..100482b0244e355b7768706952c29d3c611a94fc 100644
--- a/l10n/ia/core.po
+++ b/l10n/ia/core.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -30,59 +30,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr "Iste categoria jam existe:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Configurationes"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -114,7 +110,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr "Reinitialisation del contrasigno de ownCLoud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr ""
 
@@ -244,7 +240,7 @@ msgstr ""
 msgid "web services under your control"
 msgstr "servicios web sub tu controlo"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Clauder le session"
 
diff --git a/l10n/ia/files.po b/l10n/ia/files.po
index 64f2fc617a471379484c6202eb1701862c823440..cdce2e1a66e8f59923094be6b1ede174bd8fe9c4 100644
--- a/l10n/ia/files.po
+++ b/l10n/ia/files.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +53,100 @@ msgstr ""
 msgid "Files"
 msgstr "Files"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Deler"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Dimension"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Modificate"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -161,6 +178,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nove"
@@ -185,36 +206,36 @@ msgstr "Incargar"
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Nihil hic. Incarga alcun cosa!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nomine"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Discargar"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Incargamento troppo longe"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr ""
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/ia/files_sharing.po b/l10n/ia/files_sharing.po
index 55cfbbcf2ea4216eeb838f2dfa40737bbf74ec94..2c01e0d398a58e1bfcb810aa6fb42e658870d82f 100644
--- a/l10n/ia/files_sharing.po
+++ b/l10n/ia/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Interlingua (http://www.transifex.com/projects/p/owncloud/language/ia/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: ia\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/ia/files_versions.po b/l10n/ia/files_versions.po
index d98c59df09f7d8270eb5a9c0ec21169d80c050e2..c874ecb7e4681f0a0a1bb97bab530d5bfd415c0d 100644
--- a/l10n/ia/files_versions.po
+++ b/l10n/ia/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: ia\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/ia/lib.po b/l10n/ia/lib.po
index 49508111104f67fb38767dd37af8762228676482..ea036a2639920b49c7842199679e2e6ec4c9e022 100644
--- a/l10n/ia/lib.po
+++ b/l10n/ia/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: ia\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/ia/settings.po b/l10n/ia/settings.po
index fe56aae5b90487e967b659f2f2812a5fd28b68e2..ab80ed851adde1746e4171cb8179aee3341c34b0 100644
--- a/l10n/ia/settings.po
+++ b/l10n/ia/settings.po
@@ -9,20 +9,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -39,14 +52,28 @@ msgstr "OpenID cambiate"
 msgid "Invalid request"
 msgstr "Requesta invalide"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Linguage cambiate"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -71,30 +98,85 @@ msgstr "Interlingua"
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Registro"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Plus"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Adder tu application"
@@ -108,34 +190,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
 msgstr ""
 
-#: templates/apps.php:30
-msgid "by"
-msgstr "per"
-
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Documentation"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Facer un question"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr ""
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr ""
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Responsa"
 
diff --git a/l10n/ia/user_ldap.po b/l10n/ia/user_ldap.po
index f5bb1888f4f7328e8e676d7e0b5418f3f03526c3..73b531764ae069d5e372e42f6235c5bfd3f337c9 100644
--- a/l10n/ia/user_ldap.po
+++ b/l10n/ia/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/id/core.po b/l10n/id/core.po
index 0e9358c26a0baa94b004ea0057e894e3a061930f..9cb0f7651e1a7b8ff58f73e70228d48284f262c1 100644
--- a/l10n/id/core.po
+++ b/l10n/id/core.po
@@ -3,21 +3,22 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Muhammad Fauzan <yosanpro@gmail.com>, 2012.
 # Muhammad Panji <sumodirjo@gmail.com>, 2012.
 # Muhammad Radifar <m_radifar05@yahoo.com>, 2011.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:01+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -31,81 +32,77 @@ msgstr "Tidak ada kategori yang akan ditambahkan?"
 msgid "This category already exists: "
 msgstr "Kategori ini sudah ada:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Setelan"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
-msgstr ""
+msgstr "Januari"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
-msgstr ""
+msgstr "Februari"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
-msgstr ""
+msgstr "Maret"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
-msgstr ""
+msgstr "April"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
-msgstr ""
+msgstr "Mei"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
-msgstr ""
+msgstr "Juni"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
-msgstr ""
+msgstr "Juli"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
-msgstr ""
+msgstr "Agustus"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
-msgstr ""
+msgstr "September"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
-msgstr ""
+msgstr "Oktober"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
-msgstr ""
+msgstr "Nopember"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
-msgstr ""
+msgstr "Desember"
 
 #: js/oc-dialogs.js:143 js/oc-dialogs.js:163
 msgid "Cancel"
-msgstr ""
+msgstr "Batalkan"
 
 #: js/oc-dialogs.js:159
 msgid "No"
-msgstr ""
+msgstr "Tidak"
 
 #: js/oc-dialogs.js:160
 msgid "Yes"
-msgstr ""
+msgstr "Ya"
 
 #: js/oc-dialogs.js:177
 msgid "Ok"
-msgstr ""
+msgstr "Oke"
 
 #: js/oc-vcategories.js:68
 msgid "No categories selected for deletion."
-msgstr ""
+msgstr "Tidak ada kategori terpilih untuk penghapusan."
 
 #: js/oc-vcategories.js:68
 msgid "Error"
@@ -115,7 +112,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr "reset password ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Gunakan tautan berikut untuk mereset password anda: {link}"
 
@@ -245,7 +242,7 @@ msgstr "Selesaikan instalasi"
 msgid "web services under your control"
 msgstr "web service dibawah kontrol anda"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Keluar"
 
diff --git a/l10n/id/files.po b/l10n/id/files.po
index 3a96e71072de67bb591de8b065860e61206a0568..9479165468a978fc445c612169782341d2ac5214 100644
--- a/l10n/id/files.po
+++ b/l10n/id/files.po
@@ -3,21 +3,22 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Muhammad Fauzan <yosanpro@gmail.com>, 2012.
 # Muhammad Panji <sumodirjo@gmail.com>, 2012.
 # Muhammad Radifar <m_radifar05@yahoo.com>, 2011.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -25,13 +26,13 @@ msgstr "Tidak ada galat, berkas sukses diunggah"
 
 #: ajax/upload.php:21
 msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini"
-msgstr ""
+msgstr "File yang diunggah melampaui directive upload_max_filesize di php.ini"
 
 #: ajax/upload.php:22
 msgid ""
 "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
 "the HTML form"
-msgstr ""
+msgstr "File yang diunggah melampaui directive MAX_FILE_SIZE yang disebutan dalam form HTML."
 
 #: ajax/upload.php:23
 msgid "The uploaded file was only partially uploaded"
@@ -53,85 +54,102 @@ msgstr "Gagal menulis ke disk"
 msgid "Files"
 msgstr "Berkas"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Hapus"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
-msgstr ""
+msgstr "sudah ada"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
+msgstr "mengganti"
+
+#: js/filelist.js:186
+msgid "suggest name"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
-msgstr ""
+msgstr "batalkan"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
-msgstr ""
+msgstr "diganti"
+
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "batal dikerjakan"
 
-#: js/filelist.js:195
+#: js/filelist.js:237
 msgid "with"
-msgstr ""
+msgstr "dengan"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
-msgstr ""
+msgstr "dihapus"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
-msgstr ""
+msgstr "membuat berkas ZIP, ini mungkin memakan waktu."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
-msgstr ""
+msgstr "Gagal mengunggah berkas anda karena berupa direktori atau mempunyai ukuran 0 byte"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
-msgstr ""
+msgstr "Terjadi Galat Pengunggahan"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
-msgstr ""
+msgstr "Menunggu"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
+msgstr "Pengunggahan dibatalkan."
+
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
-msgstr ""
+msgstr "Kesalahan nama, '/' tidak diijinkan."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Ukuran"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Dimodifikasi"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
-msgstr ""
+msgstr "folder"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
-msgstr ""
+msgstr "folder-folder"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
-msgstr ""
+msgstr "berkas"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
-msgstr ""
+msgstr "berkas-berkas"
 
 #: templates/admin.php:5
 msgid "File handling"
@@ -161,6 +179,10 @@ msgstr "0 adalah tidak terbatas"
 msgid "Maximum input size for ZIP files"
 msgstr "Ukuran masukan maksimal untuk berkas ZIP"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Baru"
@@ -185,36 +207,36 @@ msgstr "Unggah"
 msgid "Cancel upload"
 msgstr "Batal mengunggah"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Tidak ada apa-apa di sini. Unggah sesuatu!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nama"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Bagikan"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Unduh"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Unggahan terlalu besar"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Berkas sedang dipindai, silahkan tunggu."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Sedang memindai"
diff --git a/l10n/id/files_sharing.po b/l10n/id/files_sharing.po
index 0a4a395144c21c70ad67f50d61ad399c0cf2f7e4..e2be0ffdea8c45b8ff939f30a49b3bc18c75897e 100644
--- a/l10n/id/files_sharing.po
+++ b/l10n/id/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Indonesian (http://www.transifex.com/projects/p/owncloud/language/id/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: id\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/id/files_versions.po b/l10n/id/files_versions.po
index 2014a3f2f1bb2a0161761c8bef9d89ae846db7fd..b28e40950f123a7bf263eddb8e46a4319222c130 100644
--- a/l10n/id/files_versions.po
+++ b/l10n/id/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: id\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/id/lib.po b/l10n/id/lib.po
index 6c8b5a8c494081f330b1aca5b15a91bf1c92166f..3193d5c4dd2ca9be5dfaccfd0c20f74938884f1d 100644
--- a/l10n/id/lib.po
+++ b/l10n/id/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: id\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/id/settings.po b/l10n/id/settings.po
index 8b4f28abc2e0664c542d526c964e0bf54116006e..c2bd93b9e17f78eb15dc2eee0d0426d365670473 100644
--- a/l10n/id/settings.po
+++ b/l10n/id/settings.po
@@ -3,33 +3,47 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Muhammad Fauzan <yosanpro@gmail.com>, 2012.
 # Muhammad Panji <sumodirjo@gmail.com>, 2012.
 # Muhammad Radifar <m_radifar05@yahoo.com>, 2011.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
-msgstr ""
+msgstr "Email tersimpan"
 
 #: ajax/lostpassword.php:16
 msgid "Invalid email"
-msgstr ""
+msgstr "Email tidak sah"
 
 #: ajax/openid.php:16
 msgid "OpenID Changed"
@@ -39,29 +53,43 @@ msgstr "OpenID telah dirubah"
 msgid "Invalid request"
 msgstr "Permintaan tidak valid"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Bahasa telah diganti"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
 
 #: js/apps.js:39 js/apps.js:73
 msgid "Disable"
-msgstr ""
+msgstr "NonAktifkan"
 
 #: js/apps.js:39 js/apps.js:62
 msgid "Enable"
-msgstr ""
+msgstr "Aktifkan"
 
 #: js/personal.js:69
 msgid "Saving..."
-msgstr ""
+msgstr "Menyimpan..."
 
 #: personal.php:46 personal.php:47
 msgid "__language_name__"
@@ -69,32 +97,87 @@ msgstr "__language_name__"
 
 #: templates/admin.php:14
 msgid "Security Warning"
+msgstr "Peringatan Keamanan"
+
+#: templates/admin.php:17
+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/admin.php:29
+#: templates/admin.php:31
 msgid "Cron"
 msgstr ""
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr ""
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr ""
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Log"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Lebih"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Tambahkan App anda"
@@ -105,37 +188,33 @@ msgstr "Pilih satu aplikasi"
 
 #: templates/apps.php:29
 msgid "See application page at apps.owncloud.com"
-msgstr ""
+msgstr "Lihat halaman aplikasi di apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-terlisensi"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "oleh"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentasi"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Mengelola berkas besar"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Ajukan pertanyaan"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Bermasalah saat menghubungi database bantuan."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Pergi kesana secara manual."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Jawab"
 
@@ -229,7 +308,7 @@ msgstr "Lain-lain"
 
 #: templates/users.php:80 templates/users.php:112
 msgid "Group Admin"
-msgstr ""
+msgstr "Admin Grup"
 
 #: templates/users.php:82
 msgid "Quota"
diff --git a/l10n/id/user_ldap.po b/l10n/id/user_ldap.po
index 528094a8b2bf5daf02ffac44387f0f644d8854b8..5d7f42dc6af9d18dbe6cc9427cd6773966b84280 100644
--- a/l10n/id/user_ldap.po
+++ b/l10n/id/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/id_ID/core.po b/l10n/id_ID/core.po
index cd8e40cd221cac0148c718195a9ffd0f49aea592..a7ada9179b81b24c6f79f822733ade8210120236 100644
--- a/l10n/id_ID/core.po
+++ b/l10n/id_ID/core.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Indonesian (Indonesia) (http://www.transifex.com/projects/p/owncloud/language/id_ID/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: id_ID\n"
-"Plural-Forms: nplurals=1; plural=0\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -29,59 +29,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -113,7 +109,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr ""
 
@@ -243,7 +239,7 @@ msgstr ""
 msgid "web services under your control"
 msgstr ""
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr ""
 
diff --git a/l10n/id_ID/files.po b/l10n/id_ID/files.po
index 4e35fb7c4e4b085b963881d385f255d5e1f22a15..813b83410c6c6086f2b425aa4beaffa41d640115 100644
--- a/l10n/id_ID/files.po
+++ b/l10n/id_ID/files.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Indonesian (Indonesia) (http://www.transifex.com/projects/p/owncloud/language/id_ID/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: id_ID\n"
-"Plural-Forms: nplurals=1; plural=0\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -51,83 +51,100 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr ""
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -159,6 +176,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr ""
@@ -183,36 +204,36 @@ msgstr ""
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr ""
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr ""
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr ""
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr ""
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr ""
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/id_ID/files_sharing.po b/l10n/id_ID/files_sharing.po
index fdba039609d89aa0dd60b0a77c5743ca761e172f..c3989d22074ddb06d60ffe1203f7a1fe192c489b 100644
--- a/l10n/id_ID/files_sharing.po
+++ b/l10n/id_ID/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Indonesian (Indonesia) (http://www.transifex.com/projects/p/owncloud/language/id_ID/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: id_ID\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/id_ID/files_versions.po b/l10n/id_ID/files_versions.po
index f8b53c2af4eada650a17019b95a2791b3502b6a1..027df71e5ea9dce3632ca871e097ab9dd7a1e8d5 100644
--- a/l10n/id_ID/files_versions.po
+++ b/l10n/id_ID/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Indonesian (Indonesia) (http://www.transifex.com/projects/p/owncloud/language/id_ID/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: id_ID\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/id_ID/lib.po b/l10n/id_ID/lib.po
index 62fef73ca057c9d002e4e128f992c89f25096897..5335009078639a8c8ba151c75aa1e946e05d30b4 100644
--- a/l10n/id_ID/lib.po
+++ b/l10n/id_ID/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Indonesian (Indonesia) (http://www.transifex.com/projects/p/owncloud/language/id_ID/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: id_ID\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/id_ID/settings.po b/l10n/id_ID/settings.po
index e6873fc49b4e0b978b196308285324b84fdb0c0d..b70af6b0c3f4ec37e5ae2def750bc3b290d4a531 100644
--- a/l10n/id_ID/settings.po
+++ b/l10n/id_ID/settings.po
@@ -7,20 +7,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Indonesian (Indonesia) (http://www.transifex.com/projects/p/owncloud/language/id_ID/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: id_ID\n"
-"Plural-Forms: nplurals=1; plural=0\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -37,14 +50,28 @@ msgstr ""
 msgid "Invalid request"
 msgstr ""
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr ""
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -69,30 +96,85 @@ msgstr ""
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -106,34 +188,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr ""
-
-#: templates/apps.php:30
-msgid "by"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
 msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr ""
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr ""
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr ""
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr ""
 
diff --git a/l10n/id_ID/user_ldap.po b/l10n/id_ID/user_ldap.po
index eb078008f530e4e08ebb536f11514041ca5e1445..52cb5aac1a9e04104e28836c4a1b01f386067fae 100644
--- a/l10n/id_ID/user_ldap.po
+++ b/l10n/id_ID/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Indonesian (Indonesia) (http://www.transifex.com/projects/p/owncloud/language/id_ID/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/it/core.po b/l10n/it/core.po
index fb8cb1314754c8aaafcaf462de658bbf64ee0826..f4904b27927eeefdd4da8efb692d0631d76b37cb 100644
--- a/l10n/it/core.po
+++ b/l10n/it/core.po
@@ -12,15 +12,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:01+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-07 02:04+0200\n"
+"PO-Revision-Date: 2012-09-06 05:05+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: it\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -34,59 +34,55 @@ msgstr "Nessuna categoria da aggiungere?"
 msgid "This category already exists: "
 msgstr "Questa categoria esiste già: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Impostazioni"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Gennaio"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Febbraio"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Marzo"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Aprile"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Maggio"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Giugno"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Luglio"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Agosto"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Settembre"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Ottobre"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Novembre"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Dicembre"
 
@@ -118,7 +114,7 @@ msgstr "Errore"
 msgid "ownCloud password reset"
 msgstr "Ripristino password di ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Usa il collegamento seguente per ripristinare la password: {link}"
 
@@ -185,7 +181,7 @@ msgstr "Accesso negato"
 
 #: templates/404.php:12
 msgid "Cloud not found"
-msgstr "Cloud non trovata"
+msgstr "Nuvola non trovata"
 
 #: templates/edit_categories_dialog.php:4
 msgid "Edit categories"
@@ -218,7 +214,7 @@ msgstr "Configura il database"
 #: templates/installation.php:50 templates/installation.php:61
 #: templates/installation.php:71 templates/installation.php:81
 msgid "will be used"
-msgstr "sarà usato"
+msgstr "sarà utilizzato"
 
 #: templates/installation.php:93
 msgid "Database user"
@@ -234,7 +230,7 @@ msgstr "Nome del database"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Spazio delle tabelle del database"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -248,7 +244,7 @@ msgstr "Termina la configurazione"
 msgid "web services under your control"
 msgstr "servizi web nelle tue mani"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Esci"
 
diff --git a/l10n/it/files.po b/l10n/it/files.po
index 664d569fd47cd2cdc7d2e3d460364aa7fae0d80f..0c00e3d9e915d08448356658b77fa4c127dfff21 100644
--- a/l10n/it/files.po
+++ b/l10n/it/files.po
@@ -11,15 +11,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 07:13+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: it\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -55,83 +55,100 @@ msgstr "Scrittura su disco non riuscita"
 msgid "Files"
 msgstr "File"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Rimuovi condivisione"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Elimina"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "esiste già"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "sostituisci"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "suggerisci nome"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "annulla"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "sostituito"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "annulla"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "con"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "annulla"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "condivisione rimossa"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "eliminati"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "creazione file ZIP, potrebbe richiedere del tempo."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Errore di invio"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "In corso"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Invio annullato"
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Nome non valido"
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Dimensione"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Modificato"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "cartella"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "cartelle"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "file"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "file"
 
@@ -163,6 +180,10 @@ msgstr "0 è illimitato"
 msgid "Maximum input size for ZIP files"
 msgstr "Dimensione massima per i file ZIP"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Salva"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nuovo"
@@ -187,36 +208,36 @@ msgstr "Carica"
 msgid "Cancel upload"
 msgstr "Annulla invio"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Non c'è niente qui. Carica qualcosa!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nome"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Condividi"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Scarica"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Il file caricato è troppo grande"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Scansione dei file in corso, attendi"
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Scansione corrente"
diff --git a/l10n/it/files_external.po b/l10n/it/files_external.po
index 801511ce3b532562dfc24bfc9a313effbfb5acbc..1875987bf4ba4a114c3f18eed76850826245c7d6 100644
--- a/l10n/it/files_external.po
+++ b/l10n/it/files_external.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-15 02:02+0200\n"
-"PO-Revision-Date: 2012-08-14 14:42+0000\n"
-"Last-Translator: Innocenzo Ventre <el.diabl09@gmail.com>\n"
+"POT-Creation-Date: 2012-09-07 02:04+0200\n"
+"PO-Revision-Date: 2012-09-06 05:03+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: it\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: templates/settings.php:3
 msgid "External Storage"
@@ -69,11 +69,11 @@ msgstr "Elimina"
 
 #: templates/settings.php:88
 msgid "SSL root certificates"
-msgstr "Certificato principale per SSL"
+msgstr "Certificati SSL radice"
 
 #: templates/settings.php:102
 msgid "Import Root Certificate"
-msgstr "Importa certificato principale"
+msgstr "Importa certificato radice"
 
 #: templates/settings.php:108
 msgid "Enable User External Storage"
@@ -81,4 +81,4 @@ msgstr "Abilita la memoria esterna dell'utente"
 
 #: templates/settings.php:109
 msgid "Allow users to mount their own external storage"
-msgstr "Consente agli utenti di montare la propria memoria esterna"
+msgstr "Consenti agli utenti di montare la propria memoria esterna"
diff --git a/l10n/it/files_sharing.po b/l10n/it/files_sharing.po
index 94313868adfa75faf31a02a95fbe84f4c34e8392..b2494f4211e4a163b5214d7ff0c397879261b283 100644
--- a/l10n/it/files_sharing.po
+++ b/l10n/it/files_sharing.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-08-31 05:29+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"
@@ -18,18 +18,22 @@ msgstr ""
 "Language: it\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Dimensione"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Password"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Modificato"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Invia"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Elimina tutto"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Scarica"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Eliminazione"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Nessuna anteprima disponibile per"
+
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr "servizi web nelle tue mani"
diff --git a/l10n/it/files_versions.po b/l10n/it/files_versions.po
index 54f176fb2e33359252024082963cdea2ec0713e6..9e8a8ae6bb38b91256c2ca0dc7e2fa99f7901f11 100644
--- a/l10n/it/files_versions.po
+++ b/l10n/it/files_versions.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-15 02:03+0200\n"
-"PO-Revision-Date: 2012-08-14 12:12+0000\n"
+"POT-Creation-Date: 2012-09-02 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 11:42+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"
@@ -18,10 +18,18 @@ msgstr ""
 "Language: it\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Scadenza di tutte le versioni"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Versioni"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Ciò eliminerà tutte le versioni esistenti dei tuoi file"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Abilita controllo di versione"
diff --git a/l10n/it/lib.po b/l10n/it/lib.po
index e34db2db96ec9a417f8ae633c12395f5d6aa812b..c8853c8257d6634c00ebe552488a41a42dc768ef 100644
--- a/l10n/it/lib.po
+++ b/l10n/it/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-31 22:53+0200\n"
-"PO-Revision-Date: 2012-07-30 10:25+0000\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 08:39+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"
@@ -18,43 +18,43 @@ msgstr ""
 "Language: it\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr "Aiuto"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr "Personale"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr "Impostazioni"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr "Utenti"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr "Applicazioni"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr "Admin"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "Lo scaricamento in formato ZIP è stato disabilitato."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "I file devono essere scaricati uno alla volta."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Torna ai file"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "I  file selezionati sono troppo grandi per generare un file zip."
 
@@ -111,3 +111,16 @@ msgstr "l'anno scorso"
 #: template.php:97
 msgid "years ago"
 msgstr "anni fa"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s è disponibile. Ottieni <a href=\"%s\">ulteriori informazioni</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "aggiornato"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "il controllo degli aggiornamenti è disabilitato"
diff --git a/l10n/it/settings.po b/l10n/it/settings.po
index b14c9fcd474c9a3b50efdcf9d7ed80df13460781..1ec0daf688cd8e9a4c05dec06dbe6e599203ec57 100644
--- a/l10n/it/settings.po
+++ b/l10n/it/settings.po
@@ -14,20 +14,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-22 20:01+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 05:39+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: it\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Impossibile caricare l'elenco dall'App Store"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Errore di autenticazione"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Il gruppo esiste già"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Impossibile aggiungere il gruppo"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Email salvata"
@@ -44,14 +57,28 @@ msgstr "OpenID modificato"
 msgid "Invalid request"
 msgstr "Richiesta non valida"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Errore di autenticazione"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Impossibile eliminare il gruppo"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Impossibile eliminare l'utente"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Lingua modificata"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Impossibile aggiungere l'utente al gruppo %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Impossibile rimuovere l'utente dal gruppo %s"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Errore"
@@ -76,30 +103,85 @@ msgstr "Italiano"
 msgid "Security Warning"
 msgstr "Avviso di sicurezza"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "La cartella dei dati e i tuoi file sono probabilmente accessibili da Internet.\nIl file .htaccess fornito da ownCloud non funziona. Ti consigliamo vivamente di configurare il server web in modo che la cartella dei dati non sia più accessibile e spostare la cartella fuori dalla radice del server web."
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "esegui un'attività con ogni pagina caricata"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php è registrato a un servizio webcron"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "usa il servizio cron di sistema"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "API di condivisione"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Abilita API di condivisione"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Consenti alle applicazioni di utilizzare le API di condivisione"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Consenti collegamenti"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Consenti agli utenti di condividere elementi al pubblico con collegamenti"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Consenti la ri-condivisione"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Consenti agli utenti di condividere elementi già condivisi"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Consenti agli utenti di condividere con chiunque"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Consenti agli utenti di condividere con gli utenti del proprio gruppo"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Registro"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Altro"
 
+#: templates/admin.php:105
+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 "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>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Aggiungi la tua applicazione"
@@ -113,34 +195,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Vedere la pagina dell'applicazione su apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-rilasciato"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "da"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-licenziato da <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Documentazione"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Gestione file grandi"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Fai una domanda"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problemi di connessione al database di supporto."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Raggiungilo manualmente."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Risposta"
 
diff --git a/l10n/it/user_ldap.po b/l10n/it/user_ldap.po
index e99e56fc15c8f7c570b6c5fbb94038fbb3a43062..9c8655920c69575601abe0a0c567411777cc00f4 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: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-22 20:31+0000\n"
+"POT-Creation-Date: 2012-08-30 02:02+0200\n"
+"PO-Revision-Date: 2012-08-29 05:37+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"
@@ -161,6 +161,12 @@ msgstr "in byte"
 msgid "in seconds. A change empties the cache."
 msgstr "in secondi. Il cambio svuota la cache."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+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:32
 msgid "Help"
 msgstr "Aiuto"
diff --git a/l10n/ja_JP/core.po b/l10n/ja_JP/core.po
index f1f2e5da9f836aaf1b1b242e65f9ece42ce7dea1..139012d619a385b0abaac7b1ee6c6464f5dcaba1 100644
--- a/l10n/ja_JP/core.po
+++ b/l10n/ja_JP/core.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -31,59 +31,55 @@ msgstr "追加するカテゴリはありませんか?"
 msgid "This category already exists: "
 msgstr "このカテゴリはすでに存在します: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "設定"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "1月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "2月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "3月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "4月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "5月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "6月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "7月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "8月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "9月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "10月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "11月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "12月"
 
@@ -115,7 +111,7 @@ msgstr "エラー"
 msgid "ownCloud password reset"
 msgstr "ownCloudのパスワードをリセットします"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "パスワードをリセットするには次のリンクをクリックして下さい: {link}"
 
@@ -231,7 +227,7 @@ msgstr "データベース名"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "データベースの表領域"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -245,7 +241,7 @@ msgstr "セットアップを完了します"
 msgid "web services under your control"
 msgstr "管理下にあるウェブサービス"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "ログアウト"
 
diff --git a/l10n/ja_JP/files.po b/l10n/ja_JP/files.po
index 97c519439bbc3b1a83ed2157ef96ae082ffe20da..6e3d70c125c47faa748eb7801bba53e0ce4eb186 100644
--- a/l10n/ja_JP/files.po
+++ b/l10n/ja_JP/files.po
@@ -4,19 +4,20 @@
 # 
 # Translators:
 # Daisuke Deguchi <ddeguchi@is.nagoya-u.ac.jp>, 2012.
+#   <tetuyano+transi@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-10 02:02+0200\n"
+"PO-Revision-Date: 2012-09-09 05:11+0000\n"
+"Last-Translator: ttyn <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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: ja_JP\n"
-"Plural-Forms: nplurals=1; plural=0\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -52,83 +53,100 @@ msgstr "ディスクへの書き込みに失敗しました"
 msgid "Files"
 msgstr "ファイル"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "共有しない"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "削除"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "既に存在します"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "置き換え"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "推奨名称"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "キャンセル"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "置換:"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "元に戻す"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "←"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "元に戻す"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "未共有"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "削除"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "ZIPファイルを生成中です、しばらくお待ちください。"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "アップロード使用としているファイルがディレクトリ、もしくはサイズが0バイトのため、アップロードできません。"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "アップロードエラー"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "保留"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "アップロードはキャンセルされました。"
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr "ファイル転送を実行中です。今このページから移動するとアップロードが中止されます。"
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "無効な名前、'/' は使用できません。"
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "サイズ"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "更新日時"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "フォルダ"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "フォルダ"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "ファイル"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "ファイル"
 
@@ -160,6 +178,10 @@ msgstr "0を指定した場合は無制限"
 msgid "Maximum input size for ZIP files"
 msgstr "ZIPファイルへの最大入力サイズ"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "保存"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "新規"
@@ -184,36 +206,36 @@ msgstr "アップロード"
 msgid "Cancel upload"
 msgstr "アップロードをキャンセル"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "ここには何もありません。何かアップロードしてください。"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "名前"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "共有"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "ダウンロード"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "ファイルサイズが大きすぎます"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "アップロードしようとしているファイルは、サーバで規定された最大サイズを超えています。"
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "ファイルをスキャンしています、しばらくお待ちください。"
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "スキャン中"
diff --git a/l10n/ja_JP/files_sharing.po b/l10n/ja_JP/files_sharing.po
index b76508218b75b1f93e12e8101406280f0642ddda..648cb83f0f4452fe0ba1000523ef3a80b974c2fa 100644
--- a/l10n/ja_JP/files_sharing.po
+++ b/l10n/ja_JP/files_sharing.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-08-31 07:43+0000\n"
+"Last-Translator: ttyn <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"
@@ -19,18 +19,22 @@ msgstr ""
 "Language: ja_JP\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "サイズ"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "パスワード"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "変更"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "送信"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "すべて削除"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "ダウンロード"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "削除"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "プレビューはありません"
+
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr "管理下のウェブサービス"
diff --git a/l10n/ja_JP/files_versions.po b/l10n/ja_JP/files_versions.po
index 893e07db20bbdca800249ec0cd0ce1e7ad2b7339..a2dc0289007353dc11c9b6e9eaece86ea2aa7cf0 100644
--- a/l10n/ja_JP/files_versions.po
+++ b/l10n/ja_JP/files_versions.po
@@ -8,20 +8,28 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-16 02:04+0200\n"
-"PO-Revision-Date: 2012-08-15 02:41+0000\n"
+"POT-Creation-Date: 2012-09-04 02:01+0200\n"
+"PO-Revision-Date: 2012-09-03 15:56+0000\n"
 "Last-Translator: Daisuke Deguchi <ddeguchi@is.nagoya-u.ac.jp>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "すべてのバージョンを削除する"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "バージョン"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "これは、あなたのファイルのすべてのバックアップバージョンを削除します"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "ファイルのバージョン管理を有効にする"
diff --git a/l10n/ja_JP/lib.po b/l10n/ja_JP/lib.po
index 30b5055623563931990719566508f310b192a99b..d9b410fa885f3e4a4f4e6c7800a4ea79b5975959 100644
--- a/l10n/ja_JP/lib.po
+++ b/l10n/ja_JP/lib.po
@@ -3,110 +3,124 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Daisuke Deguchi <ddeguchi@is.nagoya-u.ac.jp>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-04 02:01+0200\n"
+"PO-Revision-Date: 2012-09-03 15:55+0000\n"
+"Last-Translator: Daisuke Deguchi <ddeguchi@is.nagoya-u.ac.jp>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
-msgstr ""
+msgstr "ヘルプ"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
-msgstr ""
+msgstr "個人設定"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
-msgstr ""
+msgstr "設定"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
-msgstr ""
+msgstr "ユーザ"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
-msgstr ""
+msgstr "アプリ"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
-msgstr ""
+msgstr "管理者"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
-msgstr ""
+msgstr "ZIPダウンロードは無効です。"
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
-msgstr ""
+msgstr "ファイルは1つずつダウンロードする必要があります。"
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
-msgstr ""
+msgstr "ファイルに戻る"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
-msgstr ""
+msgstr "選択したファイルはZIPファイルの生成には大きすぎます。"
 
 #: json.php:28
 msgid "Application is not enabled"
-msgstr ""
+msgstr "アプリケーションは無効です"
 
 #: json.php:39 json.php:63 json.php:75
 msgid "Authentication error"
-msgstr ""
+msgstr "認証エラー"
 
 #: json.php:51
 msgid "Token expired. Please reload page."
-msgstr ""
+msgstr "トークンが無効になりました。ページを再読込してください。"
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
-msgstr ""
+msgstr "秒前"
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
-msgstr ""
+msgstr "1分前"
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
-msgstr ""
+msgstr "%d 分前"
 
-#: template.php:91
+#: template.php:92
 msgid "today"
-msgstr ""
+msgstr "今日"
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
-msgstr ""
+msgstr "昨日"
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
-msgstr ""
+msgstr "%d 日前"
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
-msgstr ""
+msgstr "先月"
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
-msgstr ""
+msgstr "月前"
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
-msgstr ""
+msgstr "昨年"
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
-msgstr ""
+msgstr "年前"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s が利用可能です。<a href=\"%s\">詳細情報</a> を確認ください"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "最新です"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "更新チェックは無効です"
diff --git a/l10n/ja_JP/settings.po b/l10n/ja_JP/settings.po
index d269151c249738170fcf66ecba7d9c964e7442d2..9652d0d97571335bb27d5e33f04a41f34bb07495 100644
--- a/l10n/ja_JP/settings.po
+++ b/l10n/ja_JP/settings.po
@@ -9,20 +9,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-20 01:31+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 02:09+0000\n"
 "Last-Translator: Daisuke Deguchi <ddeguchi@is.nagoya-u.ac.jp>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "アプリストアからリストをロードできません"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "認証エラー"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "グループは既に存在しています"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "グループを追加できません"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "メールアドレスを保存しました"
@@ -39,14 +52,28 @@ msgstr "OpenIDが変更されました"
 msgid "Invalid request"
 msgstr "無効なリクエストです"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "認証エラー"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "グループを削除できません"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "ユーザを削除できません"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "言語が変更されました"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "ユーザをグループ %s に追加できません"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "ユーザをグループ %s から削除できません"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "エラー"
@@ -71,30 +98,85 @@ msgstr "Japanese (日本語)"
 msgid "Security Warning"
 msgstr "セキュリティ警告"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "データディレクトリとファイルが恐らくインターネットからアクセスできるようになっています。ownCloudが提供する .htaccessファイルが機能していません。データディレクトリを全くアクセスできないようにするか、データディレクトリをウェブサーバのドキュメントルートの外に置くようにウェブサーバを設定することを強くお勧めします。"
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "cron(自動定期実行)"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "ページを開く毎にタスクを1つ実行"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.phpをwebcronサービスに登録しました"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "システムのcronサービスを使用"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "Share API"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Share APIを有効"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Share APIの使用をアプリケーションに許可"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "リンクを許可"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "ユーザーがリンクによる公開でアイテムを共有することが出来るようにする"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "再共有を許可"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "ユーザーが共有されているアイテムをさらに共有することが出来るようにする"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "ユーザーが誰にでも共有出来るようにする"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "ユーザーがグループの人にしか共有出来ないようにする"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "ログ"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "もっと"
 
+#: templates/admin.php:105
+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 "<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> ライセンスにより提供されています。"
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "アプリを追加"
@@ -108,34 +190,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "apps.owncloud.com でアプリケーションのページを見てください"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "ライセンス"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "@"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-ライセンス: <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "ドキュメント"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "大きなファイルを扱うには"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "質問してください"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "ヘルプデータベースへの接続時に問題が発生しました"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "手動で移動してください。"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "解答"
 
diff --git a/l10n/ja_JP/user_ldap.po b/l10n/ja_JP/user_ldap.po
index 5c22b913b4462296e1f9ecbb194901de86755a1e..4c9265d368bca4f2d0aa578a07dadedc77f8d3f8 100644
--- a/l10n/ja_JP/user_ldap.po
+++ b/l10n/ja_JP/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: 2012-08-17 00:44+0200\n"
-"PO-Revision-Date: 2012-08-16 05:33+0000\n"
+"POT-Creation-Date: 2012-08-30 02:02+0200\n"
+"PO-Revision-Date: 2012-08-29 01:55+0000\n"
 "Last-Translator: Daisuke Deguchi <ddeguchi@is.nagoya-u.ac.jp>\n"
 "Language-Team: Japanese (Japan) (http://www.transifex.com/projects/p/owncloud/language/ja_JP/)\n"
 "MIME-Version: 1.0\n"
@@ -161,6 +161,12 @@ msgstr "バイト"
 msgid "in seconds. A change empties the cache."
 msgstr "秒。変更後にキャッシュがクリアされます。"
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr "ユーザ名を空のままにしてください(デフォルト)。そうでない場合は、LDAPもしくはADの属性を指定してください."
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr "ヘルプ"
diff --git a/l10n/ko/core.po b/l10n/ko/core.po
index 3e82381d03c571ed67936ac072f70e2247bf2398..4d2f0561de893753e0f7b4fa7bb23689c16e9a3c 100644
--- a/l10n/ko/core.po
+++ b/l10n/ko/core.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -31,59 +31,55 @@ msgstr "추가할 카테고리가 없습니까?"
 msgid "This category already exists: "
 msgstr "이 카테고리는 이미 존재합니다:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "설정"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "1월"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "2월"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "3월"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "4월"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "5월"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "6월"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "7월"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "8월"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "9월"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "10월"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "11월"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "12월"
 
@@ -115,7 +111,7 @@ msgstr "에러"
 msgid "ownCloud password reset"
 msgstr "ownCloud 비밀번호 재설정"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "다음 링크를 사용하여 암호를 초기화할 수 있습니다: {link}"
 
@@ -245,7 +241,7 @@ msgstr "설치 완료"
 msgid "web services under your control"
 msgstr "내가 관리하는 웹 서비스"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "로그아웃"
 
diff --git a/l10n/ko/files.po b/l10n/ko/files.po
index 375947a2920a74ac4781e19d732ac8a127c4afb1..7167506ae4826e701816700de804ce191286acaa 100644
--- a/l10n/ko/files.po
+++ b/l10n/ko/files.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +53,100 @@ msgstr "디스크에 쓰지 못했습니다"
 msgid "Files"
 msgstr "파일"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "삭제"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
-msgstr ""
+msgstr "이미 존재 합니다"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
+msgstr "대체"
+
+#: js/filelist.js:186
+msgid "suggest name"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
-msgstr ""
+msgstr "취소"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
-msgstr ""
+msgstr "대체됨"
+
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "복구"
 
-#: js/filelist.js:195
+#: js/filelist.js:237
 msgid "with"
-msgstr ""
+msgstr "와"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
-msgstr ""
+msgstr "삭제"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "ZIP파일 생성에 시간이 걸릴 수 있습니다."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
-msgstr ""
+msgstr "이 파일은 디렉토리이거나 0 바이트이기 때문에 업로드 할 수 없습니다."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "업로드 에러"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "보류 중"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "업로드 취소."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "잘못된 이름, '/' 은 허용이 되지 않습니다."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "크기"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "수정됨"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "폴더"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "폴더"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "파일"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "파일"
 
@@ -161,6 +178,10 @@ msgstr "0은 무제한 입니다"
 msgid "Maximum input size for ZIP files"
 msgstr "ZIP 파일에 대한 최대 입력 크기"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "새로 만들기"
@@ -185,36 +206,36 @@ msgstr "업로드"
 msgid "Cancel upload"
 msgstr "업로드 취소"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "내용이 없습니다. 업로드할 수 있습니다!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "이름"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "공유"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "다운로드"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "업로드 용량 초과"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "이 파일이 서버에서 허용하는 최대 업로드 가능 용량보다 큽니다."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "파일을 검색중입니다, 기다려 주십시오."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "커런트 스캐닝"
diff --git a/l10n/ko/files_sharing.po b/l10n/ko/files_sharing.po
index 970803e48ae0e635ecc508e283419eaf29c76166..c02f8ffff56e61cbae37b1fe898a65d878f15866 100644
--- a/l10n/ko/files_sharing.po
+++ b/l10n/ko/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Korean (http://www.transifex.com/projects/p/owncloud/language/ko/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: ko\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/ko/files_versions.po b/l10n/ko/files_versions.po
index 7646c3ad8ebb966cf6049938f2cb25d98ad7238e..bf42a0a8c89b2efe4cb67208ebf265a283aacef8 100644
--- a/l10n/ko/files_versions.po
+++ b/l10n/ko/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: ko\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/ko/lib.po b/l10n/ko/lib.po
index 2308a069de892bc8180c4355f217c720bd28872b..bf494197c62c90590eb5230ed9022a015d96dfcb 100644
--- a/l10n/ko/lib.po
+++ b/l10n/ko/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: ko\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/ko/settings.po b/l10n/ko/settings.po
index a4bfa5dacaea536953182dd3d028747bf9a31109..74a1df47382f69e63e4f57bc3f6e3b8d96a06a8a 100644
--- a/l10n/ko/settings.po
+++ b/l10n/ko/settings.po
@@ -9,18 +9,31 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
+msgstr "앱 스토어에서 목록을 가져올 수 없습니다"
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "인증 오류"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
 msgstr ""
 
 #: ajax/lostpassword.php:14
@@ -39,17 +52,31 @@ msgstr "OpenID 변경됨"
 msgid "Invalid request"
 msgstr "잘못된 요청"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "언어가 변경되었습니다"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
-msgstr ""
+msgstr "에러"
 
 #: js/apps.js:39 js/apps.js:73
 msgid "Disable"
@@ -69,32 +96,87 @@ msgstr "한국어"
 
 #: templates/admin.php:14
 msgid "Security Warning"
-msgstr ""
+msgstr "보안 경고"
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
-msgstr ""
+msgid "Cron"
+msgstr "크론"
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
-msgstr ""
+msgid "execute one task with each page loaded"
+msgstr "각 페이지가 로드 된 하나의 작업을 실행"
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr "cron.php는 webcron 서비스에 등록이 되어 있습니다."
+
+#: templates/admin.php:37
 msgid "use systems cron service"
+msgstr "cron 시스템 서비스를 사용"
+
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "로그"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "더"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "앱 추가"
@@ -108,34 +190,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "application page at apps.owncloud.com을 보시오."
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr " 라이선스 사용"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr " by "
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "문서"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "큰 파일 관리"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "질문하기"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "데이터베이스에 연결하는 데 문제가 발생하였습니다."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "직접 갈 수 있습니다."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "대답"
 
@@ -229,7 +307,7 @@ msgstr "다른"
 
 #: templates/users.php:80 templates/users.php:112
 msgid "Group Admin"
-msgstr ""
+msgstr "그룹 관리자"
 
 #: templates/users.php:82
 msgid "Quota"
diff --git a/l10n/ko/user_ldap.po b/l10n/ko/user_ldap.po
index 0cc01bfddf27b84e66f5eb7a7128b84875a7d675..cf6aa7842daa0e1db72bf99bee95a1b67640123a 100644
--- a/l10n/ko/user_ldap.po
+++ b/l10n/ko/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/lb/core.po b/l10n/lb/core.po
index 318ccf02e6cbc74e93fa0d14fa6dda3c603914b2..6c3da7e6b591d917387188f443bba48b55e63107 100644
--- a/l10n/lb/core.po
+++ b/l10n/lb/core.po
@@ -3,20 +3,20 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-#   <sim0n@trypill.org>, 2011, 2012.
+#   <sim0n@trypill.org>, 2011-2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -30,91 +30,87 @@ msgstr "Keng Kategorie fir bäizesetzen?"
 msgid "This category already exists: "
 msgstr "Des Kategorie existéiert schonn:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Astellungen"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
-msgstr ""
+msgstr "Januar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
-msgstr ""
+msgstr "Februar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
-msgstr ""
+msgstr "Mäerz"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
-msgstr ""
+msgstr "Abrëll"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
-msgstr ""
+msgstr "Mee"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
-msgstr ""
+msgstr "Juni"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
-msgstr ""
+msgstr "Juli"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
-msgstr ""
+msgstr "August"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
-msgstr ""
+msgstr "September"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
-msgstr ""
+msgstr "Oktober"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
-msgstr ""
+msgstr "November"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
-msgstr ""
+msgstr "Dezember"
 
 #: js/oc-dialogs.js:143 js/oc-dialogs.js:163
 msgid "Cancel"
-msgstr ""
+msgstr "Ofbriechen"
 
 #: js/oc-dialogs.js:159
 msgid "No"
-msgstr ""
+msgstr "Nee"
 
 #: js/oc-dialogs.js:160
 msgid "Yes"
-msgstr ""
+msgstr "Jo"
 
 #: js/oc-dialogs.js:177
 msgid "Ok"
-msgstr ""
+msgstr "OK"
 
 #: js/oc-vcategories.js:68
 msgid "No categories selected for deletion."
-msgstr ""
+msgstr "Keng Kategorien ausgewielt fir ze läschen."
 
 #: js/oc-vcategories.js:68
 msgid "Error"
-msgstr ""
+msgstr "Fehler"
 
 #: lostpassword/index.php:26
 msgid "ownCloud password reset"
 msgstr "ownCloud Passwuert reset"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Benotz folgende Link fir däi Passwuert ze reseten: {link}"
 
@@ -201,7 +197,7 @@ msgstr "Passwuert"
 
 #: templates/installation.php:36
 msgid "Advanced"
-msgstr "Erweidert"
+msgstr "Advanced"
 
 #: templates/installation.php:38
 msgid "Data folder"
@@ -230,7 +226,7 @@ msgstr "Datebank Numm"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Datebank Tabelle-Gréisst"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -244,7 +240,7 @@ msgstr "Installatioun ofschléissen"
 msgid "web services under your control"
 msgstr "Web Servicer ënnert denger Kontroll"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Ausloggen"
 
diff --git a/l10n/lb/files.po b/l10n/lb/files.po
index c84f38bdc021c281b33b4537a68a8794d0c4da7a..6e4157f7bef40eeb0912f129a3ef103ad061ac4d 100644
--- a/l10n/lb/files.po
+++ b/l10n/lb/files.po
@@ -3,20 +3,20 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-#   <sim0n@trypill.org>, 2011, 2012.
+#   <sim0n@trypill.org>, 2011-2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -52,85 +52,102 @@ msgstr "Konnt net op den Disk schreiwen"
 msgid "Files"
 msgstr "Dateien"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Läschen"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
-msgstr ""
+msgstr "existéiert schonn"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
+msgstr "ersetzen"
+
+#: js/filelist.js:186
+msgid "suggest name"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
-msgstr ""
+msgstr "ofbriechen"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
-msgstr ""
+msgstr "ersat"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "réckgängeg man"
+
+#: js/filelist.js:237
 msgid "with"
-msgstr ""
+msgstr "mat"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
-msgstr ""
+msgstr "geläscht"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
-msgstr ""
+msgstr "Et  gëtt eng ZIP-File generéiert, dëst ka bëssen daueren."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
-msgstr ""
+msgstr "Kann deng Datei net eroplueden well et en Dossier ass oder 0 byte grouss ass."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
-msgstr ""
+msgstr "Fehler beim eroplueden"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
-msgstr ""
+msgstr "Upload ofgebrach."
+
+#: js/files.js:423
+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:457
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
-msgstr ""
+msgstr "Ongültege Numm, '/' net erlaabt."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Gréisst"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Geännert"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
-msgstr ""
+msgstr "Dossier"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
-msgstr ""
+msgstr "Dossieren"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
-msgstr ""
+msgstr "Datei"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
-msgstr ""
+msgstr "Dateien"
 
 #: templates/admin.php:5
 msgid "File handling"
@@ -160,6 +177,10 @@ msgstr "0 ass onlimitéiert"
 msgid "Maximum input size for ZIP files"
 msgstr "Maximal Gréisst fir ZIP Fichieren"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nei"
@@ -184,36 +205,36 @@ msgstr "Eroplueden"
 msgid "Cancel upload"
 msgstr "Upload ofbriechen"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Hei ass näischt. Lued eppes rop!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Numm"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Share"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Eroflueden"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Upload ze grouss"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Fichieren gi gescannt, war weg."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Momentane Scan"
diff --git a/l10n/lb/files_sharing.po b/l10n/lb/files_sharing.po
index ca81053d9a290d9a489198a6c02d5ae591041252..83d2cf1bb5b7a13618f4c463e1e4019ef3da17b9 100644
--- a/l10n/lb/files_sharing.po
+++ b/l10n/lb/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Luxembourgish (http://www.transifex.com/projects/p/owncloud/language/lb/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: lb\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/lb/files_versions.po b/l10n/lb/files_versions.po
index 1ecdf054fe4a813ce89fac377310aa68e1eb57df..b2a52fe36800b83f7edb8b7ea377d683d0ec11fc 100644
--- a/l10n/lb/files_versions.po
+++ b/l10n/lb/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: lb\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/lb/lib.po b/l10n/lb/lib.po
index bb55ec5a6fa04eb4d735262fd06f6eb1ae9874a2..8aa81edb8f7865bab131d32be0cd7d69f0083ee5 100644
--- a/l10n/lb/lib.po
+++ b/l10n/lb/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: lb\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/lb/settings.po b/l10n/lb/settings.po
index 6b1e939e537292ace5db030d328bf8c9ccf42cee..ae12b3db40df091f8a53475c06c9014b310715ee 100644
--- a/l10n/lb/settings.po
+++ b/l10n/lb/settings.po
@@ -3,32 +3,45 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
-#   <sim0n@trypill.org>, 2011, 2012.
+#   <sim0n@trypill.org>, 2011-2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
+msgstr "Konnt Lescht net vum App Store lueden"
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Authentifikatioun's Fehler"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
 msgstr ""
 
 #: ajax/lostpassword.php:14
 msgid "Email saved"
-msgstr ""
+msgstr "E-mail gespäichert"
 
 #: ajax/lostpassword.php:16
 msgid "Invalid email"
-msgstr ""
+msgstr "Ongülteg e-mail"
 
 #: ajax/openid.php:16
 msgid "OpenID Changed"
@@ -38,29 +51,43 @@ msgstr "OpenID huet geännert"
 msgid "Invalid request"
 msgstr "Ongülteg Requête"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Sprooch huet geännert"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
-msgstr ""
+msgstr "Fehler"
 
 #: js/apps.js:39 js/apps.js:73
 msgid "Disable"
-msgstr ""
+msgstr "Ofschalten"
 
 #: js/apps.js:39 js/apps.js:62
 msgid "Enable"
-msgstr ""
+msgstr "Aschalten"
 
 #: js/personal.js:69
 msgid "Saving..."
-msgstr ""
+msgstr "Speicheren..."
 
 #: personal.php:46 personal.php:47
 msgid "__language_name__"
@@ -68,32 +95,87 @@ msgstr "__language_name__"
 
 #: templates/admin.php:14
 msgid "Security Warning"
-msgstr ""
+msgstr "Sécherheets Warnung"
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
-msgstr ""
+msgid "Cron"
+msgstr "Cron"
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr "cron.php ass als en webcron Service registréiert"
+
+#: templates/admin.php:37
 msgid "use systems cron service"
+msgstr "benotz den systems cron Service"
+
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "Share API"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Share API aschalten"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Erlab Apps d'Share API ze benotzen"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Links erlaben"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Resharing erlaben"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Useren erlaben mat egal wiem ze sharen"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Useren nëmmen erlaben mat Useren aus hirer Grupp ze sharen"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Log"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Méi"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Setz deng App bei"
@@ -104,37 +186,33 @@ msgstr "Wiel eng Applikatioun aus"
 
 #: templates/apps.php:29
 msgid "See application page at apps.owncloud.com"
-msgstr ""
+msgstr "Kuck dir d'Applicatioun's Säit op apps.owncloud.com un"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-Lizenséiert"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "vun"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentatioun"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Grouss Fichieren verwalten"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Stell eng Fro"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problemer sinn opgetrueden beim Versuch sech un d'Hëllef Datebank ze verbannen."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Gei manuell dohinner."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Äntwert"
 
@@ -228,7 +306,7 @@ msgstr "Aner"
 
 #: templates/users.php:80 templates/users.php:112
 msgid "Group Admin"
-msgstr ""
+msgstr "Gruppen Admin"
 
 #: templates/users.php:82
 msgid "Quota"
diff --git a/l10n/lb/user_ldap.po b/l10n/lb/user_ldap.po
index 75252b76c95ddb1d0ec7ec02d9075bf30cbc300a..ea1a1452c6ff610e246fd59c0f21615263c5d4ab 100644
--- a/l10n/lb/user_ldap.po
+++ b/l10n/lb/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/lt_LT/core.po b/l10n/lt_LT/core.po
index 6b69aa1d16559c6e6cb6d9f2f7515f7285e1da1c..1e9dd8d63afdd5a575178e0050d8a3cd32b68d7c 100644
--- a/l10n/lt_LT/core.po
+++ b/l10n/lt_LT/core.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -30,59 +30,55 @@ msgstr "Nepridėsite jokios kategorijos?"
 msgid "This category already exists: "
 msgstr "Tokia kategorija jau yra:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Nustatymai"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Sausis"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Vasaris"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Kovas"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Balandis"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Gegužė"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Birželis"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Liepa"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Rugpjūtis"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Rugsėjis"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Spalis"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Lapkritis"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Gruodis"
 
@@ -114,7 +110,7 @@ msgstr "Klaida"
 msgid "ownCloud password reset"
 msgstr "ownCloud slaptažodžio atkūrimas"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Slaptažodio atkūrimui naudokite šią nuorodą: {link}"
 
@@ -244,7 +240,7 @@ msgstr "Baigti diegimą"
 msgid "web services under your control"
 msgstr "jūsų valdomos web paslaugos"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Atsijungti"
 
diff --git a/l10n/lt_LT/files.po b/l10n/lt_LT/files.po
index bae53dc5d666192da1eab803f060f8921cfc4dd4..d4a5701df70cf80308a88d266970a3b9a5a44e54 100644
--- a/l10n/lt_LT/files.po
+++ b/l10n/lt_LT/files.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 07:58+0000\n"
-"Last-Translator: Dr. ROX <to.dr.rox@gmail.com>\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"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/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +53,100 @@ msgstr "Nepavyko įrašyti į diską"
 msgid "Files"
 msgstr "Failai"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Ištrinti"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "atšaukti"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "kuriamas ZIP archyvas, tai gali užtrukti šiek tiek laiko."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Įkėlimo klaida"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Laukiantis"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Įkėlimas atšauktas."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Pavadinime negali būti naudojamas ženklas \"/\"."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Dydis"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Pakeista"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "katalogas"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "katalogai"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "failas"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "failai"
 
@@ -161,6 +178,10 @@ msgstr "0 yra neribotas"
 msgid "Maximum input size for ZIP files"
 msgstr "Maksimalus ZIP archyvo failo dydis"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Naujas"
@@ -185,36 +206,36 @@ msgstr "Įkelti"
 msgid "Cancel upload"
 msgstr "Atšaukti siuntimą"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Čia tuščia. Įkelkite ką nors!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Pavadinimas"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Dalintis"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Atsisiųsti"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Įkėlimui failas per didelis"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Skenuojami failai, prašome palaukti."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Šiuo metu skenuojama"
diff --git a/l10n/lt_LT/files_sharing.po b/l10n/lt_LT/files_sharing.po
index d1693bb806f2832c045d6459e474ce6cde933c15..c51f93d5cf6a7ef2f2996fb67a97c225b73ff71c 100644
--- a/l10n/lt_LT/files_sharing.po
+++ b/l10n/lt_LT/files_sharing.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Lithuanian (Lithuania) (http://www.transifex.com/projects/p/owncloud/language/lt_LT/)\n"
 "MIME-Version: 1.0\n"
@@ -18,18 +18,22 @@ 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"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Dydis"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr ""
+
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Pakeista"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Ištrinti viską"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Ištrinti"
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr ""
diff --git a/l10n/lt_LT/files_versions.po b/l10n/lt_LT/files_versions.po
index 78d03bc0515da06203f7c83d0d69362d9d1494a7..02e8567562e84e3c61a9390263f3ea5c0cee7c80 100644
--- a/l10n/lt_LT/files_versions.po
+++ b/l10n/lt_LT/files_versions.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-22 12:34+0000\n"
-"Last-Translator: Dr. ROX <to.dr.rox@gmail.com>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -18,10 +18,18 @@ 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"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Panaikinti visų versijų galiojimą"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Įjungti failų versijų vedimą"
diff --git a/l10n/lt_LT/lib.po b/l10n/lt_LT/lib.po
index cf1cc1edba547cc5fc7bc455b7a2ce5c0e062f81..4240cfb1d2e7c4412dee1bfb4284096e15551aac 100644
--- a/l10n/lt_LT/lib.po
+++ b/l10n/lt_LT/lib.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-22 12:43+0000\n"
-"Last-Translator: Dr. ROX <to.dr.rox@gmail.com>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -42,19 +42,19 @@ msgstr "Programos"
 msgid "Admin"
 msgstr "Administravimas"
 
-#: files.php:276
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "ZIP atsisiuntimo galimybė yra išjungta."
 
-#: files.php:277
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Failai turi būti parsiunčiami vienas po kito."
 
-#: files.php:277 files.php:302
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Atgal į Failus"
 
-#: files.php:301
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "Pasirinkti failai per dideli archyvavimui į ZIP."
 
@@ -111,3 +111,16 @@ msgstr "pereitais metais"
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/lt_LT/settings.po b/l10n/lt_LT/settings.po
index 8b8a1840192acd5c98a7aa82e372170b758a6343..5db913f5a2bf8fde7c52d3d0bdf3fc6f311fae98 100644
--- a/l10n/lt_LT/settings.po
+++ b/l10n/lt_LT/settings.po
@@ -8,20 +8,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 07:15+0000\n"
-"Last-Translator: Dr. ROX <to.dr.rox@gmail.com>\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"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/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Neįmanoma įkelti sąrašo iš Programų Katalogo"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "El. paštas išsaugotas"
@@ -38,14 +51,28 @@ msgstr "OpenID pakeistas"
 msgid "Invalid request"
 msgstr "Klaidinga užklausa"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Kalba pakeista"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Klaida"
@@ -70,30 +97,85 @@ msgstr "Kalba"
 msgid "Security Warning"
 msgstr "Saugumo įspėjimas"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr ""
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr ""
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "naudoti sistemos cron servisą"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Žurnalas"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Daugiau"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Pridėti programėlę"
@@ -107,34 +189,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licencijuota"
-
-#: templates/apps.php:30
-msgid "by"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
 msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentacija"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Užduoti klausimą"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problemos jungiantis prie duomenų bazės"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr ""
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Atsakyti"
 
diff --git a/l10n/lt_LT/user_ldap.po b/l10n/lt_LT/user_ldap.po
index d648d9ba0ca263204463778298861536833e8400..7e15e309ec78ae3ed54a4d2707a6cd4002a1482e 100644
--- a/l10n/lt_LT/user_ldap.po
+++ b/l10n/lt_LT/user_ldap.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-22 13:55+0000\n"
-"Last-Translator: Dr. ROX <to.dr.rox@gmail.com>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -160,6 +160,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr "Pagalba"
diff --git a/l10n/lv/core.po b/l10n/lv/core.po
index 29eb9169d2d8687ec16fd365a914946799e4ddc8..3716a06f25b744cad6341fde934b99e4f39c0c45 100644
--- a/l10n/lv/core.po
+++ b/l10n/lv/core.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\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"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -30,59 +30,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Iestatījumi"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -114,7 +110,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Izmantojiet šo linku lai mainītu paroli"
 
@@ -244,7 +240,7 @@ msgstr "Pabeigt uzstādījumus"
 msgid "web services under your control"
 msgstr ""
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Izlogoties"
 
diff --git a/l10n/lv/files.po b/l10n/lv/files.po
index 3f19f36b910396d8c8aac83c67c21cf6ca014256..4adbfa4bf09852e911b2e5d72ab449acf4655135 100644
--- a/l10n/lv/files.po
+++ b/l10n/lv/files.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\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"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -38,7 +38,7 @@ msgstr ""
 
 #: ajax/upload.php:24
 msgid "No file was uploaded"
-msgstr ""
+msgstr "Neviens fails netika augšuplādēts"
 
 #: ajax/upload.php:25
 msgid "Missing a temporary folder"
@@ -46,89 +46,106 @@ msgstr ""
 
 #: ajax/upload.php:26
 msgid "Failed to write to disk"
-msgstr ""
+msgstr "Nav iespējams saglabāt"
 
 #: appinfo/app.php:6
 msgid "Files"
 msgstr "Faili"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Izdzēst"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
-msgstr ""
+msgstr "tāds fails jau eksistē"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
+msgstr "aizvietot"
+
+#: js/filelist.js:186
+msgid "suggest name"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
-msgstr ""
+msgstr "atcelt"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
-msgstr ""
+msgstr "aizvietots"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "vienu soli atpakaļ"
+
+#: js/filelist.js:237
 msgid "with"
-msgstr ""
+msgstr "ar"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
-msgstr ""
+msgstr "izdzests"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
-msgstr ""
+msgstr "lai uzģenerētu ZIP failu, kāds brīdis ir jāpagaida"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
-msgstr ""
+msgstr "Nav iespējams augšuplādēt jūsu failu, jo tāds jau eksistē vai arī failam nav izmēra (0 baiti)"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Augšuplādēšanas laikā radās kļūda"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Gaida savu kārtu"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Augšuplāde ir atcelta"
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Šis simbols '/', nav atļauts."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Izmērs"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Izmainīts"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "mape"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "mapes"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "fails"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "faili"
 
@@ -142,7 +159,7 @@ msgstr "Maksimālais failu augšuplādes apjoms"
 
 #: templates/admin.php:7
 msgid "max. possible: "
-msgstr ""
+msgstr "maksīmālais iespējamais:"
 
 #: templates/admin.php:9
 msgid "Needed for multi-file and folder downloads."
@@ -150,31 +167,35 @@ msgstr ""
 
 #: templates/admin.php:9
 msgid "Enable ZIP-download"
-msgstr ""
+msgstr "Iespējot ZIP lejuplādi"
 
 #: templates/admin.php:11
 msgid "0 is unlimited"
-msgstr ""
+msgstr "0 ir neierobežots"
 
 #: templates/admin.php:12
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
-msgstr ""
+msgstr "Jauns"
 
 #: templates/index.php:9
 msgid "Text file"
-msgstr ""
+msgstr "Teksta fails"
 
 #: templates/index.php:10
 msgid "Folder"
-msgstr ""
+msgstr "Mape"
 
 #: templates/index.php:11
 msgid "From url"
-msgstr ""
+msgstr "No URL saites"
 
 #: templates/index.php:21
 msgid "Upload"
@@ -182,38 +203,38 @@ msgstr "Augšuplādet"
 
 #: templates/index.php:27
 msgid "Cancel upload"
-msgstr ""
+msgstr "Atcelt augšuplādi"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Te vēl nekas nav. Rīkojies, sāc augšuplādēt"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nosaukums"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
-msgstr ""
+msgstr "Līdzdalīt"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Lejuplādēt"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Fails ir par lielu lai to augšuplādetu"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr ""
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
-msgstr ""
+msgstr "Faili šobrīd tiek caurskatīti, nedaudz jāpagaida."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
-msgstr ""
+msgstr "Šobrīd tiek pārbaudīti"
diff --git a/l10n/lv/files_sharing.po b/l10n/lv/files_sharing.po
index 4d7325ca83ad4458379bf8a67efe331b3c9a6f6f..f102c0e8e3743ffdba416631debe9a4c54ec8632 100644
--- a/l10n/lv/files_sharing.po
+++ b/l10n/lv/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Latvian (http://www.transifex.com/projects/p/owncloud/language/lv/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: lv\n"
 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/lv/files_versions.po b/l10n/lv/files_versions.po
index 5802b0782b6c138ee2c973158f4a115875c66e28..11755dfbc98e374920feac44b59056cd84068c99 100644
--- a/l10n/lv/files_versions.po
+++ b/l10n/lv/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\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,10 +17,18 @@ msgstr ""
 "Language: lv\n"
 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/lv/lib.po b/l10n/lv/lib.po
index 40959dcc42443f6be2746df5f047681b29081dcc..b7c5c4178093ec671287c64254c293391036f197 100644
--- a/l10n/lv/lib.po
+++ b/l10n/lv/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\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,43 +17,43 @@ msgstr ""
 "Language: lv\n"
 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/lv/settings.po b/l10n/lv/settings.po
index 725d9531266a0f4c1122a702f53492d63ccf5092..6c04e77d75a0a9736265e9d7945423cca77cac2d 100644
--- a/l10n/lv/settings.po
+++ b/l10n/lv/settings.po
@@ -8,18 +8,31 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\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"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
+msgstr "Nebija iespējams lejuplādēt sarakstu no aplikāciju veikala"
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Ielogošanās kļūme"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
 msgstr ""
 
 #: ajax/lostpassword.php:14
@@ -38,17 +51,31 @@ msgstr "OpenID nomainīts"
 msgid "Invalid request"
 msgstr "Nepareizs vaicājums"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Valoda tika nomainīta"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
-msgstr ""
+msgstr "Kļūme"
 
 #: js/apps.js:39 js/apps.js:73
 msgid "Disable"
@@ -70,30 +97,85 @@ msgstr "__valodas_nosaukums__"
 msgid "Security Warning"
 msgstr "Brīdinājums par drošību"
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
+msgid "Cron"
+msgstr "Cron"
+
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr ""
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr ""
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Log"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Vairāk"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Pievieno savu aplikāciju"
@@ -107,34 +189,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Apskatie aplikāciju lapu - apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "licenzēts"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "no"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentācija"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Rīkoties ar apjomīgiem failiem"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Uzdod jautajumu"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problēmas ar datubāzes savienojumu"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Nokļūt tur pašrocīgi"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Atbildēt"
 
@@ -228,7 +306,7 @@ msgstr "Cits"
 
 #: templates/users.php:80 templates/users.php:112
 msgid "Group Admin"
-msgstr ""
+msgstr "Grupas administrators"
 
 #: templates/users.php:82
 msgid "Quota"
diff --git a/l10n/lv/user_ldap.po b/l10n/lv/user_ldap.po
index 3596376f7049a5964258bfd9efad3256e3783b69..2ec176f92882d43a1e2331174f418dd5edcba481 100644
--- a/l10n/lv/user_ldap.po
+++ b/l10n/lv/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/mk/core.po b/l10n/mk/core.po
index 2dd6a28281f0bab7b8b614e82e6803e8c5f97ed3..f818b6bad6cb5115a371557fa5b2727894d0e309 100644
--- a/l10n/mk/core.po
+++ b/l10n/mk/core.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -32,59 +32,55 @@ msgstr "Нема категорија да се додаде?"
 msgid "This category already exists: "
 msgstr "Оваа категорија веќе постои:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Поставки"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Јануари"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Февруари"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Март"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Април"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Мај"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Јуни"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Јули"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Август"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Септември"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Октомври"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Ноември"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Декември"
 
@@ -116,7 +112,7 @@ msgstr "Грешка"
 msgid "ownCloud password reset"
 msgstr "ресетирање на лозинка за ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Користете ја следната врска да ја ресетирате Вашата лозинка: {link}"
 
@@ -246,7 +242,7 @@ msgstr "Заврши го подесувањето"
 msgid "web services under your control"
 msgstr "веб сервиси под Ваша контрола"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Одјава"
 
diff --git a/l10n/mk/files.po b/l10n/mk/files.po
index 374cb871393573ecafb985bc56bfdaf395b5c5ff..7793167ca3efeb32e24fa6401c46c2a46d7f70c1 100644
--- a/l10n/mk/files.po
+++ b/l10n/mk/files.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -54,83 +54,100 @@ msgstr "Неуспеав да запишам на диск"
 msgid "Files"
 msgstr "Датотеки"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Избриши"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "Се генерира ZIP фајлот, ќе треба извесно време."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "Не може да се преземе вашата датотека бидејќи фолдерот во кој се наоѓа фајлот има големина од 0 бајти"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Грешка при преземање"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Чека"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Преземањето е прекинато."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "неисправно име, '/' не е дозволено."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Големина"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Променето"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "фолдер"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "фолдери"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "датотека"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "датотеки"
 
@@ -162,6 +179,10 @@ msgstr "0 е неограничено"
 msgid "Maximum input size for ZIP files"
 msgstr "Максимална големина за внес на ZIP датотеки"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Ново"
@@ -186,36 +207,36 @@ msgstr "Подигни"
 msgid "Cancel upload"
 msgstr "Откажи прикачување"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Тука нема ништо. Снимете нешто!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Име"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Сподели"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Преземи"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Датотеката е премногу голема"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "Датотеките кои се обидувате да ги подигнете ја надминуваат максималната големина за подигнување датотеки на овој сервер."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Се скенираат датотеки, ве молам почекајте."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Моментално скенирам"
diff --git a/l10n/mk/files_sharing.po b/l10n/mk/files_sharing.po
index eedc221287d49963a9baee5e4f067a93b88dba6b..53057883d04157e0464b6227a5b064c8e95d97ee 100644
--- a/l10n/mk/files_sharing.po
+++ b/l10n/mk/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Macedonian (http://www.transifex.com/projects/p/owncloud/language/mk/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: mk\n"
 "Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/mk/files_versions.po b/l10n/mk/files_versions.po
index cafc33279cfd8e6d0f9929a88ece272e3b0e4818..a19a0758d7eaf52437ff1185c49e0862eba6a56a 100644
--- a/l10n/mk/files_versions.po
+++ b/l10n/mk/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: mk\n"
 "Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/mk/lib.po b/l10n/mk/lib.po
index 713abb126dc37a1cdfa80baaae6c0cc66438ccfb..626e9dc54f20dd675085df392cd5442091ddcc20 100644
--- a/l10n/mk/lib.po
+++ b/l10n/mk/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: mk\n"
 "Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/mk/settings.po b/l10n/mk/settings.po
index 6fd5df90dcce8543b6f7d5f5982338f96008848a..6bd27051c39fb4c398d8844822692dfdc8c4cbd5 100644
--- a/l10n/mk/settings.po
+++ b/l10n/mk/settings.po
@@ -9,20 +9,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Електронската пошта е снимена"
@@ -39,14 +52,28 @@ msgstr "OpenID сменето"
 msgid "Invalid request"
 msgstr "неправилно барање"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Јазикот е сменет"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -71,30 +98,85 @@ msgstr "__language_name__"
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Записник"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Повеќе"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Додадете ја Вашата апликација"
@@ -108,34 +190,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Види ја страницата со апликации на apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licensed"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "од"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Документација"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Управување со големи датотеки"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Постави прашање"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Проблем при поврзување со базата за помош"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Оди таму рачно."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Одговор"
 
diff --git a/l10n/mk/user_ldap.po b/l10n/mk/user_ldap.po
index bcde61dcc65defab52aa1f915722c952625314b0..126d33adf67ec9124b5e7b3d4a6e1cd214a737df 100644
--- a/l10n/mk/user_ldap.po
+++ b/l10n/mk/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/ms_MY/core.po b/l10n/ms_MY/core.po
index f147f532dd6f6eb0f3b47463331fedc633b8f9af..9902f55e8463c5d84f3666432566d59c0506919a 100644
--- a/l10n/ms_MY/core.po
+++ b/l10n/ms_MY/core.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -32,59 +32,55 @@ msgstr "Tiada kategori untuk di tambah?"
 msgid "This category already exists: "
 msgstr "Kategori ini telah wujud"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Tetapan"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Januari"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Februari"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Mac"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "April"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Mei"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Jun"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Julai"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Ogos"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "September"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Oktober"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "November"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Disember"
 
@@ -116,7 +112,7 @@ msgstr "Ralat"
 msgid "ownCloud password reset"
 msgstr "Set semula kata lalaun ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Guna pautan berikut untuk menetapkan semula kata laluan anda: {link}"
 
@@ -246,7 +242,7 @@ msgstr "Setup selesai"
 msgid "web services under your control"
 msgstr "Perkhidmatan web di bawah kawalan anda"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Log keluar"
 
diff --git a/l10n/ms_MY/files.po b/l10n/ms_MY/files.po
index d25d888cfc12b07a34e2ca9c5c2dc4f772fed43a..e429d35b82f7452a152f5274adc8bdcbd247f62b 100644
--- a/l10n/ms_MY/files.po
+++ b/l10n/ms_MY/files.po
@@ -11,15 +11,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -55,83 +55,100 @@ msgstr "Gagal untuk disimpan"
 msgid "Files"
 msgstr "fail"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Padam"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "Sudah wujud"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "ganti"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "Batal"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "diganti"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "dengan"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "dihapus"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "sedang menghasilkan fail ZIP, mungkin mengambil sedikit masa."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Muat naik ralat"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Dalam proses"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Muatnaik dibatalkan."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "penggunaa nama tidak sah, '/' tidak dibenarkan."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Saiz"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Dimodifikasi"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "direktori"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "direktori"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "fail"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "fail"
 
@@ -163,6 +180,10 @@ msgstr "0 adalah tanpa had"
 msgid "Maximum input size for ZIP files"
 msgstr "Saiz maksimum input untuk fail ZIP"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Baru"
@@ -187,36 +208,36 @@ msgstr "Muat naik"
 msgid "Cancel upload"
 msgstr "Batal muat naik"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Tiada apa-apa di sini. Muat naik sesuatu!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nama "
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Kongsi"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Muat turun"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Muat naik terlalu besar"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Fail sedang diimbas, harap bersabar."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Imbasan semasa"
diff --git a/l10n/ms_MY/files_sharing.po b/l10n/ms_MY/files_sharing.po
index ced7a00ab308086b09e083faf041289a368c84bd..ed56ac1736f667be1a2cfef4dfa8c24173f85414 100644
--- a/l10n/ms_MY/files_sharing.po
+++ b/l10n/ms_MY/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Malay (Malaysia) (http://www.transifex.com/projects/p/owncloud/language/ms_MY/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: ms_MY\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/ms_MY/files_versions.po b/l10n/ms_MY/files_versions.po
index 3e40393f2aef522cac7f1099bf56cc951eaeba07..d8056fb58ece070170aa727fd9267bc57f2c96b4 100644
--- a/l10n/ms_MY/files_versions.po
+++ b/l10n/ms_MY/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: ms_MY\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/ms_MY/lib.po b/l10n/ms_MY/lib.po
index cd3b8e2f803728897d1ba19a28fd1a31ff26d788..35fe79aada3f20c4e6fe8878297162a09ac74945 100644
--- a/l10n/ms_MY/lib.po
+++ b/l10n/ms_MY/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: ms_MY\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/ms_MY/settings.po b/l10n/ms_MY/settings.po
index 07857601beb8a1707bb0c4ef786caac882ca4f1a..585daefb75bda6d55ac95dc8c15729a8b9f5a95e 100644
--- a/l10n/ms_MY/settings.po
+++ b/l10n/ms_MY/settings.po
@@ -11,20 +11,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Ralat pengesahan"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Emel disimpan"
@@ -41,14 +54,28 @@ msgstr "OpenID diubah"
 msgid "Invalid request"
 msgstr "Permintaan tidak sah"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Ralat pengesahan"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Bahasa diubah"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -73,30 +100,85 @@ msgstr "_nama_bahasa_"
 msgid "Security Warning"
 msgstr "Amaran keselamatan"
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Log"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Lanjutan"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Tambah apps anda"
@@ -110,34 +192,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Lihat halaman applikasi di apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-dilesen"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "oleh"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentasi"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Mengurus Fail Besar"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Tanya soalan"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Masalah menghubung untuk membantu pengkalan data"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Pergi ke sana secara manual"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Jawapan"
 
diff --git a/l10n/ms_MY/user_ldap.po b/l10n/ms_MY/user_ldap.po
index 744d804e9c75459927fdc121991a98a151ef1481..e0ec28508651bffe7e43bc9c3512e44c7516273b 100644
--- a/l10n/ms_MY/user_ldap.po
+++ b/l10n/ms_MY/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/nb_NO/core.po b/l10n/nb_NO/core.po
index 208c2cf2ae67075c90234f1d877c6739a1753ceb..edb38d95e59098a61b9afe56d3b0daa00ed3ca22 100644
--- a/l10n/nb_NO/core.po
+++ b/l10n/nb_NO/core.po
@@ -12,15 +12,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -34,59 +34,55 @@ msgstr "Ingen kategorier å legge til?"
 msgid "This category already exists: "
 msgstr "Denne kategorien finnes allerede:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Innstillinger"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Januar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Februar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Mars"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "April"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Mai"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Juni"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Juli"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "August"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "September"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Oktober"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "November"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Desember"
 
@@ -118,7 +114,7 @@ msgstr "Feil"
 msgid "ownCloud password reset"
 msgstr "Tilbakestill ownCloud passord"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Bruk følgende lenke for å tilbakestille passordet ditt: {link}"
 
@@ -248,7 +244,7 @@ msgstr "Fullfør oppsetting"
 msgid "web services under your control"
 msgstr "nettjenester under din kontroll"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Logg ut"
 
diff --git a/l10n/nb_NO/files.po b/l10n/nb_NO/files.po
index 83cb1a6283252c4fc2d60bad7da2061963fa91b8..8366b5c7be0a0c652c7624a82d6b49dc7ebda1b5 100644
--- a/l10n/nb_NO/files.po
+++ b/l10n/nb_NO/files.po
@@ -7,20 +7,21 @@
 # Arvid Nornes <arvid.nornes@gmail.com>, 2012.
 # Christer Eriksson <post@hc3web.com>, 2012.
 # Daniel  <i18n@daniel.priv.no>, 2012.
+#   <olamaekle@gmail.com>, 2012.
 #   <runesudden@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-26 01:17+0200\n"
-"PO-Revision-Date: 2012-08-25 23:02+0000\n"
-"Last-Translator: runesudden <runesudden@gmail.com>\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -56,83 +57,100 @@ msgstr "Klarte ikke å skrive til disk"
 msgid "Files"
 msgstr "Filer"
 
-#: js/fileactions.js:111 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Slett"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "eksisterer allerede"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "erstatt"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "avbryt"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "erstattet"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "angre"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "med"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "angre"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "slettet"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "opprettet ZIP-fil, dette kan ta litt tid"
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Opplasting feilet"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Ventende"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Opplasting avbrutt."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Ugyldig navn, '/' er ikke tillatt. "
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Størrelse"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Endret"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "mappe"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "mapper"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "fil"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "filer"
 
@@ -164,6 +182,10 @@ msgstr "0 er ubegrenset"
 msgid "Maximum input size for ZIP files"
 msgstr "Maksimal størrelse på ZIP-filer"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Lagre"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Ny"
@@ -188,36 +210,36 @@ msgstr "Last opp"
 msgid "Cancel upload"
 msgstr "Avbryt opplasting"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Ingenting her. Last opp noe!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Navn"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Del"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Last ned"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Opplasting for stor"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Skanner etter filer, vennligst vent."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Pågående skanning"
diff --git a/l10n/nb_NO/files_sharing.po b/l10n/nb_NO/files_sharing.po
index f869bfc1fbac5b967508023711cd252810b47143..941f7443cfb0e66fd10513a2a53b255c0c248b15 100644
--- a/l10n/nb_NO/files_sharing.po
+++ b/l10n/nb_NO/files_sharing.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 17:27+0000\n"
-"Last-Translator: Arvid Nornes <arvid.nornes@gmail.com>\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:04+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -18,18 +18,22 @@ msgstr ""
 "Language: nb_NO\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Størrelse"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr ""
+
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Endret"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Slett alle"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Slett"
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr ""
diff --git a/l10n/nb_NO/files_versions.po b/l10n/nb_NO/files_versions.po
index 9b44f4827362b095b06630fa6931ef66cdf3736e..536b4d262ea7fb0db21ce691f1c37df8d3eddc30 100644
--- a/l10n/nb_NO/files_versions.po
+++ b/l10n/nb_NO/files_versions.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 17:25+0000\n"
-"Last-Translator: Arvid Nornes <arvid.nornes@gmail.com>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -18,10 +18,18 @@ msgstr ""
 "Language: nb_NO\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Slå på versjonering"
diff --git a/l10n/nb_NO/lib.po b/l10n/nb_NO/lib.po
index 52b02f78ee233bc886ec2107cf5916e9b973c327..4a78161719d0d6898146cd667ee1180e1e69bdd8 100644
--- a/l10n/nb_NO/lib.po
+++ b/l10n/nb_NO/lib.po
@@ -9,9 +9,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-26 01:17+0200\n"
-"PO-Revision-Date: 2012-08-25 22:57+0000\n"
-"Last-Translator: runesudden <runesudden@gmail.com>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -43,19 +43,19 @@ msgstr "Apper"
 msgid "Admin"
 msgstr "Admin"
 
-#: files.php:276
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "ZIP-nedlasting av avslått"
 
-#: files.php:277
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Filene må lastes ned en om gangen"
 
-#: files.php:277 files.php:302
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Tilbake til filer"
 
-#: files.php:301
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "De valgte filene er for store til å kunne generere ZIP-fil"
 
@@ -112,3 +112,16 @@ msgstr "i fjor"
 #: template.php:97
 msgid "years ago"
 msgstr "år siden"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/nb_NO/settings.po b/l10n/nb_NO/settings.po
index a1c8400443f3043782ef7770f08f64e7b1b0504f..4b095682b56ebe13e51163d6639c1fe0f5e4c344 100644
--- a/l10n/nb_NO/settings.po
+++ b/l10n/nb_NO/settings.po
@@ -13,20 +13,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-26 01:17+0200\n"
-"PO-Revision-Date: 2012-08-25 23:00+0000\n"
-"Last-Translator: runesudden <runesudden@gmail.com>\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Lasting av liste fra App Store feilet."
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Autentikasjonsfeil"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Epost lagret"
@@ -43,14 +56,28 @@ msgstr "OpenID endret"
 msgid "Invalid request"
 msgstr "Ugyldig forespørsel"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Autentikasjonsfeil"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Språk endret"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Feil"
@@ -75,30 +102,85 @@ msgstr "__language_name__"
 msgid "Security Warning"
 msgstr "Sikkerhetsadvarsel"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "utfør en oppgave med hver side som blir lastet"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php er registrert som en webcron tjeneste"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "benytt systemets cron tjeneste"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Logg"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Mer"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Legg til din App"
@@ -112,34 +194,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Se applikasjonens side på apps.owncloud.org"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-lisensiert"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "av"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentasjon"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Håndtere store filer"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Still et spørsmål"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problemer med å koble til hjelp-databasen"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Gå dit manuelt"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Svar"
 
diff --git a/l10n/nb_NO/user_ldap.po b/l10n/nb_NO/user_ldap.po
index 3a14ed0b28c289b7d8289e91425edc0e3623a9b4..2208bdc9acd06c37bead17eb869f731168698714 100644
--- a/l10n/nb_NO/user_ldap.po
+++ b/l10n/nb_NO/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/nl/core.po b/l10n/nl/core.po
index c7047b576b08e2a5a4e6a72d09b06d898729e009..03a847800ebbdf9aeadd4b27c0c7a695840892ca 100644
--- a/l10n/nl/core.po
+++ b/l10n/nl/core.po
@@ -4,24 +4,26 @@
 # 
 # Translators:
 #   <bart.formosus@gmail.com>, 2011.
+#   <didi.debian@cknow.org>, 2012.
 # Erik Bent <hj.bent.60@gmail.com>, 2012.
 #   <icewind1991@gmail.com>, 2011.
 #   <jos@gelauff.net>, 2012.
 #   <koen@vervloesem.eu>, 2011.
 #   <pietje8501@gmail.com>, 2012.
+# 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: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:01+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -35,59 +37,55 @@ msgstr "Geen categorie toevoegen?"
 msgid "This category already exists: "
 msgstr "De categorie bestaat al."
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Instellingen"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Januari"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Februari"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Maart"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "April"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Mei"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Juni"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Juli"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Augustus"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "September"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Oktober"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "November"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "December"
 
@@ -119,7 +117,7 @@ msgstr "Fout"
 msgid "ownCloud password reset"
 msgstr "ownCloud wachtwoord herstellen"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Gebruik de volgende link om je wachtwoord te resetten: {link}"
 
@@ -146,7 +144,7 @@ msgstr "Resetaanvraag"
 
 #: lostpassword/templates/resetpassword.php:4
 msgid "Your password was reset"
-msgstr "Je wachtwoord is geweizigd"
+msgstr "Je wachtwoord is gewijzigd"
 
 #: lostpassword/templates/resetpassword.php:5
 msgid "To login page"
@@ -235,7 +233,7 @@ msgstr "Naam databank"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Database tablespace"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -249,7 +247,7 @@ msgstr "Installatie afronden"
 msgid "web services under your control"
 msgstr "webdiensten die je beheerst"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Afmelden"
 
diff --git a/l10n/nl/files.po b/l10n/nl/files.po
index ab52fb70288610c12e7a81c1b16c1b1b5a84c313..0a77bef2342780a11cb68a74b2364656d946d8ea 100644
--- a/l10n/nl/files.po
+++ b/l10n/nl/files.po
@@ -5,6 +5,7 @@
 # Translators:
 #   <bart.formosus@gmail.com>, 2011.
 #   <bartv@thisnet.nl>, 2011.
+#   <didi.debian@cknow.org>, 2012.
 # Erik Bent <hj.bent.60@gmail.com>, 2012.
 #   <icewind1991@gmail.com>, 2011.
 #   <jos@gelauff.net>, 2012.
@@ -15,15 +16,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 08:34+0000\n"
+"POT-Creation-Date: 2012-09-10 02:02+0200\n"
+"PO-Revision-Date: 2012-09-09 07:08+0000\n"
 "Last-Translator: Richard Bos <radoeka@gmail.com>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -59,83 +60,100 @@ msgstr "Schrijven naar schijf mislukt"
 msgid "Files"
 msgstr "Bestanden"
 
-#: js/fileactions.js:111 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Stop delen"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Verwijder"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "bestaat al"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "vervang"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "Stel een naam voor"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "annuleren"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "vervangen"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "ongedaan maken"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "door"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "ongedaan maken"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "niet gedeeld"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "verwijderd"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "aanmaken ZIP-file, dit kan enige tijd duren."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Upload Fout"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Wachten"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Uploaden geannuleerd."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr "Bestands upload is bezig. Wanneer de pagina nu verlaten wordt, stopt de upload."
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Ongeldige naam, '/' is niet toegestaan."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Bestandsgrootte"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Laatst aangepast"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "map"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "mappen"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "bestand"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "bestanden"
 
@@ -167,6 +185,10 @@ msgstr "0 is ongelimiteerd"
 msgid "Maximum input size for ZIP files"
 msgstr "Maximale grootte voor ZIP bestanden"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Opslaan"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nieuw"
@@ -191,36 +213,36 @@ msgstr "Upload"
 msgid "Cancel upload"
 msgstr "Upload afbreken"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Er bevindt zich hier niets. Upload een bestand!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Naam"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Delen"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Download"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Bestanden te groot"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Bestanden worden gescand, even wachten."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Er wordt gescand"
diff --git a/l10n/nl/files_sharing.po b/l10n/nl/files_sharing.po
index dc30969ea74614bda4ed29a67869d6fcfc60481d..7027b587198f0e476c9e0a5a5d29416b91ca8970 100644
--- a/l10n/nl/files_sharing.po
+++ b/l10n/nl/files_sharing.po
@@ -3,33 +3,38 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <didi.debian@cknow.org>, 2012.
 # 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: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 19:16+0000\n"
-"Last-Translator: Richard Bos <radoeka@gmail.com>\n"
+"POT-Creation-Date: 2012-09-06 02:01+0200\n"
+"PO-Revision-Date: 2012-09-05 11:13+0000\n"
+"Last-Translator: diederikdehaas <didi.debian@cknow.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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: nl\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Grootte"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Wachtwoord"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Aangepast"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Verzenden"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Verwijder alles"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Downloaden"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Vewijder"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Geen voorbeeldweergave beschikbaar voor"
+
+#: templates/public.php:25
+msgid "web services under your control"
+msgstr "Webdiensten in eigen beheer"
diff --git a/l10n/nl/files_versions.po b/l10n/nl/files_versions.po
index cd671208493a657be8c553786ea18b0809f562eb..9e4a68ec09bada0078f88314b86d12993d603418 100644
--- a/l10n/nl/files_versions.po
+++ b/l10n/nl/files_versions.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 16:58+0000\n"
+"POT-Creation-Date: 2012-09-02 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 20:09+0000\n"
 "Last-Translator: Richard Bos <radoeka@gmail.com>\n"
 "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n"
 "MIME-Version: 1.0\n"
@@ -18,10 +18,18 @@ msgstr ""
 "Language: nl\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Alle versies laten verlopen"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Versies"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Dit zal alle bestaande backup versies van uw bestanden verwijderen"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Activeer file versioning"
diff --git a/l10n/nl/lib.po b/l10n/nl/lib.po
index 2715403dba68e77a4544514ea2c4f8eefcac1934..80648c52cf008fd12fc18bb98e4bfd034153376f 100644
--- a/l10n/nl/lib.po
+++ b/l10n/nl/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 15:58+0000\n"
+"POT-Creation-Date: 2012-09-02 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 20:12+0000\n"
 "Last-Translator: Richard Bos <radoeka@gmail.com>\n"
 "Language-Team: Dutch (http://www.transifex.com/projects/p/owncloud/language/nl/)\n"
 "MIME-Version: 1.0\n"
@@ -42,19 +42,19 @@ msgstr "Apps"
 msgid "Admin"
 msgstr "Administrator"
 
-#: files.php:276
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "ZIP download is uitgeschakeld."
 
-#: files.php:277
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Bestanden moeten één voor één worden gedownload."
 
-#: files.php:277 files.php:302
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Terug naar bestanden"
 
-#: files.php:301
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "De geselecteerde bestanden zijn te groot om een zip bestand te maken."
 
@@ -111,3 +111,16 @@ msgstr "vorig jaar"
 #: template.php:97
 msgid "years ago"
 msgstr "jaar geleden"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s is beschikbaar. Verkrijg <a href=\"%s\">meer informatie</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "Bijgewerkt"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "Meest recente versie controle is uitgeschakeld"
diff --git a/l10n/nl/settings.po b/l10n/nl/settings.po
index 7f2741fcf91c836de2b3858df18b9acff597d9f0..8644b83dc02109542430a85571b52545110702a4 100644
--- a/l10n/nl/settings.po
+++ b/l10n/nl/settings.po
@@ -4,6 +4,7 @@
 # 
 # Translators:
 #   <bart.formosus@gmail.com>, 2011.
+#   <didi.debian@cknow.org>, 2012.
 # Erik Bent <hj.bent.60@gmail.com>, 2012.
 #   <icewind1991@gmail.com>, 2011, 2012.
 #   <jos@gelauff.net>, 2012.
@@ -14,20 +15,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 08:40+0000\n"
+"POT-Creation-Date: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-09-07 13:23+0000\n"
 "Last-Translator: Richard Bos <radoeka@gmail.com>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Kan de lijst niet van de App store laden"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Authenticatie fout"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Groep bestaat al"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Niet in staat om groep toe te voegen"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "E-mail bewaard"
@@ -44,14 +58,28 @@ msgstr "OpenID is aangepast"
 msgid "Invalid request"
 msgstr "Ongeldig verzoek"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Authenticatie fout"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Niet in staat om groep te verwijderen"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Niet in staat om gebruiker te verwijderen"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Taal aangepast"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Niet in staat om gebruiker toe te voegen aan groep %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Niet in staat om gebruiker te verwijderen uit groep %s"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Fout"
@@ -76,30 +104,85 @@ msgstr "Nederlands"
 msgid "Security Warning"
 msgstr "Veiligheidswaarschuwing"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "Uw data folder en uw bestanden zijn hoogst waarschijnlijk vanaf het internet bereikbaar.  Het .htaccess bestand dat ownCloud meelevert werkt niet.  Het is ten zeerste aangeraden om uw webserver zodanig te configureren, dat de data folder niet bereikbaar is vanaf het internet of verplaatst uw data folder naar een locatie buiten de webserver document root."
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "Voer 1 taak uit bij elke geladen pagina"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php is geregistreerd bij een webcron service"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "gebruik de systeem cron service"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "Deel API"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Zet de Deel API aan"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Sta apps toe om de Deel API te gebruiken"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Sta links toe"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Sta gebruikers toe om items via links publiekelijk te maken"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Sta verder delen toe"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Sta gebruikers toe om items nogmaals te delen"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Sta gebruikers toe om met iedereen te delen"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Sta gebruikers toe om alleen met gebruikers in hun groepen te delen"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Log"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Meer"
 
+#: templates/admin.php:105
+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 "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>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Voeg je App toe"
@@ -113,34 +196,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Zie de applicatiepagina op apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-gelicentieerd"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "door"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-Gelicenseerd door <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Documentatie"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Onderhoud van grote bestanden"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Stel een vraag"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problemen bij het verbinden met de helpdatabank."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Ga er zelf heen."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Beantwoord"
 
diff --git a/l10n/nl/user_ldap.po b/l10n/nl/user_ldap.po
index 89b469b7ed9eba646d300d987d5d624be77bcc39..e40f9e685f10e7206cf87195a4c23b1eb2425ae5 100644
--- a/l10n/nl/user_ldap.po
+++ b/l10n/nl/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/nn_NO/core.po b/l10n/nn_NO/core.po
index 313cdeba60dcf06f4647daf860bad863203a3598..ea34767b84e363a59968a5b4295aeacbad402f72 100644
--- a/l10n/nn_NO/core.po
+++ b/l10n/nn_NO/core.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -31,59 +31,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Innstillingar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -115,7 +111,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Bruk føljane link til å tilbakestille passordet ditt: {link}"
 
@@ -245,7 +241,7 @@ msgstr "Fullfør oppsettet"
 msgid "web services under your control"
 msgstr "Vev tjenester under din kontroll"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Logg ut"
 
diff --git a/l10n/nn_NO/files.po b/l10n/nn_NO/files.po
index f0ce0b444a2d7646f5eaddf2cf2fbea7c5238b4c..f473b58ff41a45951bd1d45530159d784cc4fda6 100644
--- a/l10n/nn_NO/files.po
+++ b/l10n/nn_NO/files.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +53,100 @@ msgstr ""
 msgid "Files"
 msgstr "Filer"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Slett"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Storleik"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Endra"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -161,6 +178,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Ny"
@@ -185,36 +206,36 @@ msgstr "Last opp"
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Ingenting her. Last noko opp!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Namn"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Last ned"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "For stor opplasting"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/nn_NO/files_sharing.po b/l10n/nn_NO/files_sharing.po
index 1ae9969855c6a628d7503903e96c3aa1cfded9c1..e5055f0809b0cdd5ef37c3359beb5a0ebd2232df 100644
--- a/l10n/nn_NO/files_sharing.po
+++ b/l10n/nn_NO/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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,18 +17,22 @@ msgstr ""
 "Language: nn_NO\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/nn_NO/files_versions.po b/l10n/nn_NO/files_versions.po
index 3ae26d5f1311aa0765b05ea3874febf144453237..d440d7524f0b7ff6710f6c5183bdc89350c688e5 100644
--- a/l10n/nn_NO/files_versions.po
+++ b/l10n/nn_NO/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: nn_NO\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/nn_NO/lib.po b/l10n/nn_NO/lib.po
index 17b3f9e58db32390167e78181d7bb54bff141a1b..aa993826b379f15e52e0d303df5477efc4cbae69 100644
--- a/l10n/nn_NO/lib.po
+++ b/l10n/nn_NO/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: nn_NO\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/nn_NO/settings.po b/l10n/nn_NO/settings.po
index 465d4e3f602341a70685ce9fed10921804748e22..8276d41ed6d5a10ca1918e958c239dee3330bf54 100644
--- a/l10n/nn_NO/settings.po
+++ b/l10n/nn_NO/settings.po
@@ -9,20 +9,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-20 06:17+0000\n"
-"Last-Translator: Alexander Stevenson <assteve@gmail.com>\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Klarer ikkje å laste inn liste fra App Store"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Feil i autentisering"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "E-postadresse lagra"
@@ -39,14 +52,28 @@ msgstr "OpenID endra"
 msgid "Invalid request"
 msgstr "Ugyldig førespurnad"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Feil i autentisering"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Språk endra"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Feil"
@@ -71,30 +98,85 @@ msgstr "Nynorsk"
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -108,34 +190,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-lisensiert"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "av"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Spør om noko"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problem ved tilkopling til hjelpedatabasen."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Gå der på eigen hand."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Svar"
 
diff --git a/l10n/nn_NO/user_ldap.po b/l10n/nn_NO/user_ldap.po
index 86099dc60641d62cc8c547dfe713046adfea052e..2d5b008d920c4f1ff5113fcd8f802e963db97344 100644
--- a/l10n/nn_NO/user_ldap.po
+++ b/l10n/nn_NO/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/oc/core.po b/l10n/oc/core.po
new file mode 100644
index 0000000000000000000000000000000000000000..00223969d787ab5994b058693a6eec94a3c7741d
--- /dev/null
+++ b/l10n/oc/core.po
@@ -0,0 +1,268 @@
+# 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: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2011-07-25 16:05+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
+msgid "Application name not provided."
+msgstr ""
+
+#: ajax/vcategories/add.php:29
+msgid "No category to add?"
+msgstr ""
+
+#: ajax/vcategories/add.php:36
+msgid "This category already exists: "
+msgstr ""
+
+#: js/js.js:208 templates/layout.user.php:54 templates/layout.user.php:55
+msgid "Settings"
+msgstr ""
+
+#: js/js.js:593
+msgid "January"
+msgstr ""
+
+#: js/js.js:593
+msgid "February"
+msgstr ""
+
+#: js/js.js:593
+msgid "March"
+msgstr ""
+
+#: js/js.js:593
+msgid "April"
+msgstr ""
+
+#: js/js.js:593
+msgid "May"
+msgstr ""
+
+#: js/js.js:593
+msgid "June"
+msgstr ""
+
+#: js/js.js:594
+msgid "July"
+msgstr ""
+
+#: js/js.js:594
+msgid "August"
+msgstr ""
+
+#: js/js.js:594
+msgid "September"
+msgstr ""
+
+#: js/js.js:594
+msgid "October"
+msgstr ""
+
+#: js/js.js:594
+msgid "November"
+msgstr ""
+
+#: js/js.js:594
+msgid "December"
+msgstr ""
+
+#: js/oc-dialogs.js:143 js/oc-dialogs.js:163
+msgid "Cancel"
+msgstr ""
+
+#: js/oc-dialogs.js:159
+msgid "No"
+msgstr ""
+
+#: js/oc-dialogs.js:160
+msgid "Yes"
+msgstr ""
+
+#: js/oc-dialogs.js:177
+msgid "Ok"
+msgstr ""
+
+#: js/oc-vcategories.js:68
+msgid "No categories selected for deletion."
+msgstr ""
+
+#: js/oc-vcategories.js:68
+msgid "Error"
+msgstr ""
+
+#: lostpassword/index.php:26
+msgid "ownCloud password reset"
+msgstr ""
+
+#: lostpassword/templates/email.php:2
+msgid "Use the following link to reset your password: {link}"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:3
+msgid "You will receive a link to reset your password via Email."
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:5
+msgid "Requested"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:8
+msgid "Login failed!"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:11 templates/installation.php:26
+#: templates/login.php:9
+msgid "Username"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:15
+msgid "Request reset"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:4
+msgid "Your password was reset"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:5
+msgid "To login page"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:8
+msgid "New password"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:11
+msgid "Reset password"
+msgstr ""
+
+#: strings.php:5
+msgid "Personal"
+msgstr ""
+
+#: strings.php:6
+msgid "Users"
+msgstr ""
+
+#: strings.php:7
+msgid "Apps"
+msgstr ""
+
+#: strings.php:8
+msgid "Admin"
+msgstr ""
+
+#: strings.php:9
+msgid "Help"
+msgstr ""
+
+#: templates/403.php:12
+msgid "Access forbidden"
+msgstr ""
+
+#: templates/404.php:12
+msgid "Cloud not found"
+msgstr ""
+
+#: templates/edit_categories_dialog.php:4
+msgid "Edit categories"
+msgstr ""
+
+#: templates/edit_categories_dialog.php:14
+msgid "Add"
+msgstr ""
+
+#: templates/installation.php:24
+msgid "Create an <strong>admin account</strong>"
+msgstr ""
+
+#: templates/installation.php:30 templates/login.php:13
+msgid "Password"
+msgstr ""
+
+#: templates/installation.php:36
+msgid "Advanced"
+msgstr ""
+
+#: templates/installation.php:38
+msgid "Data folder"
+msgstr ""
+
+#: templates/installation.php:45
+msgid "Configure the database"
+msgstr ""
+
+#: templates/installation.php:50 templates/installation.php:61
+#: templates/installation.php:71 templates/installation.php:81
+msgid "will be used"
+msgstr ""
+
+#: templates/installation.php:93
+msgid "Database user"
+msgstr ""
+
+#: templates/installation.php:97
+msgid "Database password"
+msgstr ""
+
+#: templates/installation.php:101
+msgid "Database name"
+msgstr ""
+
+#: templates/installation.php:109
+msgid "Database tablespace"
+msgstr ""
+
+#: templates/installation.php:115
+msgid "Database host"
+msgstr ""
+
+#: templates/installation.php:120
+msgid "Finish setup"
+msgstr ""
+
+#: templates/layout.guest.php:36
+msgid "web services under your control"
+msgstr ""
+
+#: templates/layout.user.php:39
+msgid "Log out"
+msgstr ""
+
+#: templates/login.php:6
+msgid "Lost your password?"
+msgstr ""
+
+#: templates/login.php:17
+msgid "remember"
+msgstr ""
+
+#: templates/login.php:18
+msgid "Log in"
+msgstr ""
+
+#: templates/logout.php:1
+msgid "You are logged out."
+msgstr ""
+
+#: templates/part.pagenavi.php:3
+msgid "prev"
+msgstr ""
+
+#: templates/part.pagenavi.php:20
+msgid "next"
+msgstr ""
diff --git a/l10n/oc/files.po b/l10n/oc/files.po
new file mode 100644
index 0000000000000000000000000000000000000000..a6f4c0b62c8baf316a34303f562541919f3f25ec
--- /dev/null
+++ b/l10n/oc/files.po
@@ -0,0 +1,239 @@
+# 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: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: ajax/upload.php:20
+msgid "There is no error, the file uploaded with success"
+msgstr ""
+
+#: ajax/upload.php:21
+msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini"
+msgstr ""
+
+#: ajax/upload.php:22
+msgid ""
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
+"the HTML form"
+msgstr ""
+
+#: ajax/upload.php:23
+msgid "The uploaded file was only partially uploaded"
+msgstr ""
+
+#: ajax/upload.php:24
+msgid "No file was uploaded"
+msgstr ""
+
+#: ajax/upload.php:25
+msgid "Missing a temporary folder"
+msgstr ""
+
+#: ajax/upload.php:26
+msgid "Failed to write to disk"
+msgstr ""
+
+#: appinfo/app.php:6
+msgid "Files"
+msgstr ""
+
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
+msgid "Delete"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
+msgid "already exists"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
+msgid "replace"
+msgstr ""
+
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
+msgid "cancel"
+msgstr ""
+
+#: js/filelist.js:235 js/filelist.js:237
+msgid "replaced"
+msgstr ""
+
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
+msgid "with"
+msgstr ""
+
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
+
+#: js/filelist.js:270
+msgid "deleted"
+msgstr ""
+
+#: js/files.js:179
+msgid "generating ZIP-file, it may take some time."
+msgstr ""
+
+#: js/files.js:208
+msgid "Unable to upload your file as it is a directory or has 0 bytes"
+msgstr ""
+
+#: js/files.js:208
+msgid "Upload Error"
+msgstr ""
+
+#: js/files.js:236 js/files.js:341 js/files.js:370
+msgid "Pending"
+msgstr ""
+
+#: js/files.js:355
+msgid "Upload cancelled."
+msgstr ""
+
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
+msgid "Invalid name, '/' is not allowed."
+msgstr ""
+
+#: js/files.js:746 templates/index.php:56
+msgid "Size"
+msgstr ""
+
+#: js/files.js:747 templates/index.php:58
+msgid "Modified"
+msgstr ""
+
+#: js/files.js:774
+msgid "folder"
+msgstr ""
+
+#: js/files.js:776
+msgid "folders"
+msgstr ""
+
+#: js/files.js:784
+msgid "file"
+msgstr ""
+
+#: js/files.js:786
+msgid "files"
+msgstr ""
+
+#: templates/admin.php:5
+msgid "File handling"
+msgstr ""
+
+#: templates/admin.php:7
+msgid "Maximum upload size"
+msgstr ""
+
+#: templates/admin.php:7
+msgid "max. possible: "
+msgstr ""
+
+#: templates/admin.php:9
+msgid "Needed for multi-file and folder downloads."
+msgstr ""
+
+#: templates/admin.php:9
+msgid "Enable ZIP-download"
+msgstr ""
+
+#: templates/admin.php:11
+msgid "0 is unlimited"
+msgstr ""
+
+#: templates/admin.php:12
+msgid "Maximum input size for ZIP files"
+msgstr ""
+
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
+#: templates/index.php:7
+msgid "New"
+msgstr ""
+
+#: templates/index.php:9
+msgid "Text file"
+msgstr ""
+
+#: templates/index.php:10
+msgid "Folder"
+msgstr ""
+
+#: templates/index.php:11
+msgid "From url"
+msgstr ""
+
+#: templates/index.php:21
+msgid "Upload"
+msgstr ""
+
+#: templates/index.php:27
+msgid "Cancel upload"
+msgstr ""
+
+#: templates/index.php:40
+msgid "Nothing in here. Upload something!"
+msgstr ""
+
+#: templates/index.php:48
+msgid "Name"
+msgstr ""
+
+#: templates/index.php:50
+msgid "Share"
+msgstr ""
+
+#: templates/index.php:52
+msgid "Download"
+msgstr ""
+
+#: templates/index.php:75
+msgid "Upload too large"
+msgstr ""
+
+#: templates/index.php:77
+msgid ""
+"The files you are trying to upload exceed the maximum size for file uploads "
+"on this server."
+msgstr ""
+
+#: templates/index.php:82
+msgid "Files are being scanned, please wait."
+msgstr ""
+
+#: templates/index.php:85
+msgid "Current scanning"
+msgstr ""
diff --git a/l10n/oc/files_encryption.po b/l10n/oc/files_encryption.po
new file mode 100644
index 0000000000000000000000000000000000000000..d6e0c7a83be79ee161858db6b83e28b62c9b6057
--- /dev/null
+++ b/l10n/oc/files_encryption.po
@@ -0,0 +1,34 @@
+# 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: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-08-12 22:33+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: templates/settings.php:3
+msgid "Encryption"
+msgstr ""
+
+#: templates/settings.php:4
+msgid "Exclude the following file types from encryption"
+msgstr ""
+
+#: templates/settings.php:5
+msgid "None"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "Enable Encryption"
+msgstr ""
diff --git a/l10n/oc/files_external.po b/l10n/oc/files_external.po
new file mode 100644
index 0000000000000000000000000000000000000000..5ddc431f8ca871829361195e07fd25067b016c95
--- /dev/null
+++ b/l10n/oc/files_external.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: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-08-12 22:34+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: templates/settings.php:3
+msgid "External Storage"
+msgstr ""
+
+#: templates/settings.php:7 templates/settings.php:19
+msgid "Mount point"
+msgstr ""
+
+#: templates/settings.php:8
+msgid "Backend"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "Configuration"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "Options"
+msgstr ""
+
+#: templates/settings.php:11
+msgid "Applicable"
+msgstr ""
+
+#: templates/settings.php:23
+msgid "Add mount point"
+msgstr ""
+
+#: templates/settings.php:54 templates/settings.php:62
+msgid "None set"
+msgstr ""
+
+#: templates/settings.php:63
+msgid "All Users"
+msgstr ""
+
+#: templates/settings.php:64
+msgid "Groups"
+msgstr ""
+
+#: templates/settings.php:69
+msgid "Users"
+msgstr ""
+
+#: templates/settings.php:77 templates/settings.php:96
+msgid "Delete"
+msgstr ""
+
+#: templates/settings.php:88
+msgid "SSL root certificates"
+msgstr ""
+
+#: templates/settings.php:102
+msgid "Import Root Certificate"
+msgstr ""
+
+#: templates/settings.php:108
+msgid "Enable User External Storage"
+msgstr ""
+
+#: templates/settings.php:109
+msgid "Allow users to mount their own external storage"
+msgstr ""
diff --git a/l10n/oc/files_sharing.po b/l10n/oc/files_sharing.po
new file mode 100644
index 0000000000000000000000000000000000000000..1f90264d68b3d01ca926d4da52dfa3af89af3e3f
--- /dev/null
+++ b/l10n/oc/files_sharing.po
@@ -0,0 +1,38 @@
+# 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: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-08-12 22:35+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr ""
+
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr ""
+
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr ""
+
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:25
+msgid "web services under your control"
+msgstr ""
diff --git a/l10n/oc/files_versions.po b/l10n/oc/files_versions.po
new file mode 100644
index 0000000000000000000000000000000000000000..d38fef98d595a4ab709ee97d82a846abd7695514
--- /dev/null
+++ b/l10n/oc/files_versions.po
@@ -0,0 +1,34 @@
+# 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: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-08-12 22:37+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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/settings-personal.js:31 templates/settings-personal.php:10
+msgid "Expire all versions"
+msgstr ""
+
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
+#: templates/settings.php:3
+msgid "Enable Files Versioning"
+msgstr ""
diff --git a/l10n/oc/lib.po b/l10n/oc/lib.po
new file mode 100644
index 0000000000000000000000000000000000000000..499df461d8e48342130945904f8e457ce07f26bf
--- /dev/null
+++ b/l10n/oc/lib.po
@@ -0,0 +1,125 @@
+# 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: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-07-27 22:23+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: app.php:285
+msgid "Help"
+msgstr ""
+
+#: app.php:292
+msgid "Personal"
+msgstr ""
+
+#: app.php:297
+msgid "Settings"
+msgstr ""
+
+#: app.php:302
+msgid "Users"
+msgstr ""
+
+#: app.php:309
+msgid "Apps"
+msgstr ""
+
+#: app.php:311
+msgid "Admin"
+msgstr ""
+
+#: files.php:280
+msgid "ZIP download is turned off."
+msgstr ""
+
+#: files.php:281
+msgid "Files need to be downloaded one by one."
+msgstr ""
+
+#: files.php:281 files.php:306
+msgid "Back to Files"
+msgstr ""
+
+#: files.php:305
+msgid "Selected files too large to generate zip file."
+msgstr ""
+
+#: json.php:28
+msgid "Application is not enabled"
+msgstr ""
+
+#: json.php:39 json.php:63 json.php:75
+msgid "Authentication error"
+msgstr ""
+
+#: json.php:51
+msgid "Token expired. Please reload page."
+msgstr ""
+
+#: template.php:87
+msgid "seconds ago"
+msgstr ""
+
+#: template.php:88
+msgid "1 minute ago"
+msgstr ""
+
+#: template.php:89
+#, php-format
+msgid "%d minutes ago"
+msgstr ""
+
+#: template.php:92
+msgid "today"
+msgstr ""
+
+#: template.php:93
+msgid "yesterday"
+msgstr ""
+
+#: template.php:94
+#, php-format
+msgid "%d days ago"
+msgstr ""
+
+#: template.php:95
+msgid "last month"
+msgstr ""
+
+#: template.php:96
+msgid "months ago"
+msgstr ""
+
+#: template.php:97
+msgid "last year"
+msgstr ""
+
+#: template.php:98
+msgid "years ago"
+msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/oc/settings.po b/l10n/oc/settings.po
new file mode 100644
index 0000000000000000000000000000000000000000..fe8e3adeb4e89fb53ab54d46b783b22789b4f66b
--- /dev/null
+++ b/l10n/oc/settings.po
@@ -0,0 +1,316 @@
+# 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: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2011-07-25 16:05+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: ajax/apps/ocs.php:23
+msgid "Unable to load list from App Store"
+msgstr ""
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
+#: ajax/lostpassword.php:14
+msgid "Email saved"
+msgstr ""
+
+#: ajax/lostpassword.php:16
+msgid "Invalid email"
+msgstr ""
+
+#: ajax/openid.php:16
+msgid "OpenID Changed"
+msgstr ""
+
+#: ajax/openid.php:18 ajax/setlanguage.php:20 ajax/setlanguage.php:23
+msgid "Invalid request"
+msgstr ""
+
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
+
+#: ajax/setlanguage.php:18
+msgid "Language changed"
+msgstr ""
+
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
+#: js/apps.js:18
+msgid "Error"
+msgstr ""
+
+#: js/apps.js:39 js/apps.js:73
+msgid "Disable"
+msgstr ""
+
+#: js/apps.js:39 js/apps.js:62
+msgid "Enable"
+msgstr ""
+
+#: js/personal.js:69
+msgid "Saving..."
+msgstr ""
+
+#: personal.php:46 personal.php:47
+msgid "__language_name__"
+msgstr ""
+
+#: templates/admin.php:14
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:17
+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/admin.php:31
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:33
+msgid "execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
+msgid "use systems cron service"
+msgstr ""
+
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:97
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:105
+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/apps.php:10
+msgid "Add your App"
+msgstr ""
+
+#: templates/apps.php:26
+msgid "Select an App"
+msgstr ""
+
+#: templates/apps.php:29
+msgid "See application page at apps.owncloud.com"
+msgstr ""
+
+#: templates/apps.php:30
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
+
+#: templates/help.php:9
+msgid "Documentation"
+msgstr ""
+
+#: templates/help.php:10
+msgid "Managing Big Files"
+msgstr ""
+
+#: templates/help.php:11
+msgid "Ask a question"
+msgstr ""
+
+#: templates/help.php:23
+msgid "Problems connecting to help database."
+msgstr ""
+
+#: templates/help.php:24
+msgid "Go there manually."
+msgstr ""
+
+#: templates/help.php:32
+msgid "Answer"
+msgstr ""
+
+#: templates/personal.php:8
+msgid "You use"
+msgstr ""
+
+#: templates/personal.php:8
+msgid "of the available"
+msgstr ""
+
+#: templates/personal.php:12
+msgid "Desktop and Mobile Syncing Clients"
+msgstr ""
+
+#: templates/personal.php:13
+msgid "Download"
+msgstr ""
+
+#: templates/personal.php:19
+msgid "Your password got changed"
+msgstr ""
+
+#: templates/personal.php:20
+msgid "Unable to change your password"
+msgstr ""
+
+#: templates/personal.php:21
+msgid "Current password"
+msgstr ""
+
+#: templates/personal.php:22
+msgid "New password"
+msgstr ""
+
+#: templates/personal.php:23
+msgid "show"
+msgstr ""
+
+#: templates/personal.php:24
+msgid "Change password"
+msgstr ""
+
+#: templates/personal.php:30
+msgid "Email"
+msgstr ""
+
+#: templates/personal.php:31
+msgid "Your email address"
+msgstr ""
+
+#: templates/personal.php:32
+msgid "Fill in an email address to enable password recovery"
+msgstr ""
+
+#: templates/personal.php:38 templates/personal.php:39
+msgid "Language"
+msgstr ""
+
+#: templates/personal.php:44
+msgid "Help translate"
+msgstr ""
+
+#: templates/personal.php:51
+msgid "use this address to connect to your ownCloud in your file manager"
+msgstr ""
+
+#: templates/users.php:21 templates/users.php:76
+msgid "Name"
+msgstr ""
+
+#: templates/users.php:23 templates/users.php:77
+msgid "Password"
+msgstr ""
+
+#: templates/users.php:26 templates/users.php:78 templates/users.php:98
+msgid "Groups"
+msgstr ""
+
+#: templates/users.php:32
+msgid "Create"
+msgstr ""
+
+#: templates/users.php:35
+msgid "Default Quota"
+msgstr ""
+
+#: templates/users.php:55 templates/users.php:138
+msgid "Other"
+msgstr ""
+
+#: templates/users.php:80 templates/users.php:112
+msgid "Group Admin"
+msgstr ""
+
+#: templates/users.php:82
+msgid "Quota"
+msgstr ""
+
+#: templates/users.php:146
+msgid "Delete"
+msgstr ""
diff --git a/l10n/oc/user_ldap.po b/l10n/oc/user_ldap.po
new file mode 100644
index 0000000000000000000000000000000000000000..e4321202c2f8d32a3a406f6ceaa9cbed4bd48668
--- /dev/null
+++ b/l10n/oc/user_ldap.po
@@ -0,0 +1,170 @@
+# 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: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-08-12 22:45+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: templates/settings.php:8
+msgid "Host"
+msgstr ""
+
+#: templates/settings.php:8
+msgid ""
+"You can omit the protocol, except you require SSL. Then start with ldaps://"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "Base DN"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "You can specify Base DN for users and groups in the Advanced tab"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "User DN"
+msgstr ""
+
+#: templates/settings.php:10
+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:11
+msgid "Password"
+msgstr ""
+
+#: templates/settings.php:11
+msgid "For anonymous access, leave DN and Password empty."
+msgstr ""
+
+#: templates/settings.php:12
+msgid "User Login Filter"
+msgstr ""
+
+#: templates/settings.php:12
+#, php-format
+msgid ""
+"Defines the filter to apply, when login is attempted. %%uid replaces the "
+"username in the login action."
+msgstr ""
+
+#: templates/settings.php:12
+#, php-format
+msgid "use %%uid placeholder, e.g. \"uid=%%uid\""
+msgstr ""
+
+#: templates/settings.php:13
+msgid "User List Filter"
+msgstr ""
+
+#: templates/settings.php:13
+msgid "Defines the filter to apply, when retrieving users."
+msgstr ""
+
+#: templates/settings.php:13
+msgid "without any placeholder, e.g. \"objectClass=person\"."
+msgstr ""
+
+#: templates/settings.php:14
+msgid "Group Filter"
+msgstr ""
+
+#: templates/settings.php:14
+msgid "Defines the filter to apply, when retrieving groups."
+msgstr ""
+
+#: templates/settings.php:14
+msgid "without any placeholder, e.g. \"objectClass=posixGroup\"."
+msgstr ""
+
+#: templates/settings.php:17
+msgid "Port"
+msgstr ""
+
+#: templates/settings.php:18
+msgid "Base User Tree"
+msgstr ""
+
+#: templates/settings.php:19
+msgid "Base Group Tree"
+msgstr ""
+
+#: templates/settings.php:20
+msgid "Group-Member association"
+msgstr ""
+
+#: templates/settings.php:21
+msgid "Use TLS"
+msgstr ""
+
+#: templates/settings.php:21
+msgid "Do not use it for SSL connections, it will fail."
+msgstr ""
+
+#: templates/settings.php:22
+msgid "Case insensitve LDAP server (Windows)"
+msgstr ""
+
+#: templates/settings.php:23
+msgid "Turn off SSL certificate validation."
+msgstr ""
+
+#: templates/settings.php:23
+msgid ""
+"If connection only works with this option, import the LDAP server's SSL "
+"certificate in your ownCloud server."
+msgstr ""
+
+#: templates/settings.php:23
+msgid "Not recommended, use for testing only."
+msgstr ""
+
+#: templates/settings.php:24
+msgid "User Display Name Field"
+msgstr ""
+
+#: templates/settings.php:24
+msgid "The LDAP attribute to use to generate the user`s ownCloud name."
+msgstr ""
+
+#: templates/settings.php:25
+msgid "Group Display Name Field"
+msgstr ""
+
+#: templates/settings.php:25
+msgid "The LDAP attribute to use to generate the groups`s ownCloud name."
+msgstr ""
+
+#: templates/settings.php:27
+msgid "in bytes"
+msgstr ""
+
+#: templates/settings.php:29
+msgid "in seconds. A change empties the cache."
+msgstr ""
+
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
+msgid "Help"
+msgstr ""
diff --git a/l10n/pl/core.po b/l10n/pl/core.po
index edae4615e9c388c1735d2147506363a84ea46b5a..0cd447bf8edf3552a4e9105fe20802d32327792d 100644
--- a/l10n/pl/core.po
+++ b/l10n/pl/core.po
@@ -13,15 +13,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:01+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -35,59 +35,55 @@ msgstr "Brak kategorii"
 msgid "This category already exists: "
 msgstr "Ta kategoria już istnieje"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Ustawienia"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Styczeń"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Luty"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Marzec"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Kwiecień"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Maj"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Czerwiec"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Lipiec"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Sierpień"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Wrzesień"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Październik"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Listopad"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Grudzień"
 
@@ -119,7 +115,7 @@ msgstr "Błąd"
 msgid "ownCloud password reset"
 msgstr "restart hasła"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Proszę użyć tego odnośnika do zresetowania hasła: {link}"
 
@@ -235,7 +231,7 @@ msgstr "Nazwa bazy danych"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Obszar tabel bazy danych"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -249,7 +245,7 @@ msgstr "Zakończ konfigurowanie"
 msgid "web services under your control"
 msgstr "usługi internetowe pod kontrolą"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Wylogowuje użytkownika"
 
diff --git a/l10n/pl/files.po b/l10n/pl/files.po
index 706d14931b0d435901e3f6a4c082baf2c6d855ea..2f0082e002fd3b19ed3ba06815c5a9f7e2ae5634 100644
--- a/l10n/pl/files.po
+++ b/l10n/pl/files.po
@@ -4,22 +4,23 @@
 # 
 # Translators:
 # Cyryl Sochacki <>, 2012.
-# Marcin Małecki <gerber@tkdami.net>, 2011, 2012.
+# Marcin Małecki <gerber@tkdami.net>, 2011-2012.
 #   <mosslar@gmail.com>, 2011.
+#   <mplichta@gmail.com>, 2012.
 # Piotr Sokół <psokol@jabster.pl>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -55,83 +56,100 @@ msgstr "Błąd zapisu na dysk"
 msgid "Files"
 msgstr "Pliki"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Usuwa element"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "Już istnieje"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "zastap"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "zasugeruj nazwę"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "anuluj"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "zastąpione"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "wróć"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "z"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "wróć"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "skasuj"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "Generowanie pliku ZIP, może potrwać pewien czas."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Błąd wczytywania"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Oczekujące"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Wczytywanie anulowane."
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Nieprawidłowa nazwa '/' jest niedozwolone."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Rozmiar"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Czas modyfikacji"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "folder"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "foldery"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "plik"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "pliki"
 
@@ -163,6 +181,10 @@ msgstr "0 jest nielimitowane"
 msgid "Maximum input size for ZIP files"
 msgstr "Maksymalna wielkość pliku wejściowego ZIP "
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Zapisz"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nowy"
@@ -187,36 +209,36 @@ msgstr "Prześlij"
 msgid "Cancel upload"
 msgstr "Przestań wysyłać"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Brak zawartości. Proszę wysłać pliki!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nazwa"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Współdziel"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Pobiera element"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Wysyłany plik ma za duży rozmiar"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Skanowanie plików, proszę czekać."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Aktualnie skanowane"
diff --git a/l10n/pl/files_sharing.po b/l10n/pl/files_sharing.po
index 576158713dd14bc24cce087aef028cb08be36231..fee8ef8b65a535f48eaedafbfb3ec8d89b01beaf 100644
--- a/l10n/pl/files_sharing.po
+++ b/l10n/pl/files_sharing.po
@@ -4,32 +4,37 @@
 # 
 # Translators:
 # Cyryl Sochacki <>, 2012.
+# Paweł Ciecierski <pciecierski@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-04 02:01+0200\n"
+"PO-Revision-Date: 2012-09-03 07:03+0000\n"
+"Last-Translator: Cyryl Sochacki <>\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"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Rozmiar"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Hasło"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Zmodyfikowane"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Wyślij"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Usuń wszystko"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Pobierz"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Usuń"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Podgląd nie jest dostępny dla"
+
+#: templates/public.php:25
+msgid "web services under your control"
+msgstr "Kontrolowane serwisy"
diff --git a/l10n/pl/files_versions.po b/l10n/pl/files_versions.po
index bdacd74f04a302d16395a75f3ba025d5586fa249..ea579c0b6a47cd40ed8f68cbcf120de7cdd0a150 100644
--- a/l10n/pl/files_versions.po
+++ b/l10n/pl/files_versions.po
@@ -8,20 +8,28 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-13 12:35+0000\n"
+"POT-Creation-Date: 2012-09-04 02:01+0200\n"
+"PO-Revision-Date: 2012-09-03 06:57+0000\n"
 "Last-Translator: Cyryl Sochacki <>\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"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Wygasają wszystkie wersje"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Wersje"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Spowoduje to usunięcie wszystkich istniejących wersji kopii zapasowych plików"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Włącz wersjonowanie plików"
diff --git a/l10n/pl/lib.po b/l10n/pl/lib.po
index 5b7d557a68258ee89d4938747d14b01469f0a7a7..09263ad142cde1bc8148086c79b7faa94c5696c2 100644
--- a/l10n/pl/lib.po
+++ b/l10n/pl/lib.po
@@ -3,110 +3,124 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Cyryl Sochacki <>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-04 02:01+0200\n"
+"PO-Revision-Date: 2012-09-03 07:02+0000\n"
+"Last-Translator: Cyryl Sochacki <>\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"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
-msgstr ""
+msgstr "Pomoc"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
-msgstr ""
+msgstr "Osobiste"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
-msgstr ""
+msgstr "Ustawienia"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
-msgstr ""
+msgstr "Użytkownicy"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
-msgstr ""
+msgstr "Aplikacje"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
-msgstr ""
+msgstr "Administrator"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
-msgstr ""
+msgstr "Pobieranie ZIP jest wyłączone."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
-msgstr ""
+msgstr "Pliki muszą zostać pobrane pojedynczo."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
-msgstr ""
+msgstr "Wróć do plików"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
-msgstr ""
+msgstr "Wybrane pliki są zbyt duże, aby wygenerować plik zip."
 
 #: json.php:28
 msgid "Application is not enabled"
-msgstr ""
+msgstr "Aplikacja nie jest włączona"
 
 #: json.php:39 json.php:63 json.php:75
 msgid "Authentication error"
-msgstr ""
+msgstr "Błąd uwierzytelniania"
 
 #: json.php:51
 msgid "Token expired. Please reload page."
-msgstr ""
+msgstr "Token wygasł. Proszę ponownie załadować stronę."
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
-msgstr ""
+msgstr "sekund temu"
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
-msgstr ""
+msgstr "1 minutę temu"
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
-msgstr ""
+msgstr "%d minut temu"
 
-#: template.php:91
+#: template.php:92
 msgid "today"
-msgstr ""
+msgstr "dzisiaj"
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
-msgstr ""
+msgstr "wczoraj"
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
-msgstr ""
+msgstr "%d dni temu"
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
-msgstr ""
+msgstr "ostatni miesiąc"
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
-msgstr ""
+msgstr "miesięcy temu"
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
-msgstr ""
+msgstr "ostatni rok"
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
-msgstr ""
+msgstr "lat temu"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s jest dostępna. Uzyskaj <a href=\"%s\">więcej informacji</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "Aktualne"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "wybór aktualizacji jest wyłączony"
diff --git a/l10n/pl/settings.po b/l10n/pl/settings.po
index b9273c4c45f46ec593ffe372612f025907184397..adfbe39053c342fc89594dd37cc4c6e47ba68f35 100644
--- a/l10n/pl/settings.po
+++ b/l10n/pl/settings.po
@@ -9,25 +9,39 @@
 # Marcin Małecki <gerber@tkdami.net>, 2011, 2012.
 # Marcin Małecki <mosslar@gmail.com>, 2011.
 #   <mosslar@gmail.com>, 2011.
+#   <mplichta@gmail.com>, 2012.
 # Piotr Sokół <psokol@jabster.pl>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-20 07:48+0000\n"
-"Last-Translator: Cyryl Sochacki <>\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 12:06+0000\n"
+"Last-Translator: emc <mplichta@gmail.com>\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"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Nie mogę załadować listy aplikacji"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Błąd uwierzytelniania"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Grupa już istnieje"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Nie można dodać grupy"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Email zapisany"
@@ -44,14 +58,28 @@ msgstr "Zmieniono OpenID"
 msgid "Invalid request"
 msgstr "Nieprawidłowe żądanie"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Błąd uwierzytelniania"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Nie można usunąć grupy"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Nie można usunąć użytkownika"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Język zmieniony"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Nie można dodać użytkownika do grupy %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Nie można usunąć użytkownika z grupy %s"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Błąd"
@@ -76,30 +104,85 @@ msgstr "Polski"
 msgid "Security Warning"
 msgstr "Ostrzeżenia bezpieczeństwa"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "Twój katalog danych i pliki są prawdopodobnie dostępne z Internetu. Plik .htaccess, który dostarcza ownCloud nie działa. Sugerujemy, aby skonfigurować serwer WWW w taki sposób, aby katalog danych nie był dostępny lub przenieść katalog danych poza główny katalog serwera WWW."
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "wykonanie jednego zadania z każdej  załadowanej strony"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php jest zarejestrowany w usłudze webcron"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "korzystaj z usługi systemowej cron"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "Udostępnij API"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Włącz udostępniane API"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Zezwalaj aplikacjom na używanie API"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Zezwalaj na łącza"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Zezwalaj użytkownikom na puliczne współdzielenie elementów za pomocą linków"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Zezwól na ponowne udostępnianie"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Zezwalaj użytkownikom na ponowne współdzielenie elementów już z nimi współdzilonych"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Zezwalaj użytkownikom na współdzielenie z kimkolwiek"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Zezwalaj użytkownikom współdzielić z użytkownikami ze swoich grup"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Log"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Więcej"
 
+#: templates/admin.php:105
+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 "Stwirzone przez <a href=\"http://ownCloud.org/contact\" target=\"_blank\"> społeczność ownCloud</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">kod źródłowy</a> na licencji <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Dodaj aplikacje"
@@ -113,34 +196,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Zobacz stronę aplikacji na apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licencjonowany"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "przez"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-licencjonowane przez <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentacja"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Zarządzanie dużymi plikami"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Zadaj pytanie"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problem z połączeniem z bazą danych."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Przejdź na stronę ręcznie."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Odpowiedź"
 
diff --git a/l10n/pl/user_ldap.po b/l10n/pl/user_ldap.po
index 8dce1f22d4ed87887d604df07e99c0edb8469323..d351bc786e24d4badc4468437166fa9e062c9530 100644
--- a/l10n/pl/user_ldap.po
+++ b/l10n/pl/user_ldap.po
@@ -4,13 +4,14 @@
 # 
 # Translators:
 # Cyryl Sochacki <>, 2012.
+# Paweł Ciecierski <pciecierski@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-20 08:52+0000\n"
-"Last-Translator: Cyryl Sochacki <>\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-30 15:50+0000\n"
+"Last-Translator: Paweł Ciecierski <pciecierski@gmail.com>\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"
@@ -160,6 +161,12 @@ msgstr "w bajtach"
 msgid "in seconds. A change empties the cache."
 msgstr "w sekundach. Zmiana opróżnia pamięć podręczną."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+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:32
 msgid "Help"
 msgstr "Pomoc"
diff --git a/l10n/pl_PL/core.po b/l10n/pl_PL/core.po
new file mode 100644
index 0000000000000000000000000000000000000000..55486564fd20a3bcb1f92350253444138a7ef252
--- /dev/null
+++ b/l10n/pl_PL/core.po
@@ -0,0 +1,268 @@
+# 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: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
+msgid "Application name not provided."
+msgstr ""
+
+#: ajax/vcategories/add.php:29
+msgid "No category to add?"
+msgstr ""
+
+#: ajax/vcategories/add.php:36
+msgid "This category already exists: "
+msgstr ""
+
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
+msgid "Settings"
+msgstr ""
+
+#: js/js.js:593
+msgid "January"
+msgstr ""
+
+#: js/js.js:593
+msgid "February"
+msgstr ""
+
+#: js/js.js:593
+msgid "March"
+msgstr ""
+
+#: js/js.js:593
+msgid "April"
+msgstr ""
+
+#: js/js.js:593
+msgid "May"
+msgstr ""
+
+#: js/js.js:593
+msgid "June"
+msgstr ""
+
+#: js/js.js:594
+msgid "July"
+msgstr ""
+
+#: js/js.js:594
+msgid "August"
+msgstr ""
+
+#: js/js.js:594
+msgid "September"
+msgstr ""
+
+#: js/js.js:594
+msgid "October"
+msgstr ""
+
+#: js/js.js:594
+msgid "November"
+msgstr ""
+
+#: js/js.js:594
+msgid "December"
+msgstr ""
+
+#: js/oc-dialogs.js:143 js/oc-dialogs.js:163
+msgid "Cancel"
+msgstr ""
+
+#: js/oc-dialogs.js:159
+msgid "No"
+msgstr ""
+
+#: js/oc-dialogs.js:160
+msgid "Yes"
+msgstr ""
+
+#: js/oc-dialogs.js:177
+msgid "Ok"
+msgstr ""
+
+#: js/oc-vcategories.js:68
+msgid "No categories selected for deletion."
+msgstr ""
+
+#: js/oc-vcategories.js:68
+msgid "Error"
+msgstr ""
+
+#: lostpassword/index.php:26
+msgid "ownCloud password reset"
+msgstr ""
+
+#: lostpassword/templates/email.php:2
+msgid "Use the following link to reset your password: {link}"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:3
+msgid "You will receive a link to reset your password via Email."
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:5
+msgid "Requested"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:8
+msgid "Login failed!"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:11 templates/installation.php:26
+#: templates/login.php:9
+msgid "Username"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:15
+msgid "Request reset"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:4
+msgid "Your password was reset"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:5
+msgid "To login page"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:8
+msgid "New password"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:11
+msgid "Reset password"
+msgstr ""
+
+#: strings.php:5
+msgid "Personal"
+msgstr ""
+
+#: strings.php:6
+msgid "Users"
+msgstr ""
+
+#: strings.php:7
+msgid "Apps"
+msgstr ""
+
+#: strings.php:8
+msgid "Admin"
+msgstr ""
+
+#: strings.php:9
+msgid "Help"
+msgstr ""
+
+#: templates/403.php:12
+msgid "Access forbidden"
+msgstr ""
+
+#: templates/404.php:12
+msgid "Cloud not found"
+msgstr ""
+
+#: templates/edit_categories_dialog.php:4
+msgid "Edit categories"
+msgstr ""
+
+#: templates/edit_categories_dialog.php:14
+msgid "Add"
+msgstr ""
+
+#: templates/installation.php:24
+msgid "Create an <strong>admin account</strong>"
+msgstr ""
+
+#: templates/installation.php:30 templates/login.php:13
+msgid "Password"
+msgstr ""
+
+#: templates/installation.php:36
+msgid "Advanced"
+msgstr ""
+
+#: templates/installation.php:38
+msgid "Data folder"
+msgstr ""
+
+#: templates/installation.php:45
+msgid "Configure the database"
+msgstr ""
+
+#: templates/installation.php:50 templates/installation.php:61
+#: templates/installation.php:71 templates/installation.php:81
+msgid "will be used"
+msgstr ""
+
+#: templates/installation.php:93
+msgid "Database user"
+msgstr ""
+
+#: templates/installation.php:97
+msgid "Database password"
+msgstr ""
+
+#: templates/installation.php:101
+msgid "Database name"
+msgstr ""
+
+#: templates/installation.php:109
+msgid "Database tablespace"
+msgstr ""
+
+#: templates/installation.php:115
+msgid "Database host"
+msgstr ""
+
+#: templates/installation.php:120
+msgid "Finish setup"
+msgstr ""
+
+#: templates/layout.guest.php:42
+msgid "web services under your control"
+msgstr ""
+
+#: templates/layout.user.php:45
+msgid "Log out"
+msgstr ""
+
+#: templates/login.php:6
+msgid "Lost your password?"
+msgstr ""
+
+#: templates/login.php:17
+msgid "remember"
+msgstr ""
+
+#: templates/login.php:18
+msgid "Log in"
+msgstr ""
+
+#: templates/logout.php:1
+msgid "You are logged out."
+msgstr ""
+
+#: templates/part.pagenavi.php:3
+msgid "prev"
+msgstr ""
+
+#: templates/part.pagenavi.php:20
+msgid "next"
+msgstr ""
diff --git a/l10n/pl_PL/files.po b/l10n/pl_PL/files.po
new file mode 100644
index 0000000000000000000000000000000000000000..6b1c826da590967e9c9a6ac44a247d905df11cd0
--- /dev/null
+++ b/l10n/pl_PL/files.po
@@ -0,0 +1,239 @@
+# 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: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: ajax/upload.php:20
+msgid "There is no error, the file uploaded with success"
+msgstr ""
+
+#: ajax/upload.php:21
+msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini"
+msgstr ""
+
+#: ajax/upload.php:22
+msgid ""
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
+"the HTML form"
+msgstr ""
+
+#: ajax/upload.php:23
+msgid "The uploaded file was only partially uploaded"
+msgstr ""
+
+#: ajax/upload.php:24
+msgid "No file was uploaded"
+msgstr ""
+
+#: ajax/upload.php:25
+msgid "Missing a temporary folder"
+msgstr ""
+
+#: ajax/upload.php:26
+msgid "Failed to write to disk"
+msgstr ""
+
+#: appinfo/app.php:6
+msgid "Files"
+msgstr ""
+
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
+msgid "Delete"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
+msgid "already exists"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
+msgid "replace"
+msgstr ""
+
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
+msgid "cancel"
+msgstr ""
+
+#: js/filelist.js:235 js/filelist.js:237
+msgid "replaced"
+msgstr ""
+
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
+msgid "with"
+msgstr ""
+
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
+
+#: js/filelist.js:270
+msgid "deleted"
+msgstr ""
+
+#: js/files.js:179
+msgid "generating ZIP-file, it may take some time."
+msgstr ""
+
+#: js/files.js:208
+msgid "Unable to upload your file as it is a directory or has 0 bytes"
+msgstr ""
+
+#: js/files.js:208
+msgid "Upload Error"
+msgstr ""
+
+#: js/files.js:236 js/files.js:341 js/files.js:370
+msgid "Pending"
+msgstr ""
+
+#: js/files.js:355
+msgid "Upload cancelled."
+msgstr ""
+
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
+msgid "Invalid name, '/' is not allowed."
+msgstr ""
+
+#: js/files.js:746 templates/index.php:56
+msgid "Size"
+msgstr ""
+
+#: js/files.js:747 templates/index.php:58
+msgid "Modified"
+msgstr ""
+
+#: js/files.js:774
+msgid "folder"
+msgstr ""
+
+#: js/files.js:776
+msgid "folders"
+msgstr ""
+
+#: js/files.js:784
+msgid "file"
+msgstr ""
+
+#: js/files.js:786
+msgid "files"
+msgstr ""
+
+#: templates/admin.php:5
+msgid "File handling"
+msgstr ""
+
+#: templates/admin.php:7
+msgid "Maximum upload size"
+msgstr ""
+
+#: templates/admin.php:7
+msgid "max. possible: "
+msgstr ""
+
+#: templates/admin.php:9
+msgid "Needed for multi-file and folder downloads."
+msgstr ""
+
+#: templates/admin.php:9
+msgid "Enable ZIP-download"
+msgstr ""
+
+#: templates/admin.php:11
+msgid "0 is unlimited"
+msgstr ""
+
+#: templates/admin.php:12
+msgid "Maximum input size for ZIP files"
+msgstr ""
+
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
+#: templates/index.php:7
+msgid "New"
+msgstr ""
+
+#: templates/index.php:9
+msgid "Text file"
+msgstr ""
+
+#: templates/index.php:10
+msgid "Folder"
+msgstr ""
+
+#: templates/index.php:11
+msgid "From url"
+msgstr ""
+
+#: templates/index.php:21
+msgid "Upload"
+msgstr ""
+
+#: templates/index.php:27
+msgid "Cancel upload"
+msgstr ""
+
+#: templates/index.php:40
+msgid "Nothing in here. Upload something!"
+msgstr ""
+
+#: templates/index.php:48
+msgid "Name"
+msgstr ""
+
+#: templates/index.php:50
+msgid "Share"
+msgstr ""
+
+#: templates/index.php:52
+msgid "Download"
+msgstr ""
+
+#: templates/index.php:75
+msgid "Upload too large"
+msgstr ""
+
+#: templates/index.php:77
+msgid ""
+"The files you are trying to upload exceed the maximum size for file uploads "
+"on this server."
+msgstr ""
+
+#: templates/index.php:82
+msgid "Files are being scanned, please wait."
+msgstr ""
+
+#: templates/index.php:85
+msgid "Current scanning"
+msgstr ""
diff --git a/l10n/pl_PL/files_encryption.po b/l10n/pl_PL/files_encryption.po
new file mode 100644
index 0000000000000000000000000000000000000000..6512705ecbc0b0ab4db23200fcdbf12a9cdc5536
--- /dev/null
+++ b/l10n/pl_PL/files_encryption.po
@@ -0,0 +1,34 @@
+# 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: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-12 22:33+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: templates/settings.php:3
+msgid "Encryption"
+msgstr ""
+
+#: templates/settings.php:4
+msgid "Exclude the following file types from encryption"
+msgstr ""
+
+#: templates/settings.php:5
+msgid "None"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "Enable Encryption"
+msgstr ""
diff --git a/l10n/pl_PL/files_external.po b/l10n/pl_PL/files_external.po
new file mode 100644
index 0000000000000000000000000000000000000000..3006debaa44f6229ffe0351a49d75c7d96d105c7
--- /dev/null
+++ b/l10n/pl_PL/files_external.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: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-12 22:34+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: templates/settings.php:3
+msgid "External Storage"
+msgstr ""
+
+#: templates/settings.php:7 templates/settings.php:19
+msgid "Mount point"
+msgstr ""
+
+#: templates/settings.php:8
+msgid "Backend"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "Configuration"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "Options"
+msgstr ""
+
+#: templates/settings.php:11
+msgid "Applicable"
+msgstr ""
+
+#: templates/settings.php:23
+msgid "Add mount point"
+msgstr ""
+
+#: templates/settings.php:54 templates/settings.php:62
+msgid "None set"
+msgstr ""
+
+#: templates/settings.php:63
+msgid "All Users"
+msgstr ""
+
+#: templates/settings.php:64
+msgid "Groups"
+msgstr ""
+
+#: templates/settings.php:69
+msgid "Users"
+msgstr ""
+
+#: templates/settings.php:77 templates/settings.php:96
+msgid "Delete"
+msgstr ""
+
+#: templates/settings.php:88
+msgid "SSL root certificates"
+msgstr ""
+
+#: templates/settings.php:102
+msgid "Import Root Certificate"
+msgstr ""
+
+#: templates/settings.php:108
+msgid "Enable User External Storage"
+msgstr ""
+
+#: templates/settings.php:109
+msgid "Allow users to mount their own external storage"
+msgstr ""
diff --git a/l10n/pl_PL/files_sharing.po b/l10n/pl_PL/files_sharing.po
new file mode 100644
index 0000000000000000000000000000000000000000..f92619c2f71b4e7cf51d16c6a56c1c434cef4277
--- /dev/null
+++ b/l10n/pl_PL/files_sharing.po
@@ -0,0 +1,38 @@
+# 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: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:04+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr ""
+
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr ""
+
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr ""
+
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr ""
diff --git a/l10n/pl_PL/files_versions.po b/l10n/pl_PL/files_versions.po
new file mode 100644
index 0000000000000000000000000000000000000000..5f9feef04fd4177ee4bf0afcc8e0967f0590d2e1
--- /dev/null
+++ b/l10n/pl_PL/files_versions.po
@@ -0,0 +1,34 @@
+# 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: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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/settings-personal.js:31 templates/settings-personal.php:10
+msgid "Expire all versions"
+msgstr ""
+
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
+#: templates/settings.php:3
+msgid "Enable Files Versioning"
+msgstr ""
diff --git a/l10n/pl_PL/lib.po b/l10n/pl_PL/lib.po
new file mode 100644
index 0000000000000000000000000000000000000000..b39526b5c0697208a4e0096b46f705c497ded732
--- /dev/null
+++ b/l10n/pl_PL/lib.po
@@ -0,0 +1,125 @@
+# 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: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: app.php:288
+msgid "Help"
+msgstr ""
+
+#: app.php:295
+msgid "Personal"
+msgstr ""
+
+#: app.php:300
+msgid "Settings"
+msgstr ""
+
+#: app.php:305
+msgid "Users"
+msgstr ""
+
+#: app.php:312
+msgid "Apps"
+msgstr ""
+
+#: app.php:314
+msgid "Admin"
+msgstr ""
+
+#: files.php:280
+msgid "ZIP download is turned off."
+msgstr ""
+
+#: files.php:281
+msgid "Files need to be downloaded one by one."
+msgstr ""
+
+#: files.php:281 files.php:306
+msgid "Back to Files"
+msgstr ""
+
+#: files.php:305
+msgid "Selected files too large to generate zip file."
+msgstr ""
+
+#: json.php:28
+msgid "Application is not enabled"
+msgstr ""
+
+#: json.php:39 json.php:63 json.php:75
+msgid "Authentication error"
+msgstr ""
+
+#: json.php:51
+msgid "Token expired. Please reload page."
+msgstr ""
+
+#: template.php:86
+msgid "seconds ago"
+msgstr ""
+
+#: template.php:87
+msgid "1 minute ago"
+msgstr ""
+
+#: template.php:88
+#, php-format
+msgid "%d minutes ago"
+msgstr ""
+
+#: template.php:91
+msgid "today"
+msgstr ""
+
+#: template.php:92
+msgid "yesterday"
+msgstr ""
+
+#: template.php:93
+#, php-format
+msgid "%d days ago"
+msgstr ""
+
+#: template.php:94
+msgid "last month"
+msgstr ""
+
+#: template.php:95
+msgid "months ago"
+msgstr ""
+
+#: template.php:96
+msgid "last year"
+msgstr ""
+
+#: template.php:97
+msgid "years ago"
+msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/pl_PL/settings.po b/l10n/pl_PL/settings.po
new file mode 100644
index 0000000000000000000000000000000000000000..0d571388740c50d8711bb4dd58f428f7b883b257
--- /dev/null
+++ b/l10n/pl_PL/settings.po
@@ -0,0 +1,316 @@
+# 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: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: ajax/apps/ocs.php:23
+msgid "Unable to load list from App Store"
+msgstr ""
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
+#: ajax/lostpassword.php:14
+msgid "Email saved"
+msgstr ""
+
+#: ajax/lostpassword.php:16
+msgid "Invalid email"
+msgstr ""
+
+#: ajax/openid.php:16
+msgid "OpenID Changed"
+msgstr ""
+
+#: ajax/openid.php:18 ajax/setlanguage.php:20 ajax/setlanguage.php:23
+msgid "Invalid request"
+msgstr ""
+
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
+
+#: ajax/setlanguage.php:18
+msgid "Language changed"
+msgstr ""
+
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
+#: js/apps.js:18
+msgid "Error"
+msgstr ""
+
+#: js/apps.js:39 js/apps.js:73
+msgid "Disable"
+msgstr ""
+
+#: js/apps.js:39 js/apps.js:62
+msgid "Enable"
+msgstr ""
+
+#: js/personal.js:69
+msgid "Saving..."
+msgstr ""
+
+#: personal.php:46 personal.php:47
+msgid "__language_name__"
+msgstr ""
+
+#: templates/admin.php:14
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:17
+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/admin.php:31
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:33
+msgid "execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
+msgid "use systems cron service"
+msgstr ""
+
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:97
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:105
+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/apps.php:10
+msgid "Add your App"
+msgstr ""
+
+#: templates/apps.php:26
+msgid "Select an App"
+msgstr ""
+
+#: templates/apps.php:29
+msgid "See application page at apps.owncloud.com"
+msgstr ""
+
+#: templates/apps.php:30
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
+
+#: templates/help.php:9
+msgid "Documentation"
+msgstr ""
+
+#: templates/help.php:10
+msgid "Managing Big Files"
+msgstr ""
+
+#: templates/help.php:11
+msgid "Ask a question"
+msgstr ""
+
+#: templates/help.php:23
+msgid "Problems connecting to help database."
+msgstr ""
+
+#: templates/help.php:24
+msgid "Go there manually."
+msgstr ""
+
+#: templates/help.php:32
+msgid "Answer"
+msgstr ""
+
+#: templates/personal.php:8
+msgid "You use"
+msgstr ""
+
+#: templates/personal.php:8
+msgid "of the available"
+msgstr ""
+
+#: templates/personal.php:12
+msgid "Desktop and Mobile Syncing Clients"
+msgstr ""
+
+#: templates/personal.php:13
+msgid "Download"
+msgstr ""
+
+#: templates/personal.php:19
+msgid "Your password got changed"
+msgstr ""
+
+#: templates/personal.php:20
+msgid "Unable to change your password"
+msgstr ""
+
+#: templates/personal.php:21
+msgid "Current password"
+msgstr ""
+
+#: templates/personal.php:22
+msgid "New password"
+msgstr ""
+
+#: templates/personal.php:23
+msgid "show"
+msgstr ""
+
+#: templates/personal.php:24
+msgid "Change password"
+msgstr ""
+
+#: templates/personal.php:30
+msgid "Email"
+msgstr ""
+
+#: templates/personal.php:31
+msgid "Your email address"
+msgstr ""
+
+#: templates/personal.php:32
+msgid "Fill in an email address to enable password recovery"
+msgstr ""
+
+#: templates/personal.php:38 templates/personal.php:39
+msgid "Language"
+msgstr ""
+
+#: templates/personal.php:44
+msgid "Help translate"
+msgstr ""
+
+#: templates/personal.php:51
+msgid "use this address to connect to your ownCloud in your file manager"
+msgstr ""
+
+#: templates/users.php:21 templates/users.php:76
+msgid "Name"
+msgstr ""
+
+#: templates/users.php:23 templates/users.php:77
+msgid "Password"
+msgstr ""
+
+#: templates/users.php:26 templates/users.php:78 templates/users.php:98
+msgid "Groups"
+msgstr ""
+
+#: templates/users.php:32
+msgid "Create"
+msgstr ""
+
+#: templates/users.php:35
+msgid "Default Quota"
+msgstr ""
+
+#: templates/users.php:55 templates/users.php:138
+msgid "Other"
+msgstr ""
+
+#: templates/users.php:80 templates/users.php:112
+msgid "Group Admin"
+msgstr ""
+
+#: templates/users.php:82
+msgid "Quota"
+msgstr ""
+
+#: templates/users.php:146
+msgid "Delete"
+msgstr ""
diff --git a/l10n/pl_PL/user_ldap.po b/l10n/pl_PL/user_ldap.po
new file mode 100644
index 0000000000000000000000000000000000000000..554396a6fe068da4642ff229a8a44cf7824ea176
--- /dev/null
+++ b/l10n/pl_PL/user_ldap.po
@@ -0,0 +1,170 @@
+# 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: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-12 22:45+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: templates/settings.php:8
+msgid "Host"
+msgstr ""
+
+#: templates/settings.php:8
+msgid ""
+"You can omit the protocol, except you require SSL. Then start with ldaps://"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "Base DN"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "You can specify Base DN for users and groups in the Advanced tab"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "User DN"
+msgstr ""
+
+#: templates/settings.php:10
+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:11
+msgid "Password"
+msgstr ""
+
+#: templates/settings.php:11
+msgid "For anonymous access, leave DN and Password empty."
+msgstr ""
+
+#: templates/settings.php:12
+msgid "User Login Filter"
+msgstr ""
+
+#: templates/settings.php:12
+#, php-format
+msgid ""
+"Defines the filter to apply, when login is attempted. %%uid replaces the "
+"username in the login action."
+msgstr ""
+
+#: templates/settings.php:12
+#, php-format
+msgid "use %%uid placeholder, e.g. \"uid=%%uid\""
+msgstr ""
+
+#: templates/settings.php:13
+msgid "User List Filter"
+msgstr ""
+
+#: templates/settings.php:13
+msgid "Defines the filter to apply, when retrieving users."
+msgstr ""
+
+#: templates/settings.php:13
+msgid "without any placeholder, e.g. \"objectClass=person\"."
+msgstr ""
+
+#: templates/settings.php:14
+msgid "Group Filter"
+msgstr ""
+
+#: templates/settings.php:14
+msgid "Defines the filter to apply, when retrieving groups."
+msgstr ""
+
+#: templates/settings.php:14
+msgid "without any placeholder, e.g. \"objectClass=posixGroup\"."
+msgstr ""
+
+#: templates/settings.php:17
+msgid "Port"
+msgstr ""
+
+#: templates/settings.php:18
+msgid "Base User Tree"
+msgstr ""
+
+#: templates/settings.php:19
+msgid "Base Group Tree"
+msgstr ""
+
+#: templates/settings.php:20
+msgid "Group-Member association"
+msgstr ""
+
+#: templates/settings.php:21
+msgid "Use TLS"
+msgstr ""
+
+#: templates/settings.php:21
+msgid "Do not use it for SSL connections, it will fail."
+msgstr ""
+
+#: templates/settings.php:22
+msgid "Case insensitve LDAP server (Windows)"
+msgstr ""
+
+#: templates/settings.php:23
+msgid "Turn off SSL certificate validation."
+msgstr ""
+
+#: templates/settings.php:23
+msgid ""
+"If connection only works with this option, import the LDAP server's SSL "
+"certificate in your ownCloud server."
+msgstr ""
+
+#: templates/settings.php:23
+msgid "Not recommended, use for testing only."
+msgstr ""
+
+#: templates/settings.php:24
+msgid "User Display Name Field"
+msgstr ""
+
+#: templates/settings.php:24
+msgid "The LDAP attribute to use to generate the user`s ownCloud name."
+msgstr ""
+
+#: templates/settings.php:25
+msgid "Group Display Name Field"
+msgstr ""
+
+#: templates/settings.php:25
+msgid "The LDAP attribute to use to generate the groups`s ownCloud name."
+msgstr ""
+
+#: templates/settings.php:27
+msgid "in bytes"
+msgstr ""
+
+#: templates/settings.php:29
+msgid "in seconds. A change empties the cache."
+msgstr ""
+
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
+msgid "Help"
+msgstr ""
diff --git a/l10n/pt_BR/core.po b/l10n/pt_BR/core.po
index 7ebfea7a297bbdece9ee31c0e8c1c77dcd08a7e6..6e1c9fdcd9c6b46f289a9ea7f93d1d6609cf85c5 100644
--- a/l10n/pt_BR/core.po
+++ b/l10n/pt_BR/core.po
@@ -12,15 +12,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:01+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -34,59 +34,55 @@ msgstr "Nenhuma categoria adicionada?"
 msgid "This category already exists: "
 msgstr "Essa categoria já existe"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Configurações"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Janeiro"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Fevereiro"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Março"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Abril"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Maio"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Junho"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Julho"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Agosto"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Setembro"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Outubro"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Novembro"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Dezembro"
 
@@ -118,7 +114,7 @@ msgstr "Erro"
 msgid "ownCloud password reset"
 msgstr "Redefinir senha ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Use o seguinte link para redefinir sua senha: {link}"
 
@@ -248,7 +244,7 @@ msgstr "Concluir configuração"
 msgid "web services under your control"
 msgstr "web services sob seu controle"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Sair"
 
diff --git a/l10n/pt_BR/files.po b/l10n/pt_BR/files.po
index ccac7b79d16de8fa403ccb196bd7d12cc016cdee..dba70ec6de2e9456efed566ea983a0543aa7d05e 100644
--- a/l10n/pt_BR/files.po
+++ b/l10n/pt_BR/files.po
@@ -12,15 +12,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 22:17+0000\n"
-"Last-Translator: targinosilveira <targinosilveira@gmail.com>\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -56,83 +56,100 @@ msgstr "Falha ao escrever no disco"
 msgid "Files"
 msgstr "Arquivos"
 
-#: js/fileactions.js:111 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Excluir"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "já existe"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "substituir"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "cancelar"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "substituido "
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "desfazer"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "com"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "desfazer"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "deletado"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "gerando arquivo ZIP, isso pode levar um tempo."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Erro de envio"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Pendente"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Envio cancelado."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Nome inválido, '/' não é permitido."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Tamanho"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Modificado"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "pasta"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "pastas"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "arquivo"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "arquivos"
 
@@ -164,6 +181,10 @@ msgstr "0 para ilimitado"
 msgid "Maximum input size for ZIP files"
 msgstr "Tamanho máximo para arquivo ZIP"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Novo"
@@ -188,36 +209,36 @@ msgstr "Carregar"
 msgid "Cancel upload"
 msgstr "Cancelar upload"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Nada aqui.Carrege alguma coisa!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nome"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Compartilhar"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Baixar"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Arquivo muito grande"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Arquivos sendo escaneados, por favor aguarde."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Scanning atual"
diff --git a/l10n/pt_BR/files_sharing.po b/l10n/pt_BR/files_sharing.po
index 3e73c6ab3cf2ed77b43d2b1dee8bdfccaab95676..0e7ee1434493d14640801741b788bfd8b215ca49 100644
--- a/l10n/pt_BR/files_sharing.po
+++ b/l10n/pt_BR/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:04+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/owncloud/language/pt_BR/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: pt_BR\n"
 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/pt_BR/files_versions.po b/l10n/pt_BR/files_versions.po
index 86c54e710508072d3791bd30f42b24ae405a1e7d..14e3834e40f0b8d3573e9f17257a32cacf17c2ab 100644
--- a/l10n/pt_BR/files_versions.po
+++ b/l10n/pt_BR/files_versions.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <tbsoares@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +18,18 @@ msgstr ""
 "Language: pt_BR\n"
 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
+msgstr "Expirar todas as versões"
+
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
 msgstr ""
 
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
-msgstr ""
+msgstr "Habilitar versionamento de arquivos"
diff --git a/l10n/pt_BR/lib.po b/l10n/pt_BR/lib.po
index d9a3c6dbc4ac3106689fb5288b050c079394fe70..3ff7a35f8951ce6114acb4beb9275da8219c8dac 100644
--- a/l10n/pt_BR/lib.po
+++ b/l10n/pt_BR/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: pt_BR\n"
 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/pt_BR/settings.po b/l10n/pt_BR/settings.po
index 901713f7c8c5e67aa51e3003b2824c82a327c47f..5c7f19c76957c595efe21f2c095fe5b4ad634382 100644
--- a/l10n/pt_BR/settings.po
+++ b/l10n/pt_BR/settings.po
@@ -13,20 +13,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 22:19+0000\n"
-"Last-Translator: targinosilveira <targinosilveira@gmail.com>\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "erro de autenticação"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Email gravado"
@@ -43,14 +56,28 @@ msgstr "Mudou OpenID"
 msgid "Invalid request"
 msgstr "Pedido inválido"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "erro de autenticação"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Mudou Idioma"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Erro"
@@ -75,30 +102,85 @@ msgstr "Português"
 msgid "Security Warning"
 msgstr "Aviso de Segurança"
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "executar uma tarefa com cada página em aberto"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php esta registrado no serviço de webcron"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Log"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Mais"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Adicione seu Aplicativo"
@@ -112,34 +194,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Ver página do aplicativo em apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licenciados"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "por"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Documentação"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Gerênciando Arquivos Grandes"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Faça uma pergunta"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problemas ao conectar na base de dados."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Ir manualmente."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Resposta"
 
diff --git a/l10n/pt_BR/user_ldap.po b/l10n/pt_BR/user_ldap.po
index 206781082f42b1d2102569f57428f0a57990ef8a..71b15d98cff3664b1ac57d033f57b3be698eaedc 100644
--- a/l10n/pt_BR/user_ldap.po
+++ b/l10n/pt_BR/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/pt_PT/core.po b/l10n/pt_PT/core.po
index 0f25236625999cdba6b540dded1155f98e86e052..ef75d8f6bdf6f95613d42c1501de4a3f4639b630 100644
--- a/l10n/pt_PT/core.po
+++ b/l10n/pt_PT/core.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: pt_PT\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -32,59 +32,55 @@ msgstr "Nenhuma categoria para adicionar?"
 msgid "This category already exists: "
 msgstr "Esta categoria já existe:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Definições"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Janeiro"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Fevereiro"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Março"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Abril"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Maio"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Junho"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Julho"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Agosto"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Setembro"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Outubro"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Novembro"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Dezembro"
 
@@ -116,7 +112,7 @@ msgstr "Erro"
 msgid "ownCloud password reset"
 msgstr "Reposição da password ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Use o seguinte endereço para repor a sua password: {link}"
 
@@ -246,7 +242,7 @@ msgstr "Acabar instalação"
 msgid "web services under your control"
 msgstr "serviços web sob o seu controlo"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Sair"
 
diff --git a/l10n/pt_PT/files.po b/l10n/pt_PT/files.po
index d816aedc336a142d5111fd3269c403efbceba249..874fc55cb8ecfe50e35d3acdf0fed61eb98cc0a2 100644
--- a/l10n/pt_PT/files.po
+++ b/l10n/pt_PT/files.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 19:39+0000\n"
-"Last-Translator: rlameiro <geral@ricardolameiro.pt>\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: pt_PT\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -54,83 +54,100 @@ msgstr "Falhou a escrita no disco"
 msgid "Files"
 msgstr "Ficheiros"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Apagar"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "Já existe"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "substituir"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "cancelar"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "substituido"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "desfazer"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "com"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "desfazer"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "apagado"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "a gerar o ficheiro ZIP, poderá demorar algum tempo."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "Não é possivel fazer o upload do ficheiro devido a ser uma pasta ou ter 0 bytes"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Erro no upload"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Pendente"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "O upload foi cancelado."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "nome inválido, '/' não permitido."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Tamanho"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Modificado"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "pasta"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "pastas"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "ficheiro"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "ficheiros"
 
@@ -162,6 +179,10 @@ msgstr "0 é ilimitado"
 msgid "Maximum input size for ZIP files"
 msgstr "Tamanho máximo para ficheiros ZIP"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Novo"
@@ -186,36 +207,36 @@ msgstr "Enviar"
 msgid "Cancel upload"
 msgstr "Cancelar upload"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Vazio. Envia alguma coisa!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nome"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Partilhar"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Transferir"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Envio muito grande"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "Os ficheiro que estás a tentar enviar excedem o tamanho máximo de envio neste servidor."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Os ficheiros estão a ser analisados, por favor aguarde."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Análise actual"
diff --git a/l10n/pt_PT/files_sharing.po b/l10n/pt_PT/files_sharing.po
index 3a9218932780083fd7815e362f79e7156a1fe61d..99b0c7c215570e00f2c118214a1ad8694085b576 100644
--- a/l10n/pt_PT/files_sharing.po
+++ b/l10n/pt_PT/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:04+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/owncloud/language/pt_PT/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: pt_PT\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/pt_PT/files_versions.po b/l10n/pt_PT/files_versions.po
index 5d6fb5fe0671ab1d51a689b7c6012042622c37e3..56a1489aa859db011d1f2c862b245dad02da3c5e 100644
--- a/l10n/pt_PT/files_versions.po
+++ b/l10n/pt_PT/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: pt_PT\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/pt_PT/lib.po b/l10n/pt_PT/lib.po
index 70d233eab3d1c4cbdcac6694deb9ae0ce28acebd..c2f8bf858d1b2d2d96cc019a7755bdd025d5749c 100644
--- a/l10n/pt_PT/lib.po
+++ b/l10n/pt_PT/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: pt_PT\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/pt_PT/settings.po b/l10n/pt_PT/settings.po
index 1cc82a6ea45cbdd7c9015e076a4f51fff433743a..05fcf5b8bd0efd5163605ef3e19ac5cf6d3e19b0 100644
--- a/l10n/pt_PT/settings.po
+++ b/l10n/pt_PT/settings.po
@@ -10,20 +10,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 19:46+0000\n"
-"Last-Translator: rlameiro <geral@ricardolameiro.pt>\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: pt_PT\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Incapaz de carregar a lista da App Store"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Erro de autenticação"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Email guardado"
@@ -40,14 +53,28 @@ msgstr "OpenID alterado"
 msgid "Invalid request"
 msgstr "Pedido inválido"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Erro de autenticação"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Idioma alterado"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Erro"
@@ -72,30 +99,85 @@ msgstr "__language_name__"
 msgid "Security Warning"
 msgstr "Aviso de Segurança"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "Executar uma tarefa com cada página carregada"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php está registado num serviço webcron"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "usar o serviço cron do sistema"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Log"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Mais"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Adicione a sua aplicação"
@@ -109,34 +191,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Ver a página da aplicação em apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licenciado"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "por"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Documentação"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Gestão de ficheiros grandes"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Coloque uma questão"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problemas ao conectar à base de dados de ajuda"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Vá lá manualmente"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Resposta"
 
diff --git a/l10n/pt_PT/user_ldap.po b/l10n/pt_PT/user_ldap.po
index a4088cac2b6200b175748856f7e6c87325907055..c3ee262c51e0ec9e8ab69e22c0eb9b68d32930f1 100644
--- a/l10n/pt_PT/user_ldap.po
+++ b/l10n/pt_PT/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/ro/core.po b/l10n/ro/core.po
index 8b731473482b22bdf2fd32337380143b64396391..42e779595e1f5dcfef1522d09495d39303469b29 100644
--- a/l10n/ro/core.po
+++ b/l10n/ro/core.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -32,59 +32,55 @@ msgstr "Nici o categorie de adăugat?"
 msgid "This category already exists: "
 msgstr "Această categorie deja există:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Configurări"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -116,7 +112,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr "Resetarea parolei ownCloud "
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Folosește următorul link pentru a reseta parola: {link}"
 
@@ -246,7 +242,7 @@ msgstr "Finalizează instalarea"
 msgid "web services under your control"
 msgstr "servicii web controlate de tine"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Ieșire"
 
diff --git a/l10n/ro/files.po b/l10n/ro/files.po
index e7d65b7a034720ada1347351fa743e3d24ddd606..a1551d7f5cd50d5f6a2da1f42c2c59929cfebd6f 100644
--- a/l10n/ro/files.po
+++ b/l10n/ro/files.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -54,83 +54,100 @@ msgstr "Eroare la scriere pe disc"
 msgid "Files"
 msgstr "Fișiere"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Șterge"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Dimensiune"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Modificat"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -162,6 +179,10 @@ msgstr "0 e nelimitat"
 msgid "Maximum input size for ZIP files"
 msgstr "Dimensiunea maximă de intrare pentru fișiere compresate"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nou"
@@ -186,36 +207,36 @@ msgstr "Încarcă"
 msgid "Cancel upload"
 msgstr "Anulează încărcarea"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Nimic aici. Încarcă ceva!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Nume"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Partajează"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Descarcă"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Fișierul încărcat este prea mare"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Fișierele sunt scanate, te rog așteptă."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "În curs de scanare"
diff --git a/l10n/ro/files_sharing.po b/l10n/ro/files_sharing.po
index ab936035380a34ba2c3fed2656c024ef1fa2ea30..6772dfc57a6a82861576cb9d8953c676442bfbe3 100644
--- a/l10n/ro/files_sharing.po
+++ b/l10n/ro/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Romanian (http://www.transifex.com/projects/p/owncloud/language/ro/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: ro\n"
 "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1))\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/ro/files_versions.po b/l10n/ro/files_versions.po
index bb1b9526f0f5a213c477034761ea06312a0c93d0..936d92da9a12d5f2af91cc1042e917a50da79782 100644
--- a/l10n/ro/files_versions.po
+++ b/l10n/ro/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: ro\n"
 "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1))\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/ro/lib.po b/l10n/ro/lib.po
index b0fd2256d652a656bdcf12d2bd218c27dbb82474..1c5698fa22014c7bf4b33979fdde56b41202193a 100644
--- a/l10n/ro/lib.po
+++ b/l10n/ro/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: ro\n"
 "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1))\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/ro/settings.po b/l10n/ro/settings.po
index 736ab30fa147d6b8912d633b2de7c69cee9137dd..a1bc80deb8ac378d4300af0e043e9e1b7fe9b6a6 100644
--- a/l10n/ro/settings.po
+++ b/l10n/ro/settings.po
@@ -7,31 +7,45 @@
 # Dimon Pockemon <>, 2012.
 # Eugen Mihalache <eugemjj@gmail.com>, 2012.
 #   <icewind1991@gmail.com>, 2012.
+#   <iuranemo@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
+msgstr "Imposibil de încărcat lista din App Store"
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Eroare de autentificare"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
 msgstr ""
 
 #: ajax/lostpassword.php:14
 msgid "Email saved"
-msgstr ""
+msgstr "E-mail salvat"
 
 #: ajax/lostpassword.php:16
 msgid "Invalid email"
-msgstr ""
+msgstr "E-mail nevalid"
 
 #: ajax/openid.php:16
 msgid "OpenID Changed"
@@ -41,29 +55,43 @@ msgstr "OpenID schimbat"
 msgid "Invalid request"
 msgstr "Cerere eronată"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Limba a fost schimbată"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
-msgstr ""
+msgstr "Erroare"
 
 #: js/apps.js:39 js/apps.js:73
 msgid "Disable"
-msgstr ""
+msgstr "Dezactivați"
 
 #: js/apps.js:39 js/apps.js:62
 msgid "Enable"
-msgstr ""
+msgstr "Activați"
 
 #: js/personal.js:69
 msgid "Saving..."
-msgstr ""
+msgstr "Salvez..."
 
 #: personal.php:46 personal.php:47
 msgid "__language_name__"
@@ -71,32 +99,87 @@ msgstr "_language_name_"
 
 #: templates/admin.php:14
 msgid "Security Warning"
-msgstr ""
+msgstr "Avertisment de securitate"
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
-msgstr ""
+msgid "Cron"
+msgstr "Cron"
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
-msgstr ""
+msgid "execute one task with each page loaded"
+msgstr "executâ o sarcină cu fiecare pagină încărcată"
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr "cron.php e înregistrat la un serviciu de webcron"
+
+#: templates/admin.php:37
 msgid "use systems cron service"
+msgstr "utilizează serviciul de cron al sistemului"
+
+#: templates/admin.php:41
+msgid "Share API"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Jurnal de activitate"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Mai mult"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Adaugă aplicația ta"
@@ -107,37 +190,33 @@ msgstr "Selectează o aplicație"
 
 #: templates/apps.php:29
 msgid "See application page at apps.owncloud.com"
-msgstr ""
-
-#: templates/apps.php:30
-msgid "-licensed"
-msgstr "-autorizat"
+msgstr "Vizualizează pagina applicației pe apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "by"
-msgstr "de"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Documetație"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Gestionînd fișiere mari"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Întreabă"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Probleme de conectare la baza de date."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Pe cale manuală."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Răspuns"
 
@@ -231,7 +310,7 @@ msgstr "Altele"
 
 #: templates/users.php:80 templates/users.php:112
 msgid "Group Admin"
-msgstr ""
+msgstr "Grupul Admin "
 
 #: templates/users.php:82
 msgid "Quota"
diff --git a/l10n/ro/user_ldap.po b/l10n/ro/user_ldap.po
index 644c43d43ded397fdd0e79758599770184256327..8b79d7561fa17b8321452d805b5eba7b9442fd7a 100644
--- a/l10n/ro/user_ldap.po
+++ b/l10n/ro/user_ldap.po
@@ -4,13 +4,14 @@
 # 
 # Translators:
 # Dumitru Ursu <>, 2012.
+#   <iuranemo@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-15 02:03+0200\n"
-"PO-Revision-Date: 2012-08-14 20:24+0000\n"
-"Last-Translator: Dumitru Ursu <>\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-30 17:51+0000\n"
+"Last-Translator: iuranemo <iuranemo@gmail.com>\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"
@@ -160,6 +161,12 @@ msgstr "în octeți"
 msgid "in seconds. A change empties the cache."
 msgstr "în secunde. O schimbare curăță memoria tampon."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+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:32
 msgid "Help"
 msgstr "Ajutor"
diff --git a/l10n/ru/core.po b/l10n/ru/core.po
index ddc0440b8894c6d01ab3363143f0d0b0c9b2ef85..303b4ff13fc79ddfc637723ff542fbae6be95660 100644
--- a/l10n/ru/core.po
+++ b/l10n/ru/core.po
@@ -7,19 +7,20 @@
 #   <jekader@gmail.com>, 2011, 2012.
 #   <tony.mccourin@gmail.com>, 2011.
 # Victor Bravo <>, 2012.
+#   <victor.dubiniuk@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-09-07 10:55+0000\n"
+"Last-Translator: VicDeo <victor.dubiniuk@gmail.com>\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"
+"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/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -33,59 +34,55 @@ msgstr "Нет категорий для добавления?"
 msgid "This category already exists: "
 msgstr "Эта категория уже существует: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:54 templates/layout.user.php:55
 msgid "Settings"
 msgstr "Настройки"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Январь"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Февраль"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Март"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Апрель"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Май"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Июнь"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Июль"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Август"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Сентябрь"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Октябрь"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Ноябрь"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Декабрь"
 
@@ -117,7 +114,7 @@ msgstr "Ошибка"
 msgid "ownCloud password reset"
 msgstr "Сброс пароля "
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Используйте следующую ссылку чтобы сбросить пароль: {link}"
 
@@ -233,7 +230,7 @@ msgstr "Название базы данных"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Табличое пространство базы данных"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -243,11 +240,11 @@ msgstr "Хост базы данных"
 msgid "Finish setup"
 msgstr "Завершить установку"
 
-#: templates/layout.guest.php:42
+#: templates/layout.guest.php:36
 msgid "web services under your control"
 msgstr "Сетевые службы под твоим контролем"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:39
 msgid "Log out"
 msgstr "Выйти"
 
diff --git a/l10n/ru/files.po b/l10n/ru/files.po
index 624859e9c9fbf55f0d324f5a3694c751a19af886..234fbe404e5ebc254b5e77956b9ecd47fbe93657 100644
--- a/l10n/ru/files.po
+++ b/l10n/ru/files.po
@@ -9,19 +9,20 @@
 # Nick Remeslennikov <homolibere@gmail.com>, 2012.
 #   <tony.mccourin@gmail.com>, 2011.
 # Victor Bravo <>, 2012.
+#   <victor.dubiniuk@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 13:06+0000\n"
-"Last-Translator: Denis <reg.transifex.net@demitel.ru>\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 14:18+0000\n"
+"Last-Translator: VicDeo <victor.dubiniuk@gmail.com>\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"
+"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/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -57,83 +58,100 @@ msgstr "Ошибка записи на диск"
 msgid "Files"
 msgstr "Файлы"
 
-#: js/fileactions.js:111 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Отменить публикацию"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Удалить"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "уже существует"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "заменить"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "предложить название"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "отмена"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "заменён"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "отмена"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "с"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "отмена"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "публикация отменена"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "удален"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "создание ZIP-файла, это может занять некоторое время."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "Не удается загрузить файл размером 0 байт в каталог"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Ошибка загрузки"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Ожидание"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Загрузка отменена."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr "Файл в процессе загрузки. Покинув страницу вы прервёте загрузку."
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Неверное имя, '/' не допускается."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Размер"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Изменён"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "папка"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "папки"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "файл"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "файлы"
 
@@ -165,6 +183,10 @@ msgstr "0 - без ограничений"
 msgid "Maximum input size for ZIP files"
 msgstr "Максимальный исходный размер для ZIP файлов"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Сохранить"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Новый"
@@ -189,36 +211,36 @@ msgstr "Загрузить"
 msgid "Cancel upload"
 msgstr "Отмена загрузки"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Здесь ничего нет. Загрузите что-нибудь!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Название"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Опубликовать"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Скачать"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Файл слишком большой"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "Файлы, которые Вы пытаетесь загрузить, превышают лимит для файлов на этом сервере."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Подождите, файлы сканируются."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Текущее сканирование"
diff --git a/l10n/ru/files_sharing.po b/l10n/ru/files_sharing.po
index 39aaa411510dd5e64eacdfeb43e02a531880c07d..217d6cdf37714b66bdec237862deb2e754529deb 100644
--- a/l10n/ru/files_sharing.po
+++ b/l10n/ru/files_sharing.po
@@ -4,32 +4,38 @@
 # 
 # Translators:
 # Denis  <reg.transifex.net@demitel.ru>, 2012.
+#   <iuranemo@gmail.com>, 2012.
+#   <victor.dubiniuk@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 07:48+0000\n"
-"Last-Translator: Denis <reg.transifex.net@demitel.ru>\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 12:10+0000\n"
+"Last-Translator: VicDeo <victor.dubiniuk@gmail.com>\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"
+"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"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Размер"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Пароль"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Изменён"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Отправить"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Удалить все"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Скачать"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Удалить"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Предпросмотр недоступен для"
+
+#: templates/public.php:25
+msgid "web services under your control"
+msgstr "веб-сервисы под вашим управлением"
diff --git a/l10n/ru/files_versions.po b/l10n/ru/files_versions.po
index 466c1629db06cc62661a33e5377b966770adf338..4eec64b43e41fd7d0d74862a571ad74c27699922 100644
--- a/l10n/ru/files_versions.po
+++ b/l10n/ru/files_versions.po
@@ -4,24 +4,33 @@
 # 
 # Translators:
 # Denis  <reg.transifex.net@demitel.ru>, 2012.
+#   <victor.dubiniuk@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 07:24+0000\n"
-"Last-Translator: Denis <reg.transifex.net@demitel.ru>\n"
+"POT-Creation-Date: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-09-07 11:40+0000\n"
+"Last-Translator: VicDeo <victor.dubiniuk@gmail.com>\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"
+"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/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Просрочить все версии"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Версии"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Очистить список версий ваших файлов"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Включить ведение версий файлов"
diff --git a/l10n/ru/lib.po b/l10n/ru/lib.po
index 8c24f83b94140e36e5c13d1032ba974053846e8a..da6e47850058db51316f9b8f78fb367e2cbe886d 100644
--- a/l10n/ru/lib.po
+++ b/l10n/ru/lib.po
@@ -4,57 +4,59 @@
 # 
 # Translators:
 # Denis  <reg.transifex.net@demitel.ru>, 2012.
+#   <mpolr21@gmail.com>, 2012.
+#   <victor.dubiniuk@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 09:37+0000\n"
-"Last-Translator: Denis <reg.transifex.net@demitel.ru>\n"
+"POT-Creation-Date: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-09-07 11:22+0000\n"
+"Last-Translator: VicDeo <victor.dubiniuk@gmail.com>\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"
+"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:288
+#: app.php:285
 msgid "Help"
 msgstr "Помощь"
 
-#: app.php:295
+#: app.php:292
 msgid "Personal"
 msgstr "Личное"
 
-#: app.php:300
+#: app.php:297
 msgid "Settings"
 msgstr "Настройки"
 
-#: app.php:305
+#: app.php:302
 msgid "Users"
 msgstr "Пользователи"
 
-#: app.php:312
+#: app.php:309
 msgid "Apps"
 msgstr "Приложения"
 
-#: app.php:314
+#: app.php:311
 msgid "Admin"
 msgstr "Admin"
 
-#: files.php:276
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "ZIP-скачивание отключено."
 
-#: files.php:277
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Файлы должны быть загружены по одному."
 
-#: files.php:277 files.php:302
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Назад к файлам"
 
-#: files.php:301
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "Выбранные файлы слишком велики, чтобы создать zip файл."
 
@@ -70,44 +72,57 @@ msgstr "Ошибка аутентификации"
 msgid "Token expired. Please reload page."
 msgstr "Токен просрочен. Перезагрузите страницу."
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
 msgstr "менее минуты"
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
 msgstr "1 минуту назад"
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
 msgstr "%d минут назад"
 
-#: template.php:91
+#: template.php:92
 msgid "today"
 msgstr "сегодня"
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
 msgstr "вчера"
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
 msgstr "%d дней назад"
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
 msgstr "в прошлом месяце"
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
 msgstr "месяцы назад"
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
 msgstr "в прошлом году"
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
 msgstr "годы назад"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "Возможно обновление до %s. <a href=\"%s\">Подробнее</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "актуальная версия"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "проверка обновлений отключена"
diff --git a/l10n/ru/settings.po b/l10n/ru/settings.po
index 8dfb19bb77b3ff1164f2cad60d8aebb5f65f511e..53b8f54895a00e22c40c85c5cff569f2d4dbc766 100644
--- a/l10n/ru/settings.po
+++ b/l10n/ru/settings.po
@@ -11,24 +11,38 @@
 #   <rasperepodvipodvert@gmail.com>, 2012.
 #   <tony.mccourin@gmail.com>, 2011.
 # Victor Bravo <>, 2012.
+#   <victor.dubiniuk@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-19 02:02+0200\n"
-"PO-Revision-Date: 2012-08-18 11:59+0000\n"
-"Last-Translator: rasperepodvipodvert <rasperepodvipodvert@gmail.com>\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\n"
+"PO-Revision-Date: 2012-09-11 01:35+0000\n"
+"Last-Translator: VicDeo <victor.dubiniuk@gmail.com>\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"
+"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/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Загрузка из App Store запрещена"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Ошибка авторизации"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Группа уже существует"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Невозможно добавить группу"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Email сохранен"
@@ -45,21 +59,35 @@ msgstr "OpenID изменён"
 msgid "Invalid request"
 msgstr "Неверный запрос"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Ошибка авторизации"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Невозможно удалить группу"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Невозможно удалить пользователя"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Язык изменён"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Невозможно добавить пользователя в группу %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Невозможно удалить пользователя из группы %s"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Ошибка"
 
 #: js/apps.js:39 js/apps.js:73
 msgid "Disable"
-msgstr "Отключить"
+msgstr "Выключить"
 
 #: js/apps.js:39 js/apps.js:62
 msgid "Enable"
@@ -77,30 +105,85 @@ msgstr "Русский "
 msgid "Security Warning"
 msgstr "Предупреждение безопасности"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "Похоже, что каталог data и ваши файлы в нем доступны из интернета. Предоставляемый ownCloud файл htaccess не работает. Настоятельно рекомендуем настроить сервер таким образом, чтобы закрыть доступ к каталогу data или вынести каталог data за пределы корневого каталога веб-сервера."
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Задание"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "Запускать задание при загрузке каждой страницы"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
-msgstr "cron.php зарегистрирован в webcron сервисе"
+msgstr "cron.php зарегистрирован в службе webcron"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "использовать системные задания"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "API публикации"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Включить API публикации"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Разрешить API публикации для приложений"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Разрешить ссылки"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Разрешить пользователям публикацию при помощи ссылок"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Включить повторную публикацию"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Разрешить пользователям публиковать доступные им элементы других пользователей"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Разрешить публиковать для любых пользователей"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Ограничить публикацию группами пользователя"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Журнал"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Ещё"
 
+#: templates/admin.php:105
+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 "Разрабатывается <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>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Добавить приложение"
@@ -114,34 +197,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Смотрите дополнения на apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-лицензия"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "от"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span> лицензия. Автор <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Документация"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Управление большими файлами"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Задать вопрос"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Проблема соединения с базой данных помощи."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Войти самостоятельно."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Ответ"
 
diff --git a/l10n/ru/user_ldap.po b/l10n/ru/user_ldap.po
index bb1f2d62399e01d7fd4078168168c39d568e87e2..b3dbb4c446ee0e71f7070e521a5735856698aea9 100644
--- a/l10n/ru/user_ldap.po
+++ b/l10n/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: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 15:13+0000\n"
-"Last-Translator: wpns <4671992@gmail.com>\n"
+"POT-Creation-Date: 2012-08-30 02:02+0200\n"
+"PO-Revision-Date: 2012-08-29 05:08+0000\n"
+"Last-Translator: Denis <reg.transifex.net@demitel.ru>\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"
@@ -93,7 +93,7 @@ msgstr "Определяет фильтр для применения при п
 
 #: templates/settings.php:14
 msgid "without any placeholder, e.g. \"objectClass=posixGroup\"."
-msgstr ""
+msgstr "без заполнения, например \"objectClass=posixGroup\"."
 
 #: templates/settings.php:17
 msgid "Port"
@@ -101,15 +101,15 @@ msgstr "Порт"
 
 #: templates/settings.php:18
 msgid "Base User Tree"
-msgstr ""
+msgstr "База пользовательского дерева"
 
 #: templates/settings.php:19
 msgid "Base Group Tree"
-msgstr ""
+msgstr "База группового дерева"
 
 #: templates/settings.php:20
 msgid "Group-Member association"
-msgstr ""
+msgstr "Ассоциация Группа-Участник"
 
 #: templates/settings.php:21
 msgid "Use TLS"
@@ -121,7 +121,7 @@ msgstr "Не используйте для соединений SSL"
 
 #: templates/settings.php:22
 msgid "Case insensitve LDAP server (Windows)"
-msgstr ""
+msgstr "Нечувствительный к регистру сервер LDAP (Windows)"
 
 #: templates/settings.php:23
 msgid "Turn off SSL certificate validation."
@@ -131,7 +131,7 @@ msgstr "Отключить проверку сертификата SSL."
 msgid ""
 "If connection only works with this option, import the LDAP server's SSL "
 "certificate in your ownCloud server."
-msgstr ""
+msgstr "Если соединение работает только с этой опцией, импортируйте на ваш сервер ownCloud сертификат SSL сервера LDAP."
 
 #: templates/settings.php:23
 msgid "Not recommended, use for testing only."
@@ -139,19 +139,19 @@ msgstr "Не рекомендуется, используйте только д
 
 #: templates/settings.php:24
 msgid "User Display Name Field"
-msgstr ""
+msgstr "Поле отображаемого имени пользователя"
 
 #: templates/settings.php:24
 msgid "The LDAP attribute to use to generate the user`s ownCloud name."
-msgstr ""
+msgstr "Атрибут LDAP для генерации имени пользователя ownCloud."
 
 #: templates/settings.php:25
 msgid "Group Display Name Field"
-msgstr ""
+msgstr "Поле отображаемого имени группы"
 
 #: templates/settings.php:25
 msgid "The LDAP attribute to use to generate the groups`s ownCloud name."
-msgstr ""
+msgstr "Атрибут LDAP для генерации имени группы ownCloud."
 
 #: templates/settings.php:27
 msgid "in bytes"
@@ -161,6 +161,12 @@ msgstr "в байтах"
 msgid "in seconds. A change empties the cache."
 msgstr "в секундах. Изменение очистит кэш."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr "Оставьте имя пользователя пустым (по умолчанию). Иначе укажите атрибут LDAP/AD."
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr "Помощь"
diff --git a/l10n/ru_RU/core.po b/l10n/ru_RU/core.po
new file mode 100644
index 0000000000000000000000000000000000000000..6c4aeee5d54f9080181e436c0e2289d829212b88
--- /dev/null
+++ b/l10n/ru_RU/core.po
@@ -0,0 +1,268 @@
+# 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: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
+msgid "Application name not provided."
+msgstr ""
+
+#: ajax/vcategories/add.php:29
+msgid "No category to add?"
+msgstr ""
+
+#: ajax/vcategories/add.php:36
+msgid "This category already exists: "
+msgstr ""
+
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
+msgid "Settings"
+msgstr ""
+
+#: js/js.js:593
+msgid "January"
+msgstr ""
+
+#: js/js.js:593
+msgid "February"
+msgstr ""
+
+#: js/js.js:593
+msgid "March"
+msgstr ""
+
+#: js/js.js:593
+msgid "April"
+msgstr ""
+
+#: js/js.js:593
+msgid "May"
+msgstr ""
+
+#: js/js.js:593
+msgid "June"
+msgstr ""
+
+#: js/js.js:594
+msgid "July"
+msgstr ""
+
+#: js/js.js:594
+msgid "August"
+msgstr ""
+
+#: js/js.js:594
+msgid "September"
+msgstr ""
+
+#: js/js.js:594
+msgid "October"
+msgstr ""
+
+#: js/js.js:594
+msgid "November"
+msgstr ""
+
+#: js/js.js:594
+msgid "December"
+msgstr ""
+
+#: js/oc-dialogs.js:143 js/oc-dialogs.js:163
+msgid "Cancel"
+msgstr ""
+
+#: js/oc-dialogs.js:159
+msgid "No"
+msgstr ""
+
+#: js/oc-dialogs.js:160
+msgid "Yes"
+msgstr ""
+
+#: js/oc-dialogs.js:177
+msgid "Ok"
+msgstr ""
+
+#: js/oc-vcategories.js:68
+msgid "No categories selected for deletion."
+msgstr ""
+
+#: js/oc-vcategories.js:68
+msgid "Error"
+msgstr ""
+
+#: lostpassword/index.php:26
+msgid "ownCloud password reset"
+msgstr ""
+
+#: lostpassword/templates/email.php:2
+msgid "Use the following link to reset your password: {link}"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:3
+msgid "You will receive a link to reset your password via Email."
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:5
+msgid "Requested"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:8
+msgid "Login failed!"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:11 templates/installation.php:26
+#: templates/login.php:9
+msgid "Username"
+msgstr ""
+
+#: lostpassword/templates/lostpassword.php:15
+msgid "Request reset"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:4
+msgid "Your password was reset"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:5
+msgid "To login page"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:8
+msgid "New password"
+msgstr ""
+
+#: lostpassword/templates/resetpassword.php:11
+msgid "Reset password"
+msgstr ""
+
+#: strings.php:5
+msgid "Personal"
+msgstr ""
+
+#: strings.php:6
+msgid "Users"
+msgstr ""
+
+#: strings.php:7
+msgid "Apps"
+msgstr ""
+
+#: strings.php:8
+msgid "Admin"
+msgstr ""
+
+#: strings.php:9
+msgid "Help"
+msgstr ""
+
+#: templates/403.php:12
+msgid "Access forbidden"
+msgstr ""
+
+#: templates/404.php:12
+msgid "Cloud not found"
+msgstr ""
+
+#: templates/edit_categories_dialog.php:4
+msgid "Edit categories"
+msgstr ""
+
+#: templates/edit_categories_dialog.php:14
+msgid "Add"
+msgstr ""
+
+#: templates/installation.php:24
+msgid "Create an <strong>admin account</strong>"
+msgstr ""
+
+#: templates/installation.php:30 templates/login.php:13
+msgid "Password"
+msgstr ""
+
+#: templates/installation.php:36
+msgid "Advanced"
+msgstr ""
+
+#: templates/installation.php:38
+msgid "Data folder"
+msgstr ""
+
+#: templates/installation.php:45
+msgid "Configure the database"
+msgstr ""
+
+#: templates/installation.php:50 templates/installation.php:61
+#: templates/installation.php:71 templates/installation.php:81
+msgid "will be used"
+msgstr ""
+
+#: templates/installation.php:93
+msgid "Database user"
+msgstr ""
+
+#: templates/installation.php:97
+msgid "Database password"
+msgstr ""
+
+#: templates/installation.php:101
+msgid "Database name"
+msgstr ""
+
+#: templates/installation.php:109
+msgid "Database tablespace"
+msgstr ""
+
+#: templates/installation.php:115
+msgid "Database host"
+msgstr ""
+
+#: templates/installation.php:120
+msgid "Finish setup"
+msgstr ""
+
+#: templates/layout.guest.php:42
+msgid "web services under your control"
+msgstr ""
+
+#: templates/layout.user.php:45
+msgid "Log out"
+msgstr ""
+
+#: templates/login.php:6
+msgid "Lost your password?"
+msgstr ""
+
+#: templates/login.php:17
+msgid "remember"
+msgstr ""
+
+#: templates/login.php:18
+msgid "Log in"
+msgstr ""
+
+#: templates/logout.php:1
+msgid "You are logged out."
+msgstr ""
+
+#: templates/part.pagenavi.php:3
+msgid "prev"
+msgstr ""
+
+#: templates/part.pagenavi.php:20
+msgid "next"
+msgstr ""
diff --git a/l10n/ru_RU/files.po b/l10n/ru_RU/files.po
new file mode 100644
index 0000000000000000000000000000000000000000..441a2de6ae39191d73e67da9fafc452f68cf6548
--- /dev/null
+++ b/l10n/ru_RU/files.po
@@ -0,0 +1,239 @@
+# 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: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: ajax/upload.php:20
+msgid "There is no error, the file uploaded with success"
+msgstr ""
+
+#: ajax/upload.php:21
+msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini"
+msgstr ""
+
+#: ajax/upload.php:22
+msgid ""
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
+"the HTML form"
+msgstr ""
+
+#: ajax/upload.php:23
+msgid "The uploaded file was only partially uploaded"
+msgstr ""
+
+#: ajax/upload.php:24
+msgid "No file was uploaded"
+msgstr ""
+
+#: ajax/upload.php:25
+msgid "Missing a temporary folder"
+msgstr ""
+
+#: ajax/upload.php:26
+msgid "Failed to write to disk"
+msgstr ""
+
+#: appinfo/app.php:6
+msgid "Files"
+msgstr ""
+
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
+msgid "Delete"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
+msgid "already exists"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
+msgid "replace"
+msgstr ""
+
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
+msgid "cancel"
+msgstr ""
+
+#: js/filelist.js:235 js/filelist.js:237
+msgid "replaced"
+msgstr ""
+
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
+msgid "with"
+msgstr ""
+
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
+
+#: js/filelist.js:270
+msgid "deleted"
+msgstr ""
+
+#: js/files.js:179
+msgid "generating ZIP-file, it may take some time."
+msgstr ""
+
+#: js/files.js:208
+msgid "Unable to upload your file as it is a directory or has 0 bytes"
+msgstr ""
+
+#: js/files.js:208
+msgid "Upload Error"
+msgstr ""
+
+#: js/files.js:236 js/files.js:341 js/files.js:370
+msgid "Pending"
+msgstr ""
+
+#: js/files.js:355
+msgid "Upload cancelled."
+msgstr ""
+
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
+msgid "Invalid name, '/' is not allowed."
+msgstr ""
+
+#: js/files.js:746 templates/index.php:56
+msgid "Size"
+msgstr ""
+
+#: js/files.js:747 templates/index.php:58
+msgid "Modified"
+msgstr ""
+
+#: js/files.js:774
+msgid "folder"
+msgstr ""
+
+#: js/files.js:776
+msgid "folders"
+msgstr ""
+
+#: js/files.js:784
+msgid "file"
+msgstr ""
+
+#: js/files.js:786
+msgid "files"
+msgstr ""
+
+#: templates/admin.php:5
+msgid "File handling"
+msgstr ""
+
+#: templates/admin.php:7
+msgid "Maximum upload size"
+msgstr ""
+
+#: templates/admin.php:7
+msgid "max. possible: "
+msgstr ""
+
+#: templates/admin.php:9
+msgid "Needed for multi-file and folder downloads."
+msgstr ""
+
+#: templates/admin.php:9
+msgid "Enable ZIP-download"
+msgstr ""
+
+#: templates/admin.php:11
+msgid "0 is unlimited"
+msgstr ""
+
+#: templates/admin.php:12
+msgid "Maximum input size for ZIP files"
+msgstr ""
+
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
+#: templates/index.php:7
+msgid "New"
+msgstr ""
+
+#: templates/index.php:9
+msgid "Text file"
+msgstr ""
+
+#: templates/index.php:10
+msgid "Folder"
+msgstr ""
+
+#: templates/index.php:11
+msgid "From url"
+msgstr ""
+
+#: templates/index.php:21
+msgid "Upload"
+msgstr ""
+
+#: templates/index.php:27
+msgid "Cancel upload"
+msgstr ""
+
+#: templates/index.php:40
+msgid "Nothing in here. Upload something!"
+msgstr ""
+
+#: templates/index.php:48
+msgid "Name"
+msgstr ""
+
+#: templates/index.php:50
+msgid "Share"
+msgstr ""
+
+#: templates/index.php:52
+msgid "Download"
+msgstr ""
+
+#: templates/index.php:75
+msgid "Upload too large"
+msgstr ""
+
+#: templates/index.php:77
+msgid ""
+"The files you are trying to upload exceed the maximum size for file uploads "
+"on this server."
+msgstr ""
+
+#: templates/index.php:82
+msgid "Files are being scanned, please wait."
+msgstr ""
+
+#: templates/index.php:85
+msgid "Current scanning"
+msgstr ""
diff --git a/l10n/ru_RU/files_encryption.po b/l10n/ru_RU/files_encryption.po
new file mode 100644
index 0000000000000000000000000000000000000000..852ced02fdccfff30384d1184a442fc22a15569e
--- /dev/null
+++ b/l10n/ru_RU/files_encryption.po
@@ -0,0 +1,34 @@
+# 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: 2012-08-30 02:02+0200\n"
+"PO-Revision-Date: 2012-08-12 22:33+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: templates/settings.php:3
+msgid "Encryption"
+msgstr ""
+
+#: templates/settings.php:4
+msgid "Exclude the following file types from encryption"
+msgstr ""
+
+#: templates/settings.php:5
+msgid "None"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "Enable Encryption"
+msgstr ""
diff --git a/l10n/ru_RU/files_external.po b/l10n/ru_RU/files_external.po
new file mode 100644
index 0000000000000000000000000000000000000000..8d869422275dba0af565522f91eab47625af1e29
--- /dev/null
+++ b/l10n/ru_RU/files_external.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: 2012-08-30 02:02+0200\n"
+"PO-Revision-Date: 2012-08-12 22:34+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: templates/settings.php:3
+msgid "External Storage"
+msgstr ""
+
+#: templates/settings.php:7 templates/settings.php:19
+msgid "Mount point"
+msgstr ""
+
+#: templates/settings.php:8
+msgid "Backend"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "Configuration"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "Options"
+msgstr ""
+
+#: templates/settings.php:11
+msgid "Applicable"
+msgstr ""
+
+#: templates/settings.php:23
+msgid "Add mount point"
+msgstr ""
+
+#: templates/settings.php:54 templates/settings.php:62
+msgid "None set"
+msgstr ""
+
+#: templates/settings.php:63
+msgid "All Users"
+msgstr ""
+
+#: templates/settings.php:64
+msgid "Groups"
+msgstr ""
+
+#: templates/settings.php:69
+msgid "Users"
+msgstr ""
+
+#: templates/settings.php:77 templates/settings.php:96
+msgid "Delete"
+msgstr ""
+
+#: templates/settings.php:88
+msgid "SSL root certificates"
+msgstr ""
+
+#: templates/settings.php:102
+msgid "Import Root Certificate"
+msgstr ""
+
+#: templates/settings.php:108
+msgid "Enable User External Storage"
+msgstr ""
+
+#: templates/settings.php:109
+msgid "Allow users to mount their own external storage"
+msgstr ""
diff --git a/l10n/ru_RU/files_sharing.po b/l10n/ru_RU/files_sharing.po
new file mode 100644
index 0000000000000000000000000000000000000000..5a793d15d3d8a50fbcd9967cdb1c955fdb3bd5db
--- /dev/null
+++ b/l10n/ru_RU/files_sharing.po
@@ -0,0 +1,38 @@
+# 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: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:04+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr ""
+
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr ""
+
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr ""
+
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr ""
diff --git a/l10n/ru_RU/files_versions.po b/l10n/ru_RU/files_versions.po
new file mode 100644
index 0000000000000000000000000000000000000000..f7ff8068c724bb656a7c9d37ee23228a1c6e6f00
--- /dev/null
+++ b/l10n/ru_RU/files_versions.po
@@ -0,0 +1,34 @@
+# 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: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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/settings-personal.js:31 templates/settings-personal.php:10
+msgid "Expire all versions"
+msgstr ""
+
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
+#: templates/settings.php:3
+msgid "Enable Files Versioning"
+msgstr ""
diff --git a/l10n/ru_RU/lib.po b/l10n/ru_RU/lib.po
new file mode 100644
index 0000000000000000000000000000000000000000..9b7bced54223687e78ee4165aa473e4ddbe02c2e
--- /dev/null
+++ b/l10n/ru_RU/lib.po
@@ -0,0 +1,125 @@
+# 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: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: app.php:288
+msgid "Help"
+msgstr ""
+
+#: app.php:295
+msgid "Personal"
+msgstr ""
+
+#: app.php:300
+msgid "Settings"
+msgstr ""
+
+#: app.php:305
+msgid "Users"
+msgstr ""
+
+#: app.php:312
+msgid "Apps"
+msgstr ""
+
+#: app.php:314
+msgid "Admin"
+msgstr ""
+
+#: files.php:280
+msgid "ZIP download is turned off."
+msgstr ""
+
+#: files.php:281
+msgid "Files need to be downloaded one by one."
+msgstr ""
+
+#: files.php:281 files.php:306
+msgid "Back to Files"
+msgstr ""
+
+#: files.php:305
+msgid "Selected files too large to generate zip file."
+msgstr ""
+
+#: json.php:28
+msgid "Application is not enabled"
+msgstr ""
+
+#: json.php:39 json.php:63 json.php:75
+msgid "Authentication error"
+msgstr ""
+
+#: json.php:51
+msgid "Token expired. Please reload page."
+msgstr ""
+
+#: template.php:86
+msgid "seconds ago"
+msgstr ""
+
+#: template.php:87
+msgid "1 minute ago"
+msgstr ""
+
+#: template.php:88
+#, php-format
+msgid "%d minutes ago"
+msgstr ""
+
+#: template.php:91
+msgid "today"
+msgstr ""
+
+#: template.php:92
+msgid "yesterday"
+msgstr ""
+
+#: template.php:93
+#, php-format
+msgid "%d days ago"
+msgstr ""
+
+#: template.php:94
+msgid "last month"
+msgstr ""
+
+#: template.php:95
+msgid "months ago"
+msgstr ""
+
+#: template.php:96
+msgid "last year"
+msgstr ""
+
+#: template.php:97
+msgid "years ago"
+msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/ru_RU/settings.po b/l10n/ru_RU/settings.po
new file mode 100644
index 0000000000000000000000000000000000000000..210a41b0491a4dcc516b761053e75c22d51172d0
--- /dev/null
+++ b/l10n/ru_RU/settings.po
@@ -0,0 +1,316 @@
+# 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: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+
+#: ajax/apps/ocs.php:23
+msgid "Unable to load list from App Store"
+msgstr ""
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
+#: ajax/lostpassword.php:14
+msgid "Email saved"
+msgstr ""
+
+#: ajax/lostpassword.php:16
+msgid "Invalid email"
+msgstr ""
+
+#: ajax/openid.php:16
+msgid "OpenID Changed"
+msgstr ""
+
+#: ajax/openid.php:18 ajax/setlanguage.php:20 ajax/setlanguage.php:23
+msgid "Invalid request"
+msgstr ""
+
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
+
+#: ajax/setlanguage.php:18
+msgid "Language changed"
+msgstr ""
+
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
+#: js/apps.js:18
+msgid "Error"
+msgstr ""
+
+#: js/apps.js:39 js/apps.js:73
+msgid "Disable"
+msgstr ""
+
+#: js/apps.js:39 js/apps.js:62
+msgid "Enable"
+msgstr ""
+
+#: js/personal.js:69
+msgid "Saving..."
+msgstr ""
+
+#: personal.php:46 personal.php:47
+msgid "__language_name__"
+msgstr ""
+
+#: templates/admin.php:14
+msgid "Security Warning"
+msgstr ""
+
+#: templates/admin.php:17
+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/admin.php:31
+msgid "Cron"
+msgstr ""
+
+#: templates/admin.php:33
+msgid "execute one task with each page loaded"
+msgstr ""
+
+#: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
+msgid "use systems cron service"
+msgstr ""
+
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
+msgid "Log"
+msgstr ""
+
+#: templates/admin.php:97
+msgid "More"
+msgstr ""
+
+#: templates/admin.php:105
+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/apps.php:10
+msgid "Add your App"
+msgstr ""
+
+#: templates/apps.php:26
+msgid "Select an App"
+msgstr ""
+
+#: templates/apps.php:29
+msgid "See application page at apps.owncloud.com"
+msgstr ""
+
+#: templates/apps.php:30
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
+
+#: templates/help.php:9
+msgid "Documentation"
+msgstr ""
+
+#: templates/help.php:10
+msgid "Managing Big Files"
+msgstr ""
+
+#: templates/help.php:11
+msgid "Ask a question"
+msgstr ""
+
+#: templates/help.php:23
+msgid "Problems connecting to help database."
+msgstr ""
+
+#: templates/help.php:24
+msgid "Go there manually."
+msgstr ""
+
+#: templates/help.php:32
+msgid "Answer"
+msgstr ""
+
+#: templates/personal.php:8
+msgid "You use"
+msgstr ""
+
+#: templates/personal.php:8
+msgid "of the available"
+msgstr ""
+
+#: templates/personal.php:12
+msgid "Desktop and Mobile Syncing Clients"
+msgstr ""
+
+#: templates/personal.php:13
+msgid "Download"
+msgstr ""
+
+#: templates/personal.php:19
+msgid "Your password got changed"
+msgstr ""
+
+#: templates/personal.php:20
+msgid "Unable to change your password"
+msgstr ""
+
+#: templates/personal.php:21
+msgid "Current password"
+msgstr ""
+
+#: templates/personal.php:22
+msgid "New password"
+msgstr ""
+
+#: templates/personal.php:23
+msgid "show"
+msgstr ""
+
+#: templates/personal.php:24
+msgid "Change password"
+msgstr ""
+
+#: templates/personal.php:30
+msgid "Email"
+msgstr ""
+
+#: templates/personal.php:31
+msgid "Your email address"
+msgstr ""
+
+#: templates/personal.php:32
+msgid "Fill in an email address to enable password recovery"
+msgstr ""
+
+#: templates/personal.php:38 templates/personal.php:39
+msgid "Language"
+msgstr ""
+
+#: templates/personal.php:44
+msgid "Help translate"
+msgstr ""
+
+#: templates/personal.php:51
+msgid "use this address to connect to your ownCloud in your file manager"
+msgstr ""
+
+#: templates/users.php:21 templates/users.php:76
+msgid "Name"
+msgstr ""
+
+#: templates/users.php:23 templates/users.php:77
+msgid "Password"
+msgstr ""
+
+#: templates/users.php:26 templates/users.php:78 templates/users.php:98
+msgid "Groups"
+msgstr ""
+
+#: templates/users.php:32
+msgid "Create"
+msgstr ""
+
+#: templates/users.php:35
+msgid "Default Quota"
+msgstr ""
+
+#: templates/users.php:55 templates/users.php:138
+msgid "Other"
+msgstr ""
+
+#: templates/users.php:80 templates/users.php:112
+msgid "Group Admin"
+msgstr ""
+
+#: templates/users.php:82
+msgid "Quota"
+msgstr ""
+
+#: templates/users.php:146
+msgid "Delete"
+msgstr ""
diff --git a/l10n/ru_RU/user_ldap.po b/l10n/ru_RU/user_ldap.po
new file mode 100644
index 0000000000000000000000000000000000000000..13c174b7807eb2c2bdf11a3684b0ee935ef286ce
--- /dev/null
+++ b/l10n/ru_RU/user_ldap.po
@@ -0,0 +1,170 @@
+# 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: 2012-08-30 02:02+0200\n"
+"PO-Revision-Date: 2012-08-12 22:45+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
+
+#: templates/settings.php:8
+msgid "Host"
+msgstr ""
+
+#: templates/settings.php:8
+msgid ""
+"You can omit the protocol, except you require SSL. Then start with ldaps://"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "Base DN"
+msgstr ""
+
+#: templates/settings.php:9
+msgid "You can specify Base DN for users and groups in the Advanced tab"
+msgstr ""
+
+#: templates/settings.php:10
+msgid "User DN"
+msgstr ""
+
+#: templates/settings.php:10
+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:11
+msgid "Password"
+msgstr ""
+
+#: templates/settings.php:11
+msgid "For anonymous access, leave DN and Password empty."
+msgstr ""
+
+#: templates/settings.php:12
+msgid "User Login Filter"
+msgstr ""
+
+#: templates/settings.php:12
+#, php-format
+msgid ""
+"Defines the filter to apply, when login is attempted. %%uid replaces the "
+"username in the login action."
+msgstr ""
+
+#: templates/settings.php:12
+#, php-format
+msgid "use %%uid placeholder, e.g. \"uid=%%uid\""
+msgstr ""
+
+#: templates/settings.php:13
+msgid "User List Filter"
+msgstr ""
+
+#: templates/settings.php:13
+msgid "Defines the filter to apply, when retrieving users."
+msgstr ""
+
+#: templates/settings.php:13
+msgid "without any placeholder, e.g. \"objectClass=person\"."
+msgstr ""
+
+#: templates/settings.php:14
+msgid "Group Filter"
+msgstr ""
+
+#: templates/settings.php:14
+msgid "Defines the filter to apply, when retrieving groups."
+msgstr ""
+
+#: templates/settings.php:14
+msgid "without any placeholder, e.g. \"objectClass=posixGroup\"."
+msgstr ""
+
+#: templates/settings.php:17
+msgid "Port"
+msgstr ""
+
+#: templates/settings.php:18
+msgid "Base User Tree"
+msgstr ""
+
+#: templates/settings.php:19
+msgid "Base Group Tree"
+msgstr ""
+
+#: templates/settings.php:20
+msgid "Group-Member association"
+msgstr ""
+
+#: templates/settings.php:21
+msgid "Use TLS"
+msgstr ""
+
+#: templates/settings.php:21
+msgid "Do not use it for SSL connections, it will fail."
+msgstr ""
+
+#: templates/settings.php:22
+msgid "Case insensitve LDAP server (Windows)"
+msgstr ""
+
+#: templates/settings.php:23
+msgid "Turn off SSL certificate validation."
+msgstr ""
+
+#: templates/settings.php:23
+msgid ""
+"If connection only works with this option, import the LDAP server's SSL "
+"certificate in your ownCloud server."
+msgstr ""
+
+#: templates/settings.php:23
+msgid "Not recommended, use for testing only."
+msgstr ""
+
+#: templates/settings.php:24
+msgid "User Display Name Field"
+msgstr ""
+
+#: templates/settings.php:24
+msgid "The LDAP attribute to use to generate the user`s ownCloud name."
+msgstr ""
+
+#: templates/settings.php:25
+msgid "Group Display Name Field"
+msgstr ""
+
+#: templates/settings.php:25
+msgid "The LDAP attribute to use to generate the groups`s ownCloud name."
+msgstr ""
+
+#: templates/settings.php:27
+msgid "in bytes"
+msgstr ""
+
+#: templates/settings.php:29
+msgid "in seconds. A change empties the cache."
+msgstr ""
+
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
+msgid "Help"
+msgstr ""
diff --git a/l10n/sk_SK/core.po b/l10n/sk_SK/core.po
index 7243bc60945e94cbc5835064594e21665f864297..bcdf41a7d2e49b32a0789c3b5e30e92224ad1785 100644
--- a/l10n/sk_SK/core.po
+++ b/l10n/sk_SK/core.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\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"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -31,59 +31,55 @@ msgstr "Žiadna kategória pre pridanie?"
 msgid "This category already exists: "
 msgstr "Táto kategória už existuje:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Nastavenia"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Január"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Február"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Marec"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Apríl"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Máj"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Jún"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Júl"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "August"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "September"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Október"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "November"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "December"
 
@@ -115,7 +111,7 @@ msgstr "Chyba"
 msgid "ownCloud password reset"
 msgstr "Obnovenie hesla pre ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Použite nasledujúci odkaz pre obnovenie vášho hesla: {link}"
 
@@ -245,7 +241,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:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Odhlásiť"
 
diff --git a/l10n/sk_SK/files.po b/l10n/sk_SK/files.po
index cadb54078e2de0e670375a950f606ea3b7fbd3c7..a9285f4547f51f7839fddd19cb824ce570950a20 100644
--- a/l10n/sk_SK/files.po
+++ b/l10n/sk_SK/files.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\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"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +53,100 @@ msgstr "Zápis na disk sa nepodaril"
 msgid "Files"
 msgstr "Súbory"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Odstrániť"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "generujem ZIP-súbor, môže to chvíľu trvať."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Chyba nahrávania"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Čaká sa"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Nahrávanie zrušené"
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Chybný názov, \"/\" nie je povolené"
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Veľkosť"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Upravené"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "priečinok"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "priečinky"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "súbor"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "súbory"
 
@@ -161,6 +178,10 @@ msgstr "0 znamená neobmedzené"
 msgid "Maximum input size for ZIP files"
 msgstr "Najväčšia veľkosť ZIP súborov"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nový"
@@ -185,36 +206,36 @@ msgstr "Nahrať"
 msgid "Cancel upload"
 msgstr "Zrušiť odosielanie"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Nič tu nie je. Nahrajte niečo!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Meno"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Zdielať"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Stiahnuť"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Nahrávanie príliš veľké"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Súbory sa práve prehľadávajú, prosím čakajte."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Práve prehliadané"
diff --git a/l10n/sk_SK/files_encryption.po b/l10n/sk_SK/files_encryption.po
index c7ae40ae63cc31e4548099bcf9c3867941e7b6aa..a698624cb5d6e34775bcc41e13b97a15e206dcf7 100644
--- a/l10n/sk_SK/files_encryption.po
+++ b/l10n/sk_SK/files_encryption.po
@@ -3,32 +3,33 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <intense.feel@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:33+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-06 02:01+0200\n"
+"PO-Revision-Date: 2012-09-05 17:32+0000\n"
+"Last-Translator: intense <intense.feel@gmail.com>\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"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
 #: templates/settings.php:3
 msgid "Encryption"
-msgstr ""
+msgstr "Šifrovanie"
 
 #: templates/settings.php:4
 msgid "Exclude the following file types from encryption"
-msgstr ""
+msgstr "Vynechať nasledujúce súbory pri šifrovaní"
 
 #: templates/settings.php:5
 msgid "None"
-msgstr ""
+msgstr "Žiadne"
 
 #: templates/settings.php:10
 msgid "Enable Encryption"
-msgstr ""
+msgstr "Zapnúť šifrovanie"
diff --git a/l10n/sk_SK/files_external.po b/l10n/sk_SK/files_external.po
index 99cbb6e3c46db76a92473ccde3753574cd96d796..5c0dd5a8c76fd8a51b36b1ce68a5a403dbf58805 100644
--- a/l10n/sk_SK/files_external.po
+++ b/l10n/sk_SK/files_external.po
@@ -3,80 +3,81 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <intense.feel@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:34+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-07 02:04+0200\n"
+"PO-Revision-Date: 2012-09-06 17:51+0000\n"
+"Last-Translator: intense <intense.feel@gmail.com>\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"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
 #: templates/settings.php:3
 msgid "External Storage"
-msgstr ""
+msgstr "Externé úložisko"
 
 #: templates/settings.php:7 templates/settings.php:19
 msgid "Mount point"
-msgstr ""
+msgstr "Prípojný bod"
 
 #: templates/settings.php:8
 msgid "Backend"
-msgstr ""
+msgstr "Backend"
 
 #: templates/settings.php:9
 msgid "Configuration"
-msgstr ""
+msgstr "Nastavenia"
 
 #: templates/settings.php:10
 msgid "Options"
-msgstr ""
+msgstr "Možnosti"
 
 #: templates/settings.php:11
 msgid "Applicable"
-msgstr ""
+msgstr "Aplikovateľné"
 
 #: templates/settings.php:23
 msgid "Add mount point"
-msgstr ""
+msgstr "Pridať prípojný bod"
 
 #: templates/settings.php:54 templates/settings.php:62
 msgid "None set"
-msgstr ""
+msgstr "Žiadne nastavené"
 
 #: templates/settings.php:63
 msgid "All Users"
-msgstr ""
+msgstr "Všetci užívatelia"
 
 #: templates/settings.php:64
 msgid "Groups"
-msgstr ""
+msgstr "Skupiny"
 
 #: templates/settings.php:69
 msgid "Users"
-msgstr ""
+msgstr "Užívatelia"
 
 #: templates/settings.php:77 templates/settings.php:96
 msgid "Delete"
-msgstr ""
+msgstr "Odstrániť"
 
 #: templates/settings.php:88
 msgid "SSL root certificates"
-msgstr ""
+msgstr "Koreňové SSL certifikáty"
 
 #: templates/settings.php:102
 msgid "Import Root Certificate"
-msgstr ""
+msgstr "Importovať koreňový certifikát"
 
 #: templates/settings.php:108
 msgid "Enable User External Storage"
-msgstr ""
+msgstr "Povoliť externé úložisko"
 
 #: templates/settings.php:109
 msgid "Allow users to mount their own external storage"
-msgstr ""
+msgstr "Povoliť užívateľom pripojiť ich vlastné externé úložisko"
diff --git a/l10n/sk_SK/files_sharing.po b/l10n/sk_SK/files_sharing.po
index 3a4f00533b8692a7d27fd6689937afa9f1c6bfb0..d28ae49cf74d9e9a02d50a6be377cec7880beabd 100644
--- a/l10n/sk_SK/files_sharing.po
+++ b/l10n/sk_SK/files_sharing.po
@@ -3,32 +3,37 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <intense.feel@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-07 02:04+0200\n"
+"PO-Revision-Date: 2012-09-06 17:47+0000\n"
+"Last-Translator: intense <intense.feel@gmail.com>\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"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr ""
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Heslo"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr ""
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Odoslať"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr ""
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Stiahnuť"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr ""
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Žiaden náhľad k dispozícii pre"
+
+#: templates/public.php:25
+msgid "web services under your control"
+msgstr "webové služby pod Vašou kontrolou"
diff --git a/l10n/sk_SK/files_versions.po b/l10n/sk_SK/files_versions.po
index 0b50ad267a9724dca8ec17e53ead655b1dc5497b..0f50826d2b2298fbbf25745cd77aa18f17d97575 100644
--- a/l10n/sk_SK/files_versions.po
+++ b/l10n/sk_SK/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: sk_SK\n"
 "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/sk_SK/lib.po b/l10n/sk_SK/lib.po
index 1e1e954af8952853f9426b52a6d0b2638c4b6e54..b4ffed653791b13ff0fb59253b7c8682176c57e2 100644
--- a/l10n/sk_SK/lib.po
+++ b/l10n/sk_SK/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: sk_SK\n"
 "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/sk_SK/settings.po b/l10n/sk_SK/settings.po
index 8184b8735570adc6b870e7e980ce4e8d16ec772c..952da74548397ef81d06a7b2c3f28df1ec557c72 100644
--- a/l10n/sk_SK/settings.po
+++ b/l10n/sk_SK/settings.po
@@ -10,20 +10,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\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"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Email uložený"
@@ -40,14 +53,28 @@ msgstr "OpenID zmenené"
 msgid "Invalid request"
 msgstr "Neplatná požiadavka"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Jazyk zmenený"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -72,30 +99,85 @@ msgstr "Slovensky"
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Záznam"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Viac"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Pridať vašu aplikáciu"
@@ -109,34 +191,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Pozrite si stránku aplikácie na apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licencované"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "od"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentácia"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Spravovanie veľké súbory"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Opýtajte sa otázku"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problémy spojené s pomocnou databázou."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Prejsť tam ručne."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Odpoveď"
 
diff --git a/l10n/sk_SK/user_ldap.po b/l10n/sk_SK/user_ldap.po
index 1fdd9af1e54144cd4405e0f15de4069ebbcc7454..b0cc8b5a602aea98298a619a32ff1d87713d15a1 100644
--- a/l10n/sk_SK/user_ldap.po
+++ b/l10n/sk_SK/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/sl/core.po b/l10n/sl/core.po
index 78f92f94b4f47003c19995309e205525a921fbfc..66b5310397f135cea4b7c3d945626f51caa45439 100644
--- a/l10n/sl/core.po
+++ b/l10n/sl/core.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -32,59 +32,55 @@ msgstr "Ni kategorije za dodajanje?"
 msgid "This category already exists: "
 msgstr "Ta kategorija že obstaja:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Nastavitve"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "januar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "februar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "marec"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "april"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "maj"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "junij"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "julij"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "avgust"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "september"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "oktober"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "november"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "december"
 
@@ -116,7 +112,7 @@ msgstr "Napaka"
 msgid "ownCloud password reset"
 msgstr "Ponastavitev gesla ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Uporabite sledečo povezavo za ponastavitev gesla: {link}"
 
@@ -232,7 +228,7 @@ msgstr "Ime podatkovne zbirke"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Razpredelnica podatkovne zbirke"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -246,7 +242,7 @@ msgstr "Dokončaj namestitev"
 msgid "web services under your control"
 msgstr "spletne storitve pod vašim nadzorom"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Odjava"
 
diff --git a/l10n/sl/files.po b/l10n/sl/files.po
index 11c8ef180459098fe705ccea93ad2e5723cdbca9..4f9fad5d5fe5ab6b5086cd2a2d07ac36f64825b3 100644
--- a/l10n/sl/files.po
+++ b/l10n/sl/files.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 07:24+0000\n"
+"Last-Translator: Peter Peroša <peter.perosa@gmail.com>\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"
+"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -54,83 +54,100 @@ msgstr "Pisanje na disk je spodletelo"
 msgid "Files"
 msgstr "Datoteke"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Odstrani iz souporabe"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Izbriši"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "že obstaja"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "nadomesti"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "predlagaj ime"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "ekliči"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "nadomeščen"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "razveljavi"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "z"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "razveljavi"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "odstranjeno iz souporabe"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "izbrisano"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "Ustvarjam ZIP datoteko. To lahko traja nekaj časa."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "Nalaganje ni mogoče, saj gre za mapo, ali pa ima datoteka velikost 0 bajtov."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Napaka pri nalaganju"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Na čakanju"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Nalaganje je bilo preklicano."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr "Nalaganje datoteke je v teku. Če zapustite to stran zdaj, boste nalaganje preklicali."
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Neveljavno ime. Znak '/' ni dovoljen."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Velikost"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Spremenjeno"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "mapa"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "mape"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "datoteka"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "datoteke"
 
@@ -162,6 +179,10 @@ msgstr "0 je neskončno"
 msgid "Maximum input size for ZIP files"
 msgstr "Največja vhodna velikost za ZIP datoteke"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Shrani"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Nova"
@@ -186,36 +207,36 @@ msgstr "Naloži"
 msgid "Cancel upload"
 msgstr "Prekliči nalaganje"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Tukaj ni ničesar. Naložite kaj!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Ime"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Souporaba"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Prenesi"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Nalaganje ni mogoče, ker je preveliko"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Preiskujem datoteke, prosimo počakajte."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Trenutno preiskujem"
diff --git a/l10n/sl/files_sharing.po b/l10n/sl/files_sharing.po
index c16a622861b2db73037c50415aaaeecbb3117566..54b84f8ba130aebd7c6c3199210a0dd3aaf2cd90 100644
--- a/l10n/sl/files_sharing.po
+++ b/l10n/sl/files_sharing.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-27 12:28+0000\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-08-31 14:15+0000\n"
 "Last-Translator: Peter Peroša <peter.perosa@gmail.com>\n"
 "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n"
 "MIME-Version: 1.0\n"
@@ -18,18 +18,22 @@ 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"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Velikost"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Geslo"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Spremenjeno"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Pošlji"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Izbriši vse"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Prenesi"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Izbriši"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Predogled ni na voljo za"
+
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr "spletne storitve pod vašim nadzorom"
diff --git a/l10n/sl/files_versions.po b/l10n/sl/files_versions.po
index 5e6bbbb485957ada79f751b5eab31a3b17fa205c..d37dc15d09e1c3a35e2210c3e7a210b8617255b5 100644
--- a/l10n/sl/files_versions.po
+++ b/l10n/sl/files_versions.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-16 02:04+0200\n"
-"PO-Revision-Date: 2012-08-15 00:25+0000\n"
+"POT-Creation-Date: 2012-09-03 02:04+0200\n"
+"PO-Revision-Date: 2012-09-02 02:04+0000\n"
 "Last-Translator: Peter Peroša <peter.perosa@gmail.com>\n"
 "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n"
 "MIME-Version: 1.0\n"
@@ -18,10 +18,18 @@ 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"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Zastaraj vse različice"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Različice"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "To bo izbrisalo vse obstoječe različice varnostnih kopij vaših datotek"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Omogoči sledenje različicam datotek"
diff --git a/l10n/sl/lib.po b/l10n/sl/lib.po
index 58fda3686903dd5af3d2472936e76f9a2aba726d..c94a108ee3d02c51a556156d9cfa515645f3c795 100644
--- a/l10n/sl/lib.po
+++ b/l10n/sl/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-22 02:04+0200\n"
-"PO-Revision-Date: 2012-08-21 13:10+0000\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 09:04+0000\n"
 "Last-Translator: Peter Peroša <peter.perosa@gmail.com>\n"
 "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n"
 "MIME-Version: 1.0\n"
@@ -42,19 +42,19 @@ msgstr "Aplikacije"
 msgid "Admin"
 msgstr "Skrbnik"
 
-#: files.php:276
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "ZIP prenos je onemogočen."
 
-#: files.php:277
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Datoteke morajo biti prenešene posamezno."
 
-#: files.php:277 files.php:302
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Nazaj na datoteke"
 
-#: files.php:301
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "Izbrane datoteke so prevelike, da bi lahko ustvarili zip datoteko."
 
@@ -111,3 +111,16 @@ msgstr "lani"
 #: template.php:97
 msgid "years ago"
 msgstr "let nazaj"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s je na voljo. <a href=\"%s\">Več informacij.</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "ažuren"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "preverjanje za posodobitve je onemogočeno"
diff --git a/l10n/sl/settings.po b/l10n/sl/settings.po
index 32ff133a37f13c91125a8df81e01ee325813ccae..bd1e022b7d633e028bfbb2f9be5c4af72521ae71 100644
--- a/l10n/sl/settings.po
+++ b/l10n/sl/settings.po
@@ -10,20 +10,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-19 02:02+0200\n"
-"PO-Revision-Date: 2012-08-18 13:08+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 06:02+0000\n"
 "Last-Translator: Peter Peroša <peter.perosa@gmail.com>\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"
+"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Ne morem naložiti seznama iz App Store"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Napaka overitve"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Skupina že obstaja"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Ni mogoče dodati skupine"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "E-poštni naslov je bil shranjen"
@@ -40,14 +53,28 @@ msgstr "OpenID je bil spremenjen"
 msgid "Invalid request"
 msgstr "Neveljaven zahtevek"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Napaka overitve"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Ni mogoče izbrisati skupine"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Ni mogoče izbrisati uporabnika"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Jezik je bil spremenjen"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Uporabnika ni mogoče dodati k skupini %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Uporabnika ni mogoče odstraniti iz skupine %s"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Napaka"
@@ -72,30 +99,85 @@ msgstr "__ime_jezika__"
 msgid "Security Warning"
 msgstr "Varnostno opozorilo"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "Vaša mapa data in vaše datoteke so verjetno vsem dostopne preko interneta. Datoteka .htaccess vključena v ownCloud ni omogočena. Močno vam priporočamo, da nastavite vaš spletni strežnik tako, da mapa data ne bo več na voljo vsem, ali pa jo preselite izven korenske mape spletnega strežnika."
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Periodično opravilo"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "izvedi eno nalogo z vsako naloženo stranjo"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php je vpisan na storitev webcron"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "uporabi sistemski servis za periodična opravila"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "API souporabe"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Omogoči API souporabe"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Dovoli aplikacijam uporabo API-ja souporabe"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Dovoli povezave"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Uporabnikom dovoli souporabo z javnimi povezavami"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Dovoli nadaljnjo souporabo"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Uporabnikom dovoli nadaljnjo souporabo"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Uporabnikom dovoli souporabo s komerkoli"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Uporabnikom dovoli souporabo le znotraj njihove skupine"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Dnevnik"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Več"
 
+#: templates/admin.php:105
+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 "Razvit s strani <a href=\"http://ownCloud.org/contact\" target=\"_blank\">skupnosti ownCloud</a>. <a href=\"https://github.com/owncloud\" target=\"_blank\">Izvorna koda</a> je izdana pod licenco <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Dodajte vašo aplikacijo"
@@ -109,34 +191,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Obiščite spletno stran aplikacije na apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licencirana"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "s strani"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-licencirana s strani <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentacija"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Upravljanje velikih datotek"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Postavi vprašanje"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Težave pri povezovanju s podatkovno zbirko pomoči."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Pojdi tja ročno."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Odgovor"
 
diff --git a/l10n/sl/user_ldap.po b/l10n/sl/user_ldap.po
index c405fb64d9e6227f12d2de168a3b0152cdfe00b7..f8ab6ff3ac001305c43db89dc774a9f0be862685 100644
--- a/l10n/sl/user_ldap.po
+++ b/l10n/sl/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: 2012-08-22 02:04+0200\n"
-"PO-Revision-Date: 2012-08-21 11:45+0000\n"
+"POT-Creation-Date: 2012-08-30 02:02+0200\n"
+"PO-Revision-Date: 2012-08-29 06:02+0000\n"
 "Last-Translator: Peter Peroša <peter.perosa@gmail.com>\n"
 "Language-Team: Slovenian (http://www.transifex.com/projects/p/owncloud/language/sl/)\n"
 "MIME-Version: 1.0\n"
@@ -160,6 +160,12 @@ msgstr "v bajtih"
 msgid "in seconds. A change empties the cache."
 msgstr "v sekundah. Sprememba izprazni predpomnilnik."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+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 LDAP/AD atribut."
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr "Pomoč"
diff --git a/l10n/so/core.po b/l10n/so/core.po
index 0dd2a3f54e96880dede085c819f5c5a25b2ebc1e..f34edceab57890de0d12b42b9da4b652420f4832 100644
--- a/l10n/so/core.po
+++ b/l10n/so/core.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Somali (http://www.transifex.com/projects/p/owncloud/language/so/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: so\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -29,59 +29,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -113,7 +109,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr ""
 
@@ -243,7 +239,7 @@ msgstr ""
 msgid "web services under your control"
 msgstr ""
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr ""
 
diff --git a/l10n/so/files.po b/l10n/so/files.po
index 576444ca8ee5bb17d0c3875a75989418055cf5dd..f168f0b775ae6f2abf0a3494bd36026372d9040a 100644
--- a/l10n/so/files.po
+++ b/l10n/so/files.po
@@ -7,15 +7,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Somali (http://www.transifex.com/projects/p/owncloud/language/so/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: so\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -51,83 +51,100 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr ""
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -159,6 +176,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr ""
@@ -183,36 +204,36 @@ msgstr ""
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr ""
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr ""
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr ""
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr ""
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr ""
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/so/files_sharing.po b/l10n/so/files_sharing.po
index c05e0f049babc0c68b827e95bbf0f7a14c4863c7..dbbd4da2842faf70335f1f95bd3562d910a1dca8 100644
--- a/l10n/so/files_sharing.po
+++ b/l10n/so/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:04+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Somali (http://www.transifex.com/projects/p/owncloud/language/so/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: so\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/so/files_versions.po b/l10n/so/files_versions.po
index 0c1f4e95a6e173da8b222722e461e7446a5c9a17..ce768ee5ce56d765799d3b1d5034533748a87160 100644
--- a/l10n/so/files_versions.po
+++ b/l10n/so/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Somali (http://www.transifex.com/projects/p/owncloud/language/so/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: so\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/so/lib.po b/l10n/so/lib.po
index a9d32f6949986ade79bfd271681543c82166ae25..0b922ce5c764a1808b8558e9e01ce3f461416ff9 100644
--- a/l10n/so/lib.po
+++ b/l10n/so/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Somali (http://www.transifex.com/projects/p/owncloud/language/so/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: so\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/so/settings.po b/l10n/so/settings.po
index bc0ef8b76cb55fb7d6b7ce4fe9e6782ab7ee52eb..8ed5f9eb2215abfa66bfa3daecf557c65f09c78c 100644
--- a/l10n/so/settings.po
+++ b/l10n/so/settings.po
@@ -7,20 +7,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Somali (http://www.transifex.com/projects/p/owncloud/language/so/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: so\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -37,14 +50,28 @@ msgstr ""
 msgid "Invalid request"
 msgstr ""
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr ""
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -69,30 +96,85 @@ msgstr ""
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -106,34 +188,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr ""
-
-#: templates/apps.php:30
-msgid "by"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
 msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr ""
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr ""
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr ""
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr ""
 
diff --git a/l10n/so/user_ldap.po b/l10n/so/user_ldap.po
index bf35a13096a3acf066e084955d453a5fdfc18689..b4103a6c6ded2bee4867502f53ea82021e55d577 100644
--- a/l10n/so/user_ldap.po
+++ b/l10n/so/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Somali (http://www.transifex.com/projects/p/owncloud/language/so/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/sr/core.po b/l10n/sr/core.po
index 21174c99ade47f6b87c6d3074f6f393c70b72fd1..2e4f99fe345536462808ee443f4e3e00e8863c1c 100644
--- a/l10n/sr/core.po
+++ b/l10n/sr/core.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -30,59 +30,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Подешавања"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -114,7 +110,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Овом везом ресетујте своју лозинку: {link}"
 
@@ -244,7 +240,7 @@ msgstr "Заврши подешавање"
 msgid "web services under your control"
 msgstr "веб сервиси под контролом"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Одјава"
 
diff --git a/l10n/sr/files.po b/l10n/sr/files.po
index f8aaefdd550c96b795b7d2ce810361508ccd49de..8874f6a4db5570780f7afe16aef0f2d84eb491c2 100644
--- a/l10n/sr/files.po
+++ b/l10n/sr/files.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -52,83 +52,100 @@ msgstr ""
 msgid "Files"
 msgstr "Фајлови"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Обриши"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Величина"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Задња измена"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -160,6 +177,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Нови"
@@ -184,36 +205,36 @@ msgstr "Пошаљи"
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Овде нема ничег. Пошаљите нешто!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Име"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Преузми"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Пошиљка је превелика"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "Фајлови које желите да пошаљете превазилазе ограничење максималне величине пошиљке на овом серверу."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/sr/files_sharing.po b/l10n/sr/files_sharing.po
index b7dbb671d278d9d0fdc77954cf3dc29d53456c72..c1bbe16e93912f073af20d37458d97d14ace2f73 100644
--- a/l10n/sr/files_sharing.po
+++ b/l10n/sr/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Serbian (http://www.transifex.com/projects/p/owncloud/language/sr/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ 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"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/sr/files_versions.po b/l10n/sr/files_versions.po
index e25e3766f30a9d5b4a10e24ad4e23c5310cff5a7..b252793ef856ca777d410a83b85488834c93c19d 100644
--- a/l10n/sr/files_versions.po
+++ b/l10n/sr/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ 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"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/sr/lib.po b/l10n/sr/lib.po
index 2ee133933bf5de951b2c4f9e08ae7e516152671c..f8fa96c4864bcbcfca9745ff5bb964ce2a2ed39b 100644
--- a/l10n/sr/lib.po
+++ b/l10n/sr/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ 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:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/sr/settings.po b/l10n/sr/settings.po
index 58e3af2ba447e1547f97f92c26144a96857eea06..bccf5024d34e4e447bb2553afd6c81e0bb12f218 100644
--- a/l10n/sr/settings.po
+++ b/l10n/sr/settings.po
@@ -8,20 +8,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -38,14 +51,28 @@ msgstr "OpenID је измењен"
 msgid "Invalid request"
 msgstr "Неисправан захтев"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Језик је измењен"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -70,30 +97,85 @@ msgstr ""
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -107,34 +189,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-лиценциран"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "од"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Поставите питање"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Проблем у повезивању са базом помоћи"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Отиђите тамо ручно."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Одговор"
 
diff --git a/l10n/sr/user_ldap.po b/l10n/sr/user_ldap.po
index 4e3f01a3b620e38772644299c4df03b3bd3c76b9..eaf9622b4f7c48aa59fc71d920df8b5d18479991 100644
--- a/l10n/sr/user_ldap.po
+++ b/l10n/sr/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/sr@latin/core.po b/l10n/sr@latin/core.po
index 49a960b4b6fec6e1a0a562b8153f01d21ce2665a..c3541b058aa7c981aea8546685e31c999bcac03b 100644
--- a/l10n/sr@latin/core.po
+++ b/l10n/sr@latin/core.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -30,59 +30,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Podešavanja"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr ""
 
@@ -114,7 +110,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr ""
 
@@ -244,7 +240,7 @@ msgstr "Završi podešavanje"
 msgid "web services under your control"
 msgstr ""
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Odjava"
 
diff --git a/l10n/sr@latin/files.po b/l10n/sr@latin/files.po
index b72a13bcbbc2c205d98b100e4ce8e7b5e848d03d..11f37da7d15debbca36d68dd637656f16fbc4339 100644
--- a/l10n/sr@latin/files.po
+++ b/l10n/sr@latin/files.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -52,83 +52,100 @@ msgstr ""
 msgid "Files"
 msgstr "Fajlovi"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Obriši"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Veličina"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Zadnja izmena"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -160,6 +177,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr ""
@@ -184,36 +205,36 @@ msgstr "Pošalji"
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Ovde nema ničeg. Pošaljite nešto!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Ime"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Preuzmi"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Pošiljka je prevelika"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/sr@latin/files_sharing.po b/l10n/sr@latin/files_sharing.po
index 4f3a03c203e0c0e9cac8446ae02c367ac758f4b6..7536a9cba885245aa43e70b0b34b21dd915c97b2 100644
--- a/l10n/sr@latin/files_sharing.po
+++ b/l10n/sr@latin/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Serbian (Latin) (http://www.transifex.com/projects/p/owncloud/language/sr@latin/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ 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"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/sr@latin/files_versions.po b/l10n/sr@latin/files_versions.po
index 5fae2a88e1dd20acc29088163386e70489f2bb3a..23dcd4309885786ac4371153ae562dcf9a12b124 100644
--- a/l10n/sr@latin/files_versions.po
+++ b/l10n/sr@latin/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ 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"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/sr@latin/lib.po b/l10n/sr@latin/lib.po
index 7b9a1d577a73f1fcdba834337812c9317baa50cd..8c7d9b18bd87ee7ecd2530c4ecda7dd744af5e06 100644
--- a/l10n/sr@latin/lib.po
+++ b/l10n/sr@latin/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ 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"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/sr@latin/settings.po b/l10n/sr@latin/settings.po
index 75b8006fa26e756737c53fe385cc76929e3c6908..4e8ca925401dcde5a7b95076ca584751df7e77cc 100644
--- a/l10n/sr@latin/settings.po
+++ b/l10n/sr@latin/settings.po
@@ -8,20 +8,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -38,14 +51,28 @@ msgstr "OpenID je izmenjen"
 msgid "Invalid request"
 msgstr "Neispravan zahtev"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Jezik je izmenjen"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -70,30 +97,85 @@ msgstr ""
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -107,34 +189,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licenciran"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "od"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Postavite pitanje"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problem u povezivanju sa bazom pomoći"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Otiđite tamo ručno."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Odgovor"
 
diff --git a/l10n/sr@latin/user_ldap.po b/l10n/sr@latin/user_ldap.po
index c37681c12180a87c2824e118fd1632c4fe3babc6..6f56c8e03d0101b78a709aa204441b716b15ec80 100644
--- a/l10n/sr@latin/user_ldap.po
+++ b/l10n/sr@latin/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/sv/core.po b/l10n/sv/core.po
index c02cb098c207131fb15fb3bb41ffa914df1ded05..57ad5c15e418ad51c4c74da3e70719c0fb99bcee 100644
--- a/l10n/sv/core.po
+++ b/l10n/sv/core.po
@@ -13,15 +13,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -35,59 +35,55 @@ msgstr "Ingen kategori att lägga till?"
 msgid "This category already exists: "
 msgstr "Denna kategori finns redan:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Inställningar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Januari"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Februari"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Mars"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "April"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Maj"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Juni"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Juli"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Augusti"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "September"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Oktober"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "November"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "December"
 
@@ -119,7 +115,7 @@ msgstr "Fel"
 msgid "ownCloud password reset"
 msgstr "ownCloud lösenordsåterställning"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Använd följande länk för att återställa lösenordet: {link}"
 
@@ -235,7 +231,7 @@ msgstr "Databasnamn"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Databas tabellutrymme"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -249,7 +245,7 @@ msgstr "Avsluta installation"
 msgid "web services under your control"
 msgstr "webbtjänster under din kontroll"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Logga ut"
 
diff --git a/l10n/sv/files.po b/l10n/sv/files.po
index 14004c7faea826093a3bb1e5277454cf4a499512..53d2e5a81a90670ba7702758a4e59fca08697f29 100644
--- a/l10n/sv/files.po
+++ b/l10n/sv/files.po
@@ -13,15 +13,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-22 02:04+0200\n"
-"PO-Revision-Date: 2012-08-21 08:24+0000\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 12:05+0000\n"
 "Last-Translator: Magnus Höglund <magnus@linux.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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: sv\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -57,83 +57,100 @@ msgstr "Misslyckades spara till disk"
 msgid "Files"
 msgstr "Filer"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Sluta dela"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Radera"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "finns redan"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "ersätt"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "föreslå namn"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "avbryt"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "ersatt"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "ångra"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "med"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "ångra"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "Ej delad"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "raderad"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "genererar ZIP-fil, det kan ta lite tid."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Uppladdningsfel"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Väntar"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Uppladdning avbruten."
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Ogiltigt namn, '/' är inte tillåten."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Storlek"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Ändrad"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "mapp"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "mappar"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "fil"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "filer"
 
@@ -165,6 +182,10 @@ msgstr "0 är oändligt"
 msgid "Maximum input size for ZIP files"
 msgstr "Största tillåtna storlek för ZIP-filer"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Spara"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Ny"
@@ -189,36 +210,36 @@ msgstr "Ladda upp"
 msgid "Cancel upload"
 msgstr "Avbryt uppladdning"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Ingenting här. Ladda upp något!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Namn"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Dela"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Ladda ner"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "För stor uppladdning"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Filer skannas, var god vänta"
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Aktuell skanning"
diff --git a/l10n/sv/files_sharing.po b/l10n/sv/files_sharing.po
index dada4f4e79b931d6609117be017042b29ad9d4d8..1888512788beca3eba083ca12ab8a01684721187 100644
--- a/l10n/sv/files_sharing.po
+++ b/l10n/sv/files_sharing.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-08-31 08:24+0000\n"
+"Last-Translator: Magnus Höglund <magnus@linux.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"
@@ -18,18 +18,22 @@ msgstr ""
 "Language: sv\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "Storlek"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Lösenord"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "Ändrad"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Skicka"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "Radera alla"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Ladda ner"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "Radera"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Ingen förhandsgranskning tillgänglig för"
+
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr "webbtjänster under din kontroll"
diff --git a/l10n/sv/files_versions.po b/l10n/sv/files_versions.po
index f33072ac6d93b6c7a6883dccce866d68029e9195..29af9f4e970242a13ea9894cc0cb57060efb8d31 100644
--- a/l10n/sv/files_versions.po
+++ b/l10n/sv/files_versions.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-13 10:33+0000\n"
+"POT-Creation-Date: 2012-09-03 02:04+0200\n"
+"PO-Revision-Date: 2012-09-02 09:50+0000\n"
 "Last-Translator: Magnus Höglund <magnus@linux.com>\n"
 "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n"
 "MIME-Version: 1.0\n"
@@ -18,10 +18,18 @@ msgstr ""
 "Language: sv\n"
 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "Upphör alla versioner"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Versioner"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Detta kommer att radera alla befintliga säkerhetskopior av dina filer"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "Aktivera versionshantering"
diff --git a/l10n/sv/lib.po b/l10n/sv/lib.po
index b4e0a3e865615110384da98ba0d44c4911bd4482..088f184b99957cb296c5bb5a3d753a62aad61e41 100644
--- a/l10n/sv/lib.po
+++ b/l10n/sv/lib.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-22 02:04+0200\n"
-"PO-Revision-Date: 2012-08-21 08:40+0000\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 10:13+0000\n"
 "Last-Translator: Magnus Höglund <magnus@linux.com>\n"
 "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n"
 "MIME-Version: 1.0\n"
@@ -43,19 +43,19 @@ msgstr "Program"
 msgid "Admin"
 msgstr "Admin"
 
-#: files.php:276
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "Nerladdning av ZIP är avstängd."
 
-#: files.php:277
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Filer laddas ner en åt gången."
 
-#: files.php:277 files.php:302
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Tillbaka till Filer"
 
-#: files.php:301
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "Valda filer är för stora för att skapa zip-fil."
 
@@ -112,3 +112,16 @@ msgstr "förra året"
 #: template.php:97
 msgid "years ago"
 msgstr "år sedan"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s finns. Få <a href=\"%s\">mer information</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "uppdaterad"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "uppdateringskontroll är inaktiverad"
diff --git a/l10n/sv/settings.po b/l10n/sv/settings.po
index f764a35f035708382db3a7c2e8b009f4b0f7e330..f93b1f0f3c70b5800a0c1cfd8da82221769334fe 100644
--- a/l10n/sv/settings.po
+++ b/l10n/sv/settings.po
@@ -14,20 +14,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-22 06:21+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 06:05+0000\n"
 "Last-Translator: Magnus Höglund <magnus@linux.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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: sv\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "Kan inte ladda listan från App Store"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Autentiseringsfel"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Gruppen finns redan"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Kan inte lägga till grupp"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "E-post sparad"
@@ -44,14 +57,28 @@ msgstr "OpenID ändrat"
 msgid "Invalid request"
 msgstr "Ogiltig begäran"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Autentiseringsfel"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Kan inte radera grupp"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Kan inte radera användare"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Språk ändrades"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Kan inte lägga till användare i gruppen %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "Kan inte radera användare från gruppen %s"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "Fel"
@@ -76,30 +103,85 @@ msgstr "__language_name__"
 msgid "Security Warning"
 msgstr "Säkerhetsvarning"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "Din datamapp och dina filer kan möjligen vara nåbara från internet. Filen .htaccess som ownCloud tillhandahåller fungerar inte. Vi rekommenderar starkt att du ställer in din webbserver på ett sätt så att datamappen inte är nåbar. Alternativt att ni flyttar datamappen utanför webbservern."
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "utför en uppgift vid varje sidladdning"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php är registrerad på en webcron-tjänst"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "använd systemets cron-tjänst"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "Delat API"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Aktivera delat API"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Tillåt applikationer att använda delat API"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Tillåt länkar"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Tillåt delning till allmänheten via publika länkar"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Tillåt dela vidare"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Tillåt användare att dela vidare filer som delats med dom"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Tillåt delning med alla"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Tillåt bara delning med användare i egna grupper"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Logg"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Mera"
 
+#: templates/admin.php:105
+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 "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>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Lägg till din applikation"
@@ -113,34 +195,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Se programsida på apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-licensierat"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "av"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-licensierad av <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dokumentation"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Hantering av stora filer"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Ställ en fråga"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Problem med att ansluta till hjälpdatabasen."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Gå dit manuellt."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Svar"
 
diff --git a/l10n/sv/user_ldap.po b/l10n/sv/user_ldap.po
index 55f7bbecf97ae6cd6a2816b99554b1aae14be8de..5bab62c034219690c5f29e8b3a5ec895da59e765 100644
--- a/l10n/sv/user_ldap.po
+++ b/l10n/sv/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: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-13 12:33+0000\n"
+"POT-Creation-Date: 2012-08-30 02:02+0200\n"
+"PO-Revision-Date: 2012-08-29 09:37+0000\n"
 "Last-Translator: Magnus Höglund <magnus@linux.com>\n"
 "Language-Team: Swedish (http://www.transifex.com/projects/p/owncloud/language/sv/)\n"
 "MIME-Version: 1.0\n"
@@ -160,6 +160,12 @@ msgstr "i bytes"
 msgid "in seconds. A change empties the cache."
 msgstr "i sekunder. En förändring tömmer cache."
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+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:32
 msgid "Help"
 msgstr "Hjälp"
diff --git a/l10n/templates/core.pot b/l10n/templates/core.pot
index e1734c27a3e9780e66a4ff61c0f84647d7c5bf6a..13cf5608b96e05a8b7468bd3c12657caf5c721ff 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: 2012-08-28 02:01+0200\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\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"
@@ -29,59 +29,55 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:214 templates/layout.user.php:54 templates/layout.user.php:55
 msgid "Settings"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:642
 msgid "January"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:642
 msgid "February"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:642
 msgid "March"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:642
 msgid "April"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:642
 msgid "May"
 msgstr ""
 
-#: js/js.js:575
+#: js/js.js:642
 msgid "June"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:643
 msgid "July"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:643
 msgid "August"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:643
 msgid "September"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:643
 msgid "October"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:643
 msgid "November"
 msgstr ""
 
-#: js/js.js:576
+#: js/js.js:643
 msgid "December"
 msgstr ""
 
@@ -113,7 +109,7 @@ msgstr ""
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr ""
 
@@ -239,11 +235,11 @@ msgstr ""
 msgid "Finish setup"
 msgstr ""
 
-#: templates/layout.guest.php:42
+#: templates/layout.guest.php:36
 msgid "web services under your control"
 msgstr ""
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:39
 msgid "Log out"
 msgstr ""
 
diff --git a/l10n/templates/files.pot b/l10n/templates/files.pot
index 752e31fd7cc0e2873da524856c4c06f9f220d8ec..ea363823aa58766bf7ffa85b4b116e7e3d71da62 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: 2012-08-28 02:01+0200\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\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"
@@ -51,83 +51,100 @@ msgstr ""
 msgid "Files"
 msgstr ""
 
-#: js/fileactions.js:111 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr ""
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr ""
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr ""
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr ""
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr ""
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr ""
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -159,6 +176,10 @@ msgstr ""
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr ""
@@ -183,36 +204,36 @@ msgstr ""
 msgid "Cancel upload"
 msgstr ""
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr ""
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr ""
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr ""
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr ""
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr ""
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr ""
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr ""
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr ""
diff --git a/l10n/templates/files_encryption.pot b/l10n/templates/files_encryption.pot
index 27c7446cb47eb0dc4e1bd0845c5822c09aea81ec..02737458e0e4f70fb99a24133588af1c8fa0cb48 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: 2012-08-28 02:01+0200\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\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 e4e7f18c218958f2272705e9cc2fb64277f29836..75f49385fdbbd45c2470010a2b7a330a69d4ba6c 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: 2012-08-28 02:01+0200\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\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_sharing.pot b/l10n/templates/files_sharing.pot
index 9cfb951daf04635cc1cae1e363aae95b68c1fd54..2eec3ef024761376090c67820992ed64d851a7b6 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: 2012-08-28 02:01+0200\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\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,18 +17,22 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:25
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/templates/files_versions.pot b/l10n/templates/files_versions.pot
index d50826056ba851a45ef2c9ad217e6d71a2d2794e..7bc25825f9122cada2f72769c2123078dcb81321 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: 2012-08-28 02:01+0200\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\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,10 +17,18 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/templates/lib.pot b/l10n/templates/lib.pot
index ac7b81d36f157406f70c23c1cb433b76144b389b..c1f018d3ecbf5c8dd3049cb60efa0b65a286cab1 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: 2012-08-28 02:01+0200\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\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,43 +17,43 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: app.php:288
+#: app.php:285
 msgid "Help"
 msgstr ""
 
-#: app.php:295
+#: app.php:292
 msgid "Personal"
 msgstr ""
 
-#: app.php:300
+#: app.php:297
 msgid "Settings"
 msgstr ""
 
-#: app.php:305
+#: app.php:302
 msgid "Users"
 msgstr ""
 
-#: app.php:312
+#: app.php:309
 msgid "Apps"
 msgstr ""
 
-#: app.php:314
+#: app.php:311
 msgid "Admin"
 msgstr ""
 
-#: files.php:276
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:277
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:277 files.php:302
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:301
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -69,44 +69,57 @@ msgstr ""
 msgid "Token expired. Please reload page."
 msgstr ""
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
 msgstr ""
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
 msgstr ""
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
 msgstr ""
 
-#: template.php:91
+#: template.php:92
 msgid "today"
 msgstr ""
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
 msgstr ""
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
 msgstr ""
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
 msgstr ""
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
 msgstr ""
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
 msgstr ""
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/templates/settings.pot b/l10n/templates/settings.pot
index 4e40d1bc9683820eb86f96cb46c8ec00f12cef16..33da8992be4144ef91b6ee0f649bb32892dc3d59 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: 2012-08-28 02:01+0200\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\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"
@@ -21,6 +21,19 @@ msgstr ""
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -37,14 +50,28 @@ msgstr ""
 msgid "Invalid request"
 msgstr ""
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr ""
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -69,30 +96,84 @@ msgstr ""
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -106,34 +187,31 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr ""
-
-#: templates/apps.php:30
-msgid "by"
+msgid ""
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
 msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr ""
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr ""
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr ""
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr ""
 
diff --git a/l10n/templates/user_ldap.pot b/l10n/templates/user_ldap.pot
index f84f2d1141e62c869e87857659b19b7975c0735a..86f79b98fce1c0df07e2c346cad1ace46e3bd11d 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: 2012-08-28 02:01+0200\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\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"
@@ -158,6 +158,11 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/th_TH/core.po b/l10n/th_TH/core.po
index 0a1fad25bdb321878a0cbdf1b5cace404a31b419..57ee6a0d22992aa6790e9a58c387a7bc28a4f8cb 100644
--- a/l10n/th_TH/core.po
+++ b/l10n/th_TH/core.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -31,59 +31,55 @@ msgstr "ไม่มีหมวดหมู่ที่ต้องการเ
 msgid "This category already exists: "
 msgstr "หมวดหมู่นี้มีอยู่แล้ว: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "ตั้งค่า"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "มกราคม"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "กุมภาพันธ์"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "มีนาคม"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "เมษายน"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "พฤษภาคม"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "มิถุนายน"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "กรกฏาคม"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "สิงหาคม"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "กันยายน"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "ตุลาคม"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "พฤศจิกายน"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "ธันวาคม"
 
@@ -115,7 +111,7 @@ msgstr "พบข้อผิดพลาด"
 msgid "ownCloud password reset"
 msgstr "รีเซ็ตรหัสผ่าน ownCloud"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "ใช้ลิงค์ต่อไปนี้เพื่อเปลี่ยนรหัสผ่านของคุณใหม่: {link}"
 
@@ -231,7 +227,7 @@ msgstr "ชื่อฐานข้อมูล"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "พื้นที่ตารางในฐานข้อมูล"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -245,7 +241,7 @@ msgstr "ติดตั้งเรียบร้อยแล้ว"
 msgid "web services under your control"
 msgstr "web services under your control"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "ออกจากระบบ"
 
diff --git a/l10n/th_TH/files.po b/l10n/th_TH/files.po
index 773e125153f3f5851118f8c7322f6797041111df..1ade0abea9b5b17c5df6e30c10f5142fccae5cb2 100644
--- a/l10n/th_TH/files.po
+++ b/l10n/th_TH/files.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-09 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 03:31+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: th_TH\n"
-"Plural-Forms: nplurals=1; plural=0\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +53,100 @@ msgstr "เขียนข้อมูลลงแผ่นดิสก์ล้
 msgid "Files"
 msgstr "ไฟล์"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "ยกเลิกการแชร์ข้อมูล"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "ลบ"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "มีอยู่แล้ว"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "แทนที่"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "แนะนำชื่อ"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "ยกเลิก"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "แทนที่แล้ว"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "เลิกทำ"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "กับ"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "เลิกทำ"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr "ยกเลิกการแชร์ข้อมูลแล้ว"
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "ลบแล้ว"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "กำลังสร้างไฟล์บีบอัด ZIP อาจใช้เวลาสักครู่"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "ไม่สามารถอัพโหลดไฟล์ของคุณได้ เนื่องจากไฟล์ดังกล่าวเป็นไดเร็กทอรี่หรือมีขนาด 0 ไบต์"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "เกิดข้อผิดพลาดในการอัพโหลด"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "อยู่ระหว่างดำเนินการ"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "การอัพโหลดถูกยกเลิก"
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr "การอัพโหลดไฟล์กำลังอยู่ในระหว่างดำเนินการ การออกจากหน้าเว็บนี้จะทำให้การอัพโหลดถูกยกเลิก"
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "ชื่อที่ใช้ไม่ถูกต้อง '/' ไม่อนุญาตให้ใช้งาน"
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "ขนาด"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "ปรับปรุงล่าสุด"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "โฟลเดอร์"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "โฟลเดอร์"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "ไฟล์"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "ไฟล์"
 
@@ -161,6 +178,10 @@ msgstr "0 หมายถึงไม่จำกัด"
 msgid "Maximum input size for ZIP files"
 msgstr "ขนาดไฟล์ ZIP สูงสุด"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "บันทึก"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "อัพโหลดไฟล์ใหม่"
@@ -185,36 +206,36 @@ msgstr "อัพโหลด"
 msgid "Cancel upload"
 msgstr "ยกเลิกการอัพโหลด"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "ยังไม่มีไฟล์ใดๆอยู่ที่นี่ กรุณาอัพโหลดไฟล์!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "ชื่อ"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "แชร์"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "ดาวน์โหลด"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "ไฟล์ที่อัพโหลดมีขนาดใหญ่เกินไป"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "ไฟล์ที่คุณพยายามที่จะอัพโหลดมีขนาดเกินกว่าขนาดสูงสุดที่กำหนดไว้ให้อัพโหลดได้สำหรับเซิร์ฟเวอร์นี้"
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "ไฟล์กำลังอยู่ระหว่างการสแกน, กรุณารอสักครู่."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "ไฟล์ที่กำลังสแกนอยู่ขณะนี้"
diff --git a/l10n/th_TH/files_sharing.po b/l10n/th_TH/files_sharing.po
index 6e5fafa72c66db7cb0479c54b07232794e1df551..27aa8b2872a835855e1c4b2ea1200e623a6c486d 100644
--- a/l10n/th_TH/files_sharing.po
+++ b/l10n/th_TH/files_sharing.po
@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-08-31 17:05+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"
@@ -18,18 +18,22 @@ msgstr ""
 "Language: th_TH\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr "ขนาด"
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "รหัสผ่าน"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr "แก้ไขแล้ว"
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "ส่ง"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr "ลบทั้งหมด"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "ดาวน์โหลด"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr "ลบ"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "ไม่สามารถดูตัวอย่างได้สำหรับ"
+
+#: templates/public.php:23
+msgid "web services under your control"
+msgstr "เว็บเซอร์วิสที่คุณควบคุมการใช้งานได้"
diff --git a/l10n/th_TH/files_versions.po b/l10n/th_TH/files_versions.po
index 4bab33ad9f7aadffe01b2ae94c4b918e0516d88a..28f3effc2a25e49ac7be618a237e91cdb5b420a6 100644
--- a/l10n/th_TH/files_versions.po
+++ b/l10n/th_TH/files_versions.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-15 02:03+0200\n"
-"PO-Revision-Date: 2012-08-14 13:11+0000\n"
+"POT-Creation-Date: 2012-09-03 02:04+0200\n"
+"PO-Revision-Date: 2012-09-02 22:45+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,10 +18,18 @@ msgstr ""
 "Language: th_TH\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr "หมดอายุทุกรุ่น"
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "รุ่น"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "นี่จะเป็นลบทิ้งไฟล์รุ่นที่ทำการสำรองข้อมูลทั้งหมดที่มีอยู่ของคุณทิ้งไป"
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr "เปิดใช้งานคุณสมบัติการแยกสถานะรุ่นหรือเวอร์ชั่นของไฟล์"
diff --git a/l10n/th_TH/lib.po b/l10n/th_TH/lib.po
index 57847a06f6d54dc11b4e05d81546966d2f060119..ea4639ff8f31360a354f024609fa0d6da7339170 100644
--- a/l10n/th_TH/lib.po
+++ b/l10n/th_TH/lib.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-15 02:03+0200\n"
-"PO-Revision-Date: 2012-08-14 13:40+0000\n"
+"POT-Creation-Date: 2012-09-03 02:04+0200\n"
+"PO-Revision-Date: 2012-09-02 22:43+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"
@@ -42,19 +42,19 @@ msgstr "แอปฯ"
 msgid "Admin"
 msgstr "ผู้ดูแล"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "คุณสมบัติการดาวน์โหลด zip ถูกปิดการใช้งานไว้"
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "ไฟล์สามารถดาวน์โหลดได้ทีละครั้งเท่านั้น"
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "กลับไปที่ไฟล์"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "ไฟล์ที่เลือกมีขนาดใหญ่เกินกว่าที่จะสร้างเป็นไฟล์ zip"
 
@@ -111,3 +111,16 @@ msgstr "ปีที่แล้ว"
 #: template.php:97
 msgid "years ago"
 msgstr "ปีที่ผ่านมา"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s พร้อมให้ใช้งานได้แล้ว. <a href=\"%s\">ดูรายละเอียดเพิ่มเติม</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "ทันสมัย"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "การตรวจสอบชุดอัพเดทถูกปิดใช้งานไว้"
diff --git a/l10n/th_TH/settings.po b/l10n/th_TH/settings.po
index f2de2ffdc5c19c175ed9a118a74cab251a6ea701..1919a13b9efa0a44a6607ae33f4e38f794e2e4b0 100644
--- a/l10n/th_TH/settings.po
+++ b/l10n/th_TH/settings.po
@@ -10,20 +10,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-20 02:01+0200\n"
-"PO-Revision-Date: 2012-08-19 15:11+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:31+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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: th_TH\n"
-"Plural-Forms: nplurals=1; plural=0\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "ไม่สามารถโหลดรายการจาก App Store ได้"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "เกิดข้อผิดพลาดเกี่ยวกับสิทธิ์การเข้าใช้งาน"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "มีกลุ่มดังกล่าวอยู่ในระบบอยู่แล้ว"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "ไม่สามารถเพิ่มกลุ่มได้"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "อีเมลถูกบันทึกแล้ว"
@@ -40,14 +53,28 @@ msgstr "เปลี่ยนชื่อบัญชี OpenID แล้ว"
 msgid "Invalid request"
 msgstr "คำร้องขอไม่ถูกต้อง"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "เกิดข้อผิดพลาดเกี่ยวกับสิทธิ์การเข้าใช้งาน"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "ไม่สามารถลบกลุ่มได้"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "ไม่สามารถลบผู้ใช้งานได้"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "เปลี่ยนภาษาเรียบร้อยแล้ว"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "ไม่สามารถเพิ่มผู้ใช้งานเข้าไปที่กลุ่ม %s ได้"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "ไม่สามารถลบผู้ใช้งานออกจากกลุ่ม %s ได้"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "ข้อผิดพลาด"
@@ -72,30 +99,85 @@ msgstr "ภาษาไทย"
 msgid "Security Warning"
 msgstr "คำเตือนเกี่ยวกับความปลอดภัย"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "ไดเร็กทอรี่ข้อมูลและไฟล์ของคุณสามารถเข้าถึงได้จากอินเทอร์เน็ต ไฟล์ .htaccess ที่ ownCloud มีให้ไม่สามารถทำงานได้อย่างเหมาะสม เราขอแนะนำให้คุณกำหนดค่าเว็บเซิร์ฟเวอร์ใหม่ในรูปแบบที่ไดเร็กทอรี่เก็บข้อมูลไม่สามารถเข้าถึงได้อีกต่อไป หรือคุณได้ย้ายไดเร็กทอรี่ที่ใช้เก็บข้อมูลไปอยู่ภายนอกตำแหน่ง root ของเว็บเซิร์ฟเวอร์แล้ว"
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "Cron"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "ประมวลผลหนึ่งงานเมื่อโหลดหน้าเว็บแต่ละครั้ง"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "cron.php ได้ถูกลงทะเบียนที่บริการ webcron"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "ใช้บริการ cron จากระบบ"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "API สำหรับคุณสมบัติแชร์ข้อมูล"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "เปิดใช้งาน API สำหรับคุณสมบัติแชร์ข้อมูล"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "อนุญาตให้แอปฯสามารถใช้ API สำหรับแชร์ข้อมูลได้"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "อนุญาตให้ใช้งานลิงก์ได้"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "อนุญาตให้ผู้ใช้งานสามารถแชร์ข้อมูลรายการต่างๆไปให้สาธารณะชนเป็นลิงก์ได้"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "อนุญาตให้แชร์ข้อมูลซ้ำใหม่ได้"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "อนุญาตให้ผู้ใช้งานแชร์ข้อมูลรายการต่างๆที่ถูกแชร์มาให้ตัวผู้ใช้งานได้เท่านั้น"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "อนุญาตให้ผู้ใช้งานแชร์ข้อมูลถึงใครก็ได้"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "อนุญาตให้ผู้ใช้งานแชร์ข้อมูลได้เฉพาะกับผู้ใช้งานที่อยู่ในกลุ่มเดียวกันเท่านั้น"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "บันทึกการเปลี่ยนแปลง"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "เพิ่มเติม"
 
+#: templates/admin.php:105
+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 "พัฒนาโดย 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>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "เพิ่มแอปของคุณ"
@@ -109,34 +191,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "ดูหน้าแอพพลิเคชั่นที่ apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-ได้รับอนุญาติแล้ว"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "โดย"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-ลิขสิทธิ์การใช้งานโดย <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "เอกสารคู่มือการใช้งาน"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "การจัดการไฟล์ขนาดใหญ่"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "สอบถามข้อมูล"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "เกิดปัญหาในการเชื่อมต่อกับฐานข้อมูลช่วยเหลือ"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "ไปที่นั่นด้วยตนเอง"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "คำตอบ"
 
diff --git a/l10n/th_TH/user_ldap.po b/l10n/th_TH/user_ldap.po
index b87bd07fa5c02d46267364d0b0327e01f556359f..64ad07dbf6e146158acc35e41437f6c1a8c2de39 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: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-22 18:47+0000\n"
+"POT-Creation-Date: 2012-08-30 02:02+0200\n"
+"PO-Revision-Date: 2012-08-29 18:29+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"
@@ -160,6 +160,12 @@ msgstr "ในหน่วยไบต์"
 msgid "in seconds. A change empties the cache."
 msgstr "ในอีกไม่กี่วินาที ระบบจะเปลี่ยนแปลงข้อมูลในแคชให้ว่างเปล่า"
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr "เว้นว่างไว้สำหรับ ชื่อผู้ใช้ (ค่าเริ่มต้น) หรือไม่กรุณาระบุคุณลักษณะของ LDAP/AD"
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr "ช่วยเหลือ"
diff --git a/l10n/tr/core.po b/l10n/tr/core.po
index 1047bf9dc7be02fdf1e738ad70885d202c294ef7..a715d982b63e68fbd534d7555e48f8b55ef772a3 100644
--- a/l10n/tr/core.po
+++ b/l10n/tr/core.po
@@ -4,20 +4,21 @@
 # 
 # Translators:
 # Aranel Surion <aranel@aranelsurion.org>, 2011, 2012.
+# Caner Başaran <basaran.caner@gmail.com>, 2012.
 # Necdet Yücel <necdetyucel@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -31,59 +32,55 @@ msgstr "Eklenecek kategori yok?"
 msgid "This category already exists: "
 msgstr "Bu kategori zaten mevcut: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Ayarlar"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Ocak"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Şubat"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Mart"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Nisan"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Mayıs"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Haziran"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Temmuz"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Ağustos"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Eylül"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Ekim"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Kasım"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Aralık"
 
@@ -115,7 +112,7 @@ msgstr "Hata"
 msgid "ownCloud password reset"
 msgstr "ownCloud parola sıfırlama"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Bu bağlantıyı kullanarak parolanızı sıfırlayın: {link}"
 
@@ -231,7 +228,7 @@ msgstr "Veritabanı adı"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "Veritabanı tablo alanı"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -245,7 +242,7 @@ msgstr "Kurulumu tamamla"
 msgid "web services under your control"
 msgstr "kontrolünüzdeki web servisleri"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Çıkış yap"
 
diff --git a/l10n/tr/files.po b/l10n/tr/files.po
index 34989501126cee748b82fb772111cce936ad6e8b..c0a9c6b876b865387b59605fe19a4dbfcf690dc9 100644
--- a/l10n/tr/files.po
+++ b/l10n/tr/files.po
@@ -4,21 +4,22 @@
 # 
 # Translators:
 # Aranel Surion <aranel@aranelsurion.org>, 2011, 2012.
+# Caner Başaran <basaran.caner@gmail.com>, 2012.
 # Emre  <emresaracoglu@live.com>, 2012.
 # Necdet Yücel <necdetyucel@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -54,83 +55,100 @@ msgstr "Diske yazılamadı"
 msgid "Files"
 msgstr "Dosyalar"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Sil"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
-msgstr ""
+msgstr "zaten mevcut"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
+msgstr "değiştir"
+
+#: js/filelist.js:186
+msgid "suggest name"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
-msgstr ""
+msgstr "iptal"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
-msgstr ""
-
-#: js/filelist.js:195
-msgid "with"
-msgstr ""
+msgstr "değiştirildi"
 
-#: js/filelist.js:195 js/filelist.js:246
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
 msgid "undo"
 msgstr "geri al"
 
-#: js/filelist.js:246
+#: js/filelist.js:237
+msgid "with"
+msgstr "ile"
+
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
+
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "silindi"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "ZIP dosyası oluşturuluyor, biraz sürebilir."
 
-#: js/files.js:200
+#: js/files.js:208
 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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Yükleme hatası"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Bekliyor"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Yükleme iptal edildi."
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Geçersiz isim, '/' işaretine izin verilmiyor."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Boyut"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Değiştirilme"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "dizin"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "dizinler"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "dosya"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "dosyalar"
 
@@ -162,6 +180,10 @@ msgstr "0 limitsiz demektir"
 msgid "Maximum input size for ZIP files"
 msgstr "ZIP dosyaları için en fazla girdi sayısı"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Yeni"
@@ -186,36 +208,36 @@ msgstr "Yükle"
 msgid "Cancel upload"
 msgstr "Yüklemeyi iptal et"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Burada hiçbir şey yok. Birşeyler yükleyin!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Ad"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Paylaş"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "İndir"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Yüklemeniz çok büyük"
 
-#: templates/index.php:66
+#: templates/index.php:77
 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:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Dosyalar taranıyor, lütfen bekleyin."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Güncel tarama"
diff --git a/l10n/tr/files_sharing.po b/l10n/tr/files_sharing.po
index 3f6c26efdca9b9652627a7587e7343fd78dc4ae3..7f2243289375717deaf187f166a49bdc633223e9 100644
--- a/l10n/tr/files_sharing.po
+++ b/l10n/tr/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:04+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Turkish (http://www.transifex.com/projects/p/owncloud/language/tr/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: tr\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/tr/files_versions.po b/l10n/tr/files_versions.po
index 5b16302845218452983f3ef682d85fcb148bdb53..be45079a55cf751c5ba5aaf688b1f480e55176cc 100644
--- a/l10n/tr/files_versions.po
+++ b/l10n/tr/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: tr\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/tr/lib.po b/l10n/tr/lib.po
index a1b4a5a66426efc3ef58a8a29b6f8ed2ce80dd08..61fec9e31f70f769df1097ec7acc3a763bf63a61 100644
--- a/l10n/tr/lib.po
+++ b/l10n/tr/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,43 +17,43 @@ msgstr ""
 "Language: tr\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
 msgstr ""
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
 msgstr ""
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
 msgstr ""
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
 msgstr ""
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
 msgstr ""
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/tr/settings.po b/l10n/tr/settings.po
index f2a34211a796327a64dfa3fb8fcf5178b1dcd676..927817d543695730ea023da7e8cf59486b0a760a 100644
--- a/l10n/tr/settings.po
+++ b/l10n/tr/settings.po
@@ -10,20 +10,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Eşleşme hata"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Eposta kaydedildi"
@@ -40,14 +53,28 @@ msgstr "OpenID Değiştirildi"
 msgid "Invalid request"
 msgstr "Geçersiz istek"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "Eşleşme hata"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Dil değiştirildi"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -72,30 +99,85 @@ msgstr "__dil_adı__"
 msgid "Security Warning"
 msgstr "Güvenlik Uyarisi"
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Günlük"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "Devamı"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "Uygulamanı Ekle"
@@ -109,34 +191,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Uygulamanın sayfasına apps.owncloud.com adresinden bakın "
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-lisanslı"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "yapan"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Dökümantasyon"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Büyük Dosyaların Yönetimi"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Bir soru sorun"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Yardım veritabanına bağlanmada sorunlar var."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Oraya elle gidin."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "Cevap"
 
diff --git a/l10n/tr/user_ldap.po b/l10n/tr/user_ldap.po
index de0cb374c3de7eef5ec18432bd3fa4f6c0ae35c9..5429c2cff8999636ba65e4a21d0226c3590fc3d3 100644
--- a/l10n/tr/user_ldap.po
+++ b/l10n/tr/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/uk/core.po b/l10n/uk/core.po
index 709e24113885b9c57248471a1fd2eb31fcef8097..a544613a1897b6f32d6988603a893df923a69710 100644
--- a/l10n/uk/core.po
+++ b/l10n/uk/core.po
@@ -5,19 +5,20 @@
 # Translators:
 #   <dzubchikd@gmail.com>, 2012.
 # Soul Kim <warlock.rf@gmail.com>, 2012.
+#   <victor.dubiniuk@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-11 02:02+0200\n"
+"PO-Revision-Date: 2012-09-10 11:16+0000\n"
+"Last-Translator: VicDeo <victor.dubiniuk@gmail.com>\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"
+"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/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -31,73 +32,69 @@ msgstr ""
 msgid "This category already exists: "
 msgstr ""
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:214 templates/layout.user.php:54 templates/layout.user.php:55
 msgid "Settings"
 msgstr "Налаштування"
 
-#: js/js.js:575
+#: js/js.js:642
 msgid "January"
-msgstr ""
+msgstr "Січень"
 
-#: js/js.js:575
+#: js/js.js:642
 msgid "February"
-msgstr ""
+msgstr "Лютий"
 
-#: js/js.js:575
+#: js/js.js:642
 msgid "March"
-msgstr ""
+msgstr "Березень"
 
-#: js/js.js:575
+#: js/js.js:642
 msgid "April"
-msgstr ""
+msgstr "Квітень"
 
-#: js/js.js:575
+#: js/js.js:642
 msgid "May"
-msgstr ""
+msgstr "Травень"
 
-#: js/js.js:575
+#: js/js.js:642
 msgid "June"
-msgstr ""
+msgstr "Червень"
 
-#: js/js.js:576
+#: js/js.js:643
 msgid "July"
-msgstr ""
+msgstr "Липень"
 
-#: js/js.js:576
+#: js/js.js:643
 msgid "August"
-msgstr ""
+msgstr "Серпень"
 
-#: js/js.js:576
+#: js/js.js:643
 msgid "September"
-msgstr ""
+msgstr "Вересень"
 
-#: js/js.js:576
+#: js/js.js:643
 msgid "October"
-msgstr ""
+msgstr "Жовтень"
 
-#: js/js.js:576
+#: js/js.js:643
 msgid "November"
-msgstr ""
+msgstr "Листопад"
 
-#: js/js.js:576
+#: js/js.js:643
 msgid "December"
-msgstr ""
+msgstr "Грудень"
 
 #: js/oc-dialogs.js:143 js/oc-dialogs.js:163
 msgid "Cancel"
-msgstr ""
+msgstr "Відмінити"
 
 #: js/oc-dialogs.js:159
 msgid "No"
-msgstr ""
+msgstr "Ні"
 
 #: js/oc-dialogs.js:160
 msgid "Yes"
-msgstr ""
+msgstr "Так"
 
 #: js/oc-dialogs.js:177
 msgid "Ok"
@@ -109,13 +106,13 @@ msgstr ""
 
 #: js/oc-vcategories.js:68
 msgid "Error"
-msgstr ""
+msgstr "Помилка"
 
 #: lostpassword/index.php:26
 msgid "ownCloud password reset"
 msgstr ""
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr ""
 
@@ -190,7 +187,7 @@ msgstr ""
 
 #: templates/edit_categories_dialog.php:14
 msgid "Add"
-msgstr ""
+msgstr "Додати"
 
 #: templates/installation.php:24
 msgid "Create an <strong>admin account</strong>"
@@ -241,11 +238,11 @@ msgstr ""
 msgid "Finish setup"
 msgstr "Завершити налаштування"
 
-#: templates/layout.guest.php:42
+#: templates/layout.guest.php:36
 msgid "web services under your control"
 msgstr "веб-сервіс під вашим контролем"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:39
 msgid "Log out"
 msgstr "Вихід"
 
diff --git a/l10n/uk/files.po b/l10n/uk/files.po
index 8fb3ea8778f54a9ac74f2b1ad21703c516ebc39d..f81ff9967425f7266ad830a3d20d843c3bc55ffb 100644
--- a/l10n/uk/files.po
+++ b/l10n/uk/files.po
@@ -9,15 +9,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +53,100 @@ msgstr ""
 msgid "Files"
 msgstr "Файли"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Видалити"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "відмінити"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "відмінити"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "видалені"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "Створення ZIP-файлу, це може зайняти певний час."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "Неможливо завантажити ваш файл тому, що він тека або файл розміром 0 байт"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Помилка завантаження"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Очікування"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Завантаження перервано."
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Некоректне ім'я, '/' не дозволено."
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Розмір"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Змінено"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "тека"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "теки"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "файл"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "файли"
 
@@ -161,6 +178,10 @@ msgstr "0 є безліміт"
 msgid "Maximum input size for ZIP files"
 msgstr ""
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Створити"
@@ -185,36 +206,36 @@ msgstr "Відвантажити"
 msgid "Cancel upload"
 msgstr "Перервати завантаження"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "Тут нічого немає. Відвантажте що-небудь!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Ім'я"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Поділитися"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Завантажити"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "Файл занадто великий"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "Файли,що ви намагаєтесь відвантажити перевищують максимальний дозволений розмір файлів на цьому сервері."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Файли скануються, зачекайте, будь-ласка."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "Поточне сканування"
diff --git a/l10n/uk/files_external.po b/l10n/uk/files_external.po
index 4d2de48c58f820407ea006206be6f288685b5529..c40b94e138c8f57039f6656fca80dfa9d87bdfc4 100644
--- a/l10n/uk/files_external.po
+++ b/l10n/uk/files_external.po
@@ -3,19 +3,20 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <victor.dubiniuk@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:34+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-11 02:02+0200\n"
+"PO-Revision-Date: 2012-09-10 10:46+0000\n"
+"Last-Translator: VicDeo <victor.dubiniuk@gmail.com>\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"
+"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"
 
 #: templates/settings.php:3
 msgid "External Storage"
@@ -55,15 +56,15 @@ msgstr ""
 
 #: templates/settings.php:64
 msgid "Groups"
-msgstr ""
+msgstr "Групи"
 
 #: templates/settings.php:69
 msgid "Users"
-msgstr ""
+msgstr "Користувачі"
 
 #: templates/settings.php:77 templates/settings.php:96
 msgid "Delete"
-msgstr ""
+msgstr "Видалити"
 
 #: templates/settings.php:88
 msgid "SSL root certificates"
diff --git a/l10n/uk/files_sharing.po b/l10n/uk/files_sharing.po
index 4786918c70f807bd7fc3306525309cc660d3f23d..411329b93ce3965cd32d2a0b91f520e1c961d03d 100644
--- a/l10n/uk/files_sharing.po
+++ b/l10n/uk/files_sharing.po
@@ -3,32 +3,37 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <victor.dubiniuk@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-11 02:02+0200\n"
+"PO-Revision-Date: 2012-09-10 10:38+0000\n"
+"Last-Translator: VicDeo <victor.dubiniuk@gmail.com>\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"
+"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"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr ""
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Пароль"
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Завантажити"
+
+#: templates/public.php:18
+msgid "No preview available for"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:25
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/uk/files_versions.po b/l10n/uk/files_versions.po
index fdbf46f9cbaa78621badfe60d1d3951957499f35..f2a35bd6749f32510c514d35e69e7d0301288905 100644
--- a/l10n/uk/files_versions.po
+++ b/l10n/uk/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ 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"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/uk/lib.po b/l10n/uk/lib.po
index a818ac7d1f4b5d0e2fa0e58b2e7d4a09250bac4a..4458c03b3f21269169881b937a3d10ad25ae331a 100644
--- a/l10n/uk/lib.po
+++ b/l10n/uk/lib.po
@@ -4,57 +4,58 @@
 # 
 # Translators:
 #   <dzubchikd@gmail.com>, 2012.
+#   <victor.dubiniuk@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-31 22:53+0200\n"
-"PO-Revision-Date: 2012-07-30 21:26+0000\n"
-"Last-Translator: dzubchikd <dzubchikd@gmail.com>\n"
+"POT-Creation-Date: 2012-09-11 02:02+0200\n"
+"PO-Revision-Date: 2012-09-10 11:28+0000\n"
+"Last-Translator: VicDeo <victor.dubiniuk@gmail.com>\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"
+"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:287
+#: app.php:285
 msgid "Help"
 msgstr "Допомога"
 
-#: app.php:294
+#: app.php:292
 msgid "Personal"
 msgstr "Особисте"
 
-#: app.php:299
+#: app.php:297
 msgid "Settings"
 msgstr "Налаштування"
 
-#: app.php:304
+#: app.php:302
 msgid "Users"
 msgstr "Користувачі"
 
-#: app.php:311
+#: app.php:309
 msgid "Apps"
 msgstr "Додатки"
 
-#: app.php:313
+#: app.php:311
 msgid "Admin"
 msgstr "Адмін"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "ZIP завантаження вимкнено."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "Файли повинні бути завантаженні послідовно."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "Повернутися до файлів"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "Вибрані фали завеликі для генерування zip файлу."
 
@@ -70,44 +71,57 @@ msgstr "Помилка автентифікації"
 msgid "Token expired. Please reload page."
 msgstr ""
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
 msgstr "секунди тому"
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
 msgstr "1 хвилину тому"
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
 msgstr "%d хвилин тому"
 
-#: template.php:91
+#: template.php:92
 msgid "today"
 msgstr "сьогодні"
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
 msgstr "вчора"
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
 msgstr "%d днів тому"
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
 msgstr "минулого місяця"
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
 msgstr "місяці тому"
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
 msgstr "минулого року"
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
 msgstr "роки тому"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "перевірка оновлень відключена"
diff --git a/l10n/uk/settings.po b/l10n/uk/settings.po
index f32d1abccf98268fc70c9d52fa41a9d91a072f73..7a1ef6e3a0a2d8fa07e310673e154a152bc1c3f8 100644
--- a/l10n/uk/settings.po
+++ b/l10n/uk/settings.po
@@ -8,20 +8,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"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/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr ""
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr ""
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr ""
@@ -38,14 +51,28 @@ msgstr "OpenID змінено"
 msgid "Invalid request"
 msgstr "Помилковий запит"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
 msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Мова змінена"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr ""
@@ -70,30 +97,85 @@ msgstr ""
 msgid "Security Warning"
 msgstr ""
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
+msgid "Cron"
 msgstr ""
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
+msgid "execute one task with each page loaded"
 msgstr ""
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr ""
+
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr ""
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr ""
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr ""
@@ -107,34 +189,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr ""
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-ліцензовано"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "по"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr ""
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr ""
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Запитати"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Проблема при з'єднані з базою допомоги"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr ""
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr ""
 
diff --git a/l10n/uk/user_ldap.po b/l10n/uk/user_ldap.po
index 236f6c2034a2710a33ff2eb626b78c079b7aa597..d82593c3dfe2a98a37f4e682e455a041cd5f3e86 100644
--- a/l10n/uk/user_ldap.po
+++ b/l10n/uk/user_ldap.po
@@ -3,19 +3,20 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <victor.dubiniuk@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-11 02:02+0200\n"
+"PO-Revision-Date: 2012-09-10 11:08+0000\n"
+"Last-Translator: VicDeo <victor.dubiniuk@gmail.com>\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"
+"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"
 
 #: templates/settings.php:8
 msgid "Host"
@@ -47,7 +48,7 @@ msgstr ""
 
 #: templates/settings.php:11
 msgid "Password"
-msgstr ""
+msgstr "Пароль"
 
 #: templates/settings.php:11
 msgid "For anonymous access, leave DN and Password empty."
@@ -159,6 +160,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
-msgid "Help"
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
 msgstr ""
+
+#: templates/settings.php:32
+msgid "Help"
+msgstr "Допомога"
diff --git a/l10n/vi/core.po b/l10n/vi/core.po
index ec28c892d0cc48ca75f6cb13aff4bf69a3a0415b..4030732e1e4a64d5b2b1469a3d1effe33163105e 100644
--- a/l10n/vi/core.po
+++ b/l10n/vi/core.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -30,59 +30,55 @@ msgstr "Không có danh mục được thêm?"
 msgid "This category already exists: "
 msgstr "Danh mục này đã được tạo :"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "Cài đặt"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "Tháng 1"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "Tháng 2"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "Tháng 3"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "Tháng 4"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "Tháng 5"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "Tháng 6"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "Tháng 7"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "Tháng 8"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "Tháng 9"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "Tháng 10"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "Tháng 11"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "Tháng 12"
 
@@ -114,7 +110,7 @@ msgstr "Lỗi"
 msgid "ownCloud password reset"
 msgstr "Khôi phục mật khẩu Owncloud "
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "Dùng đường dẫn sau để khôi phục lại mật khẩu : {link}"
 
@@ -244,7 +240,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:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "Đăng xuất"
 
diff --git a/l10n/vi/files.po b/l10n/vi/files.po
index 8ce76018a86db0edec0e97ce9bcbfdb0660b68a3..451fc69587d6ba369569f5f64166564ec539e285 100644
--- a/l10n/vi/files.po
+++ b/l10n/vi/files.po
@@ -3,132 +3,150 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <mattheu_9x@yahoo.com>, 2012.
 # Sơn Nguyễn <sonnghit@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-11 02:02+0200\n"
+"PO-Revision-Date: 2012-09-10 09:22+0000\n"
+"Last-Translator: mattheu_9x <mattheu_9x@yahoo.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
-msgstr ""
+msgstr "Không có lỗi, các tập tin đã được tải lên thành công"
 
 #: ajax/upload.php:21
 msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini"
-msgstr ""
+msgstr "Những tập tin được tải lên vượt quá upload_max_filesize được chỉ định trong php.ini"
 
 #: ajax/upload.php:22
 msgid ""
 "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
 "the HTML form"
-msgstr ""
+msgstr "Kích thước những tập tin tải lên vượt quá MAX_FILE_SIZE đã được quy định"
 
 #: ajax/upload.php:23
 msgid "The uploaded file was only partially uploaded"
-msgstr ""
+msgstr "Tập tin tải lên mới chỉ tải lên được một phần"
 
 #: ajax/upload.php:24
 msgid "No file was uploaded"
-msgstr ""
+msgstr "Không có tập tin nào được tải lên"
 
 #: ajax/upload.php:25
 msgid "Missing a temporary folder"
-msgstr ""
+msgstr "Không tìm thấy thư mục tạm"
 
 #: ajax/upload.php:26
 msgid "Failed to write to disk"
-msgstr ""
+msgstr "Không thể ghi vào đĩa cứng"
 
 #: appinfo/app.php:6
 msgid "Files"
 msgstr "Tập tin"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr "Không chia sẽ"
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "Xóa"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
-msgstr ""
+msgstr "đã tồn tại"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
-msgstr ""
+msgstr "thay thế"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "tên gợi ý"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
-msgstr ""
+msgstr "hủy"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
-msgstr ""
+msgstr "đã được thay thế"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "lùi lại"
+
+#: js/filelist.js:237
 msgid "with"
-msgstr ""
+msgstr "với"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
-msgstr ""
+msgstr "đã xóa"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
-msgstr ""
+msgstr "Tạo tập tinh ZIP, điều này có thể mất một ít thời gian"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
-msgstr ""
+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:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "Tải lên lỗi"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Chờ"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "Hủy tải lên"
 
-#: js/files.js:457
+#: js/files.js:423
+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:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "Tên không hợp lệ ,không được phép dùng '/'"
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "Kích cỡ"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "Thay đổi"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "folder"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "folders"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "file"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "files"
 
@@ -146,7 +164,7 @@ msgstr ""
 
 #: templates/admin.php:9
 msgid "Needed for multi-file and folder downloads."
-msgstr ""
+msgstr "Cần thiết cho tải nhiều tập tin và thư mục."
 
 #: templates/admin.php:9
 msgid "Enable ZIP-download"
@@ -160,6 +178,10 @@ msgstr "0 là không giới hạn"
 msgid "Maximum input size for ZIP files"
 msgstr "Kích thước tối đa cho các tập tin ZIP"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "Lưu"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "Mới"
@@ -184,36 +206,36 @@ msgstr "Tải lên"
 msgid "Cancel upload"
 msgstr "Hủy upload"
 
-#: templates/index.php:39
+#: templates/index.php:40
 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:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "Tên"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "Chia sẻ"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "Tải xuống"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "File tải lên quá lớn"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
-msgstr ""
+msgstr "Các tập tin bạn đang cố gắng tải lên vượt quá kích thước tối đa cho phép trên máy chủ này."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "Tập tin đang được quét ,vui lòng chờ."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
-msgstr ""
+msgstr "Hiện tại đang quét"
diff --git a/l10n/vi/files_encryption.po b/l10n/vi/files_encryption.po
index d76c619333de8538a4f2fc38b58c55e62b6c9be1..9c55fc8c75f0b1a095f7e37b842db7e3f94e8325 100644
--- a/l10n/vi/files_encryption.po
+++ b/l10n/vi/files_encryption.po
@@ -3,32 +3,33 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Sơn Nguyễn <sonnghit@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:33+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-07 14:56+0000\n"
+"Last-Translator: Sơn Nguyễn <sonnghit@gmail.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: templates/settings.php:3
 msgid "Encryption"
-msgstr ""
+msgstr "Mã hóa"
 
 #: templates/settings.php:4
 msgid "Exclude the following file types from encryption"
-msgstr ""
+msgstr "Loại trừ các loại tập tin sau đây từ mã hóa"
 
 #: templates/settings.php:5
 msgid "None"
-msgstr ""
+msgstr "none"
 
 #: templates/settings.php:10
 msgid "Enable Encryption"
-msgstr ""
+msgstr "BẬT mã hóa"
diff --git a/l10n/vi/files_external.po b/l10n/vi/files_external.po
index 8633bedfa5c8a6e0d705cb0249c6eea46d019dee..d91134daff1782059b38e1192c85dee8d6ccee66 100644
--- a/l10n/vi/files_external.po
+++ b/l10n/vi/files_external.po
@@ -3,80 +3,81 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Sơn Nguyễn <sonnghit@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:34+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-09-07 15:39+0000\n"
+"Last-Translator: Sơn Nguyễn <sonnghit@gmail.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: templates/settings.php:3
 msgid "External Storage"
-msgstr ""
+msgstr "Lưu trữ ngoài"
 
 #: templates/settings.php:7 templates/settings.php:19
 msgid "Mount point"
-msgstr ""
+msgstr "Điểm gắn"
 
 #: templates/settings.php:8
 msgid "Backend"
-msgstr ""
+msgstr "phụ trợ"
 
 #: templates/settings.php:9
 msgid "Configuration"
-msgstr ""
+msgstr "Cấu hình"
 
 #: templates/settings.php:10
 msgid "Options"
-msgstr ""
+msgstr "Tùy chọn"
 
 #: templates/settings.php:11
 msgid "Applicable"
-msgstr ""
+msgstr "Áp dụng"
 
 #: templates/settings.php:23
 msgid "Add mount point"
-msgstr ""
+msgstr "Thêm điểm lắp"
 
 #: templates/settings.php:54 templates/settings.php:62
 msgid "None set"
-msgstr ""
+msgstr "không"
 
 #: templates/settings.php:63
 msgid "All Users"
-msgstr ""
+msgstr "Tất cả người dùng"
 
 #: templates/settings.php:64
 msgid "Groups"
-msgstr ""
+msgstr "Nhóm"
 
 #: templates/settings.php:69
 msgid "Users"
-msgstr ""
+msgstr "Người dùng"
 
 #: templates/settings.php:77 templates/settings.php:96
 msgid "Delete"
-msgstr ""
+msgstr "Xóa"
 
 #: templates/settings.php:88
 msgid "SSL root certificates"
-msgstr ""
+msgstr "Chứng chỉ SSL root"
 
 #: templates/settings.php:102
 msgid "Import Root Certificate"
-msgstr ""
+msgstr "Nhập Root Certificate"
 
 #: templates/settings.php:108
 msgid "Enable User External Storage"
-msgstr ""
+msgstr "Kích hoạt tính năng lưu trữ ngoài"
 
 #: templates/settings.php:109
 msgid "Allow users to mount their own external storage"
-msgstr ""
+msgstr "Cho phép người dùng kết nối với lưu trữ riêng bên ngoài của họ"
diff --git a/l10n/vi/files_sharing.po b/l10n/vi/files_sharing.po
index 87e7cce9bd0da5e966e10a50a24f6af65e7bd66e..fd39b546fd5af0b03492c683fdaf8f75e997ce58 100644
--- a/l10n/vi/files_sharing.po
+++ b/l10n/vi/files_sharing.po
@@ -3,32 +3,37 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Sơn Nguyễn <sonnghit@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-09-07 14:58+0000\n"
+"Last-Translator: Sơn Nguyễn <sonnghit@gmail.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr ""
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "Mật khẩu"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr ""
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "Xác nhận"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr ""
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "Tải về"
 
-#: templates/get.php:5
-msgid "Delete"
-msgstr ""
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "Không có xem trước cho"
+
+#: templates/public.php:25
+msgid "web services under your control"
+msgstr "dịch vụ web dưới sự kiểm soát của bạn"
diff --git a/l10n/vi/files_versions.po b/l10n/vi/files_versions.po
index 2f97cd4aa3d0e42eece4b3853dbdca56dd47d349..9a03e55a3b9665642e09b601a4f4a391406c9bc0 100644
--- a/l10n/vi/files_versions.po
+++ b/l10n/vi/files_versions.po
@@ -3,24 +3,33 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Sơn Nguyễn <sonnghit@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-09-07 14:50+0000\n"
+"Last-Translator: Sơn Nguyễn <sonnghit@gmail.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
-msgstr ""
+msgstr "Hết hạn tất cả các phiên bản"
+
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "Phiên bản"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "Điều này sẽ xóa tất cả các phiên bản sao lưu hiện có "
 
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
-msgstr ""
+msgstr "BẬT tập tin phiên bản"
diff --git a/l10n/vi/lib.po b/l10n/vi/lib.po
index 40d92269ac17b5fba2594dbf5b91cb01d07fa542..23d24277711dd319d427d432fffa9ebf5002e827 100644
--- a/l10n/vi/lib.po
+++ b/l10n/vi/lib.po
@@ -3,110 +3,124 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# Sơn Nguyễn <sonnghit@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-09-07 14:09+0000\n"
+"Last-Translator: Sơn Nguyễn <sonnghit@gmail.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
-#: app.php:287
+#: app.php:285
 msgid "Help"
-msgstr ""
+msgstr "Giúp đỡ"
 
-#: app.php:294
+#: app.php:292
 msgid "Personal"
-msgstr ""
+msgstr "Cá nhân"
 
-#: app.php:299
+#: app.php:297
 msgid "Settings"
-msgstr ""
+msgstr "Cài đặt"
 
-#: app.php:304
+#: app.php:302
 msgid "Users"
-msgstr ""
+msgstr "Người dùng"
 
-#: app.php:311
+#: app.php:309
 msgid "Apps"
-msgstr ""
+msgstr "Ứng dụng"
 
-#: app.php:313
+#: app.php:311
 msgid "Admin"
-msgstr ""
+msgstr "Quản trị"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
-msgstr ""
+msgstr "Tải về ZIP đã bị tắt."
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
-msgstr ""
+msgstr "Tập tin cần phải được tải về từng người một."
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
-msgstr ""
+msgstr "Trở lại tập tin"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
-msgstr ""
+msgstr "Tập tin được chọn quá lớn để tạo tập tin ZIP."
 
 #: json.php:28
 msgid "Application is not enabled"
-msgstr ""
+msgstr "Ứng dụng không được BẬT"
 
 #: json.php:39 json.php:63 json.php:75
 msgid "Authentication error"
-msgstr ""
+msgstr "Lỗi xác thực"
 
 #: json.php:51
 msgid "Token expired. Please reload page."
-msgstr ""
+msgstr "Mã Token đã hết hạn. Hãy tải lại trang."
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
-msgstr ""
+msgstr "1 giây trước"
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
-msgstr ""
+msgstr "1 phút trước"
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
-msgstr ""
+msgstr "%d phút trước"
 
-#: template.php:91
+#: template.php:92
 msgid "today"
-msgstr ""
+msgstr "hôm nay"
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
-msgstr ""
+msgstr "hôm qua"
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
-msgstr ""
+msgstr "%d ngày trước"
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
-msgstr ""
+msgstr "tháng trước"
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
-msgstr ""
+msgstr "tháng trước"
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
-msgstr ""
+msgstr "năm trước"
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
-msgstr ""
+msgstr "năm trước"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s có sẵn.  <a href=\"%s\">xem thêm ở đây</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "đến ngày"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "đã TĂT chức năng cập nhật "
diff --git a/l10n/vi/settings.po b/l10n/vi/settings.po
index 41c0adc6ef359bb6590a3adb90983434cb80f735..12a6254703b5e54124e1c6264114bad7013621c3 100644
--- a/l10n/vi/settings.po
+++ b/l10n/vi/settings.po
@@ -3,25 +3,40 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <mattheu_9x@yahoo.com>, 2012.
 # Son Nguyen <sonnghit@gmail.com>, 2012.
 # Sơn Nguyễn <sonnghit@gmail.com>, 2012.
+#   <vlinhd11@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-08 02:02+0200\n"
+"PO-Revision-Date: 2012-09-07 16:01+0000\n"
+"Last-Translator: mattheu_9x <mattheu_9x@yahoo.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
-msgstr ""
+msgstr "Không thể tải danh sách ứng dụng từ App Store"
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "Lỗi xác thực"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "Nhóm đã tồn tại"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "Không thể thêm nhóm"
 
 #: ajax/lostpassword.php:14
 msgid "Email saved"
@@ -39,17 +54,31 @@ msgstr "Đổi OpenID"
 msgid "Invalid request"
 msgstr "Yêu cầu không hợp lệ"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr ""
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "Không thể xóa nhóm"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "Không thể xóa người dùng"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "Ngôn ngữ đã được thay đổi"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "Không thể thêm người dùng vào nhóm %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+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:18
 msgid "Error"
-msgstr ""
+msgstr "Lỗi"
 
 #: js/apps.js:39 js/apps.js:73
 msgid "Disable"
@@ -69,32 +98,87 @@ msgstr "__Ngôn ngữ___"
 
 #: templates/admin.php:14
 msgid "Security Warning"
-msgstr ""
+msgstr "Cảnh bảo bảo mật"
 
-#: templates/admin.php:29
-msgid "Cron"
-msgstr ""
+#: templates/admin.php:17
+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 "Thư mục dữ liệu và những tập tin của bạn có thể dễ dàng bị truy cập từ internet. Tập tin .htaccess của ownCloud cung cấp không hoạt động. Chúng tôi đề nghị bạn nên cấu hình lại máy chủ webserver của bạn để thư mục dữ liệu không  còn bị truy cập hoặc bạn di chuyển thư mục dữ liệu ra bên ngoài thư mục gốc của máy chủ."
 
 #: templates/admin.php:31
-msgid "execute one task with each page loaded"
-msgstr ""
+msgid "Cron"
+msgstr "Cron"
 
 #: templates/admin.php:33
-msgid "cron.php is registered at a webcron service"
-msgstr ""
+msgid "execute one task with each page loaded"
+msgstr "Thực thi một nhiệm vụ với mỗi trang được nạp"
 
 #: templates/admin.php:35
+msgid "cron.php is registered at a webcron service"
+msgstr "cron.php đã được đăng ký ở một dịch vụ webcron"
+
+#: templates/admin.php:37
 msgid "use systems cron service"
-msgstr ""
+msgstr "sử dụng hệ thống dịch vụ cron"
+
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "Chia sẻ API"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "Bật chia sẻ API"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "Cho phép các ứng dụng sử dụng chia sẻ API"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "Cho phép liên kết"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "Cho phép người dùng chia sẻ công khai các mục bằng các liên kết"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "Cho phép chia sẻ lại"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "Cho phép người dùng chia sẻ lại những mục đã được chia sẻ"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "Cho phép người dùng chia sẻ với bất cứ ai"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "Chỉ cho phép người dùng chia sẻ với những người dùng trong nhóm của họ"
 
-#: templates/admin.php:39
+#: templates/admin.php:69
 msgid "Log"
 msgstr "Log"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "nhiều hơn"
 
+#: templates/admin.php:105
+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 "Được phát triển bởi <a href=\"http://ownCloud.org/contact\" target=\"_blank\">cộng đồng ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">mã nguồn </a> đã được cấp phép theo chuẩn <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>."
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "Thêm ứng dụng của bạn"
@@ -108,34 +192,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "Xem ứng dụng tại apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "Giấy phép đã được cấp"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "bởi"
+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/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "Tài liệu"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "Quản lý tập tin lớn"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "Đặt câu hỏi"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "Vấn đề kết nối đến cơ sở dữ liệu."
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "Đến bằng thủ công"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "trả lời"
 
@@ -229,7 +309,7 @@ msgstr "Khác"
 
 #: templates/users.php:80 templates/users.php:112
 msgid "Group Admin"
-msgstr ""
+msgstr "Nhóm quản trị"
 
 #: templates/users.php:82
 msgid "Quota"
diff --git a/l10n/vi/user_ldap.po b/l10n/vi/user_ldap.po
index 52c6146db34c99eef4543eaf0a7e4c2409c72e3b..111219c7206312728bb7b3ec273515c6f84f7d85 100644
--- a/l10n/vi/user_ldap.po
+++ b/l10n/vi/user_ldap.po
@@ -3,23 +3,24 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <mattheu_9x@yahoo.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-11 02:02+0200\n"
+"PO-Revision-Date: 2012-09-10 08:50+0000\n"
+"Last-Translator: mattheu_9x <mattheu_9x@yahoo.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: templates/settings.php:8
 msgid "Host"
-msgstr ""
+msgstr "Máy chủ"
 
 #: templates/settings.php:8
 msgid ""
@@ -47,7 +48,7 @@ msgstr ""
 
 #: templates/settings.php:11
 msgid "Password"
-msgstr ""
+msgstr "Mật khẩu"
 
 #: templates/settings.php:11
 msgid "For anonymous access, leave DN and Password empty."
@@ -95,7 +96,7 @@ msgstr ""
 
 #: templates/settings.php:17
 msgid "Port"
-msgstr ""
+msgstr "Cổng"
 
 #: templates/settings.php:18
 msgid "Base User Tree"
@@ -111,7 +112,7 @@ msgstr ""
 
 #: templates/settings.php:21
 msgid "Use TLS"
-msgstr ""
+msgstr "Sử dụng TLS"
 
 #: templates/settings.php:21
 msgid "Do not use it for SSL connections, it will fail."
@@ -123,7 +124,7 @@ msgstr ""
 
 #: templates/settings.php:23
 msgid "Turn off SSL certificate validation."
-msgstr ""
+msgstr "Tắt xác thực chứng nhận SSL"
 
 #: templates/settings.php:23
 msgid ""
@@ -133,11 +134,11 @@ msgstr ""
 
 #: templates/settings.php:23
 msgid "Not recommended, use for testing only."
-msgstr ""
+msgstr "Không khuyến khích, Chỉ sử dụng để thử nghiệm."
 
 #: templates/settings.php:24
 msgid "User Display Name Field"
-msgstr ""
+msgstr "Hiển thị tên người sử dụng"
 
 #: templates/settings.php:24
 msgid "The LDAP attribute to use to generate the user`s ownCloud name."
@@ -145,7 +146,7 @@ msgstr ""
 
 #: templates/settings.php:25
 msgid "Group Display Name Field"
-msgstr ""
+msgstr "Hiển thị tên nhóm"
 
 #: templates/settings.php:25
 msgid "The LDAP attribute to use to generate the groups`s ownCloud name."
@@ -153,12 +154,18 @@ msgstr ""
 
 #: templates/settings.php:27
 msgid "in bytes"
-msgstr ""
+msgstr "Theo Byte"
 
 #: templates/settings.php:29
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+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:32
 msgid "Help"
-msgstr ""
+msgstr "Giúp đỡ"
diff --git a/l10n/zh_CN.GB2312/core.po b/l10n/zh_CN.GB2312/core.po
index e0a74fb07fcc9e50d3d9be5a31179cfa573cdd16..1993d8aed9aa40befa8357ca17cf153106edd39f 100644
--- a/l10n/zh_CN.GB2312/core.po
+++ b/l10n/zh_CN.GB2312/core.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -30,59 +30,55 @@ msgstr "没有分类添加了?"
 msgid "This category already exists: "
 msgstr "这个分类已经存在了:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "设置"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "一月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "二月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "三月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "四月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "五月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "六月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "七月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "八月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "九月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "十月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "十一月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "十二月"
 
@@ -114,7 +110,7 @@ msgstr "错误"
 msgid "ownCloud password reset"
 msgstr "私有云密码重置"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "使用下面的链接来重置你的密码:{link}"
 
@@ -244,7 +240,7 @@ msgstr "完成安装"
 msgid "web services under your control"
 msgstr "你控制下的网络服务"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "注销"
 
diff --git a/l10n/zh_CN.GB2312/files.po b/l10n/zh_CN.GB2312/files.po
index 80307c381e6a00f532ce4d630fb880792839fd39..27fb4d0b39af2946e4de4362e9fcbb75dba94c22 100644
--- a/l10n/zh_CN.GB2312/files.po
+++ b/l10n/zh_CN.GB2312/files.po
@@ -8,15 +8,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -52,83 +52,100 @@ msgstr "写磁盘失败"
 msgid "Files"
 msgstr "文件"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "删除"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "已经存在了"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "替换"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr ""
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "取消"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "替换过了"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "撤销"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "随着"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "撤销"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "删除"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "正在生成ZIP文件,这可能需要点时间"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "不能上传你指定的文件,可能因为它是个文件夹或者大小为0"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "上传错误"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "Pending"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "上传取消了"
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr ""
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "非法文件名,\"/\"是不被许可的"
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "大小"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "修改日期"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "文件夹"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "文件夹"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "文件"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "文件"
 
@@ -160,6 +177,10 @@ msgstr "0是无限的"
 msgid "Maximum input size for ZIP files"
 msgstr "最大的ZIP文件输入大小"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "新建"
@@ -184,36 +205,36 @@ msgstr "上传"
 msgid "Cancel upload"
 msgstr "取消上传"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "这里没有东西.上传点什么!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "名字"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "分享"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "下载"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "上传的文件太大了"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "你正在试图上传的文件超过了此服务器支持的最大的文件大小."
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "正在扫描文件,请稍候."
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "正在扫描"
diff --git a/l10n/zh_CN.GB2312/files_sharing.po b/l10n/zh_CN.GB2312/files_sharing.po
index 0243a9ebaaa407bc59686775950bc3ddaed59a8b..4fdcb4f36f6ab1881e76cee41da380f9bb2b7a73 100644
--- a/l10n/zh_CN.GB2312/files_sharing.po
+++ b/l10n/zh_CN.GB2312/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:04+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: zh_CN.GB2312\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/zh_CN.GB2312/files_versions.po b/l10n/zh_CN.GB2312/files_versions.po
index 4eaa105db8ac7b5a7a287aa843504759582277bc..89fa8dd1ef27f81521cb1334d27ed3add1c1bb69 100644
--- a/l10n/zh_CN.GB2312/files_versions.po
+++ b/l10n/zh_CN.GB2312/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: zh_CN.GB2312\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/zh_CN.GB2312/lib.po b/l10n/zh_CN.GB2312/lib.po
index 49d72542b8d7a1cc1e4cd3506122cd43141e650f..541a462fb8a9fbe1403af1feabfa25be8e1b2f66 100644
--- a/l10n/zh_CN.GB2312/lib.po
+++ b/l10n/zh_CN.GB2312/lib.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-11 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -41,19 +41,19 @@ msgstr ""
 msgid "Admin"
 msgstr ""
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr ""
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr ""
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr ""
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr ""
 
@@ -110,3 +110,16 @@ msgstr ""
 #: template.php:97
 msgid "years ago"
 msgstr ""
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr ""
+
+#: updater.php:68
+msgid "up to date"
+msgstr ""
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr ""
diff --git a/l10n/zh_CN.GB2312/settings.po b/l10n/zh_CN.GB2312/settings.po
index 70f3d9d228bbd8b93ecf017ecf00cb51292ea582..5e3311e021635f86afce51871f566936e7fa1089 100644
--- a/l10n/zh_CN.GB2312/settings.po
+++ b/l10n/zh_CN.GB2312/settings.po
@@ -8,20 +8,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-18 02:01+0200\n"
-"PO-Revision-Date: 2012-08-18 00:02+0000\n"
+"POT-Creation-Date: 2012-09-05 02:02+0200\n"
+"PO-Revision-Date: 2012-09-05 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "不能从App Store 中加载列表"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "认证错误"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr ""
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr ""
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "Email 保存了"
@@ -38,14 +51,28 @@ msgstr "OpenID 改变了"
 msgid "Invalid request"
 msgstr "非法请求"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "认证错误"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr ""
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr ""
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "语言改变了"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr ""
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr ""
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "错误"
@@ -70,30 +97,85 @@ msgstr "Chinese"
 msgid "Security Warning"
 msgstr "安全警告"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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/admin.php:31
 msgid "Cron"
 msgstr "定时"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr ""
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr ""
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr ""
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr ""
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr ""
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr ""
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr ""
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr ""
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr ""
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "日志"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "更多"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "添加你的应用程序"
@@ -107,34 +189,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "在owncloud.com上查看应用程序"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-许可了"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "由"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "文档"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "管理大文件"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "提一个问题"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "连接到帮助数据库时的问题"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "收到转到."
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "回答"
 
diff --git a/l10n/zh_CN.GB2312/user_ldap.po b/l10n/zh_CN.GB2312/user_ldap.po
index 725d441e3c477855d6130890fb0e0d56fcc8a04d..67a667a8eea123bc18a0c442d0c694f0b6ba2012 100644
--- a/l10n/zh_CN.GB2312/user_ldap.po
+++ b/l10n/zh_CN.GB2312/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/zh_CN/core.po b/l10n/zh_CN/core.po
index eace2d9fe65c3df6bf61c830fd77867719c00c45..5ecd449a62096758f33c00cf25402104c8dd74d3 100644
--- a/l10n/zh_CN/core.po
+++ b/l10n/zh_CN/core.po
@@ -3,21 +3,22 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <appweb.cn@gmail.com>, 2012.
 # Phoenix Nemo <>, 2012.
 #   <wengxt@gmail.com>, 2011, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-07 02:04+0200\n"
+"PO-Revision-Date: 2012-09-06 07:30+0000\n"
+"Last-Translator: hanfeng <appweb.cn@gmail.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -31,59 +32,55 @@ msgstr "没有可添加分类?"
 msgid "This category already exists: "
 msgstr "此分类已存在: "
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "设置"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
 msgstr "一月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
 msgstr "二月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
 msgstr "三月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
 msgstr "四月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
 msgstr "五月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
 msgstr "六月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
 msgstr "七月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
 msgstr "八月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
 msgstr "九月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
 msgstr "十月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
 msgstr "十一月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
 msgstr "十二月"
 
@@ -115,7 +112,7 @@ msgstr "错误"
 msgid "ownCloud password reset"
 msgstr "重置 ownCloud 密码"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "使用以下链接重置您的密码:{link}"
 
@@ -231,7 +228,7 @@ msgstr "数据库名"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "数据库表空间"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -245,7 +242,7 @@ msgstr "安装完成"
 msgid "web services under your control"
 msgstr "由您掌控的网络服务"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "注销"
 
diff --git a/l10n/zh_CN/files.po b/l10n/zh_CN/files.po
index 8698bb536d94737e7d4b16d7baa71f42588258d4..a7489a4246b379b66bec1dcc10f1b194e9c798ac 100644
--- a/l10n/zh_CN/files.po
+++ b/l10n/zh_CN/files.po
@@ -10,15 +10,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 01:52+0000\n"
-"Last-Translator: hanfeng <appweb.cn@gmail.com>\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -54,83 +54,100 @@ msgstr "写入磁盘失败"
 msgid "Files"
 msgstr "文件"
 
-#: js/fileactions.js:111 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "删除"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
 msgstr "已经存在"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
 msgstr "替换"
 
-#: js/filelist.js:141
+#: js/filelist.js:186
+msgid "suggest name"
+msgstr "建议名称"
+
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
 msgstr "取消"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr "已经替换"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr "撤销"
+
+#: js/filelist.js:237
 msgid "with"
 msgstr "随着"
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
-msgstr "撤销"
+#: js/filelist.js:268
+msgid "unshared"
+msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr "已经删除"
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
 msgstr "正在生成 ZIP 文件,可能需要一些时间"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
 msgstr "无法上传文件,因为它是一个目录或者大小为 0 字节"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
 msgstr "上传错误"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr "操作等待中"
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
 msgstr "上传已取消"
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr "文件正在上传中。现在离开此页会导致上传动作被取消。"
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
 msgstr "非法的名称,不允许使用‘/’。"
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "大小"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "修改日期"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr "文件夹"
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr "文件夹"
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr "文件"
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr "文件"
 
@@ -162,6 +179,10 @@ msgstr "0 为无限制"
 msgid "Maximum input size for ZIP files"
 msgstr "ZIP 文件的最大输入大小"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr "保存"
+
 #: templates/index.php:7
 msgid "New"
 msgstr "新建"
@@ -186,36 +207,36 @@ msgstr "上传"
 msgid "Cancel upload"
 msgstr "取消上传"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "这里还什么都没有。上传些东西吧!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "名称"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "共享"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "下载"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "上传文件过大"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "您正尝试上传的文件超过了此服务器可以上传的最大大小"
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "文件正在被扫描,请稍候。"
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "当前扫描"
diff --git a/l10n/zh_CN/files_encryption.po b/l10n/zh_CN/files_encryption.po
index 19d9d60f7df27b819528fe34b15f222938f6ce81..502f4e08a6fd5c108f5a207328678d81f82e6f41 100644
--- a/l10n/zh_CN/files_encryption.po
+++ b/l10n/zh_CN/files_encryption.po
@@ -3,32 +3,33 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <appweb.cn@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:33+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-07 09:38+0000\n"
+"Last-Translator: hanfeng <appweb.cn@gmail.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: templates/settings.php:3
 msgid "Encryption"
-msgstr ""
+msgstr "加密"
 
 #: templates/settings.php:4
 msgid "Exclude the following file types from encryption"
-msgstr ""
+msgstr "从加密中排除列出的文件类型"
 
 #: templates/settings.php:5
 msgid "None"
-msgstr ""
+msgstr "None"
 
 #: templates/settings.php:10
 msgid "Enable Encryption"
-msgstr ""
+msgstr "开启加密"
diff --git a/l10n/zh_CN/files_sharing.po b/l10n/zh_CN/files_sharing.po
index 6c3271e513fe438441e3e154cc5ea3fd6d346474..e6e603fc5acc9c0443d2dc779185e96ddc8516b0 100644
--- a/l10n/zh_CN/files_sharing.po
+++ b/l10n/zh_CN/files_sharing.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
+"POT-Creation-Date: 2012-08-31 02:02+0200\n"
+"PO-Revision-Date: 2012-08-31 00:04+0000\n"
 "Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
 "Language-Team: Chinese (China) (http://www.transifex.com/projects/p/owncloud/language/zh_CN/)\n"
 "MIME-Version: 1.0\n"
@@ -17,18 +17,22 @@ msgstr ""
 "Language: zh_CN\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: templates/get.php:4
-msgid "Size"
+#: templates/authenticate.php:4
+msgid "Password"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Modified"
+#: templates/authenticate.php:6
+msgid "Submit"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete all"
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
 msgstr ""
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr ""
+
+#: templates/public.php:23
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/zh_CN/files_versions.po b/l10n/zh_CN/files_versions.po
index 4e84f1f4d823edbc2c4e1f9f832f043d6beb2f6e..8fc46b74985c817f76eaa8210ea6e6a16f947c85 100644
--- a/l10n/zh_CN/files_versions.po
+++ b/l10n/zh_CN/files_versions.po
@@ -3,24 +3,33 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <appweb.cn@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-07 02:04+0200\n"
+"PO-Revision-Date: 2012-09-06 13:03+0000\n"
+"Last-Translator: hanfeng <appweb.cn@gmail.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
-msgstr ""
+msgstr "过期所有版本"
+
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr "版本"
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr "将会删除您的文件的所有备份版本"
 
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
-msgstr ""
+msgstr "开启文件版本"
diff --git a/l10n/zh_CN/lib.po b/l10n/zh_CN/lib.po
index 4a52e2838c88839ffe2011f9bcf03dd8882f4709..ff9847c8289530a64d1ba617f20c2c2ee688b38e 100644
--- a/l10n/zh_CN/lib.po
+++ b/l10n/zh_CN/lib.po
@@ -3,20 +3,21 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <appweb.cn@gmail.com>, 2012.
 #   <rainofchaos@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-24 02:02+0200\n"
-"PO-Revision-Date: 2012-08-23 12:13+0000\n"
-"Last-Translator: leonfeng <rainofchaos@gmail.com>\n"
+"POT-Creation-Date: 2012-09-07 02:04+0200\n"
+"PO-Revision-Date: 2012-09-06 07:33+0000\n"
+"Last-Translator: hanfeng <appweb.cn@gmail.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: app.php:288
 msgid "Help"
@@ -42,19 +43,19 @@ msgstr "应用"
 msgid "Admin"
 msgstr "管理"
 
-#: files.php:276
+#: files.php:280
 msgid "ZIP download is turned off."
 msgstr "ZIP 下载已经关闭"
 
-#: files.php:277
+#: files.php:281
 msgid "Files need to be downloaded one by one."
 msgstr "需要逐一下载文件"
 
-#: files.php:277 files.php:302
+#: files.php:281 files.php:306
 msgid "Back to Files"
 msgstr "回到文件"
 
-#: files.php:301
+#: files.php:305
 msgid "Selected files too large to generate zip file."
 msgstr "选择的文件太大,无法生成 zip 文件。"
 
@@ -70,44 +71,57 @@ msgstr "认证错误"
 msgid "Token expired. Please reload page."
 msgstr "Token 过期,请刷新页面。"
 
-#: template.php:86
+#: template.php:87
 msgid "seconds ago"
 msgstr "几秒前"
 
-#: template.php:87
+#: template.php:88
 msgid "1 minute ago"
 msgstr "1分钟前"
 
-#: template.php:88
+#: template.php:89
 #, php-format
 msgid "%d minutes ago"
 msgstr "%d 分钟前"
 
-#: template.php:91
+#: template.php:92
 msgid "today"
 msgstr "今天"
 
-#: template.php:92
+#: template.php:93
 msgid "yesterday"
 msgstr "昨天"
 
-#: template.php:93
+#: template.php:94
 #, php-format
 msgid "%d days ago"
 msgstr "%d 天前"
 
-#: template.php:94
+#: template.php:95
 msgid "last month"
 msgstr "上月"
 
-#: template.php:95
+#: template.php:96
 msgid "months ago"
 msgstr "几月前"
 
-#: template.php:96
+#: template.php:97
 msgid "last year"
 msgstr "上年"
 
-#: template.php:97
+#: template.php:98
 msgid "years ago"
 msgstr "几年前"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s 已存在. 点此 <a href=\"%s\">获取更多信息</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "已更新。"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "检查更新功能被关闭。"
diff --git a/l10n/zh_CN/settings.po b/l10n/zh_CN/settings.po
index f9f1faf7b3085ada7c7188bdb1120420f4136342..c72ea361e020343908ff8727bef0221867c1c0f0 100644
--- a/l10n/zh_CN/settings.po
+++ b/l10n/zh_CN/settings.po
@@ -11,20 +11,33 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-26 19:46+0200\n"
-"PO-Revision-Date: 2012-08-26 05:33+0000\n"
+"POT-Creation-Date: 2012-09-07 02:04+0200\n"
+"PO-Revision-Date: 2012-09-06 08:01+0000\n"
 "Last-Translator: hanfeng <appweb.cn@gmail.com>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
 msgstr "无法从应用商店载入列表"
 
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "认证错误"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "已存在组"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "不能添加组"
+
 #: ajax/lostpassword.php:14
 msgid "Email saved"
 msgstr "电子邮件已保存"
@@ -41,14 +54,28 @@ msgstr "OpenID 已修改"
 msgid "Invalid request"
 msgstr "非法请求"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr "认证错误"
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "不能删除组"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "不能删除用户"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "语言已修改"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "不能把用户添加到组 %s"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "不能从组%s中移除用户"
+
 #: js/apps.js:18
 msgid "Error"
 msgstr "错误"
@@ -73,30 +100,85 @@ msgstr "简体中文"
 msgid "Security Warning"
 msgstr "安全警告"
 
-#: templates/admin.php:29
+#: templates/admin.php:17
+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 "您的数据文件夹和文件可由互联网访问。OwnCloud提供的.htaccess文件未生效。我们强烈建议您配置服务器,以使数据文件夹不可被访问,或者将数据文件夹移到web服务器以外。"
+
+#: templates/admin.php:31
 msgid "Cron"
 msgstr "计划任务"
 
-#: templates/admin.php:31
+#: templates/admin.php:33
 msgid "execute one task with each page loaded"
 msgstr "为每个装入的页面执行任务"
 
-#: templates/admin.php:33
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr "crop.php 已"
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
 msgstr "实现系统 cron 服务"
 
-#: templates/admin.php:39
+#: templates/admin.php:41
+msgid "Share API"
+msgstr "共享API"
+
+#: templates/admin.php:46
+msgid "Enable Share API"
+msgstr "开启共享API"
+
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr "允许 应用 使用共享API"
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "允许连接"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "允许用户使用连接向公众共享"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "允许再次共享"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "允许用户将共享给他们的项目再次共享"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "允许用户向任何人共享"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "允许用户只向同组用户共享"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "日志"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "更多"
 
+#: templates/admin.php:105
+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 "由<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>许可证下发布。"
+
 #: templates/apps.php:10
 msgid "Add your App"
 msgstr "添加应用"
@@ -110,34 +192,30 @@ msgid "See application page at apps.owncloud.com"
 msgstr "查看在 app.owncloud.com 的应用程序页面"
 
 #: templates/apps.php:30
-msgid "-licensed"
-msgstr "-许可证"
-
-#: templates/apps.php:30
-msgid "by"
-msgstr "由"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr "<span class=\"licence\"></span>-核准: <span class=\"author\"></span>"
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "文档"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "管理大文件"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "提问"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "连接帮助数据库错误 "
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "手动访问"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "回答"
 
diff --git a/l10n/zh_CN/user_ldap.po b/l10n/zh_CN/user_ldap.po
index 5e871541a099a3878d480643e9b13c145e8c30bc..a34796c9c3dae4be931c0a3472378e7fe6af7cb9 100644
--- a/l10n/zh_CN/user_ldap.po
+++ b/l10n/zh_CN/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/l10n/zh_TW/core.po b/l10n/zh_TW/core.po
index 1bc6215fcd95a4bb7a03b0d1ed015b777b387861..72df7a953ccf8f8c81a09825d35dec95ba92c8f9 100644
--- a/l10n/zh_TW/core.po
+++ b/l10n/zh_TW/core.po
@@ -4,19 +4,20 @@
 # 
 # Translators:
 # Donahue Chuang <soshinwu@gmail.com>, 2012.
+# Ming Yi Wu <mingi.wu@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-28 02:01+0200\n"
-"PO-Revision-Date: 2012-08-28 00:02+0000\n"
+"POT-Creation-Date: 2012-09-06 02:02+0200\n"
+"PO-Revision-Date: 2012-09-06 00:03+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/vcategories/add.php:23 ajax/vcategories/delete.php:23
 msgid "Application name not provided."
@@ -30,91 +31,87 @@ msgstr "無分類添加?"
 msgid "This category already exists: "
 msgstr "此分類已經存在:"
 
-#: js/jquery-ui-1.8.16.custom.min.js:511
-msgid "ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+="
-msgstr ""
-
-#: js/js.js:190 templates/layout.user.php:64 templates/layout.user.php:65
+#: js/js.js:208 templates/layout.user.php:60 templates/layout.user.php:61
 msgid "Settings"
 msgstr "設定"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "January"
-msgstr ""
+msgstr "一月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "February"
-msgstr ""
+msgstr "二月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "March"
-msgstr ""
+msgstr "三月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "April"
-msgstr ""
+msgstr "四月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "May"
-msgstr ""
+msgstr "五月"
 
-#: js/js.js:575
+#: js/js.js:593
 msgid "June"
-msgstr ""
+msgstr "六月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "July"
-msgstr ""
+msgstr "七月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "August"
-msgstr ""
+msgstr "八月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "September"
-msgstr ""
+msgstr "九月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "October"
-msgstr ""
+msgstr "十月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "November"
-msgstr ""
+msgstr "十一月"
 
-#: js/js.js:576
+#: js/js.js:594
 msgid "December"
-msgstr ""
+msgstr "十二月"
 
 #: js/oc-dialogs.js:143 js/oc-dialogs.js:163
 msgid "Cancel"
-msgstr ""
+msgstr "取消"
 
 #: js/oc-dialogs.js:159
 msgid "No"
-msgstr ""
+msgstr "No"
 
 #: js/oc-dialogs.js:160
 msgid "Yes"
-msgstr ""
+msgstr "Yes"
 
 #: js/oc-dialogs.js:177
 msgid "Ok"
-msgstr ""
+msgstr "Ok"
 
 #: js/oc-vcategories.js:68
 msgid "No categories selected for deletion."
-msgstr ""
+msgstr "沒選擇要刪除的分類"
 
 #: js/oc-vcategories.js:68
 msgid "Error"
-msgstr ""
+msgstr "錯誤"
 
 #: lostpassword/index.php:26
 msgid "ownCloud password reset"
 msgstr "ownCloud 密碼重設"
 
-#: lostpassword/templates/email.php:1
+#: lostpassword/templates/email.php:2
 msgid "Use the following link to reset your password: {link}"
 msgstr "請循以下聯結重設你的密碼: (聯結) "
 
@@ -230,7 +227,7 @@ msgstr "資料庫名稱"
 
 #: templates/installation.php:109
 msgid "Database tablespace"
-msgstr ""
+msgstr "資料庫 tablespace"
 
 #: templates/installation.php:115
 msgid "Database host"
@@ -244,7 +241,7 @@ msgstr "完成設定"
 msgid "web services under your control"
 msgstr "網路服務已在你控制"
 
-#: templates/layout.user.php:49
+#: templates/layout.user.php:45
 msgid "Log out"
 msgstr "登出"
 
diff --git a/l10n/zh_TW/files.po b/l10n/zh_TW/files.po
index 627c3aa1158ab588f810ade75ec6eb2e5199b70f..b4564768b785f1a0f4ffa25dae4b6449a3721788 100644
--- a/l10n/zh_TW/files.po
+++ b/l10n/zh_TW/files.po
@@ -5,19 +5,20 @@
 # Translators:
 # Donahue Chuang <soshinwu@gmail.com>, 2012.
 # Eddy Chang <taiwanmambo@gmail.com>, 2012.
+# ywang  <ywang1007@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-21 02:03+0200\n"
-"PO-Revision-Date: 2012-08-21 00:04+0000\n"
+"POT-Creation-Date: 2012-09-08 02:01+0200\n"
+"PO-Revision-Date: 2012-09-08 00:02+0000\n"
 "Last-Translator: I Robot <thomas.mueller@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"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/upload.php:20
 msgid "There is no error, the file uploaded with success"
@@ -53,83 +54,100 @@ msgstr "寫入硬碟失敗"
 msgid "Files"
 msgstr "檔案"
 
-#: js/fileactions.js:107 templates/index.php:56
+#: js/fileactions.js:108 templates/index.php:62
+msgid "Unshare"
+msgstr ""
+
+#: js/fileactions.js:110 templates/index.php:64
 msgid "Delete"
 msgstr "刪除"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "already exists"
-msgstr ""
+msgstr "已經存在"
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "replace"
+msgstr "取代"
+
+#: js/filelist.js:186
+msgid "suggest name"
 msgstr ""
 
-#: js/filelist.js:141
+#: js/filelist.js:186 js/filelist.js:188
 msgid "cancel"
-msgstr ""
+msgstr "取消"
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237
 msgid "replaced"
 msgstr ""
 
-#: js/filelist.js:195
+#: js/filelist.js:235 js/filelist.js:237 js/filelist.js:268 js/filelist.js:270
+msgid "undo"
+msgstr ""
+
+#: js/filelist.js:237
 msgid "with"
 msgstr ""
 
-#: js/filelist.js:195 js/filelist.js:246
-msgid "undo"
+#: js/filelist.js:268
+msgid "unshared"
 msgstr ""
 
-#: js/filelist.js:246
+#: js/filelist.js:270
 msgid "deleted"
 msgstr ""
 
-#: js/files.js:171
+#: js/files.js:179
 msgid "generating ZIP-file, it may take some time."
-msgstr ""
+msgstr "產生壓縮檔, 它可能需要一段時間."
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Unable to upload your file as it is a directory or has 0 bytes"
-msgstr ""
+msgstr "無法上傳您的檔案因為它可能是一個目錄或檔案大小為0"
 
-#: js/files.js:200
+#: js/files.js:208
 msgid "Upload Error"
-msgstr ""
+msgstr "上傳發生錯誤"
 
-#: js/files.js:228 js/files.js:319 js/files.js:348
+#: js/files.js:236 js/files.js:341 js/files.js:370
 msgid "Pending"
 msgstr ""
 
-#: js/files.js:333
+#: js/files.js:355
 msgid "Upload cancelled."
-msgstr ""
+msgstr "上傳取消"
 
-#: js/files.js:457
+#: js/files.js:423
+msgid ""
+"File upload is in progress. Leaving the page now will cancel the upload."
+msgstr "檔案上傳中. 離開此頁面將會取消上傳."
+
+#: js/files.js:493
 msgid "Invalid name, '/' is not allowed."
-msgstr ""
+msgstr "無效的名稱, '/'是不被允許的"
 
-#: js/files.js:703 templates/index.php:55
+#: js/files.js:746 templates/index.php:56
 msgid "Size"
 msgstr "大小"
 
-#: js/files.js:704 templates/index.php:56
+#: js/files.js:747 templates/index.php:58
 msgid "Modified"
 msgstr "修改"
 
-#: js/files.js:731
+#: js/files.js:774
 msgid "folder"
 msgstr ""
 
-#: js/files.js:733
+#: js/files.js:776
 msgid "folders"
 msgstr ""
 
-#: js/files.js:741
+#: js/files.js:784
 msgid "file"
 msgstr ""
 
-#: js/files.js:743
+#: js/files.js:786
 msgid "files"
 msgstr ""
 
@@ -161,6 +179,10 @@ msgstr "0代表沒有限制"
 msgid "Maximum input size for ZIP files"
 msgstr "針對ZIP檔案最大輸入大小"
 
+#: templates/admin.php:14
+msgid "Save"
+msgstr ""
+
 #: templates/index.php:7
 msgid "New"
 msgstr "新增"
@@ -185,36 +207,36 @@ msgstr "上傳"
 msgid "Cancel upload"
 msgstr "取消上傳"
 
-#: templates/index.php:39
+#: templates/index.php:40
 msgid "Nothing in here. Upload something!"
 msgstr "沒有任何東西。請上傳內容!"
 
-#: templates/index.php:47
+#: templates/index.php:48
 msgid "Name"
 msgstr "名稱"
 
-#: templates/index.php:49
+#: templates/index.php:50
 msgid "Share"
 msgstr "分享"
 
-#: templates/index.php:51
+#: templates/index.php:52
 msgid "Download"
 msgstr "下載"
 
-#: templates/index.php:64
+#: templates/index.php:75
 msgid "Upload too large"
 msgstr "上傳過大"
 
-#: templates/index.php:66
+#: templates/index.php:77
 msgid ""
 "The files you are trying to upload exceed the maximum size for file uploads "
 "on this server."
 msgstr "你試圖上傳的檔案已超過伺服器的最大容量限制。 "
 
-#: templates/index.php:71
+#: templates/index.php:82
 msgid "Files are being scanned, please wait."
 msgstr "正在掃描檔案,請稍等。"
 
-#: templates/index.php:74
+#: templates/index.php:85
 msgid "Current scanning"
 msgstr "目前掃描"
diff --git a/l10n/zh_TW/files_encryption.po b/l10n/zh_TW/files_encryption.po
index 86ca709cfa6da563a78574040a2dd937a1898dab..1da95b438b9f96a8db38875a7dab099883540138 100644
--- a/l10n/zh_TW/files_encryption.po
+++ b/l10n/zh_TW/files_encryption.po
@@ -3,13 +3,14 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+# ywang  <ywang1007@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:33+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-02 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 14:48+0000\n"
+"Last-Translator: ywang <ywang1007@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"
@@ -19,16 +20,16 @@ msgstr ""
 
 #: templates/settings.php:3
 msgid "Encryption"
-msgstr ""
+msgstr "加密"
 
 #: templates/settings.php:4
 msgid "Exclude the following file types from encryption"
-msgstr ""
+msgstr "下列的檔案類型不加密"
 
 #: templates/settings.php:5
 msgid "None"
-msgstr ""
+msgstr "無"
 
 #: templates/settings.php:10
 msgid "Enable Encryption"
-msgstr ""
+msgstr "啟用加密"
diff --git a/l10n/zh_TW/files_sharing.po b/l10n/zh_TW/files_sharing.po
index 4a2aa509e99f048a8b0823ca70ec9040579f8e06..0b9f8057b53ec0565b01e69a882f85c464f33112 100644
--- a/l10n/zh_TW/files_sharing.po
+++ b/l10n/zh_TW/files_sharing.po
@@ -3,32 +3,37 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <wu0809@msn.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-23 02:03+0200\n"
-"PO-Revision-Date: 2012-08-23 00:04+0000\n"
-"Last-Translator: I Robot <thomas.mueller@tmit.eu>\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\n"
+"PO-Revision-Date: 2012-09-11 15:56+0000\n"
+"Last-Translator: Jeff5555 <wu0809@msn.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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: zh_TW\n"
-"Plural-Forms: nplurals=1; plural=0\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
-#: templates/get.php:4
-msgid "Size"
-msgstr ""
+#: templates/authenticate.php:4
+msgid "Password"
+msgstr "密碼"
 
-#: templates/get.php:5
-msgid "Modified"
-msgstr ""
+#: templates/authenticate.php:6
+msgid "Submit"
+msgstr "送出"
 
-#: templates/get.php:5
-msgid "Delete all"
-msgstr ""
+#: templates/public.php:9 templates/public.php:19
+msgid "Download"
+msgstr "下載"
+
+#: templates/public.php:18
+msgid "No preview available for"
+msgstr "無法預覽"
 
-#: templates/get.php:5
-msgid "Delete"
+#: templates/public.php:25
+msgid "web services under your control"
 msgstr ""
diff --git a/l10n/zh_TW/files_versions.po b/l10n/zh_TW/files_versions.po
index 2214a0ec19fcb719d6a85a0f2e1756e029b04827..731c9d14f5fe324965dbb8f91e7d8403d8b65f64 100644
--- a/l10n/zh_TW/files_versions.po
+++ b/l10n/zh_TW/files_versions.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:37+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-01 13:35+0200\n"
+"PO-Revision-Date: 2012-09-01 11:35+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -17,10 +17,18 @@ msgstr ""
 "Language: zh_TW\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: js/settings-personal.js:31
+#: js/settings-personal.js:31 templates/settings-personal.php:10
 msgid "Expire all versions"
 msgstr ""
 
+#: templates/settings-personal.php:4
+msgid "Versions"
+msgstr ""
+
+#: templates/settings-personal.php:7
+msgid "This will delete all existing backup versions of your files"
+msgstr ""
+
 #: templates/settings.php:3
 msgid "Enable Files Versioning"
 msgstr ""
diff --git a/l10n/zh_TW/lib.po b/l10n/zh_TW/lib.po
index 43e6429a60b0c1b17c1721de97196f37d25879d4..7e0c4b47b6474a8574b63ecde38255a0fca2f784 100644
--- a/l10n/zh_TW/lib.po
+++ b/l10n/zh_TW/lib.po
@@ -3,13 +3,15 @@
 # This file is distributed under the same license as the PACKAGE package.
 # 
 # Translators:
+#   <ywang1007+transifex@gmail.com>, 2012.
+# ywang  <ywang1007@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-07-28 02:02+0200\n"
-"PO-Revision-Date: 2012-07-27 22:23+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-09-02 02:01+0200\n"
+"PO-Revision-Date: 2012-09-01 13:47+0000\n"
+"Last-Translator: ywang <ywang1007@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"
@@ -17,96 +19,109 @@ msgstr ""
 "Language: zh_TW\n"
 "Plural-Forms: nplurals=1; plural=0\n"
 
-#: app.php:287
+#: app.php:288
 msgid "Help"
-msgstr ""
+msgstr "說明"
 
-#: app.php:294
+#: app.php:295
 msgid "Personal"
-msgstr ""
+msgstr "個人"
 
-#: app.php:299
+#: app.php:300
 msgid "Settings"
-msgstr ""
+msgstr "設定"
 
-#: app.php:304
+#: app.php:305
 msgid "Users"
-msgstr ""
+msgstr "使用者"
 
-#: app.php:311
+#: app.php:312
 msgid "Apps"
-msgstr ""
+msgstr "應用程式"
 
-#: app.php:313
+#: app.php:314
 msgid "Admin"
-msgstr ""
+msgstr "管理"
 
-#: files.php:245
+#: files.php:280
 msgid "ZIP download is turned off."
-msgstr ""
+msgstr "ZIP 下載已關閉"
 
-#: files.php:246
+#: files.php:281
 msgid "Files need to be downloaded one by one."
-msgstr ""
+msgstr "檔案需要逐一下載"
 
-#: files.php:246 files.php:271
+#: files.php:281 files.php:306
 msgid "Back to Files"
-msgstr ""
+msgstr "回到檔案列表"
 
-#: files.php:270
+#: files.php:305
 msgid "Selected files too large to generate zip file."
-msgstr ""
+msgstr "選擇的檔案太大以致於無法產生壓縮檔"
 
 #: json.php:28
 msgid "Application is not enabled"
-msgstr ""
+msgstr "應用程式未啟用"
 
 #: json.php:39 json.php:63 json.php:75
 msgid "Authentication error"
-msgstr ""
+msgstr "認證錯誤"
 
 #: json.php:51
 msgid "Token expired. Please reload page."
-msgstr ""
+msgstr "Token 過期. 請重新整理頁面"
 
 #: template.php:86
 msgid "seconds ago"
-msgstr ""
+msgstr "幾秒前"
 
 #: template.php:87
 msgid "1 minute ago"
-msgstr ""
+msgstr "1 分鐘前"
 
 #: template.php:88
 #, php-format
 msgid "%d minutes ago"
-msgstr ""
+msgstr "%d 分鐘前"
 
 #: template.php:91
 msgid "today"
-msgstr ""
+msgstr "今天"
 
 #: template.php:92
 msgid "yesterday"
-msgstr ""
+msgstr "昨天"
 
 #: template.php:93
 #, php-format
 msgid "%d days ago"
-msgstr ""
+msgstr "%d 天前"
 
 #: template.php:94
 msgid "last month"
-msgstr ""
+msgstr "上個月"
 
 #: template.php:95
 msgid "months ago"
-msgstr ""
+msgstr "幾個月前"
 
 #: template.php:96
 msgid "last year"
-msgstr ""
+msgstr "去年"
 
 #: template.php:97
 msgid "years ago"
-msgstr ""
+msgstr "幾年前"
+
+#: updater.php:66
+#, php-format
+msgid "%s is available. Get <a href=\"%s\">more information</a>"
+msgstr "%s 已經可用. 取得 <a href=\"%s\">更多資訊</a>"
+
+#: updater.php:68
+msgid "up to date"
+msgstr "最新的"
+
+#: updater.php:71
+msgid "updates check is disabled"
+msgstr "檢查更新已停用"
diff --git a/l10n/zh_TW/settings.po b/l10n/zh_TW/settings.po
index d333fc726bf080815daf080065d042cb6d0dbd10..64bf08a813d26162132bf8ce7eb4560b341edc73 100644
--- a/l10n/zh_TW/settings.po
+++ b/l10n/zh_TW/settings.po
@@ -5,31 +5,46 @@
 # Translators:
 # Donahue Chuang <soshinwu@gmail.com>, 2012.
 #   <weiyu871@ms14.url.com.tw>, 2012.
+#   <wu0809@msn.com>, 2012.
+# ywang  <ywang1007@gmail.com>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-25 02:04+0200\n"
-"PO-Revision-Date: 2012-08-24 03:42+0000\n"
-"Last-Translator: weiyu <weiyu871@ms14.url.com.tw>\n"
+"POT-Creation-Date: 2012-09-12 02:01+0200\n"
+"PO-Revision-Date: 2012-09-11 15:49+0000\n"
+"Last-Translator: Jeff5555 <wu0809@msn.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"
 "Content-Transfer-Encoding: 8bit\n"
 "Language: zh_TW\n"
-"Plural-Forms: nplurals=1; plural=0\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
 #: ajax/apps/ocs.php:23
 msgid "Unable to load list from App Store"
-msgstr ""
+msgstr "無法從 App Store 讀取清單"
+
+#: ajax/creategroup.php:9 ajax/removeuser.php:13 ajax/setquota.php:18
+#: ajax/togglegroups.php:15
+msgid "Authentication error"
+msgstr "認證錯誤"
+
+#: ajax/creategroup.php:19
+msgid "Group already exists"
+msgstr "群組已存在"
+
+#: ajax/creategroup.php:28
+msgid "Unable to add group"
+msgstr "群組增加失敗"
 
 #: ajax/lostpassword.php:14
 msgid "Email saved"
-msgstr ""
+msgstr "Email已儲存"
 
 #: ajax/lostpassword.php:16
 msgid "Invalid email"
-msgstr ""
+msgstr "無效的email"
 
 #: ajax/openid.php:16
 msgid "OpenID Changed"
@@ -39,29 +54,43 @@ msgstr "OpenID 已變更"
 msgid "Invalid request"
 msgstr "無效請求"
 
-#: ajax/removeuser.php:13 ajax/setquota.php:18 ajax/togglegroups.php:18
-msgid "Authentication error"
-msgstr ""
+#: ajax/removegroup.php:16
+msgid "Unable to delete group"
+msgstr "群組刪除錯誤"
+
+#: ajax/removeuser.php:22
+msgid "Unable to delete user"
+msgstr "使用者刪除錯誤"
 
 #: ajax/setlanguage.php:18
 msgid "Language changed"
 msgstr "語言已變更"
 
+#: ajax/togglegroups.php:25
+#, php-format
+msgid "Unable to add user to group %s"
+msgstr "使用者加入群組%s錯誤"
+
+#: ajax/togglegroups.php:31
+#, php-format
+msgid "Unable to remove user from group %s"
+msgstr "使用者移出群組%s錯誤"
+
 #: js/apps.js:18
 msgid "Error"
-msgstr ""
+msgstr "錯誤"
 
 #: js/apps.js:39 js/apps.js:73
 msgid "Disable"
-msgstr ""
+msgstr "停用"
 
 #: js/apps.js:39 js/apps.js:62
 msgid "Enable"
-msgstr ""
+msgstr "啟用"
 
 #: js/personal.js:69
 msgid "Saving..."
-msgstr ""
+msgstr "儲存中..."
 
 #: personal.php:46 personal.php:47
 msgid "__language_name__"
@@ -69,32 +98,87 @@ msgstr "__語言_名稱__"
 
 #: templates/admin.php:14
 msgid "Security Warning"
-msgstr ""
+msgstr "安全性警告"
 
-#: templates/admin.php:29
-msgid "Cron"
+#: templates/admin.php:17
+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/admin.php:31
-msgid "execute one task with each page loaded"
-msgstr ""
+msgid "Cron"
+msgstr "定期執行"
 
 #: templates/admin.php:33
+msgid "execute one task with each page loaded"
+msgstr "當頁面載入時,執行"
+
+#: templates/admin.php:35
 msgid "cron.php is registered at a webcron service"
 msgstr ""
 
-#: templates/admin.php:35
+#: templates/admin.php:37
 msgid "use systems cron service"
+msgstr "使用系統定期執行服務"
+
+#: templates/admin.php:41
+msgid "Share API"
+msgstr ""
+
+#: templates/admin.php:46
+msgid "Enable Share API"
 msgstr ""
 
-#: templates/admin.php:39
+#: templates/admin.php:47
+msgid "Allow apps to use the Share API"
+msgstr ""
+
+#: templates/admin.php:51
+msgid "Allow links"
+msgstr "允許連結"
+
+#: templates/admin.php:52
+msgid "Allow users to share items to the public with links"
+msgstr "允許使用者以結連公開分享檔案"
+
+#: templates/admin.php:56
+msgid "Allow resharing"
+msgstr "允許轉貼分享"
+
+#: templates/admin.php:57
+msgid "Allow users to share items shared with them again"
+msgstr "允許使用者轉貼共享檔案"
+
+#: templates/admin.php:60
+msgid "Allow users to share with anyone"
+msgstr "允許使用者公開分享"
+
+#: templates/admin.php:62
+msgid "Allow users to only share with users in their groups"
+msgstr "僅允許使用者在群組內分享"
+
+#: templates/admin.php:69
 msgid "Log"
 msgstr "紀錄"
 
-#: templates/admin.php:67
+#: templates/admin.php:97
 msgid "More"
 msgstr "更多"
 
+#: templates/admin.php:105
+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/apps.php:10
 msgid "Add your App"
 msgstr "添加你的 App"
@@ -105,37 +189,33 @@ msgstr "選擇一個應用程式"
 
 #: templates/apps.php:29
 msgid "See application page at apps.owncloud.com"
-msgstr ""
-
-#: templates/apps.php:30
-msgid "-licensed"
-msgstr "-已許可"
+msgstr "查看應用程式頁面於 apps.owncloud.com"
 
 #: templates/apps.php:30
-msgid "by"
-msgstr "由"
+msgid "<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>"
+msgstr ""
 
-#: templates/help.php:8
+#: templates/help.php:9
 msgid "Documentation"
 msgstr "文件"
 
-#: templates/help.php:9
+#: templates/help.php:10
 msgid "Managing Big Files"
 msgstr "管理大檔案"
 
-#: templates/help.php:10
+#: templates/help.php:11
 msgid "Ask a question"
 msgstr "提問"
 
-#: templates/help.php:22
+#: templates/help.php:23
 msgid "Problems connecting to help database."
 msgstr "連接到求助資料庫發生問題"
 
-#: templates/help.php:23
+#: templates/help.php:24
 msgid "Go there manually."
 msgstr "手動前往"
 
-#: templates/help.php:31
+#: templates/help.php:32
 msgid "Answer"
 msgstr "答案"
 
@@ -229,7 +309,7 @@ msgstr "其他"
 
 #: templates/users.php:80 templates/users.php:112
 msgid "Group Admin"
-msgstr ""
+msgstr "群組 管理員"
 
 #: templates/users.php:82
 msgid "Quota"
diff --git a/l10n/zh_TW/user_ldap.po b/l10n/zh_TW/user_ldap.po
index d84e081d11d832f1dd461272efd3be96023d0775..f57f67dde9eaef806f6f0d7b7d6c792f8ea993ea 100644
--- a/l10n/zh_TW/user_ldap.po
+++ b/l10n/zh_TW/user_ldap.po
@@ -7,9 +7,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ownCloud\n"
 "Report-Msgid-Bugs-To: http://bugs.owncloud.org/\n"
-"POT-Creation-Date: 2012-08-13 23:12+0200\n"
-"PO-Revision-Date: 2012-08-12 22:45+0000\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2012-08-29 02:01+0200\n"
+"PO-Revision-Date: 2012-08-29 00:03+0000\n"
+"Last-Translator: I Robot <thomas.mueller@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"
@@ -159,6 +159,12 @@ msgstr ""
 msgid "in seconds. A change empties the cache."
 msgstr ""
 
-#: templates/settings.php:31
+#: templates/settings.php:30
+msgid ""
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD "
+"attribute."
+msgstr ""
+
+#: templates/settings.php:32
 msgid "Help"
 msgstr ""
diff --git a/lib/MDB2/Driver/Datatype/sqlite3.php b/lib/MDB2/Driver/Datatype/sqlite3.php
index d74badbe4f1d998554ccdbb939529a82e78f77e4..ca4c1cbceb8d3d85d651eb5656be0a1b01341fe7 100644
--- a/lib/MDB2/Driver/Datatype/sqlite3.php
+++ b/lib/MDB2/Driver/Datatype/sqlite3.php
@@ -20,7 +20,7 @@
  *
  */
 
-require_once('MDB2/Driver/Datatype/Common.php');
+require_once 'MDB2/Driver/Datatype/Common.php';
 
 /**
  * MDB2 SQLite driver
@@ -191,7 +191,7 @@ class MDB2_Driver_Datatype_sqlite3 extends MDB2_Driver_Datatype_Common
         $notnull = empty($field['notnull']) ? '' : ' NOT NULL';
         $unsigned = empty($field['unsigned']) ? '' : ' UNSIGNED';
         $name = $db->quoteIdentifier($name, true);
-        if($autoinc){
+        if($autoinc) {
 			return $name.' '.$this->getTypeDeclaration($field).$autoinc;
         }else{
 			return $name.' '.$this->getTypeDeclaration($field).$unsigned.$default.$notnull.$autoinc;
@@ -383,5 +383,3 @@ class MDB2_Driver_Datatype_sqlite3 extends MDB2_Driver_Datatype_Common
 
     // }}}
 }
-
-?>
\ No newline at end of file
diff --git a/lib/MDB2/Driver/Function/sqlite3.php b/lib/MDB2/Driver/Function/sqlite3.php
index 790bd0e747b2bd09e96c9b7c9f7e6c03addfbd3e..235a106e183df49f3089afe9a30135a8a48c3ccf 100644
--- a/lib/MDB2/Driver/Function/sqlite3.php
+++ b/lib/MDB2/Driver/Function/sqlite3.php
@@ -20,7 +20,7 @@
  *
  */
 
-require_once('MDB2/Driver/Function/Common.php');
+require_once 'MDB2/Driver/Function/Common.php';
 
 /**
  * MDB2 SQLite driver for the function modules
diff --git a/lib/MDB2/Driver/Manager/sqlite3.php b/lib/MDB2/Driver/Manager/sqlite3.php
index 10255a3619a08543c3d73fdecdbdf4990e9425cb..921153c17dd027f9c082caa4a6be73bba4ab7655 100644
--- a/lib/MDB2/Driver/Manager/sqlite3.php
+++ b/lib/MDB2/Driver/Manager/sqlite3.php
@@ -20,7 +20,7 @@
  *
  */
 
-require_once('MDB2/Driver/Manager/Common.php');
+require_once 'MDB2/Driver/Manager/Common.php';
 
 /**
  * MDB2 SQLite driver for the management modules
@@ -531,7 +531,7 @@ class MDB2_Driver_Manager_sqlite3 extends MDB2_Driver_Manager_Common
             return MDB2_OK;
         }
 
-        if (empty($changes['remove']) and empty($changes['rename']) and empty($changes['change']) ){//if only rename or add changes are required, we can use ALTER TABLE
+        if (empty($changes['remove']) and empty($changes['rename']) and empty($changes['change']) ) {//if only rename or add changes are required, we can use ALTER TABLE
 			$query = '';
 			if (!empty($changes['name'])) {
 				$change_name = $db->quoteIdentifier($changes['name'], true);
diff --git a/lib/MDB2/Driver/Native/sqlite3.php b/lib/MDB2/Driver/Native/sqlite3.php
index de650107238f27cef8bf4cfa979f08562825c409..344d523bdf3285b38e12789f1959f9a8a41199b6 100644
--- a/lib/MDB2/Driver/Native/sqlite3.php
+++ b/lib/MDB2/Driver/Native/sqlite3.php
@@ -31,4 +31,3 @@ require_once 'MDB2/Driver/Native/Common.php';
 class MDB2_Driver_Native_sqlite extends MDB2_Driver_Native_Common
 {
 }
-?>
\ No newline at end of file
diff --git a/lib/MDB2/Driver/Reverse/sqlite3.php b/lib/MDB2/Driver/Reverse/sqlite3.php
index 33e5b59026895181e1c029e4264d2e6b3984fc6f..36626478ce81d9be4918c2a699457c871cf0bee8 100644
--- a/lib/MDB2/Driver/Reverse/sqlite3.php
+++ b/lib/MDB2/Driver/Reverse/sqlite3.php
@@ -20,7 +20,7 @@
  *
  */
 
-require_once('MDB2/Driver/Reverse/Common.php');
+require_once 'MDB2/Driver/Reverse/Common.php';
 
 /**
  * MDB2 SQlite driver for the schema reverse engineering module
@@ -584,5 +584,3 @@ class MDB2_Driver_Reverse_sqlite3 extends MDB2_Driver_Reverse_Common
            'This DBMS can not obtain tableInfo from result sets', __FUNCTION__);
     }
 }
-
-?>
\ No newline at end of file
diff --git a/lib/MDB2/Driver/sqlite3.php b/lib/MDB2/Driver/sqlite3.php
index 6bfccadad9ad6d602b6c061361c98e4f1a9d7c45..9757e4faf941f4dda1737f58bccf6efdc0b3ace2 100644
--- a/lib/MDB2/Driver/sqlite3.php
+++ b/lib/MDB2/Driver/sqlite3.php
@@ -150,7 +150,7 @@ class MDB2_Driver_sqlite3 extends MDB2_Driver_Common
      */
     public function escape($text, $escape_wildcards = false)
     {
-		if($this->connection){
+		if($this->connection) {
 			return $this->connection->escapeString($text);
 		}else{
 			return str_replace("'","''",$text);//TODO; more
@@ -324,7 +324,7 @@ class MDB2_Driver_sqlite3 extends MDB2_Driver_Common
      **/
     function connect()
     {
-		if($this->connection instanceof SQLite3){
+		if($this->connection instanceof SQLite3) {
 			return MDB2_OK;
 		}
 		$datadir=OC_Config::getValue( "datadirectory", OC::$SERVERROOT."/data" );
@@ -351,7 +351,7 @@ class MDB2_Driver_sqlite3 extends MDB2_Driver_Common
         }
 
         if ($database_file !== ':memory:') {
-			if(!strpos($database_file,'.db')){
+			if(!strpos($database_file,'.db')) {
 				$database_file="$datadir/$database_file.db";
 			}
             if (!file_exists($database_file)) {
@@ -387,7 +387,7 @@ class MDB2_Driver_sqlite3 extends MDB2_Driver_Common
 
         $php_errormsg = '';
 		$this->connection = new SQLite3($database_file);
-		if(is_callable(array($this->connection,'busyTimeout'))){//busy timout is only available in php>=5.3
+		if(is_callable(array($this->connection,'busyTimeout'))) {//busy timout is only available in php>=5.3
 			$this->connection->busyTimeout(100);
 		}
         $this->_lasterror = $this->connection->lastErrorMsg();
@@ -1055,7 +1055,7 @@ class MDB2_BufferedResult_sqlite3 extends MDB2_Result_sqlite3
     function seek($rownum = 0)
     {
 		$this->result->reset();
-		for($i=0;$i<$rownum;$i++){
+		for($i=0;$i<$rownum;$i++) {
 			$this->result->fetchArray();
 		}
         $this->rownum = $rownum - 1;
@@ -1093,7 +1093,7 @@ class MDB2_BufferedResult_sqlite3 extends MDB2_Result_sqlite3
     {
         $rows = 0;
         $this->result->reset();
-        while($this->result->fetchArray()){
+        while($this->result->fetchArray()) {
 			$rows++;
         }
         $this->result->reset();
@@ -1113,8 +1113,8 @@ class MDB2_Statement_sqlite3 extends MDB2_Statement_Common
 	// }}}
     // {{{ function bindValue($parameter, &$value, $type = null)
 
-	private function getParamType($type){
-		switch(strtolower($type)){
+	private function getParamType($type) {
+		switch(strtolower($type)) {
 			case 'text':
 				return SQLITE3_TEXT;
 			case 'boolean':
@@ -1139,8 +1139,8 @@ class MDB2_Statement_sqlite3 extends MDB2_Statement_Common
      *
      * @access  public
      */
-    function bindValue($parameter, $value, $type = null){
-		if($type){
+    function bindValue($parameter, $value, $type = null) {
+		if($type) {
 			$type=$this->getParamType($type);
 			$this->statement->bindValue($parameter,$value,$type);
 		}else{
@@ -1162,8 +1162,8 @@ class MDB2_Statement_sqlite3 extends MDB2_Statement_Common
      *
      * @access  public
      */
-    function bindParam($parameter, &$value, $type = null){
-        if($type){
+    function bindParam($parameter, &$value, $type = null) {
+        if($type) {
 			$type=$this->getParamType($type);
 			$this->statement->bindParam($parameter,$value,$type);
 		}else{
@@ -1193,7 +1193,7 @@ class MDB2_Statement_sqlite3 extends MDB2_Statement_Common
      *               a MDB2 error on failure
      * @access private
      */
-    function _execute($result_class = true, $result_wrap_class = false){
+    function _execute($result_class = true, $result_wrap_class = false) {
 		if (is_null($this->statement)) {
             $result =& parent::_execute($result_class, $result_wrap_class);
             return $result;
@@ -1313,7 +1313,7 @@ class MDB2_Statement_sqlite3 extends MDB2_Statement_Common
         }
         $values = (array)$values;
         if (!empty($values)) {
-			if(count($this->types)){
+			if(count($this->types)) {
 				$types=$this->types;
 			}else{
 				$types=null;
diff --git a/lib/app.php b/lib/app.php
index 74315903467fc332b3f6c5740f0fbb8fb7268a5a..28f1f16ebafda92795e03b43312f1c3cb858ca0f 100755
--- a/lib/app.php
+++ b/lib/app.php
@@ -48,30 +48,27 @@ class OC_App{
 	 *
 	 * if $types is set, only apps of those types will be loaded
 	 */
-	public static function loadApps($types=null){
+	public static function loadApps($types=null) {
 		// Load the enabled apps here
 		$apps = self::getEnabledApps();
 		// prevent app.php from printing output
 		ob_start();
-		foreach( $apps as $app ){
-			if((is_null($types) or self::isType($app,$types)) && !in_array($app, self::$loadedApps)){
+		foreach( $apps as $app ) {
+			if((is_null($types) or self::isType($app, $types)) && !in_array($app, self::$loadedApps)) {
 				self::loadApp($app);
 				self::$loadedApps[] = $app;
 			}
 		}
 		ob_end_clean();
 
-		if (!defined('DEBUG') || !DEBUG){
-			if (is_null($types)) {
+		if (!defined('DEBUG') || !DEBUG) {
+			if (is_null($types)
+			    && empty(OC_Util::$core_scripts) 
+			    && empty(OC_Util::$core_styles)) {
 				OC_Util::$core_scripts = OC_Util::$scripts;
 				OC_Util::$scripts = array();
 				OC_Util::$core_styles = OC_Util::$styles;
 				OC_Util::$styles = array();
-
-				if (!OC_AppConfig::getValue('core', 'remote_core.css', false)) {
-					OC_AppConfig::setValue('core', 'remote_core.css', '/core/minimizer.php');
-					OC_AppConfig::setValue('core', 'remote_core.js', '/core/minimizer.php');
-				}
 			}
 		}
 		// return
@@ -82,10 +79,10 @@ class OC_App{
 	 * load a single app
 	 * @param string app
 	 */
-	public static function loadApp($app){
-		if(is_file(self::getAppPath($app).'/appinfo/app.php')){
+	public static function loadApp($app) {
+		if(is_file(self::getAppPath($app).'/appinfo/app.php')) {
 			self::checkUpgrade($app);
-			require_once( $app.'/appinfo/app.php' );
+			require_once $app.'/appinfo/app.php';
 		}
 	}
 
@@ -94,13 +91,13 @@ class OC_App{
 	 * @param string $app
 	 * @param string/array $types
 	 */
-	public static function isType($app,$types){
-		if(is_string($types)){
+	public static function isType($app,$types) {
+		if(is_string($types)) {
 			$types=array($types);
 		}
 		$appTypes=self::getAppTypes($app);
-		foreach($types as $type){
-			if(array_search($type,$appTypes)!==false){
+		foreach($types as $type) {
+			if(array_search($type, $appTypes)!==false) {
 				return true;
 			}
 		}
@@ -112,14 +109,14 @@ class OC_App{
 	 * @param string $app
 	 * @return array
 	 */
-	private static function getAppTypes($app){
+	private static function getAppTypes($app) {
 		//load the cache
-		if(count(self::$appTypes)==0){
-			self::$appTypes=OC_Appconfig::getValues(false,'types');
+		if(count(self::$appTypes)==0) {
+			self::$appTypes=OC_Appconfig::getValues(false, 'types');
 		}
 
-		if(isset(self::$appTypes[$app])){
-			return explode(',',self::$appTypes[$app]);
+		if(isset(self::$appTypes[$app])) {
+			return explode(',', self::$appTypes[$app]);
 		}else{
 			return array();
 		}
@@ -128,29 +125,29 @@ class OC_App{
 	/**
 	 * read app types from info.xml and cache them in the database
 	 */
-	public static function setAppTypes($app){
+	public static function setAppTypes($app) {
 		$appData=self::getAppInfo($app);
 
-		if(isset($appData['types'])){
-			$appTypes=implode(',',$appData['types']);
+		if(isset($appData['types'])) {
+			$appTypes=implode(',', $appData['types']);
 		}else{
 			$appTypes='';
 		}
 
-		OC_Appconfig::setValue($app,'types',$appTypes);
+		OC_Appconfig::setValue($app, 'types', $appTypes);
 	}
 
 	/**
 	 * get all enabled apps
 	 */
-	public static function getEnabledApps(){
+	public static function getEnabledApps() {
 		if(!OC_Config::getValue('installed', false))
 			return array();
 		$apps=array('files');
 		$query = OC_DB::prepare( 'SELECT `appid` FROM `*PREFIX*appconfig` WHERE `configkey` = \'enabled\' AND `configvalue`=\'yes\'' );
 		$result=$query->execute();
-		while($row=$result->fetchRow()){
-			if(array_search($row['appid'],$apps)===false){
+		while($row=$result->fetchRow()) {
+			if(array_search($row['appid'], $apps)===false) {
 				$apps[]=$row['appid'];
 			}
 		}
@@ -164,8 +161,8 @@ 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' )){
+	public static function isEnabled( $app ) {
+		if( 'files'==$app or 'yes' == OC_Appconfig::getValue( $app, 'enabled' )) {
 			return true;
 		}
 
@@ -179,24 +176,24 @@ class OC_App{
 	 *
 	 * This function set an app as enabled in appconfig.
 	 */
-	public static function enable( $app ){
-		if(!OC_Installer::isInstalled($app)){
+	public static function enable( $app ) {
+		if(!OC_Installer::isInstalled($app)) {
 			// check if app is a shipped app or not. OCS apps have an integer as id, shipped apps use a string
-			if(!is_numeric($app)){
+			if(!is_numeric($app)) {
 				$app = OC_Installer::installShippedApp($app);
 			}else{
-				$download=OC_OCSClient::getApplicationDownload($app,1);
+				$download=OC_OCSClient::getApplicationDownload($app, 1);
 				if(isset($download['downloadlink']) and $download['downloadlink']!='') {
 					$app=OC_Installer::installApp(array('source'=>'http','href'=>$download['downloadlink']));
 				}
 			}
 		}
-		if($app!==false){
+		if($app!==false) {
 			// check if the app is compatible with this version of ownCloud
 			$info=OC_App::getAppInfo($app);
 			$version=OC_Util::getVersion();
-			if(!isset($info['require']) or ($version[0]>$info['require'])){
-				OC_Log::write('core','App "'.$info['name'].'" can\'t be installed because it is not compatible with this version of ownCloud',OC_Log::ERROR);
+			if(!isset($info['require']) or ($version[0]>$info['require'])) {
+				OC_Log::write('core', 'App "'.$info['name'].'" can\'t be installed because it is not compatible with this version of ownCloud', OC_Log::ERROR);
 				return false;
 			}else{
 				OC_Appconfig::setValue( $app, 'enabled', 'yes' );
@@ -215,7 +212,7 @@ class OC_App{
 	 *
 	 * This function set an app as disabled in appconfig.
 	 */
-	public static function disable( $app ){
+	public static function disable( $app ) {
 		// check if app is a shiped app or not. if not delete
 		OC_Appconfig::setValue( $app, 'enabled', 'no' );
 	}
@@ -237,9 +234,9 @@ class OC_App{
 	 *   - order: integer, that influences the position of your application in
 	 *     the navigation. Lower values come first.
 	 */
-	public static function addNavigationEntry( $data ){
+	public static function addNavigationEntry( $data ) {
 		$data['active']=false;
-		if(!isset($data['icon'])){
+		if(!isset($data['icon'])) {
 			$data['icon']='';
 		}
 		OC_App::$navigation[] = $data;
@@ -255,7 +252,7 @@ class OC_App{
 	 * property from all other entries. The templates can use this for
 	 * highlighting the current position of the user.
 	 */
-	public static function setActiveNavigationEntry( $id ){
+	public static function setActiveNavigationEntry( $id ) {
 		self::$activeapp = $id;
 		return true;
 	}
@@ -267,7 +264,7 @@ class OC_App{
 	 * This function returns the id of the active navigation entry (set by
 	 * setActiveNavigationEntry
 	 */
-	public static function getActiveNavigationEntry(){
+	public static function getActiveNavigationEntry() {
 		return self::$activeapp;
 	}
 
@@ -278,15 +275,15 @@ class OC_App{
 	 * This function returns an array containing all settings pages added. The
 	 * entries are sorted by the key 'order' ascending.
 	 */
-	public static function getSettingsNavigation(){
-		$l=OC_L10N::get('core');
+	public static function getSettingsNavigation() {
+		$l=OC_L10N::get('lib');
 
 		$settings = array();
 		// by default, settings only contain the help menu
-		if(OC_Config::getValue('knowledgebaseenabled', true)==true){
+		if(OC_Config::getValue('knowledgebaseenabled', true)==true) {
 			$settings = array(
 				array( "id" => "help", "order" => 1000, "href" => OC_Helper::linkTo( "settings", "help.php" ), "name" => $l->t("Help"), "icon" => OC_Helper::imagePath( "settings", "help.svg" ))
- 			);
+			);
 		}
 
 		// if the user is logged-in
@@ -300,7 +297,7 @@ class OC_App{
 				$settings[]=array( "id" => "settings", "order" => 1000, "href" => OC_Helper::linkTo( "settings", "settings.php" ), "name" => $l->t("Settings"), "icon" => OC_Helper::imagePath( "settings", "settings.svg" ));
 
 			//SubAdmins are also allowed to access user management
-			if(OC_SubAdmin::isSubAdmin($_SESSION["user_id"]) || OC_Group::inGroup( $_SESSION["user_id"], "admin" )){
+			if(OC_SubAdmin::isSubAdmin($_SESSION["user_id"]) || OC_Group::inGroup( $_SESSION["user_id"], "admin" )) {
 				// admin users menu
 				$settings[] = array( "id" => "core_users", "order" => 2, "href" => OC_Helper::linkTo( "settings", "users.php" ), "name" => $l->t("Users"), "icon" => OC_Helper::imagePath( "settings", "users.svg" ));
 			}
@@ -313,17 +310,17 @@ class OC_App{
 
 				$settings[]=array( "id" => "admin", "order" => 1000, "href" => OC_Helper::linkTo( "settings", "admin.php" ), "name" => $l->t("Admin"), "icon" => OC_Helper::imagePath( "settings", "admin.svg" ));
 			}
- 		}
+		}
 
 		$navigation = self::proceedNavigation($settings);
 		return $navigation;
 	}
 
 	/// This is private as well. It simply works, so don't ask for more details
-	private static function proceedNavigation( $list ){
-		foreach( $list as &$naventry ){
+	private static function proceedNavigation( $list ) {
+		foreach( $list as &$naventry ) {
 			$naventry['subnavigation'] = array();
-			if( $naventry['id'] == self::$activeapp ){
+			if( $naventry['id'] == self::$activeapp ) {
 				$naventry['active'] = true;
 			}
 			else{
@@ -331,7 +328,7 @@ class OC_App{
 			}
 		} unset( $naventry );
 
-		usort( $list, create_function( '$a, $b', 'if( $a["order"] == $b["order"] ){return 0;}elseif( $a["order"] < $b["order"] ){return -1;}else{return 1;}' ));
+		usort( $list, create_function( '$a, $b', 'if( $a["order"] == $b["order"] ) {return 0;}elseif( $a["order"] < $b["order"] ) {return -1;}else{return 1;}' ));
 
 		return $list;
 	}
@@ -349,7 +346,7 @@ class OC_App{
 				return $dir['path'];
 		}
 
-		OC_Log::write('core','No application directories are marked as writable.',OC_Log::ERROR);
+		OC_Log::write('core', 'No application directories are marked as writable.', OC_Log::ERROR);
 		return null;
 	}
 
@@ -388,10 +385,10 @@ class OC_App{
 	/**
 	 * get the last version of the app, either from appinfo/version or from appinfo/info.xml
 	 */
-	public static function getAppVersion($appid){
+	public static function getAppVersion($appid) {
 		$file= self::getAppPath($appid).'/appinfo/version';
 		$version=@file_get_contents($file);
-		if($version){
+		if($version) {
 			return trim($version);
 		}else{
 			$appData=self::getAppInfo($appid);
@@ -405,38 +402,41 @@ class OC_App{
 	 * @param boolean path (optional)
 	 * @returns array
 	*/
-	public static function getAppInfo($appid,$path=false){
-		if($path){
+	public static function getAppInfo($appid,$path=false) {
+		if($path) {
 			$file=$appid;
 		}else{
-			if(isset(self::$appInfo[$appid])){
+			if(isset(self::$appInfo[$appid])) {
 				return self::$appInfo[$appid];
 			}
 			$file= self::getAppPath($appid).'/appinfo/info.xml';
 		}
 		$data=array();
 		$content=@file_get_contents($file);
-		if(!$content){
+		if(!$content) {
 			return;
 		}
 		$xml = new SimpleXMLElement($content);
 		$data['info']=array();
 		$data['remote']=array();
 		$data['public']=array();
-		foreach($xml->children() as $child){
-			if($child->getName()=='remote'){
-				foreach($child->children() as $remote){
+		foreach($xml->children() as $child) {
+			if($child->getName()=='remote') {
+				foreach($child->children() as $remote) {
 					$data['remote'][$remote->getName()]=(string)$remote;
 				}
-			}elseif($child->getName()=='public'){
-				foreach($child->children() as $public){
+			}elseif($child->getName()=='public') {
+				foreach($child->children() as $public) {
 					$data['public'][$public->getName()]=(string)$public;
 				}
-			}elseif($child->getName()=='types'){
+			}elseif($child->getName()=='types') {
 				$data['types']=array();
-				foreach($child->children() as $type){
+				foreach($child->children() as $type) {
 					$data['types'][]=$type->getName();
 				}
+			}elseif($child->getName()=='description') {
+				$xml=(string)$child->asXML();
+				$data[$child->getName()]=substr($xml, 13, -14);//script <description> tags
 			}else{
 				$data[$child->getName()]=(string)$child;
 			}
@@ -456,7 +456,7 @@ class OC_App{
 	 *   - children: array that is empty if the key 'active' is false or
 	 *     contains the subentries if the key 'active' is true
 	 */
-	public static function getNavigation(){
+	public static function getNavigation() {
 		$navigation = self::proceedNavigation( self::$navigation );
 		return $navigation;
 	}
@@ -465,12 +465,12 @@ class OC_App{
 	 * get the id of loaded app
 	 * @return string
 	 */
-	public static function getCurrentApp(){
-		$script=substr($_SERVER["SCRIPT_NAME"],strlen(OC::$WEBROOT)+1);
-		$topFolder=substr($script,0,strpos($script,'/'));
-		if($topFolder=='apps'){
+	public static function getCurrentApp() {
+		$script=substr($_SERVER["SCRIPT_NAME"], strlen(OC::$WEBROOT)+1);
+		$topFolder=substr($script, 0, strpos($script, '/'));
+		if($topFolder=='apps') {
 			$length=strlen($topFolder);
-			return substr($script,$length+1,strpos($script,'/',$length+1)-$length-1);
+			return substr($script, $length+1, strpos($script, '/', $length+1)-$length-1);
 		}else{
 			return $topFolder;
 		}
@@ -480,9 +480,9 @@ class OC_App{
 	/**
 	 * get the forms for either settings, admin or personal
 	 */
-	public static function getForms($type){
+	public static function getForms($type) {
 		$forms=array();
-		switch($type){
+		switch($type) {
 			case 'settings':
 				$source=self::$settingsForms;
 				break;
@@ -493,7 +493,7 @@ class OC_App{
 				$source=self::$personalForms;
 				break;
 		}
-		foreach($source as $form){
+		foreach($source as $form) {
 			$forms[]=include $form;
 		}
 		return $forms;
@@ -502,33 +502,33 @@ class OC_App{
 	/**
 	 * register a settings form to be shown
 	 */
-	public static function registerSettings($app,$page){
+	public static function registerSettings($app,$page) {
 		self::$settingsForms[]= $app.'/'.$page.'.php';
 	}
 
 	/**
 	 * register an admin form to be shown
 	 */
-	public static function registerAdmin($app,$page){
+	public static function registerAdmin($app,$page) {
 		self::$adminForms[]= $app.'/'.$page.'.php';
 	}
 
 	/**
 	 * register a personal form to be shown
 	 */
-	public static function registerPersonal($app,$page){
+	public static function registerPersonal($app,$page) {
 		self::$personalForms[]= $app.'/'.$page.'.php';
 	}
 
 	/**
 	 * get a list of all apps in the apps folder
 	 */
-	public static function getAllApps(){
+	public static function getAllApps() {
 		$apps=array();
 		foreach(OC::$APPSROOTS as $apps_dir) {
 			$dh=opendir($apps_dir['path']);
-			while($file=readdir($dh)){
-				if($file[0]!='.' and is_file($apps_dir['path'].'/'.$file.'/appinfo/app.php')){
+			while($file=readdir($dh)) {
+				if($file[0]!='.' and is_file($apps_dir['path'].'/'.$file.'/appinfo/app.php')) {
 					$apps[]=$file;
 				}
 			}
@@ -549,7 +549,7 @@ class OC_App{
 		if ($currentVersion) {
 			$installedVersion = $versions[$app];
 			if (version_compare($currentVersion, $installedVersion, '>')) {
-				OC_Log::write($app, 'starting app upgrade from '.$installedVersion.' to '.$currentVersion,OC_Log::DEBUG);
+				OC_Log::write($app, 'starting app upgrade from '.$installedVersion.' to '.$currentVersion, OC_Log::DEBUG);
 				OC_App::updateApp($app);
 				OC_Appconfig::setValue($app, 'installed_version', OC_App::getAppVersion($app));
 			}
@@ -562,7 +562,7 @@ class OC_App{
 	 * This is important if you upgrade ownCloud and have non ported 3rd
 	 * party apps installed.
 	 */
-	public static function checkAppsRequirements($apps = array()){
+	public static function checkAppsRequirements($apps = array()) {
 		if (empty($apps)) {
 			$apps = OC_App::getEnabledApps();
 		}
@@ -570,8 +570,8 @@ class OC_App{
 		foreach($apps as $app) {
 			// check if the app is compatible with this version of ownCloud
 			$info = OC_App::getAppInfo($app);
-			if(!isset($info['require']) or ($version[0]>$info['require'])){
-				OC_Log::write('core','App "'.$info['name'].'" can\'t be used because it is not compatible with this version of ownCloud',OC_Log::ERROR);
+			if(!isset($info['require']) or ($version[0]>$info['require'])) {
+				OC_Log::write('core', 'App "'.$info['name'].'" ('.$app.') can\'t be used because it is not compatible with this version of ownCloud', OC_Log::ERROR);
 				OC_App::disable( $app );
 			}
 		}
@@ -580,7 +580,7 @@ class OC_App{
 	/**
 	 * get the installed version of all apps
 	 */
-	public static function getAppVersions(){
+	public static function getAppVersions() {
 		static $versions;
 		if (isset($versions)) {   // simple cache, needs to be fixed
 			return $versions; // when function is used besides in checkUpgrade
@@ -588,7 +588,7 @@ class OC_App{
 		$versions=array();
 		$query = OC_DB::prepare( 'SELECT `appid`, `configvalue` FROM `*PREFIX*appconfig` WHERE `configkey` = \'installed_version\'' );
 		$result = $query->execute();
-		while($row = $result->fetchRow()){
+		while($row = $result->fetchRow()) {
 			$versions[$row['appid']]=$row['configvalue'];
 		}
 		return $versions;
@@ -598,24 +598,24 @@ class OC_App{
 	 * update the database for the app and call the update script
 	 * @param string appid
 	 */
-	public static function updateApp($appid){
-		if(file_exists(self::getAppPath($appid).'/appinfo/database.xml')){
+	public static function updateApp($appid) {
+		if(file_exists(self::getAppPath($appid).'/appinfo/database.xml')) {
 			OC_DB::updateDbFromStructure(self::getAppPath($appid).'/appinfo/database.xml');
 		}
-		if(!self::isEnabled($appid)){
+		if(!self::isEnabled($appid)) {
 			return;
 		}
-		if(file_exists(self::getAppPath($appid).'/appinfo/update.php')){
+		if(file_exists(self::getAppPath($appid).'/appinfo/update.php')) {
 			self::loadApp($appid);
 			include self::getAppPath($appid).'/appinfo/update.php';
 		}
 
 		//set remote/public handelers
 		$appData=self::getAppInfo($appid);
-		foreach($appData['remote'] as $name=>$path){
+		foreach($appData['remote'] as $name=>$path) {
 			OCP\CONFIG::setAppValue('core', 'remote_'.$name, $appid.'/'.$path);
 		}
-		foreach($appData['public'] as $name=>$path){
+		foreach($appData['public'] as $name=>$path) {
 			OCP\CONFIG::setAppValue('core', 'public_'.$name, $appid.'/'.$path);
 		}
 
@@ -626,20 +626,20 @@ class OC_App{
 	 * @param string appid
 	 * @return OC_FilesystemView
 	 */
-	public static function getStorage($appid){
-		if(OC_App::isEnabled($appid)){//sanity check
-			if(OC_User::isLoggedIn()){
+	public static function getStorage($appid) {
+		if(OC_App::isEnabled($appid)) {//sanity check
+			if(OC_User::isLoggedIn()) {
 				$view = new OC_FilesystemView('/'.OC_User::getUser());
 				if(!$view->file_exists($appid)) {
 					$view->mkdir($appid);
 				}
 				return new OC_FilesystemView('/'.OC_User::getUser().'/'.$appid);
 			}else{
-				OC_Log::write('core','Can\'t get app storage, app, user not logged in',OC_Log::ERROR);
+				OC_Log::write('core', 'Can\'t get app storage, app, user not logged in', OC_Log::ERROR);
 				return false;
 			}
 		}else{
-			OC_Log::write('core','Can\'t get app storage, app '.$appid.' not enabled',OC_Log::ERROR);
+			OC_Log::write('core', 'Can\'t get app storage, app '.$appid.' not enabled', OC_Log::ERROR);
 			false;
 		}
 	}
diff --git a/lib/appconfig.php b/lib/appconfig.php
index 372cded9a5f0fb2e277298614389e36631f29804..7f58b878504892cbc547d21c0c3fd0cc52c27e45 100644
--- a/lib/appconfig.php
+++ b/lib/appconfig.php
@@ -45,13 +45,13 @@ class OC_Appconfig{
 	 * This function returns a list of all apps that have at least one
 	 * entry in the appconfig table.
 	 */
-	public static function getApps(){
+	public static function getApps() {
 		// No magic in here!
 		$query = OC_DB::prepare( 'SELECT DISTINCT `appid` FROM `*PREFIX*appconfig`' );
 		$result = $query->execute();
 
 		$apps = array();
-		while( $row = $result->fetchRow()){
+		while( $row = $result->fetchRow()) {
 			$apps[] = $row["appid"];
 		}
 
@@ -66,13 +66,13 @@ class OC_Appconfig{
 	 * This function gets all keys of an app. Please note that the values are
 	 * not returned.
 	 */
-	public static function getKeys( $app ){
+	public static function getKeys( $app ) {
 		// No magic in here as well
 		$query = OC_DB::prepare( 'SELECT `configkey` FROM `*PREFIX*appconfig` WHERE `appid` = ?' );
 		$result = $query->execute( array( $app ));
 
 		$keys = array();
-		while( $row = $result->fetchRow()){
+		while( $row = $result->fetchRow()) {
 			$keys[] = $row["configkey"];
 		}
 
@@ -89,29 +89,29 @@ class OC_Appconfig{
 	 * This function gets a value from the appconfig table. If the key does
 	 * not exist the default value will be returnes
 	 */
-	public static function getValue( $app, $key, $default = null ){
+	public static function getValue( $app, $key, $default = null ) {
 		// At least some magic in here :-)
 		$query = OC_DB::prepare( 'SELECT `configvalue` FROM `*PREFIX*appconfig` WHERE `appid` = ? AND `configkey` = ?' );
 		$result = $query->execute( array( $app, $key ));
 		$row = $result->fetchRow();
-		if($row){
+		if($row) {
 			return $row["configvalue"];
 		}else{
 			return $default;
 		}
 	}
-	
+
 	/**
 	 * @brief check if a key is set in the appconfig
 	 * @param string $app
 	 * @param string $key
 	 * @return bool
 	 */
-	public static function hasKey($app,$key){
+	public static function hasKey($app,$key) {
 		$exists = self::getKeys( $app );
 		return in_array( $key, $exists );
 	}
-	
+
 	/**
 	 * @brief sets a value in the appconfig
 	 * @param $app app
@@ -121,9 +121,9 @@ class OC_Appconfig{
 	 *
 	 * Sets a value. If the key did not exist before it will be created.
 	 */
-	public static function setValue( $app, $key, $value ){
+	public static function setValue( $app, $key, $value ) {
 		// Does the key exist? yes: update. No: insert
-		if(! self::hasKey($app,$key)){
+		if(! self::hasKey($app,$key)) {
 			$query = OC_DB::prepare( 'INSERT INTO `*PREFIX*appconfig` ( `appid`, `configkey`, `configvalue` ) VALUES( ?, ?, ? )' );
 			$query->execute( array( $app, $key, $value ));
 		}
@@ -141,7 +141,7 @@ class OC_Appconfig{
 	 *
 	 * Deletes a key.
 	 */
-	public static function deleteKey( $app, $key ){
+	public static function deleteKey( $app, $key ) {
 		// Boring!
 		$query = OC_DB::prepare( 'DELETE FROM `*PREFIX*appconfig` WHERE `appid` = ? AND `configkey` = ?' );
 		$query->execute( array( $app, $key ));
@@ -156,28 +156,28 @@ class OC_Appconfig{
 	 *
 	 * Removes all keys in appconfig belonging to the app.
 	 */
-	public static function deleteApp( $app ){
+	public static function deleteApp( $app ) {
 		// Nothing special
 		$query = OC_DB::prepare( 'DELETE FROM `*PREFIX*appconfig` WHERE `appid` = ?' );
 		$query->execute( array( $app ));
 
 		return true;
 	}
-	
+
 	/**
 	 * get multiply values, either the app or key can be used as wildcard by setting it to false
 	 * @param app
 	 * @param key
 	 * @return array
 	 */
-	public static function getValues($app,$key){
-		if($app!==false and $key!==false){
+	public static function getValues($app,$key) {
+		if($app!==false and $key!==false) {
 			return false;
 		}
 		$fields='`configvalue`';
 		$where='WHERE';
 		$params=array();
-		if($app!==false){
+		if($app!==false) {
 			$fields.=', `configkey`';
 			$where.=' `appid` = ?';
 			$params[]=$app;
@@ -192,7 +192,7 @@ class OC_Appconfig{
 		$query=OC_DB::prepare($queryString);
 		$result=$query->execute($params);
 		$values=array();
-		while($row=$result->fetchRow()){
+		while($row=$result->fetchRow()) {
 			$values[$row[$key]]=$row['configvalue'];
 		}
 		return $values;
diff --git a/lib/archive.php b/lib/archive.php
index fabd7cc7a51756282528a657f1323bc4387f975c..b4459c2b6ce121b25c10339fd98903699abcc1d4 100644
--- a/lib/archive.php
+++ b/lib/archive.php
@@ -12,15 +12,15 @@ abstract class OC_Archive{
 	 * @param string path
 	 * @return OC_Archive
 	 */
-	public static function open($path){
+	public static function open($path) {
 		$ext=substr($path,strrpos($path,'.'));
-		switch($ext){
+		switch($ext) {
 			case '.zip':
 				return new OC_Archive_ZIP($path);
 			case '.gz':
 			case '.bz':
 			case '.bz2':
-				if(strpos($path,'.tar.')){
+				if(strpos($path,'.tar.')) {
 					return new OC_Archive_TAR($path);
 				}
 				break;
@@ -28,7 +28,7 @@ abstract class OC_Archive{
 				return new OC_Archive_TAR($path);
 		}
 	}
-	
+
 	abstract function __construct($source);
 	/**
 	 * add an empty folder to the archive
@@ -118,14 +118,14 @@ abstract class OC_Archive{
 	 * @param string source
 	 * @return bool
 	 */
-	function addRecursive($path,$source){
-		if($dh=opendir($source)){
+	function addRecursive($path,$source) {
+		if($dh=opendir($source)) {
 			$this->addFolder($path);
-			while($file=readdir($dh)){
-				if($file=='.' or $file=='..'){
+			while($file=readdir($dh)) {
+				if($file=='.' or $file=='..') {
 					continue;
 				}
-				if(is_dir($source.'/'.$file)){
+				if(is_dir($source.'/'.$file)) {
 					$this->addRecursive($path.'/'.$file,$source.'/'.$file);
 				}else{
 					$this->addFile($path.'/'.$file,$source.'/'.$file);
diff --git a/lib/archive/tar.php b/lib/archive/tar.php
index f6efd6d0ecc6f7fd69fbe61c1f492611489e2003..639d2392b63829e342b0ef62659e7181279881f7 100644
--- a/lib/archive/tar.php
+++ b/lib/archive/tar.php
@@ -6,7 +6,7 @@
  * See the COPYING-README file.
  */
 
-require_once '3rdparty/Archive/Tar.php';
+require_once 'Archive/Tar.php';
 
 class OC_Archive_TAR extends OC_Archive{
 	const PLAIN=0;
@@ -14,17 +14,17 @@ class OC_Archive_TAR extends OC_Archive{
 	const BZIP=2;
 
 	private $fileList;
-	
+
 	/**
 	 * @var Archive_Tar tar
 	 */
 	private $tar=null;
 	private $path;
 
-	function __construct($source){
+	function __construct($source) {
 		$types=array(null,'gz','bz');
 		$this->path=$source;
-		$this->tar=new Archive_Tar($source,$types[self::getTarType($source)]);
+		$this->tar=new Archive_Tar($source, $types[self::getTarType($source)]);
 	}
 
 	/**
@@ -32,10 +32,10 @@ class OC_Archive_TAR extends OC_Archive{
 	 * @param string file
 	 * @return str
 	 */
-	static public function getTarType($file){
-		if(strpos($file,'.')){
-			$extension=substr($file,strrpos($file,'.'));
-			switch($extension){
+	static public function getTarType($file) {
+		if(strpos($file, '.')) {
+			$extension=substr($file, strrpos($file, '.'));
+			switch($extension) {
 				case 'gz':
 				case 'tgz':
 					return self::GZIP;
@@ -55,23 +55,23 @@ class OC_Archive_TAR extends OC_Archive{
 	 * @param string path
 	 * @return bool
 	 */
-	function addFolder($path){
+	function addFolder($path) {
 		$tmpBase=OC_Helper::tmpFolder();
-		if(substr($path,-1,1)!='/'){
+		if(substr($path, -1, 1)!='/') {
 			$path.='/';
 		}
-		if($this->fileExists($path)){
+		if($this->fileExists($path)) {
 			return false;
 		}
-		$parts=explode('/',$path);
+		$parts=explode('/', $path);
 		$folder=$tmpBase;
-		foreach($parts as $part){
+		foreach($parts as $part) {
 			$folder.='/'.$part;
-			if(!is_dir($folder)){
+			if(!is_dir($folder)) {
 				mkdir($folder);
 			}
 		}
-		$result=$this->tar->addModify(array($tmpBase.$path),'',$tmpBase);
+		$result=$this->tar->addModify(array($tmpBase.$path), '', $tmpBase);
 		rmdir($tmpBase.$path);
 		$this->fileList=false;
 		return $result;
@@ -82,17 +82,17 @@ class OC_Archive_TAR extends OC_Archive{
 	 * @param string source either a local file or string data
 	 * @return bool
 	 */
-	function addFile($path,$source=''){
-		if($this->fileExists($path)){
+	function addFile($path,$source='') {
+		if($this->fileExists($path)) {
 			$this->remove($path);
 		}
-		if($source and $source[0]=='/' and file_exists($source)){
+		if($source and $source[0]=='/' and file_exists($source)) {
 			$header=array();
 			$dummy='';
 			$this->tar->_openAppend();
-			$result=$this->tar->_addfile($source,$header,$dummy,$dummy,$path);
+			$result=$this->tar->_addfile($source, $header, $dummy, $dummy, $path);
 		}else{
-			$result=$this->tar->addString($path,$source);
+			$result=$this->tar->addString($path, $source);
 		}
 		$this->fileList=false;
 		return $result;
@@ -104,36 +104,36 @@ class OC_Archive_TAR extends OC_Archive{
 	 * @param string dest
 	 * @return bool
 	 */
-	function rename($source,$dest){
+	function rename($source,$dest) {
 		//no proper way to delete, rename entire archive, rename file and remake archive
 		$tmp=OCP\Files::tmpFolder();
 		$this->tar->extract($tmp);
-		rename($tmp.$source,$tmp.$dest);
+		rename($tmp.$source, $tmp.$dest);
 		$this->tar=null;
 		unlink($this->path);
-		$types=array(null,'gz','bz');
-		$this->tar=new Archive_Tar($this->path,$types[self::getTarType($this->path)]);
-		$this->tar->createModify(array($tmp),'',$tmp.'/');
+		$types=array(null, 'gz', 'bz');
+		$this->tar=new Archive_Tar($this->path, $types[self::getTarType($this->path)]);
+		$this->tar->createModify(array($tmp), '', $tmp.'/');
 		$this->fileList=false;
 		return true;
 	}
 
-	private function getHeader($file){
+	private function getHeader($file) {
 		$headers=$this->tar->listContent();
-		foreach($headers as $header){
-			if($file==$header['filename'] or $file.'/'==$header['filename'] or '/'.$file.'/'==$header['filename'] or '/'.$file==$header['filename']){
+		foreach($headers as $header) {
+			if($file==$header['filename'] or $file.'/'==$header['filename'] or '/'.$file.'/'==$header['filename'] or '/'.$file==$header['filename']) {
 				return $header;
 			}
 		}
 		return null;
 	}
-	
+
 	/**
 	 * get the uncompressed size of a file in the archive
 	 * @param string path
 	 * @return int
 	 */
-	function filesize($path){
+	function filesize($path) {
 		$stat=$this->getHeader($path);
 		return $stat['size'];
 	}
@@ -142,7 +142,7 @@ class OC_Archive_TAR extends OC_Archive{
 	 * @param string path
 	 * @return int
 	 */
-	function mtime($path){
+	function mtime($path) {
 		$stat=$this->getHeader($path);
 		return $stat['mtime'];
 	}
@@ -152,20 +152,20 @@ class OC_Archive_TAR extends OC_Archive{
 	 * @param path
 	 * @return array
 	 */
-	function getFolder($path){
+	function getFolder($path) {
 		$files=$this->getFiles();
 		$folderContent=array();
 		$pathLength=strlen($path);
-		foreach($files as $file){
-			if($file[0]=='/'){
-				$file=substr($file,1);
+		foreach($files as $file) {
+			if($file[0]=='/') {
+				$file=substr($file, 1);
 			}
-			if(substr($file,0,$pathLength)==$path and $file!=$path){
-				$result=substr($file,$pathLength);
-				if($pos=strpos($result,'/')){
-					$result=substr($result,0,$pos+1);
+			if(substr($file, 0, $pathLength)==$path and $file!=$path) {
+				$result=substr($file, $pathLength);
+				if($pos=strpos($result, '/')) {
+					$result=substr($result, 0, $pos+1);
 				}
-				if(array_search($result,$folderContent)===false){
+				if(array_search($result, $folderContent)===false) {
 					$folderContent[]=$result;
 				}
 			}
@@ -176,13 +176,13 @@ class OC_Archive_TAR extends OC_Archive{
 	 *get all files in the archive
 	 * @return array
 	 */
-	function getFiles(){
-		if($this->fileList){
+	function getFiles() {
+		if($this->fileList) {
 			return $this->fileList;
 		}
 		$headers=$this->tar->listContent();
 		$files=array();
-		foreach($headers as $header){
+		foreach($headers as $header) {
 			$files[]=$header['filename'];
 		}
 		$this->fileList=$files;
@@ -193,7 +193,7 @@ class OC_Archive_TAR extends OC_Archive{
 	 * @param string path
 	 * @return string
 	 */
-	function getFile($path){
+	function getFile($path) {
 		return $this->tar->extractInString($path);
 	}
 	/**
@@ -202,18 +202,18 @@ class OC_Archive_TAR extends OC_Archive{
 	 * @param string dest
 	 * @return bool
 	 */
-	function extractFile($path,$dest){
+	function extractFile($path,$dest) {
 		$tmp=OCP\Files::tmpFolder();
-		if(!$this->fileExists($path)){
+		if(!$this->fileExists($path)) {
 			return false;
 		}
-		if($this->fileExists('/'.$path)){
-			$success=$this->tar->extractList(array('/'.$path),$tmp);
+		if($this->fileExists('/'.$path)) {
+			$success=$this->tar->extractList(array('/'.$path), $tmp);
 		}else{
-			$success=$this->tar->extractList(array($path),$tmp);
+			$success=$this->tar->extractList(array($path), $tmp);
 		}
-		if($success){
-			rename($tmp.$path,$dest);
+		if($success) {
+			rename($tmp.$path, $dest);
 		}
 		OCP\Files::rmdirr($tmp);
 		return $success;
@@ -224,7 +224,7 @@ class OC_Archive_TAR extends OC_Archive{
 	 * @param string dest
 	 * @return bool
 	 */
-	function extract($dest){
+	function extract($dest) {
 		return $this->tar->extract($dest);
 	}
 	/**
@@ -232,36 +232,36 @@ class OC_Archive_TAR extends OC_Archive{
 	 * @param string path
 	 * @return bool
 	 */
-	function fileExists($path){
+	function fileExists($path) {
 		$files=$this->getFiles();
-		if((array_search($path,$files)!==false) or (array_search($path.'/',$files)!==false)){
+		if((array_search($path, $files)!==false) or (array_search($path.'/', $files)!==false)) {
 			return true;
 		}else{
 			$folderPath=$path;
-			if(substr($folderPath,-1,1)!='/'){
+			if(substr($folderPath, -1, 1)!='/') {
 				$folderPath.='/';
 			}
 			$pathLength=strlen($folderPath);
-			foreach($files as $file){
-				if(strlen($file)>$pathLength and substr($file,0,$pathLength)==$folderPath){
+			foreach($files as $file) {
+				if(strlen($file)>$pathLength and substr($file, 0, $pathLength)==$folderPath) {
 					return true;
 				}
 			}
 		}
-		if($path[0]!='/'){//not all programs agree on the use of a leading /
+		if($path[0]!='/') {//not all programs agree on the use of a leading /
 			return $this->fileExists('/'.$path);
 		}else{
 			return false;
 		}
 	}
-	
+
 	/**
 	 * remove a file or folder from the archive
 	 * @param string path
 	 * @return bool
 	 */
-	function remove($path){
-		if(!$this->fileExists($path)){
+	function remove($path) {
+		if(!$this->fileExists($path)) {
 			return false;
 		}
 		$this->fileList=false;
@@ -272,7 +272,7 @@ class OC_Archive_TAR extends OC_Archive{
 		$this->tar=null;
 		unlink($this->path);
 		$this->reopen();
-		$this->tar->createModify(array($tmp),'',$tmp);
+		$this->tar->createModify(array($tmp), '', $tmp);
 		return true;
 	}
 	/**
@@ -281,24 +281,24 @@ class OC_Archive_TAR extends OC_Archive{
 	 * @param string mode
 	 * @return resource
 	 */
-	function getStream($path,$mode){
-		if(strrpos($path,'.')!==false){
-			$ext=substr($path,strrpos($path,'.'));
+	function getStream($path,$mode) {
+		if(strrpos($path, '.')!==false) {
+			$ext=substr($path, strrpos($path, '.'));
 		}else{
 			$ext='';
 		}
 		$tmpFile=OCP\Files::tmpFile($ext);
-		if($this->fileExists($path)){
-			$this->extractFile($path,$tmpFile);
-		}elseif($mode=='r' or $mode=='rb'){
+		if($this->fileExists($path)) {
+			$this->extractFile($path, $tmpFile);
+		}elseif($mode=='r' or $mode=='rb') {
 			return false;
 		}
-		if($mode=='r' or $mode=='rb'){
-			return fopen($tmpFile,$mode);
+		if($mode=='r' or $mode=='rb') {
+			return fopen($tmpFile, $mode);
 		}else{
 			OC_CloseStreamWrapper::$callBacks[$tmpFile]=array($this,'writeBack');
 			self::$tempFiles[$tmpFile]=$path;
-			return fopen('close://'.$tmpFile,$mode);
+			return fopen('close://'.$tmpFile, $mode);
 		}
 	}
 
@@ -306,9 +306,9 @@ class OC_Archive_TAR extends OC_Archive{
 	/**
 	 * write back temporary files
 	 */
-	function writeBack($tmpFile){
-		if(isset(self::$tempFiles[$tmpFile])){
-			$this->addFile(self::$tempFiles[$tmpFile],$tmpFile);
+	function writeBack($tmpFile) {
+		if(isset(self::$tempFiles[$tmpFile])) {
+			$this->addFile(self::$tempFiles[$tmpFile], $tmpFile);
 			unlink($tmpFile);
 		}
 	}
@@ -316,12 +316,12 @@ class OC_Archive_TAR extends OC_Archive{
 	/**
 	 * reopen the archive to ensure everything is written
 	 */
-	private function reopen(){
-		if($this->tar){
+	private function reopen() {
+		if($this->tar) {
 			$this->tar->_close();
 			$this->tar=null;
 		}
 		$types=array(null,'gz','bz');
-		$this->tar=new Archive_Tar($this->path,$types[self::getTarType($this->path)]);
+		$this->tar=new Archive_Tar($this->path, $types[self::getTarType($this->path)]);
 	}
 }
diff --git a/lib/archive/zip.php b/lib/archive/zip.php
index c1a5c35738bfd6ef0fdabd78cdb259133761aaad..a2b07f1a35d530c180b29a6b93b15b0bbf016d3d 100644
--- a/lib/archive/zip.php
+++ b/lib/archive/zip.php
@@ -12,13 +12,13 @@ class OC_Archive_ZIP extends OC_Archive{
 	 */
 	private $zip=null;
 	private $path;
-	
-	function __construct($source){
+
+	function __construct($source) {
 		$this->path=$source;
 		$this->zip=new ZipArchive();
-		if($this->zip->open($source,ZipArchive::CREATE)){
+		if($this->zip->open($source, ZipArchive::CREATE)) {
 		}else{
-			OCP\Util::writeLog('files_archive','Error while opening archive '.$source,OCP\Util::WARN);
+			OCP\Util::writeLog('files_archive', 'Error while opening archive '.$source, OCP\Util::WARN);
 		}
 	}
 	/**
@@ -26,7 +26,7 @@ class OC_Archive_ZIP extends OC_Archive{
 	 * @param string path
 	 * @return bool
 	 */
-	function addFolder($path){
+	function addFolder($path) {
 		return $this->zip->addEmptyDir($path);
 	}
 	/**
@@ -35,13 +35,13 @@ class OC_Archive_ZIP extends OC_Archive{
 	 * @param string source either a local file or string data
 	 * @return bool
 	 */
-	function addFile($path,$source=''){
-		if($source and $source[0]=='/' and file_exists($source)){
-			$result=$this->zip->addFile($source,$path);
+	function addFile($path,$source='') {
+		if($source and $source[0]=='/' and file_exists($source)) {
+			$result=$this->zip->addFile($source, $path);
 		}else{
-			$result=$this->zip->addFromString($path,$source);
+			$result=$this->zip->addFromString($path, $source);
 		}
-		if($result){
+		if($result) {
 			$this->zip->close();//close and reopen to save the zip
 			$this->zip->open($this->path);
 		}
@@ -53,17 +53,17 @@ class OC_Archive_ZIP extends OC_Archive{
 	 * @param string dest
 	 * @return bool
 	 */
-	function rename($source,$dest){
+	function rename($source,$dest) {
 		$source=$this->stripPath($source);
 		$dest=$this->stripPath($dest);
-		$this->zip->renameName($source,$dest);
+		$this->zip->renameName($source, $dest);
 	}
 	/**
 	 * get the uncompressed size of a file in the archive
 	 * @param string path
 	 * @return int
 	 */
-	function filesize($path){
+	function filesize($path) {
 		$stat=$this->zip->statName($path);
 		return $stat['size'];
 	}
@@ -72,7 +72,7 @@ class OC_Archive_ZIP extends OC_Archive{
 	 * @param string path
 	 * @return int
 	 */
-	function mtime($path){
+	function mtime($path) {
 		return filemtime($this->path);
 	}
 	/**
@@ -80,14 +80,14 @@ class OC_Archive_ZIP extends OC_Archive{
 	 * @param path
 	 * @return array
 	 */
-	function getFolder($path){
+	function getFolder($path) {
 		$files=$this->getFiles();
 		$folderContent=array();
 		$pathLength=strlen($path);
-		foreach($files as $file){
-			if(substr($file,0,$pathLength)==$path and $file!=$path){
-				if(strrpos(substr($file,0,-1),'/')<=$pathLength){
-					$folderContent[]=substr($file,$pathLength);
+		foreach($files as $file) {
+			if(substr($file, 0, $pathLength)==$path and $file!=$path) {
+				if(strrpos(substr($file, 0, -1),'/')<=$pathLength) {
+					$folderContent[]=substr($file, $pathLength);
 				}
 			}
 		}
@@ -97,10 +97,10 @@ class OC_Archive_ZIP extends OC_Archive{
 	 *get all files in the archive
 	 * @return array
 	 */
-	function getFiles(){
+	function getFiles() {
 		$fileCount=$this->zip->numFiles;
 		$files=array();
-		for($i=0;$i<$fileCount;$i++){
+		for($i=0;$i<$fileCount;$i++) {
 			$files[]=$this->zip->getNameIndex($i);
 		}
 		return $files;
@@ -110,7 +110,7 @@ class OC_Archive_ZIP extends OC_Archive{
 	 * @param string path
 	 * @return string
 	 */
-	function getFile($path){
+	function getFile($path) {
 		return $this->zip->getFromName($path);
 	}
 	/**
@@ -119,9 +119,9 @@ class OC_Archive_ZIP extends OC_Archive{
 	 * @param string dest
 	 * @return bool
 	 */
-	function extractFile($path,$dest){
+	function extractFile($path,$dest) {
 		$fp = $this->zip->getStream($path);
-		file_put_contents($dest,$fp);
+		file_put_contents($dest, $fp);
 	}
 	/**
 	 * extract the archive
@@ -129,7 +129,7 @@ class OC_Archive_ZIP extends OC_Archive{
 	 * @param string dest
 	 * @return bool
 	 */
-	function extract($dest){
+	function extract($dest) {
 		return $this->zip->extractTo($dest);
 	}
 	/**
@@ -137,7 +137,7 @@ class OC_Archive_ZIP extends OC_Archive{
 	 * @param string path
 	 * @return bool
 	 */
-	function fileExists($path){
+	function fileExists($path) {
 		return ($this->zip->locateName($path)!==false) or ($this->zip->locateName($path.'/')!==false);
 	}
 	/**
@@ -145,8 +145,8 @@ class OC_Archive_ZIP extends OC_Archive{
 	 * @param string path
 	 * @return bool
 	 */
-	function remove($path){
-		if($this->fileExists($path.'/')){
+	function remove($path) {
+		if($this->fileExists($path.'/')) {
 			return $this->zip->deleteName($path.'/');
 		}else{
 			return $this->zip->deleteName($path);
@@ -158,22 +158,22 @@ class OC_Archive_ZIP extends OC_Archive{
 	 * @param string mode
 	 * @return resource
 	 */
-	function getStream($path,$mode){
-		if($mode=='r' or $mode=='rb'){
+	function getStream($path,$mode) {
+		if($mode=='r' or $mode=='rb') {
 			return $this->zip->getStream($path);
 		}else{//since we cant directly get a writable stream, make a temp copy of the file and put it back in the archive when the stream is closed
-			if(strrpos($path,'.')!==false){
-				$ext=substr($path,strrpos($path,'.'));
+			if(strrpos($path, '.')!==false) {
+				$ext=substr($path, strrpos($path, '.'));
 			}else{
 				$ext='';
 			}
 			$tmpFile=OCP\Files::tmpFile($ext);
 			OC_CloseStreamWrapper::$callBacks[$tmpFile]=array($this,'writeBack');
-			if($this->fileExists($path)){
-				$this->extractFile($path,$tmpFile);
+			if($this->fileExists($path)) {
+				$this->extractFile($path, $tmpFile);
 			}
 			self::$tempFiles[$tmpFile]=$path;
-			return fopen('close://'.$tmpFile,$mode);
+			return fopen('close://'.$tmpFile, $mode);
 		}
 	}
 
@@ -181,16 +181,16 @@ class OC_Archive_ZIP extends OC_Archive{
 	/**
 	 * write back temporary files
 	 */
-	function writeBack($tmpFile){
-		if(isset(self::$tempFiles[$tmpFile])){
-			$this->addFile(self::$tempFiles[$tmpFile],$tmpFile);
+	function writeBack($tmpFile) {
+		if(isset(self::$tempFiles[$tmpFile])) {
+			$this->addFile(self::$tempFiles[$tmpFile], $tmpFile);
 			unlink($tmpFile);
 		}
 	}
 
-	private function stripPath($path){
-		if(!$path || $path[0]=='/'){
-			return substr($path,1);
+	private function stripPath($path) {
+		if(!$path || $path[0]=='/') {
+			return substr($path, 1);
 		}else{
 			return $path;
 		}
diff --git a/lib/backgroundjob/queuedtask.php b/lib/backgroundjob/queuedtask.php
index a7ec3efbf3388743f7cce172162099c3f0b36234..8264e1a0ae66d97c46dbe728bcf969bf9e902966 100644
--- a/lib/backgroundjob/queuedtask.php
+++ b/lib/backgroundjob/queuedtask.php
@@ -29,7 +29,7 @@ class OC_BackgroundJob_QueuedTask{
 	 * @param $id ID of the task
 	 * @return associative array
 	 */
-	public static function find( $id ){
+	public static function find( $id ) {
 		$stmt = OC_DB::prepare( 'SELECT * FROM `*PREFIX*queuedtasks` WHERE `id` = ?' );
 		$result = $stmt->execute(array($id));
 		return $result->fetchRow();
@@ -39,14 +39,14 @@ class OC_BackgroundJob_QueuedTask{
 	 * @brief Gets all queued tasks
 	 * @return array with associative arrays
 	 */
-	public static function all(){
+	public static function all() {
 		// Array for objects
 		$return = array();
 
 		// Get Data
 		$stmt = OC_DB::prepare( 'SELECT * FROM `*PREFIX*queuedtasks`' );
 		$result = $stmt->execute(array());
-		while( $row = $result->fetchRow()){
+		while( $row = $result->fetchRow()) {
 			$return[] = $row;
 		}
 
@@ -58,14 +58,14 @@ class OC_BackgroundJob_QueuedTask{
 	 * @param $app app name
 	 * @return array with associative arrays
 	 */
-	public static function whereAppIs( $app ){
+	public static function whereAppIs( $app ) {
 		// Array for objects
 		$return = array();
 
 		// Get Data
 		$stmt = OC_DB::prepare( 'SELECT * FROM `*PREFIX*queuedtasks` WHERE `app` = ?' );
 		$result = $stmt->execute(array($app));
-		while( $row = $result->fetchRow()){
+		while( $row = $result->fetchRow()) {
 			$return[] = $row;
 		}
 
@@ -81,7 +81,7 @@ class OC_BackgroundJob_QueuedTask{
 	 * @param $parameters all useful data as text
 	 * @return id of task
 	 */
-	public static function add( $app, $klass, $method, $parameters ){
+	public static function add( $app, $klass, $method, $parameters ) {
 		$stmt = OC_DB::prepare( 'INSERT INTO `*PREFIX*queuedtasks` (`app`, `klass`, `method`, `parameters`) VALUES(?,?,?,?)' );
 		$result = $stmt->execute(array($app, $klass, $method, $parameters ));
 
@@ -95,7 +95,7 @@ class OC_BackgroundJob_QueuedTask{
 	 *
 	 * Deletes a report
 	 */
-	public static function delete( $id ){
+	public static function delete( $id ) {
 		$stmt = OC_DB::prepare( 'DELETE FROM `*PREFIX*queuedtasks` WHERE `id` = ?' );
 		$result = $stmt->execute(array($id));
 
diff --git a/lib/backgroundjob/regulartask.php b/lib/backgroundjob/regulartask.php
index 53bd4eb5e9b0e70c4ebbefddafb25eb95bd68428..9976872ee13f75f4005fb7bd8fc5a813c2f4715d 100644
--- a/lib/backgroundjob/regulartask.php
+++ b/lib/backgroundjob/regulartask.php
@@ -32,7 +32,7 @@ class OC_BackgroundJob_RegularTask{
 	 * @param $method method name
 	 * @return true
 	 */
-	static public function register( $klass, $method ){
+	static public function register( $klass, $method ) {
 		// Create the data structure
 		self::$registered["$klass-$method"] = array( $klass, $method );
 
@@ -46,7 +46,7 @@ class OC_BackgroundJob_RegularTask{
 	 *
 	 * key is string "$klass-$method", value is array( $klass, $method )
 	 */
-	static public function all(){
+	static public function all() {
 		return self::$registered;
 	}
 }
diff --git a/lib/backgroundjob/worker.php b/lib/backgroundjob/worker.php
index b4f0429b31958a1321fe78154b202b04eb9ec40f..e966ac9647c0fc90601bc58915c2e02ce0906d11 100644
--- a/lib/backgroundjob/worker.php
+++ b/lib/backgroundjob/worker.php
@@ -22,7 +22,7 @@
 
 /**
  * This class does the dirty work.
- * 
+ *
  * TODO: locking in doAllSteps
  */
 class OC_BackgroundJob_Worker{
@@ -34,14 +34,14 @@ class OC_BackgroundJob_Worker{
 	 * This method should be called by cli scripts that do not let the user
 	 * wait.
 	 */
-	public static function doAllSteps(){
+	public static function doAllSteps() {
 		// Do our regular work
 		$lasttask = OC_Appconfig::getValue( 'core', 'backgroundjobs_task', '' );
 
 		$regular_tasks = OC_BackgroundJob_RegularTask::all();
 		ksort( $regular_tasks );
-		foreach( $regular_tasks as $key => $value ){
-			if( strcmp( $key, $lasttask ) > 0 ){
+		foreach( $regular_tasks as $key => $value ) {
+			if( strcmp( $key, $lasttask ) > 0 ) {
 				// Set "restart here" config value
 				OC_Appconfig::setValue( 'core', 'backgroundjobs_task', $key );
 				call_user_func( $value );
@@ -52,11 +52,11 @@ class OC_BackgroundJob_Worker{
 
 		// Do our queued tasks
 		$queued_tasks = OC_BackgroundJob_QueuedTask::all();
-		foreach( $queued_tasks as $task ){
+		foreach( $queued_tasks as $task ) {
 			OC_BackgroundJob_QueuedTask::delete( $task['id'] );
 			call_user_func( array( $task['klass'], $task['method'] ), $task['parameters'] );
 		}
-		
+
 		return true;
 	}
 
@@ -68,10 +68,10 @@ class OC_BackgroundJob_Worker{
 	 * with the next step. This method should be used by webcron and ajax
 	 * services.
 	 */
-	public static function doNextStep(){
+	public static function doNextStep() {
 		$laststep = OC_Appconfig::getValue( 'core', 'backgroundjobs_step', 'regular_tasks' );
-		
-		if( $laststep == 'regular_tasks' ){
+
+		if( $laststep == 'regular_tasks' ) {
 			// get last app
 			$lasttask = OC_Appconfig::getValue( 'core', 'backgroundjobs_task', '' );
 
@@ -79,10 +79,10 @@ class OC_BackgroundJob_Worker{
 			$regular_tasks = OC_BackgroundJob_RegularTask::all();
 			ksort( $regular_tasks );
 			$done = false;
-			
+
 			// search for next background job
-			foreach( $regular_tasks as $key => $value ){
-				if( strcmp( $key, $lasttask ) > 0 ){
+			foreach( $regular_tasks as $key => $value ) {
+				if( strcmp( $key, $lasttask ) > 0 ) {
 					OC_Appconfig::setValue( 'core', 'backgroundjobs_task', $key );
 					$done = true;
 					call_user_func( $value );
@@ -90,14 +90,14 @@ class OC_BackgroundJob_Worker{
 				}
 			}
 
-			if( $done == false ){
+			if( $done == false ) {
 				// Next time load queued tasks
 				OC_Appconfig::setValue( 'core', 'backgroundjobs_step', 'queued_tasks' );
 			}
 		}
 		else{
 			$tasks = OC_BackgroundJob_QueuedTask::all();
-			if( count( $tasks )){
+			if( count( $tasks )) {
 				$task = $tasks[0];
 				// delete job before we execute it. This prevents endless loops
 				// of failing jobs.
@@ -112,7 +112,7 @@ class OC_BackgroundJob_Worker{
 				OC_Appconfig::setValue( 'core', 'backgroundjobs_task', '' );
 			}
 		}
-		
+
 		return true;
 	}
 }
diff --git a/lib/base.php b/lib/base.php
index b4f3e6671337bf4f434c04509d249b1cd3b1e8e9..679acdb6e5d1e5a9596facbb4aae1af2102aa7b0 100644
--- a/lib/base.php
+++ b/lib/base.php
@@ -51,7 +51,8 @@ class OC{
 	 */
 	public static $THIRDPARTYWEBROOT = '';
 	/**
-	 * The installation path array of the apps folder on the server (e.g. /srv/http/owncloud) 'path' and web path in 'url'
+	 * The installation path array of the apps folder on the server (e.g. /srv/http/owncloud) 'path' and
+	 * web path in 'url'
 	 */
 	public static $APPSROOTS = array();
 	/*
@@ -69,50 +70,57 @@ class OC{
 	/**
 	 * SPL autoload
 	 */
-	public static function autoload($className){
-		if(array_key_exists($className,OC::$CLASSPATH)){
+	public static function autoload($className) {
+		if(array_key_exists($className, OC::$CLASSPATH)) {
 			/** @TODO: Remove this when necessary
 			 Remove "apps/" from inclusion path for smooth migration to mutli app dir
 			*/
-			$path = preg_replace('/apps\//','', OC::$CLASSPATH[$className]);
+			$path = str_replace('apps/', '', OC::$CLASSPATH[$className]);
 			require_once $path;
 		}
-		elseif(strpos($className,'OC_')===0){
-			require_once strtolower(str_replace('_','/',substr($className,3)) . '.php');
+		elseif(strpos($className, 'OC_')===0) {
+			$path = strtolower(str_replace('_', '/', substr($className, 3)) . '.php');
 		}
-		elseif(strpos($className,'OCP\\')===0){
-			require_once 'public/'.strtolower(str_replace('\\','/',substr($className,3)) . '.php');
+		elseif(strpos($className, 'OCP\\')===0) {
+			$path = 'public/'.strtolower(str_replace('\\', '/', substr($className, 3)) . '.php');
 		}
-		elseif(strpos($className,'OCA\\')===0){
-			require_once 'apps/'.strtolower(str_replace('\\','/',substr($className,3)) . '.php');
+		elseif(strpos($className, 'OCA\\')===0) {
+			$path = 'apps/'.strtolower(str_replace('\\', '/', substr($className, 3)) . '.php');
 		}
-		elseif(strpos($className,'Sabre_')===0) {
-			require_once str_replace('_','/',$className) . '.php';
+		elseif(strpos($className, 'Sabre_')===0) {
+			$path =  str_replace('_', '/', $className) . '.php';
 		}
-		elseif(strpos($className,'Test_')===0){
-			require_once '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;
+		}
+
+		if($fullPath = stream_resolve_include_path($path)) {
+			require_once $path;
 		}
+		return false;
 	}
 
-	public static function initPaths(){
+	public static function initPaths() {
 		// calculate the root directories
-		OC::$SERVERROOT=str_replace("\\",'/',substr(__FILE__,0,-13));
-		OC::$SUBURI= str_replace("\\","/",substr(realpath($_SERVER["SCRIPT_FILENAME"]),strlen(OC::$SERVERROOT)));
+		OC::$SERVERROOT=str_replace("\\", '/', substr(__FILE__, 0, -13));
+		OC::$SUBURI= str_replace("\\", "/", substr(realpath($_SERVER["SCRIPT_FILENAME"]), strlen(OC::$SERVERROOT)));
 		$scriptName=$_SERVER["SCRIPT_NAME"];
-		if(substr($scriptName,-1)=='/'){
+		if(substr($scriptName, -1)=='/') {
 			$scriptName.='index.php';
 			//make sure suburi follows the same rules as scriptName
-			if(substr(OC::$SUBURI,-9)!='index.php'){
-				if(substr(OC::$SUBURI,-1)!='/'){
+			if(substr(OC::$SUBURI, -9)!='index.php') {
+				if(substr(OC::$SUBURI, -1)!='/') {
 					OC::$SUBURI=OC::$SUBURI.'/';
 				}
 				OC::$SUBURI=OC::$SUBURI.'index.php';
 			}
 		}
 
-		OC::$WEBROOT=substr($scriptName,0,strlen($scriptName)-strlen(OC::$SUBURI));
+		OC::$WEBROOT=substr($scriptName, 0, strlen($scriptName)-strlen(OC::$SUBURI));
 
-		if(OC::$WEBROOT!='' and OC::$WEBROOT[0]!=='/'){
+		if(OC::$WEBROOT!='' and OC::$WEBROOT[0]!=='/') {
 			OC::$WEBROOT='/'.OC::$WEBROOT;
 		}
 
@@ -123,13 +131,13 @@ class OC{
 		);
 
 		// search the 3rdparty folder
-		if(OC_Config::getValue('3rdpartyroot', '')<>'' and OC_Config::getValue('3rdpartyurl', '')<>''){
+		if(OC_Config::getValue('3rdpartyroot', '')<>'' and OC_Config::getValue('3rdpartyurl', '')<>'') {
 			OC::$THIRDPARTYROOT=OC_Config::getValue('3rdpartyroot', '');
 			OC::$THIRDPARTYWEBROOT=OC_Config::getValue('3rdpartyurl', '');
-		}elseif(file_exists(OC::$SERVERROOT.'/3rdparty')){
+		}elseif(file_exists(OC::$SERVERROOT.'/3rdparty')) {
 			OC::$THIRDPARTYROOT=OC::$SERVERROOT;
 			OC::$THIRDPARTYWEBROOT=OC::$WEBROOT;
-		}elseif(file_exists(OC::$SERVERROOT.'/../3rdparty')){
+		}elseif(file_exists(OC::$SERVERROOT.'/../3rdparty')) {
 			OC::$THIRDPARTYWEBROOT=rtrim(dirname(OC::$WEBROOT), '/');
 			OC::$THIRDPARTYROOT=rtrim(dirname(OC::$SERVERROOT), '/');
 		}else{
@@ -138,21 +146,21 @@ class OC{
 		}
 		// search the apps folder
 		$config_paths = OC_Config::getValue('apps_paths', array());
-		if(! empty($config_paths)){
+		if(! empty($config_paths)) {
 			foreach($config_paths as $paths) {
 				if( isset($paths['url']) && isset($paths['path'])) {
-					$paths['url'] = rtrim($paths['url'],'/');
-					$paths['path'] = rtrim($paths['path'],'/');
+					$paths['url'] = rtrim($paths['url'], '/');
+					$paths['path'] = rtrim($paths['path'], '/');
 					OC::$APPSROOTS[] = $paths;
 				}
 			}
-		}elseif(file_exists(OC::$SERVERROOT.'/apps')){
+		}elseif(file_exists(OC::$SERVERROOT.'/apps')) {
 			OC::$APPSROOTS[] = array('path'=> OC::$SERVERROOT.'/apps', 'url' => '/apps', 'writable' => true);
-		}elseif(file_exists(OC::$SERVERROOT.'/../apps')){
+		}elseif(file_exists(OC::$SERVERROOT.'/../apps')) {
 			OC::$APPSROOTS[] = array('path'=> rtrim(dirname(OC::$SERVERROOT), '/').'/apps', 'url' => '/apps', 'writable' => true);
 		}
 
-		if(empty(OC::$APPSROOTS)){
+		if(empty(OC::$APPSROOTS)) {
 			echo("apps directory not found! Please put the ownCloud apps folder in the ownCloud folder or the folder above. You can also configure the location in the config.php file.");
 			exit;
 		}
@@ -174,7 +182,7 @@ class OC{
 	public static function checkInstalled() {
 		// Redirect to installer if not installed
 		if (!OC_Config::getValue('installed', false) && OC::$SUBURI != '/index.php') {
-			if(!OC::$CLI){
+			if(!OC::$CLI) {
 				$url = 'http://'.$_SERVER['SERVER_NAME'].OC::$WEBROOT.'/index.php';
 				header("Location: $url");
 			}
@@ -184,7 +192,7 @@ class OC{
 
 	public static function checkSSL() {
 		// redirect to https site if configured
-		if( OC_Config::getValue( "forcessl", false )){
+		if( OC_Config::getValue( "forcessl", false )) {
 			ini_set("session.cookie_secure", "on");
 			if(OC_Request::serverProtocol()<>'https' and !OC::$CLI) {
 				$url = "https://". OC_Request::serverHost() . $_SERVER['REQUEST_URI'];
@@ -195,24 +203,25 @@ class OC{
 	}
 
 	public static function checkUpgrade() {
-		if(OC_Config::getValue('installed', false)){
-			$installedVersion=OC_Config::getValue('version','0.0.0');
-			$currentVersion=implode('.',OC_Util::getVersion());
+		if(OC_Config::getValue('installed', false)) {
+			$installedVersion=OC_Config::getValue('version', '0.0.0');
+			$currentVersion=implode('.', OC_Util::getVersion());
 			if (version_compare($currentVersion, $installedVersion, '>')) {
-				OC_Log::write('core','starting upgrade from '.$installedVersion.' to '.$currentVersion,OC_Log::DEBUG);
+				OC_Log::write('core', 'starting upgrade from '.$installedVersion.' to '.$currentVersion, OC_Log::DEBUG);
 				$result=OC_DB::updateDbFromStructure(OC::$SERVERROOT.'/db_structure.xml');
-				if(!$result){
+				if(!$result) {
 					echo 'Error while upgrading the database';
 					die();
 				}
 				if(file_exists(OC::$SERVERROOT."/config/config.php") and !is_writable(OC::$SERVERROOT."/config/config.php")) {
 					$tmpl = new OC_Template( '', 'error', 'guest' );
-					$tmpl->assign('errors',array(1=>array('error'=>"Can't write into config directory 'config'",'hint'=>"You can usually fix this by giving the webserver user write access to the config directory in owncloud")));
+					$tmpl->assign('errors', array(1=>array('error'=>"Can't write into config directory 'config'",'hint'=>"You can usually fix this by giving the webserver user write access to the config directory in owncloud")));
 					$tmpl->printPage();
 					exit;
 				}
+				OC_Minimizer::clearCache();
 
-				OC_Config::setValue('version',implode('.',OC_Util::getVersion()));
+				OC_Config::setValue('version', implode('.', OC_Util::getVersion()));
 				OC_App::checkAppsRequirements();
 				// load all apps to also upgrade enabled apps
 				OC_App::loadApps();
@@ -232,14 +241,14 @@ class OC{
 		OC_Util::addScript( "eventsource" );
 		OC_Util::addScript( "config" );
 		//OC_Util::addScript( "multiselect" );
-		OC_Util::addScript('search','result');
+		OC_Util::addScript('search', 'result');
 
-		if( OC_Config::getValue( 'installed', false )){
-			if( OC_Appconfig::getValue( 'core', 'backgroundjobs_mode', 'ajax' ) == 'ajax' ){
+		if( OC_Config::getValue( 'installed', false )) {
+			if( OC_Appconfig::getValue( 'core', 'backgroundjobs_mode', 'ajax' ) == 'ajax' ) {
 				OC_Util::addScript( 'backgroundjobs' );
 			}
 		}
-		
+
 		OC_Util::addStyle( "styles" );
 		OC_Util::addStyle( "multiselect" );
 		OC_Util::addStyle( "jquery-ui-1.8.16.custom" );
@@ -247,11 +256,11 @@ class OC{
 	}
 
 	public static function initSession() {
-		ini_set('session.cookie_httponly','1;');
+		ini_set('session.cookie_httponly', '1;');
 		session_start();
 	}
 
-	public static function init(){
+	public static function init() {
 		// register autoloader
 		spl_autoload_register(array('OC','autoload'));
 		setlocale(LC_ALL, 'en_US.UTF-8');
@@ -259,13 +268,13 @@ class OC{
 		// set some stuff
 		//ob_start();
 		error_reporting(E_ALL | E_STRICT);
-		if (defined('DEBUG') && DEBUG){
+		if (defined('DEBUG') && DEBUG) {
 			ini_set('display_errors', 1);
 		}
 		self::$CLI=(php_sapi_name() == 'cli');
 
 		date_default_timezone_set('UTC');
-		ini_set('arg_separator.output','&amp;');
+		ini_set('arg_separator.output', '&amp;');
 
 		// try to switch magic quotes off.
 		if(function_exists('set_magic_quotes_runtime')) {
@@ -278,29 +287,27 @@ class OC{
 
 		//try to set the maximum execution time to 60min
 		@set_time_limit(3600);
-		@ini_set('max_execution_time',3600);
-		@ini_set('max_input_time',3600);
+		@ini_set('max_execution_time', 3600);
+		@ini_set('max_input_time', 3600);
 
 		//try to set the maximum filesize to 10G
-		@ini_set('upload_max_filesize','10G');
-		@ini_set('post_max_size','10G');
-		@ini_set('file_uploads','50');
+		@ini_set('upload_max_filesize', '10G');
+		@ini_set('post_max_size', '10G');
+		@ini_set('file_uploads', '50');
 
 		//try to set the session lifetime to 60min
-		@ini_set('gc_maxlifetime','3600');
+		@ini_set('gc_maxlifetime', '3600');
 
 
 		//set http auth headers for apache+php-cgi work around
-		if (isset($_SERVER['HTTP_AUTHORIZATION']) && preg_match('/Basic\s+(.*)$/i', $_SERVER['HTTP_AUTHORIZATION'], $matches))
-		{
+		if (isset($_SERVER['HTTP_AUTHORIZATION']) && preg_match('/Basic\s+(.*)$/i', $_SERVER['HTTP_AUTHORIZATION'], $matches)) {
 			list($name, $password) = explode(':', base64_decode($matches[1]));
 			$_SERVER['PHP_AUTH_USER'] = strip_tags($name);
 			$_SERVER['PHP_AUTH_PW'] = strip_tags($password);
 		}
 
 		//set http auth headers for apache+php-cgi work around if variable gets renamed by apache
-		if (isset($_SERVER['REDIRECT_HTTP_AUTHORIZATION']) && preg_match('/Basic\s+(.*)$/i', $_SERVER['REDIRECT_HTTP_AUTHORIZATION'], $matches))
-		{
+		if (isset($_SERVER['REDIRECT_HTTP_AUTHORIZATION']) && preg_match('/Basic\s+(.*)$/i', $_SERVER['REDIRECT_HTTP_AUTHORIZATION'], $matches)) {
 			list($name, $password) = explode(':', base64_decode($matches[1]));
 			$_SERVER['PHP_AUTH_USER'] = strip_tags($name);
 			$_SERVER['PHP_AUTH_PW'] = strip_tags($password);
@@ -308,8 +315,15 @@ class OC{
 
 		self::initPaths();
 
+		// set debug mode if an xdebug session is active
+		if (!defined('DEBUG') || !DEBUG) {
+			if(isset($_COOKIE['XDEBUG_SESSION'])) {
+				define('DEBUG', true);
+			}
+		}
+
 		// register the stream wrappers
-		require_once('streamwrappers.php');
+		require_once 'streamwrappers.php';
 		stream_wrapper_register("fakedir", "OC_FakeDirStream");
 		stream_wrapper_register('static', 'OC_StaticStreamWrapper');
 		stream_wrapper_register('close', 'OC_CloseStreamWrapper');
@@ -327,7 +341,7 @@ class OC{
 		}
 
 		// User and Groups
-		if( !OC_Config::getValue( "installed", false )){
+		if( !OC_Config::getValue( "installed", false )) {
 			$_SESSION['user_id'] = '';
 		}
 
@@ -338,16 +352,23 @@ class OC{
 		// This includes plugins for users and filesystems as well
 		global $RUNTIME_NOAPPS;
 		global $RUNTIME_APPTYPES;
-		if(!$RUNTIME_NOAPPS ){
-			if($RUNTIME_APPTYPES){
+		if(!$RUNTIME_NOAPPS ) {
+			if($RUNTIME_APPTYPES) {
 				OC_App::loadApps($RUNTIME_APPTYPES);
 			}else{
 				OC_App::loadApps();
 			}
 		}
 
+		//setup extra user backends
+		OC_User::setupBackends();
+
+		// register cache cleanup jobs
+		OC_BackgroundJob_RegularTask::register('OC_Cache_FileGlobal', 'gc');
+		OC_Hook::connect('OC_User', 'post_login', 'OC_Cache_File', 'loginListener');
+
 		// Check for blacklisted files
-		OC_Hook::connect('OC_Filesystem','write','OC_Filesystem','isBlacklisted');
+		OC_Hook::connect('OC_Filesystem', 'write', 'OC_Filesystem', 'isBlacklisted');
 		OC_Hook::connect('OC_Filesystem', 'rename', 'OC_Filesystem', 'isBlacklisted');
 
 		//make sure temporary files are cleaned up
@@ -355,7 +376,7 @@ class OC{
 
 		//parse the given parameters
 		self::$REQUESTEDAPP = (isset($_GET['app']) && trim($_GET['app']) != '' && !is_null($_GET['app'])?str_replace(array('\0', '/', '\\', '..'), '', strip_tags($_GET['app'])):OC_Config::getValue('defaultapp', 'files'));
-		if(substr_count(self::$REQUESTEDAPP, '?') != 0){
+		if(substr_count(self::$REQUESTEDAPP, '?') != 0) {
 			$app = substr(self::$REQUESTEDAPP, 0, strpos(self::$REQUESTEDAPP, '?'));
 			$param = substr($_GET['app'], strpos($_GET['app'], '?') + 1);
 			parse_str($param, $get);
@@ -364,7 +385,7 @@ class OC{
 			$_GET['app'] = $app;
 		}
 		self::$REQUESTEDFILE = (isset($_GET['getfile'])?$_GET['getfile']:null);
-		if(substr_count(self::$REQUESTEDFILE, '?') != 0){
+		if(substr_count(self::$REQUESTEDFILE, '?') != 0) {
 			$file = substr(self::$REQUESTEDFILE, 0, strpos(self::$REQUESTEDFILE, '?'));
 			$param = substr(self::$REQUESTEDFILE, strpos(self::$REQUESTEDFILE, '?') + 1);
 			parse_str($param, $get);
@@ -372,10 +393,10 @@ class OC{
 			self::$REQUESTEDFILE = $file;
 			$_GET['getfile'] = $file;
 		}
-		if(!is_null(self::$REQUESTEDFILE)){
+		if(!is_null(self::$REQUESTEDFILE)) {
 			$subdir = OC_App::getAppPath(OC::$REQUESTEDAPP) . '/' . self::$REQUESTEDFILE;
 			$parent = OC_App::getAppPath(OC::$REQUESTEDAPP);
-			if(!OC_Helper::issubdirectory($subdir, $parent)){
+			if(!OC_Helper::issubdirectory($subdir, $parent)) {
 				self::$REQUESTEDFILE = null;
 				header('HTTP/1.0 404 Not Found');
 				exit;
@@ -390,30 +411,31 @@ class OC{
 		if (!OC_Config::getValue('installed', false)) {
 			// Check for autosetup:
 			$autosetup_file = OC::$SERVERROOT."/config/autoconfig.php";
-			if( file_exists( $autosetup_file )){
-				OC_Log::write('core','Autoconfig file found, setting up owncloud...',OC_Log::INFO);
-				include( $autosetup_file );
+			if( file_exists( $autosetup_file )) {
+				OC_Log::write('core', 'Autoconfig file found, setting up owncloud...', OC_Log::INFO);
+				include $autosetup_file;
 				$_POST['install'] = 'true';
 				$_POST = array_merge ($_POST, $AUTOCONFIG);
 				unlink($autosetup_file);
 			}
 			OC_Util::addScript('setup');
-			require_once('setup.php');
+			require_once 'setup.php';
 			exit();
 		}
 		// Handle WebDAV
-		if($_SERVER['REQUEST_METHOD']=='PROPFIND'){
+		if($_SERVER['REQUEST_METHOD']=='PROPFIND') {
 			header('location: '.OC_Helper::linkToRemote('webdav'));
 			return;
 		}
 		// Handle app css files
-		if(substr(OC::$REQUESTEDFILE,-3) == 'css') {
+		if(substr(OC::$REQUESTEDFILE, -3) == 'css') {
 			self::loadCSSFile();
 			return;
 		}
 		// Someone is logged in :
 		if(OC_User::isLoggedIn()) {
 			OC_App::loadApps();
+			OC_User::setupBackends();
 			if(isset($_GET["logout"]) and ($_GET["logout"])) {
 				OC_User::logout();
 				header("Location: ".OC::$WEBROOT.'/');
@@ -424,8 +446,7 @@ class OC{
 					$file = 'index.php';
 				}
 				$file_ext = substr($file, -3);
-				if ($file_ext != 'php'
-					|| !self::loadAppScriptFile($app, $file)) {
+				if ($file_ext != 'php'|| !self::loadAppScriptFile($app, $file)) {
 					header('HTTP/1.0 404 Not Found');
 				}
 			}
@@ -440,7 +461,7 @@ class OC{
 		$file = $app_path . '/' . $file;
 		unset($app, $app_path);
 		if (file_exists($file)) {
-			require_once($file);
+			require_once $file;
 			return true;
 		}
 		return false;
@@ -469,7 +490,7 @@ class OC{
 		// Someone wants to log in :
 		} elseif (OC::tryFormLogin()) {
 			$error = true;
-		
+
 		// The user is already authenticated using Apaches AuthType Basic... very usable in combination with LDAP
 		} elseif (OC::tryBasicAuthLogin()) {
 			$error = true;
@@ -479,18 +500,20 @@ class OC{
 
 	protected static function tryRememberLogin() {
 		if(!isset($_COOKIE["oc_remember_login"])
-		|| !isset($_COOKIE["oc_token"])
-		|| !isset($_COOKIE["oc_username"])
-		|| !$_COOKIE["oc_remember_login"]) {
+			|| !isset($_COOKIE["oc_token"])
+			|| !isset($_COOKIE["oc_username"])
+			|| !$_COOKIE["oc_remember_login"])
+		{
 			return false;
 		}
 		OC_App::loadApps(array('authentication'));
 		if(defined("DEBUG") && DEBUG) {
-			OC_Log::write('core','Trying to login from cookie',OC_Log::DEBUG);
+			OC_Log::write('core', 'Trying to login from cookie', OC_Log::DEBUG);
 		}
 		// confirm credentials in cookie
 		if(isset($_COOKIE['oc_token']) && OC_User::userExists($_COOKIE['oc_username']) &&
-		OC_Preferences::getValue($_COOKIE['oc_username'], "login", "token") === $_COOKIE['oc_token']) {
+			OC_Preferences::getValue($_COOKIE['oc_username'], "login", "token") === $_COOKIE['oc_token'])
+		{
 			OC_User::setUserId($_COOKIE['oc_username']);
 			OC_Util::redirectToDefaultPage();
 		}
@@ -508,11 +531,16 @@ class OC{
 		|| ($_SESSION['sectoken']!=$_POST['sectoken']) ) {
 			return false;
 		}
+
 		OC_App::loadApps();
+
+		//setup extra user backends
+		OC_User::setupBackends();
+
 		if(OC_User::login($_POST["user"], $_POST["password"])) {
-			if(!empty($_POST["remember_login"])){
+			if(!empty($_POST["remember_login"])) {
 				if(defined("DEBUG") && DEBUG) {
-					OC_Log::write('core','Setting remember login to cookie', OC_Log::DEBUG);
+					OC_Log::write('core', 'Setting remember login to cookie', OC_Log::DEBUG);
 				}
 				$token = md5($_POST["user"].time().$_POST['password']);
 				OC_Preferences::setValue($_POST['user'], 'login', 'token', $token);
@@ -528,11 +556,11 @@ class OC{
 
 	protected static function tryBasicAuthLogin() {
 		if (!isset($_SERVER["PHP_AUTH_USER"])
-		 || !isset($_SERVER["PHP_AUTH_PW"])){
-		 	return false;
+		 || !isset($_SERVER["PHP_AUTH_PW"])) {
+			return false;
 		}
 		OC_App::loadApps(array('authentication'));
-		if (OC_User::login($_SERVER["PHP_AUTH_USER"],$_SERVER["PHP_AUTH_PW"]))	{
+		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']:'');
@@ -544,7 +572,7 @@ class OC{
 }
 
 // define runtime variables - unless this already has been done
-if( !isset( $RUNTIME_NOAPPS )){
+if( !isset( $RUNTIME_NOAPPS )) {
 	$RUNTIME_NOAPPS = false;
 }
 
@@ -554,7 +582,7 @@ if(!function_exists('get_temp_dir')) {
 		if( $temp=getenv('TMP') )        return $temp;
 		if( $temp=getenv('TEMP') )        return $temp;
 		if( $temp=getenv('TMPDIR') )    return $temp;
-		$temp=tempnam(__FILE__,'');
+		$temp=tempnam(__FILE__, '');
 		if (file_exists($temp)) {
 			unlink($temp);
 			return dirname($temp);
diff --git a/lib/cache.php b/lib/cache.php
index 55f189a5da8e1f5400c3a47cabc5ebf0900f31d3..62003793d5f5c5bc5e76f229e5871c926c600071 100644
--- a/lib/cache.php
+++ b/lib/cache.php
@@ -38,14 +38,14 @@ class OC_Cache {
 			if (!self::$global_cache_fast && function_exists('apc_store')) {
 				self::$global_cache_fast = new OC_Cache_APC(true);
 			}
-			
+
 			self::$global_cache = new OC_Cache_FileGlobal();
 			if (self::$global_cache_fast) {
 				self::$global_cache = new OC_Cache_Broker(self::$global_cache_fast, self::$global_cache);
 			}
 		}
-		if($fast){
-			if(self::$global_cache_fast){
+		if($fast) {
+			if(self::$global_cache_fast) {
 				return self::$global_cache_fast;
 			}else{
 				return false;
@@ -67,15 +67,15 @@ class OC_Cache {
 			if (!self::$user_cache_fast && function_exists('apc_store')) {
 				self::$user_cache_fast = new OC_Cache_APC();
 			}
-			
+
 			self::$user_cache = new OC_Cache_File();
 			if (self::$user_cache_fast) {
 				self::$user_cache = new OC_Cache_Broker(self::$user_cache_fast, self::$user_cache);
 			}
 		}
 
-		if($fast){
-			if(self::$user_cache_fast){
+		if($fast) {
+			if(self::$user_cache_fast) {
 				return self::$user_cache_fast;
 			}else{
 				return false;
@@ -138,7 +138,7 @@ class OC_Cache {
 	 * @return true
 	 */
 	static public function isFast() {
-		if(is_null(self::$isFast)){
+		if(is_null(self::$isFast)) {
 			self::$isFast=function_exists('xcache_set') || function_exists('apc_store');
 		}
 		return self::$isFast;
diff --git a/lib/cache/apc.php b/lib/cache/apc.php
index c192fe2f196817fbefeba9c6742215f221ac4fe3..6dda0a0ff8c8fb858a93943fd282a8ef27d3079f 100644
--- a/lib/cache/apc.php
+++ b/lib/cache/apc.php
@@ -43,7 +43,7 @@ class OC_Cache_APC {
 		return apc_delete($this->getNamespace().$key);
 	}
 
-	public function clear($prefix=''){
+	public function clear($prefix='') {
 		$ns = $this->getNamespace().$prefix;
 		$cache = apc_cache_info('user');
 		foreach($cache['cache_list'] as $entry) {
diff --git a/lib/cache/broker.php b/lib/cache/broker.php
index c2aceabaf53d8656e6864be14e8e1f537e59d8dd..a161dbfa3bb1c2664b9eb4ab25c0ddf57da90633 100644
--- a/lib/cache/broker.php
+++ b/lib/cache/broker.php
@@ -46,7 +46,7 @@ class OC_Cache_Broker {
 		return $this->slow_cache->remove($key);
 	}
 
-	public function clear($prefix=''){
+	public function clear($prefix='') {
 		$this->fast_cache->clear($prefix);
 		$this->slow_cache->clear($prefix);
 	}
diff --git a/lib/cache/file.php b/lib/cache/file.php
index 562c3d1716780f162f8be62492c6aaca8bf92acc..27d8b19f36e83042a710aa4d4de4a2bf39981dbc 100644
--- a/lib/cache/file.php
+++ b/lib/cache/file.php
@@ -8,16 +8,21 @@
 
 
 class OC_Cache_File{
+	protected $storage;
 	protected function getStorage() {
-		if(OC_User::isLoggedIn()){
+		if (isset($this->storage)) {
+			return $this->storage;
+		}
+		if(OC_User::isLoggedIn()) {
 			$subdir = 'cache';
 			$view = new OC_FilesystemView('/'.OC_User::getUser());
 			if(!$view->file_exists($subdir)) {
 				$view->mkdir($subdir);
 			}
-			return new OC_FilesystemView('/'.OC_User::getUser().'/'.$subdir);
+			$this->storage = new OC_FilesystemView('/'.OC_User::getUser().'/'.$subdir);
+			return $this->storage;
 		}else{
-			OC_Log::write('core','Can\'t get cache storage, user not logged in', OC_Log::ERROR);
+			OC_Log::write('core', 'Can\'t get cache storage, user not logged in', OC_Log::ERROR);
 			return false;
 		}
 	}
@@ -56,22 +61,43 @@ class OC_Cache_File{
 
 	public function remove($key) {
 		$storage = $this->getStorage();
-		if(!$storage){
+		if(!$storage) {
 			return false;
 		}
 		return $storage->unlink($key);
 	}
 
-	public function clear($prefix=''){
+	public function clear($prefix='') {
 		$storage = $this->getStorage();
-		if($storage and $storage->is_dir('/')){
+		if($storage and $storage->is_dir('/')) {
 			$dh=$storage->opendir('/');
-			while($file=readdir($dh)){
-				if($file!='.' and $file!='..' and ($prefix==='' || strpos($file, $prefix) === 0)){
+			while($file=readdir($dh)) {
+				if($file!='.' and $file!='..' and ($prefix==='' || strpos($file, $prefix) === 0)) {
 					$storage->unlink('/'.$file);
 				}
 			}
 		}
 		return true;
 	}
+
+	public function gc() {
+		$storage = $this->getStorage();
+		if($storage and $storage->is_dir('/')) {
+			$now = time();
+			$dh=$storage->opendir('/');
+			while($file=readdir($dh)) {
+				if($file!='.' and $file!='..') {
+					$mtime = $storage->filemtime('/'.$file);
+					if ($mtime < $now) {
+						$storage->unlink('/'.$file);
+					}
+				}
+			}
+		}
+	}
+
+	public static function loginListener() {
+		$c = new self();
+		$c->gc();
+	}
 }
diff --git a/lib/cache/fileglobal.php b/lib/cache/fileglobal.php
index 1c2c9bdc82d293890296b750476ce22b5a91b9a5..6d01964e185605baa1a4d00de13accc0889ad43d 100644
--- a/lib/cache/fileglobal.php
+++ b/lib/cache/fileglobal.php
@@ -8,7 +8,7 @@
 
 
 class OC_Cache_FileGlobal{
-	protected function getCacheDir() {
+	static protected function getCacheDir() {
 		$cache_dir = get_temp_dir().'/owncloud-'.OC_Util::getInstanceId().'/';
 		if (!is_dir($cache_dir)) {
 			mkdir($cache_dir);
@@ -23,7 +23,7 @@ class OC_Cache_FileGlobal{
 	public function get($key) {
 		$key = $this->fixKey($key);
 		if ($this->hasKey($key)) {
-			$cache_dir = $this->getCacheDir();
+			$cache_dir = self::getCacheDir();
 			return file_get_contents($cache_dir.$key);
 		}
 		return null;
@@ -31,7 +31,7 @@ class OC_Cache_FileGlobal{
 
 	public function set($key, $value, $ttl=0) {
 		$key = $this->fixKey($key);
-		$cache_dir = $this->getCacheDir();
+		$cache_dir = self::getCacheDir();
 		if ($cache_dir and file_put_contents($cache_dir.$key, $value)) {
 			if ($ttl === 0) {
 				$ttl = 86400; // 60*60*24
@@ -43,7 +43,7 @@ class OC_Cache_FileGlobal{
 
 	public function hasKey($key) {
 		$key = $this->fixKey($key);
-		$cache_dir = $this->getCacheDir();
+		$cache_dir = self::getCacheDir();
 		if ($cache_dir && is_file($cache_dir.$key)) {
 			$mtime = filemtime($cache_dir.$key);
 			if ($mtime < time()) {
@@ -56,23 +56,46 @@ class OC_Cache_FileGlobal{
 	}
 
 	public function remove($key) {
-		$cache_dir = $this->getCacheDir();
-		if(!$cache_dir){
+		$cache_dir = self::getCacheDir();
+		if(!$cache_dir) {
 			return false;
 		}
 		$key = $this->fixKey($key);
 		return unlink($cache_dir.$key);
 	}
 
-	public function clear(){
-		$cache_dir = $this->getCacheDir();
-		if($cache_dir and is_dir($cache_dir)){
+	public function clear($prefix='') {
+		$cache_dir = self::getCacheDir();
+		$prefix = $this->fixKey($prefix);
+		if($cache_dir and is_dir($cache_dir)) {
 			$dh=opendir($cache_dir);
-			while($file=readdir($dh)){
-				if($file!='.' and $file!='..'){
+			while($file=readdir($dh)) {
+				if($file!='.' and $file!='..' and ($prefix==='' || strpos($file, $prefix) === 0)) {
 					unlink($cache_dir.$file);
 				}
 			}
 		}
 	}
+
+	static public function gc() {
+		$last_run = OC_AppConfig::getValue('core', 'global_cache_gc_lastrun', 0);
+		$now = time();
+		if (($now - $last_run) < 300) {
+			// only do cleanup every 5 minutes
+			return;
+		}
+		OC_AppConfig::setValue('core', 'global_cache_gc_lastrun', $now);
+		$cache_dir = self::getCacheDir();
+		if($cache_dir and is_dir($cache_dir)) {
+			$dh=opendir($cache_dir);
+			while($file=readdir($dh)) {
+				if($file!='.' and $file!='..') {
+					$mtime = filemtime($cache_dir.$file);
+					if ($mtime < $now) {
+						unlink($cache_dir.$file);
+					}
+				}
+			}
+		}
+	}
 }
diff --git a/lib/cache/xcache.php b/lib/cache/xcache.php
index 951f9b47545f6ef1a2790074d00ef4ee05d1f411..cecdf46351cb3c6c37cc4a069d345721ef26f185 100644
--- a/lib/cache/xcache.php
+++ b/lib/cache/xcache.php
@@ -28,10 +28,10 @@ class OC_Cache_XCache {
 	}
 
 	public function set($key, $value, $ttl=0) {
-		if($ttl>0){
-			return xcache_set($this->getNamespace().$key,$value,$ttl);
+		if($ttl>0) {
+			return xcache_set($this->getNamespace().$key, $value, $ttl);
 		}else{
-			return xcache_set($this->getNamespace().$key,$value);
+			return xcache_set($this->getNamespace().$key, $value);
 		}
 	}
 
@@ -43,7 +43,7 @@ class OC_Cache_XCache {
 		return xcache_unset($this->getNamespace().$key);
 	}
 
-	public function clear($prefix=''){
+	public function clear($prefix='') {
 		xcache_unset_by_prefix($this->getNamespace().$prefix);
 		return true;
 	}
diff --git a/lib/config.php b/lib/config.php
index 266d559126ca86a38565d4b9f8fbd87d6d206085..032d401264ced1d98bb8435ccd01d081dbafd74b 100644
--- a/lib/config.php
+++ b/lib/config.php
@@ -52,7 +52,7 @@ class OC_Config{
 	 * This function returns all keys saved in config.php. Please note that it
 	 * does not return the values.
 	 */
-	public static function getKeys(){
+	public static function getKeys() {
 		self::readData();
 
 		return array_keys( self::$cache );
@@ -67,10 +67,10 @@ class OC_Config{
 	 * This function gets the value from config.php. If it does not exist,
 	 * $default will be returned.
 	 */
-	public static function getValue( $key, $default = null ){
+	public static function getValue( $key, $default = null ) {
 		self::readData();
 
-		if( array_key_exists( $key, self::$cache )){
+		if( array_key_exists( $key, self::$cache )) {
 			return self::$cache[$key];
 		}
 
@@ -86,7 +86,7 @@ class OC_Config{
 	 * This function sets the value and writes the config.php. If the file can
 	 * not be written, false will be returned.
 	 */
-	public static function setValue( $key, $value ){
+	public static function setValue( $key, $value ) {
 		self::readData();
 
 		// Add change
@@ -105,10 +105,10 @@ class OC_Config{
 	 * This function removes a key from the config.php. If owncloud has no
 	 * write access to config.php, the function will return false.
 	 */
-	public static function deleteKey( $key ){
+	public static function deleteKey( $key ) {
 		self::readData();
 
-		if( array_key_exists( $key, self::$cache )){
+		if( array_key_exists( $key, self::$cache )) {
 			// Delete key from cache
 			unset( self::$cache[$key] );
 
@@ -125,18 +125,18 @@ class OC_Config{
 	 *
 	 * Reads the config file and saves it to the cache
 	 */
-	private static function readData(){
-		if( self::$init ){
+	private static function readData() {
+		if( self::$init ) {
 			return true;
 		}
 
-		if( !file_exists( OC::$SERVERROOT."/config/config.php" )){
+		if( !file_exists( OC::$SERVERROOT."/config/config.php" )) {
 			return false;
 		}
 
 		// Include the file, save the data from $CONFIG
-		include( OC::$SERVERROOT."/config/config.php" );
-		if( isset( $CONFIG ) && is_array( $CONFIG )){
+		include OC::$SERVERROOT."/config/config.php";
+		if( isset( $CONFIG ) && is_array( $CONFIG )) {
 			self::$cache = $CONFIG;
 		}
 
@@ -153,7 +153,7 @@ class OC_Config{
 	 * Saves the config to the config file.
 	 *
 	 */
-	public static function writeData(){
+	public static function writeData() {
 		// Create a php file ...
 		$content = "<?php\n\$CONFIG = ";
 		$content .= var_export(self::$cache, true);
@@ -164,7 +164,9 @@ class OC_Config{
 		$result=@file_put_contents( $filename, $content );
 		if(!$result) {
 			$tmpl = new OC_Template( '', 'error', 'guest' );
-			$tmpl->assign('errors',array(1=>array('error'=>"Can't write into config directory 'config'",'hint'=>"You can usually fix this by giving the webserver user write access to the config directory in owncloud")));
+			$tmpl->assign('errors', array(1=>array(
+				'error'=>"Can't write into config directory 'config'",
+				'hint'=>"You can usually fix this by giving the webserver user write access to the config directory in owncloud")));
 			$tmpl->printPage();
 			exit;
 		}
diff --git a/lib/connector/sabre/auth.php b/lib/connector/sabre/auth.php
index 99f696e3a0711963b689a3d34aa3a132528c0248..0c34c7ea29fc20f66ccd76974dbfa5bcd4a3431f 100644
--- a/lib/connector/sabre/auth.php
+++ b/lib/connector/sabre/auth.php
@@ -30,13 +30,13 @@ class OC_Connector_Sabre_Auth extends Sabre_DAV_Auth_Backend_AbstractBasic {
 	 *
 	 * @return bool
 	 */
-	protected function validateUserPass($username, $password){
+	protected function validateUserPass($username, $password) {
 		if (OC_User::isLoggedIn()) {
 			OC_Util::setupFS($username);
 			return true;
 		} else {
 			OC_Util::setUpFS();//login hooks may need early access to the filesystem
-			if(OC_User::login($username,$password)){
+			if(OC_User::login($username, $password)) {
 				OC_Util::setUpFS($username);
 				return true;
 			}
@@ -45,4 +45,4 @@ class OC_Connector_Sabre_Auth extends Sabre_DAV_Auth_Backend_AbstractBasic {
 			}
 		}
 	}
-} 
+}
diff --git a/lib/connector/sabre/client.php b/lib/connector/sabre/client.php
index 7e8f21264f963733f45c62db812f58040934b373..8df5fb9a9adcfccd728da702245d7f16fd410dde 100644
--- a/lib/connector/sabre/client.php
+++ b/lib/connector/sabre/client.php
@@ -1,173 +1,173 @@
-<?php
-
-/**
- * ownCloud
- *
- * @author Bjoern Schiessle
- * @copyright 2012 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/>.
- *
- */
-
-class OC_Connector_Sabre_Client extends Sabre_DAV_Client {
-	
-	protected $trustedCertificates;
-
-	/**
-	 * Add trusted root certificates to the webdav client.
-	 *
-	 * The parameter certificates should be a absulute path to a file which contains
-	 * all trusted certificates
-	 *
-	 * @param string $certificates
-	 */
-	public function addTrustedCertificates($certificates) {
-		$this->trustedCertificates = $certificates;
-	}
-	
-	/**
-	 * Copied from SabreDAV with some modification to use user defined curlSettings
-	 * Performs an actual HTTP request, and returns the result.
-	 *
-	 * If the specified url is relative, it will be expanded based on the base
-	 * url.
-	 *
-	 * The returned array contains 3 keys:
-	 *   * body - the response body
-	 *   * httpCode - a HTTP code (200, 404, etc)
-	 *   * headers - a list of response http headers. The header names have
-	 *     been lowercased.
-	 *
-	 * @param string $method
-	 * @param string $url
-	 * @param string $body
-	 * @param array $headers
-	 * @return array
-	 */
-	public function request($method, $url = '', $body = null, $headers = array()) {
-	
-		$url = $this->getAbsoluteUrl($url);
-	
-		$curlSettings = array(
-				CURLOPT_RETURNTRANSFER => true,
-				// Return headers as part of the response
-				CURLOPT_HEADER => true,
-				CURLOPT_POSTFIELDS => $body,
-				// Automatically follow redirects
-				CURLOPT_FOLLOWLOCATION => true,
-				CURLOPT_MAXREDIRS => 5,
-		);
-	
-		if($this->trustedCertificates) {
-			$curlSettings[CURLOPT_CAINFO] = $this->trustedCertificates;
-		}
-		
-		switch ($method) {
-			case 'HEAD' :
-	
-				// do not read body with HEAD requests (this is neccessary because cURL does not ignore the body with HEAD
-				// requests when the Content-Length header is given - which in turn is perfectly valid according to HTTP
-				// specs...) cURL does unfortunately return an error in this case ("transfer closed transfer closed with
-				// ... bytes remaining to read") this can be circumvented by explicitly telling cURL to ignore the
-				// response body
-				$curlSettings[CURLOPT_NOBODY] = true;
-				$curlSettings[CURLOPT_CUSTOMREQUEST] = 'HEAD';
-				break;
-	
-			default:
-				$curlSettings[CURLOPT_CUSTOMREQUEST] = $method;
-				break;
-	
-		}
-	
-		// Adding HTTP headers
-		$nHeaders = array();
-		foreach($headers as $key=>$value) {
-	
-			$nHeaders[] = $key . ': ' . $value;
-	
-		}
-		$curlSettings[CURLOPT_HTTPHEADER] = $nHeaders;
-	
-		if ($this->proxy) {
-			$curlSettings[CURLOPT_PROXY] = $this->proxy;
-		}
-	
-		if ($this->userName && $this->authType) {
-			$curlType = 0;
-			if ($this->authType & self::AUTH_BASIC) {
-				$curlType |= CURLAUTH_BASIC;
-			}
-			if ($this->authType & self::AUTH_DIGEST) {
-				$curlType |= CURLAUTH_DIGEST;
-			}
-			$curlSettings[CURLOPT_HTTPAUTH] = $curlType;
-			$curlSettings[CURLOPT_USERPWD] = $this->userName . ':' . $this->password;
-		}
-	
-		list(
-				$response,
-				$curlInfo,
-				$curlErrNo,
-				$curlError
-		) = $this->curlRequest($url, $curlSettings);
-	
-		$headerBlob = substr($response, 0, $curlInfo['header_size']);
-		$response = substr($response, $curlInfo['header_size']);
-	
-		// In the case of 100 Continue, or redirects we'll have multiple lists
-		// of headers for each separate HTTP response. We can easily split this
-		// because they are separated by \r\n\r\n
-		$headerBlob = explode("\r\n\r\n", trim($headerBlob, "\r\n"));
-	
-		// We only care about the last set of headers
-		$headerBlob = $headerBlob[count($headerBlob)-1];
-	
-		// Splitting headers
-		$headerBlob = explode("\r\n", $headerBlob);
-	
-		$headers = array();
-		foreach($headerBlob as $header) {
-			$parts = explode(':', $header, 2);
-			if (count($parts)==2) {
-				$headers[strtolower(trim($parts[0]))] = trim($parts[1]);
-			}
-		}
-	
-		$response = array(
-				'body' => $response,
-				'statusCode' => $curlInfo['http_code'],
-				'headers' => $headers
-		);
-	
-		if ($curlErrNo) {
-			throw new Sabre_DAV_Exception('[CURL] Error while making request: ' . $curlError . ' (error code: ' . $curlErrNo . ')');
-		}
-	
-		if ($response['statusCode']>=400) {
-			switch ($response['statusCode']) {
-				case 404:
-					throw new Sabre_DAV_Exception_NotFound('Resource ' . $url . ' not found.');
-					break;
-	
-				default:
-					throw new Sabre_DAV_Exception('HTTP error response. (errorcode ' . $response['statusCode'] . ')');
-			}
-		}
-	
-		return $response;
-	
-	}	
+<?php
+
+/**
+ * ownCloud
+ *
+ * @author Bjoern Schiessle
+ * @copyright 2012 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/>.
+ *
+ */
+
+class OC_Connector_Sabre_Client extends Sabre_DAV_Client {
+
+	protected $trustedCertificates;
+
+	/**
+	 * Add trusted root certificates to the webdav client.
+	 *
+	 * The parameter certificates should be a absulute path to a file which contains
+	 * all trusted certificates
+	 *
+	 * @param string $certificates
+	 */
+	public function addTrustedCertificates($certificates) {
+		$this->trustedCertificates = $certificates;
+	}
+
+	/**
+	 * Copied from SabreDAV with some modification to use user defined curlSettings
+	 * Performs an actual HTTP request, and returns the result.
+	 *
+	 * If the specified url is relative, it will be expanded based on the base
+	 * url.
+	 *
+	 * The returned array contains 3 keys:
+	 *   * body - the response body
+	 *   * httpCode - a HTTP code (200, 404, etc)
+	 *   * headers - a list of response http headers. The header names have
+	 *     been lowercased.
+	 *
+	 * @param string $method
+	 * @param string $url
+	 * @param string $body
+	 * @param array $headers
+	 * @return array
+	 */
+	public function request($method, $url = '', $body = null, $headers = array()) {
+
+		$url = $this->getAbsoluteUrl($url);
+
+		$curlSettings = array(
+				CURLOPT_RETURNTRANSFER => true,
+				// Return headers as part of the response
+				CURLOPT_HEADER => true,
+				CURLOPT_POSTFIELDS => $body,
+				// Automatically follow redirects
+				CURLOPT_FOLLOWLOCATION => true,
+				CURLOPT_MAXREDIRS => 5,
+		);
+
+		if($this->trustedCertificates) {
+			$curlSettings[CURLOPT_CAINFO] = $this->trustedCertificates;
+		}
+
+		switch ($method) {
+			case 'HEAD' :
+
+				// do not read body with HEAD requests (this is neccessary because cURL does not ignore the body with HEAD
+				// requests when the Content-Length header is given - which in turn is perfectly valid according to HTTP
+				// specs...) cURL does unfortunately return an error in this case ("transfer closed transfer closed with
+				// ... bytes remaining to read") this can be circumvented by explicitly telling cURL to ignore the
+				// response body
+				$curlSettings[CURLOPT_NOBODY] = true;
+				$curlSettings[CURLOPT_CUSTOMREQUEST] = 'HEAD';
+				break;
+
+			default:
+				$curlSettings[CURLOPT_CUSTOMREQUEST] = $method;
+				break;
+
+		}
+
+		// Adding HTTP headers
+		$nHeaders = array();
+		foreach($headers as $key=>$value) {
+
+			$nHeaders[] = $key . ': ' . $value;
+
+		}
+		$curlSettings[CURLOPT_HTTPHEADER] = $nHeaders;
+
+		if ($this->proxy) {
+			$curlSettings[CURLOPT_PROXY] = $this->proxy;
+		}
+
+		if ($this->userName && $this->authType) {
+			$curlType = 0;
+			if ($this->authType & self::AUTH_BASIC) {
+				$curlType |= CURLAUTH_BASIC;
+			}
+			if ($this->authType & self::AUTH_DIGEST) {
+				$curlType |= CURLAUTH_DIGEST;
+			}
+			$curlSettings[CURLOPT_HTTPAUTH] = $curlType;
+			$curlSettings[CURLOPT_USERPWD] = $this->userName . ':' . $this->password;
+		}
+
+		list(
+				$response,
+				$curlInfo,
+				$curlErrNo,
+				$curlError
+		) = $this->curlRequest($url, $curlSettings);
+
+		$headerBlob = substr($response, 0, $curlInfo['header_size']);
+		$response = substr($response, $curlInfo['header_size']);
+
+		// In the case of 100 Continue, or redirects we'll have multiple lists
+		// of headers for each separate HTTP response. We can easily split this
+		// because they are separated by \r\n\r\n
+		$headerBlob = explode("\r\n\r\n", trim($headerBlob, "\r\n"));
+
+		// We only care about the last set of headers
+		$headerBlob = $headerBlob[count($headerBlob)-1];
+
+		// Splitting headers
+		$headerBlob = explode("\r\n", $headerBlob);
+
+		$headers = array();
+		foreach($headerBlob as $header) {
+			$parts = explode(':', $header, 2);
+			if (count($parts)==2) {
+				$headers[strtolower(trim($parts[0]))] = trim($parts[1]);
+			}
+		}
+
+		$response = array(
+				'body' => $response,
+				'statusCode' => $curlInfo['http_code'],
+				'headers' => $headers
+		);
+
+		if ($curlErrNo) {
+			throw new Sabre_DAV_Exception('[CURL] Error while making request: ' . $curlError . ' (error code: ' . $curlErrNo . ')');
+		}
+
+		if ($response['statusCode']>=400) {
+			switch ($response['statusCode']) {
+				case 404:
+					throw new Sabre_DAV_Exception_NotFound('Resource ' . $url . ' not found.');
+					break;
+
+				default:
+					throw new Sabre_DAV_Exception('HTTP error response. (errorcode ' . $response['statusCode'] . ')');
+			}
+		}
+
+		return $response;
+
+	}
 }
\ No newline at end of file
diff --git a/lib/connector/sabre/directory.php b/lib/connector/sabre/directory.php
index cd3ed60292c250862dc1558a019d8b66c0daa1e7..39606577f6de82bee0836027ce72651af9c18dc7 100644
--- a/lib/connector/sabre/directory.php
+++ b/lib/connector/sabre/directory.php
@@ -60,7 +60,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_Filesystem::file_put_contents($newPath, $data);
 			return OC_Connector_Sabre_Node::getETagPropertyForPath($newPath);
 		}
 
@@ -119,7 +119,7 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa
 			$paths[] = $this->path.'/'.$info['name'];
 		}
 		$properties = array_fill_keys($paths, array());
-		if(count($paths)>0){
+		if(count($paths)>0) {
 			$placeholders = join(',', array_fill(0, count($paths), '?'));
 			$query = OC_DB::prepare( 'SELECT * FROM `*PREFIX*properties` WHERE `userid` = ?' . ' AND `propertypath` IN ('.$placeholders.')' );
 			array_unshift($paths, OC_User::getUser()); // prepend userid
@@ -195,12 +195,10 @@ class OC_Connector_Sabre_Directory extends OC_Connector_Sabre_Node implements Sa
 	 */
 	public function getProperties($properties) {
 		$props = parent::getProperties($properties);
-		if (in_array(self::GETETAG_PROPERTYNAME, $properties)
-		    && !isset($props[self::GETETAG_PROPERTYNAME])) {
-			$props[self::GETETAG_PROPERTYNAME] =
-				OC_Connector_Sabre_Node::getETagPropertyForPath($this->path);
+		if (in_array(self::GETETAG_PROPERTYNAME, $properties) && !isset($props[self::GETETAG_PROPERTYNAME])) {
+			$props[self::GETETAG_PROPERTYNAME] 
+				= OC_Connector_Sabre_Node::getETagPropertyForPath($this->path);
 		}
 		return $props;
 	}
 }
-
diff --git a/lib/connector/sabre/file.php b/lib/connector/sabre/file.php
index 9d571fceb0d1077bc2f0f5979e81bc53df633dad..5bd38240d4471ff9524e6e4d36485f793b5df814 100644
--- a/lib/connector/sabre/file.php
+++ b/lib/connector/sabre/file.php
@@ -126,4 +126,3 @@ class OC_Connector_Sabre_File extends OC_Connector_Sabre_Node implements Sabre_D
 
 	}
 }
-
diff --git a/lib/connector/sabre/locks.php b/lib/connector/sabre/locks.php
index 0ddc8b18d2f9fa16a28864582435332deaa2e014..dbcc57558e0b1319051db005a0280a494f738879 100644
--- a/lib/connector/sabre/locks.php
+++ b/lib/connector/sabre/locks.php
@@ -42,7 +42,7 @@ class OC_Connector_Sabre_Locks extends Sabre_DAV_Locks_Backend_Abstract {
 		// pure sql. MySQL's non-standard string concatination prevents us
 		// from doing this though.
 		// NOTE: SQLite requires time() to be inserted directly. That's ugly
-		// but otherwise reading locks from SQLite Databases will return 
+		// but otherwise reading locks from SQLite Databases will return
 		// nothing
 		$query = 'SELECT * FROM `*PREFIX*locks` WHERE `userid` = ? AND (`created` + `timeout`) > '.time().' AND (( `uri` = ?)';
 		$params = array(OC_User::getUser(),$uri);
@@ -75,9 +75,9 @@ class OC_Connector_Sabre_Locks extends Sabre_DAV_Locks_Backend_Abstract {
 
 		$stmt = OC_DB::prepare( $query );
 		$result = $stmt->execute( $params );
-		
+
 		$lockList = array();
-		while( $row = $result->fetchRow()){
+		while( $row = $result->fetchRow()) {
 
 			$lockInfo = new Sabre_DAV_Locks_LockInfo();
 			$lockInfo->owner = $row['owner'];
@@ -114,7 +114,7 @@ class OC_Connector_Sabre_Locks extends Sabre_DAV_Locks_Backend_Abstract {
 		foreach($locks as $lock) {
 			if ($lock->token == $lockInfo->token) $exists = true;
 		}
-	
+
 		if ($exists) {
 			$query = OC_DB::prepare( 'UPDATE `*PREFIX*locks` SET `owner` = ?, `timeout` = ?, `scope` = ?, `depth` = ?, `uri` = ?, `created` = ? WHERE `userid` = ? AND `token` = ?' );
 			$result = $query->execute( array($lockInfo->owner,$lockInfo->timeout,$lockInfo->scope,$lockInfo->depth,$uri,$lockInfo->created,OC_User::getUser(),$lockInfo->token));
diff --git a/lib/connector/sabre/node.php b/lib/connector/sabre/node.php
index b9bf474a0412f905aadf8bb33131e87f44820f0d..2916575e2d581d1924d816b31cdd454dc9215f8e 100644
--- a/lib/connector/sabre/node.php
+++ b/lib/connector/sabre/node.php
@@ -80,9 +80,9 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr
 		$oldPath = $this->path;
 
 		OC_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 ));
 
@@ -123,8 +123,8 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr
 
 	}
 
-	/** 
-	 *  sets the last modification time of the file (mtime) to the value given 
+	/**
+	 *  sets the last modification time of the file (mtime) to the value given
 	 *  in the second parameter or to now if the second param is empty.
 	 *  Even if the modification time is set to a custom value the access time is set to now.
 	 */
@@ -145,7 +145,7 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr
 			$propertyName = preg_replace("/^{.*}/", "", $propertyName); // remove leading namespace from property name
 			// If it was null, we need to delete the property
 			if (is_null($propertyValue)) {
-				if(array_key_exists( $propertyName, $existing )){
+				if(array_key_exists( $propertyName, $existing )) {
 					$query = OC_DB::prepare( 'DELETE FROM `*PREFIX*properties` WHERE `userid` = ? AND `propertypath` = ? AND `propertyname` = ?' );
 					$query->execute( array( OC_User::getUser(), $this->path, $propertyName ));
 				}
@@ -154,7 +154,7 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr
 				if( strcmp( $propertyName, "lastmodified") === 0) {
 					$this->touch($propertyValue);
 				} else {
-					if(!array_key_exists( $propertyName, $existing )){
+					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 ));
 					} else {
@@ -186,16 +186,16 @@ abstract class OC_Connector_Sabre_Node implements Sabre_DAV_INode, Sabre_DAV_IPr
 			$result = $query->execute( array( OC_User::getUser(), $this->path ));
 
 			$this->property_cache = array();
-			while( $row = $result->fetchRow()){
+			while( $row = $result->fetchRow()) {
 				$this->property_cache[$row['propertyname']] = $row['propertyvalue'];
 			}
 		}
 
 		// if the array was empty, we need to return everything
-		if(count($properties) == 0){
+		if(count($properties) == 0) {
 			return $this->property_cache;
 		}
-		
+
 		$props = array();
 		foreach($properties as $property) {
 			if (isset($this->property_cache[$property])) $props[$property] = $this->property_cache[$property];
diff --git a/lib/connector/sabre/principal.php b/lib/connector/sabre/principal.php
index d1456f7c64215a780c96f24d5d6ace63bcff47d3..ee95ae6330670968eaaa775802529f2222becabb 100644
--- a/lib/connector/sabre/principal.php
+++ b/lib/connector/sabre/principal.php
@@ -66,7 +66,7 @@ class OC_Connector_Sabre_Principal implements Sabre_DAVACL_IPrincipalBackend {
 	 */
 	public function getGroupMemberSet($principal) {
 		// TODO: for now the group principal has only one member, the user itself
-		list($prefix,$name) = Sabre_DAV_URLUtil::splitPath($principal);
+		list($prefix, $name) = Sabre_DAV_URLUtil::splitPath($principal);
 
 		$principal = $this->getPrincipalByPath($prefix);
 		if (!$principal) throw new Sabre_DAV_Exception('Principal not found');
@@ -115,6 +115,12 @@ class OC_Connector_Sabre_Principal implements Sabre_DAVACL_IPrincipalBackend {
 	public function setGroupMemberSet($principal, array $members) {
 		throw new Sabre_DAV_Exception('Setting members of the group is not supported yet');
 	}
-	function updatePrincipal($path, $mutations){return 0;}
-	function searchPrincipals($prefixPath, array $searchProperties){return 0;}
+	
+	function updatePrincipal($path, $mutations) {
+		return 0;
+	}
+	
+	function searchPrincipals($prefixPath, array $searchProperties) {
+		return 0;
+	}
 }
diff --git a/lib/db.php b/lib/db.php
index 4214451c85fa27998f15be684753104b6c79f870..ee69e5f829903b7486d23f70e8c37179e4aa0264 100644
--- a/lib/db.php
+++ b/lib/db.php
@@ -27,7 +27,7 @@
 class OC_DB {
 	const BACKEND_PDO=0;
 	const BACKEND_MDB2=1;
-	
+
 	static private $connection; //the prefered connection to use, either PDO or MDB2
 	static private $backend=null;
 	static private $MDB2=false;
@@ -41,35 +41,36 @@ class OC_DB {
 	 * check which backend we should use
 	 * @return BACKEND_MDB2 or BACKEND_PDO
 	 */
-	private static function getDBBackend(){
-		if(class_exists('PDO') && OC_Config::getValue('installed', false)){//check if we can use PDO, else use MDB2 (installation always needs to be done my mdb2)
+	private static function getDBBackend() {
+		//check if we can use PDO, else use MDB2 (installation always needs to be done my mdb2)
+		if(class_exists('PDO') && OC_Config::getValue('installed', false)) {
 			$type = OC_Config::getValue( "dbtype", "sqlite" );
 			if($type=='oci') { //oracle also always needs mdb2
 				return self::BACKEND_MDB2;
 			}
 			if($type=='sqlite3') $type='sqlite';
 			$drivers=PDO::getAvailableDrivers();
-			if(array_search($type,$drivers)!==false){
+			if(array_search($type, $drivers)!==false) {
 				return self::BACKEND_PDO;
 			}
 		}
 		return self::BACKEND_MDB2;
 	}
-	
+
 	/**
 	 * @brief connects to the database
 	 * @returns true if connection can be established or nothing (die())
 	 *
 	 * Connects to the database as specified in config.php
 	 */
-	public static function connect($backend=null){
-		if(self::$connection){
+	public static function connect($backend=null) {
+		if(self::$connection) {
 			return;
 		}
-		if(is_null($backend)){
+		if(is_null($backend)) {
 			$backend=self::getDBBackend();
 		}
-		if($backend==self::BACKEND_PDO){
+		if($backend==self::BACKEND_PDO) {
 			self::connectPDO();
 			self::$connection=self::$PDO;
 			self::$backend=self::BACKEND_PDO;
@@ -83,9 +84,9 @@ class OC_DB {
 	/**
 	 * connect to the database using pdo
 	 */
-	public static function connectPDO(){
-		if(self::$connection){
-			if(self::$backend==self::BACKEND_MDB2){
+	public static function connectPDO() {
+		if(self::$connection) {
+			if(self::$backend==self::BACKEND_MDB2) {
 				self::disconnect();
 			}else{
 				return;
@@ -97,18 +98,18 @@ class OC_DB {
 		$user = OC_Config::getValue( "dbuser", "" );
 		$pass = OC_Config::getValue( "dbpassword", "" );
 		$type = OC_Config::getValue( "dbtype", "sqlite" );
-		if(strpos($host,':')){
-			list($host,$port)=explode(':',$host,2);
+		if(strpos($host, ':')) {
+			list($host, $port)=explode(':', $host,2);
 		}else{
 			$port=false;
 		}
 		$opts = array();
 		$datadir=OC_Config::getValue( "datadirectory", OC::$SERVERROOT.'/data' );
-		
+
 		// do nothing if the connection already has been established
-		if(!self::$PDO){
+		if(!self::$PDO) {
 			// Add the dsn according to the database type
-			switch($type){
+			switch($type) {
 				case 'sqlite':
 					$dsn='sqlite2:'.$datadir.'/'.$name.'.db';
 					break;
@@ -116,7 +117,7 @@ class OC_DB {
 					$dsn='sqlite:'.$datadir.'/'.$name.'.db';
 					break;
 				case 'mysql':
-					if($port){
+					if($port) {
 						$dsn='mysql:dbname='.$name.';host='.$host.';port='.$port;
 					}else{
 						$dsn='mysql:dbname='.$name.';host='.$host;
@@ -124,7 +125,7 @@ class OC_DB {
 					$opts[PDO::MYSQL_ATTR_INIT_COMMAND] = "SET NAMES 'UTF8'";
 					break;
 				case 'pgsql':
-					if($port){
+					if($port) {
 						$dsn='pgsql:dbname='.$name.';host='.$host.';port='.$port;
 					}else{
 						$dsn='pgsql:dbname='.$name.';host='.$host;
@@ -139,32 +140,32 @@ class OC_DB {
 					/** END OF FIX***/
 					break;
 				case 'oci': // Oracle with PDO is unsupported
-						if ($port) {
-								$dsn = 'oci:dbname=//' . $host . ':' . $port . '/' . $name;
-						} else {
-								$dsn = 'oci:dbname=//' . $host . '/' . $name;
-						}
-						break;
+					if ($port) {
+							$dsn = 'oci:dbname=//' . $host . ':' . $port . '/' . $name;
+					} else {
+							$dsn = 'oci:dbname=//' . $host . '/' . $name;
+					}
+					break;
 			}
 			try{
-				self::$PDO=new PDO($dsn,$user,$pass,$opts);
-			}catch(PDOException $e){
+				self::$PDO=new PDO($dsn, $user, $pass, $opts);
+			}catch(PDOException $e) {
 				echo( '<b>can not connect to database, using '.$type.'. ('.$e->getMessage().')</center>');
 				die();
 			}
 			// We always, really always want associative arrays
-			self::$PDO->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_ASSOC);
-			self::$PDO->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
+			self::$PDO->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
+			self::$PDO->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
 		}
 		return true;
 	}
-	
+
 	/**
 	 * connect to the database using mdb2
 	 */
-	public static function connectMDB2(){
-		if(self::$connection){
-			if(self::$backend==self::BACKEND_PDO){
+	public static function connectMDB2() {
+		if(self::$connection) {
+			if(self::$backend==self::BACKEND_PDO) {
 				self::disconnect();
 			}else{
 				return;
@@ -180,9 +181,9 @@ class OC_DB {
 		$datadir=OC_Config::getValue( "datadirectory", "$SERVERROOT/data" );
 
 		// do nothing if the connection already has been established
-		if(!self::$MDB2){
+		if(!self::$MDB2) {
 			// Require MDB2.php (not required in the head of the file so we only load it when needed)
-			require_once('MDB2.php');
+			require_once 'MDB2.php';
 
 			// Prepare options array
 			$options = array(
@@ -193,7 +194,7 @@ class OC_DB {
 			  'quote_identifier' => true  );
 
 			// Add the dsn according to the database type
-			switch($type){
+			switch($type) {
 				case 'sqlite':
 				case 'sqlite3':
 					$dsn = array(
@@ -234,22 +235,22 @@ class OC_DB {
 					}
 					break;
 			}
-			
+
 			// Try to establish connection
 			self::$MDB2 = MDB2::factory( $dsn, $options );
-			
+
 			// Die if we could not connect
-			if( PEAR::isError( self::$MDB2 )){
+			if( PEAR::isError( self::$MDB2 )) {
 				echo( '<b>can not connect to database, using '.$type.'. ('.self::$MDB2->getUserInfo().')</center>');
-				OC_Log::write('core',self::$MDB2->getUserInfo(),OC_Log::FATAL);
-				OC_Log::write('core',self::$MDB2->getMessage(),OC_Log::FATAL);
+				OC_Log::write('core', self::$MDB2->getUserInfo(), OC_Log::FATAL);
+				OC_Log::write('core', self::$MDB2->getMessage(), OC_Log::FATAL);
 				die( $error );
 			}
-			
+
 			// We always, really always want associative arrays
 			self::$MDB2->setFetchMode(MDB2_FETCHMODE_ASSOC);
 		}
-		
+
 		// we are done. great!
 		return true;
 	}
@@ -261,8 +262,8 @@ class OC_DB {
 	 *
 	 * SQL query via MDB2 prepare(), needs to be execute()'d!
 	 */
-	static public function prepare( $query , $limit=null, $offset=null ){
-		
+	static public function prepare( $query , $limit=null, $offset=null ) {
+
 		if (!is_null($limit) && $limit != -1) {
 			if (self::$backend == self::BACKEND_MDB2) {
 				//MDB2 uses or emulates limits & offset internally
@@ -290,24 +291,24 @@ class OC_DB {
 
 		self::connect();
 		// return the result
-		if(self::$backend==self::BACKEND_MDB2){
+		if(self::$backend==self::BACKEND_MDB2) {
 			$result = self::$connection->prepare( $query );
 
 			// Die if we have an error (error means: bad query, not 0 results!)
 			if( PEAR::isError($result)) {
 				$entry = 'DB Error: "'.$result->getMessage().'"<br />';
 				$entry .= 'Offending command was: '.$query.'<br />';
-				OC_Log::write('core',$entry,OC_Log::FATAL);
+				OC_Log::write('core', $entry,OC_Log::FATAL);
 				error_log('DB error: '.$entry);
 				die( $entry );
 			}
 		}else{
 			try{
 				$result=self::$connection->prepare($query);
-			}catch(PDOException $e){
+			}catch(PDOException $e) {
 				$entry = 'DB Error: "'.$e->getMessage().'"<br />';
 				$entry .= 'Offending command was: '.$query.'<br />';
-				OC_Log::write('core',$entry,OC_Log::FATAL);
+				OC_Log::write('core', $entry,OC_Log::FATAL);
 				error_log('DB error: '.$entry);
 				die( $entry );
 			}
@@ -326,9 +327,9 @@ class OC_DB {
 	 * Call this method right after the insert command or other functions may
 	 * cause trouble!
 	 */
-	public static function insertid($table=null){
+	public static function insertid($table=null) {
 		self::connect();
-		if($table !== null){
+		if($table !== null) {
 			$prefix = OC_Config::getValue( "dbtableprefix", "oc_" );
 			$suffix = OC_Config::getValue( "dbsequencesuffix", "_id_seq" );
 			$table = str_replace( '*PREFIX*', $prefix, $table );
@@ -342,10 +343,10 @@ class OC_DB {
 	 *
 	 * This is good bye, good bye, yeah!
 	 */
-	public static function disconnect(){
+	public static function disconnect() {
 		// Cut connection if required
-		if(self::$connection){
-			if(self::$backend==self::BACKEND_MDB2){
+		if(self::$connection) {
+			if(self::$backend==self::BACKEND_MDB2) {
 				self::$connection->disconnect();
 			}
 			self::$connection=false;
@@ -363,7 +364,7 @@ class OC_DB {
 	 *
 	 * TODO: write more documentation
 	 */
-	public static function getDbStructure( $file ,$mode=MDB2_SCHEMA_DUMP_STRUCTURE){
+	public static function getDbStructure( $file ,$mode=MDB2_SCHEMA_DUMP_STRUCTURE) {
 		self::connectScheme();
 
 		// write the scheme
@@ -385,7 +386,7 @@ class OC_DB {
 	 *
 	 * TODO: write more documentation
 	 */
-	public static function createDbFromStructure( $file ){
+	public static function createDbFromStructure( $file ) {
 		$CONFIG_DBNAME  = OC_Config::getValue( "dbname", "owncloud" );
 		$CONFIG_DBTABLEPREFIX = OC_Config::getValue( "dbtableprefix", "oc_" );
 		$CONFIG_DBTYPE = OC_Config::getValue( "dbtype", "sqlite" );
@@ -394,7 +395,7 @@ class OC_DB {
 
 		// read file
 		$content = file_get_contents( $file );
-		
+
 		// Make changes and save them to an in-memory file
 		$file2 = 'static://db_scheme';
 		$content = str_replace( '*dbname*', $CONFIG_DBNAME, $content );
@@ -405,45 +406,46 @@ class OC_DB {
 		 * http://www.postgresql.org/docs/8.1/static/functions-datetime.html
 		 * http://www.sqlite.org/lang_createtable.html
 		 * http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions037.htm
+		 */
 
-		 if( $CONFIG_DBTYPE == 'pgsql' ){ //mysql support it too but sqlite doesn't
+		 if( $CONFIG_DBTYPE == 'pgsql' ) { //mysql support it too but sqlite doesn't
 				 $content = str_replace( '<default>0000-00-00 00:00:00</default>', '<default>CURRENT_TIMESTAMP</default>', $content );
 		 }
-		 */
+
 		file_put_contents( $file2, $content );
 
 		// Try to create tables
 		$definition = self::$schema->parseDatabaseDefinitionFile( $file2 );
-		
+
 		//clean up memory
 		unlink( $file2 );
 
 		// Die in case something went wrong
-		if( $definition instanceof MDB2_Schema_Error ){
+		if( $definition instanceof MDB2_Schema_Error ) {
 			die( $definition->getMessage().': '.$definition->getUserInfo());
 		}
-		if(OC_Config::getValue('dbtype','sqlite')==='oci'){
+		if(OC_Config::getValue('dbtype', 'sqlite')==='oci') {
 			unset($definition['charset']); //or MDB2 tries SHUTDOWN IMMEDIATE
 			$oldname = $definition['name'];
 			$definition['name']=OC_Config::getValue( "dbuser", $oldname );
 		}
-		
+
 		$ret=self::$schema->createDatabase( $definition );
 
 		// Die in case something went wrong
-		if( $ret instanceof MDB2_Error ){
+		if( $ret instanceof MDB2_Error ) {
 			echo (self::$MDB2->getDebugOutput());
 			die ($ret->getMessage() . ': ' . $ret->getUserInfo());
 		}
 
 		return true;
 	}
-	
+
 	/**
 	 * @brief update the database scheme
 	 * @param $file file to read structure from
 	 */
-	public static function updateDbFromStructure($file){
+	public static function updateDbFromStructure($file) {
 		$CONFIG_DBTABLEPREFIX = OC_Config::getValue( "dbtableprefix", "oc_" );
 		$CONFIG_DBTYPE = OC_Config::getValue( "dbtype", "sqlite" );
 
@@ -451,11 +453,11 @@ class OC_DB {
 
 		// read file
 		$content = file_get_contents( $file );
-		
+
 		$previousSchema = self::$schema->getDefinitionFromDatabase();
 		if (PEAR::isError($previousSchema)) {
 			$error = $previousSchema->getMessage();
-			OC_Log::write('core','Failed to get existing database structure for upgrading ('.$error.')',OC_Log::FATAL);
+			OC_Log::write('core', 'Failed to get existing database structure for upgrading ('.$error.')', OC_Log::FATAL);
 			return false;
 		}
 
@@ -469,20 +471,20 @@ class OC_DB {
 		 * http://www.postgresql.org/docs/8.1/static/functions-datetime.html
 		 * http://www.sqlite.org/lang_createtable.html
 		 * http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions037.htm
-		if( $CONFIG_DBTYPE == 'pgsql' ){ //mysql support it too but sqlite doesn't
+		if( $CONFIG_DBTYPE == 'pgsql' ) { //mysql support it too but sqlite doesn't
 			$content = str_replace( '<default>0000-00-00 00:00:00</default>', '<default>CURRENT_TIMESTAMP</default>', $content );
 		}
 		 */
 		file_put_contents( $file2, $content );
 		$op = self::$schema->updateDatabase($file2, $previousSchema, array(), false);
-		
+
 		//clean up memory
 		unlink( $file2 );
-		
+
 		if (PEAR::isError($op)) {
 			$error = $op->getMessage();
 			$detail = $op->getDebugInfo();
-			OC_Log::write('core','Failed to update database structure ('.$error.', '.$detail.')',OC_Log::FATAL);
+			OC_Log::write('core', 'Failed to update database structure ('.$error.', '.$detail.')', OC_Log::FATAL);
 			return false;
 		}
 		return true;
@@ -494,15 +496,15 @@ class OC_DB {
 	 *
 	 * Connects to a MDB2 database scheme
 	 */
-	private static function connectScheme(){
+	private static function connectScheme() {
 		// We need a mdb2 database connection
 		self::connectMDB2();
 		self::$MDB2->loadModule('Manager');
 		self::$MDB2->loadModule('Reverse');
 
 		// Connect if this did not happen before
-		if(!self::$schema){
-			require_once('MDB2/Schema.php');
+		if(!self::$schema) {
+			require_once 'MDB2/Schema.php';
 			self::$schema=MDB2_Schema::factory(self::$MDB2);
 		}
 
@@ -517,29 +519,29 @@ class OC_DB {
 	 * This function replaces *PREFIX* with the value of $CONFIG_DBTABLEPREFIX
 	 * and replaces the ` woth ' or " according to the database driver.
 	 */
-	private static function processQuery( $query ){
+	private static function processQuery( $query ) {
 		self::connect();
 		// We need Database type and table prefix
-		if(is_null(self::$type)){
+		if(is_null(self::$type)) {
 			self::$type=OC_Config::getValue( "dbtype", "sqlite" );
 		}
 		$type = self::$type;
-		if(is_null(self::$prefix)){
+		if(is_null(self::$prefix)) {
 			self::$prefix=OC_Config::getValue( "dbtableprefix", "oc_" );
 		}
 		$prefix = self::$prefix;
-		
+
 		// differences in escaping of table names ('`' for mysql) and getting the current timestamp
-		if( $type == 'sqlite' || $type == 'sqlite3' ){
+		if( $type == 'sqlite' || $type == 'sqlite3' ) {
 			$query = str_replace( '`', '"', $query );
-			$query = str_replace( 'NOW()', 'datetime(\'now\')', $query );
-			$query = str_replace( 'now()', 'datetime(\'now\')', $query );
-		}elseif( $type == 'pgsql' ){
+			$query = str_ireplace( 'NOW()', 'datetime(\'now\')', $query );
+			$query = str_ireplace( 'UNIX_TIMESTAMP()', 'strftime(\'%s\',\'now\')', $query );
+		}elseif( $type == 'pgsql' ) {
 			$query = str_replace( '`', '"', $query );
-		}elseif( $type == 'oci'  ){
+			$query = str_ireplace( 'UNIX_TIMESTAMP()', 'cast(extract(epoch from current_timestamp) as integer)', $query );
+		}elseif( $type == 'oci'  ) {
 			$query = str_replace( '`', '"', $query );
-			$query = str_replace( 'NOW()', 'CURRENT_TIMESTAMP', $query );
-			$query = str_replace( 'now()', 'CURRENT_TIMESTAMP', $query );
+			$query = str_ireplace( 'NOW()', 'CURRENT_TIMESTAMP', $query );
 		}
 
 		// replace table name prefix
@@ -547,22 +549,22 @@ class OC_DB {
 
 		return $query;
 	}
-	
+
 	/**
 	 * @brief drop a table
 	 * @param string $tableNamme the table to drop
 	 */
-	public static function dropTable($tableName){
+	public static function dropTable($tableName) {
 		self::connectMDB2();
 		self::$MDB2->loadModule('Manager');
 		self::$MDB2->dropTable($tableName);
 	}
-	
+
 	/**
 	 * remove all tables defined in a database structure xml file
 	 * @param string $file the xml file describing the tables
 	 */
-	public static function removeDBStructure($file){
+	public static function removeDBStructure($file) {
 		$CONFIG_DBNAME  = OC_Config::getValue( "dbname", "owncloud" );
 		$CONFIG_DBTABLEPREFIX = OC_Config::getValue( "dbtableprefix", "oc_" );
 		self::connectScheme();
@@ -578,42 +580,41 @@ class OC_DB {
 
 		// get the tables
 		$definition = self::$schema->parseDatabaseDefinitionFile( $file2 );
-		
+
 		// Delete our temporary file
 		unlink( $file2 );
 		$tables=array_keys($definition['tables']);
-		foreach($tables as $table){
+		foreach($tables as $table) {
 			self::dropTable($table);
 		}
 	}
-	
+
 	/**
 	 * @brief replaces the owncloud tables with a new set
 	 * @param $file string path to the MDB2 xml db export file
 	 */
-	public static function replaceDB( $file ){
-	 	$apps = OC_App::getAllApps();
-	 	self::beginTransaction();
-	 	// Delete the old tables
-	 	self::removeDBStructure( OC::$SERVERROOT . '/db_structure.xml' );
-	 	
-	 	foreach($apps as $app){
-	 		$path = OC_App::getAppPath($app).'/appinfo/database.xml';
-	 		if(file_exists($path)){
-	 			self::removeDBStructure( $path );	
-	 		}
-	 	}
-	 	
-	 	// Create new tables
-	 	self::createDBFromStructure( $file );
-	 	self::commit();
-	 	
-	 }
-	
+	public static function replaceDB( $file ) {
+		$apps = OC_App::getAllApps();
+		self::beginTransaction();
+		// Delete the old tables
+		self::removeDBStructure( OC::$SERVERROOT . '/db_structure.xml' );
+
+		foreach($apps as $app) {
+			$path = OC_App::getAppPath($app).'/appinfo/database.xml';
+			if(file_exists($path)) {
+				self::removeDBStructure( $path );
+			}
+		}
+
+		// Create new tables
+		self::createDBFromStructure( $file );
+		self::commit();
+	}
+
 	/**
 	 * Start a transaction
 	 */
-	public static function beginTransaction(){
+	public static function beginTransaction() {
 		self::connect();
 		if (self::$backend==self::BACKEND_MDB2 && !self::$connection->supports('transactions')) {
 			return false;
@@ -625,9 +626,9 @@ class OC_DB {
 	/**
 	 * Commit the database changes done during a transaction that is in progress
 	 */
-	public static function commit(){
+	public static function commit() {
 		self::connect();
-		if(!self::$inTransaction){
+		if(!self::$inTransaction) {
 			return false;
 		}
 		self::$connection->commit();
@@ -639,10 +640,10 @@ class OC_DB {
 	 * @param mixed $result
 	 * @return bool
 	 */
-	public static function isError($result){
-		if(!$result){
+	public static function isError($result) {
+		if(!$result) {
 			return true;
-		}elseif(self::$backend==self::BACKEND_MDB2 and PEAR::isError($result)){
+		}elseif(self::$backend==self::BACKEND_MDB2 and PEAR::isError($result)) {
 			return true;
 		}else{
 			return false;
@@ -657,31 +658,31 @@ class PDOStatementWrapper{
 	private $statement=null;
 	private $lastArguments=array();
 
-	public function __construct($statement){
+	public function __construct($statement) {
 		$this->statement=$statement;
 	}
-	
+
 	/**
 	 * make execute return the result instead of a bool
 	 */
-	public function execute($input=array()){
+	public function execute($input=array()) {
 		$this->lastArguments=$input;
-		if(count($input)>0){
+		if(count($input)>0) {
 			$result=$this->statement->execute($input);
 		}else{
 			$result=$this->statement->execute();
 		}
-		if($result){
+		if($result) {
 			return $this;
 		}else{
 			return false;
 		}
 	}
-	
+
 	/**
 	 * provide numRows
 	 */
-	public function numRows(){
+	public function numRows() {
 		$regex = '/^SELECT\s+(?:ALL\s+|DISTINCT\s+)?(?:.*?)\s+FROM\s+(.*)$/i';
 		if (preg_match($regex, $this->statement->queryString, $output) > 0) {
 			$query = OC_DB::prepare("SELECT COUNT(*) FROM {$output[1]}", PDO::FETCH_NUM);
@@ -690,28 +691,27 @@ class PDOStatementWrapper{
 			return $this->statement->rowCount();
 		}
 	}
-	
+
 	/**
 	 * provide an alias for fetch
 	 */
-	public function fetchRow(){
+	public function fetchRow() {
 		return $this->statement->fetch();
 	}
-	
+
 	/**
 	 * pass all other function directly to the PDOStatement
 	 */
-	public function __call($name,$arguments){
-		return call_user_func_array(array($this->statement,$name),$arguments);
+	public function __call($name,$arguments) {
+		return call_user_func_array(array($this->statement,$name), $arguments);
 	}
-	
+
 	/**
 	 * Provide a simple fetchOne.
 	 * fetch single column from the next row
 	 * @param int $colnum the column number to fetch
 	 */
-	public function fetchOne($colnum = 0){
+	public function fetchOne($colnum = 0) {
 		return $this->statement->fetchColumn($colnum);
 	}
 }
-
diff --git a/lib/eventsource.php b/lib/eventsource.php
index 95af2e471bca36cd7b80694b55d030f6616c2efd..900b5b101e673cd473d195262ebc2f2f8c6121c0 100644
--- a/lib/eventsource.php
+++ b/lib/eventsource.php
@@ -30,19 +30,19 @@
 class OC_EventSource{
 	private $fallback;
 	private $fallBackId=0;
-	
-	public function __construct(){
+
+	public function __construct() {
 		@ob_end_clean();
 		header('Cache-Control: no-cache');
 		$this->fallback=isset($_GET['fallback']) and $_GET['fallback']=='true';
-		if($this->fallback){
+		if($this->fallback) {
 			$this->fallBackId=$_GET['fallback_id'];
 			header("Content-Type: text/html");
 			echo str_repeat('<span></span>'.PHP_EOL,10); //dummy data to keep IE happy
 		}else{
 			header("Content-Type: text/event-stream");
 		}
-		if( !OC_Util::isCallRegistered()){
+		if( !OC_Util::isCallRegistered()) {
 			exit();
 		}
 		flush();
@@ -56,16 +56,16 @@ class OC_EventSource{
 	 *
 	 * if only one paramater is given, a typeless message will be send with that paramater as data
 	 */
-	public function send($type,$data=null){
-		if(is_null($data)){
+	public function send($type,$data=null) {
+		if(is_null($data)) {
 			$data=$type;
 			$type=null;
 		}
-		if($this->fallback){
+		if($this->fallback) {
 			$response='<script type="text/javascript">window.parent.OC.EventSource.fallBackCallBack('.$this->fallBackId.',"'.$type.'",'.json_encode($data).')</script>'.PHP_EOL;
 			echo $response;
 		}else{
-			if($type){
+			if($type) {
 				echo 'event: '.$type.PHP_EOL;
 			}
 			echo 'data: '.json_encode($data).PHP_EOL;
@@ -77,7 +77,7 @@ class OC_EventSource{
 	/**
 	 * close the connection of the even source
 	 */
-	public function close(){
+	public function close() {
 		$this->send('__internal__','close');//server side closing can be an issue, let the client do it
 	}
 }
\ No newline at end of file
diff --git a/lib/filecache.php b/lib/filecache.php
index e85d6747f905b133db40c00d20a44a7d46e2678c..adcf97753ede2c22ed10f8c39a44be977a9f7733 100644
--- a/lib/filecache.php
+++ b/lib/filecache.php
@@ -42,9 +42,9 @@ class OC_FileCache{
 	 * - 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
+	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);
@@ -61,37 +61,37 @@ class OC_FileCache{
 	 *
 	 * $data is an assiciative array in the same format as returned by get
 	 */
-	public static function put($path,$data,$root=false){
-		if($root===false){
+	public static function put($path,$data,$root=false) {
+		if($root===false) {
 			$root=OC_Filesystem::getRoot();
 		}
 		$fullpath=$root.$path;
 		$parent=self::getParentId($fullpath);
 		$id=self::getId($fullpath,'');
-		if(isset(OC_FileCache_Cached::$savedData[$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){
+		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 = substr(dirname($path), 0, strrpos(dirname($path), DIRECTORY_SEPARATOR));
 			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
+
+		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'])){
+		if(!isset($data['encrypted'])) {
 			$data['encrypted']=false;
 		}
-		if(!isset($data['versioned'])){
+		if(!isset($data['versioned'])) {
 			$data['versioned']=false;
 		}
 		$mimePart=dirname($data['mimetype']);
@@ -103,11 +103,11 @@ class OC_FileCache{
 		$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)){
+		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)){
+		if($cache=OC_Cache::getUserCache(true)) {
 			$cache->remove('fileid/'.$fullpath);//ensure we don't have -1 cached
 		}
 	}
@@ -117,13 +117,13 @@ class OC_FileCache{
 	 * @param int $id
 	 * @param array $data
 	 */
-	private static function update($id,$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])){
+		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){
+				if($data[$attribute] === false) {
 					$arguments[] = 0;
 				}else{
 					$arguments[] = $data[$attribute];
@@ -131,16 +131,16 @@ class OC_FileCache{
 				$queryParts[]='`'.$attribute.'`=?';
 			}
 		}
-		if(isset($data['mimetype'])){
+		if(isset($data['mimetype'])) {
 			$arguments[]=dirname($data['mimetype']);
 			$queryParts[]='`mimepart`=?';
 		}
 		$arguments[]=$id;
-		
+
 		$sql = 'UPDATE `*PREFIX*fscache` SET '.implode(' , ',$queryParts).' WHERE `id`=?';
 		$query=OC_DB::prepare($sql);
 		$result=$query->execute($arguments);
-		if(OC_DB::isError($result)){
+		if(OC_DB::isError($result)) {
 			OC_Log::write('files','error while updating file('.$id.') in cache',OC_Log::ERROR);
 		}
 	}
@@ -151,17 +151,21 @@ class OC_FileCache{
 	 * @param string newPath
 	 * @param string root (optional)
 	 */
-	public static function move($oldPath,$newPath,$root=false){
-		if($root===false){
+	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)){
+		if(($cache=OC_Cache::getUserCache(true)) && $cache->hasKey('fileid/'.$oldPath)) {
 			$cache->set('fileid/'.$newPath,$cache->get('fileid/'.$oldPath));
 			$cache->remove('fileid/'.$oldPath);
 		}
@@ -169,12 +173,12 @@ class OC_FileCache{
 		$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()){
+		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)){
+			if(($cache=OC_Cache::getUserCache(true)) && $cache->hasKey('fileid/'.$old)) {
 				$cache->set('fileid/'.$new,$cache->get('fileid/'.$old));
 				$cache->remove('fileid/'.$old);
 			}
@@ -186,20 +190,20 @@ class OC_FileCache{
 	 * @param string path
 	 * @param string root (optional)
 	 */
-	public static function delete($path,$root=false){
-		if($root===false){
+	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
@@ -207,20 +211,20 @@ class OC_FileCache{
 	 * @param string root (optional)
 	 * @return array of filepaths
 	 */
-	public static function search($search,$returnData=false,$root=false){
-		if($root===false){
+	public static function search($search,$returnData=false,$root=false) {
+		if($root===false) {
 			$root=OC_Filesystem::getRoot();
 		}
 		$rootLen=strlen($root);
-		if(!$returnData){
+		if(!$returnData) {
 			$query=OC_DB::prepare('SELECT `path` FROM `*PREFIX*fscache` WHERE `name` LIKE ? AND `user`=?');
 		}else{
 			$query=OC_DB::prepare('SELECT * FROM `*PREFIX*fscache` WHERE `name` LIKE ? AND `user`=?');
 		}
 		$result=$query->execute(array("%$search%",OC_User::getUser()));
 		$names=array();
-		while($row=$result->fetchRow()){
-			if(!$returnData){
+		while($row=$result->fetchRow()) {
+			if(!$returnData) {
 				$names[]=substr($row['path'],$rootLen);
 			}else{
 				$row['path']=substr($row['path'],$rootLen);
@@ -245,8 +249,8 @@ class OC_FileCache{
 	 * - encrypted
 	 * - versioned
 	 */
-	public static function getFolderContent($path,$root=false,$mimetype_filter=''){
-		if(OC_FileCache_Update::hasUpdated($path,$root,true)){
+	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);
@@ -258,7 +262,7 @@ class OC_FileCache{
 	 * @param string root (optional)
 	 * @return bool
 	 */
-	public static function inCache($path,$root=false){
+	public static function inCache($path,$root=false) {
 		return self::getId($path,$root)!=-1;
 	}
 
@@ -268,44 +272,44 @@ class OC_FileCache{
 	 * @param string root (optional)
 	 * @return int
 	 */
-	public static function getId($path,$root=false){
-		if($root===false){
+	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)){
+		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)){
+		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)){
+		if(is_array($result)) {
 			$id=$result['id'];
 		}else{
 			$id=-1;
 		}
-		if($cache=OC_Cache::getUserCache(true)){
+		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){
+	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`=?');
@@ -313,7 +317,7 @@ class OC_FileCache{
 		$row=$result->fetchRow();
 		$path=$row['path'];
 		$root='/'.$user.'/files';
-		if(substr($path,0,strlen($root))!=$root){
+		if(substr($path,0,strlen($root))!=$root) {
 			return false;
 		}
 		return substr($path,strlen($root));
@@ -324,24 +328,24 @@ class OC_FileCache{
 	 * @param string $path
 	 * @return int
 	 */
-	private static function getParentId($path){
-		if($path=='/'){
+	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){
+	public static function increaseSize($path,$sizeDiff, $root=false) {
 		if($sizeDiff==0) return;
 		$id=self::getId($path,$root);
-		while($id!=-1){//walk up the filetree increasing the size of all parent folders
+		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));
 			$id=self::getParentId($path);
@@ -356,8 +360,8 @@ class OC_FileCache{
 	 * @param int count (optional)
 	 * @param string root (optional)
 	 */
-	public static function scan($path,$eventSource=false,&$count=0,$root=false){
-		if($eventSource){
+	public static function scan($path,$eventSource=false,&$count=0,$root=false) {
+		if($eventSource) {
 			$eventSource->send('scanning',array('file'=>$path,'count'=>$count));
 		}
 		$lastSend=$count;
@@ -365,7 +369,7 @@ class OC_FileCache{
 		if (substr($path, 0, 7) == '/Shared') {
 			return;
 		}
-		if($root===false){
+		if($root===false) {
 			$view=OC_Filesystem::getView();
 		}else{
 			$view=new OC_FilesystemView($root);
@@ -373,16 +377,16 @@ class OC_FileCache{
 		self::scanFile($path,$root);
 		$dh=$view->opendir($path.'/');
 		$totalSize=0;
-		if($dh){
+		if($dh) {
 			while (($filename = readdir($dh)) !== false) {
-				if($filename != '.' and $filename != '..'){
+				if($filename != '.' and $filename != '..') {
 					$file=$path.'/'.$filename;
-					if($view->is_dir($file.'/')){
+					if($view->is_dir($file.'/')) {
 						self::scan($file,$eventSource,$count,$root);
 					}else{
 						$totalSize+=self::scanFile($file,$root);
 						$count++;
-						if($count>$lastSend+25 and $eventSource){
+						if($count>$lastSend+25 and $eventSource) {
 							$lastSend=$count;
 							$eventSource->send('scanning',array('file'=>$path,'count'=>$count));
 						}
@@ -390,7 +394,7 @@ class OC_FileCache{
 				}
 			}
 		}
-		
+
 		OC_FileCache_Update::cleanFolder($path,$root);
 		self::increaseSize($path,$totalSize,$root);
 	}
@@ -401,12 +405,12 @@ class OC_FileCache{
 	 * @param string root (optional)
 	 * @return int size of the scanned file
 	 */
-	public static function scanFile($path,$root=false){
+	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){
+		if($root===false) {
 			$view=OC_Filesystem::getView();
 		}else{
 			$view=new OC_FilesystemView($root);
@@ -415,14 +419,14 @@ class OC_FileCache{
 		clearstatcache();
 		$mimetype=$view->getMimeType($path);
 		$stat=$view->stat($path);
-		if($mimetype=='httpd/unix-directory'){
+		if($mimetype=='httpd/unix-directory') {
 			$writable=$view->is_writable($path.'/');
 		}else{
 			$writable=$view->is_writable($path);
 		}
 		$stat['mimetype']=$mimetype;
 		$stat['writable']=$writable;
-		if($path=='/'){
+		if($path=='/') {
 			$path='';
 		}
 		self::put($path,$stat,$root);
@@ -442,14 +446,14 @@ class OC_FileCache{
 	 * seccond mimetype part can be ommited
 	 * e.g. searchByMime('audio')
 	 */
-	public static function searchByMime($part1,$part2=null,$root=false){
-		if($root===false){
+	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){
+		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{
@@ -457,7 +461,7 @@ class OC_FileCache{
 			$result=$query->execute(array($part1.'/'.$part2,$user, $root));
 		}
 		$names=array();
-		while($row=$result->fetchRow()){
+		while($row=$result->fetchRow()) {
 			$names[]=substr($row['path'],$rootLen);
 		}
 		return $names;
@@ -466,10 +470,24 @@ class OC_FileCache{
 	/**
 	 * clean old pre-path_hash entries
 	 */
-	public static function clean(){
+	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();
+		}
+	}
 }
 
 //watch for changes and try to keep the cache up to date
diff --git a/lib/filecache/cached.php b/lib/filecache/cached.php
index 95cc0ac300ebae8f01f930a561e2569042e2cb3d..4e8ff23793ecd160ad71c82376a2cbbfbb96a047 100644
--- a/lib/filecache/cached.php
+++ b/lib/filecache/cached.php
@@ -12,21 +12,21 @@
  */
 class OC_FileCache_Cached{
 	public static $savedData=array();
-	
-	public static function get($path,$root=false){
-		if($root===false){
+
+	public static function get($path,$root=false) {
+		if($root===false) {
 			$root=OC_Filesystem::getRoot();
 		}
 		$path=$root.$path;
 		$query=OC_DB::prepare('SELECT `path`,`ctime`,`mtime`,`mimetype`,`size`,`encrypted`,`versioned`,`writable` FROM `*PREFIX*fscache` WHERE `path_hash`=?');
 		$result=$query->execute(array(md5($path)))->fetchRow();
-		if(is_array($result)){
-			if(isset(self::$savedData[$path])){
-				$result=array_merge($result,self::$savedData[$path]);
+		if(is_array($result)) {
+			if(isset(self::$savedData[$path])) {
+				$result=array_merge($result, self::$savedData[$path]);
 			}
 			return $result;
 		}else{
-			if(isset(self::$savedData[$path])){
+			if(isset(self::$savedData[$path])) {
 				return self::$savedData[$path];
 			}else{
 				return array();
@@ -50,20 +50,20 @@ class OC_FileCache_Cached{
 	 * - encrypted
 	 * - versioned
 	 */
-	public static function getFolderContent($path,$root=false,$mimetype_filter=''){
-		if($root===false){
+	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){
+		$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)){
+		if(is_array($result)) {
 			return $result;
 		}else{
-			OC_Log::write('files','getFolderContent(): file not found in cache ('.$path.')',OC_Log::DEBUG);
+			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
index 0b5ff8e2446b277d280ccfdc03b88f41ccc0babe..2b64a2a90ff0fa96bc55ee7be952fa7b9e60a0cb 100644
--- a/lib/filecache/update.php
+++ b/lib/filecache/update.php
@@ -18,50 +18,50 @@ class OC_FileCache_Update{
 	 * @param boolean folder
 	 * @return bool
 	 */
-	public static function hasUpdated($path,$root=false,$folder=false){
-		if($root===false){
+	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)){
+		if(!$view->file_exists($path)) {
 			return false;
 		}
-		$cachedData=OC_FileCache_Cached::get($path,$root);
-		if(isset($cachedData['mtime'])){
+		$cachedData=OC_FileCache_Cached::get($path, $root);
+		if(isset($cachedData['mtime'])) {
 			$cachedMTime=$cachedData['mtime'];
-			if($folder){
-				return $view->hasUpdated($path.'/',$cachedMTime);
+			if($folder) {
+				return $view->hasUpdated($path.'/', $cachedMTime);
 			}else{
-				return $view->hasUpdated($path,$cachedMTime);
+				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
+			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){
+	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){
+		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));
+			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);
+					self::delete($file, $root);
 				}
 			}
 		}
@@ -72,35 +72,35 @@ class OC_FileCache_Update{
 	 * @param string path
 	 * @param string root (optional)
 	 */
-	public static function updateFolder($path,$root=false){
-		if($root===false){
+	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
+		if($dh) {//check for changed/new files
 			while (($filename = readdir($dh)) !== false) {
-				if($filename != '.' and $filename != '..'){
+				if($filename != '.' and $filename != '..') {
 					$file=$path.'/'.$filename;
-					if(self::hasUpdated($file,$root)){
-						if($root===false){//filesystem hooks are only valid for the default root
-							OC_Hook::emit('OC_Filesystem','post_write',array('path'=>$file));
+					if(self::hasUpdated($file, $root)) {
+						if($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::update($file, $root);
 						}
 					}
 				}
 			}
 		}
 
-		self::cleanFolder($path,$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));
+		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);
+			self::update($path, $root);
 		}
 	}
 
@@ -109,7 +109,7 @@ class OC_FileCache_Update{
 	 * @param array $params
 	 * @param string root (optional)
 	 */
-	public static function fileSystemWatcherWrite($params){
+	public static function fileSystemWatcherWrite($params) {
 		$path=$params['path'];
 		self::update($path);
 	}
@@ -119,7 +119,7 @@ class OC_FileCache_Update{
 	 * @param array $params
 	 * @param string root (optional)
 	 */
-	public static function fileSystemWatcherDelete($params){
+	public static function fileSystemWatcherDelete($params) {
 		$path=$params['path'];
 		self::delete($path);
 	}
@@ -129,10 +129,10 @@ class OC_FileCache_Update{
 	 * @param array $params
 	 * @param string root (optional)
 	 */
-	public static function fileSystemWatcherRename($params){
+	public static function fileSystemWatcherRename($params) {
 		$oldPath=$params['oldpath'];
 		$newPath=$params['newpath'];
-		self::rename($oldPath,$newPath);
+		self::rename($oldPath, $newPath);
 	}
 
 	/**
@@ -140,38 +140,38 @@ class OC_FileCache_Update{
 	 * @param string path
 	 * @param string root (optional)
 	 */
-	public static function update($path,$root=false){
-		if($root===false){
+	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){
+		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));
+				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);
+				OC_FileCache::scan($path, null, $count, $root);
 				return; //increaseSize is already called inside scan
 			}
 		}else{
-			$size=OC_FileCache::scanFile($path,$root);
+			$size=OC_FileCache::scanFile($path, $root);
 		}
-		OC_FileCache::increaseSize(dirname($path),$size-$cachedSize,$root);
+		OC_FileCache::increaseSize(dirname($path), $size-$cachedSize, $root);
 	}
 
 	/**
@@ -179,14 +179,14 @@ class OC_FileCache_Update{
 	 * @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'])){
+	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);
+		OC_FileCache::increaseSize(dirname($path), -$size, $root);
+		OC_FileCache::delete($path, $root);
 	}
 
 	/**
@@ -195,20 +195,20 @@ class OC_FileCache_Update{
 	 * @param string newPath
 	 * @param string root (optional)
 	 */
-	public static function rename($oldPath,$newPath,$root=false){
-		if(!OC_FileCache::inCache($oldPath,$root)){
+	public static function rename($oldPath,$newPath,$root=false) {
+		if(!OC_FileCache::inCache($oldPath, $root)) {
 			return;
 		}
-		if($root===false){
+		if($root===false) {
 			$view=OC_Filesystem::getView();
 		}else{
 			$view=new OC_FilesystemView($root);
 		}
 
-		$cached=OC_FileCache_Cached::get($oldPath,$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);
+		OC_FileCache::increaseSize(dirname($oldPath), -$oldSize, $root);
+		OC_FileCache::increaseSize(dirname($newPath), $oldSize, $root);
+		OC_FileCache::move($oldPath, $newPath);
 	}
 }
\ No newline at end of file
diff --git a/lib/fileproxy.php b/lib/fileproxy.php
index ec04faa9bc5061af43b7abd8cd6951861c074677..17380c656a3c5205bf5928579850276d7030c87e 100644
--- a/lib/fileproxy.php
+++ b/lib/fileproxy.php
@@ -43,7 +43,7 @@
 class OC_FileProxy{
 	private static $proxies=array();
 	public static $enabled=true;
-	
+
 	/**
 	 * fallback function when a proxy operation is not implemented
 	 * @param string $function the name of the proxy operation
@@ -51,45 +51,45 @@ class OC_FileProxy{
 	 *
 	 * this implements a dummy proxy for all operations
 	 */
-	public function __call($function,$arguments){
-		if(substr($function,0,3)=='pre'){
+	public function __call($function,$arguments) {
+		if(substr($function,0,3)=='pre') {
 			return true;
 		}else{
 			return $arguments[1];
 		}
 	}
-	
+
 	/**
 	 * register a proxy to be used
 	 * @param OC_FileProxy $proxy
 	 */
-	public static function register($proxy){
+	public static function register($proxy) {
 		self::$proxies[]=$proxy;
 	}
-	
-	public static function getProxies($operation){
+
+	public static function getProxies($operation) {
 		$proxies=array();
-		foreach(self::$proxies as $proxy){
-			if(method_exists($proxy,$operation)){
+		foreach(self::$proxies as $proxy) {
+			if(method_exists($proxy,$operation)) {
 				$proxies[]=$proxy;
 			}
 		}
 		return $proxies;
 	}
 
-	public static function runPreProxies($operation,&$filepath,&$filepath2=null){
-		if(!self::$enabled){
+	public static function runPreProxies($operation,&$filepath,&$filepath2=null) {
+		if(!self::$enabled) {
 			return true;
 		}
 		$operation='pre'.$operation;
 		$proxies=self::getProxies($operation);
-		foreach($proxies as $proxy){
-			if(!is_null($filepath2)){
-				if($proxy->$operation($filepath,$filepath2)===false){
+		foreach($proxies as $proxy) {
+			if(!is_null($filepath2)) {
+				if($proxy->$operation($filepath,$filepath2)===false) {
 					return false;
 				}
 			}else{
-				if($proxy->$operation($filepath)===false){
+				if($proxy->$operation($filepath)===false) {
 					return false;
 				}
 			}
@@ -97,19 +97,19 @@ class OC_FileProxy{
 		return true;
 	}
 
-	public static function runPostProxies($operation,$path,$result){
-		if(!self::$enabled){
+	public static function runPostProxies($operation,$path,$result) {
+		if(!self::$enabled) {
 			return $result;
 		}
 		$operation='post'.$operation;
 		$proxies=self::getProxies($operation);
-		foreach($proxies as $proxy){
+		foreach($proxies as $proxy) {
 			$result=$proxy->$operation($path,$result);
 		}
 		return $result;
 	}
 
-	public static function clearProxies(){
+	public static function clearProxies() {
 		self::$proxies=array();
 	}
 }
diff --git a/lib/fileproxy/quota.php b/lib/fileproxy/quota.php
index 7316224cc6160566f6d629390f0a9021f1d56eb5..adbff3d301a441e3fce4808b1f2c7315dc98d7e3 100644
--- a/lib/fileproxy/quota.php
+++ b/lib/fileproxy/quota.php
@@ -27,33 +27,33 @@
 
 class OC_FileProxy_Quota extends OC_FileProxy{
 	private $userQuota=-1;
-	
+
 	/**
 	 * get the quota for the current user
 	 * @return int
 	 */
-	private function getQuota(){
-		if($this->userQuota!=-1){
+	private function getQuota() {
+		if($this->userQuota!=-1) {
 			return $this->userQuota;
 		}
 		$userQuota=OC_Preferences::getValue(OC_User::getUser(),'files','quota','default');
-		if($userQuota=='default'){
+		if($userQuota=='default') {
 			$userQuota=OC_AppConfig::getValue('files','default_quota','none');
 		}
-		if($userQuota=='none'){
+		if($userQuota=='none') {
 			$this->userQuota=0;
 		}else{
 			$this->userQuota=OC_Helper::computerFileSize($userQuota);
 		}
 		return $this->userQuota;
-		
+
 	}
-	
+
 	/**
 	 * get the free space in the users home folder
 	 * @return int
 	 */
-	private function getFreeSpace(){
+	private function getFreeSpace() {
 		$rootInfo=OC_FileCache_Cached::get('');
 		// TODO Remove after merge of share_api
 		if (OC_FileCache::inCache('/Shared')) {
@@ -64,36 +64,36 @@ class OC_FileProxy_Quota extends OC_FileProxy{
 		$usedSpace=isset($rootInfo['size'])?$rootInfo['size']:0;
 		$usedSpace=isset($sharedInfo['size'])?$usedSpace-$sharedInfo['size']:$usedSpace;
 		$totalSpace=$this->getQuota();
-		if($totalSpace==0){
+		if($totalSpace==0) {
 			return 0;
 		}
 		return $totalSpace-$usedSpace;
 	}
-	
-	public function postFree_space($path,$space){
+
+	public function postFree_space($path,$space) {
 		$free=$this->getFreeSpace();
-		if($free==0){
+		if($free==0) {
 			return $space;
 		}
 		return min($free,$space);
 	}
 
-	public function preFile_put_contents($path,$data){
+	public function preFile_put_contents($path,$data) {
 		if (is_resource($data)) {
 			$data = '';//TODO: find a way to get the length of the stream without emptying it
 		}
 		return (strlen($data)<$this->getFreeSpace() or $this->getFreeSpace()==0);
 	}
 
-	public function preCopy($path1,$path2){
+	public function preCopy($path1,$path2) {
 		return (OC_Filesystem::filesize($path1)<$this->getFreeSpace() or $this->getFreeSpace()==0);
 	}
 
-	public function preFromTmpFile($tmpfile,$path){
+	public function preFromTmpFile($tmpfile,$path) {
 		return (filesize($tmpfile)<$this->getFreeSpace() or $this->getFreeSpace()==0);
 	}
 
-	public function preFromUploadedFile($tmpfile,$path){
+	public function preFromUploadedFile($tmpfile,$path) {
 		return (filesize($tmpfile)<$this->getFreeSpace() or $this->getFreeSpace()==0);
 	}
 }
\ No newline at end of file
diff --git a/lib/files.php b/lib/files.php
index 1a1fffa0a50fb97c181e8105812e58dd3808befb..63dd96b9509d91f1846e377c029d7bff1450fc12 100644
--- a/lib/files.php
+++ b/lib/files.php
@@ -32,9 +32,9 @@ class OC_Files {
 	* get the content of a directory
 	* @param dir $directory path under datadirectory
 	*/
-	public static function getDirectoryContent($directory, $mimetype_filter = ''){
+	public static function getDirectoryContent($directory, $mimetype_filter = '') {
 		$directory=OC_Filesystem::normalizePath($directory);
-		if($directory=='/'){
+		if($directory=='/') {
 			$directory='';
 		}
 		$files = array();
@@ -56,7 +56,11 @@ class OC_Files {
 			foreach ($files as &$file) {
 				$file['directory'] = $directory;
 				$file['type'] = ($file['mimetype'] == 'httpd/unix-directory') ? 'dir' : 'file';
-				$permissions = OCP\Share::PERMISSION_READ | OCP\Share::PERMISSION_SHARE;
+				$permissions = OCP\Share::PERMISSION_READ;
+				// NOTE: Remove check when new encryption is merged
+				if (!$file['encrypted']) {
+					$permissions |= OCP\Share::PERMISSION_SHARE;
+				}
 				if ($file['type'] == 'dir' && $file['writable']) {
 					$permissions |= OCP\Share::PERMISSION_CREATE;
 				}
@@ -83,12 +87,12 @@ class OC_Files {
 	* @param file $file ; seperated 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){
-		if(strpos($files,';')){
+	public static function get($dir,$files, $only_header = false) {
+		if(strpos($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);
@@ -97,19 +101,19 @@ class OC_Files {
 			if ($zip->open($filename, ZIPARCHIVE::CREATE | ZIPARCHIVE::OVERWRITE)!==TRUE) {
 				exit("cannot open <$filename>\n");
 			}
-			foreach($files as $file){
+			foreach($files as $file) {
 				$file=$dir.'/'.$file;
-				if(OC_Filesystem::is_file($file)){
+				if(OC_Filesystem::is_file($file)) {
 					$tmpFile=OC_Filesystem::toTmpFile($file);
 					self::$tmpFiles[]=$tmpFile;
 					$zip->addFile($tmpFile,basename($file));
-				}elseif(OC_Filesystem::is_dir($file)){
+				}elseif(OC_Filesystem::is_dir($file)) {
 					self::zipAddDir($file,$zip);
 				}
 			}
 			$zip->close();
 			set_time_limit($executionTime);
-		}elseif(OC_Filesystem::is_dir($dir.'/'.$files)){
+		}elseif(OC_Filesystem::is_dir($dir.'/'.$files)) {
 			self::validateZipDownload($dir,$files);
 			$executionTime = intval(ini_get('max_execution_time'));
 			set_time_limit(0);
@@ -127,18 +131,18 @@ class OC_Files {
 			$filename=$dir.'/'.$files;
 		}
 		@ob_end_clean();
-		if($zip or OC_Filesystem::is_readable($filename)){
+		if($zip or OC_Filesystem::is_readable($filename)) {
 			header('Content-Disposition: attachment; filename="'.basename($filename).'"');
 			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));
 			}else{
 				header('Content-Type: '.OC_Filesystem::getMimeType($filename));
 			}
-		}elseif($zip or !OC_Filesystem::file_exists($filename)){
+		}elseif($zip or !OC_Filesystem::file_exists($filename)) {
 			header("HTTP/1.0 404 Not Found");
 			$tmpl = new OC_Template( '', '404', 'guest' );
 			$tmpl->assign('file',$filename);
@@ -147,12 +151,12 @@ class OC_Files {
 			header("HTTP/1.0 403 Forbidden");
 			die('403 Forbidden');
 		}
-		if($only_header){
+		if($only_header) {
 			if(!$zip)
 				header("Content-Length: ".OC_Filesystem::filesize($filename));
 			return ;
 		}
-		if($zip){
+		if($zip) {
 			$handle=fopen($filename,'r');
 			if ($handle) {
 				$chunkSize = 8*1024;// 1 MB chunks
@@ -165,26 +169,26 @@ class OC_Files {
 		}else{
 			OC_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);
 			}
 		}
 	}
 
-	public static function zipAddDir($dir,$zip,$internalDir=''){
+	public static function zipAddDir($dir,$zip,$internalDir='') {
 		$dirname=basename($dir);
 		$zip->addEmptyDir($internalDir.$dirname);
 		$internalDir.=$dirname.='/';
 		$files=OC_Files::getdirectorycontent($dir);
-		foreach($files as $file){
+		foreach($files as $file) {
 			$filename=$file['name'];
 			$file=$dir.'/'.$filename;
-			if(OC_Filesystem::is_file($file)){
+			if(OC_Filesystem::is_file($file)) {
 				$tmpFile=OC_Filesystem::toTmpFile($file);
 				OC_Files::$tmpFiles[]=$tmpFile;
 				$zip->addFile($tmpFile,$internalDir.$filename);
-			}elseif(OC_Filesystem::is_dir($file)){
+			}elseif(OC_Filesystem::is_dir($file)) {
 				self::zipAddDir($file,$zip,$internalDir);
 			}
 		}
@@ -197,8 +201,8 @@ class OC_Files {
 	* @param dir  $targetDir
 	* @param file $target
 	*/
-	public static function move($sourceDir,$source,$targetDir,$target){
-		if(OC_User::isLoggedIn() && ($sourceDir != '' || $source != 'Shared') && !OC_Filesystem::file_exists($targetDir.'/'.$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);
@@ -215,8 +219,8 @@ class OC_Files {
 	* @param dir  $targetDir
 	* @param file $target
 	*/
-	public static function copy($sourceDir,$source,$targetDir,$target){
-		if(OC_User::isLoggedIn()){
+	public static function copy($sourceDir,$source,$targetDir,$target) {
+		if(OC_User::isLoggedIn()) {
 			$targetFile=$targetDir.'/'.$target;
 			$sourceFile=$sourceDir.'/'.$source;
 			return OC_Filesystem::copy($sourceFile,$targetFile);
@@ -230,14 +234,14 @@ class OC_Files {
 	* @param file $name
 	* @param type $type
 	*/
-	public static function newFile($dir,$name,$type){
-		if(OC_User::isLoggedIn()){
+	public static function newFile($dir,$name,$type) {
+		if(OC_User::isLoggedIn()) {
 			$file=$dir.'/'.$name;
-			if($type=='dir'){
+			if($type=='dir') {
 				return OC_Filesystem::mkdir($file);
-			}elseif($type=='file'){
+			}elseif($type=='file') {
 				$fileHandle=OC_Filesystem::fopen($file, 'w');
-				if($fileHandle){
+				if($fileHandle) {
 					fclose($fileHandle);
 					return true;
 				}else{
@@ -253,7 +257,7 @@ class OC_Files {
 	* @param dir  $dir
 	* @param file $name
 	*/
-	public static function delete($dir,$file){
+	public static function delete($dir,$file) {
 		if(OC_User::isLoggedIn() && ($dir!= '' || $file != 'Shared')) {
 			$file=$dir.'/'.$file;
 			return OC_Filesystem::unlink($file);
@@ -268,7 +272,7 @@ class OC_Files {
 	*/
 	static function validateZipDownload($dir, $files) {
 		if(!OC_Config::getValue('allowZipDownload', true)) {
-			$l = OC_L10N::get('files');
+			$l = OC_L10N::get('lib');
 			header("HTTP/1.0 409 Conflict");
 			$tmpl = new OC_Template( '', 'error', 'user' );
 			$errors = array(
@@ -285,15 +289,15 @@ class OC_Files {
 		$zipLimit = OC_Config::getValue('maxZipInputSize', OC_Helper::computerFileSize('800 MB'));
 		if($zipLimit > 0) {
 			$totalsize = 0;
-			if(is_array($files)){
-				foreach($files as $file){
+			if(is_array($files)) {
+				foreach($files as $file) {
 					$totalsize += OC_Filesystem::filesize($dir.'/'.$file);
 				}
 			}else{
 				$totalsize += OC_Filesystem::filesize($dir.'/'.$files);
 			}
 			if($totalsize > $zipLimit) {
-				$l = OC_L10N::get('files');
+				$l = OC_L10N::get('lib');
 				header("HTTP/1.0 409 Conflict");
 				$tmpl = new OC_Template( '', 'error', 'user' );
 				$errors = array(
@@ -315,7 +319,7 @@ class OC_Files {
 	* @param  string  path
 	* @return string  guessed mime type
 	*/
-	static function getMimeType($path){
+	static function getMimeType($path) {
 		return OC_Filesystem::getMimeType($path);
 	}
 
@@ -325,7 +329,7 @@ class OC_Files {
 	* @param  string  path
 	* @return array
 	*/
-	static function getTree($path){
+	static function getTree($path) {
 		return OC_Filesystem::getTree($path);
 	}
 
@@ -337,7 +341,7 @@ class OC_Files {
 	* @param  string  file
 	* @return string  guessed mime type
 	*/
-	static function pull($source,$token,$dir,$file){
+	static function pull($source,$token,$dir,$file) {
 		$tmpfile=tempnam(get_temp_dir(),'remoteCloudFile');
 		$fp=fopen($tmpfile,'w+');
 		$url=$source.="/files/pull.php?token=$token";
@@ -349,7 +353,7 @@ class OC_Files {
 		$info=curl_getinfo($ch);
 		$httpCode=$info['http_code'];
 		curl_close($ch);
-		if($httpCode==200 or $httpCode==0){
+		if($httpCode==200 or $httpCode==0) {
 			OC_Filesystem::fromTmpFile($tmpfile,$dir.'/'.$file);
 			return true;
 		}else{
@@ -362,7 +366,7 @@ class OC_Files {
 	 * @param int size filesisze in bytes
 	 * @return false on failure, size on success
 	 */
-	static function setUploadLimit($size){
+	static function setUploadLimit($size) {
 		//don't allow user to break his config -- upper boundary
 		if($size > PHP_INT_MAX) {
 			//max size is always 1 byte lower than computerFileSize returns
@@ -406,9 +410,9 @@ class OC_Files {
 		//check for write permissions
 		if(is_writable(OC::$SERVERROOT.'/.htaccess')) {
 			file_put_contents(OC::$SERVERROOT.'/.htaccess', $htaccess);
-			return OC_Helper::computerFileSize($size);	
+			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); }
-		
+
 		return false;
 	}
 
@@ -417,10 +421,10 @@ class OC_Files {
 	 * @param string $path
 	 * @return string
 	 */
-	static public function normalizePath($path){
+	static public function normalizePath($path) {
 		$path='/'.$path;
 		$old='';
-		while($old!=$path){//replace any multiplicity of slashes with a single one
+		while($old!=$path) {//replace any multiplicity of slashes with a single one
 			$old=$path;
 			$path=str_replace('//','/',$path);
 		}
@@ -428,10 +432,10 @@ class OC_Files {
 	}
 }
 
-function fileCmp($a,$b){
-	if($a['type']=='dir' and $b['type']!='dir'){
+function fileCmp($a,$b) {
+	if($a['type']=='dir' and $b['type']!='dir') {
 		return -1;
-	}elseif($a['type']!='dir' and $b['type']=='dir'){
+	}elseif($a['type']!='dir' and $b['type']=='dir') {
 		return 1;
 	}else{
 		return strnatcasecmp($a['name'],$b['name']);
diff --git a/lib/filestorage/common.php b/lib/filestorage/common.php
index c829be62f74351d0ad3f42a2054e0150b56a5a97..351714437c58d36c482779898651877dd543adef 100644
--- a/lib/filestorage/common.php
+++ b/lib/filestorage/common.php
@@ -21,11 +21,11 @@
 */
 
 /**
- * Storage backend class for providing common filesystem operation methods 
+ * 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
- * storage backends, where its methods may be overridden, and additional 
+ * 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
@@ -34,20 +34,20 @@
 
 abstract class OC_Filestorage_Common extends OC_Filestorage {
 
-	public function __construct($parameters){}
+	public function __construct($parameters) {}
 // 	abstract public function mkdir($path);
 // 	abstract public function rmdir($path);
 // 	abstract public function opendir($path);
-	public function is_dir($path){
+	public function is_dir($path) {
 		return $this->filetype($path)=='dir';
 	}
-	public function is_file($path){
+	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)){
+		if($this->is_dir($path)) {
 			return 0;//by definition
 		}else{
 			$stat = $this->stat($path);
@@ -80,11 +80,11 @@ abstract class OC_Filestorage_Common extends OC_Filestorage {
 	}
 	public function file_get_contents($path) {
 		$handle = $this->fopen($path, "r");
-		if(!$handle){
+		if(!$handle) {
 			return false;
 		}
 		$size=$this->filesize($path);
-		if($size==0){
+		if($size==0) {
 			return '';
 		}
 		return fread($handle, $size);
@@ -94,8 +94,8 @@ abstract class OC_Filestorage_Common extends OC_Filestorage {
 		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;
@@ -115,85 +115,85 @@ abstract class OC_Filestorage_Common extends OC_Filestorage {
 	 * @param $empty Flag indicating whether directory will be emptied
 	 * @returns true/false
 	 *
-	 * @note By default the directory specified by $directory will be 
+	 * @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 );
-			
+
 		}
-		
+
 		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 ) ) {
-		
+
 			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 );
-					
+
 					} 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 true;
 		}
-		
+
 	}
-	public function getMimeType($path){
-		if(!$this->file_exists($path)){
+	public function getMimeType($path) {
+		if(!$this->file_exists($path)) {
 			return false;
 		}
-		if($this->is_dir($path)){
+		if($this->is_dir($path)) {
 			return 'httpd/unix-directory';
 		}
 		$source=$this->fopen($path,'r');
-		if(!$source){
+		if(!$source) {
 			return false;
 		}
 		$head=fread($source,8192);//8kb should suffice to determine a mimetype
-		if($pos=strrpos($path,'.')){
+		if($pos=strrpos($path,'.')) {
 			$extension=substr($path,$pos);
 		}else{
 			$extension='';
@@ -204,25 +204,25 @@ abstract class OC_Filestorage_Common extends OC_Filestorage {
 		unlink($tmpFile);
 		return $mime;
 	}
-	public function hash($type,$path,$raw = false){
+	public function hash($type,$path,$raw = false) {
 		$tmpFile=$this->getLocalFile();
 		$hash=hash($type,$tmpFile,$raw);
 		unlink($tmpFile);
 		return $hash;
 	}
 // 	abstract public function free_space($path);
-	public function search($query){
+	public function search($query) {
 		return $this->searchInDir($query);
 	}
-	public function getLocalFile($path){
+	public function getLocalFile($path) {
 		return $this->toTmpFile($path);
 	}
-	private function toTmpFile($path){//no longer in the storage api, still usefull here
+	private function toTmpFile($path) {//no longer in the storage api, still usefull here
 		$source=$this->fopen($path,'r');
-		if(!$source){
+		if(!$source) {
 			return false;
 		}
-		if($pos=strrpos($path,'.')){
+		if($pos=strrpos($path,'.')) {
 			$extension=substr($path,$pos);
 		}else{
 			$extension='';
@@ -232,16 +232,16 @@ abstract class OC_Filestorage_Common extends OC_Filestorage {
 		OC_Helper::streamCopy($source,$target);
 		return $tmpFile;
 	}
-	public function getLocalFolder($path){
+	public function getLocalFolder($path) {
 		$baseDir=OC_Helper::tmpFolder();
 		$this->addLocalFolder($path,$baseDir);
 		return $baseDir;
 	}
-	private function addLocalFolder($path,$target){
-		if($dh=$this->opendir($path)){
-			while($file=readdir($dh)){
-				if($file!=='.' and $file!=='..'){
-					if($this->is_dir($path.'/'.$file)){
+	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);
 					}else{
@@ -254,16 +254,16 @@ abstract class OC_Filestorage_Common extends OC_Filestorage {
 	}
 // 	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){
-			while($item=readdir($dh)){
+		if($dh) {
+			while($item=readdir($dh)) {
 				if ($item == '.' || $item == '..') continue;
-				if(strstr(strtolower($item),strtolower($query))!==false){
+				if(strstr(strtolower($item),strtolower($query))!==false) {
 					$files[]=$dir.'/'.$item;
 				}
-				if($this->is_dir($dir.'/'.$item)){
+				if($this->is_dir($dir.'/'.$item)) {
 					$files=array_merge($files,$this->searchInDir($query,$dir.'/'.$item));
 				}
 			}
@@ -276,7 +276,7 @@ abstract class OC_Filestorage_Common extends OC_Filestorage {
 	 * @param int $time
 	 * @return bool
 	 */
-	public function hasUpdated($path,$time){
+	public function hasUpdated($path,$time) {
 		return $this->filemtime($path)>$time;
 	}
 }
diff --git a/lib/filestorage/commontest.php b/lib/filestorage/commontest.php
index b5126a407b343b020ada149cd572de10a3dcf517..b88bb232c3647830fcc7e33f2593941c6b570932 100644
--- a/lib/filestorage/commontest.php
+++ b/lib/filestorage/commontest.php
@@ -31,45 +31,45 @@ class OC_Filestorage_CommonTest extends OC_Filestorage_Common{
 	 * @var OC_FileStorage_Local
 	 */
 	private $storage;
-	
-	public function __construct($params){
+
+	public function __construct($params) {
 		$this->storage=new OC_Filestorage_Local($params);
 	}
-	
-	public function mkdir($path){
+
+	public function mkdir($path) {
 		return $this->storage->mkdir($path);
 	}
-	public function rmdir($path){
+	public function rmdir($path) {
 		return $this->storage->rmdir($path);
 	}
-	public function opendir($path){
+	public function opendir($path) {
 		return $this->storage->opendir($path);
 	}
-	public function stat($path){
+	public function stat($path) {
 		return $this->storage->stat($path);
 	}
-	public function filetype($path){
+	public function filetype($path) {
 		return $this->storage->filetype($path);
 	}
-	public function isReadable($path){
+	public function isReadable($path) {
 		return $this->storage->isReadable($path);
 	}
-	public function isUpdatable($path){
+	public function isUpdatable($path) {
 		return $this->storage->isUpdatable($path);
 	}
-	public function file_exists($path){
+	public function file_exists($path) {
 		return $this->storage->file_exists($path);
 	}
-	public function unlink($path){
+	public function unlink($path) {
 		return $this->storage->unlink($path);
 	}
-	public function fopen($path,$mode){
+	public function fopen($path,$mode) {
 		return $this->storage->fopen($path,$mode);
 	}
-	public function free_space($path){
+	public function free_space($path) {
 		return $this->storage->free_space($path);
 	}
-	public function touch($path, $mtime=null){
+	public function touch($path, $mtime=null) {
 		return $this->storage->touch($path,$mtime);
 	}
 }
\ No newline at end of file
diff --git a/lib/filestorage/local.php b/lib/filestorage/local.php
index 22d17469df3380764c0f34b9205f509fe5262257..80aa548047c31dc07afa7cba133f1dedb2db739c 100644
--- a/lib/filestorage/local.php
+++ b/lib/filestorage/local.php
@@ -4,67 +4,67 @@
  */
 class OC_Filestorage_Local extends OC_Filestorage_Common{
 	protected $datadir;
-	public function __construct($arguments){
+	public function __construct($arguments) {
 		$this->datadir=$arguments['datadir'];
-		if(substr($this->datadir,-1)!=='/'){
+		if(substr($this->datadir,-1)!=='/') {
 			$this->datadir.='/';
 		}
 	}
-	public function mkdir($path){
+	public function mkdir($path) {
 		return @mkdir($this->datadir.$path);
 	}
-	public function rmdir($path){
+	public function rmdir($path) {
 		return @rmdir($this->datadir.$path);
 	}
-	public function opendir($path){
+	public function opendir($path) {
 		return opendir($this->datadir.$path);
 	}
-	public function is_dir($path){
-		if(substr($path,-1)=='/'){
+	public function is_dir($path) {
+		if(substr($path,-1)=='/') {
 			$path=substr($path,0,-1);
 		}
 		return is_dir($this->datadir.$path);
 	}
-	public function is_file($path){
+	public function is_file($path) {
 		return is_file($this->datadir.$path);
 	}
-	public function stat($path){
+	public function stat($path) {
 		return stat($this->datadir.$path);
 	}
-	public function filetype($path){
+	public function filetype($path) {
 		$filetype=filetype($this->datadir.$path);
-		if($filetype=='link'){
+		if($filetype=='link') {
 			$filetype=filetype(realpath($this->datadir.$path));
 		}
 		return $filetype;
 	}
-	public function filesize($path){
-		if($this->is_dir($path)){
+	public function filesize($path) {
+		if($this->is_dir($path)) {
 			return 0;
 		}else{
 			return filesize($this->datadir.$path);
 		}
 	}
-	public function isReadable($path){
+	public function isReadable($path) {
 		return is_readable($this->datadir.$path);
 	}
-	public function isUpdatable($path){
+	public function isUpdatable($path) {
 		return is_writable($this->datadir.$path);
 	}
-	public function file_exists($path){
+	public function file_exists($path) {
 		return file_exists($this->datadir.$path);
 	}
-	public function filectime($path){
+	public function filectime($path) {
 		return filectime($this->datadir.$path);
 	}
-	public function filemtime($path){
+	public function filemtime($path) {
 		return filemtime($this->datadir.$path);
 	}
-	public function touch($path, $mtime=null){
-		// sets the modification time of the file to the given value. 
+	public function touch($path, $mtime=null) {
+		// sets the modification time of the file to the given value.
 		// If mtime is nil the current time is set.
 		// note that the access time of the file always changes to the current time.
-		if(!is_null($mtime)){
+		if(!is_null($mtime)) {
 			$result=touch( $this->datadir.$path, $mtime );
 		}else{
 			$result=touch( $this->datadir.$path);
@@ -72,35 +72,35 @@ class OC_Filestorage_Local extends OC_Filestorage_Common{
 		if( $result ) {
 			clearstatcache( true, $this->datadir.$path );
 		}
-		
+
 		return $result;
 	}
-	public function file_get_contents($path){
+	public function file_get_contents($path) {
 		return file_get_contents($this->datadir.$path);
 	}
-	public function file_put_contents($path,$data){
+	public function file_put_contents($path,$data) {
 		return file_put_contents($this->datadir.$path,$data);
 	}
-	public function unlink($path){
+	public function unlink($path) {
 		return $this->delTree($path);
 	}
-	public function rename($path1,$path2){
+	public function rename($path1,$path2) {
 		if (!$this->isUpdatable($path1)) {
 			OC_Log::write('core','unable to rename, file is not writable : '.$path1,OC_Log::ERROR);
 			return false;
 		}
-		if(! $this->file_exists($path1)){
+		if(! $this->file_exists($path1)) {
 			OC_Log::write('core','unable to rename, file does not exists : '.$path1,OC_Log::ERROR);
 			return false;
 		}
 
-		if($return=rename($this->datadir.$path1,$this->datadir.$path2)){
+		if($return=rename($this->datadir.$path1,$this->datadir.$path2)) {
 		}
 		return $return;
 	}
-	public function copy($path1,$path2){
-		if($this->is_dir($path2)){
-			if(!$this->file_exists($path2)){
+	public function copy($path1,$path2) {
+		if($this->is_dir($path2)) {
+			if(!$this->file_exists($path2)) {
 				$this->mkdir($path2);
 			}
 			$source=substr($path1,strrpos($path1,'/')+1);
@@ -108,9 +108,9 @@ class OC_Filestorage_Local extends OC_Filestorage_Common{
 		}
 		return copy($this->datadir.$path1,$this->datadir.$path2);
 	}
-	public function fopen($path,$mode){
-		if($return=fopen($this->datadir.$path,$mode)){
-			switch($mode){
+	public function fopen($path,$mode) {
+		if($return=fopen($this->datadir.$path,$mode)) {
+			switch($mode) {
 				case 'r':
 					break;
 				case 'r+':
@@ -127,8 +127,8 @@ class OC_Filestorage_Local extends OC_Filestorage_Common{
 		return $return;
 	}
 
-	public function getMimeType($path){
-		if($this->isReadable($path)){
+	public function getMimeType($path) {
+		if($this->isReadable($path)) {
 			return OC_Helper::getMimeType($this->datadir.$path);
 		}else{
 			return false;
@@ -142,46 +142,46 @@ class OC_Filestorage_Local extends OC_Filestorage_Common{
 		if (!is_dir($dir) || is_link($dir)) return unlink($dir);
 		foreach (scandir($dir) as $item) {
 			if ($item == '.' || $item == '..') continue;
-			if(is_file($dir.'/'.$item)){
-				if(unlink($dir.'/'.$item)){
+			if(is_file($dir.'/'.$item)) {
+				if(unlink($dir.'/'.$item)) {
 				}
-			}elseif(is_dir($dir.'/'.$item)){
-				if (!$this->delTree($dirRelative. "/" . $item)){
+			}elseif(is_dir($dir.'/'.$item)) {
+				if (!$this->delTree($dirRelative. "/" . $item)) {
 					return false;
 				};
 			}
 		}
-		if($return=rmdir($dir)){
+		if($return=rmdir($dir)) {
 		}
 		return $return;
 	}
 
-	public function hash($path,$type,$raw=false){
+	public function hash($path,$type,$raw=false) {
 		return hash_file($type,$this->datadir.$path,$raw);
 	}
 
-	public function free_space($path){
-		return disk_free_space($this->datadir.$path);
+	public function free_space($path) {
+		return @disk_free_space($this->datadir.$path);
 	}
 
-	public function search($query){
+	public function search($query) {
 		return $this->searchInDir($query);
 	}
-	public function getLocalFile($path){
+	public function getLocalFile($path) {
 		return $this->datadir.$path;
 	}
-	public function getLocalFolder($path){
+	public function getLocalFolder($path) {
 		return $this->datadir.$path;
 	}
 
-	protected function searchInDir($query,$dir=''){
+	protected function searchInDir($query,$dir='') {
 		$files=array();
 		foreach (scandir($this->datadir.$dir) as $item) {
 			if ($item == '.' || $item == '..') continue;
-			if(strstr(strtolower($item),strtolower($query))!==false){
+			if(strstr(strtolower($item),strtolower($query))!==false) {
 				$files[]=$dir.'/'.$item;
 			}
-			if(is_dir($this->datadir.$dir.'/'.$item)){
+			if(is_dir($this->datadir.$dir.'/'.$item)) {
 				$files=array_merge($files,$this->searchInDir($query,$dir.'/'.$item));
 			}
 		}
@@ -193,7 +193,7 @@ class OC_Filestorage_Local extends OC_Filestorage_Common{
 	 * @param int $time
 	 * @return bool
 	 */
-	public function hasUpdated($path,$time){
+	public function hasUpdated($path,$time) {
 		return $this->filemtime($path)>$time;
 	}
 }
diff --git a/lib/filestorage/temporary.php b/lib/filestorage/temporary.php
index 8f2373c8e95fe80654a41e65e0d8305f9045d2e1..876ba045a6389ad61d832cf1779b17db967dad84 100644
--- a/lib/filestorage/temporary.php
+++ b/lib/filestorage/temporary.php
@@ -3,15 +3,15 @@
  * local storage backnd in temporary folder for testing purpores
  */
 class OC_Filestorage_Temporary extends OC_Filestorage_Local{
-	public function __construct($arguments){
+	public function __construct($arguments) {
 		$this->datadir=OC_Helper::tmpFolder();
 	}
 
-	public function cleanUp(){
+	public function cleanUp() {
 		OC_Helper::rmdirr($this->datadir);
 	}
 
-	public function __destruct(){
+	public function __destruct() {
 		$this->cleanUp();
 	}
 }
diff --git a/lib/filesystem.php b/lib/filesystem.php
index fbb0290045629c61e324fa788e18c3cf332aa931..92eb4fa4778c9e3d81c66df7863ed4742afb9a18 100644
--- a/lib/filesystem.php
+++ b/lib/filesystem.php
@@ -3,22 +3,22 @@
 /**
 * ownCloud
 *
-* @author Frank Karlitschek 
-* @copyright 2012 Frank Karlitschek frank@owncloud.org 
-* 
+* @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 
+* 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 
+*
+* 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/>.
-* 
+*
 */
 
 
@@ -146,22 +146,22 @@ class OC_Filesystem{
 	 * @param string path
 	  * @return string
 	 */
-	static public function getMountPoint($path){
+	static public function getMountPoint($path) {
 		OC_Hook::emit(self::CLASSNAME,'get_mountpoint',array('path'=>$path));
-		if(!$path){
+		if(!$path) {
 			$path='/';
 		}
-		if($path[0]!=='/'){
+		if($path[0]!=='/') {
 			$path='/'.$path;
 		}
 		$path=str_replace('//', '/',$path);
 		$foundMountPoint='';
 		$mountPoints=array_keys(OC_Filesystem::$mounts);
-		foreach($mountPoints as $mountpoint){
-			if($mountpoint==$path){
+		foreach($mountPoints as $mountpoint) {
+			if($mountpoint==$path) {
 				return $mountpoint;
 			}
-			if(strpos($path,$mountpoint)===0 and strlen($mountpoint)>strlen($foundMountPoint)){
+			if(strpos($path,$mountpoint)===0 and strlen($mountpoint)>strlen($foundMountPoint)) {
 				$foundMountPoint=$mountpoint;
 			}
 		}
@@ -173,7 +173,7 @@ class OC_Filesystem{
 	* @param  string  path
 	* @return bool
 	*/
-	static public function getInternalPath($path){
+	static public function getInternalPath($path) {
 		$mountPoint=self::getMountPoint($path);
 		$internalPath=substr($path,strlen($mountPoint));
 		return $internalPath;
@@ -183,38 +183,38 @@ class OC_Filesystem{
 	* @param string path
 	* @return OC_Filestorage
 	*/
-	static public function getStorage($path){
+	static public function getStorage($path) {
 		$mountpoint=self::getMountPoint($path);
-		if($mountpoint){
-			if(!isset(OC_Filesystem::$storages[$mountpoint])){
+		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 public function init($root){
-		if(self::$defaultInstance){
+
+	static public function init($root) {
+		if(self::$defaultInstance) {
 			return false;
 		}
 		self::$defaultInstance=new OC_FilesystemView($root);
 
 		//load custom mount config
-		if(is_file(OC::$SERVERROOT.'/config/mount.php')){
+		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){
+			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(OC_User::getUser(),$group)){
-						foreach($mounts as $mountPoint=>$options){
+			if(isset($mountConfig['group'])) {
+				foreach($mountConfig['group'] as $group=>$mounts) {
+					if(OC_Group::inGroup(OC_User::getUser(),$group)) {
+						foreach($mounts as $mountPoint=>$options) {
 							$mountPoint=self::setUserVars($mountPoint);
-							foreach($options as &$option){
+							foreach($options as &$option) {
 								$option=self::setUserVars($option);
 							}
 							self::mount($options['class'],$options['options'],$mountPoint);
@@ -223,12 +223,12 @@ class OC_Filesystem{
 				}
 			}
 
-			if(isset($mountConfig['user'])){
-				foreach($mountConfig['user'] as $user=>$mounts){
-					if($user==='all' or strtolower($user)===strtolower(OC_User::getUser())){
-						foreach($mounts as $mountPoint=>$options){
+			if(isset($mountConfig['user'])) {
+				foreach($mountConfig['user'] as $user=>$mounts) {
+					if($user==='all' or strtolower($user)===strtolower(OC_User::getUser())) {
+						foreach($mounts as $mountPoint=>$options) {
 							$mountPoint=self::setUserVars($mountPoint);
-							foreach($options as &$option){
+							foreach($options as &$option) {
 								$option=self::setUserVars($option);
 							}
 							self::mount($options['class'],$options['options'],$mountPoint);
@@ -236,8 +236,15 @@ class OC_Filesystem{
 					}
 				}
 			}
+
+			$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::clear();
+				OC_Appconfig::setValue('files','mountconfigmtime',$mtime);
+			}
 		}
-		
+
 		self::$loaded=true;
 	}
 
@@ -246,7 +253,7 @@ class OC_Filesystem{
 	 * @param string intput
 	 * @return string
 	 */
-	private static function setUserVars($input){
+	private static function setUserVars($input) {
 		return str_replace('$user',OC_User::getUser(),$input);
 	}
 
@@ -254,25 +261,25 @@ class OC_Filesystem{
 	 * get the default filesystem view
 	 * @return OC_FilesystemView
 	 */
-	static public function getView(){
+	static public function getView() {
 		return self::$defaultInstance;
 	}
-	
+
 	/**
 	 * tear down the filesystem, removing all storage providers
 	 */
-	static public function tearDown(){
+	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)){
+	static private function createStorage($class,$arguments) {
+		if(class_exists($class)) {
 			try {
 				return new $class($arguments);
 			} catch (Exception $exception) {
@@ -284,13 +291,13 @@ class OC_Filesystem{
 			return false;
 		}
 	}
-	
+
 	/**
 	* change the root to a fake root
 	* @param  string  fakeRoot
 	* @return bool
 	*/
-	static public function chroot($fakeRoot){
+	static public function chroot($fakeRoot) {
 		return self::$defaultInstance->chroot($fakeRoot);
 	}
 
@@ -300,14 +307,14 @@ class OC_Filesystem{
 	 *
 	 * Returns path like /admin/files
 	 */
-	static public function getRoot(){
+	static public function getRoot() {
 		return self::$defaultInstance->getRoot();
 	}
 
 	/**
 	 * clear all mounts and storage backends
 	 */
-	public static function clearMounts(){
+	public static function clearMounts() {
 		self::$mounts=array();
 		self::$storages=array();
 	}
@@ -317,33 +324,33 @@ class OC_Filesystem{
 	* @param OC_Filestorage storage
 	* @param string mountpoint
 	*/
-	static public function mount($class,$arguments,$mountpoint){
-		if($mountpoint[0]!='/'){
+	static public function mount($class,$arguments,$mountpoint) {
+		if($mountpoint[0]!='/') {
 			$mountpoint='/'.$mountpoint;
 		}
-		if(substr($mountpoint,-1)!=='/'){
+		if(substr($mountpoint,-1)!=='/') {
 			$mountpoint=$mountpoint.'/';
 		}
 		self::$mounts[$mountpoint]=array('class'=>$class,'arguments'=>$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){
+	static public function getLocalFile($path) {
 		return self::$defaultInstance->getLocalFile($path);
 	}
 	/**
 	 * @param string path
 	 * @return string
 	 */
-	static public function getLocalFolder($path){
+	static public function getLocalFolder($path) {
 		return self::$defaultInstance->getLocalFolder($path);
 	}
-	
+
 	/**
 	* return path to file which reflects one visible in browser
 	* @param string path
@@ -357,28 +364,28 @@ class OC_Filesystem{
 		}
 		return $newpath;
 	}
-	
+
 	/**
 	 * check if the requested path is valid
 	 * @param string path
 	 * @return bool
 	 */
-	static public function isValidPath($path){
-		if(!$path || $path[0]!=='/'){
+	static public function isValidPath($path) {
+		if(!$path || $path[0]!=='/') {
 			$path='/'.$path;
 		}
-		if(strstr($path,'/../') || strrchr($path, '/') === '/..' ){
+		if(strstr($path,'/../') || strrchr($path, '/') === '/..' ) {
 			return false;
 		}
 		return true;
 	}
-	
+
 	/**
 	 * checks if a file is blacklsited for storage in the filesystem
 	 * Listens to write and rename hooks
 	 * @param array $data from hook
 	 */
-	static public function isBlacklisted($data){
+	static public function isBlacklisted($data) {
 		$blacklist = array('.htaccess');
 		if (isset($data['path'])) {
 			$path = $data['path'];
@@ -392,50 +399,50 @@ class OC_Filesystem{
 			}
 		}
 	}
-	
+
 	/**
 	 * following functions are equivilent to their php buildin equivilents for arguments/return values.
 	 */
-	static public function mkdir($path){
+	static public function mkdir($path) {
 		return self::$defaultInstance->mkdir($path);
 	}
-	static public function rmdir($path){
+	static public function rmdir($path) {
 		return self::$defaultInstance->rmdir($path);
 	}
-	static public function opendir($path){
+	static public function opendir($path) {
 		return self::$defaultInstance->opendir($path);
 	}
-	static public function readdir($path){
+	static public function readdir($path) {
 		return self::$defaultInstance->readdir($path);
 	}
-	static public function is_dir($path){
+	static public function is_dir($path) {
 		return self::$defaultInstance->is_dir($path);
 	}
-	static public function is_file($path){
+	static public function is_file($path) {
 		return self::$defaultInstance->is_file($path);
 	}
-	static public function stat($path){
+	static public function stat($path) {
 		return self::$defaultInstance->stat($path);
 	}
-	static public function filetype($path){
+	static public function filetype($path) {
 		return self::$defaultInstance->filetype($path);
 	}
-	static public function filesize($path){
+	static public function filesize($path) {
 		return self::$defaultInstance->filesize($path);
 	}
-	static public function readfile($path){
+	static public function readfile($path) {
 		return self::$defaultInstance->readfile($path);
 	}
 	/**
 	* @deprecated Replaced by isReadable() as part of CRUDS
 	*/
-	static public function is_readable($path){
+	static public function is_readable($path) {
 		return self::$defaultInstance->is_readable($path);
 	}
 	/**
 	* @deprecated Replaced by isCreatable(), isUpdatable(), isDeletable() as part of CRUDS
 	*/
-	static public function is_writable($path){
+	static public function is_writable($path) {
 		return self::$defaultInstance->is_writable($path);
 	}
 	static public function isCreatable($path) {
@@ -453,55 +460,55 @@ class OC_Filesystem{
 	static public function isSharable($path) {
 		return self::$defaultInstance->isSharable($path);
 	}
-	static public function file_exists($path){
+	static public function file_exists($path) {
 		return self::$defaultInstance->file_exists($path);
 	}
-	static public function filectime($path){
+	static public function filectime($path) {
 		return self::$defaultInstance->filectime($path);
 	}
-	static public function filemtime($path){
+	static public function filemtime($path) {
 		return self::$defaultInstance->filemtime($path);
 	}
-	static public function touch($path, $mtime=null){
+	static public function touch($path, $mtime=null) {
 		return self::$defaultInstance->touch($path, $mtime);
 	}
-	static public function file_get_contents($path){
+	static public function file_get_contents($path) {
 		return self::$defaultInstance->file_get_contents($path);
 	}
-	static public function file_put_contents($path,$data){
+	static public function file_put_contents($path,$data) {
 		return self::$defaultInstance->file_put_contents($path,$data);
 	}
-	static public function unlink($path){
+	static public function unlink($path) {
 		return self::$defaultInstance->unlink($path);
 	}
-	static public function rename($path1,$path2){
+	static public function rename($path1,$path2) {
 		return self::$defaultInstance->rename($path1,$path2);
 	}
-	static public function copy($path1,$path2){
+	static public function copy($path1,$path2) {
 		return self::$defaultInstance->copy($path1,$path2);
 	}
-	static public function fopen($path,$mode){
+	static public function fopen($path,$mode) {
 		return self::$defaultInstance->fopen($path,$mode);
 	}
-	static public function toTmpFile($path){
+	static public function toTmpFile($path) {
 		return self::$defaultInstance->toTmpFile($path);
 	}
-	static public function fromTmpFile($tmpFile,$path){
+	static public function fromTmpFile($tmpFile,$path) {
 		return self::$defaultInstance->fromTmpFile($tmpFile,$path);
 	}
 
-	static public function getMimeType($path){
+	static public function getMimeType($path) {
 		return self::$defaultInstance->getMimeType($path);
 	}
-	static public function hash($type,$path, $raw = false){
+	static public function hash($type,$path, $raw = false) {
 		return self::$defaultInstance->hash($type,$path, $raw);
 	}
-	
-	static public function free_space($path='/'){
+
+	static public function free_space($path='/') {
 		return self::$defaultInstance->free_space($path);
 	}
-	
-	static public function search($query){
+
+	static public function search($query) {
 		return OC_FileCache::search($query);
 	}
 
@@ -510,7 +517,7 @@ class OC_Filesystem{
 	 * @param int $time
 	 * @return bool
 	 */
-	static public function hasUpdated($path,$time){
+	static public function hasUpdated($path,$time) {
 		return self::$defaultInstance->hasUpdated($path,$time);
 	}
 
@@ -529,26 +536,26 @@ class OC_Filesystem{
 	 * @param bool $stripTrailingSlash
 	 * @return string
 	 */
-	public static function normalizePath($path,$stripTrailingSlash=true){
-		if($path==''){
+	public static function normalizePath($path,$stripTrailingSlash=true) {
+		if($path=='') {
 			return '/';
 		}
 		//no windows style slashes
 		$path=str_replace('\\','/',$path);
 		//add leading slash
-		if($path[0]!=='/'){
+		if($path[0]!=='/') {
 			$path='/'.$path;
 		}
 		//remove trainling slash
-		if($stripTrailingSlash and strlen($path)>1 and substr($path,-1,1)==='/'){
+		if($stripTrailingSlash and strlen($path)>1 and substr($path,-1,1)==='/') {
 			$path=substr($path,0,-1);
 		}
 		//remove duplicate slashes
-		while(strpos($path,'//')!==false){
+		while(strpos($path,'//')!==false) {
 			$path=str_replace('//','/',$path);
 		}
 		//normalize unicode if possible
-		if(class_exists('Normalizer')){
+		if(class_exists('Normalizer')) {
 			$path=Normalizer::normalize($path);
 		}
 		return $path;
@@ -559,4 +566,4 @@ 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');
+require_once 'filecache.php';
diff --git a/lib/filesystemview.php b/lib/filesystemview.php
index a888e5340ea49f6f7e6456532eb4c501a247688c..3a17af510cf5c2ea212599cd283cdd4f18604c3f 100644
--- a/lib/filesystemview.php
+++ b/lib/filesystemview.php
@@ -48,22 +48,22 @@ class OC_FilesystemView {
 	}
 
 	public function getAbsolutePath($path) {
-		if(!$path){
+		if(!$path) {
 			$path='/';
 		}
-		if($path[0]!=='/'){
+		if($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=='') {
 			if($fakeRoot[0]!=='/') {
 				$fakeRoot='/'.$fakeRoot;
 			}
@@ -104,7 +104,7 @@ class OC_FilesystemView {
 			return null;
 		}else{
 			$path=substr($path, strlen($this->fakeRoot));
-			if(strlen($path)===0){
+			if(strlen($path)===0) {
 				return '/';
 			}else{
 				return $path;
@@ -177,13 +177,13 @@ class OC_FilesystemView {
 		return $fsLocal->readdir( $handle );
 	}
 	public function is_dir($path) {
-		if($path=='/'){
+		if($path=='/') {
 			return true;
 		}
 		return $this->basicOperation('is_dir', $path);
 	}
 	public function is_file($path) {
-		if($path=='/'){
+		if($path=='/') {
 			return false;
 		}
 		return $this->basicOperation('is_file', $path);
@@ -214,13 +214,13 @@ class OC_FilesystemView {
 	/**
 	* @deprecated Replaced by isReadable() as part of CRUDS
 	*/
-	public function is_readable($path){
+	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){
+	public function is_writable($path) {
 		return $this->basicOperation('isUpdatable',$path);
 	}
 	public function isCreatable($path) {
@@ -239,7 +239,7 @@ class OC_FilesystemView {
 		return $this->basicOperation('isSharable', $path);
 	}
 	public function file_exists($path) {
-		if($path=='/'){
+		if($path=='/') {
 			return true;
 		}
 		return $this->basicOperation('file_exists', $path);
@@ -295,12 +295,12 @@ class OC_FilesystemView {
 							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{
@@ -325,7 +325,7 @@ class OC_FilesystemView {
 		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;
 			}
@@ -352,7 +352,7 @@ class OC_FilesystemView {
 					$storage1 = $this->getStorage($path1);
 					$storage1->unlink($this->getInternalPath($path1.$postFix1));
 					$result = $count>0;
-				} 
+				}
 				OC_Hook::emit(
 					OC_Filesystem::CLASSNAME,
 					OC_Filesystem::signal_post_rename,
@@ -373,7 +373,7 @@ class OC_FilesystemView {
 		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;
 			}
@@ -411,7 +411,7 @@ class OC_FilesystemView {
 			if($run) {
 				$mp1=$this->getMountPoint($path1.$postFix1);
 				$mp2=$this->getMountPoint($path2.$postFix2);
-				if($mp1 == $mp2){
+				if($mp1 == $mp2) {
 					if($storage = $this->getStorage($path1.$postFix1)) {
 						$result=$storage->copy($this->getInternalPath($path1.$postFix1), $this->getInternalPath($path2.$postFix2));
 					}
@@ -579,7 +579,7 @@ class OC_FilesystemView {
 		return null;
 	}
 
-	private function runHooks($hooks,$path,$post=false){
+	private function runHooks($hooks,$path,$post=false) {
 		$prefix=($post)?'post_':'';
 		$run=true;
 		if(OC_Filesystem::$loaded and $this->fakeRoot==OC_Filesystem::getRoot()) {
diff --git a/lib/geo.php b/lib/geo.php
index a967ab28a96edc3a54b9caa3914d15e31091190e..4eb785da35556e9e3af01c6438a60326babd6db9 100644
--- a/lib/geo.php
+++ b/lib/geo.php
@@ -12,11 +12,11 @@ class OC_Geo{
 	 * @param (string) $longitude - Longitude
 	 * @return (string) $timezone - closest timezone
 	 */
-	public static function timezone($latitude, $longitude){	
+	public static function timezone($latitude, $longitude) {
 		$alltimezones = DateTimeZone::listIdentifiers();
 		$variances = array();
 		//calculate for all timezones the system know
-		foreach($alltimezones as $timezone){
+		foreach($alltimezones as $timezone) {
 			$datetimezoneobj = new DateTimeZone($timezone);
 			$locationinformations = $datetimezoneobj->getLocation();
 			$latitudeoftimezone = $locationinformations['latitude'];
diff --git a/lib/group.php b/lib/group.php
index 72cf5dc89afe9727b64c3f52a2b208d2578c7614..b56a4ad456c16069c8f2ac5f628733207af8c395 100644
--- a/lib/group.php
+++ b/lib/group.php
@@ -42,8 +42,8 @@ class OC_Group {
 	 * @param  string  $backend  The backend to use for user managment
 	 * @returns true/false
 	 */
-	public static function useBackend( $backend ){
-		if($backend instanceof OC_Group_Interface){
+	public static function useBackend( $backend ) {
+		if($backend instanceof OC_Group_Interface) {
 			self::$_usedBackends[]=$backend;
 		}
 	}
@@ -51,7 +51,7 @@ class OC_Group {
 	/**
 	 * remove all used backends
 	 */
-	public static function clearBackends(){
+	public static function clearBackends() {
 		self::$_usedBackends=array();
 	}
 
@@ -65,27 +65,27 @@ class OC_Group {
 	 *
 	 * Allowed characters in the username are: "a-z", "A-Z", "0-9" and "_.@-"
 	 */
-	public static function createGroup( $gid ){
+	public static function createGroup( $gid ) {
 		// Check the name for bad characters
 		// Allowed are: "a-z", "A-Z", "0-9" and "_.@-"
-		if( preg_match( '/[^a-zA-Z0-9 _\.@\-]/', $gid )){
+		if( preg_match( '/[^a-zA-Z0-9 _\.@\-]/', $gid )) {
 			return false;
 		}
 		// No empty group names!
-		if( !$gid ){
+		if( !$gid ) {
 			return false;
 		}
 		// No duplicate group names
-		if( in_array( $gid, self::getGroups())){
+		if( in_array( $gid, self::getGroups())) {
 			return false;
 		}
 
 		$run = true;
 		OC_Hook::emit( "OC_Group", "pre_createGroup", array( "run" => &$run, "gid" => $gid ));
 
-		if($run){
+		if($run) {
 			//create the group in the first backend that supports creating groups
-			foreach(self::$_usedBackends as $backend){
+			foreach(self::$_usedBackends as $backend) {
 				if(!$backend->implementsActions(OC_GROUP_BACKEND_CREATE_GROUP))
 					continue;
 
@@ -106,18 +106,18 @@ class OC_Group {
 	 *
 	 * Deletes a group and removes it from the group_user-table
 	 */
-	public static function deleteGroup( $gid ){
+	public static function deleteGroup( $gid ) {
 		// Prevent users from deleting group admin
-		if( $gid == "admin" ){
+		if( $gid == "admin" ) {
 			return false;
 		}
 
 		$run = true;
 		OC_Hook::emit( "OC_Group", "pre_deleteGroup", array( "run" => &$run, "gid" => $gid ));
 
-		if($run){
+		if($run) {
 			//delete the group from all backends
-			foreach(self::$_usedBackends as $backend){
+			foreach(self::$_usedBackends as $backend) {
 				if(!$backend->implementsActions(OC_GROUP_BACKEND_DELETE_GROUP))
 					continue;
 
@@ -139,9 +139,9 @@ class OC_Group {
 	 *
 	 * Checks whether the user is member of a group or not.
 	 */
-	public static function inGroup( $uid, $gid ){
-		foreach(self::$_usedBackends as $backend){
-			if($backend->inGroup($uid,$gid)){
+	public static function inGroup( $uid, $gid ) {
+		foreach(self::$_usedBackends as $backend) {
+			if($backend->inGroup($uid,$gid)) {
 				return true;
 			}
 		}
@@ -156,9 +156,9 @@ class OC_Group {
 	 *
 	 * Adds a user to a group.
 	 */
-	public static function addToGroup( $uid, $gid ){
+	public static function addToGroup( $uid, $gid ) {
 		// Does the group exist?
-		if( !OC_Group::groupExists($gid)){
+		if( !OC_Group::groupExists($gid)) {
 			return false;
 		}
 
@@ -166,19 +166,19 @@ class OC_Group {
 		$run = true;
 		OC_Hook::emit( "OC_Group", "pre_addToGroup", array( "run" => &$run, "uid" => $uid, "gid" => $gid ));
 
-		if($run){
+		if($run) {
 			$succes=false;
 
 			//add the user to the all backends that have the group
-			foreach(self::$_usedBackends as $backend){
+			foreach(self::$_usedBackends as $backend) {
 				if(!$backend->implementsActions(OC_GROUP_BACKEND_ADD_TO_GROUP))
 					continue;
 
-				if($backend->groupExists($gid)){
+				if($backend->groupExists($gid)) {
 					$succes|=$backend->addToGroup($uid, $gid);
 				}
 			}
-			if($succes){
+			if($succes) {
 				OC_Hook::emit( "OC_User", "post_addToGroup", array( "uid" => $uid, "gid" => $gid ));
 			}
 			return $succes;
@@ -195,13 +195,13 @@ class OC_Group {
 	 *
 	 * removes the user from a group.
 	 */
-	public static function removeFromGroup( $uid, $gid ){
+	public static function removeFromGroup( $uid, $gid ) {
 		$run = true;
 		OC_Hook::emit( "OC_Group", "pre_removeFromGroup", array( "run" => &$run, "uid" => $uid, "gid" => $gid ));
 
-		if($run){
+		if($run) {
 			//remove the user from the all backends that have the group
-			foreach(self::$_usedBackends as $backend){
+			foreach(self::$_usedBackends as $backend) {
 				if(!$backend->implementsActions(OC_GROUP_BACKEND_REMOVE_FROM_GOUP))
 					continue;
 
@@ -222,9 +222,9 @@ class OC_Group {
 	 * This function fetches all groups a user belongs to. It does not check
 	 * if the user exists at all.
 	 */
-	public static function getUserGroups( $uid ){
+	public static function getUserGroups( $uid ) {
 		$groups=array();
-		foreach(self::$_usedBackends as $backend){
+		foreach(self::$_usedBackends as $backend) {
 			$groups=array_merge($backend->getUserGroups($uid),$groups);
 		}
 		asort($groups);
@@ -251,9 +251,9 @@ class OC_Group {
 	 * @param string $gid
 	 * @return bool
 	 */
-	public static function groupExists($gid){
-		foreach(self::$_usedBackends as $backend){
-			if ($backend->groupExists($gid)){
+	public static function groupExists($gid) {
+		foreach(self::$_usedBackends as $backend) {
+			if ($backend->groupExists($gid)) {
 				return true;
 			}
 		}
@@ -266,12 +266,12 @@ class OC_Group {
 	 */
 	public static function usersInGroup($gid, $search = '', $limit = -1, $offset = 0) {
 		$users=array();
-		foreach(self::$_usedBackends as $backend){
+		foreach(self::$_usedBackends as $backend) {
 			$users = array_merge($backend->usersInGroup($gid, $search, $limit, $offset), $users);
 		}
 		return $users;
 	}
-	
+
 	/**
 	 * @brief get a list of all users in several groups
 	 * @param array $gids
diff --git a/lib/group/backend.php b/lib/group/backend.php
index 5969986c65218996b715dabc297fd6cdb23a2875..1ba34c940cfff09b7d054d7ec2ef5339c7d24371 100644
--- a/lib/group/backend.php
+++ b/lib/group/backend.php
@@ -52,9 +52,9 @@ abstract class OC_Group_Backend implements OC_Group_Interface {
 	* Returns the supported actions as int to be
 	* compared with OC_USER_BACKEND_CREATE_USER etc.
 	*/
-	public function getSupportedActions(){
+	public function getSupportedActions() {
 		$actions = 0;
-		foreach($this->possibleActions AS $action => $methodName){
+		foreach($this->possibleActions AS $action => $methodName) {
 			if(method_exists($this, $methodName)) {
 				$actions |= $action;
 			}
@@ -71,7 +71,7 @@ abstract class OC_Group_Backend implements OC_Group_Interface {
 	* Returns the supported actions as int to be
 	* compared with OC_GROUP_BACKEND_CREATE_GROUP etc.
 	*/
-	public function implementsActions($actions){
+	public function implementsActions($actions) {
 		return (bool)($this->getSupportedActions() & $actions);
 	}
 
@@ -83,7 +83,7 @@ abstract class OC_Group_Backend implements OC_Group_Interface {
 	 *
 	 * Checks whether the user is member of a group or not.
 	 */
-	public function inGroup($uid, $gid){
+	public function inGroup($uid, $gid) {
 		return in_array($gid, $this->getUserGroups($uid));
 	}
 
@@ -95,7 +95,7 @@ abstract class OC_Group_Backend implements OC_Group_Interface {
 	 * This function fetches all groups a user belongs to. It does not check
 	 * if the user exists at all.
 	 */
-	public function getUserGroups($uid){
+	public function getUserGroups($uid) {
 		return array();
 	}
 
@@ -115,7 +115,7 @@ abstract class OC_Group_Backend implements OC_Group_Interface {
 	 * @param string $gid
 	 * @return bool
 	 */
-	public function groupExists($gid){
+	public function groupExists($gid) {
 		return in_array($gid, $this->getGroups($gid, 1));
 	}
 
diff --git a/lib/group/database.php b/lib/group/database.php
index 52608b2db73f87c7f113275fb4069ac3d16802a3..f3012563acf18561a8a8a593ffdc771596a339a2 100644
--- a/lib/group/database.php
+++ b/lib/group/database.php
@@ -50,12 +50,12 @@ class OC_Group_Database extends OC_Group_Backend {
 	 * Trys to create a new group. If the group name already exists, false will
 	 * be returned.
 	 */
-	public function createGroup( $gid ){
+	public function createGroup( $gid ) {
 		// Check for existence
 		$stmt = OC_DB::prepare( "SELECT `gid` FROM `*PREFIX*groups` WHERE `gid` = ?" );
 		$result = $stmt->execute( array( $gid ));
 
-		if( $result->fetchRow() ){
+		if( $result->fetchRow() ) {
 			// Can not add an existing group
 			return false;
 		}
@@ -75,7 +75,7 @@ class OC_Group_Database extends OC_Group_Backend {
 	 *
 	 * Deletes a group and removes it from the group_user-table
 	 */
-	public function deleteGroup( $gid ){
+	public function deleteGroup( $gid ) {
 		// Delete the group
 		$stmt = OC_DB::prepare( "DELETE FROM `*PREFIX*groups` WHERE `gid` = ?" );
 		$result = $stmt->execute( array( $gid ));
@@ -95,7 +95,7 @@ class OC_Group_Database extends OC_Group_Backend {
 	 *
 	 * Checks whether the user is member of a group or not.
 	 */
-	public function inGroup( $uid, $gid ){
+	public function inGroup( $uid, $gid ) {
 		// check
 		$stmt = OC_DB::prepare( "SELECT `uid` FROM `*PREFIX*group_user` WHERE `gid` = ? AND `uid` = ?" );
 		$result = $stmt->execute( array( $gid, $uid ));
@@ -111,9 +111,9 @@ class OC_Group_Database extends OC_Group_Backend {
 	 *
 	 * Adds a user to a group.
 	 */
-	public function addToGroup( $uid, $gid ){
+	public function addToGroup( $uid, $gid ) {
 		// No duplicate entries!
-		if( !$this->inGroup( $uid, $gid )){
+		if( !$this->inGroup( $uid, $gid )) {
 			$stmt = OC_DB::prepare( "INSERT INTO `*PREFIX*group_user` ( `uid`, `gid` ) VALUES( ?, ? )" );
 			$stmt->execute( array( $uid, $gid ));
 			return true;
@@ -130,7 +130,7 @@ class OC_Group_Database extends OC_Group_Backend {
 	 *
 	 * removes the user from a group.
 	 */
-	public function removeFromGroup( $uid, $gid ){
+	public function removeFromGroup( $uid, $gid ) {
 		$stmt = OC_DB::prepare( "DELETE FROM `*PREFIX*group_user` WHERE `uid` = ? AND `gid` = ?" );
 		$stmt->execute( array( $uid, $gid ));
 
@@ -145,13 +145,13 @@ class OC_Group_Database extends OC_Group_Backend {
 	 * This function fetches all groups a user belongs to. It does not check
 	 * if the user exists at all.
 	 */
-	public function getUserGroups( $uid ){
+	public function getUserGroups( $uid ) {
 		// No magic!
 		$stmt = OC_DB::prepare( "SELECT `gid` FROM `*PREFIX*group_user` WHERE `uid` = ?" );
 		$result = $stmt->execute( array( $uid ));
 
 		$groups = array();
-		while( $row = $result->fetchRow()){
+		while( $row = $result->fetchRow()) {
 			$groups[] = $row["gid"];
 		}
 
diff --git a/lib/group/dummy.php b/lib/group/dummy.php
index 51eca28f3f41f717facfe5f0d32d089a201263ab..8116dcbd6752f0e6282d135d827b4f7625181559 100644
--- a/lib/group/dummy.php
+++ b/lib/group/dummy.php
@@ -34,8 +34,8 @@ class OC_Group_Dummy extends OC_Group_Backend {
 	 * Trys to create a new group. If the group name already exists, false will
 	 * be returned.
 	 */
-	public function createGroup($gid){
-		if(!isset($this->groups[$gid])){
+	public function createGroup($gid) {
+		if(!isset($this->groups[$gid])) {
 			$this->groups[$gid]=array();
 			return true;
 		}else{
@@ -50,8 +50,8 @@ class OC_Group_Dummy extends OC_Group_Backend {
 	 *
 	 * Deletes a group and removes it from the group_user-table
 	 */
-	public function deleteGroup($gid){
-		if(isset($this->groups[$gid])){
+	public function deleteGroup($gid) {
+		if(isset($this->groups[$gid])) {
 			unset($this->groups[$gid]);
 			return true;
 		}else{
@@ -67,8 +67,8 @@ class OC_Group_Dummy extends OC_Group_Backend {
 	 *
 	 * Checks whether the user is member of a group or not.
 	 */
-	public function inGroup($uid, $gid){
-		if(isset($this->groups[$gid])){
+	public function inGroup($uid, $gid) {
+		if(isset($this->groups[$gid])) {
 			return (array_search($uid,$this->groups[$gid])!==false);
 		}else{
 			return false;
@@ -83,9 +83,9 @@ class OC_Group_Dummy extends OC_Group_Backend {
 	 *
 	 * Adds a user to a group.
 	 */
-	public function addToGroup($uid, $gid){
-		if(isset($this->groups[$gid])){
-			if(array_search($uid,$this->groups[$gid])===false){
+	public function addToGroup($uid, $gid) {
+		if(isset($this->groups[$gid])) {
+			if(array_search($uid,$this->groups[$gid])===false) {
 				$this->groups[$gid][]=$uid;
 				return true;
 			}else{
@@ -104,9 +104,9 @@ class OC_Group_Dummy extends OC_Group_Backend {
 	 *
 	 * removes the user from a group.
 	 */
-	public function removeFromGroup($uid,$gid){
-		if(isset($this->groups[$gid])){
-			if(($index=array_search($uid,$this->groups[$gid]))!==false){
+	public function removeFromGroup($uid,$gid) {
+		if(isset($this->groups[$gid])) {
+			if(($index=array_search($uid,$this->groups[$gid]))!==false) {
 				unset($this->groups[$gid][$index]);
 			}else{
 				return false;
@@ -124,11 +124,11 @@ class OC_Group_Dummy extends OC_Group_Backend {
 	 * This function fetches all groups a user belongs to. It does not check
 	 * if the user exists at all.
 	 */
-	public function getUserGroups($uid){
+	public function getUserGroups($uid) {
 		$groups=array();
 		$allGroups=array_keys($this->groups);
-		foreach($allGroups as $group){
-			if($this->inGroup($uid,$group)){
+		foreach($allGroups as $group) {
+			if($this->inGroup($uid,$group)) {
 				$groups[]=$group;
 			}
 		}
@@ -150,7 +150,7 @@ class OC_Group_Dummy extends OC_Group_Backend {
 	 * @returns array with user ids
 	 */
 	public function usersInGroup($gid, $search = '', $limit = -1, $offset = 0) {
-		if(isset($this->groups[$gid])){
+		if(isset($this->groups[$gid])) {
 			return $this->groups[$gid];
 		}else{
 			return array();
diff --git a/lib/helper.php b/lib/helper.php
index 3cf464dfa7bf617f97a5f4fdb6bea888b5f51863..70b2f78862b8de654a7fe9ac4bc23f557832d751 100644
--- a/lib/helper.php
+++ b/lib/helper.php
@@ -32,16 +32,17 @@ class OC_Helper {
 	 * @brief Creates an url
 	 * @param $app app
 	 * @param $file file
+	 * @param $args array with param=>value, will be appended to the returned url
 	 * @returns the url
 	 *
 	 * Returns a url to the given app and file.
 	 */
-	public static function linkTo( $app, $file ){
-		if( $app != '' ){
+	public static function linkTo( $app, $file, $args = array() ) {
+		if( $app != '' ) {
 			$app_path = OC_App::getAppPath($app);
 			// Check if the app is in the app folder
-			if( $app_path && file_exists( $app_path.'/'.$file )){
-				if(substr($file, -3) == 'php' || substr($file, -3) == 'css'){
+			if( $app_path && file_exists( $app_path.'/'.$file )) {
+				if(substr($file, -3) == 'php' || substr($file, -3) == 'css') {
 					$urlLinkTo =  OC::$WEBROOT . '/?app=' . $app;
 					$urlLinkTo .= ($file!='index.php')?'&getfile=' . urlencode($file):'';
 				}else{
@@ -53,7 +54,7 @@ class OC_Helper {
 			}
 		}
 		else{
-			if( file_exists( OC::$SERVERROOT . '/core/'. $file )){
+			if( file_exists( OC::$SERVERROOT . '/core/'. $file )) {
 				$urlLinkTo =  OC::$WEBROOT . '/core/'.$file;
 			}
 			else{
@@ -61,6 +62,10 @@ class OC_Helper {
 			}
 		}
 
+		foreach($args as $k => $v) {
+			$urlLinkTo .= '&'.$k.'='.$v;
+		}
+
 		return $urlLinkTo;
 	}
 
@@ -68,12 +73,13 @@ class OC_Helper {
 	 * @brief Creates an absolute url
 	 * @param $app app
 	 * @param $file file
+	 * @param $args array with param=>value, will be appended to the returned url
 	 * @returns the url
 	 *
 	 * Returns a absolute url to the given app and file.
 	 */
-	public static function linkToAbsolute( $app, $file ) {
-		$urlLinkTo = self::linkTo( $app, $file );
+	public static function linkToAbsolute( $app, $file, $args = array() ) {
+		$urlLinkTo = self::linkTo( $app, $file, $args );
 		return self::makeURLAbsolute($urlLinkTo);
 	}
 
@@ -119,22 +125,22 @@ class OC_Helper {
 	 *
 	 * Returns the path to the image.
 	 */
-	public static function imagePath( $app, $image ){
+	public static function imagePath( $app, $image ) {
 		// Read the selected theme from the config file
 		$theme=OC_Config::getValue( "theme" );
 
 		// Check if the app is in the app folder
-		if( file_exists( OC::$SERVERROOT."/themes/$theme/apps/$app/img/$image" )){
+		if( file_exists( OC::$SERVERROOT."/themes/$theme/apps/$app/img/$image" )) {
 			return OC::$WEBROOT."/themes/$theme/apps/$app/img/$image";
-		}elseif( file_exists(OC_App::getAppPath($app)."/img/$image" )){
+		}elseif( file_exists(OC_App::getAppPath($app)."/img/$image" )) {
 			return OC_App::getAppWebPath($app)."/img/$image";
-		}elseif( !empty( $app ) and file_exists( OC::$SERVERROOT."/themes/$theme/$app/img/$image" )){
+		}elseif( !empty( $app ) and file_exists( OC::$SERVERROOT."/themes/$theme/$app/img/$image" )) {
 			return OC::$WEBROOT."/themes/$theme/$app/img/$image";
-		}elseif( !empty( $app ) and file_exists( OC::$SERVERROOT."/$app/img/$image" )){
+		}elseif( !empty( $app ) and file_exists( OC::$SERVERROOT."/$app/img/$image" )) {
 			return OC::$WEBROOT."/$app/img/$image";
-		}elseif( file_exists( OC::$SERVERROOT."/themes/$theme/core/img/$image" )){
+		}elseif( file_exists( OC::$SERVERROOT."/themes/$theme/core/img/$image" )) {
 			return OC::$WEBROOT."/themes/$theme/core/img/$image";
-		}elseif( file_exists( OC::$SERVERROOT."/core/img/$image" )){
+		}elseif( file_exists( OC::$SERVERROOT."/core/img/$image" )) {
 			return OC::$WEBROOT."/core/img/$image";
 		}else{
 			echo('image not found: image:'.$image.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT);
@@ -149,26 +155,26 @@ class OC_Helper {
 	 *
 	 * Returns the path to the image of this file type.
 	 */
-	public static function mimetypeIcon( $mimetype ){
+	public static function mimetypeIcon( $mimetype ) {
 		$alias=array('application/xml'=>'code/xml');
-		if(isset($alias[$mimetype])){
+		if(isset($alias[$mimetype])) {
 			$mimetype=$alias[$mimetype];
 		}
 		// Replace slash with a minus
 		$mimetype = str_replace( "/", "-", $mimetype );
 
 		// Is it a dir?
-		if( $mimetype == "dir" ){
+		if( $mimetype == "dir" ) {
 			return OC::$WEBROOT."/core/img/filetypes/folder.png";
 		}
 
 		// Icon exists?
-		if( file_exists( OC::$SERVERROOT."/core/img/filetypes/$mimetype.png" )){
+		if( file_exists( OC::$SERVERROOT."/core/img/filetypes/$mimetype.png" )) {
 			return OC::$WEBROOT."/core/img/filetypes/$mimetype.png";
 		}
 		//try only the first part of the filetype
 		$mimetype=substr($mimetype,0,strpos($mimetype,'-'));
-		if( file_exists( OC::$SERVERROOT."/core/img/filetypes/$mimetype.png" )){
+		if( file_exists( OC::$SERVERROOT."/core/img/filetypes/$mimetype.png" )) {
 			return OC::$WEBROOT."/core/img/filetypes/$mimetype.png";
 		}
 		else{
@@ -183,16 +189,16 @@ class OC_Helper {
 	 *
 	 * Makes 2048 to 2 kB.
 	 */
-	public static function humanFileSize( $bytes ){
-		if( $bytes < 1024 ){
+	public static function humanFileSize( $bytes ) {
+		if( $bytes < 1024 ) {
 			return "$bytes B";
 		}
 		$bytes = round( $bytes / 1024, 1 );
-		if( $bytes < 1024 ){
+		if( $bytes < 1024 ) {
 			return "$bytes kB";
 		}
 		$bytes = round( $bytes / 1024, 1 );
-		if( $bytes < 1024 ){
+		if( $bytes < 1024 ) {
 			return "$bytes MB";
 		}
 
@@ -210,7 +216,7 @@ class OC_Helper {
 	 *
 	 * Inspired by: http://www.php.net/manual/en/function.filesize.php#92418
 	 */
-	public static function computerFileSize( $str ){
+	public static function computerFileSize( $str ) {
 		$bytes = 0;
 		$str=strtolower($str);
 
@@ -274,17 +280,17 @@ class OC_Helper {
 	 *
 	 */
 	static function copyr($src, $dest) {
-		if(is_dir($src)){
-			if(!is_dir($dest)){
+		if(is_dir($src)) {
+			if(!is_dir($dest)) {
 				mkdir($dest);
 			}
 			$files = scandir($src);
-			foreach ($files as $file){
-				if ($file != "." && $file != ".."){
+			foreach ($files as $file) {
+				if ($file != "." && $file != "..") {
 					self::copyr("$src/$file", "$dest/$file");
 				}
 			}
-		}elseif(file_exists($src)){
+		}elseif(file_exists($src)) {
 			copy($src, $dest);
 		}
 	}
@@ -297,13 +303,13 @@ class OC_Helper {
 	static function rmdirr($dir) {
 		if(is_dir($dir)) {
 			$files=scandir($dir);
-			foreach($files as $file){
-				if ($file != "." && $file != ".."){
+			foreach($files as $file) {
+				if ($file != "." && $file != "..") {
 					self::rmdirr("$dir/$file");
 				}
 			}
 			rmdir($dir);
-		}elseif(file_exists($dir)){
+		}elseif(file_exists($dir)) {
 			unlink($dir);
 		}
 		if(file_exists($dir)) {
@@ -317,7 +323,7 @@ class OC_Helper {
 	 * @return string
 	 * does NOT work for ownClouds filesystem, use OC_FileSystem::getMimeType instead
 	 */
-	static function getMimeType($path){
+	static function getMimeType($path) {
 		$isWrapped=(strpos($path,'://')!==false) and (substr($path,0,7)=='file://');
 
 		if (@is_dir($path)) {
@@ -325,9 +331,9 @@ class OC_Helper {
 			return "httpd/unix-directory";
 		}
 
-		if(strpos($path,'.')){
+		if(strpos($path,'.')) {
 			//try to guess the type by the file extension
-			if(!self::$mimetypes || self::$mimetypes != include('mimetypes.list.php')){
+			if(!self::$mimetypes || self::$mimetypes != include('mimetypes.list.php')) {
 				self::$mimetypes=include('mimetypes.list.php');
 			}
 			$extension=strtolower(strrchr(basename($path), "."));
@@ -337,9 +343,9 @@ class OC_Helper {
 			$mimeType='application/octet-stream';
 		}
 
-		if($mimeType=='application/octet-stream' and function_exists('finfo_open') and function_exists('finfo_file') and $finfo=finfo_open(FILEINFO_MIME)){
+		if($mimeType=='application/octet-stream' and function_exists('finfo_open') and function_exists('finfo_file') and $finfo=finfo_open(FILEINFO_MIME)) {
 			$info = @strtolower(finfo_file($finfo,$path));
-			if($info){
+			if($info) {
 				$mimeType=substr($info,0,strpos($info,';'));
 			}
 			finfo_close($finfo);
@@ -373,8 +379,8 @@ class OC_Helper {
 	 * @param string data
 	 * @return string
 	 */
-	static function getStringMimeType($data){
-		if(function_exists('finfo_open') and function_exists('finfo_file')){
+	static function getStringMimeType($data) {
+		if(function_exists('finfo_open') and function_exists('finfo_file')) {
 			$finfo=finfo_open(FILEINFO_MIME);
 			return finfo_buffer($finfo, $data);
 		}else{
@@ -423,7 +429,7 @@ class OC_Helper {
 	* @param  string  optional search path, defaults to $PATH
 	* @return bool    true if executable program found in path
 	*/
-	public static function canExecute($name, $path = false){
+	public static function canExecute($name, $path = false) {
 		// path defaults to PATH from environment if not set
 		if ($path === false) {
 			$path = getenv("PATH");
@@ -467,12 +473,12 @@ class OC_Helper {
 	 * @param resource target
 	 * @return int the number of bytes copied
 	 */
-	public static function streamCopy($source,$target){
-		if(!$source or !$target){
+	public static function streamCopy($source,$target) {
+		if(!$source or !$target) {
 			return false;
 		}
 		$count=0;
-		while(!feof($source)){
+		while(!feof($source)) {
 			$count+=fwrite($target,fread($source,8192));
 		}
 		return $count;
@@ -485,7 +491,7 @@ class OC_Helper {
 	 *
 	 * temporary files are automatically cleaned up after the script is finished
 	 */
-	public static function tmpFile($postfix=''){
+	public static function tmpFile($postfix='') {
 		$file=get_temp_dir().'/'.md5(time().rand()).$postfix;
 		$fh=fopen($file,'w');
 		fclose($fh);
@@ -499,7 +505,7 @@ class OC_Helper {
 	 *
 	 * temporary files are automatically cleaned up after the script is finished
 	 */
-	public static function tmpFolder(){
+	public static function tmpFolder() {
 		$path=get_temp_dir().'/'.md5(time().rand());
 		mkdir($path);
 		self::$tmpFiles[]=$path;
@@ -509,9 +515,9 @@ class OC_Helper {
 	/**
 	 * remove all files created by self::tmpFile
 	 */
-	public static function cleanTmp(){
+	public static function cleanTmp() {
 		$leftoversFile=get_temp_dir().'/oc-not-deleted';
-		if(file_exists($leftoversFile)){
+		if(file_exists($leftoversFile)) {
 			$leftovers=file($leftoversFile);
 			foreach($leftovers as $file) {
 				self::rmdirr($file);
@@ -519,8 +525,8 @@ class OC_Helper {
 			unlink($leftoversFile);
 		}
 
-		foreach(self::$tmpFiles as $file){
-			if(file_exists($file)){
+		foreach(self::$tmpFiles as $file) {
+			if(file_exists($file)) {
 				if(!self::rmdirr($file)) {
 					file_put_contents($leftoversFile, $file."\n", FILE_APPEND);
 				}
@@ -535,8 +541,8 @@ class OC_Helper {
 	* @param $filename
 	* @return string
 	*/
-	public static function buildNotExistingFileName($path, $filename){
-		if($path==='/'){
+	public static function buildNotExistingFileName($path, $filename) {
+		if($path==='/') {
 			$path='';
 		}
 		if ($pos = strrpos($filename, '.')) {
@@ -565,21 +571,21 @@ class OC_Helper {
 	 * @param $parent
 	 * @return bool
 	 */
-	public static function issubdirectory($sub, $parent){
-		if($sub == null || $sub == '' || $parent == null || $parent == ''){
+	public static function issubdirectory($sub, $parent) {
+		if($sub == null || $sub == '' || $parent == null || $parent == '') {
 			return false;
 		}
 		$realpath_sub = realpath($sub);
 		$realpath_parent = realpath($parent);
-		if(($realpath_sub == false && substr_count($realpath_sub, './') != 0) || ($realpath_parent == false && substr_count($realpath_parent, './') != 0)){ //it checks for  both ./ and ../
+		if(($realpath_sub == false && substr_count($realpath_sub, './') != 0) || ($realpath_parent == false && substr_count($realpath_parent, './') != 0)) { //it checks for  both ./ and ../
 			return false;
 		}
-		if($realpath_sub && $realpath_sub != '' && $realpath_parent && $realpath_parent != ''){
-			if(substr($realpath_sub, 0, strlen($realpath_parent)) == $realpath_parent){
+		if($realpath_sub && $realpath_sub != '' && $realpath_parent && $realpath_parent != '') {
+			if(substr($realpath_sub, 0, strlen($realpath_parent)) == $realpath_parent) {
 				return true;
 			}
 		}else{
-			if(substr($sub, 0, strlen($parent)) == $parent){
+			if(substr($sub, 0, strlen($parent)) == $parent) {
 				return true;
 			}
 		}
@@ -604,7 +610,7 @@ class OC_Helper {
 	* based on http://www.php.net/manual/en/function.array-change-key-case.php#107715
 	*
 	*/
-	public static function mb_array_change_key_case($input, $case = MB_CASE_LOWER, $encoding = 'UTF-8'){
+	public static function mb_array_change_key_case($input, $case = MB_CASE_LOWER, $encoding = 'UTF-8') {
 		$case = ($case != MB_CASE_UPPER) ? MB_CASE_LOWER : MB_CASE_UPPER;
 		$ret = array();
 		foreach ($input as $k => $v) {
diff --git a/lib/hook.php b/lib/hook.php
index b53755310e064f71370f870e87ec872fa90bff06..1bf80f604f666a3034cd6a9669315c22edd2664d 100644
--- a/lib/hook.php
+++ b/lib/hook.php
@@ -19,12 +19,12 @@ class OC_Hook{
 	 *
 	 * TODO: write example
 	 */
-	static public function connect( $signalclass, $signalname, $slotclass, $slotname ){
+	static public function connect( $signalclass, $signalname, $slotclass, $slotname ) {
 		// Create the data structure
-		if( !array_key_exists( $signalclass, self::$registered )){
+		if( !array_key_exists( $signalclass, self::$registered )) {
 			self::$registered[$signalclass] = array();
 		}
-		if( !array_key_exists( $signalname, self::$registered[$signalclass] )){
+		if( !array_key_exists( $signalname, self::$registered[$signalclass] )) {
 			self::$registered[$signalclass][$signalname] = array();
 		}
 
@@ -48,17 +48,17 @@ class OC_Hook{
 	 *
 	 * TODO: write example
 	 */
-	static public function emit( $signalclass, $signalname, $params = array()){
+	static public function emit( $signalclass, $signalname, $params = array()) {
 		// Return false if there are no slots
-		if( !array_key_exists( $signalclass, self::$registered )){
+		if( !array_key_exists( $signalclass, self::$registered )) {
 			return false;
 		}
-		if( !array_key_exists( $signalname, self::$registered[$signalclass] )){
+		if( !array_key_exists( $signalname, self::$registered[$signalclass] )) {
 			return false;
 		}
 
 		// Call all slots
-		foreach( self::$registered[$signalclass][$signalname] as $i ){
+		foreach( self::$registered[$signalclass][$signalname] as $i ) {
 			call_user_func( array( $i["class"], $i["name"] ), $params );
 		}
 
@@ -71,9 +71,9 @@ class OC_Hook{
 	 * @param string signalclass
 	 * @param string signalname
 	 */
-	static public function clear($signalclass='', $signalname=''){
-		if($signalclass){
-			if($signalname){
+	static public function clear($signalclass='', $signalname='') {
+		if($signalclass) {
+			if($signalname) {
 				self::$registered[$signalclass][$signalname]=array();
 			}else{
 				self::$registered[$signalclass]=array();
@@ -83,4 +83,3 @@ class OC_Hook{
 		}
 	}
 }
- 
diff --git a/lib/image.php b/lib/image.php
index 90c64320a7c8fe59715963af77a1ffd5607b1d6f..861353e039dfd92201ffff3b94dcc1c32bf629fb 100644
--- a/lib/image.php
+++ b/lib/image.php
@@ -262,7 +262,7 @@ class OC_Image {
 	* @returns The orientation or -1 if no EXIF data is available.
 	*/
 	public function getOrientation() {
-		if(!is_callable('exif_read_data')){
+		if(!is_callable('exif_read_data')) {
 			OC_Log::write('core','OC_Image->fixOrientation() Exif module not enabled.', OC_Log::DEBUG);
 			return -1;
 		}
@@ -383,7 +383,7 @@ class OC_Image {
 	/**
 	* @brief Loads an image from an open file handle.
 	* It is the responsibility of the caller to position the pointer at the correct place and to close the handle again.
-	* @param $handle 
+	* @param $handle
 	* @returns An image resource or false on error
 	*/
 	public function loadFromFileHandle($handle) {
@@ -468,7 +468,7 @@ class OC_Image {
 				break;
 			*/
 			default:
-			
+
 				// this is mostly file created from encrypted file
 				$this->resource = imagecreatefromstring(\OC_Filesystem::file_get_contents(\OC_Filesystem::getLocalPath($imagepath)));
 				$itype = IMAGETYPE_PNG;
@@ -534,7 +534,7 @@ class OC_Image {
 		$width_orig=imageSX($this->resource);
 		$height_orig=imageSY($this->resource);
 		$ratio_orig = $width_orig/$height_orig;
-		
+
 		if ($ratio_orig > 1) {
 			$new_height = round($maxsize/$ratio_orig);
 			$new_width = $maxsize;
@@ -543,28 +543,14 @@ class OC_Image {
 			$new_height = $maxsize;
 		}
 
-		$process = imagecreatetruecolor(round($new_width), round($new_height));
-		if ($process == false) {
-			OC_Log::write('core',__METHOD__.'(): Error creating true color image',OC_Log::ERROR);
-			imagedestroy($process);
-			return false;
-		}
-
-		imagecopyresampled($process, $this->resource, 0, 0, 0, 0, $new_width, $new_height, $width_orig, $height_orig);
-		if ($process == false) {
-			OC_Log::write('core',__METHOD__.'(): Error resampling process image '.$new_width.'x'.$new_height,OC_Log::ERROR);
-			imagedestroy($process);
-			return false;
-		}
-		imagedestroy($this->resource);
-		$this->resource = $process;
+		$this->preciseResize(round($new_width), round($new_height));
 		return true;
 	}
 
 	public function preciseResize($width, $height) {
 		if (!$this->valid()) {
 			OC_Log::write('core',__METHOD__.'(): No image loaded', OC_Log::ERROR);
-			return false;			
+			return false;
 		}
 		$width_orig=imageSX($this->resource);
 		$height_orig=imageSY($this->resource);
@@ -612,7 +598,7 @@ class OC_Image {
 			$y = ($height_orig/2) - ($height/2);
 			$x = 0;
 		}
-		if($size>0){
+		if($size>0) {
 			$targetWidth=$size;
 			$targetHeight=$size;
 		}else{
@@ -666,14 +652,36 @@ class OC_Image {
 		return true;
 	}
 
-	public function destroy(){
-		if($this->valid()){
+	/**
+	 * @brief Resizes the image to fit within a boundry while preserving ratio.
+	 * @param $maxWidth
+	 * @param $maxHeight
+	 * @returns bool
+	 */
+	public function fitIn($maxWidth, $maxHeight) {
+		if(!$this->valid()) {
+			OC_Log::write('core',__METHOD__.'(): No image loaded', OC_Log::ERROR);
+			return false;
+		}
+		$width_orig=imageSX($this->resource);
+		$height_orig=imageSY($this->resource);
+		$ratio = $width_orig/$height_orig;
+
+		$newWidth = min($maxWidth, $ratio*$maxHeight);
+		$newHeight = min($maxHeight, $maxWidth/$ratio);
+		
+		$this->preciseResize(round($newWidth), round($newHeight));
+		return true;
+	}
+
+	public function destroy() {
+		if($this->valid()) {
 			imagedestroy($this->resource);
 		}
 		$this->resource=null;
 	}
 
-	public function __destruct(){
+	public function __destruct() {
 		$this->destroy();
 	}
 }
diff --git a/lib/installer.php b/lib/installer.php
index b8a3226aa0b26d16f83dfe9896c8cf0099bece61..9135c60fc056c7e4ace2c1be648f3897f33243e7 100644
--- a/lib/installer.php
+++ b/lib/installer.php
@@ -55,22 +55,22 @@ class OC_Installer{
 	 * It is the task of oc_app_install to create the tables and do whatever is
 	 * needed to get the app working.
 	 */
-	public static function installApp( $data = array()){
-		if(!isset($data['source'])){
+	public static function installApp( $data = array()) {
+		if(!isset($data['source'])) {
 			OC_Log::write('core','No source specified when installing app',OC_Log::ERROR);
 			return false;
 		}
 
 		//download the file if necesary
-		if($data['source']=='http'){
+		if($data['source']=='http') {
 			$path=OC_Helper::tmpFile();
-			if(!isset($data['href'])){
+			if(!isset($data['href'])) {
 				OC_Log::write('core','No href specified when installing app from http',OC_Log::ERROR);
 				return false;
 			}
 			copy($data['href'],$path);
 		}else{
-			if(!isset($data['path'])){
+			if(!isset($data['path'])) {
 				OC_Log::write('core','No path specified when installing app from local file',OC_Log::ERROR);
 				return false;
 			}
@@ -79,10 +79,10 @@ class OC_Installer{
 
 		//detect the archive type
 		$mime=OC_Helper::getMimeType($path);
-		if($mime=='application/zip'){
+		if($mime=='application/zip') {
 			rename($path,$path.'.zip');
 			$path.='.zip';
-		}elseif($mime=='application/x-gzip'){
+		}elseif($mime=='application/x-gzip') {
 			rename($path,$path.'.tgz');
 			$path.='.tgz';
 		}else{
@@ -94,40 +94,40 @@ class OC_Installer{
 		$extractDir=OC_Helper::tmpFolder();
 		OC_Helper::rmdirr($extractDir);
 		mkdir($extractDir);
-		if($archive=OC_Archive::open($path)){
+		if($archive=OC_Archive::open($path)) {
 			$archive->extract($extractDir);
 		} else {
 			OC_Log::write('core','Failed to open archive when installing app',OC_Log::ERROR);
 			OC_Helper::rmdirr($extractDir);
-			if($data['source']=='http'){
+			if($data['source']=='http') {
 				unlink($path);
 			}
 			return false;
 		}
 
 		//load the info.xml file of the app
-		if(!is_file($extractDir.'/appinfo/info.xml')){
+		if(!is_file($extractDir.'/appinfo/info.xml')) {
 			//try to find it in a subdir
 			$dh=opendir($extractDir);
-			while($folder=readdir($dh)){
-				if($folder[0]!='.' and is_dir($extractDir.'/'.$folder)){
-					if(is_file($extractDir.'/'.$folder.'/appinfo/info.xml')){
+			while($folder=readdir($dh)) {
+				if($folder[0]!='.' and is_dir($extractDir.'/'.$folder)) {
+					if(is_file($extractDir.'/'.$folder.'/appinfo/info.xml')) {
 						$extractDir.='/'.$folder;
 					}
 				}
 			}
 		}
-		if(!is_file($extractDir.'/appinfo/info.xml')){
+		if(!is_file($extractDir.'/appinfo/info.xml')) {
 			OC_Log::write('core','App does not provide an info.xml file',OC_Log::ERROR);
 			OC_Helper::rmdirr($extractDir);
-			if($data['source']=='http'){
+			if($data['source']=='http') {
 				unlink($path);
 			}
 			return false;
 		}
 		$info=OC_App::getAppInfo($extractDir.'/appinfo/info.xml',true);
 		// check the code for not allowed calls
-		if(!OC_Installer::checkCode($info['id'],$extractDir)){
+		if(!OC_Installer::checkCode($info['id'],$extractDir)) {
 			OC_Log::write('core','App can\'t be installed because of not allowed code in the App',OC_Log::ERROR);
 			OC_Helper::rmdirr($extractDir);
 			return false;
@@ -135,17 +135,17 @@ class OC_Installer{
 
 		// check if the app is compatible with this version of ownCloud
 		$version=OC_Util::getVersion();
-		if(!isset($info['require']) or ($version[0]>$info['require'])){
+		if(!isset($info['require']) or ($version[0]>$info['require'])) {
 			OC_Log::write('core','App can\'t be installed because it is not compatible with this version of ownCloud',OC_Log::ERROR);
 			OC_Helper::rmdirr($extractDir);
 			return false;
 		}
 
 		//check if an app with the same id is already installed
-		if(self::isInstalled( $info['id'] )){
+		if(self::isInstalled( $info['id'] )) {
 			OC_Log::write('core','App already installed',OC_Log::WARN);
 			OC_Helper::rmdirr($extractDir);
-			if($data['source']=='http'){
+			if($data['source']=='http') {
 				unlink($path);
 			}
 			return false;
@@ -153,24 +153,24 @@ class OC_Installer{
 
 		$basedir=OC_App::getInstallPath().'/'.$info['id'];
 		//check if the destination directory already exists
-		if(is_dir($basedir)){
+		if(is_dir($basedir)) {
 			OC_Log::write('core','App directory already exists',OC_Log::WARN);
 			OC_Helper::rmdirr($extractDir);
-			if($data['source']=='http'){
+			if($data['source']=='http') {
 				unlink($path);
 			}
 			return false;
 		}
 
-		if(isset($data['pretent']) and $data['pretent']==true){
+		if(isset($data['pretent']) and $data['pretent']==true) {
 			return false;
 		}
 
 		//copy the app to the correct place
-		if(@!mkdir($basedir)){
+		if(@!mkdir($basedir)) {
 			OC_Log::write('core','Can\'t create app folder. Please fix permissions. ('.$basedir.')',OC_Log::ERROR);
 			OC_Helper::rmdirr($extractDir);
-			if($data['source']=='http'){
+			if($data['source']=='http') {
 				unlink($path);
 			}
 			return false;
@@ -181,12 +181,12 @@ class OC_Installer{
 		OC_Helper::rmdirr($extractDir);
 
 		//install the database
-		if(is_file($basedir.'/appinfo/database.xml')){
+		if(is_file($basedir.'/appinfo/database.xml')) {
 			OC_DB::createDbFromStructure($basedir.'/appinfo/database.xml');
 		}
 
 		//run appinfo/install.php
-		if((!isset($data['noinstall']) or $data['noinstall']==false) and file_exists($basedir.'/appinfo/install.php')){
+		if((!isset($data['noinstall']) or $data['noinstall']==false) and file_exists($basedir.'/appinfo/install.php')) {
 			include($basedir.'/appinfo/install.php');
 		}
 
@@ -195,10 +195,10 @@ class OC_Installer{
 		OC_Appconfig::setValue($info['id'],'enabled','no');
 
 		//set remote/public handelers
-		foreach($info['remote'] as $name=>$path){
+		foreach($info['remote'] as $name=>$path) {
 			OCP\CONFIG::setAppValue('core', 'remote_'.$name, $info['id'].'/'.$path);
 		}
-		foreach($info['public'] as $name=>$path){
+		foreach($info['public'] as $name=>$path) {
 			OCP\CONFIG::setAppValue('core', 'public_'.$name, $info['id'].'/'.$path);
 		}
 
@@ -214,9 +214,9 @@ class OC_Installer{
 	 *
 	 * Checks whether or not an app is installed, i.e. registered in apps table.
 	 */
-	public static function isInstalled( $app ){
+	public static function isInstalled( $app ) {
 
-		if( null == OC_Appconfig::getValue( $app, "installed_version" )){
+		if( null == OC_Appconfig::getValue( $app, "installed_version" )) {
 			return false;
 		}
 
@@ -250,7 +250,7 @@ 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()){
+	public static function upgradeApp( $data = array()) {
 		// TODO: write function
 		return true;
 	}
@@ -275,7 +275,7 @@ class OC_Installer{
 	 * The function will not delete preferences, tables and the configuration,
 	 * this has to be done by the function oc_app_uninstall().
 	 */
-	public static function removeApp( $name, $options = array()){
+	public static function removeApp( $name, $options = array()) {
 		// TODO: write function
 		return true;
 	}
@@ -285,16 +285,16 @@ class OC_Installer{
 	 *
 	 * This function installs all apps found in the 'apps' directory that should be enabled by default;
 	 */
-	public static function installShippedApps(){
+	public static function installShippedApps() {
 		foreach(OC::$APPSROOTS as $app_dir) {
-			if($dir = opendir( $app_dir['path'] )){
-				while( false !== ( $filename = readdir( $dir ))){
-					if( substr( $filename, 0, 1 ) != '.' and is_dir($app_dir['path']."/$filename") ){
-						if( file_exists( $app_dir['path']."/$filename/appinfo/app.php" )){
-							if(!OC_Installer::isInstalled($filename)){
+			if($dir = opendir( $app_dir['path'] )) {
+				while( false !== ( $filename = readdir( $dir ))) {
+					if( substr( $filename, 0, 1 ) != '.' and is_dir($app_dir['path']."/$filename") ) {
+						if( file_exists( $app_dir['path']."/$filename/appinfo/app.php" )) {
+							if(!OC_Installer::isInstalled($filename)) {
 								$info=OC_App::getAppInfo($filename);
 								$enabled = isset($info['default_enable']);
-								if( $enabled ){
+								if( $enabled ) {
 									OC_Installer::installShippedApp($filename);
 									OC_Appconfig::setValue($filename,'enabled','yes');
 								}
@@ -312,24 +312,24 @@ class OC_Installer{
 	 * @param string $app id of the app to install
 	 * @returns array see OC_App::getAppInfo
 	 */
-	public static function installShippedApp($app){
+	public static function installShippedApp($app) {
 		//install the database
-		if(is_file(OC_App::getAppPath($app)."/appinfo/database.xml")){
+		if(is_file(OC_App::getAppPath($app)."/appinfo/database.xml")) {
 			OC_DB::createDbFromStructure(OC_App::getAppPath($app)."/appinfo/database.xml");
 		}
 
 		//run appinfo/install.php
-		if(is_file(OC_App::getAppPath($app)."/appinfo/install.php")){
+		if(is_file(OC_App::getAppPath($app)."/appinfo/install.php")) {
 			include(OC_App::getAppPath($app)."/appinfo/install.php");
 		}
 		$info=OC_App::getAppInfo($app);
 		OC_Appconfig::setValue($app,'installed_version',OC_App::getAppVersion($app));
 
 		//set remote/public handelers
-		foreach($info['remote'] as $name=>$path){
+		foreach($info['remote'] as $name=>$path) {
 			OCP\CONFIG::setAppValue('core', 'remote_'.$name, $app.'/'.$path);
 		}
-		foreach($info['public'] as $name=>$path){
+		foreach($info['public'] as $name=>$path) {
 			OCP\CONFIG::setAppValue('core', 'public_'.$name, $app.'/'.$path);
 		}
 
@@ -344,7 +344,7 @@ class OC_Installer{
 	 * @param string $folder the folder of the app to check
 	 * @returns true for app is o.k. and false for app is not o.k.
 	 */
-	public static function checkCode($appname,$folder){
+	public static function checkCode($appname,$folder) {
 
 		$blacklist=array(
 			'exec(',
@@ -355,7 +355,7 @@ class OC_Installer{
 		);
 
 		// is the code checker enabled?
-		if(OC_Config::getValue('appcodechecker', false)){
+		if(OC_Config::getValue('appcodechecker', false)) {
 
 			// check if grep is installed
 			$grep = exec('which grep');
diff --git a/lib/json.php b/lib/json.php
index 3d9d5c96fa3d954199bd811c4b50e16f872c0ab1..518c3c87c49932b660c0d69f3a3918e1389e4397 100644
--- a/lib/json.php
+++ b/lib/json.php
@@ -11,8 +11,8 @@ class OC_JSON{
 	/**
 	 * set Content-Type header to jsonrequest
 	 */
-	public static function setContentTypeHeader($type='application/json'){
-		if (!self::$send_content_type_header){
+	public static function setContentTypeHeader($type='application/json') {
+		if (!self::$send_content_type_header) {
 			// We send json data
 			header( 'Content-Type: '.$type );
 			self::$send_content_type_header = true;
@@ -22,9 +22,9 @@ class OC_JSON{
 	/**
 	* Check if the app is enabled, send json error msg if not
 	*/
-	public static function checkAppEnabled($app){
-		if( !OC_App::isEnabled($app)){
-			$l = OC_L10N::get('core');
+	public static function checkAppEnabled($app) {
+		if( !OC_App::isEnabled($app)) {
+			$l = OC_L10N::get('lib');
 			self::error(array( 'data' => array( 'message' => $l->t('Application is not enabled') )));
 			exit();
 		}
@@ -33,9 +33,9 @@ class OC_JSON{
 	/**
 	* Check if the user is logged in, send json error msg if not
 	*/
-	public static function checkLoggedIn(){
-		if( !OC_User::isLoggedIn()){
-			$l = OC_L10N::get('core');
+	public static function checkLoggedIn() {
+		if( !OC_User::isLoggedIn()) {
+			$l = OC_L10N::get('lib');
 			self::error(array( 'data' => array( 'message' => $l->t('Authentication error') )));
 			exit();
 		}
@@ -45,33 +45,33 @@ class OC_JSON{
 	 * @brief Check an ajax get/post call if the request token is valid.
 	 * @return json Error msg if not valid.
 	 */
-	public static function callCheck(){
-		if( !OC_Util::isCallRegistered()){
-			$l = OC_L10N::get('core');
+	public static function callCheck() {
+		if( !OC_Util::isCallRegistered()) {
+			$l = OC_L10N::get('lib');
 			self::error(array( 'data' => array( 'message' => $l->t('Token expired. Please reload page.') )));
 			exit();
 		}
 	}
-        
+
 	/**
 	* Check if the user is a admin, send json error msg if not
 	*/
-	public static function checkAdminUser(){
+	public static function checkAdminUser() {
 		self::checkLoggedIn();
-		if( !OC_Group::inGroup( OC_User::getUser(), 'admin' )){
-			$l = OC_L10N::get('core');
+		if( !OC_Group::inGroup( OC_User::getUser(), 'admin' )) {
+			$l = OC_L10N::get('lib');
 			self::error(array( 'data' => array( 'message' => $l->t('Authentication error') )));
 			exit();
 		}
 	}
-        
+
 	/**
 	* Check if the user is a subadmin, send json error msg if not
 	*/
-	public static function checkSubAdminUser(){
+	public static function checkSubAdminUser() {
 		self::checkLoggedIn();
-		if(!OC_Group::inGroup(OC_User::getUser(),'admin') && !OC_SubAdmin::isSubAdmin(OC_User::getUser())){
-			$l = OC_L10N::get('core');
+		if(!OC_Group::inGroup(OC_User::getUser(),'admin') && !OC_SubAdmin::isSubAdmin(OC_User::getUser())) {
+			$l = OC_L10N::get('lib');
 			self::error(array( 'data' => array( 'message' => $l->t('Authentication error') )));
 			exit();
 		}
@@ -80,7 +80,7 @@ class OC_JSON{
 	/**
 	* Send json error msg
 	*/
-	public static function error($data = array()){
+	public static function error($data = array()) {
 		$data['status'] = 'error';
 		self::encodedPrint($data);
 	}
@@ -88,7 +88,7 @@ class OC_JSON{
 	/**
 	* Send json success msg
 	*/
-	public static function success($data = array()){
+	public static function success($data = array()) {
 		$data['status'] = 'success';
 		self::encodedPrint($data);
 	}
@@ -96,7 +96,7 @@ class OC_JSON{
 	/**
 	 * Convert OC_L10N_String to string, for use in json encodings
 	 */
-	protected static function to_string(&$value){
+	protected static function to_string(&$value) {
 		if ($value instanceof OC_L10N_String) {
 			$value = (string)$value;
 		}
@@ -105,10 +105,10 @@ class OC_JSON{
 	/**
 	* Encode and print $data in json format
 	*/
-	public static function encodedPrint($data,$setContentType=true){
+	public static function encodedPrint($data,$setContentType=true) {
 		// Disable mimesniffing, don't move this to setContentTypeHeader!
 		header( 'X-Content-Type-Options: nosniff' );
-		if($setContentType){
+		if($setContentType) {
 			self::setContentTypeHeader();
 		}
 		array_walk_recursive($data, array('OC_JSON', 'to_string'));
diff --git a/lib/l10n.php b/lib/l10n.php
index e7f5ffea0e4938c66d3507215f3b5a8443aa012a..90877cbd7477ed1278c5d105897c4b0f339fa0ef 100644
--- a/lib/l10n.php
+++ b/lib/l10n.php
@@ -28,17 +28,17 @@ class OC_L10N{
 	 * cached instances
 	 */
 	protected static $instances=array();
-	
+
 	/**
 	 * cache
 	 */
 	protected static $cache = array();
-	
+
 	/**
 	 * The best language
 	 */
 	protected static $language = '';
-	
+
 	/**
 	 * App of this object
 	 */
@@ -53,7 +53,7 @@ class OC_L10N{
 	 * Translations
 	 */
 	private $translations = array();
-	
+
 	/**
 	 * Localization
 	 */
@@ -61,14 +61,14 @@ class OC_L10N{
 		'date' => 'd.m.Y',
 		'datetime' => 'd.m.Y H:i:s',
 		'time' => 'H:i:s');
-		
+
 	/**
 	 * get an L10N instance
 	 * @return OC_L10N
 	 */
-	public static function get($app,$lang=null){
-		if(is_null($lang)){
-			if(!isset(self::$instances[$app])){
+	public static function get($app,$lang=null) {
+		if(is_null($lang)) {
+			if(!isset(self::$instances[$app])) {
 				self::$instances[$app]=new OC_L10N($app);
 			}
 			return self::$instances[$app];
@@ -76,7 +76,7 @@ class OC_L10N{
 			return new OC_L10N($app,$lang);
 		}
 	}
-	
+
 	/**
 	 * @brief The constructor
 	 * @param $app the app requesting l10n
@@ -86,12 +86,12 @@ class OC_L10N{
 	 * If language is not set, the constructor tries to find the right
 	 * language.
 	 */
-	public function __construct($app, $lang = null){
+	public function __construct($app, $lang = null) {
 		$this->app = $app;
 		$this->lang = $lang;
 	}
-		
-	protected function init(){
+
+	protected function init() {
 		if ($this->app === true) {
 			return;
 		}
@@ -99,12 +99,12 @@ class OC_L10N{
 		$lang = $this->lang;
 		$this->app = true;
 		// Find the right language
-		if(is_null($lang)){
+		if(is_null($lang) || $lang == '') {
 			$lang = self::findLanguage($app);
 		}
 
 		// Use cache if possible
-		if(array_key_exists($app.'::'.$lang, self::$cache)){
+		if(array_key_exists($app.'::'.$lang, self::$cache)) {
 
 			$this->translations = self::$cache[$app.'::'.$lang]['t'];
 			$this->localizations = self::$cache[$app.'::'.$lang]['l'];
@@ -113,18 +113,21 @@ class OC_L10N{
 			$i18ndir = self::findI18nDir($app);
 			// Localization is in /l10n, Texts are in $i18ndir
 			// (Just no need to define date/time format etc. twice)
-			if((OC_Helper::issubdirectory($i18ndir.$lang.'.php', OC_App::getAppPath($app).'/l10n/') || OC_Helper::issubdirectory($i18ndir.$lang.'.php', OC::$SERVERROOT.'/core/l10n/') || OC_Helper::issubdirectory($i18ndir.$lang.'.php', OC::$SERVERROOT.'/settings')) && file_exists($i18ndir.$lang.'.php')) {
+			if((OC_Helper::issubdirectory($i18ndir.$lang.'.php', OC_App::getAppPath($app).'/l10n/') ||
+				OC_Helper::issubdirectory($i18ndir.$lang.'.php', OC::$SERVERROOT.'/core/l10n/') ||
+				OC_Helper::issubdirectory($i18ndir.$lang.'.php', OC::$SERVERROOT.'/lib/l10n/') ||
+				OC_Helper::issubdirectory($i18ndir.$lang.'.php', OC::$SERVERROOT.'/settings')) && file_exists($i18ndir.$lang.'.php')) {
 				// Include the file, save the data from $CONFIG
 				include(strip_tags($i18ndir).strip_tags($lang).'.php');
-				if(isset($TRANSLATIONS) && is_array($TRANSLATIONS)){
+				if(isset($TRANSLATIONS) && is_array($TRANSLATIONS)) {
 					$this->translations = $TRANSLATIONS;
 				}
-			} 
+			}
 
-			if(file_exists(OC::$SERVERROOT.'/core/l10n/l10n-'.$lang.'.php')){
+			if(file_exists(OC::$SERVERROOT.'/core/l10n/l10n-'.$lang.'.php')) {
 				// Include the file, save the data from $CONFIG
 				include(OC::$SERVERROOT.'/core/l10n/l10n-'.$lang.'.php');
-				if(isset($LOCALIZATIONS) && is_array($LOCALIZATIONS)){
+				if(isset($LOCALIZATIONS) && is_array($LOCALIZATIONS)) {
 					$this->localizations = array_merge($this->localizations, $LOCALIZATIONS);
 				}
 			}
@@ -134,16 +137,16 @@ class OC_L10N{
 		}
 	}
 
-	/**
-	 * @brief Translating
-	 * @param $text The text we need a translation for
-	 * @param $parameters default:array() Parameters for sprintf
-	 * @returns Translation or the same text
-	 *
-	 * Returns the translation. If no translation is found, $text will be
-	 * returned.
-	 */
-	public function t($text, $parameters = array()){
+    /**
+     * @brief Translating
+     * @param $text String The text we need a translation for
+     * @param array|\default $parameters default:array() Parameters for sprintf
+     * @return \OC_L10N_String Translation or the same text
+     *
+     * Returns the translation. If no translation is found, $text will be
+     * returned.
+     */
+	public function t($text, $parameters = array()) {
 		return new OC_L10N_String($this, $text, $parameters);
 	}
 
@@ -161,10 +164,10 @@ class OC_L10N{
 	 *
 	 *
 	 */
-	public function tA($textArray){
+	public function tA($textArray) {
 		OC_Log::write('core', 'DEPRECATED: the method tA is deprecated and will be removed soon.',OC_Log::WARN);
 		$result = array();
-		foreach($textArray as $key => $text){
+		foreach($textArray as $key => $text) {
 			$result[$key] = (string)$this->t($text);
 		}
 		return $result;
@@ -176,7 +179,7 @@ class OC_L10N{
 	 *
 	 * Returns an associative array with all translations
 	 */
-	public function getTranslations(){
+	public function getTranslations() {
 		$this->init();
 		return $this->translations;
 	}
@@ -188,7 +191,7 @@ class OC_L10N{
 	 * @returns String or false
 	 *
 	 * Returns the localized data.
-	 * 
+	 *
 	 * Implemented types:
 	 *  - date
 	 *    - Creates a date
@@ -203,9 +206,9 @@ class OC_L10N{
 	 *    - l10n-field: time
 	 *    - params: timestamp (int/string)
 	 */
-	public function l($type, $data){
+	public function l($type, $data) {
 		$this->init();
-		switch($type){
+		switch($type) {
 			// If you add something don't forget to add it to $localizations
 			// at the top of the page
 			case 'date':
@@ -230,7 +233,7 @@ class OC_L10N{
 	 * This function is useful to avoid loading thousands of files if only one
 	 * simple string is needed, for example in appinfo.php
 	 */
-	public static function selectLanguage($text){
+	public static function selectLanguage($text) {
 		$lang = self::findLanguage(array_keys($text));
 		return $text[$lang];
 	}
@@ -241,42 +244,42 @@ class OC_L10N{
 	 * @returns language
 	 *
 	 * If $app is an array, ownCloud assumes that these are the available
-	 * languages. Otherwise ownCloud tries to find the files in the l10n 
+	 * languages. Otherwise ownCloud tries to find the files in the l10n
 	 * folder.
 	 *
 	 * If nothing works it returns 'en'
 	 */
-	public static function findLanguage($app = null){
-		if(!is_array($app) && self::$language != ''){
+	public static function findLanguage($app = null) {
+		if(!is_array($app) && self::$language != '') {
 			return self::$language;
 		}
 
-		if(OC_User::getUser() && OC_Preferences::getValue(OC_User::getUser(), 'core', 'lang')){
+		if(OC_User::getUser() && OC_Preferences::getValue(OC_User::getUser(), 'core', 'lang')) {
 			$lang = OC_Preferences::getValue(OC_User::getUser(), 'core', 'lang');
 			self::$language = $lang;
-			if(is_array($app)){
+			if(is_array($app)) {
 				$available = $app;
 				$lang_exists = array_search($lang, $available) !== false;
 			}
 			else {
 				$lang_exists = self::languageExists($app, $lang);
 			}
-			if($lang_exists){
+			if($lang_exists) {
 				return $lang;
 			}
 		}
 
-		if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])){
+		if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
 			$accepted_languages = preg_split('/,\s*/', $_SERVER['HTTP_ACCEPT_LANGUAGE']);
-			if(is_array($app)){
+			if(is_array($app)) {
 				$available = $app;
 			}
 			else{
 				$available = self::findAvailableLanguages($app);
 			}
-			foreach($accepted_languages as $i){
+			foreach($accepted_languages as $i) {
 				$temp = explode(';', $i);
-				if(array_search($temp[0], $available) !== false){
+				if(array_search($temp[0], $available) !== false) {
 					return $temp[0];
 				}
 			}
@@ -291,12 +294,12 @@ class OC_L10N{
 	 * @param $app App that needs to be translated
 	 * @returns directory
 	 */
-	protected static function findI18nDir($app){
+	protected static function findI18nDir($app) {
 		// find the i18n dir
 		$i18ndir = OC::$SERVERROOT.'/core/l10n/';
-		if($app != ''){
+		if($app != '') {
 			// Check if the app is in the app folder
-			if(file_exists(OC_App::getAppPath($app).'/l10n/')){
+			if(file_exists(OC_App::getAppPath($app).'/l10n/')) {
 				$i18ndir = OC_App::getAppPath($app).'/l10n/';
 			}
 			else{
@@ -311,13 +314,13 @@ class OC_L10N{
 	 * @param $app App that needs to be translated
 	 * @returns array an array of available languages
 	 */
-	public static function findAvailableLanguages($app=null){
+	public static function findAvailableLanguages($app=null) {
 		$available=array('en');//english is always available
 		$dir = self::findI18nDir($app);
-		if(is_dir($dir)){
+		if(is_dir($dir)) {
 			$files=scandir($dir);
-			foreach($files as $file){
-				if(substr($file, -4, 4) == '.php'){
+			foreach($files as $file) {
+				if(substr($file, -4, 4) == '.php') {
 					$i = substr($file, 0, -4);
 					$available[] = $i;
 				}
@@ -326,12 +329,12 @@ class OC_L10N{
 		return $available;
 	}
 
-	public static function languageExists($app, $lang){
-		if ($lang == 'en'){//english is always available
+	public static function languageExists($app, $lang) {
+		if ($lang == 'en') {//english is always available
 			return true;
 		}
 		$dir = self::findI18nDir($app);
-		if(is_dir($dir)){
+		if(is_dir($dir)) {
 			return file_exists($dir.'/'.$lang.'.php');
 		}
 		return false;
diff --git a/lib/l10n/ca.php b/lib/l10n/ca.php
index 8e4c30caec9044747ca92face7e43f9dd1fbe204..031207227ec04f116a13ee416a4bd6d8018ebcfd 100644
--- a/lib/l10n/ca.php
+++ b/lib/l10n/ca.php
@@ -21,5 +21,8 @@
 "last month" => "el mes passat",
 "months ago" => "mesos enrere",
 "last year" => "l'any passat",
-"years ago" => "fa anys"
+"years ago" => "fa anys",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s està disponible. Obtén <a href=\"%s\">més informació</a>",
+"up to date" => "actualitzat",
+"updates check is disabled" => "la comprovació d'actualitzacions està desactivada"
 );
diff --git a/lib/l10n/cs_CZ.php b/lib/l10n/cs_CZ.php
index 933dbe541f5c6189d17893091c67dec70fa77558..00815f97533db2a3d1c4f70dd515444a9dac75f3 100644
--- a/lib/l10n/cs_CZ.php
+++ b/lib/l10n/cs_CZ.php
@@ -4,14 +4,14 @@
 "Settings" => "Nastavení",
 "Users" => "Uživatelé",
 "Apps" => "Aplikace",
-"Admin" => "Admin",
+"Admin" => "Administrace",
 "ZIP download is turned off." => "Stahování ZIPu je vypnuto.",
-"Files need to be downloaded one by one." => "Soubory je nutno stahovat samostatně.",
+"Files need to be downloaded one by one." => "Soubory musí být stahovány jednotlivě.",
 "Back to Files" => "Zpět k souborům",
-"Selected files too large to generate zip file." => "Vybarné soubory jsou pro vytvoření zipu příliš velké.",
+"Selected files too large to generate zip file." => "Vybrané soubory jsou příliš velké pro vytvoření zip souboru.",
 "Application is not enabled" => "Aplikace není povolena",
-"Authentication error" => "Chyba autorizace",
-"Token expired. Please reload page." => "Realce expirovala. Obnovte prosím stranu.",
+"Authentication error" => "Chyba ověření",
+"Token expired. Please reload page." => "Token vypršel. Obnovte prosím stránku.",
 "seconds ago" => "před vteřinami",
 "1 minute ago" => "před 1 minutou",
 "%d minutes ago" => "před %d minutami",
@@ -21,5 +21,8 @@
 "last month" => "minulý měsíc",
 "months ago" => "před měsíci",
 "last year" => "loni",
-"years ago" => "před lety"
+"years ago" => "před lety",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s je dostupná. Získat <a href=\"%s\">více informací</a>",
+"up to date" => "aktuální",
+"updates check is disabled" => "kontrola aktualizací je vypnuta"
 );
diff --git a/lib/l10n/da.php b/lib/l10n/da.php
new file mode 100644
index 0000000000000000000000000000000000000000..7a9ee26b477d1e88cdebc14566e9f6f6a32b4c71
--- /dev/null
+++ b/lib/l10n/da.php
@@ -0,0 +1,25 @@
+<?php $TRANSLATIONS = array(
+"Help" => "Hjælp",
+"Personal" => "Personlig",
+"Settings" => "Indstillinger",
+"Users" => "Brugere",
+"Apps" => "Apps",
+"Admin" => "Admin",
+"ZIP download is turned off." => "ZIP-download er slået fra.",
+"Files need to be downloaded one by one." => "Filer skal downloades en for en.",
+"Back to Files" => "Tilbage til Filer",
+"Selected files too large to generate zip file." => "De markerede filer er for store til at generere en ZIP-fil.",
+"Application is not enabled" => "Programmet er ikke aktiveret",
+"Authentication error" => "Adgangsfejl",
+"Token expired. Please reload page." => "Adgang er udløbet. Genindlæs siden.",
+"seconds ago" => "sekunder siden",
+"1 minute ago" => "1 minut siden",
+"%d minutes ago" => "%d minutter siden",
+"today" => "I dag",
+"yesterday" => "I går",
+"%d days ago" => "%d dage siden",
+"last month" => "Sidste måned",
+"months ago" => "måneder siden",
+"last year" => "Sidste år",
+"years ago" => "år siden"
+);
diff --git a/lib/l10n/de.php b/lib/l10n/de.php
index e77ec97df7520b6f13f3d2ec667546d45b947bd4..4a567003de2ac8902695bca782e1505d7a4621f3 100644
--- a/lib/l10n/de.php
+++ b/lib/l10n/de.php
@@ -21,5 +21,8 @@
 "last month" => "Letzten Monat",
 "months ago" => "Vor Monaten",
 "last year" => "Letztes Jahr",
-"years ago" => "Vor Jahren"
+"years ago" => "Vor Jahren",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s ist verfügbar. <a href=\"%s\">Weitere Informationen</a>",
+"up to date" => "aktuell",
+"updates check is disabled" => "Die Update-Überprüfung ist ausgeschaltet"
 );
diff --git a/lib/l10n/eo.php b/lib/l10n/eo.php
index 96bcb06a8d7ad1aa5968b736bb1886d1b94c6c97..b3c1c52ecee8e489040f05448d1f140ca62d498b 100644
--- a/lib/l10n/eo.php
+++ b/lib/l10n/eo.php
@@ -4,6 +4,7 @@
 "Settings" => "Agordo",
 "Users" => "Uzantoj",
 "Apps" => "Aplikaĵoj",
+"Admin" => "Administranto",
 "ZIP download is turned off." => "ZIP-elŝuto estas malkapabligita.",
 "Files need to be downloaded one by one." => "Dosieroj devas elŝutiĝi unuope.",
 "Back to Files" => "Reen al la dosieroj",
@@ -20,5 +21,8 @@
 "last month" => "lasta monato",
 "months ago" => "monatojn antaŭe",
 "last year" => "lasta jaro",
-"years ago" => "jarojn antaŭe"
+"years ago" => "jarojn antaŭe",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s haveblas. Ekhavu <a href=\"%s\">pli da informo</a>",
+"up to date" => "ĝisdata",
+"updates check is disabled" => "ĝisdateckontrolo estas malkapabligita"
 );
diff --git a/lib/l10n/es.php b/lib/l10n/es.php
index 174fe0720fde7ec3d1094388366b52699e81f008..6d2a310ca3b0ea31a22d3d7a3cc66d7ca398debf 100644
--- a/lib/l10n/es.php
+++ b/lib/l10n/es.php
@@ -21,5 +21,8 @@
 "last month" => "este mes",
 "months ago" => "hace meses",
 "last year" => "este año",
-"years ago" => "hace años"
+"years ago" => "hace años",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s está disponible. Obtén <a href=\"%s\">más información</a>",
+"up to date" => "actualizado",
+"updates check is disabled" => "comprobar actualizaciones está desactivado"
 );
diff --git a/lib/l10n/et_EE.php b/lib/l10n/et_EE.php
index d8da90a3cbfa6cd216208bd0b7aacd5a92afa832..87f222af8381b33bc3d85ed9d8bdfba291e07195 100644
--- a/lib/l10n/et_EE.php
+++ b/lib/l10n/et_EE.php
@@ -21,5 +21,8 @@
 "last month" => "eelmisel kuul",
 "months ago" => "kuud tagasi",
 "last year" => "eelmisel aastal",
-"years ago" => "aastat tagasi"
+"years ago" => "aastat tagasi",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s on saadaval. Vaata <a href=\"%s\">lisainfot</a>",
+"up to date" => "ajakohane",
+"updates check is disabled" => "uuenduste kontrollimine on välja lülitatud"
 );
diff --git a/lib/l10n/eu.php b/lib/l10n/eu.php
new file mode 100644
index 0000000000000000000000000000000000000000..461bf458778a1d9b44decc03c2532c71b7d4bf3b
--- /dev/null
+++ b/lib/l10n/eu.php
@@ -0,0 +1,28 @@
+<?php $TRANSLATIONS = array(
+"Help" => "Laguntza",
+"Personal" => "Pertsonala",
+"Settings" => "Ezarpenak",
+"Users" => "Erabiltzaileak",
+"Apps" => "Aplikazioak",
+"Admin" => "Admin",
+"ZIP download is turned off." => "ZIP deskarga ez dago gaituta.",
+"Files need to be downloaded one by one." => "Fitxategiak banan-banan deskargatu behar dira.",
+"Back to Files" => "Itzuli fitxategietara",
+"Selected files too large to generate zip file." => "Hautatuko fitxategiak oso handiak dira zip fitxategia sortzeko.",
+"Application is not enabled" => "Aplikazioa ez dago gaituta",
+"Authentication error" => "Autentikazio errorea",
+"Token expired. Please reload page." => "Tokena iraungitu da. Mesedez birkargatu orria.",
+"seconds ago" => "orain dela segundu batzuk",
+"1 minute ago" => "orain dela minutu 1",
+"%d minutes ago" => "orain dela %d minutu",
+"today" => "gaur",
+"yesterday" => "atzo",
+"%d days ago" => "orain dela %d egun",
+"last month" => "joan den hilabetea",
+"months ago" => "orain dela hilabete batzuk",
+"last year" => "joan den urtea",
+"years ago" => "orain dela urte batzuk",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s eskuragarri dago. Lortu <a href=\"%s\">informazio gehiago</a>",
+"up to date" => "eguneratuta",
+"updates check is disabled" => "eguneraketen egiaztapena ez dago gaituta"
+);
diff --git a/lib/l10n/fi_FI.php b/lib/l10n/fi_FI.php
index dda2c7603734e361b5bb44ca699ed2dd97b2450a..6f0ebcd16e619169e81fc5fb59f57b31e7b2169b 100644
--- a/lib/l10n/fi_FI.php
+++ b/lib/l10n/fi_FI.php
@@ -21,5 +21,8 @@
 "last month" => "viime kuussa",
 "months ago" => "kuukautta sitten",
 "last year" => "viime vuonna",
-"years ago" => "vuotta sitten"
+"years ago" => "vuotta sitten",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s on saatavilla. Lue <a href=\"%s\">lisätietoja</a>",
+"up to date" => "ajan tasalla",
+"updates check is disabled" => "päivitysten tarkistus on pois käytöstä"
 );
diff --git a/lib/l10n/fr.php b/lib/l10n/fr.php
index c674b79b9591cdc4da2837f21ea9e0c741439151..c10259e637616f6bd03bac4b80c546c16b5c869e 100644
--- a/lib/l10n/fr.php
+++ b/lib/l10n/fr.php
@@ -21,5 +21,8 @@
 "last month" => "le mois dernier",
 "months ago" => "il y a plusieurs mois",
 "last year" => "l'année dernière",
-"years ago" => "il y a plusieurs années"
+"years ago" => "il y a plusieurs années",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s est disponible. Obtenez <a href=\"%s\">plus d'informations</a>",
+"up to date" => "À jour",
+"updates check is disabled" => "la vérification des mises à jour est désactivée"
 );
diff --git a/lib/l10n/he.php b/lib/l10n/he.php
new file mode 100644
index 0000000000000000000000000000000000000000..149637d09d29422b78442b2fc9146a9d1ba4bdf0
--- /dev/null
+++ b/lib/l10n/he.php
@@ -0,0 +1,28 @@
+<?php $TRANSLATIONS = array(
+"Help" => "עזרה",
+"Personal" => "אישי",
+"Settings" => "הגדרות",
+"Users" => "משתמשים",
+"Apps" => "יישומים",
+"Admin" => "מנהל",
+"ZIP download is turned off." => "הורדת ZIP כבויה",
+"Files need to be downloaded one by one." => "יש להוריד את הקבצים אחד אחרי השני.",
+"Back to Files" => "חזרה לקבצים",
+"Selected files too large to generate zip file." => "הקבצים הנבחרים גדולים מידי ליצירת קובץ zip.",
+"Application is not enabled" => "יישומים אינם מופעלים",
+"Authentication error" => "שגיאת הזדהות",
+"Token expired. Please reload page." => "פג תוקף. נא לטעון שוב את הדף.",
+"seconds ago" => "שניות",
+"1 minute ago" => "לפני דקה אחת",
+"%d minutes ago" => "לפני %d דקות",
+"today" => "היום",
+"yesterday" => "אתמול",
+"%d days ago" => "לפני %d ימים",
+"last month" => "חודש שעבר",
+"months ago" => "חודשים",
+"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" => "בדיקת עדכונים מנוטרלת"
+);
diff --git a/lib/l10n/hu_HU.php b/lib/l10n/hu_HU.php
new file mode 100644
index 0000000000000000000000000000000000000000..eb074b79c617ac72b4df0127984b758c6ad5a63f
--- /dev/null
+++ b/lib/l10n/hu_HU.php
@@ -0,0 +1,25 @@
+<?php $TRANSLATIONS = array(
+"Help" => "Súgó",
+"Personal" => "Személyes",
+"Settings" => "Beállítások",
+"Users" => "Felhasználók",
+"Apps" => "Alkalmazások",
+"Admin" => "Admin",
+"ZIP download is turned off." => "ZIP-letöltés letiltva",
+"Files need to be downloaded one by one." => "A file-okat egyenként kell letölteni",
+"Back to Files" => "Vissza a File-okhoz",
+"Selected files too large to generate zip file." => "Túl nagy file-ok a zip-generáláshoz",
+"Application is not enabled" => "Az alkalmazás nincs engedélyezve",
+"Authentication error" => "Hitelesítési hiba",
+"Token expired. Please reload page." => "A token lejárt. Frissítsd az oldalt.",
+"seconds ago" => "másodperccel ezelőtt",
+"1 minute ago" => "1 perccel ezelőtt",
+"%d minutes ago" => "%d perccel ezelőtt",
+"today" => "ma",
+"yesterday" => "tegnap",
+"%d days ago" => "%d évvel ezelőtt",
+"last month" => "múlt hónapban",
+"months ago" => "hónappal ezelőtt",
+"last year" => "tavaly",
+"years ago" => "évvel ezelőtt"
+);
diff --git a/lib/l10n/it.php b/lib/l10n/it.php
index 2c88818dc6c385ce6f8b7fb03206512a9c506bc5..c4c7d90610bec35d3d3c0d75dea715c40c0a6c52 100644
--- a/lib/l10n/it.php
+++ b/lib/l10n/it.php
@@ -21,5 +21,8 @@
 "last month" => "il mese scorso",
 "months ago" => "mesi fa",
 "last year" => "l'anno scorso",
-"years ago" => "anni fa"
+"years ago" => "anni fa",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s è disponibile. Ottieni <a href=\"%s\">ulteriori informazioni</a>",
+"up to date" => "aggiornato",
+"updates check is disabled" => "il controllo degli aggiornamenti è disabilitato"
 );
diff --git a/lib/l10n/ja_JP.php b/lib/l10n/ja_JP.php
new file mode 100644
index 0000000000000000000000000000000000000000..10f7276703abc4b734891a90f36e58ef76ff2ee4
--- /dev/null
+++ b/lib/l10n/ja_JP.php
@@ -0,0 +1,28 @@
+<?php $TRANSLATIONS = array(
+"Help" => "ヘルプ",
+"Personal" => "個人設定",
+"Settings" => "設定",
+"Users" => "ユーザ",
+"Apps" => "アプリ",
+"Admin" => "管理者",
+"ZIP download is turned off." => "ZIPダウンロードは無効です。",
+"Files need to be downloaded one by one." => "ファイルは1つずつダウンロードする必要があります。",
+"Back to Files" => "ファイルに戻る",
+"Selected files too large to generate zip file." => "選択したファイルはZIPファイルの生成には大きすぎます。",
+"Application is not enabled" => "アプリケーションは無効です",
+"Authentication error" => "認証エラー",
+"Token expired. Please reload page." => "トークンが無効になりました。ページを再読込してください。",
+"seconds ago" => "秒前",
+"1 minute ago" => "1分前",
+"%d minutes ago" => "%d 分前",
+"today" => "今日",
+"yesterday" => "昨日",
+"%d days ago" => "%d 日前",
+"last month" => "先月",
+"months ago" => "月前",
+"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" => "更新チェックは無効です"
+);
diff --git a/lib/l10n/nl.php b/lib/l10n/nl.php
index 01bc4d3e19fa740c2654b15f3a394bbec6f6d395..a90fc6caa6cc38ca168b2aa4d2f5cefee90c72bc 100644
--- a/lib/l10n/nl.php
+++ b/lib/l10n/nl.php
@@ -21,5 +21,8 @@
 "last month" => "vorige maand",
 "months ago" => "maanden geleden",
 "last year" => "vorig jaar",
-"years ago" => "jaar geleden"
+"years ago" => "jaar geleden",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s is beschikbaar. Verkrijg <a href=\"%s\">meer informatie</a>",
+"up to date" => "Bijgewerkt",
+"updates check is disabled" => "Meest recente versie controle is uitgeschakeld"
 );
diff --git a/lib/l10n/pl.php b/lib/l10n/pl.php
new file mode 100644
index 0000000000000000000000000000000000000000..087aaa227d30b1588049888b616d777eac10536d
--- /dev/null
+++ b/lib/l10n/pl.php
@@ -0,0 +1,28 @@
+<?php $TRANSLATIONS = array(
+"Help" => "Pomoc",
+"Personal" => "Osobiste",
+"Settings" => "Ustawienia",
+"Users" => "Użytkownicy",
+"Apps" => "Aplikacje",
+"Admin" => "Administrator",
+"ZIP download is turned off." => "Pobieranie ZIP jest wyłączone.",
+"Files need to be downloaded one by one." => "Pliki muszą zostać pobrane pojedynczo.",
+"Back to Files" => "Wróć do plików",
+"Selected files too large to generate zip file." => "Wybrane pliki są zbyt duże, aby wygenerować plik zip.",
+"Application is not enabled" => "Aplikacja nie jest włączona",
+"Authentication error" => "Błąd uwierzytelniania",
+"Token expired. Please reload page." => "Token wygasł. Proszę ponownie załadować stronę.",
+"seconds ago" => "sekund temu",
+"1 minute ago" => "1 minutę temu",
+"%d minutes ago" => "%d minut temu",
+"today" => "dzisiaj",
+"yesterday" => "wczoraj",
+"%d days ago" => "%d dni temu",
+"last month" => "ostatni miesiąc",
+"months ago" => "miesięcy temu",
+"last year" => "ostatni rok",
+"years ago" => "lat temu",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s jest dostępna. Uzyskaj <a href=\"%s\">więcej informacji</a>",
+"up to date" => "Aktualne",
+"updates check is disabled" => "wybór aktualizacji jest wyłączony"
+);
diff --git a/lib/l10n/ru.php b/lib/l10n/ru.php
index 07dacc598aeb9606d3746090fdb47fa8a0a62562..74425f0e134c148ceb40d4fa217253913bad999e 100644
--- a/lib/l10n/ru.php
+++ b/lib/l10n/ru.php
@@ -21,5 +21,8 @@
 "last month" => "в прошлом месяце",
 "months ago" => "месяцы назад",
 "last year" => "в прошлом году",
-"years ago" => "годы назад"
+"years ago" => "годы назад",
+"%s is available. Get <a href=\"%s\">more information</a>" => "Возможно обновление до %s. <a href=\"%s\">Подробнее</a>",
+"up to date" => "актуальная версия",
+"updates check is disabled" => "проверка обновлений отключена"
 );
diff --git a/lib/l10n/sl.php b/lib/l10n/sl.php
index fad164172533354d14edb1d3fa29cc290f9b9243..273773f2f7b79626674939523c057ab05bb9a072 100644
--- a/lib/l10n/sl.php
+++ b/lib/l10n/sl.php
@@ -21,5 +21,8 @@
 "last month" => "prejšnji mesec",
 "months ago" => "mesecev nazaj",
 "last year" => "lani",
-"years ago" => "let nazaj"
+"years ago" => "let nazaj",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s je na voljo. <a href=\"%s\">Več informacij.</a>",
+"up to date" => "ažuren",
+"updates check is disabled" => "preverjanje za posodobitve je onemogočeno"
 );
diff --git a/lib/l10n/string.php b/lib/l10n/string.php
index 4769790a16d7b1a9719670b65a2648dfb65764cb..8eef10071e6451010dfb385f889bcfc1cb5536af 100644
--- a/lib/l10n/string.php
+++ b/lib/l10n/string.php
@@ -8,16 +8,16 @@
 
 class OC_L10N_String{
 	protected $l10n;
-	public function __construct($l10n, $text, $parameters){
+	public function __construct($l10n, $text, $parameters) {
 		$this->l10n = $l10n;
 		$this->text = $text;
 		$this->parameters = $parameters;
 
 	}
 
-	public function __toString(){
+	public function __toString() {
 		$translations = $this->l10n->getTranslations();
-		if(array_key_exists($this->text, $translations)){
+		if(array_key_exists($this->text, $translations)) {
 			return vsprintf($translations[$this->text], $this->parameters);
 		}
 		return vsprintf($this->text, $this->parameters);
diff --git a/lib/l10n/sv.php b/lib/l10n/sv.php
index cff3a63c442d5ef565f854c3dabb8c839b2cfb1c..3d377133f2242d4885e2e4ef0c6df063449328a8 100644
--- a/lib/l10n/sv.php
+++ b/lib/l10n/sv.php
@@ -21,5 +21,8 @@
 "last month" => "förra månaden",
 "months ago" => "månader sedan",
 "last year" => "förra året",
-"years ago" => "år sedan"
+"years ago" => "år sedan",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s finns. Få <a href=\"%s\">mer information</a>",
+"up to date" => "uppdaterad",
+"updates check is disabled" => "uppdateringskontroll är inaktiverad"
 );
diff --git a/lib/l10n/th_TH.php b/lib/l10n/th_TH.php
index cb2610fa20421671390ddc54831274bf56b08a15..2aa2ffaba8cec81bfa64da005cad4159e5d3dbe7 100644
--- a/lib/l10n/th_TH.php
+++ b/lib/l10n/th_TH.php
@@ -21,5 +21,8 @@
 "last month" => "เดือนที่แล้ว",
 "months ago" => "เดือนมาแล้ว",
 "last year" => "ปีที่แล้ว",
-"years ago" => "ปีที่ผ่านมา"
+"years ago" => "ปีที่ผ่านมา",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s พร้อมให้ใช้งานได้แล้ว. <a href=\"%s\">ดูรายละเอียดเพิ่มเติม</a>",
+"up to date" => "ทันสมัย",
+"updates check is disabled" => "การตรวจสอบชุดอัพเดทถูกปิดใช้งานไว้"
 );
diff --git a/lib/l10n/uk.php b/lib/l10n/uk.php
index 18f6a4a623dc603562ef2e9e36e3fe7f1193b76b..423aa12b2d736f277015121226fb19fb2de6c961 100644
--- a/lib/l10n/uk.php
+++ b/lib/l10n/uk.php
@@ -20,5 +20,6 @@
 "last month" => "минулого місяця",
 "months ago" => "місяці тому",
 "last year" => "минулого року",
-"years ago" => "роки тому"
+"years ago" => "роки тому",
+"updates check is disabled" => "перевірка оновлень відключена"
 );
diff --git a/lib/l10n/vi.php b/lib/l10n/vi.php
new file mode 100644
index 0000000000000000000000000000000000000000..fc41d69819ae89134e45100029cee8a5c5f1a50e
--- /dev/null
+++ b/lib/l10n/vi.php
@@ -0,0 +1,28 @@
+<?php $TRANSLATIONS = array(
+"Help" => "Giúp đỡ",
+"Personal" => "Cá nhân",
+"Settings" => "Cài đặt",
+"Users" => "Người dùng",
+"Apps" => "Ứng dụng",
+"Admin" => "Quản trị",
+"ZIP download is turned off." => "Tải về ZIP đã bị tắt.",
+"Files need to be downloaded one by one." => "Tập tin cần phải được tải về từng người một.",
+"Back to Files" => "Trở lại tập tin",
+"Selected files too large to generate zip file." => "Tập tin được chọn quá lớn để tạo tập tin ZIP.",
+"Application is not enabled" => "Ứng dụng không được BẬT",
+"Authentication error" => "Lỗi xác thực",
+"Token expired. Please reload page." => "Mã Token đã hết hạn. Hãy tải lại trang.",
+"seconds ago" => "1 giây trước",
+"1 minute ago" => "1 phút trước",
+"%d minutes ago" => "%d phút trước",
+"today" => "hôm nay",
+"yesterday" => "hôm qua",
+"%d days ago" => "%d ngày trước",
+"last month" => "tháng trước",
+"months ago" => "tháng trước",
+"last year" => "năm trước",
+"years ago" => "năm trước",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s có sẵn.  <a href=\"%s\">xem thêm ở đây</a>",
+"up to date" => "đến ngày",
+"updates check is disabled" => "đã TĂT chức năng cập nhật "
+);
diff --git a/lib/l10n/zh_CN.php b/lib/l10n/zh_CN.php
index 2d05ad3567eb44e6b3f5bf7f533f020969353843..8229c77d2dd096e1bbbf9d1ab2c3f1ce72a59d55 100644
--- a/lib/l10n/zh_CN.php
+++ b/lib/l10n/zh_CN.php
@@ -21,5 +21,8 @@
 "last month" => "上月",
 "months ago" => "几月前",
 "last year" => "上年",
-"years ago" => "几年前"
+"years ago" => "几年前",
+"%s is available. Get <a href=\"%s\">more information</a>" => "%s 已存在. 点此 <a href=\"%s\">获取更多信息</a>",
+"up to date" => "已更新。",
+"updates check is disabled" => "检查更新功能被关闭。"
 );
diff --git a/lib/l10n/zh_TW.php b/lib/l10n/zh_TW.php
new file mode 100644
index 0000000000000000000000000000000000000000..c9a26a53b2a71e30e559b4ee144e6ae07e3ad3a9
--- /dev/null
+++ b/lib/l10n/zh_TW.php
@@ -0,0 +1,28 @@
+<?php $TRANSLATIONS = array(
+"Help" => "說明",
+"Personal" => "個人",
+"Settings" => "設定",
+"Users" => "使用者",
+"Apps" => "應用程式",
+"Admin" => "管理",
+"ZIP download is turned off." => "ZIP 下載已關閉",
+"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" => "認證錯誤",
+"Token expired. Please reload page." => "Token 過期. 請重新整理頁面",
+"seconds ago" => "幾秒前",
+"1 minute ago" => "1 分鐘前",
+"%d minutes ago" => "%d 分鐘前",
+"today" => "今天",
+"yesterday" => "昨天",
+"%d days ago" => "%d 天前",
+"last month" => "上個月",
+"months ago" => "幾個月前",
+"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" => "檢查更新已停用"
+);
diff --git a/lib/log/owncloud.php b/lib/log/owncloud.php
index 9eb21832c55b6d710f90e2689ad6311b32b30619..d4644163ad56e70b64d6ac5b80b90eb677ed1bb2 100644
--- a/lib/log/owncloud.php
+++ b/lib/log/owncloud.php
@@ -45,7 +45,7 @@ class OC_Log_Owncloud {
 	 */
 	public static function write($app, $message, $level) {
 		$minLevel=min(OC_Config::getValue( "loglevel", OC_Log::WARN ),OC_Log::ERROR);
-		if($level>=$minLevel){
+		if($level>=$minLevel) {
 			$entry=array('app'=>$app, 'message'=>$message, 'level'=>$level,'time'=>time());
 			$fh=fopen(self::$logFile, 'a');
 			fwrite($fh, json_encode($entry)."\n");
@@ -59,7 +59,7 @@ class OC_Log_Owncloud {
 	 * @param int offset
 	 * @return array
 	 */
-	public static function getEntries($limit=50, $offset=0){
+	public static function getEntries($limit=50, $offset=0) {
 		self::init();
 		$minLevel=OC_Config::getValue( "loglevel", OC_Log::WARN );
 		$entries = array();
diff --git a/lib/mail.php b/lib/mail.php
index 0ac9a97c1bfaa5cdd5321d9a2d3af2f570ff8540..8d30fff9f28248e827fc357edc3a876b0e6eb35b 100644
--- a/lib/mail.php
+++ b/lib/mail.php
@@ -12,12 +12,12 @@
  * A class to handle mail sending.
  */
 
-require_once('class.phpmailer.php');
+require_once 'class.phpmailer.php';
 
 class OC_Mail {
 
 	/**
-	 * send an email 
+	 * send an email
 	 *
 	 * @param string $toaddress
 	 * @param string $toname
@@ -31,17 +31,17 @@ class OC_Mail {
 
 		$SMTPMODE = OC_Config::getValue( 'mail_smtpmode', 'sendmail' );
 		$SMTPHOST = OC_Config::getValue( 'mail_smtphost', '127.0.0.1' );
-		$SMTPAUTH = OC_Config::getValue( 'mail_smtpauth', false ); 
-		$SMTPUSERNAME = OC_Config::getValue( 'mail_smtpname', '' ); 
-		$SMTPPASSWORD = OC_Config::getValue( 'mail_smtppassword', '' );  
+		$SMTPAUTH = OC_Config::getValue( 'mail_smtpauth', false );
+		$SMTPUSERNAME = OC_Config::getValue( 'mail_smtpname', '' );
+		$SMTPPASSWORD = OC_Config::getValue( 'mail_smtppassword', '' );
 
 
 		$mailo = new PHPMailer(true);
 		if($SMTPMODE=='sendmail') {
 			$mailo->IsSendmail();
-		}elseif($SMTPMODE=='smtp'){
+		}elseif($SMTPMODE=='smtp') {
 			$mailo->IsSMTP();
-		}elseif($SMTPMODE=='qmail'){
+		}elseif($SMTPMODE=='qmail') {
 			$mailo->IsQmail();
 		}else{
 			$mailo->IsMail();
@@ -55,6 +55,7 @@ class OC_Mail {
 
 		$mailo->From =$fromaddress;
 		$mailo->FromName = $fromname;;
+		$mailo->Sender =$fromaddress;
 		$a=explode(' ',$toaddress);
 		try {
 			foreach($a as $ad) {
diff --git a/lib/migrate.php b/lib/migrate.php
index e998cf1f4a8873cfd465897185a920e3475904eb..823b3574f169b3dee3bfd201e9f1b7e00553d053 100644
--- a/lib/migrate.php
+++ b/lib/migrate.php
@@ -52,20 +52,20 @@ class OC_Migrate{
 	 * register a new migration provider
 	 * @param OC_Migrate_Provider $provider
 	 */
-	public static function registerProvider($provider){
+	public static function registerProvider($provider) {
 		self::$providers[]=$provider;
 	}
 
 	/**
 	* @brief finds and loads the providers
 	*/
-	static private function findProviders(){
+	static private function findProviders() {
 		// Find the providers
 		$apps = OC_App::getAllApps();
 
-		foreach($apps as $app){
+		foreach($apps as $app) {
 			$path = OC_App::getAppPath($app) . '/appinfo/migrate.php';
-			if( file_exists( $path ) ){
+			if( file_exists( $path ) ) {
 				include( $path );
 			}
 		}
@@ -78,21 +78,21 @@ class OC_Migrate{
 	 * @param otional $path string path to zip output folder
 	 * @return false on error, path to zip on success
 	 */
-	 public static function export( $uid=null, $type='user', $path=null ){
+	 public static function export( $uid=null, $type='user', $path=null ) {
 		$datadir = OC_Config::getValue( 'datadirectory' );
 	 	// Validate export type
 	 	$types = array( 'user', 'instance', 'system', 'userfiles' );
-	 	if( !in_array( $type, $types ) ){
+	 	if( !in_array( $type, $types ) ) {
 	 		OC_Log::write( 'migration', 'Invalid export type', OC_Log::ERROR );
 	 		return json_encode( array( array( 'success' => false ) ) );
 	 	}
 	 	self::$exporttype = $type;
 	 	// Userid?
-	 	if( self::$exporttype == 'user' ){
+	 	if( self::$exporttype == 'user' ) {
 	 		// Check user exists
-	 		if( !is_null($uid) ){
+	 		if( !is_null($uid) ) {
 				$db = new OC_User_Database;
-		 		if( !$db->userExists( $uid ) ){
+		 		if( !$db->userExists( $uid ) ) {
 					OC_Log::write('migration', 'User: '.$uid.' is not in the database and so cannot be exported.', OC_Log::ERROR);
 					return json_encode( array( 'success' => false ) );
 				}
@@ -102,18 +102,18 @@ class OC_Migrate{
 	 		}
 	 	}
 	 	// Calculate zipname
-	 	if( self::$exporttype == 'user' ){
+	 	if( self::$exporttype == 'user' ) {
 	 		$zipname = 'oc_export_' . self::$uid . '_' . date("y-m-d_H-i-s") . '.zip';
 	 	} else {
 	 		$zipname = 'oc_export_' . self::$exporttype . '_' . date("y-m-d_H-i-s") . '.zip';
 	 	}
 	 	// Calculate path
-	 	if( self::$exporttype == 'user' ){
+	 	if( self::$exporttype == 'user' ) {
 	 		self::$zippath = $datadir . '/' . self::$uid . '/' . $zipname;
 	 	} else {
-	 		if( !is_null( $path ) ){
+	 		if( !is_null( $path ) ) {
 	 			// Validate custom path
-	 			if( !file_exists( $path ) || !is_writeable( $path ) ){
+	 			if( !file_exists( $path ) || !is_writeable( $path ) ) {
 	 				OC_Log::write( 'migration', 'Path supplied is invalid.', OC_Log::ERROR );
 	 				return json_encode( array( 'success' => false ) );
 	 			}
@@ -124,17 +124,17 @@ class OC_Migrate{
 	 		}
 	 	}
 	 	// Create the zip object
-	 	if( !self::createZip() ){
+	 	if( !self::createZip() ) {
 	 		return json_encode( array( 'success' => false ) );
 	 	}
 	 	// Do the export
 	 	self::findProviders();
 	 	$exportdata = array();
-	 	switch( self::$exporttype ){
+	 	switch( self::$exporttype ) {
 	 		case 'user':
 	 			// Connect to the db
 	 			self::$dbpath = $datadir . '/' . self::$uid . '/migration.db';
-	 			if( !self::connectDB() ){
+	 			if( !self::connectDB() ) {
 	 				return json_encode( array( 'success' => false ) );
 	 			}
 	 			self::$content = new OC_Migration_Content( self::$zip, self::$MDB2 );
@@ -158,14 +158,14 @@ class OC_Migrate{
 				// Add the export to the zip
 				self::$content->addFromString( $dbexport, "dbexport.xml" );
 				// Add user data
-				foreach(OC_User::getUsers() as $user){
+				foreach(OC_User::getUsers() as $user) {
 					self::$content->addDir(OC_User::getHome($user), true, "/userdata/" );
 				}
 			break;
 			case 'userfiles':
 				self::$content = new OC_Migration_Content( self::$zip );
 				// Creates a zip with all of the users files
-				foreach(OC_User::getUsers() as $user){
+				foreach(OC_User::getUsers() as $user) {
 					self::$content->addDir(OC_User::getHome($user), true, "/" );
 				}
 			break;
@@ -178,12 +178,12 @@ class OC_Migrate{
 				}
 			break;
 	 	}
-	 	if( !$info = self::getExportInfo( $exportdata ) ){
+	 	if( !$info = self::getExportInfo( $exportdata ) ) {
 	 		return json_encode( array( 'success' => false ) );
 	 	}
 	 	// Add the export info json to the export zip
 	 	self::$content->addFromString( $info, 'export_info.json' );
-	 	if( !self::$content->finish() ){
+	 	if( !self::$content->finish() ) {
 	 		return json_encode( array( 'success' => false ) );
 	 	}
 	 	return json_encode( array( 'success' => true, 'data' => self::$zippath ) );
@@ -195,22 +195,22 @@ class OC_Migrate{
 	* @param optional $type type of import (user or instance)
 	* @param optional $uid userid of new user
 	*/
-	public static function import( $path, $type='user', $uid=null ){
-		
+	public static function import( $path, $type='user', $uid=null ) {
+
 		$datadir = OC_Config::getValue( 'datadirectory' );
 		// Extract the zip
-		if( !$extractpath = self::extractZip( $path ) ){
+		if( !$extractpath = self::extractZip( $path ) ) {
 			return json_encode( array( 'success' => false ) );
 		}
 		// Get export_info.json
 		$scan = scandir( $extractpath );
 		// Check for export_info.json
-		if( !in_array( 'export_info.json', $scan ) ){
+		if( !in_array( 'export_info.json', $scan ) ) {
 			OC_Log::write( 'migration', 'Invalid import file, export_info.json note found', OC_Log::ERROR );
 			return json_encode( array( 'success' => false ) );
 		}
 		$json = json_decode( file_get_contents( $extractpath . 'export_info.json' ) );
-		if( $json->exporttype != $type ){
+		if( $json->exporttype != $type ) {
 			OC_Log::write( 'migration', 'Invalid import file', OC_Log::ERROR );
 			return json_encode( array( 'success' => false ) );
 		}
@@ -219,37 +219,37 @@ class OC_Migrate{
 		$currentuser = OC_User::getUser();
 
 		// Have we got a user if type is user
-		if( self::$exporttype == 'user' ){
+		if( self::$exporttype == 'user' ) {
 			self::$uid = !is_null($uid) ? $uid : $currentuser;
 		}
-		
+
 		// We need to be an admin if we are not importing our own data
-		if(($type == 'user' && self::$uid != $currentuser) || $type != 'user' ){
-			if( !OC_Group::inGroup( OC_User::getUser(), 'admin' )){
+		if(($type == 'user' && self::$uid != $currentuser) || $type != 'user' ) {
+			if( !OC_Group::inGroup( OC_User::getUser(), 'admin' )) {
 				// Naughty.
 				OC_Log::write( 'migration', 'Import not permitted.', OC_Log::ERROR );
-				return json_encode( array( 'success' => false ) ); 	
+				return json_encode( array( 'success' => false ) );
 			}
 		}
 
 		// Handle export types
-		switch( self::$exporttype ){
+		switch( self::$exporttype ) {
 			case 'user':
 				// Check user availability
-				if( !OC_User::userExists( self::$uid ) ){
+				if( !OC_User::userExists( self::$uid ) ) {
 					OC_Log::write( 'migration', 'User doesn\'t exist', OC_Log::ERROR );
 					return json_encode( array( 'success' => false ) );
 				}
 				// Copy data
-				if( !self::copy_r( $extractpath . $json->exporteduser, $datadir . '/' . self::$uid ) ){
+				if( !self::copy_r( $extractpath . $json->exporteduser, $datadir . '/' . self::$uid ) ) {
 					return json_encode( array( 'success' => false ) );
 				}
 				// Import user app data
-				if( !$appsimported = self::importAppData( $extractpath . $json->exporteduser . '/migration.db', $json, self::$uid ) ){
+				if( !$appsimported = self::importAppData( $extractpath . $json->exporteduser . '/migration.db', $json, self::$uid ) ) {
 					return json_encode( array( 'success' => false ) );
 				}
 				// All done!
-				if( !self::unlink_r( $extractpath ) ){
+				if( !self::unlink_r( $extractpath ) ) {
 					OC_Log::write( 'migration', 'Failed to delete the extracted zip', OC_Log::ERROR );
 				}
 				return json_encode( array( 'success' => true, 'data' => $appsimported ) );
@@ -262,19 +262,19 @@ class OC_Migrate{
 
 					// Delete current data folder.
 					OC_Log::write( 'migration', "Deleting current data dir", OC_Log::INFO );
-					if( !self::unlink_r( $datadir, false ) ){
+					if( !self::unlink_r( $datadir, false ) ) {
 						OC_Log::write( 'migration', 'Failed to delete the current data dir', OC_Log::ERROR );
 						return json_encode( array( 'success' => false ) );
 					}
 
 					// Copy over data
-					if( !self::copy_r( $extractpath . 'userdata', $datadir ) ){
+					if( !self::copy_r( $extractpath . 'userdata', $datadir ) ) {
 						OC_Log::write( 'migration', 'Failed to copy over data directory', OC_Log::ERROR );
 						return json_encode( array( 'success' => false ) );
 					}
 
 					// Import the db
-					if( !OC_DB::replaceDB( $extractpath . 'dbexport.xml' ) ){
+					if( !OC_DB::replaceDB( $extractpath . 'dbexport.xml' ) ) {
 						return json_encode( array( 'success' => false ) );
 					}
 					// Done
@@ -291,15 +291,15 @@ class OC_Migrate{
 	* $param optional $deleteRootToo bool delete the root directory
 	* @return bool
 	*/
-	private static function unlink_r( $dir, $deleteRootToo=true ){
-		if( !$dh = @opendir( $dir ) ){
+	private static function unlink_r( $dir, $deleteRootToo=true ) {
+		if( !$dh = @opendir( $dir ) ) {
 			return false;
 		}
-		while (false !== ($obj = readdir($dh))){
+		while (false !== ($obj = readdir($dh))) {
 			if($obj == '.' || $obj == '..') {
 				continue;
 			}
-			if (!@unlink($dir . '/' . $obj)){
+			if (!@unlink($dir . '/' . $obj)) {
 				self::unlink_r($dir.'/'.$obj, true);
 			}
 		}
@@ -316,16 +316,16 @@ class OC_Migrate{
 	* @param $dest string path to destination
 	* @return bool
 	*/
-	private static function copy_r( $path, $dest ){
-		if( is_dir($path) ){
+	private static function copy_r( $path, $dest ) {
+		if( is_dir($path) ) {
 			@mkdir( $dest );
 			$objects = scandir( $path );
-			if( sizeof( $objects ) > 0 ){
-				foreach( $objects as $file ){
+			if( sizeof( $objects ) > 0 ) {
+				foreach( $objects as $file ) {
 					if( $file == "." || $file == ".." || $file == ".htaccess")
 					continue;
 					// go on
-					if( is_dir( $path . '/' . $file ) ){
+					if( is_dir( $path . '/' . $file ) ) {
 						self::copy_r( $path  .'/' . $file, $dest . '/' . $file );
 					} else {
 						copy( $path . '/' . $file, $dest . '/' . $file );
@@ -334,7 +334,7 @@ class OC_Migrate{
 			}
 			return true;
 		}
-		elseif( is_file( $path ) ){
+		elseif( is_file( $path ) ) {
 			return copy( $path, $dest );
 		} else {
 			return false;
@@ -346,10 +346,10 @@ class OC_Migrate{
 	* @param $path string path to the zip
 	* @return string path to extract location (with a trailing slash) or false on failure
 	*/
-	static private function extractZip( $path ){
+	static private function extractZip( $path ) {
 		self::$zip = new ZipArchive;
 		// Validate path
-	 	if( !file_exists( $path ) ){
+	 	if( !file_exists( $path ) ) {
 	 		OC_Log::write( 'migration', 'Zip not found', OC_Log::ERROR );
 	 		return false;
 	 	}
@@ -358,7 +358,7 @@ class OC_Migrate{
 			return false;
 		}
 		$to = get_temp_dir() . '/oc_import_' . self::$exporttype . '_' . date("y-m-d_H-i-s") . '/';
-		if( !self::$zip->extractTo( $to ) ){
+		if( !self::$zip->extractTo( $to ) ) {
 			return false;
 		}
 		self::$zip->close();
@@ -369,14 +369,14 @@ class OC_Migrate{
 	 * @brief connects to a MDB2 database scheme
 	 * @returns bool
 	 */
-	static private function connectScheme(){
+	static private function connectScheme() {
 		// We need a mdb2 database connection
 		self::$MDB2->loadModule( 'Manager' );
 		self::$MDB2->loadModule( 'Reverse' );
 
 		// Connect if this did not happen before
-		if( !self::$schema ){
-			require_once('MDB2/Schema.php');
+		if( !self::$schema ) {
+			require_once 'MDB2/Schema.php';
 			self::$schema=MDB2_Schema::factory( self::$MDB2 );
 		}
 
@@ -387,23 +387,23 @@ class OC_Migrate{
 	 * @brief creates a migration.db in the users data dir with their app data in
 	 * @return bool whether operation was successfull
 	 */
-	private static function exportAppData( ){
+	private static function exportAppData( ) {
 
 		$success = true;
 		$return = array();
 
 		// Foreach provider
-		foreach( self::$providers as $provider ){
+		foreach( self::$providers as $provider ) {
 			// Check if the app is enabled
-			if( OC_App::isEnabled( $provider->getID() ) ){
+			if( OC_App::isEnabled( $provider->getID() ) ) {
 				$success = true;
 				// Does this app use the database?
-				if( file_exists( OC_App::getAppPath($provider->getID()).'/appinfo/database.xml' ) ){
+				if( file_exists( OC_App::getAppPath($provider->getID()).'/appinfo/database.xml' ) ) {
 					// Create some app tables
 					$tables = self::createAppTables( $provider->getID() );
-					if( is_array( $tables ) ){
+					if( is_array( $tables ) ) {
 						// Save the table names
-						foreach($tables as $table){
+						foreach($tables as $table) {
 							$return['apps'][$provider->getID()]['tables'][] = $table;
 						}
 					} else {
@@ -411,9 +411,9 @@ class OC_Migrate{
 						$success = false;
 					}
 				}
-	
+
 				// Run the export function?
-				if( $success ){
+				if( $success ) {
 					// Set the provider properties
 					$provider->setData( self::$uid, self::$content );
 					$return['apps'][$provider->getID()]['success'] = $provider->export();
@@ -421,7 +421,7 @@ class OC_Migrate{
 					$return['apps'][$provider->getID()]['success'] = false;
 					$return['apps'][$provider->getID()]['message'] = 'failed to create the app tables';
 				}
-	
+
 				// Now add some app info the the return array
 				$appinfo = OC_App::getAppInfo( $provider->getID() );
 				$return['apps'][$provider->getID()]['version'] = OC_App::getAppVersion($provider->getID());
@@ -438,7 +438,7 @@ class OC_Migrate{
 	 * @param optional $array array of data to include in the returned json
 	 * @return bool
 	 */
-	static private function getExportInfo( $array=array() ){
+	static private function getExportInfo( $array=array() ) {
 		$info = array(
 						'ocversion' => OC_Util::getVersion(),
 						'exporttime' => time(),
@@ -447,7 +447,7 @@ class OC_Migrate{
 						'exporteduser' => self::$uid
 					);
 
-		if( !is_array( $array ) ){
+		if( !is_array( $array ) ) {
 			OC_Log::write( 'migration', 'Supplied $array was not an array in getExportInfo()', OC_Log::ERROR );
 		}
 		// Merge in other data
@@ -462,23 +462,23 @@ class OC_Migrate{
 	 * @param $db optional path to migration.db, defaults to user data dir
 	 * @return bool whether the operation was successful
 	 */
-	static private function connectDB( $path=null ){
+	static private function connectDB( $path=null ) {
 		// Has the dbpath been set?
 		self::$dbpath = !is_null( $path ) ? $path : self::$dbpath;
-		if( !self::$dbpath ){
+		if( !self::$dbpath ) {
 			OC_Log::write( 'migration', 'connectDB() was called without dbpath being set', OC_Log::ERROR );
 			return false;
 		}
 		// Already connected
-		if(!self::$MDB2){
-			require_once('MDB2.php');
+		if(!self::$MDB2) {
+			require_once 'MDB2.php';
 
 			$datadir = OC_Config::getValue( "datadirectory", OC::$SERVERROOT."/data" );
 
 			// DB type
-			if( class_exists( 'SQLite3' ) ){
+			if( class_exists( 'SQLite3' ) ) {
 				$dbtype = 'sqlite3';
-			} else if( is_callable( 'sqlite_open' ) ){
+			} else if( is_callable( 'sqlite_open' ) ) {
 				$dbtype = 'sqlite';
 			} else {
 				OC_Log::write( 'migration', 'SQLite not found', OC_Log::ERROR );
@@ -502,7 +502,7 @@ class OC_Migrate{
 			// Try to establish connection
 			self::$MDB2 = MDB2::factory( $dsn, $options );
 			// Die if we could not connect
-			if( PEAR::isError( self::$MDB2 ) ){
+			if( PEAR::isError( self::$MDB2 ) ) {
 				die( self::$MDB2->getMessage() );
 				OC_Log::write( 'migration', 'Failed to create/connect to migration.db', OC_Log::FATAL );
 				OC_Log::write( 'migration', self::$MDB2->getUserInfo(), OC_Log::FATAL );
@@ -521,9 +521,9 @@ class OC_Migrate{
 	 * @param $appid string id of the app
 	 * @return bool whether the operation was successful
 	 */
-	static private function createAppTables( $appid ){
+	static private function createAppTables( $appid ) {
 
-		if( !self::connectScheme() ){
+		if( !self::connectScheme() ) {
 			return false;
 		}
 
@@ -538,7 +538,7 @@ class OC_Migrate{
 		$content = str_replace( '*dbprefix*', '', $content );
 
 		$xml = new SimpleXMLElement($content);
-		foreach($xml->table as $table){
+		foreach($xml->table as $table) {
 			$tables[] = (string)$table->name;
 		}
 
@@ -550,7 +550,7 @@ class OC_Migrate{
 		unlink( $file2 );
 
 		// Die in case something went wrong
-		if( $definition instanceof MDB2_Schema_Error ){
+		if( $definition instanceof MDB2_Schema_Error ) {
 			OC_Log::write( 'migration', 'Failed to parse database.xml for: '.$appid, OC_Log::FATAL );
 			OC_Log::write( 'migration', $definition->getMessage().': '.$definition->getUserInfo(), OC_Log::FATAL );
 			return false;
@@ -561,7 +561,7 @@ class OC_Migrate{
 		$ret = self::$schema->createDatabase( $definition );
 
 		// Die in case something went wrong
-		if( $ret instanceof MDB2_Error ){
+		if( $ret instanceof MDB2_Error ) {
 			OC_Log::write( 'migration', 'Failed to create tables for: '.$appid, OC_Log::FATAL );
 			OC_Log::write( 'migration', $ret->getMessage().': '.$ret->getUserInfo(), OC_Log::FATAL );
 			return false;
@@ -575,10 +575,10 @@ class OC_Migrate{
 	* @param $path string path to zip destination
 	* @return bool
 	*/
-	static private function createZip(){
+	static private function createZip() {
 		self::$zip = new ZipArchive;
 		// Check if properties are set
-		if( !self::$zippath ){
+		if( !self::$zippath ) {
 			OC_Log::write('migration', 'createZip() called but $zip and/or $zippath have not been set', OC_Log::ERROR);
 			return false;
 		}
@@ -594,11 +594,11 @@ class OC_Migrate{
 	* @brief returns an array of apps that support migration
 	* @return array
 	*/
-	static public function getApps(){
+	static public function getApps() {
 		$allapps = OC_App::getAllApps();
-		foreach($allapps as $app){
+		foreach($allapps as $app) {
 			$path = self::getAppPath($app) . '/lib/migrate.php';
-			if( file_exists( $path ) ){
+			if( file_exists( $path ) ) {
 				$supportsmigration[] = $app;
 			}
 		}
@@ -612,11 +612,11 @@ class OC_Migrate{
 	* @param $uid optional uid to use
 	* @return array of apps with import statuses, or false on failure.
 	*/
-	public static function importAppData( $db, $info, $uid=null ){
+	public static function importAppData( $db, $info, $uid=null ) {
 		// Check if the db exists
-		if( file_exists( $db ) ){
+		if( file_exists( $db ) ) {
 			// Connect to the db
-			if(!self::connectDB( $db )){
+			if(!self::connectDB( $db )) {
 				OC_Log::write('migration','Failed to connect to migration.db',OC_Log::ERROR);
 				return false;
 			}
@@ -634,25 +634,25 @@ class OC_Migrate{
 							'newuid' => self::$uid
 							);
 
-		foreach( self::$providers as $provider){
+		foreach( self::$providers as $provider) {
 			// Is the app in the export?
 			$id = $provider->getID();
-			if( isset( $info->apps->$id ) ){
+			if( isset( $info->apps->$id ) ) {
 				// Is the app installed
-				if( !OC_App::isEnabled( $id ) ){
+				if( !OC_App::isEnabled( $id ) ) {
 					OC_Log::write( 'migration', 'App: ' . $id . ' is not installed, can\'t import data.', OC_Log::INFO );
 					$appsstatus[$id] = 'notsupported';
 				} else {
 					// Did it succeed on export?
-					if( $info->apps->$id->success ){
+					if( $info->apps->$id->success ) {
 						// Give the provider the content object
-						if( !self::connectDB( $db ) ){
+						if( !self::connectDB( $db ) ) {
 							return false;
 						}
 						$content = new OC_Migration_Content( self::$zip, self::$MDB2 );
 						$provider->setData( self::$uid, $content, $info );
 						// Then do the import
-						if( !$appsstatus[$id] = $provider->import( $info->apps->$id, $importinfo ) ){
+						if( !$appsstatus[$id] = $provider->import( $info->apps->$id, $importinfo ) ) {
 							// Failed to import app
 							OC_Log::write( 'migration', 'Failed to import app data for user: ' . self::$uid . ' for app: ' . $id, OC_Log::ERROR );
 						}
@@ -674,17 +674,17 @@ class OC_Migrate{
 	* @param $hash string hash of the user to be created
 	* @return bool result of user creation
 	*/
-	public static function createUser( $uid, $hash ){
+	public static function createUser( $uid, $hash ) {
 
 		// Check if userid exists
-		if(OC_User::userExists( $uid )){
+		if(OC_User::userExists( $uid )) {
 			return false;
 		}
 
 		// Create the user
 		$query = OC_DB::prepare( "INSERT INTO `*PREFIX*users` ( `uid`, `password` ) VALUES( ?, ? )" );
 		$result = $query->execute( array( $uid, $hash));
-		if( !$result ){
+		if( !$result ) {
 			OC_Log::write('migration', 'Failed to create the new user "'.$uid."");
 		}
 		return $result ? true : false;
diff --git a/lib/migration/content.php b/lib/migration/content.php
index 5c89e6bacd66d4b08794350e365303927ba0529c..64b8168cd98fe4029340484fb9f7bf61f990c3b2 100644
--- a/lib/migration/content.php
+++ b/lib/migration/content.php
@@ -25,42 +25,42 @@
  * provides methods to add and access data from the migration
  */
 class OC_Migration_Content{
-	
+
 	private $zip=false;
 	// Holds the MDB2 object
 	private $db=null;
 	// Holds an array of tmpfiles to delete after zip creation
 	private $tmpfiles=false;
-	
+
 	/**
 	* @brief sets up the
 	* @param $zip ZipArchive object
 	* @param optional $db a MDB2 database object (required for exporttype user)
 	* @return bool
 	*/
-	public function __construct( $zip, $db=null ){
+	public function __construct( $zip, $db=null ) {
 
 		$this->zip = $zip;
 		$this->db = $db;
-		
-		if( !is_null( $db ) ){
+
+		if( !is_null( $db ) ) {
 			// Get db path
 			$db = $this->db->getDatabase();
 			$this->tmpfiles[] = $db;
 		}
-		
+
 	}
-	
+
 	// @brief prepares the db
 	// @param $query the sql query to prepare
-	public function prepare( $query ){
-		
+	public function prepare( $query ) {
+
 		// Optimize the query
 		$query = $this->processQuery( $query );
-		
+
 		// Optimize the query
 		$query = $this->db->prepare( $query );
-		
+
 		// Die if we have an error (error means: bad query, not 0 results!)
 		if( PEAR::isError( $query ) ) {
 			$entry = 'DB Error: "'.$result->getMessage().'"<br />';
@@ -68,17 +68,17 @@ class OC_Migration_Content{
 			OC_Log::write( 'migration', $entry, OC_Log::FATAL );
 			return false;
 		} else {
-			return $query;	
+			return $query;
 		}
-		
+
 	}
-	
+
 	/**
 	* @brief processes the db query
 	* @param $query the query to process
 	* @return string of processed query
 	*/
-	private function processQuery( $query ){
+	private function processQuery( $query ) {
 		$query = str_replace( '`', '\'', $query );
 		$query = str_replace( 'NOW()', 'datetime(\'now\')', $query );
 		$query = str_replace( 'now()', 'datetime(\'now\')', $query );
@@ -86,28 +86,28 @@ class OC_Migration_Content{
 		$query = str_replace( '*PREFIX*', '', $query );
 		return $query;
 	}
-	
+
 	/**
 	* @brief copys rows to migration.db from the main database
 	* @param $options array of options.
 	* @return bool
 	*/
-	public function copyRows( $options ){
-		if( !array_key_exists( 'table', $options ) ){
-			return false;	
+	public function copyRows( $options ) {
+		if( !array_key_exists( 'table', $options ) ) {
+			return false;
 		}
-		
+
 		$return = array();
-					
+
 		// Need to include 'where' in the query?
-		if( array_key_exists( 'matchval', $options ) && array_key_exists( 'matchcol', $options ) ){
-			
+		if( array_key_exists( 'matchval', $options ) && array_key_exists( 'matchcol', $options ) ) {
+
 			// If only one matchval, create an array
-			if(!is_array($options['matchval'])){
-				$options['matchval'] = array( $options['matchval'] );	
+			if(!is_array($options['matchval'])) {
+				$options['matchval'] = array( $options['matchval'] );
 			}
-			
-			foreach( $options['matchval'] as $matchval ){
+
+			foreach( $options['matchval'] as $matchval ) {
 				// Run the query for this match value (where x = y value)
 				$sql = 'SELECT * FROM `*PREFIX*' . $options['table'] . '` WHERE `' . $options['matchcol'] . '` LIKE ?';
 				$query = OC_DB::prepare( $sql );
@@ -122,29 +122,29 @@ class OC_Migration_Content{
 			$query = OC_DB::prepare( $sql );
 			$results = $query->execute();
 			$return = $this->insertData( $results, $options );
-	
+
 		}
-		
+
 		return $return;
-		
+
 	}
-	
+
 	/**
 	* @brief saves a sql data set into migration.db
 	* @param $data a sql data set returned from self::prepare()->query()
 	* @param $options array of copyRows options
 	* @return void
 	*/
-	private function insertData( $data, $options ){
+	private function insertData( $data, $options ) {
 		$return = array();
 		// Foreach row of data to insert
-		while( $row = $data->fetchRow() ){
+		while( $row = $data->fetchRow() ) {
 			// Now save all this to the migration.db
-			foreach($row as $field=>$value){
+			foreach($row as $field=>$value) {
 				$fields[] = $field;
 				$values[] = $value;
 			}
-			
+
 			// Generate some sql
 			$sql = "INSERT INTO `" . $options['table'] . '` ( `';
 			$fieldssql = implode( '`, `', $fields );
@@ -153,19 +153,19 @@ class OC_Migration_Content{
 			$sql .= $valuessql . " )";
 			// Make the query
 			$query = $this->prepare( $sql );
-			if( !$query ){
-				OC_Log::write( 'migration', 'Invalid sql produced: '.$sql, OC_Log::FATAL );	
+			if( !$query ) {
+				OC_Log::write( 'migration', 'Invalid sql produced: '.$sql, OC_Log::FATAL );
 				return false;
 				exit();
 			} else {
 				$query->execute( $values );
 				// Do we need to return some values?
-				if( array_key_exists( 'idcol', $options ) ){
+				if( array_key_exists( 'idcol', $options ) ) {
 					// Yes we do
-					$return[] = $row[$options['idcol']];	
+					$return[] = $row[$options['idcol']];
 				} else {
 					// Take a guess and return the first field :)
-					$return[] = reset($row);	
+					$return[] = reset($row);
 				}
 			}
 			$fields = '';
@@ -173,11 +173,11 @@ class OC_Migration_Content{
 		}
 		return $return;
 	}
-	
+
 	/**
 	* @brief adds a directory to the zip object
 	* @param $dir string path of the directory to add
-	* @param $recursive bool 
+	* @param $recursive bool
 	* @param $internaldir string path of folder to add dir to in zip
 	* @return bool
 	*/
@@ -185,14 +185,14 @@ class OC_Migration_Content{
 	    $dirname = basename($dir);
 	    $this->zip->addEmptyDir($internaldir . $dirname);
 	    $internaldir.=$dirname.='/';
-		if( !file_exists( $dir ) ){
-			return false;	
+		if( !file_exists( $dir ) ) {
+			return false;
 		}
 	    if ($dirhandle = opendir($dir)) {
 			while (false !== ( $file = readdir($dirhandle))) {
-	
+
 				if (( $file != '.' ) && ( $file != '..' )) {
-		
+
 					if (is_dir($dir . '/' . $file) && $recursive) {
 						$this->addDir($dir . '/' . $file, $recursive, $internaldir);
 					} elseif (is_file($dir . '/' . $file)) {
@@ -207,46 +207,46 @@ class OC_Migration_Content{
 	    }
 	    return true;
 	}
-	
+
 	/**
 	* @brief adds a file to the zip from a given string
 	* @param $data string of data to add
 	* @param $path the relative path inside of the zip to save the file to
 	* @return bool
 	*/
-	public function addFromString( $data, $path ){
+	public function addFromString( $data, $path ) {
 		// Create a temp file
 		$file = tempnam( get_temp_dir(). '/', 'oc_export_tmp_' );
 		$this->tmpfiles[] = $file;
-		if( !file_put_contents( $file, $data ) ){
+		if( !file_put_contents( $file, $data ) ) {
 			OC_Log::write( 'migation', 'Failed to save data to a temporary file', OC_Log::ERROR );
-			return false;	
+			return false;
 		}
 		// Add file to the zip
 		$this->zip->addFile( $file, $path );
 		return true;
 	}
-	
+
 	/**
 	* @brief closes the zip, removes temp files
 	* @return bool
 	*/
-	public function finish(){
-		if( !$this->zip->close() ){
+	public function finish() {
+		if( !$this->zip->close() ) {
 			OC_Log::write( 'migration', 'Failed to write the zip file with error: '.$this->zip->getStatusString(), OC_Log::ERROR );
-			return false;	
+			return false;
 		}
 		$this->cleanup();
-		return true;	
-	}	
-	
+		return true;
+	}
+
 		/**
 	* @brief cleans up after the zip
 	*/
-	private function cleanup(){
+	private function cleanup() {
 		// Delete tmp files
-		foreach($this->tmpfiles as $i){
-			unlink( $i );	
-		}	
+		foreach($this->tmpfiles as $i) {
+			unlink( $i );
+		}
 	}
 }
diff --git a/lib/migration/provider.php b/lib/migration/provider.php
index 91336f3019d178063d1399e22290e594f60c3252..234ab3351f37ad73545109601cd8d10f829dbaf2 100644
--- a/lib/migration/provider.php
+++ b/lib/migration/provider.php
@@ -3,50 +3,50 @@
  * provides search functionalty
  */
 abstract class OC_Migration_Provider{
-	
+
 	protected $id=false;
-	protected $content=false; 
+	protected $content=false;
 	protected $uid=false;
 	protected $olduid=false;
 	protected $appinfo=false;
-	
-	public function __construct( $appid ){
+
+	public function __construct( $appid ) {
 		// Set the id
 		$this->id = $appid;
 		OC_Migrate::registerProvider( $this );
 	}
-	
+
 	/**
 	 * @brief exports data for apps
 	 * @return array appdata to be exported
 	 */
 	abstract function export( );
-	
+
 	/**
 	 * @brief imports data for the app
 	 * @return void
 	 */
 	abstract function import( );
-	
+
 	/**
 	* @brief sets the OC_Migration_Content object to $this->content
 	* @param $content a OC_Migration_Content object
 	*/
-	public function setData( $uid, $content, $info=null ){
-		$this->content = $content;	
+	public function setData( $uid, $content, $info=null ) {
+		$this->content = $content;
 		$this->uid = $uid;
 		$id = $this->id;
-		if( !is_null( $info ) ){
+		if( !is_null( $info ) ) {
 			$this->olduid = $info->exporteduser;
 			$this->appinfo = $info->apps->$id;
 		}
 	}
-	 	
+
 	/**
 	* @brief returns the appid of the provider
 	* @return string
 	*/
-	public function getID(){
-		return $this->id;	
+	public function getID() {
+		return $this->id;
 	}
 }
diff --git a/lib/minimizer.php b/lib/minimizer.php
index 3dc89e331a648f0498ab33b187052f0fc2fc1b59..d50ab0d239727dd0bede72ce278f3b6f91c31130 100644
--- a/lib/minimizer.php
+++ b/lib/minimizer.php
@@ -1,16 +1,15 @@
 <?php
 
 abstract class OC_Minimizer {
-	public function getLastModified($files) {
-		$last_modified = 0;
+	public function generateETag($files) {
+		$etag = '';
+		sort($files);
 		foreach($files as $file_info) {
 			$file = $file_info[0] . '/' . $file_info[2];
-			$filemtime = filemtime($file);
-			if ($filemtime > $last_modified) {
-				$last_modified = $filemtime;
-			}
+			$stat = stat($file);
+			$etag .= $file.$stat['mtime'].$stat['size'];
 		}
-		return $last_modified;
+		return md5($etag);
 	}
 
 	abstract public function minimizeFiles($files);
@@ -18,23 +17,21 @@ abstract class OC_Minimizer {
 	public function output($files, $cache_key) {
 		header('Content-Type: '.$this->contentType);
 		OC_Response::enableCaching();
-		$last_modified = $this->getLastModified($files);
-		OC_Response::setLastModifiedHeader($last_modified);
+		$etag = $this->generateETag($files);
+		$cache_key .= '-'.$etag;
 
 		$gzout = false;
 		$cache = OC_Cache::getGlobalCache();
-		if (!OC_Request::isNoCache() && (!defined('DEBUG') || !DEBUG)){
+		if (!OC_Request::isNoCache() && (!defined('DEBUG') || !DEBUG)) {
+			OC_Response::setETagHeader($etag);
 			$gzout = $cache->get($cache_key.'.gz');
-			if ($gzout) {
-				OC_Response::setETagHeader(md5($gzout));
-			}
 		}
 
 		if (!$gzout) {
 			$out = $this->minimizeFiles($files);
 			$gzout = gzencode($out);
-			OC_Response::setETagHeader(md5($gzout));
 			$cache->set($cache_key.'.gz', $gzout);
+			OC_Response::setETagHeader($etag);
 		}
 		if ($encoding = OC_Request::acceptGZip()) {
 			header('Content-Encoding: '.$encoding);
@@ -45,6 +42,12 @@ abstract class OC_Minimizer {
 		header('Content-Length: '.strlen($out));
 		echo $out;
 	}
+
+	public function clearCache() {
+		$cache = OC_Cache::getGlobalCache();
+		$cache->clear('core.css');
+		$cache->clear('core.js');
+	}
 }
 
 if (!function_exists('gzdecode')) {
diff --git a/lib/minimizer/css.php b/lib/minimizer/css.php
index 110935ea3b736048a011a32fb37e66f4953bb4c9..8d130572e2b4c114492f8712dc7ae4f569569e86 100644
--- a/lib/minimizer/css.php
+++ b/lib/minimizer/css.php
@@ -1,6 +1,6 @@
 <?php
 
-require_once('mediawiki/CSSMin.php');
+require_once 'mediawiki/CSSMin.php';
 
 class OC_Minimizer_CSS extends OC_Minimizer
 {
@@ -16,7 +16,7 @@ class OC_Minimizer_CSS extends OC_Minimizer
 
 			$in_root = false;
 			foreach(OC::$APPSROOTS as $app_root) {
-				if(strpos($file, $app_root['path']) === 0) {
+				if(strpos($file, $app_root['path'].'/') === 0) {
 					$in_root = rtrim($webroot.$app_root['url'], '/');
 					break;
 				}
@@ -30,7 +30,7 @@ class OC_Minimizer_CSS extends OC_Minimizer
 			$remote .= dirname($file_info[2]);
 			$css_out .= CSSMin::remap($css, dirname($file), $remote, true);
 		}
-		if (!defined('DEBUG') || !DEBUG){
+		if (!defined('DEBUG') || !DEBUG) {
 			$css_out = CSSMin::minify($css_out);
 		}
 		return $css_out;
diff --git a/lib/minimizer/js.php b/lib/minimizer/js.php
index 0f5cb7e5577f4bec2659bda44cf1de735cc87fb5..bd2d836deb084b4466c2de36f49723159216d4ce 100644
--- a/lib/minimizer/js.php
+++ b/lib/minimizer/js.php
@@ -1,6 +1,6 @@
 <?php
 
-require_once('mediawiki/JavaScriptMinifier.php');
+require_once 'mediawiki/JavaScriptMinifier.php';
 
 class OC_Minimizer_JS extends OC_Minimizer
 {
@@ -13,7 +13,7 @@ class OC_Minimizer_JS extends OC_Minimizer
 			$js_out .= '/* ' . $file . ' */' . "\n";
 			$js_out .= file_get_contents($file);
 		}
-		if (!defined('DEBUG') || !DEBUG){
+		if (!defined('DEBUG') || !DEBUG) {
 			$js_out = JavaScriptMinifier::minify($js_out);
 		}
 		return $js_out;
diff --git a/lib/ocs.php b/lib/ocs.php
index 3157aae99e64739f57158832423648364fb4bfc5..7350c3c88218cb63350c5b4d7293de6082776688 100644
--- a/lib/ocs.php
+++ b/lib/ocs.php
@@ -84,7 +84,7 @@ class OC_OCS {
 			$method='get';
 		}elseif($_SERVER['REQUEST_METHOD'] == 'PUT') {
 			$method='put';
-			parse_str(file_get_contents("php://input"),$put_vars);
+			parse_str(file_get_contents("php://input"), $put_vars);
 		}elseif($_SERVER['REQUEST_METHOD'] == 'POST') {
 			$method='post';
 		}else{
@@ -94,89 +94,89 @@ class OC_OCS {
 
 		// preprocess url
 		$url = strtolower($_SERVER['REQUEST_URI']);
-		if(substr($url,(strlen($url)-1))<>'/') $url.='/';
-		$ex=explode('/',$url);
+		if(substr($url, (strlen($url)-1))<>'/') $url.='/';
+		$ex=explode('/', $url);
 		$paracount=count($ex);
 		$format = self::readData($method, 'format', 'text', '');
 
 		// eventhandler
 		// CONFIG
 		// apiconfig - GET - CONFIG
-		if(($method=='get') and ($ex[$paracount-3] == 'v1.php') and ($ex[$paracount-2] == 'config')){
+		if(($method=='get') and ($ex[$paracount-3] == 'v1.php') and ($ex[$paracount-2] == 'config')) {
 			OC_OCS::apiconfig($format);
 
 		// PERSON
 		// personcheck - POST - PERSON/CHECK
-		}elseif(($method=='post') and ($ex[$paracount-4] == 'v1.php') and ($ex[$paracount-3]=='person') and ($ex[$paracount-2] == 'check')){
+		} elseif(($method=='post') and ($ex[$paracount-4] == 'v1.php') and ($ex[$paracount-3]=='person') and ($ex[$paracount-2] == 'check')) {
 			$login = self::readData($method, 'login', 'text');
 			$passwd = self::readData($method, 'password', 'text');
-			OC_OCS::personcheck($format,$login,$passwd);
+			OC_OCS::personcheck($format, $login, $passwd);
 
 		// ACTIVITY
 		// activityget - GET ACTIVITY   page,pagesize als urlparameter
-		}elseif(($method=='get') and ($ex[$paracount-3] == 'v1.php') and ($ex[$paracount-2] == 'activity')){
+		}elseif(($method=='get') and ($ex[$paracount-3] == 'v1.php') and ($ex[$paracount-2] == 'activity')) {
 			$page = self::readData($method, 'page', 'int', 0);
-			$pagesize = self::readData($method, 'pagesize','int', 10);
+			$pagesize = self::readData($method, 'pagesize', 'int', 10);
 			if($pagesize<1 or $pagesize>100) $pagesize=10;
-			OC_OCS::activityget($format,$page,$pagesize);
+			OC_OCS::activityget($format, $page, $pagesize);
 
 		// activityput - POST ACTIVITY
-		}elseif(($method=='post') and ($ex[$paracount-3] == 'v1.php') and ($ex[$paracount-2] == 'activity')){
+		}elseif(($method=='post') and ($ex[$paracount-3] == 'v1.php') and ($ex[$paracount-2] == 'activity')) {
 			$message = self::readData($method, 'message', 'text');
-			OC_OCS::activityput($format,$message);
+			OC_OCS::activityput($format, $message);
 
 
 		// PRIVATEDATA
 		// get - GET DATA
-		}elseif(($method=='get') and ($ex[$paracount-4] == 'v1.php') and ($ex[$paracount-2] == 'getattribute')){
+		}elseif(($method=='get') and ($ex[$paracount-4] == 'v1.php') and ($ex[$paracount-2] == 'getattribute')) {
 			OC_OCS::privateDataGet($format);
 
-		}elseif(($method=='get') and ($ex[$paracount-5] == 'v1.php') and ($ex[$paracount-3] == 'getattribute')){
+		}elseif(($method=='get') and ($ex[$paracount-5] == 'v1.php') and ($ex[$paracount-3] == 'getattribute')) {
 			$app=$ex[$paracount-2];
 			OC_OCS::privateDataGet($format, $app);
-		}elseif(($method=='get') and ($ex[$paracount-6] == 'v1.php') and ($ex[$paracount-4] == 'getattribute')){
+		}elseif(($method=='get') and ($ex[$paracount-6] == 'v1.php') and ($ex[$paracount-4] == 'getattribute')) {
 
 			$key=$ex[$paracount-2];
 			$app=$ex[$paracount-3];
-			OC_OCS::privateDataGet($format, $app,$key);
+			OC_OCS::privateDataGet($format, $app, $key);
 
 		// set - POST DATA
-		}elseif(($method=='post') and ($ex[$paracount-6] == 'v1.php') and ($ex[$paracount-4] == 'setattribute')){
+		}elseif(($method=='post') and ($ex[$paracount-6] == 'v1.php') and ($ex[$paracount-4] == 'setattribute')) {
 			$key=$ex[$paracount-2];
 			$app=$ex[$paracount-3];
 			$value = self::readData($method, 'value', 'text');
 			OC_OCS::privatedataset($format, $app, $key, $value);
 		// delete - POST DATA
-		}elseif(($method=='post') and ($ex[$paracount-6] =='v1.php') and ($ex[$paracount-4] == 'deleteattribute')){
+		}elseif(($method=='post') and ($ex[$paracount-6] =='v1.php') and ($ex[$paracount-4] == 'deleteattribute')) {
 			$key=$ex[$paracount-2];
 			$app=$ex[$paracount-3];
 			OC_OCS::privatedatadelete($format, $app, $key);
 
 		// CLOUD
-		// systemWebApps 
-		}elseif(($method=='get') and ($ex[$paracount-5] == 'v1.php') and ($ex[$paracount-4]=='cloud') and ($ex[$paracount-3] == 'system') and ($ex[$paracount-2] == 'webapps')){
+		// systemWebApps
+		}elseif(($method=='get') and ($ex[$paracount-5] == 'v1.php') and ($ex[$paracount-4]=='cloud') and ($ex[$paracount-3] == 'system') and ($ex[$paracount-2] == 'webapps')) {
 			OC_OCS::systemwebapps($format);
 
-		// quotaget 
-		}elseif(($method=='get') and ($ex[$paracount-6] == 'v1.php') and ($ex[$paracount-5]=='cloud') and ($ex[$paracount-4] == 'user') and ($ex[$paracount-2] == 'quota')){
+		// quotaget
+		}elseif(($method=='get') and ($ex[$paracount-6] == 'v1.php') and ($ex[$paracount-5]=='cloud') and ($ex[$paracount-4] == 'user') and ($ex[$paracount-2] == 'quota')) {
 			$user=$ex[$paracount-3];
-			OC_OCS::quotaget($format,$user);
+			OC_OCS::quotaget($format, $user);
 
-		// quotaset 
-		}elseif(($method=='post') and ($ex[$paracount-6] == 'v1.php') and ($ex[$paracount-5]=='cloud') and ($ex[$paracount-4] == 'user') and ($ex[$paracount-2] == 'quota')){
+		// quotaset
+		}elseif(($method=='post') and ($ex[$paracount-6] == 'v1.php') and ($ex[$paracount-5]=='cloud') and ($ex[$paracount-4] == 'user') and ($ex[$paracount-2] == 'quota')) {
 			$user=$ex[$paracount-3];
 			$quota = self::readData('post', 'quota', 'int');
-			OC_OCS::quotaset($format,$user,$quota);
+			OC_OCS::quotaset($format, $user, $quota);
 
-		// keygetpublic 
-		}elseif(($method=='get') and ($ex[$paracount-6] == 'v1.php') and ($ex[$paracount-5]=='cloud') and ($ex[$paracount-4] == 'user') and ($ex[$paracount-2] == 'publickey')){
+		// keygetpublic
+		}elseif(($method=='get') and ($ex[$paracount-6] == 'v1.php') and ($ex[$paracount-5]=='cloud') and ($ex[$paracount-4] == 'user') and ($ex[$paracount-2] == 'publickey')) {
 			$user=$ex[$paracount-3];
-			OC_OCS::publicKeyGet($format,$user);
+			OC_OCS::publicKeyGet($format, $user);
 
-		// keygetprivate 
-		}elseif(($method=='get') and ($ex[$paracount-6] == 'v1.php') and ($ex[$paracount-5]=='cloud') and ($ex[$paracount-4] == 'user') and ($ex[$paracount-2] == 'privatekey')){
+		// keygetprivate
+		}elseif(($method=='get') and ($ex[$paracount-6] == 'v1.php') and ($ex[$paracount-5]=='cloud') and ($ex[$paracount-4] == 'user') and ($ex[$paracount-2] == 'privatekey')) {
 			$user=$ex[$paracount-3];
-			OC_OCS::privateKeyGet($format,$user);
+			OC_OCS::privateKeyGet($format, $user);
 
 
 // add more calls here
@@ -196,7 +196,7 @@ class OC_OCS {
 		}else{
 			$txt='Invalid query, please check the syntax. API specifications are here: http://www.freedesktop.org/wiki/Specifications/open-collaboration-services. DEBUG OUTPUT:'."\n";
 			$txt.=OC_OCS::getdebugoutput();
-			echo(OC_OCS::generatexml($format,'failed',999,$txt));
+			echo(OC_OCS::generatexml($format, 'failed', 999, $txt));
 		}
 		exit();
 	}
@@ -229,7 +229,7 @@ class OC_OCS {
 		if(isset($_SERVER['PHP_AUTH_PW']))   $authpw=$_SERVER['PHP_AUTH_PW']; else $authpw='';
 
 		if(empty($authuser)) {
-			if($forceuser){
+			if($forceuser) {
 				header('WWW-Authenticate: Basic realm="your valid user account or api key"');
 				header('HTTP/1.0 401 Unauthorized');
 				exit;
@@ -237,8 +237,8 @@ class OC_OCS {
 				$identifieduser='';
 			}
 		}else{
-			if(!OC_User::login($authuser,$authpw)){
-				if($forceuser){
+			if(!OC_User::login($authuser, $authpw)) {
+				if($forceuser) {
 					header('WWW-Authenticate: Basic realm="your valid user account or api key"');
 					header('HTTP/1.0 401 Unauthorized');
 					exit;
@@ -283,69 +283,69 @@ class OC_OCS {
 			$writer = xmlwriter_open_memory();
 			xmlwriter_set_indent( $writer, 2 );
 			xmlwriter_start_document($writer );
-			xmlwriter_start_element($writer,'ocs');
-			xmlwriter_start_element($writer,'meta');
-			xmlwriter_write_element($writer,'status',$status);
-			xmlwriter_write_element($writer,'statuscode',$statuscode);
-			xmlwriter_write_element($writer,'message',$message);
+			xmlwriter_start_element($writer, 'ocs');
+			xmlwriter_start_element($writer, 'meta');
+			xmlwriter_write_element($writer, 'status', $status);
+			xmlwriter_write_element($writer, 'statuscode', $statuscode);
+			xmlwriter_write_element($writer, 'message', $message);
 			if($itemscount<>'') xmlwriter_write_element($writer,'totalitems',$itemscount);
-			if(!empty($itemsperpage)) xmlwriter_write_element($writer,'itemsperpage',$itemsperpage);
+			if(!empty($itemsperpage)) xmlwriter_write_element($writer, 'itemsperpage', $itemsperpage);
 			xmlwriter_end_element($writer);
 			if($dimension=='0') {
 				// 0 dimensions
-				xmlwriter_write_element($writer,'data',$data);
+				xmlwriter_write_element($writer, 'data', $data);
 
 			}elseif($dimension=='1') {
-				xmlwriter_start_element($writer,'data');
+				xmlwriter_start_element($writer, 'data');
 				foreach($data as $key=>$entry) {
-				xmlwriter_write_element($writer,$key,$entry);
+					xmlwriter_write_element($writer, $key, $entry);
 				}
 				xmlwriter_end_element($writer);
 
 			}elseif($dimension=='2') {
 				xmlwriter_start_element($writer,'data');
 				foreach($data as $entry) {
-				xmlwriter_start_element($writer,$tag);
-				if(!empty($tagattribute)) {
-				xmlwriter_write_attribute($writer,'details',$tagattribute);
-				}
-				foreach($entry as $key=>$value) {
-				if(is_array($value)){
-				foreach($value as $k=>$v) {
-					xmlwriter_write_element($writer,$k,$v);
-				}
-				} else {
-				xmlwriter_write_element($writer,$key,$value);
-				}
-				}
-				xmlwriter_end_element($writer);
-				}
+					xmlwriter_start_element($writer, $tag);
+					if(!empty($tagattribute)) {
+						xmlwriter_write_attribute($writer, 'details', $tagattribute);
+					}
+					foreach($entry as $key=>$value) {
+						if(is_array($value)) {
+							foreach($value as $k=>$v) {
+								xmlwriter_write_element($writer, $k, $v);
+							}
+						} else {
+							xmlwriter_write_element($writer, $key, $value);
+						}
+					}
+					xmlwriter_end_element($writer);
+					}
 				xmlwriter_end_element($writer);
 
 			}elseif($dimension=='3') {
-				xmlwriter_start_element($writer,'data');
+				xmlwriter_start_element($writer, 'data');
 				foreach($data as $entrykey=>$entry) {
-				xmlwriter_start_element($writer,$tag);
-				if(!empty($tagattribute)) {
-				xmlwriter_write_attribute($writer,'details',$tagattribute);
-				}
-				foreach($entry as $key=>$value) {
-				if(is_array($value)){
-				xmlwriter_start_element($writer,$entrykey);
-				foreach($value as $k=>$v) {
-					xmlwriter_write_element($writer,$k,$v);
-				}
-				xmlwriter_end_element($writer);
-				} else {
-				xmlwriter_write_element($writer,$key,$value);
-				}
-				}
-				xmlwriter_end_element($writer);
+					xmlwriter_start_element($writer, $tag);
+					if(!empty($tagattribute)) {
+						xmlwriter_write_attribute($writer, 'details', $tagattribute);
+					}
+					foreach($entry as $key=>$value) {
+						if(is_array($value)) {
+							xmlwriter_start_element($writer, $entrykey);
+							foreach($value as $k=>$v) {
+								xmlwriter_write_element($writer, $k, $v);
+							}
+							xmlwriter_end_element($writer);
+						} else {
+							xmlwriter_write_element($writer, $key, $value);
+						}
+					}
+					xmlwriter_end_element($writer);
 				}
 				xmlwriter_end_element($writer);
 			}elseif($dimension=='dynamic') {
-				xmlwriter_start_element($writer,'data');
-				OC_OCS::toxml($writer,$data,'comment');
+				xmlwriter_start_element($writer, 'data');
+				OC_OCS::toxml($writer, $data, 'comment');
 				xmlwriter_end_element($writer);
 			}
 
@@ -363,19 +363,16 @@ class OC_OCS {
 			if (is_numeric($key)) {
 				$key = $node;
 			}
-			if (is_array($value)){
-				xmlwriter_start_element($writer,$key);
-				OC_OCS::toxml($writer,$value,$node);
+			if (is_array($value)) {
+				xmlwriter_start_element($writer, $key);
+				OC_OCS::toxml($writer,$value, $node);
 				xmlwriter_end_element($writer);
 			}else{
-				xmlwriter_write_element($writer,$key,$value);
+				xmlwriter_write_element($writer, $key, $value);
 			}
 		}
 	}
 
-
-
-
 	/**
 	* return the config data of this server
 	* @param string $format
@@ -383,17 +380,16 @@ class OC_OCS {
 	*/
 	private static function apiConfig($format) {
 		$user=OC_OCS::checkpassword(false);
-		$url=substr(OCP\Util::getServerHost().$_SERVER['SCRIPT_NAME'],0,-11).'';
+		$url=substr(OCP\Util::getServerHost().$_SERVER['SCRIPT_NAME'], 0, -11).'';
 
 		$xml['version']='1.7';
 		$xml['website']='ownCloud';
 		$xml['host']=OCP\Util::getServerHost();
 		$xml['contact']='';
 		$xml['ssl']='false';
-		echo(OC_OCS::generatexml($format,'ok',100,'',$xml,'config','',1));
+		echo(OC_OCS::generatexml($format, 'ok', 100, '', $xml, 'config', '', 1));
 	}
 
-
 	/**
 	* check if the provided login/apikey/password is valid
 	* @param string $format
@@ -402,20 +398,18 @@ class OC_OCS {
 	* @return string xml/json
 	*/
 	private static function personCheck($format,$login,$passwd) {
-		if($login<>''){
-			if(OC_User::login($login,$passwd)){
+		if($login<>'') {
+			if(OC_User::login($login, $passwd)) {
 				$xml['person']['personid']=$login;
-				echo(OC_OCS::generatexml($format,'ok',100,'',$xml,'person','check',2));
+				echo(OC_OCS::generatexml($format, 'ok', 100, '', $xml, 'person', 'check', 2));
 			}else{
-				echo(OC_OCS::generatexml($format,'failed',102,'login not valid'));
+				echo(OC_OCS::generatexml($format, 'failed', 102, 'login not valid'));
 			}
 		}else{
-			echo(OC_OCS::generatexml($format,'failed',101,'please specify all mandatory fields'));
+			echo(OC_OCS::generatexml($format, 'failed', 101, 'please specify all mandatory fields'));
 		}
 	}
 
-
-
 	// ACTIVITY API #############################################
 
 	/**
@@ -425,12 +419,12 @@ class OC_OCS {
 	* @param string $pagesize
 	* @return string xml/json
 	*/
-	private static function activityGet($format,$page,$pagesize) {
+	private static function activityGet($format, $page, $pagesize) {
 		$user=OC_OCS::checkpassword();
 
 			//TODO
 
-		$txt=OC_OCS::generatexml($format,'ok',100,'',$xml,'activity','full',2,$totalcount,$pagesize);
+		$txt=OC_OCS::generatexml($format, 'ok', 100, '', $xml, 'activity', 'full', 2, $totalcount,$pagesize);
 		echo($txt);
 	}
 
@@ -443,7 +437,7 @@ class OC_OCS {
 	private static function activityPut($format,$message) {
 		// not implemented in ownCloud
 		$user=OC_OCS::checkpassword();
-		echo(OC_OCS::generatexml($format,'ok',100,''));
+		echo(OC_OCS::generatexml($format, 'ok', 100, ''));
 	}
 
 	// PRIVATEDATA API #############################################
@@ -455,9 +449,9 @@ class OC_OCS {
 	* @param string $key
 	* @return string xml/json
 	*/
-	private static function privateDataGet($format,$app="",$key="") {
+	private static function privateDataGet($format, $app="", $key="") {
 		$user=OC_OCS::checkpassword();
-		$result=OC_OCS::getData($user,$app,$key);
+		$result=OC_OCS::getData($user, $app, $key);
 		$xml=array();
 		foreach($result as $i=>$log) {
 			$xml[$i]['key']=$log['key'];
@@ -480,8 +474,8 @@ class OC_OCS {
 	*/
 	private static function privateDataSet($format, $app, $key, $value) {
 		$user=OC_OCS::checkpassword();
-		if(OC_OCS::setData($user,$app,$key,$value)){
-			echo(OC_OCS::generatexml($format,'ok',100,''));
+		if(OC_OCS::setData($user, $app, $key, $value)) {
+			echo(OC_OCS::generatexml($format, 'ok', 100, ''));
 		}
 	}
 
@@ -493,15 +487,15 @@ class OC_OCS {
 	* @return string xml/json
 	*/
 	private static function privateDataDelete($format, $app, $key) {
-		if($key=="" or $app==""){
+		if($key=="" or $app=="") {
 			return; //key and app are NOT optional here
 		}
 		$user=OC_OCS::checkpassword();
-		if(OC_OCS::deleteData($user,$app,$key)){
-			echo(OC_OCS::generatexml($format,'ok',100,''));
+		if(OC_OCS::deleteData($user, $app, $key)) {
+			echo(OC_OCS::generatexml($format, 'ok', 100, ''));
 		}
 	}
-	
+
 	/**
 	* get private data
 	* @param string $user
@@ -510,24 +504,24 @@ class OC_OCS {
 	* @param bool $like use LIKE instead of = when comparing keys
 	* @return array
 	*/
-	public static function getData($user,$app="",$key="") {
-		if($app){
+	public static function getData($user, $app="", $key="") {
+		if($app) {
 			$apps=array($app);
 		}else{
 			$apps=OC_Preferences::getApps($user);
 		}
-		if($key){
+		if($key) {
 			$keys=array($key);
 		}else{
-			foreach($apps as $app){
-				$keys=OC_Preferences::getKeys($user,$app);
+			foreach($apps as $app) {
+				$keys=OC_Preferences::getKeys($user, $app);
 			}
 		}
 		$result=array();
-		foreach($apps as $app){
-			foreach($keys as $key){
-				$value=OC_Preferences::getValue($user,$app,$key);
-				$result[]=array('app'=>$app,'key'=>$key,'value'=>$value);
+		foreach($apps as $app) {
+			foreach($keys as $key) {
+				$value=OC_Preferences::getValue($user, $app, $key);
+				$result[]=array('app'=>$app, 'key'=>$key, 'value'=>$value);
 			}
 		}
 		return $result;
@@ -542,7 +536,7 @@ class OC_OCS {
 	* @return bool
 	*/
 	public static function setData($user, $app, $key, $value) {
-		return OC_Preferences::setValue($user,$app,$key,$value);
+		return OC_Preferences::setValue($user, $app, $key, $value);
 	}
 
 	/**
@@ -553,7 +547,7 @@ class OC_OCS {
 	* @return string xml/json
 	*/
 	public static function deleteData($user, $app, $key) {
-		return OC_Preferences::deleteKey($user,$app,$key);
+		return OC_Preferences::deleteKey($user, $app, $key);
 	}
 
 
@@ -592,7 +586,7 @@ class OC_OCS {
                 $login=OC_OCS::checkpassword();
 		if(OC_Group::inGroup($login, 'admin') or ($login==$user)) {
 
-			if(OC_User::userExists($user)){
+			if(OC_User::userExists($user)) {
 				// calculate the disc space
 				$user_dir = '/'.$user.'/files';
 				OC_Filesystem::init($user_dir);
@@ -653,7 +647,7 @@ class OC_OCS {
         private static function publicKeyGet($format,$user) {
                 $login=OC_OCS::checkpassword();
 
-		if(OC_User::userExists($user)){
+		if(OC_User::userExists($user)) {
 			// calculate the disc space
 			$txt='this is the public key of '.$user;
 			echo($txt);
@@ -672,7 +666,7 @@ class OC_OCS {
                 $login=OC_OCS::checkpassword();
                 if(OC_Group::inGroup($login, 'admin') or ($login==$user)) {
 
-                        if(OC_User::userExists($user)){
+                        if(OC_User::userExists($user)) {
                                 // calculate the disc space
                                 $txt='this is the private key of '.$user;
                                 echo($txt);
diff --git a/lib/ocsclient.php b/lib/ocsclient.php
index ae35470cff6f24d1870a4b17994c24f1f49b1ea8..8596ea0b3c7fb0374013d0c58c885165c5c7cf92 100644
--- a/lib/ocsclient.php
+++ b/lib/ocsclient.php
@@ -29,22 +29,22 @@
 class OC_OCSClient{
 
 	/**
-	 * @brief Get the url of the OCS AppStore server. 
+	 * @brief Get the url of the OCS AppStore server.
 	 * @returns string of the AppStore server
 	 *
 	 * This function returns the url of the OCS AppStore server. It´s possible to set it in the config file or it will fallback to the default
 	 */
-	private static function getAppStoreURL(){
+	private static function getAppStoreURL() {
 		$url = OC_Config::getValue('appstoreurl', 'http://api.apps.owncloud.com/v1');
 		return($url);
 	}
 
         /**
-         * @brief Get the url of the OCS KB server. 
+         * @brief Get the url of the OCS KB server.
          * @returns string of the KB server
          * This function returns the url of the OCS knowledge base server. It´s possible to set it in the config file or it will fallback to the default
          */
-        private static function getKBURL(){
+        private static function getKBURL() {
                 $url = OC_Config::getValue('knowledgebaseurl', 'http://api.apps.owncloud.com/v1');
                 return($url);
         }
@@ -56,18 +56,18 @@ class OC_OCSClient{
 	 *
 	 * This function returns a list of all the application categories on the OCS server
 	 */
-	public static function getCategories(){
-		if(OC_Config::getValue('appstoreenabled', true)==false){
+	public static function getCategories() {
+		if(OC_Config::getValue('appstoreenabled', true)==false) {
 			return NULL;
 		}
 		$url=OC_OCSClient::getAppStoreURL().'/content/categories';
-	
+
 		$xml=@file_get_contents($url);
-		if($xml==FALSE){
+		if($xml==FALSE) {
 			return NULL;
 		}
 		$data=simplexml_load_string($xml);
-	
+
 		$tmp=$data->data;
 		$cats=array();
 
@@ -88,8 +88,8 @@ class OC_OCSClient{
 	 *
 	 * This function returns a list of all the applications on the OCS server
 	 */
-	public static function getApplications($categories,$page){
-		if(OC_Config::getValue('appstoreenabled', true)==false){
+	public static function getApplications($categories,$page,$filter) {
+		if(OC_Config::getValue('appstoreenabled', true)==false) {
 			return(array());
 		}
 
@@ -98,10 +98,13 @@ class OC_OCSClient{
 		}else{
 			$categoriesstring=$categories;
 		}
-		$url=OC_OCSClient::getAppStoreURL().'/content/data?categories='.urlencode($categoriesstring).'&sortmode=new&page='.urlencode($page).'&pagesize=100';
+
+		$version='&version='.implode('x',\OC_Util::getVersion());
+		$filterurl='&filter='.urlencode($filter);
+		$url=OC_OCSClient::getAppStoreURL().'/content/data?categories='.urlencode($categoriesstring).'&sortmode=new&page='.urlencode($page).'&pagesize=100'.$filterurl.$version;
 		$apps=array();
 		$xml=@file_get_contents($url);
-		if($xml==FALSE){
+		if($xml==FALSE) {
 			return NULL;
 		}
 		$data=simplexml_load_string($xml);
@@ -119,9 +122,9 @@ class OC_OCSClient{
 			$app['preview']=(string)$tmp[$i]->smallpreviewpic1;
 			$app['changed']=strtotime($tmp[$i]->changed);
 			$app['description']=(string)$tmp[$i]->description;
-	
+
 			$apps[]=$app;
-		} 
+		}
 		return $apps;
 	}
 
@@ -132,14 +135,14 @@ class OC_OCSClient{
 	 *
 	 * This function returns an  applications from the OCS server
 	 */
-	public static function getApplication($id){
-		if(OC_Config::getValue('appstoreenabled', true)==false){
+	public static function getApplication($id) {
+		if(OC_Config::getValue('appstoreenabled', true)==false) {
 			return NULL;
 		}
 		$url=OC_OCSClient::getAppStoreURL().'/content/data/'.urlencode($id);
 
 		$xml=@file_get_contents($url);
-		if($xml==FALSE){
+		if($xml==FALSE) {
 			OC_Log::write('core','Unable to parse OCS content',OC_Log::FATAL);
 			return NULL;
 		}
@@ -169,14 +172,14 @@ class OC_OCSClient{
 		*
 		* This function returns an download url for an applications from the OCS server
 		*/
-	public static function getApplicationDownload($id,$item){
-		if(OC_Config::getValue('appstoreenabled', true)==false){
+	public static function getApplicationDownload($id,$item) {
+		if(OC_Config::getValue('appstoreenabled', true)==false) {
 			return NULL;
 		}
 		$url=OC_OCSClient::getAppStoreURL().'/content/download/'.urlencode($id).'/'.urlencode($item);
 
 		$xml=@file_get_contents($url);
-		if($xml==FALSE){
+		if($xml==FALSE) {
 			OC_Log::write('core','Unable to parse OCS content',OC_Log::FATAL);
 			return NULL;
 		}
@@ -184,10 +187,10 @@ class OC_OCSClient{
 
 		$tmp=$data->data->content;
 		$app=array();
-		if(isset($tmp->downloadlink)) { 
+		if(isset($tmp->downloadlink)) {
 			$app['downloadlink']=$tmp->downloadlink;
 		}else{
-	 		$app['downloadlink']='';
+			$app['downloadlink']='';
 		}
 		return $app;
 	}
@@ -199,8 +202,8 @@ class OC_OCSClient{
 	 *
 	 * This function returns a list of all the knowledgebase entries from the OCS server
 	 */
-	public static function getKnownledgebaseEntries($page,$pagesize,$search=''){	
-		if(OC_Config::getValue('knowledgebaseenabled', true)==false){
+	public static function getKnownledgebaseEntries($page,$pagesize,$search='') {
+		if(OC_Config::getValue('knowledgebaseenabled', true)==false) {
 			$kbe=array();
 			$kbe['totalitems']=0;
 			return $kbe;
@@ -213,7 +216,7 @@ class OC_OCSClient{
 
 		$kbe=array();
 		$xml=@file_get_contents($url);
-		if($xml==FALSE){
+		if($xml==FALSE) {
 			OC_Log::write('core','Unable to parse knowledgebase content',OC_Log::FATAL);
 			return NULL;
 		}
diff --git a/lib/preferences.php b/lib/preferences.php
index b6c4c3a163fb83b0eb762c5913177552125650ee..3d61887785c1c9b04046d5d250f8338c8dfd3610 100644
--- a/lib/preferences.php
+++ b/lib/preferences.php
@@ -45,13 +45,13 @@ class OC_Preferences{
 	 * This function returns a list of all users that have at least one entry
 	 * in the preferences table.
 	 */
-	public static function getUsers(){
+	public static function getUsers() {
 		// No need for more comments
 		$query = OC_DB::prepare( 'SELECT DISTINCT( `userid` ) FROM `*PREFIX*preferences`' );
 		$result = $query->execute();
 
 		$users = array();
-		while( $row = $result->fetchRow()){
+		while( $row = $result->fetchRow()) {
 			$users[] = $row["userid"];
 		}
 
@@ -66,13 +66,13 @@ class OC_Preferences{
 	 * This function returns a list of all apps of the user that have at least
 	 * one entry in the preferences table.
 	 */
-	public static function getApps( $user ){
+	public static function getApps( $user ) {
 		// No need for more comments
 		$query = OC_DB::prepare( 'SELECT DISTINCT( `appid` ) FROM `*PREFIX*preferences` WHERE `userid` = ?' );
 		$result = $query->execute( array( $user ));
 
 		$apps = array();
-		while( $row = $result->fetchRow()){
+		while( $row = $result->fetchRow()) {
 			$apps[] = $row["appid"];
 		}
 
@@ -88,13 +88,13 @@ class OC_Preferences{
 	 * This function gets all keys of an app of an user. Please note that the
 	 * values are not returned.
 	 */
-	public static function getKeys( $user, $app ){
+	public static function getKeys( $user, $app ) {
 		// No need for more comments
 		$query = OC_DB::prepare( 'SELECT `configkey` FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ?' );
 		$result = $query->execute( array( $user, $app ));
 
 		$keys = array();
-		while( $row = $result->fetchRow()){
+		while( $row = $result->fetchRow()) {
 			$keys[] = $row["configkey"];
 		}
 
@@ -112,13 +112,13 @@ class OC_Preferences{
 	 * This function gets a value from the prefernces table. If the key does
 	 * not exist the default value will be returnes
 	 */
-	public static function getValue( $user, $app, $key, $default = null ){
+	public static function getValue( $user, $app, $key, $default = null ) {
 		// Try to fetch the value, return default if not exists.
 		$query = OC_DB::prepare( 'SELECT `configvalue` FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ? AND `configkey` = ?' );
 		$result = $query->execute( array( $user, $app, $key ));
-		
+
 		$row = $result->fetchRow();
-		if($row){
+		if($row) {
 			return $row["configvalue"];
 		}else{
 			return $default;
@@ -136,13 +136,13 @@ class OC_Preferences{
 	 * Adds a value to the preferences. If the key did not exist before, it
 	 * will be added automagically.
 	 */
-	public static function setValue( $user, $app, $key, $value ){
+	public static function setValue( $user, $app, $key, $value ) {
 		// Check if the key does exist
 		$query = OC_DB::prepare( 'SELECT `configvalue` FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ? AND `configkey` = ?' );
 		$values=$query->execute(array($user,$app,$key))->fetchAll();
 		$exists=(count($values)>0);
 
-		if( !$exists ){
+		if( !$exists ) {
 			$query = OC_DB::prepare( 'INSERT INTO `*PREFIX*preferences` ( `userid`, `appid`, `configkey`, `configvalue` ) VALUES( ?, ?, ?, ? )' );
 			$query->execute( array( $user, $app, $key, $value ));
 		}
@@ -162,7 +162,7 @@ class OC_Preferences{
 	 *
 	 * Deletes a key.
 	 */
-	public static function deleteKey( $user, $app, $key ){
+	public static function deleteKey( $user, $app, $key ) {
 		// No need for more comments
 		$query = OC_DB::prepare( 'DELETE FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ? AND `configkey` = ?' );
 		$result = $query->execute( array( $user, $app, $key ));
@@ -178,7 +178,7 @@ class OC_Preferences{
 	 *
 	 * Removes all keys in appconfig belonging to the app and the user.
 	 */
-	public static function deleteApp( $user, $app ){
+	public static function deleteApp( $user, $app ) {
 		// No need for more comments
 		$query = OC_DB::prepare( 'DELETE FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ?' );
 		$result = $query->execute( array( $user, $app ));
@@ -193,7 +193,7 @@ class OC_Preferences{
 	 *
 	 * Removes all keys in appconfig belonging to the user.
 	 */
-	public static function deleteUser( $user ){
+	public static function deleteUser( $user ) {
 		// No need for more comments
 		$query = OC_DB::prepare( 'DELETE FROM `*PREFIX*preferences` WHERE `userid` = ?' );
 		$result = $query->execute( array( $user ));
@@ -208,7 +208,7 @@ class OC_Preferences{
 	 *
 	 * Removes all keys in preferences belonging to the app.
 	 */
-	public static function deleteAppFromAllUsers( $app ){
+	public static function deleteAppFromAllUsers( $app ) {
 		// No need for more comments
 		$query = OC_DB::prepare( 'DELETE FROM `*PREFIX*preferences` WHERE `appid` = ?' );
 		$result = $query->execute( array( $app ));
diff --git a/lib/public/app.php b/lib/public/app.php
index e74f155074029cec03d6056acde520dbeaa9a7f4..809a656f17f52da143e27c105295a677345b7079 100644
--- a/lib/public/app.php
+++ b/lib/public/app.php
@@ -26,7 +26,7 @@
  *
  */
 
-// use OCP namespace for all classes that are considered public. 
+// use OCP namespace for all classes that are considered public.
 // This means that they should be used by apps instead of the internal ownCloud classes
 namespace OCP;
 
@@ -34,120 +34,109 @@ namespace OCP;
  * This class provides functions to manage apps in ownCloud
  */
 class App {
-        /**
-         * @brief Makes owncloud aware of this app
-         * @brief This call is deprecated and not necessary to use.
-         * @param $data array with all information
-         * @returns true/false
-         *
-         * @deprecated this method is deprecated
-         * Do not call it anymore
-         * It'll remain in our public API for compatibility reasons
-         *
-         */
-        public static function register( $data ){
+	/**
+	 * @brief Makes owncloud aware of this app
+	 * @brief This call is deprecated and not necessary to use.
+	 * @param $data array with all information
+	 * @returns true/false
+	 *
+	 * @deprecated this method is deprecated
+	 * Do not call it anymore
+	 * It'll remain in our public API for compatibility reasons
+	 *
+	 */
+	public static function register( $data ) {
 		return true; // don't do anything
-        }
+	}
 
-        /**
-         * @brief adds an entry to the navigation
-         * @param $data array containing the data
-         * @returns true/false
-         *
-         * This function adds a new entry to the navigation visible to users. $data
-         * is an associative array.
-         * The following keys are required:
-         *   - id: unique id for this entry ('addressbook_index')
-         *   - href: link to the page
-         *   - name: Human readable name ('Addressbook')
-         *
-         * The following keys are optional:
-         *   - icon: path to the icon of the app
-         *   - order: integer, that influences the position of your application in
-         *     the navigation. Lower values come first.
-         */
-        public static function addNavigationEntry( $data ){
+	/**
+	 * @brief adds an entry to the navigation
+	 * @param $data array containing the data
+	 * @returns true/false
+	 *
+	 * This function adds a new entry to the navigation visible to users. $data
+	 * is an associative array.
+	 * The following keys are required:
+	 *   - id: unique id for this entry ('addressbook_index')
+	 *   - href: link to the page
+	 *   - name: Human readable name ('Addressbook')
+	 *
+	 * The following keys are optional:
+	 *   - icon: path to the icon of the app
+	 *   - order: integer, that influences the position of your application in
+	 *	 the navigation. Lower values come first.
+	 */
+	public static function addNavigationEntry( $data ) {
 		return \OC_App::addNavigationEntry( $data );
 	}
 
-
-        /**
-         * @brief marks a navigation entry as active
-         * @param $id id of the entry
-         * @returns true/false
-         *
-         * This function sets a navigation entry as active and removes the 'active'
-         * property from all other entries. The templates can use this for
-         * highlighting the current position of the user.
-         */
-        public static function setActiveNavigationEntry( $id ){
+	/**
+	 * @brief marks a navigation entry as active
+	 * @param $id id of the entry
+	 * @returns true/false
+	 *
+	 * This function sets a navigation entry as active and removes the 'active'
+	 * property from all other entries. The templates can use this for
+	 * highlighting the current position of the user.
+	 */
+	public static function setActiveNavigationEntry( $id ) {
 		return \OC_App::setActiveNavigationEntry( $id );
 	}
 
-
-        /**
-         * @brief Register a Configuration Screen that should appear in the personal settings section.
-         * @param $app string appid
-         * @param $page string page to be included
-        */
-        public static function registerPersonal( $app, $page ){
+	/**
+	 * @brief Register a Configuration Screen that should appear in the personal settings section.
+	 * @param $app string appid
+	 * @param $page string page to be included
+	*/
+	public static function registerPersonal( $app, $page ) {
 		return \OC_App::registerPersonal( $app, $page );
 	}
 
-
 	/**
-         * @brief Register a Configuration Screen that should appear in the Admin section.
-         * @param $app string appid
-         * @param $page string page to be included
+	 * @brief Register a Configuration Screen that should appear in the Admin section.
+	 * @param $app string appid
+	 * @param $page string page to be included
 	 */
-	public static function registerAdmin( $app, $page ){
+	public static function registerAdmin( $app, $page ) {
 		return \OC_App::registerAdmin( $app, $page );
 	}
 
-
-        /**
-         * @brief Read app metadata from the info.xml file
-         * @param string $app id of the app or the path of the info.xml file
-         * @param boolean path (optional)
-         * @returns array
-        */
-        public static function getAppInfo( $app, $path=false ){
+	/**
+	 * @brief Read app metadata from the info.xml file
+	 * @param string $app id of the app or the path of the info.xml file
+	 * @param boolean path (optional)
+	 * @returns array
+	*/
+	public static function getAppInfo( $app, $path=false ) {
 		return \OC_App::getAppInfo( $app, $path);
 	}
 
-
-
-        /**
-         * @brief checks whether or not an app is enabled
-         * @param $app app
-         * @returns true/false
-         *
-         * This function checks whether or not an app is enabled.
-         */
-        public static function isEnabled( $app ){
+	/**
+	 * @brief checks whether or not an app is enabled
+	 * @param $app app
+	 * @returns true/false
+	 *
+	 * This function checks whether or not an app is enabled.
+	 */
+	public static function isEnabled( $app ) {
 		return \OC_App::isEnabled( $app );
 	}
 
+	/**
+	 * @brief Check if the app is enabled, redirects to home if not
+	 * @param $app app
+	 * @returns true/false
+	*/
+	public static function checkAppEnabled( $app ) {
+		return \OC_Util::checkAppEnabled( $app );
+	}
 
-        /**
-         * @brief Check if the app is enabled, redirects to home if not 
-         * @param $app app
-         * @returns true/false
-        */
-        public static function checkAppEnabled( $app ){
-                return \OC_Util::checkAppEnabled( $app );
-        }
-
-
-        /**
-         * @brief Get the last version of the app, either from appinfo/version or from appinfo/info.xml 
-         * @param $app app
-         * @returns true/false
-         */
-        public static function getAppVersion( $app ){
+	/**
+	 * @brief Get the last version of the app, either from appinfo/version or from appinfo/info.xml
+	 * @param $app app
+	 * @returns true/false
+	 */
+	public static function getAppVersion( $app ) {
 		return \OC_App::getAppVersion( $app );
 	}
-
-
-
 }
diff --git a/lib/public/backgroundjob.php b/lib/public/backgroundjob.php
index 834bebb5c3c7debc082ba5130d47f1d101320f77..aba7d2b7620504139617f47bb5bdb1d7dd419c9f 100644
--- a/lib/public/backgroundjob.php
+++ b/lib/public/backgroundjob.php
@@ -24,7 +24,7 @@
  * Public interface of ownCloud forbackground jobs.
  */
 
-// use OCP namespace for all classes that are considered public. 
+// use OCP namespace for all classes that are considered public.
 // This means that they should be used by apps instead of the internal ownCloud classes
 namespace OCP;
 
@@ -42,7 +42,7 @@ namespace OCP;
  * An example of the queued task would be the creation of the thumbnail. As
  * soon as the user uploads a picture the gallery app registers the queued
  * task "create thumbnail" and saves the path in the parameter instead of doing
- * the work right away. This makes the app more responsive. As soon as the task 
+ * the work right away. This makes the app more responsive. As soon as the task
  * is done it will be deleted from the list.
  */
 class BackgroundJob {
@@ -52,7 +52,7 @@ class BackgroundJob {
 	 * @param $method method name
 	 * @return true
 	 */
-	public static function addRegularTask( $klass, $method ){
+	public static function addRegularTask( $klass, $method ) {
 		return \OC_BackgroundJob_RegularTask::register( $klass, $method );
 	}
 
@@ -62,7 +62,7 @@ class BackgroundJob {
 	 *
 	 * key is string "$klass-$method", value is array( $klass, $method )
 	 */
-	static public function allRegularTasks(){
+	static public function allRegularTasks() {
 		return \OC_BackgroundJob_RegularTask::all();
 	}
 
@@ -71,7 +71,7 @@ class BackgroundJob {
 	 * @param $id ID of the task
 	 * @return associative array
 	 */
-	public static function findQueuedTask( $id ){
+	public static function findQueuedTask( $id ) {
 		return \OC_BackgroundJob_QueuedTask::find( $id );
 	}
 
@@ -79,7 +79,7 @@ class BackgroundJob {
 	 * @brief Gets all queued tasks
 	 * @return array with associative arrays
 	 */
-	public static function allQueuedTasks(){
+	public static function allQueuedTasks() {
 		return \OC_BackgroundJob_QueuedTask::all();
 	}
 
@@ -88,7 +88,7 @@ class BackgroundJob {
 	 * @param $app app name
 	 * @return array with associative arrays
 	 */
-	public static function queuedTaskWhereAppIs( $app ){
+	public static function queuedTaskWhereAppIs( $app ) {
 		return \OC_BackgroundJob_QueuedTask::whereAppIs( $app );
 	}
 
@@ -100,7 +100,7 @@ class BackgroundJob {
 	 * @param $parameters all useful data as text
 	 * @return id of task
 	 */
-	public static function addQueuedTask( $app, $klass, $method, $parameters ){
+	public static function addQueuedTask( $app, $klass, $method, $parameters ) {
 		return \OC_BackgroundJob_QueuedTask::add( $app, $klass, $method, $parameters );
 	}
 
@@ -111,7 +111,7 @@ class BackgroundJob {
 	 *
 	 * Deletes a report
 	 */
-	public static function deleteQueuedTask( $id ){
+	public static function deleteQueuedTask( $id ) {
 		return \OC_BackgroundJob_QueuedTask::delete( $id );
 	}
 }
diff --git a/lib/public/config.php b/lib/public/config.php
index ab01902ffe60e13d673ebfa8476711ad88a7e460..377150115ffc14f4fff7b7b4087e4c177a7a6026 100644
--- a/lib/public/config.php
+++ b/lib/public/config.php
@@ -27,7 +27,7 @@
  */
 
 /**
- * @brief use OCP namespace for all classes that are considered public. 
+ * @brief use OCP namespace for all classes that are considered public.
  *
  * Classes that use this namespace are for use by apps, and not for use by internal
  * OC classes
@@ -38,8 +38,6 @@ namespace OCP;
  * This class provides functions to read and write configuration data. configuration can be on a system, application or user level
  */
 class Config {
-
-
 	/**
 	 * @brief Gets a value from config.php
 	 * @param $key key
@@ -49,11 +47,10 @@ class Config {
 	 * This function gets the value from config.php. If it does not exist,
 	 * $default will be returned.
 	 */
-	public static function getSystemValue( $key, $default = null ){
+	public static function getSystemValue( $key, $default = null ) {
 		return(\OC_Config::getValue( $key, $default ));
 	}
 
-
 	/**
 	 * @brief Sets a value
 	 * @param $key key
@@ -63,74 +60,64 @@ class Config {
 	 * This function sets the value and writes the config.php. If the file can
 	 * not be written, false will be returned.
 	 */
-	public static function setSystemValue( $key, $value ){
+	public static function setSystemValue( $key, $value ) {
 		return(\OC_Config::setValue( $key, $value ));
 	}
 
-
-        /**
-         * @brief Gets the config value
-         * @param $app app
-         * @param $key key
-         * @param $default = null, default value if the key does not exist
-         * @returns the value or $default
-         *
-         * This function gets a value from the appconfig table. If the key does
-         * not exist the default value will be returnes
-         */
-        public static function getAppValue( $app, $key, $default = null ){
+	/**
+	 * @brief Gets the config value
+	 * @param $app app
+	 * @param $key key
+	 * @param $default = null, default value if the key does not exist
+	 * @returns the value or $default
+	 *
+	 * This function gets a value from the appconfig table. If the key does
+	 * not exist the default value will be returnes
+	 */
+	public static function getAppValue( $app, $key, $default = null ) {
 		return(\OC_Appconfig::getValue( $app, $key, $default ));
 	}
 
-
-        /**
-         * @brief sets a value in the appconfig
-         * @param $app app
-         * @param $key key
-         * @param $value value
-         * @returns true/false
-         *
-         * Sets a value. If the key did not exist before it will be created.
-         */
-        public static function setAppValue( $app, $key, $value ){
+	/**
+	 * @brief sets a value in the appconfig
+	 * @param $app app
+	 * @param $key key
+	 * @param $value value
+	 * @returns true/false
+	 *
+	 * Sets a value. If the key did not exist before it will be created.
+	 */
+	public static function setAppValue( $app, $key, $value ) {
 		return(\OC_Appconfig::setValue( $app, $key, $value ));
 	}
 
-
-        /**
-         * @brief Gets the preference
-         * @param $user user
-         * @param $app app
-         * @param $key key
-         * @param $default = null, default value if the key does not exist
-         * @returns the value or $default
-         *
-         * This function gets a value from the prefernces table. If the key does
-         * not exist the default value will be returnes
-         */
-        public static function getUserValue( $user, $app, $key, $default = null ){
+	/**
+	 * @brief Gets the preference
+	 * @param $user user
+	 * @param $app app
+	 * @param $key key
+	 * @param $default = null, default value if the key does not exist
+	 * @returns the value or $default
+	 *
+	 * This function gets a value from the prefernces table. If the key does
+	 * not exist the default value will be returnes
+	 */
+	public static function getUserValue( $user, $app, $key, $default = null ) {
 		return(\OC_Preferences::getValue( $user, $app, $key, $default ));
 	}
 
-
-        /**
-         * @brief sets a value in the preferences
-         * @param $user user
-         * @param $app app
-         * @param $key key
-         * @param $value value
-         * @returns true/false
-         *
-         * Adds a value to the preferences. If the key did not exist before, it
-         * will be added automagically.
-         */
-        public static function setUserValue( $user, $app, $key, $value ){
+	/**
+	 * @brief sets a value in the preferences
+	 * @param $user user
+	 * @param $app app
+	 * @param $key key
+	 * @param $value value
+	 * @returns true/false
+	 *
+	 * Adds a value to the preferences. If the key did not exist before, it
+	 * will be added automagically.
+	 */
+	public static function setUserValue( $user, $app, $key, $value ) {
 		return(\OC_Preferences::setValue(  $user, $app, $key, $value ));
 	}
-
-
-
-
-
-
 }
diff --git a/lib/public/db.php b/lib/public/db.php
index 23c670cf442a425cc3a81e78d8ec52796599da04..6ce62b27ca27d22ee87b0d5d9f86bc000d0acc99 100644
--- a/lib/public/db.php
+++ b/lib/public/db.php
@@ -26,7 +26,7 @@
  *
  */
 
-// use OCP namespace for all classes that are considered public. 
+// use OCP namespace for all classes that are considered public.
 // This means that they should be used by apps instead of the internal ownCloud classes
 namespace OCP;
 
@@ -34,8 +34,6 @@ namespace OCP;
  * This class provides access to the internal database system. Use this class exlusively if you want to access databases
  */
 class DB {
-
-
 	/**
 	 * @brief Prepare a SQL query
 	 * @param $query Query string
@@ -43,11 +41,10 @@ class DB {
 	 *
 	 * SQL query via MDB2 prepare(), needs to be execute()'d!
 	 */
-	static public function prepare( $query, $limit=null, $offset=null ){
+	static public function prepare( $query, $limit=null, $offset=null ) {
 		return(\OC_DB::prepare($query,$limit,$offset));
 	}
 
-
 	/**
 	 * @brief gets last value of autoincrement
 	 * @param $table string The optional table name (will replace *PREFIX*) and add sequence suffix
@@ -58,36 +55,30 @@ class DB {
 	 * Call this method right after the insert command or other functions may
 	 * cause trouble!
 	 */
-	public static function insertid($table=null){
+	public static function insertid($table=null) {
 		return(\OC_DB::insertid($table));
 	}
 
-
 	/**
 	 * @brief Start a transaction
 	 */
-	public static function beginTransaction(){
+	public static function beginTransaction() {
 		return(\OC_DB::beginTransaction());
 	}
 
-
 	/**
 	 * @brief Commit the database changes done during a transaction that is in progress
 	 */
-	public static function commit(){
+	public static function commit() {
 		return(\OC_DB::commit());
 	}
 
-
 	/**
 	 * @brief check if a result is an error, works with MDB2 and PDOException
 	 * @param mixed $result
 	 * @return bool
 	 */
-	public static function isError($result){
+	public static function isError($result) {
 		return(\OC_DB::isError($result));
 	}
-
-
-
 }
diff --git a/lib/public/files.php b/lib/public/files.php
index 32b3f03674484193044e45081d6ef0c10f8b946b..90889c59ad851a47a07812e9f8ef87ce8f82584f 100644
--- a/lib/public/files.php
+++ b/lib/public/files.php
@@ -26,7 +26,7 @@
  *
  */
 
-// use OCP namespace for all classes that are considered public. 
+// use OCP namespace for all classes that are considered public.
 // This means that they should be used by apps instead of the internal ownCloud classes
 namespace OCP;
 
@@ -34,8 +34,6 @@ namespace OCP;
  * This class provides access to the internal filesystem abstraction layer. Use this class exlusively if you want to access files
  */
 class Files {
-
-
 	/**
 	 * @brief Recusive deletion of folders
 	 * @param string $dir path to the folder
@@ -45,29 +43,26 @@ class Files {
 		\OC_Helper::rmdirr( $dir );
 	}
 
-
 	/**
 	 * get the mimetype form a local file
 	 * @param string path
 	 * @return string
 	 * does NOT work for ownClouds filesystem, use OC_FileSystem::getMimeType instead
 	 */
-	static function getMimeType( $path ){
+	static function getMimeType( $path ) {
 		return(\OC_Helper::getMimeType( $path ));
 	}
 
-
 	/**
 	 * copy the contents of one stream to another
 	 * @param resource source
 	 * @param resource target
 	 * @return int the number of bytes copied
 	 */
-	public static function streamCopy( $source, $target ){
+	public static function streamCopy( $source, $target ) {
 		return(\OC_Helper::streamCopy( $source, $target ));
 	}
 
-
 	/**
 	 * create a temporary file with an unique filename
 	 * @param string postfix
@@ -75,22 +70,20 @@ class Files {
 	 *
 	 * temporary files are automatically cleaned up after the script is finished
 	 */
-	public static function tmpFile( $postfix='' ){
+	public static function tmpFile( $postfix='' ) {
 		return(\OC_Helper::tmpFile( $postfix ));
 	}
 
-
 	/**
 	 * create a temporary folder with an unique filename
 	 * @return string
 	 *
 	 * temporary files are automatically cleaned up after the script is finished
 	 */
-	public static function tmpFolder(){
+	public static function tmpFolder() {
 		return(\OC_Helper::tmpFolder());
 	}
 
-
 	/**
 	 * Adds a suffix to the name in case the file exists
 	 *
@@ -98,20 +91,16 @@ class Files {
 	 * @param $filename
 	 * @return string
 	 */
-	public static function buildNotExistingFileName( $path, $filename ){
+	public static function buildNotExistingFileName( $path, $filename ) {
 		return(\OC_Helper::buildNotExistingFileName( $path, $filename ));
 	}
 
-        /**
-         * @param string appid
-         * @param $app app
-         * @return OC_FilesystemView
-         */
-        public static function getStorage( $app ){
+	/**
+	 * @param string appid
+	 * @param $app app
+	 * @return OC_FilesystemView
+	 */
+	public static function getStorage( $app ) {
 		return \OC_App::getStorage( $app );
 	}
-
-
-
-
 }
diff --git a/lib/public/json.php b/lib/public/json.php
index 99df79173eb85dbff1d75660fd2bd7c510465d7c..2186dd8ee49bb5221184a34bade66594e1930ce6 100644
--- a/lib/public/json.php
+++ b/lib/public/json.php
@@ -26,7 +26,7 @@
  *
  */
 
-// use OCP namespace for all classes that are considered public. 
+// use OCP namespace for all classes that are considered public.
 // This means that they should be used by apps instead of the internal ownCloud classes
 namespace OCP;
 
@@ -34,92 +34,91 @@ namespace OCP;
  * This class provides convinient functions to generate and send JSON data. Usefull for Ajax calls
  */
 class JSON {
-
 	/**
 	* @brief Encode and print $data in JSON format
 	* @param array $data The data to use
 	* @param string $setContentType the optional content type
 	* @return string json formatted string.
 	*/
-	public static function encodedPrint( $data, $setContentType=true ){
+	public static function encodedPrint( $data, $setContentType=true ) {
 		return(\OC_JSON::encodedPrint( $data, $setContentType ));
 	}
 
 	/**
 	* Check if the user is logged in, send json error msg if not.
-	* 
+	*
 	* This method checks if a user is logged in. If not, a json error
 	* response will be return and the method will exit from execution
 	* of the script.
 	* The returned json will be in the format:
-	* 
+	*
 	*     {"status":"error","data":{"message":"Authentication error."}}
-	* 
+	*
 	* Add this call to the start of all ajax method files that requires
 	* an authenticated user.
-	* 
+	*
 	* @return string json formatted error string if not authenticated.
 	*/
-	public static function checkLoggedIn(){
+	public static function checkLoggedIn() {
 		return(\OC_JSON::checkLoggedIn());
 	}
 
 	/**
 	* Check an ajax get/post call if the request token is valid.
-	* 
+	*
 	* This method checks for a valid variable 'requesttoken' in $_GET,
 	* $_POST and $_SERVER. If a valid token is not found, a json error
 	* response will be return and the method will exit from execution
 	* of the script.
 	* The returned json will be in the format:
-	* 
+	*
 	*     {"status":"error","data":{"message":"Token expired. Please reload page."}}
-	* 
-	* Add this call to the start of all ajax method files that creates, 
+	*
+	* Add this call to the start of all ajax method files that creates,
 	* updates or deletes anything.
 	* In cases where you e.g. use an ajax call to load a dialog containing
 	* a submittable form, you will need to add the requesttoken first as a
 	* parameter to the ajax call, then assign it to the template and finally
 	* add a hidden input field also named 'requesttoken' containing the value.
-	* 
+	*
 	* @return string json formatted error string if not valid.
 	*/
-	public static function callCheck(){
+	public static function callCheck() {
 		return(\OC_JSON::callCheck());
 	}
 
 	/**
 	* Send json success msg
-	* 
+	*
 	* Return a json success message with optional extra data.
-	* @see OCP\JSON::error() 		for the format to use.
-	* 
+	* @see OCP\JSON::error()		for the format to use.
+	*
 	* @param array $data The data to use
 	* @return string json formatted string.
 	*/
-	public static function success( $data = array() ){
+	public static function success( $data = array() ) {
 		return(\OC_JSON::success( $data ));
 	}
 
 	/**
 	* Send json error msg
-	* 
-	* Return a json error message with optional extra data for 
+	*
+	* Return a json error message with optional extra data for
 	* error message or app specific data.
-	* 
+	*
 	* Example use:
-	* 
+	*
 	*     $id = [some value]
 	*     OCP\JSON::error(array('data':array('message':'An error happened', 'id': $id)));
-	* 
+	*
 	* Will return the json formatted string:
-	* 
+	*
 	*     {"status":"error","data":{"message":"An error happened", "id":[some value]}}
-	* 
+	*
 	* @param array $data The data to use
 	* @return string json formatted error string.
 	*/
-	public static function error( $data = array() ){
+	public static function error( $data = array() ) {
 		return(\OC_JSON::error( $data ));
 	}
 
@@ -128,47 +127,46 @@ class JSON {
 	* @param array $type The contwnt type header
 	* @return string json formatted string.
 	*/
-	public static function setContentTypeHeader( $type='application/json' ){
+	public static function setContentTypeHeader( $type='application/json' ) {
 		return(\OC_JSON::setContentTypeHeader( $type ));
 	}
 
 	/**
 	* Check if the App is enabled and send JSON error message instead
-	* 
+	*
 	* This method checks if a specific app is enabled. If not, a json error
 	* response will be return and the method will exit from execution
 	* of the script.
 	* The returned json will be in the format:
-	* 
+	*
 	*     {"status":"error","data":{"message":"Application is not enabled."}}
-	* 
+	*
 	* Add this call to the start of all ajax method files that requires
 	* a specific app to be enabled.
-	* 
+	*
 	* @param string $app The app to check
 	* @return string json formatted string if not enabled.
 	*/
-	public static function checkAppEnabled( $app ){
+	public static function checkAppEnabled( $app ) {
 		return(\OC_JSON::checkAppEnabled( $app ));
 	}
 
 	/**
 	* Check if the user is a admin, send json error msg if not
-	* 
+	*
 	* This method checks if the current user has admin rights. If not, a json error
 	* response will be return and the method will exit from execution
 	* of the script.
 	* The returned json will be in the format:
-	* 
+	*
 	*     {"status":"error","data":{"message":"Authentication error."}}
-	* 
+	*
 	* Add this call to the start of all ajax method files that requires
 	* administrative rights.
-	* 
+	*
 	* @return string json formatted string if not admin user.
 	*/
-	public static function checkAdminUser(){
+	public static function checkAdminUser() {
 		return(\OC_JSON::checkAdminUser());
 	}
-
 }
diff --git a/lib/public/response.php b/lib/public/response.php
index 8dff3bcd3541eae97dada5703315eddc24511ad9..95e67a857202bdcf0da152e21bbe38fdb184548d 100644
--- a/lib/public/response.php
+++ b/lib/public/response.php
@@ -26,7 +26,7 @@
  *
  */
 
-// use OCP namespace for all classes that are considered public. 
+// use OCP namespace for all classes that are considered public.
 // This means that they should be used by apps instead of the internal ownCloud classes
 namespace OCP;
 
@@ -34,8 +34,6 @@ namespace OCP;
  * This class provides convinient functions to send the correct http response headers
  */
 class Response {
-
-
 	/**
 	* @brief Enable response caching by sending correct HTTP headers
 	* @param $cache_time time to cache the response
@@ -47,7 +45,6 @@ class Response {
 		return(\OC_Response::enableCaching( $cache_time ));
 	}
 
-
 	/**
 	* Checks and set Last-Modified header, when the request matches sends a
 	* 'not modified' response
@@ -57,7 +54,6 @@ class Response {
 		return(\OC_Response::setLastModifiedHeader( $lastModified ));
 	}
 
-
 	/**
 	* @brief disable browser caching
 	* @see enableCaching with cache_time = 0
@@ -66,7 +62,6 @@ class Response {
 		return(\OC_Response::disableCaching());
 	}
 
-
 	/**
 	* Checks and set ETag header, when the request matches sends a
 	* 'not modified' response
@@ -76,7 +71,6 @@ class Response {
 		return(\OC_Response::setETagHeader( $etag ));
 	}
 
-
 	/**
 	* @brief Send file as response, checking and setting caching headers
 	* @param $filepath of file to send
@@ -102,6 +96,4 @@ class Response {
 	static public function redirect( $location ) {
 		return(\OC_Response::redirect( $location ));
 	}
-
-
-}
+}
\ No newline at end of file
diff --git a/lib/public/share.php b/lib/public/share.php
index a9fd23bfac8540c6205feab78a002a38f7dd92c6..b215d7f93894853a14c26208f1862dcc12f7e010 100644
--- a/lib/public/share.php
+++ b/lib/public/share.php
@@ -23,6 +23,7 @@ namespace OCP;
 \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');
+\OC_Hook::connect('OC_User', 'post_deleteGroup', 'OCP\Share', 'post_deleteGroup');
 
 /**
 * This class provides the ability for apps to share their content between users.
@@ -229,6 +230,16 @@ class Share {
 			$shareWith['users'] = array_diff(\OC_Group::usersInGroup($group), array($uidOwner));
 		} else if ($shareType === self::SHARE_TYPE_LINK) {
 			if (\OC_Appconfig::getValue('core', 'shareapi_allow_links', 'yes') == 'yes') {
+				if ($checkExists = self::getItems($itemType, $itemSource, self::SHARE_TYPE_LINK, null, $uidOwner, self::FORMAT_NONE, null, 1)) {
+					// If password is set delete the old link
+					if (isset($shareWith)) {
+						self::delete($checkExists['id']);
+					} else {
+						$message = 'Sharing '.$itemSource.' failed, because this item is already shared with a link';
+						\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
+						throw new \Exception($message);
+					}
+				}
 				// Generate hash of password - same method as user passwords
 				if (isset($shareWith)) {
 					$forcePortable = (CRYPT_BLOWFISH != 1);
@@ -241,26 +252,26 @@ class Share {
 			\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
 			throw new \Exception($message);
 			return false;
-		} else if ($shareType === self::SHARE_TYPE_CONTACT) {
-			if (!\OC_App::isEnabled('contacts')) {
-				$message = 'Sharing '.$itemSource.' failed, because the contacts app is not enabled';
-				\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
-				return false;
-			}
-			$vcard = \OC_Contacts_App::getContactVCard($shareWith);
-			if (!isset($vcard)) {
-				$message = 'Sharing '.$itemSource.' failed, because the contact does not exist';
-				\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
-				throw new \Exception($message);
-			}
-			$details = \OC_Contacts_VCard::structureContact($vcard);
-			// TODO Add ownCloud user to contacts vcard
-			if (!isset($details['EMAIL'])) {
-				$message = 'Sharing '.$itemSource.' failed, because no email address is associated with the contact';
-				\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
-				throw new \Exception($message);
-			}
-			return self::shareItem($itemType, $itemSource, self::SHARE_TYPE_EMAIL, $details['EMAIL'], $permissions);
+// 		} else if ($shareType === self::SHARE_TYPE_CONTACT) {
+// 			if (!\OC_App::isEnabled('contacts')) {
+// 				$message = 'Sharing '.$itemSource.' failed, because the contacts app is not enabled';
+// 				\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
+// 				return false;
+// 			}
+// 			$vcard = \OC_Contacts_App::getContactVCard($shareWith);
+// 			if (!isset($vcard)) {
+// 				$message = 'Sharing '.$itemSource.' failed, because the contact does not exist';
+// 				\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
+// 				throw new \Exception($message);
+// 			}
+// 			$details = \OC_Contacts_VCard::structureContact($vcard);
+// 			// TODO Add ownCloud user to contacts vcard
+// 			if (!isset($details['EMAIL'])) {
+// 				$message = 'Sharing '.$itemSource.' failed, because no email address is associated with the contact';
+// 				\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
+// 				throw new \Exception($message);
+// 			}
+// 			return self::shareItem($itemType, $itemSource, self::SHARE_TYPE_EMAIL, $details['EMAIL'], $permissions);
 		} else {
 			// Future share types need to include their own conditions
 			$message = 'Share type '.$shareType.' is not valid for '.$itemSource;
@@ -326,10 +337,21 @@ class Share {
 	public static function unshareFromSelf($itemType, $itemTarget) {
 		if ($item = self::getItemSharedWith($itemType, $itemTarget)) {
 			if ((int)$item['share_type'] === self::SHARE_TYPE_GROUP) {
-				// TODO
+				// 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());
+			} else if ((int)$item['share_type'] === self::$shareTypeGroupUserUnique) {
+				// Set permission to 0 to prevent it from showing up for the user
+				$query = \OC_DB::prepare('UPDATE `*PREFIX*share` SET `permissions` = ? WHERE `id` = ?');
+				$query->execute(array(0, $item['id']));
+				self::delete($item['id'], true);
+			} else {
+				self::delete($item['id']);
 			}
-			// Delete
-			return self::delete($item['id'], true);
+			return true;
 		}
 		return false;
 	}
@@ -347,7 +369,7 @@ class Share {
 		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);
+				$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();
@@ -446,8 +468,11 @@ class Share {
 				$collectionTypes[] = $type;
 			}
 		}
-		if (count($collectionTypes) > 1) {
+		if (!self::getBackend($itemType) instanceof Share_Backend_Collection) {
 			unset($collectionTypes[0]);
+		}
+		// 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;
 		}
 		return false;
@@ -492,9 +517,13 @@ class Share {
 			$root = '';
 			if ($includeCollections && !isset($item) && ($collectionTypes = self::getCollectionItemTypes($itemType))) {
 				// If includeCollections is true, find collections of this item type, e.g. a music album contains songs
-				$itemTypes = array_merge(array($itemType), $collectionTypes);
+				if (!in_array($itemType, $collectionTypes)) {
+					$itemTypes = array_merge(array($itemType), $collectionTypes);
+				} else {
+					$itemTypes = $collectionTypes;
+				}
 				$placeholders = join(',', array_fill(0, count($itemTypes), '?'));
-				$where = ' WHERE `item_type` IN ('.$placeholders.')';
+				$where .= ' WHERE item_type IN ('.$placeholders.'))';
 				$queryArgs = $itemTypes;
 			} else {
 				$where = ' WHERE `item_type` = ?';
@@ -563,12 +592,13 @@ class Share {
 			} else {
 				if ($itemType == 'file' || $itemType == 'folder') {
 					$where .= ' `file_target` = ?';
+					$item = \OC_Filesystem::normalizePath($item);
 				} else {
 					$where .= ' `item_target` = ?';
 				}
 			}
 			$queryArgs[] = $item;
-			if ($includeCollections && $collectionTypes = self::getCollectionItemTypes($itemType)) {
+			if ($includeCollections && $collectionTypes) {
 				$placeholders = join(',', array_fill(0, count($collectionTypes), '?'));
 				$where .= ' OR item_type IN ('.$placeholders.'))';
 				$queryArgs = array_merge($queryArgs, $collectionTypes);
@@ -627,6 +657,9 @@ class Share {
 				$row['share_with'] = $items[$row['parent']]['share_with'];
 				// Remove the parent group share
 				unset($items[$row['parent']]);
+				if ($row['permissions'] == 0) {
+					continue;
+				}
 			} else if (!isset($uidOwner)) {
 				// Check if the same target already exists
 				if (isset($targets[$row[$column]])) {
@@ -681,29 +714,54 @@ class Share {
 					}
 				}
 				// Check if this is a collection of the requested item type
-				if ($includeCollections && $row['item_type'] != $itemType) {
+				if ($includeCollections && $collectionTypes && in_array($row['item_type'], $collectionTypes)) {
 					if (($collectionBackend = self::getBackend($row['item_type'])) && $collectionBackend instanceof Share_Backend_Collection) {
-						$row['collection'] = array('item_type' => $itemType, $column => $row[$column]);
-						// Fetch all of the children sources
-						$children = $collectionBackend->getChildren($row[$column]);
-						foreach ($children as $child) {
-							$childItem = $row;
-							$childItem['item_source'] = $child;
-	// 						$childItem['item_target'] = $child['target']; TODO
-							if (isset($item)) {
-								if ($childItem[$column] == $item) {
-									// Return only the item instead of a 2-dimensional array
-									if ($limit == 1 && $format == self::FORMAT_NONE) {
-										return $childItem;
+						// Collections can be inside collections, check if the item is a collection
+						if (isset($item) && $row['item_type'] == $itemType && $row[$column] == $item) {
+							$collectionItems[] = $row;
+						} else {
+							$collection = array();
+							$collection['item_type'] = $row['item_type'];
+							if ($row['item_type'] == 'file' || $row['item_type'] == 'folder') {
+								$collection['path'] = basename($row['path']);
+							}
+							$row['collection'] = $collection;
+							// Fetch all of the children sources
+							$children = $collectionBackend->getChildren($row[$column]);
+							foreach ($children as $child) {
+								$childItem = $row;
+								$childItem['item_type'] = $itemType;
+								if ($row['item_type'] != 'file' && $row['item_type'] != 'folder') {
+									$childItem['item_source'] = $child['source'];
+									$childItem['item_target'] = $child['target'];
+								}
+								if ($backend instanceof Share_Backend_File_Dependent) {
+									if ($row['item_type'] == 'file' || $row['item_type'] == 'folder') {
+										$childItem['file_source'] = $child['source'];
 									} else {
-										// Unset the items array and break out of both loops
-										$items = array();
-										$items[] = $childItem;
-										break 2;
+										$childItem['file_source'] = \OC_FileCache::getId($child['file_path']);
 									}
+									$childItem['file_target'] = \OC_Filesystem::normalizePath($child['file_path']);
+								}
+								if (isset($item)) {
+									if ($childItem[$column] == $item) {
+										// Return only the item instead of a 2-dimensional array
+										if ($limit == 1) {
+											if ($format == self::FORMAT_NONE) {
+												return $childItem;
+											} else {
+												// Unset the items array and break out of both loops
+												$items = array();
+												$items[] = $childItem;
+												break 2;
+											}
+										} else {
+											$collectionItems[] = $childItem;
+										}
+									}
+								} else {
+									$collectionItems[] = $childItem;
 								}
-							} else {
-								$collectionItems[] = $childItem;
 							}
 						}
 					}
@@ -769,9 +827,9 @@ class Share {
 					// TODO Don't check if inside folder
 					$parent = $checkReshare['id'];
 					$itemSource = $checkReshare['item_source'];
-					// TODO Suggest item/file target
-					$suggestedItemTarget = $checkReshare['item_target'];
 					$fileSource = $checkReshare['file_source'];
+					$suggestedItemTarget = $checkReshare['item_target'];
+					$suggestedFileTarget = $checkReshare['file_target'];
 					$filePath = $checkReshare['file_target'];
 				}
 			} else {
@@ -781,6 +839,8 @@ class Share {
 			}
 		} else {
 			$parent = null;
+			$suggestedItemTarget = null;
+			$suggestedFileTarget = null;
 			if (!$backend->isValidSource($itemSource, $uidOwner)) {
 				$message = 'Sharing '.$itemSource.' failed, because the sharing backend for '.$itemType.' could not find its source';
 				\OC_Log::write('OCP\Share', $message, \OC_Log::ERROR);
@@ -789,7 +849,7 @@ class Share {
 			$parent = null;
 			if ($backend instanceof Share_Backend_File_Dependent) {
 				$filePath = $backend->getFilePath($itemSource, $uidOwner);
-				if ($itemType == 'file' && $itemType == 'folder') {
+				if ($itemType == 'file' || $itemType == 'folder') {
 					$fileSource = $itemSource;
 				} else {
 					$fileSource = \OC_FileCache::getId($filePath);
@@ -807,35 +867,34 @@ class Share {
 		$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 (?,?,?,?,?,?,?,?,?,?,?)');
 		// Share with a group
 		if ($shareType == self::SHARE_TYPE_GROUP) {
+			$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);
+						$groupFileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith['group'], $uidOwner, $suggestedFileTarget);
 						// Set group default file target for future use
 						$parentFolders[0]['folder'] = $groupFileTarget;
 					} else {
 						// Get group default file target
 						$groupFileTarget = $parentFolder[0]['folder'].$itemSource;
 						$parent = $parentFolder[0]['id'];
-						unset($parentFolder[0]);
-						// Only loop through users we know have different file target paths
-						$uidSharedWith = array_keys($parentFolder);
 					}
 				} else {
-					$groupFileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith['group'], $uidOwner);
+					$groupFileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith['group'], $uidOwner, $suggestedFileTarget);
 				}
 			} else {
 				$groupFileTarget = null;
 			}
-			$groupItemTarget = self::generateTarget($itemType, $itemSource, $shareType, $shareWith['group'], $uidOwner);
-			$uniqueTargets = array();
+			$query->execute(array($itemType, $itemSource, $groupItemTarget, $parent, $shareType, $shareWith['group'], $uidOwner, $permissions, time(), $fileSource, $groupFileTarget));
+			// 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);
+				$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);
+							$fileTarget = self::generateTarget('file', $filePath, self::SHARE_TYPE_USER, $uid, $uidOwner, $suggestedFileTarget, $parent);
 							if ($fileTarget != $groupFileTarget) {
 								$parentFolders[$uid]['folder'] = $fileTarget;
 							}
@@ -844,24 +903,15 @@ class Share {
 							$parent = $parentFolder[$uid]['id'];
 						}
 					} else {
-						$fileTarget = self::generateTarget('file', $filePath, self::SHARE_TYPE_USER, $uid, $uidOwner);
+						$fileTarget = self::generateTarget('file', $filePath, self::SHARE_TYPE_USER, $uid, $uidOwner, $suggestedFileTarget, $parent);
 					}
 				} else {
 					$fileTarget = null;
 				}
 				// 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)) {
-					$uniqueTargets[] = array('uid' => $uid, 'item_target' => $itemTarget, 'file_target' => $fileTarget);
-				}
-			}
-			$query->execute(array($itemType, $itemSource, $groupItemTarget, $parent, $shareType, $shareWith['group'], $uidOwner, $permissions, time(), $fileSource, $groupFileTarget));
-			// Save this id, any extra rows for this group share will need to reference it
-			$parent = \OC_DB::insertid('*PREFIX*share');
-			foreach ($uniqueTargets as $unique) {
-				$query->execute(array($itemType, $itemSource, $unique['item_target'], $parent, self::$shareTypeGroupUserUnique, $unique['uid'], $uidOwner, $permissions, time(), $fileSource, $unique['file_target']));
-				$id = \OC_DB::insertid('*PREFIX*share');
-				if ($parentFolder === true) {
-					$parentFolders['id'] = $id;
+					$query->execute(array($itemType, $itemSource, $itemTarget, $parent, self::$shareTypeGroupUserUnique, $uid, $uidOwner, $permissions, time(), $fileSource, $fileTarget));
+					\OC_DB::insertid('*PREFIX*share');
 				}
 			}
 			if ($parentFolder === true) {
@@ -869,18 +919,18 @@ class Share {
 				return $parentFolders;
 			}
 		} else {
-			$itemTarget = self::generateTarget($itemType, $itemSource, $shareType, $shareWith, $uidOwner);
+			$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);
+						$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);
+					$fileTarget = self::generateTarget('file', $filePath, $shareType, $shareWith, $uidOwner, $suggestedFileTarget);
 				}
 			} else {
 				$fileTarget = null;
@@ -902,14 +952,16 @@ class Share {
 	* @param string Item source
 	* @param int SHARE_TYPE_USER, SHARE_TYPE_GROUP, or SHARE_TYPE_LINK
 	* @param string User or group the item is being shared with
+	* @param string The suggested target originating from a reshare (optional)
+	* @param int The id of the parent group share (optional)
 	* @return string Item target
-	*
-	* TODO Use a suggested item target by default
-	*
 	*/
-	private static function generateTarget($itemType, $itemSource, $shareType, $shareWith, $uidOwner) {
+	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)) {
+				return $suggestedTarget;
+			}
 			return $backend->generateTarget($itemSource, false);
 		} else {
 			if ($itemType == 'file' || $itemType == 'folder') {
@@ -927,19 +979,35 @@ class Share {
 			$exclude = null;
 			// Backend has 3 opportunities to generate a unique target
 			for ($i = 0; $i < 2; $i++) {
-				if ($shareType == self::SHARE_TYPE_GROUP) {
-					$target = $backend->generateTarget($itemSource, false, $exclude);
+				// Check if suggested target exists first
+				if ($i == 0 && isset($suggestedTarget)) {
+					$target = $suggestedTarget;
 				} else {
-					$target = $backend->generateTarget($itemSource, $shareWith, $exclude);
-				}
-				if (is_array($exclude) && in_array($target, $exclude)) {
-					break;
+					if ($shareType == self::SHARE_TYPE_GROUP) {
+						$target = $backend->generateTarget($itemSource, false, $exclude);
+					} else {
+						$target = $backend->generateTarget($itemSource, $shareWith, $exclude);
+					}
+					if (is_array($exclude) && in_array($target, $exclude)) {
+						break;
+					}
 				}
 				// Check if target already exists
-				if ($checkTarget = self::getItems($itemType, $target, $shareType, $shareWith, null, self::FORMAT_NONE, null, 1)) {
-					// If matching target is from the same owner, use the same target. The share type will be different so this isn't the same share.
-					if ($checkTarget['uid_owner'] == $uidOwner) {
-						return $target;
+				$checkTarget = self::getItems($itemType, $target, $shareType, $shareWith);
+				if (!empty($checkTarget)) {
+					foreach ($checkTarget as $item) {
+						// Skip item if it is the group parent row
+						if (isset($groupParent) && $item['id'] == $groupParent) {
+							if (count($checkTarget) == 1) {
+								return $target;
+							} else {
+								continue;
+							}
+						}
+						// If matching target is from the same owner, use the same target. The share type will be different so this isn't the same share.
+						if ($item['uid_owner'] == $uidOwner) {
+							return $target;
+						}
 					}
 					if (!isset($exclude)) {
 						$exclude = array();
@@ -1030,7 +1098,27 @@ class Share {
 	}
 
 	public static function post_addToGroup($arguments) {
-		// TODO
+		// 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 (?,?,?,?,?,?,?,?,?,?,?)');
+		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']);
+			}
+			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']);
+			} 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));
+				\OC_DB::insertid('*PREFIX*share');
+			}
+		}
 	}
 
 	public static function post_removeFromGroup($arguments) {
@@ -1047,6 +1135,14 @@ class Share {
 		}
 	}
 
+	public static function post_deleteGroup($arguments) {
+		$query = \OC_DB::prepare('SELECT id FROM `*PREFIX*share` WHERE `share_type` = ? AND `share_with` = ?');
+		$result = $query->execute(array(self::SHARE_TYPE_GROUP, $arguments['gid']));
+		while ($item = $result->fetchRow()) {
+			self::delete($item['id']);
+		}
+	}
+
 }
 
 /**
@@ -1121,10 +1217,8 @@ 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 sources
+	* @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/template.php b/lib/public/template.php
index a0ed618cb2c5f16f4a87e872170c36f7ae556d69..4cda36508668264a966624c4f5307bb92596ab22 100644
--- a/lib/public/template.php
+++ b/lib/public/template.php
@@ -26,7 +26,7 @@
  *
  */
 
-// use OCP namespace for all classes that are considered public. 
+// use OCP namespace for all classes that are considered public.
 // This means that they should be used by apps instead of the internal ownCloud classes
 namespace OCP;
 
@@ -39,7 +39,7 @@ namespace OCP;
  *
  * For further information have a look at OC_Helper::imagePath
  */
-function image_path( $app, $image ){
+function image_path( $app, $image ) {
 	return(\image_path( $app, $image ));
 }
 
@@ -50,7 +50,7 @@ function image_path( $app, $image ){
  * @param $mimetype mimetype
  * @returns link to the image
  */
-function mimetype_icon( $mimetype ){
+function mimetype_icon( $mimetype ) {
 	return(\mimetype_icon( $mimetype ));
 }
 
@@ -61,7 +61,7 @@ function mimetype_icon( $mimetype ){
  * @param $bytes size in bytes
  * @returns size as string
  */
-function human_file_size( $bytes ){
+function human_file_size( $bytes ) {
 	return(\human_file_size( $bytes ));
 }
 
@@ -88,13 +88,13 @@ function simple_file_size($bytes) {
 
 /**
  * @brief Generate html code for an options block.
- * @param $options the options 
- * @param $selected which one is selected? 
- * @param $params the parameters 
+ * @param $options the options
+ * @param $selected which one is selected?
+ * @param $params the parameters
  * @returns html options
  */
 function html_select_options($options, $selected, $params=array()) {
-	return(\html_select_options($options, $selected, $params)); 
+	return(\html_select_options($options, $selected, $params));
 }
 
 
diff --git a/lib/public/user.php b/lib/public/user.php
index 2fa599488a7a013ca6c86d3784cfb8e9b5d80dc1..b320ce8ea0c4ba21465675c83c20a50341d814e1 100644
--- a/lib/public/user.php
+++ b/lib/public/user.php
@@ -26,7 +26,7 @@
  *
  */
 
-// use OCP namespace for all classes that are considered public. 
+// use OCP namespace for all classes that are considered public.
 // This means that they should be used by apps instead of the internal ownCloud classes
 namespace OCP;
 
@@ -34,60 +34,53 @@ namespace OCP;
  * This class provides access to the user management. You can get information about the currently logged in user and the permissions for example
  */
 class User {
-
-
 	/**
 	 * @brief get the user id of the user currently logged in.
 	 * @return string uid or false
 	 */
-	public static function getUser(){
+	public static function getUser() {
 		return \OC_USER::getUser();
 	}
 
-
 	/**
 	 * @brief Get a list of all users
 	 * @returns array with all uids
 	 *
 	 * Get a list of all users.
 	 */
-	public static function getUsers($search = '', $limit = -1, $offset = 0) {
+	public static function getUsers($search = '', $limit = null, $offset = null) {
 		return \OC_USER::getUsers();
 	}
 
-
 	/**
 	 * @brief Check if the user is logged in
 	 * @returns true/false
 	 *
 	 * Checks if the user is logged in
 	 */
-	public static function isLoggedIn(){
+	public static function isLoggedIn() {
 		return \OC_USER::isLoggedIn();
 	}
 
-
 	/**
 	 * @brief check if a user exists
 	 * @param string $uid the username
 	 * @return boolean
 	 */
-	public static function userExists( $uid ){
+	public static function userExists( $uid ) {
 		return \OC_USER::userExists( $uid );
 	}
 
-
 	/**
 	 * @brief Loggs the user out including all the session data
 	 * @returns true
 	 *
 	 * Logout, destroys session
 	 */
-	public static function logout(){
+	public static function logout() {
 		return \OC_USER::logout();
 	}
 
-
 	/**
 	 * @brief Check if the password is correct
 	 * @param $uid The username
@@ -96,27 +89,22 @@ class User {
 	 *
 	 * Check if the password is correct without logging in the user
 	 */
-	public static function checkPassword( $uid, $password ){
+	public static function checkPassword( $uid, $password ) {
 		return \OC_USER::checkPassword( $uid, $password );
 	}
 
+	/**
+	* Check if the user is a admin, redirects to home if not
+	*/
+	public static function checkAdminUser() {
+		\OC_Util::checkAdminUser();
+	}
 
-        /**
-        * Check if the user is a admin, redirects to home if not
-        */
-        public static function checkAdminUser(){
-                \OC_Util::checkAdminUser();
-        }
-
-
-        /**
-        * Check if the user is logged in, redirects to home if not. With
-        * redirect URL parameter to the request URI.
-        */
-        public static function checkLoggedIn(){
-                \OC_Util::checkLoggedIn();
-        }
-
-
-
+	/**
+	* Check if the user is logged in, redirects to home if not. With
+	* redirect URL parameter to the request URI.
+	*/
+	public static function checkLoggedIn() {
+		\OC_Util::checkLoggedIn();
+	}
 }
diff --git a/lib/public/util.php b/lib/public/util.php
index 8d7303bf7a4eba130170efccc749c30610e62579..747448e62eb4e8678fa5e8d139808a0a10f3911d 100644
--- a/lib/public/util.php
+++ b/lib/public/util.php
@@ -34,8 +34,6 @@ namespace OCP;
  * This class provides different helper functions to make the life of a developer easier
  */
 class Util {
-
-
 	// consts for Logging
 	const DEBUG=0;
 	const INFO=1;
@@ -43,16 +41,14 @@ class Util {
 	const ERROR=3;
 	const FATAL=4;
 
-
 	/**
 	 * @brief get the current installed version of ownCloud
 	 * @return array
 	 */
-	public static function getVersion(){
+	public static function getVersion() {
 		return(\OC_Util::getVersion());
 	}
 
-
 	/**
 	 * @brief send an email
 	 * @param string $toaddress
@@ -68,36 +64,33 @@ class Util {
 		\OC_MAIL::send( $toaddress, $toname, $subject, $mailtext, $fromaddress, $fromname, $html=0, $altbody='', $ccaddress='', $ccname='', $bcc='');
 	}
 
-
-        /**
+	/**
 	 * @brief write a message in the log
 	 * @param string $app
 	 * @param string $message
 	 * @param int level
-         */
-        public static function writeLog( $app, $message, $level ) {
-                // call the internal log class
-                \OC_LOG::write( $app, $message, $level );
-        }
-
+	 */
+	public static function writeLog( $app, $message, $level ) {
+		// call the internal log class
+		\OC_LOG::write( $app, $message, $level );
+	}
 
 	/**
 	 * @brief add a css file
 	 * @param url  $url
 	 */
-	public static function addStyle( $application, $file = null ){
+	public static function addStyle( $application, $file = null ) {
 		\OC_Util::addStyle( $application, $file );
-        }
-
+	}
 
 	/**
 	 * @brief add a javascript file
 	 * @param appid  $application
 	 * @param filename  $file
 	 */
-	public static function addScript( $application, $file = null ){
+	public static function addScript( $application, $file = null ) {
 		\OC_Util::addScript( $application, $file );
-        }
+	}
 
 	/**
 	 * @brief Add a custom element to the header
@@ -105,7 +98,7 @@ class Util {
 	 * @param array $attributes array of attributes for the element
 	 * @param string $text the text content for the element
 	 */
-	public static function addHeader( $tag, $attributes, $text=''){
+	public static function addHeader( $tag, $attributes, $text='') {
 		\OC_Util::addHeader( $tag, $attributes, $text );
 	}
 
@@ -114,25 +107,23 @@ class Util {
 	 * @param int timestamp $timestamp
 	 * @param bool dateOnly option to ommit time from the result
 	 */
-	public static function formatDate( $timestamp,$dateOnly=false){
+	public static function formatDate( $timestamp,$dateOnly=false) {
 		return(\OC_Util::formatDate( $timestamp,$dateOnly ));
 	}
 
-
-
 	/**
 	 * @brief Creates an absolute url
 	 * @param $app app
 	 * @param $file file
+	 * @param $args array with param=>value, will be appended to the returned url
 	 * @returns the url
 	 *
 	 * Returns a absolute url to the given app and file.
 	 */
-	public static function linkToAbsolute( $app, $file ) {
-		return(\OC_Helper::linkToAbsolute( $app, $file ));
+	public static function linkToAbsolute( $app, $file, $args = array() ) {
+		return(\OC_Helper::linkToAbsolute( $app, $file, $args ));
 	}
 
-
 	/**
 	 * @brief Creates an absolute url for remote use
 	 * @param $service id
@@ -155,17 +146,17 @@ class Util {
 		return \OC_Helper::linkToPublic($service);
 	}
 
-
 	/**
 	* @brief Creates an url
 	* @param $app app
 	* @param $file file
+	* @param $args array with param=>value, will be appended to the returned url
 	* @returns the url
 	*
 	* Returns a url to the given app and file.
 	*/
-	public static function linkTo( $app, $file ){
-		return(\OC_Helper::linkTo( $app, $file ));
+	public static function linkTo( $app, $file, $args = array() ) {
+		return(\OC_Helper::linkTo( $app, $file, $args ));
 	}
 
 	/**
@@ -197,11 +188,10 @@ class Util {
 	 *
 	 * Returns the path to the image.
 	 */
-        public static function imagePath( $app, $image ){
+	public static function imagePath( $app, $image ) {
 		return(\OC_Helper::imagePath( $app, $image ));
 	}
 
-
 	/**
 	 * @brief Make a human file size
 	 * @param $bytes file size in bytes
@@ -209,7 +199,7 @@ class Util {
 	 *
 	 * Makes 2048 to 2 kB.
 	 */
-	public static function humanFileSize( $bytes ){
+	public static function humanFileSize( $bytes ) {
 		return(\OC_Helper::humanFileSize( $bytes ));
 	}
 
@@ -222,7 +212,7 @@ class Util {
 	 *
 	 * Inspired by: http://www.php.net/manual/en/function.filesize.php#92418
 	 */
-	public static function computerFileSize( $str ){
+	public static function computerFileSize( $str ) {
 		return(\OC_Helper::computerFileSize( $str ));
 	}
 
@@ -238,11 +228,10 @@ class Util {
 	 *
 	 * TODO: write example
 	 */
-	static public function connectHook( $signalclass, $signalname, $slotclass, $slotname ){
+	static public function connectHook( $signalclass, $signalname, $slotclass, $slotname ) {
 		return(\OC_Hook::connect( $signalclass, $signalname, $slotclass, $slotname ));
 	}
 
-
 	/**
 	 * @brief emitts a signal
 	 * @param $signalclass class name of emitter
@@ -254,25 +243,23 @@ class Util {
 	 *
 	 * TODO: write example
 	 */
-	static public function emitHook( $signalclass, $signalname, $params = array()){
+	static public function emitHook( $signalclass, $signalname, $params = array()) {
 		return(\OC_Hook::emit( $signalclass, $signalname, $params ));
 	}
 
-
 	/**
- 	 * Register an get/post call. This is important to prevent CSRF attacks
+	 * Register an get/post call. This is important to prevent CSRF attacks
 	 * TODO: write example
 	 */
-	public static function callRegister(){
+	public static function callRegister() {
 		return(\OC_Util::callRegister());
 	}
 
-
 	/**
 	 * Check an ajax get/post call if the request token is valid. exit if not.
 	 * Todo: Write howto
 	 */
-	public static function callCheck(){
+	public static function callCheck() {
 		return(\OC_Util::callCheck());
 	}
 
@@ -284,7 +271,7 @@ class Util {
 	 * @param string or array of strings
 	 * @return array with sanitized strings or a single sinitized string, depends on the input parameter.
 	 */
-	public static function sanitizeHTML( $value ){
+	public static function sanitizeHTML( $value ) {
 		return(\OC_Util::sanitizeHTML($value));
 	}
 
@@ -298,7 +285,7 @@ class Util {
 	*
 	*
 	*/
-	public static function mb_array_change_key_case($input, $case = MB_CASE_LOWER, $encoding = 'UTF-8'){
+	public static function mb_array_change_key_case($input, $case = MB_CASE_LOWER, $encoding = 'UTF-8') {
 		return(\OC_Helper::mb_array_change_key_case($input, $case, $encoding));
 	}
 
diff --git a/lib/request.php b/lib/request.php
index 3fe61fbddcde5909f61e7ef582e54c88486d990d..87262d986255555467fea8485201f10f3cb274bf 100644
--- a/lib/request.php
+++ b/lib/request.php
@@ -15,7 +15,7 @@ class OC_Request {
 	 * reverse proxies
 	 */
 	public static function serverHost() {
-		if(OC::$CLI){
+		if(OC::$CLI) {
 			return 'localhost';
 		}
 		if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])) {
@@ -49,7 +49,7 @@ class OC_Request {
 				$proto = 'http';
 			}
 		}
-		return($proto);
+		return $proto;
 	}
 
 	/**
@@ -57,7 +57,7 @@ class OC_Request {
 	 * @returns string Path info or false when not found
 	 */
 	public static function getPathInfo() {
-		if (array_key_exists('PATH_INFO', $_SERVER)){
+		if (array_key_exists('PATH_INFO', $_SERVER)) {
 			$path_info = $_SERVER['PATH_INFO'];
 		}else{
 			$path_info = substr($_SERVER['REQUEST_URI'], strlen($_SERVER['SCRIPT_NAME']));
diff --git a/lib/response.php b/lib/response.php
index a75135c01761e5744a314292b7720e5b6446a3c2..49d79fda7099dad395847c3cd68de94a67d9518e 100644
--- a/lib/response.php
+++ b/lib/response.php
@@ -111,12 +111,13 @@ class OC_Response {
 		if (empty($etag)) {
 			return;
 		}
+		$etag = '"'.$etag.'"';
 		if (isset($_SERVER['HTTP_IF_NONE_MATCH']) &&
 		    trim($_SERVER['HTTP_IF_NONE_MATCH']) == $etag) {
 			self::setStatus(self::STATUS_NOT_MODIFIED);
 			exit;
 		}
-		header('ETag: "'.$etag.'"');
+		header('ETag: '.$etag);
 	}
 
 	/**
diff --git a/lib/search.php b/lib/search.php
index f8a4b8e96eb16470ebb30aebf5881baf8989e02c..0b6ad050024349649dc60184752a73edacfd5153 100644
--- a/lib/search.php
+++ b/lib/search.php
@@ -27,45 +27,45 @@
 class OC_Search{
 	static private $providers=array();
 	static private $registeredProviders=array();
-	
+
 	/**
 	 * remove all registered search providers
 	 */
-	public static function clearProviders(){
+	public static function clearProviders() {
 		self::$providers=array();
 		self::$registeredProviders=array();
 	}
-	
+
 	/**
 	 * register a new search provider to be used
 	 * @param string $provider class name of a OC_Search_Provider
 	 */
-	public static function registerProvider($class,$options=array()){
+	public static function registerProvider($class,$options=array()) {
 		self::$registeredProviders[]=array('class'=>$class,'options'=>$options);
 	}
-	
+
 	/**
 	 * search all provider for $query
 	 * @param string query
 	 * @return array An array of OC_Search_Result's
 	 */
-	public static function search($query){
+	public static function search($query) {
 		self::initProviders();
 		$results=array();
-		foreach(self::$providers as $provider){
+		foreach(self::$providers as $provider) {
 			$results=array_merge($results, $provider->search($query));
 		}
 		return $results;
 	}
-	
+
 	/**
 	 * create instances of all the registered search providers
 	 */
-	private static function initProviders(){
-		if(count(self::$providers)>0){
+	private static function initProviders() {
+		if(count(self::$providers)>0) {
 			return;
 		}
-		foreach(self::$registeredProviders as $provider){
+		foreach(self::$registeredProviders as $provider) {
 			$class=$provider['class'];
 			$options=$provider['options'];
 			self::$providers[]=new $class($options);
diff --git a/lib/search/provider.php b/lib/search/provider.php
index b3ee79b477091ea14a8720f23a59f10f082c83ae..b617b9c5d94697e184a24c4c3ec84b92e895467b 100644
--- a/lib/search/provider.php
+++ b/lib/search/provider.php
@@ -4,11 +4,11 @@
  */
 abstract class OC_Search_Provider {
 	private $options;
-	
-	public function __construct($options){
+
+	public function __construct($options) {
 		$this->options=$options;
 	}
-	
+
 	/**
 	 * search for $query
 	 * @param string $query
diff --git a/lib/search/provider/file.php b/lib/search/provider/file.php
index a37af4955999cb44a43bfca5ce6016887d92835b..50e16457672d2541912f78afc8219052d8f9ce14 100644
--- a/lib/search/provider/file.php
+++ b/lib/search/provider/file.php
@@ -1,30 +1,30 @@
 <?php
 
 class OC_Search_Provider_File extends OC_Search_Provider{
-	function search($query){
+	function search($query) {
 		$files=OC_FileCache::search($query,true);
 		$results=array();
-		foreach($files as $fileData){
+		foreach($files as $fileData) {
 			$file=$fileData['path'];
 			$mime=$fileData['mimetype'];
-			if($mime=='httpd/unix-directory'){
-				$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'index.php' ).'?dir='.$file,'Files');
+			if($mime=='httpd/unix-directory') {
+				$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'index.php', array('dir' => $file)),'Files');
 			}else{
 				$mimeBase=$fileData['mimepart'];
-				switch($mimeBase){
+				switch($mimeBase) {
 					case 'audio':
 						break;
 					case 'text':
-						$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'download.php' ).'?file='.$file,'Text');
+						$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'download.php', array('dir' => $file) ),'Text');
 						break;
 					case 'image':
-						$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'download.php' ).'?file='.$file,'Images');
+						$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'download.php', array('dir' => $file) ),'Images');
 						break;
 					default:
-						if($mime=='application/xml'){
-							$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'download.php' ).'?file='.$file,'Text');
+						if($mime=='application/xml') {
+							$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'download.php', array('dir' => $file) ),'Text');
 						}else{
-							$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'download.php' ).'?file='.$file,'Files');
+							$results[]=new OC_Search_Result(basename($file),'',OC_Helper::linkTo( 'files', 'download.php', array('dir' => $file) ),'Files');
 						}
 				}
 			}
diff --git a/lib/search/result.php b/lib/search/result.php
index cd78a5cf25390e380bc1606009cfbdbf69cabe78..63b5cfabce6ef2bd428a237d48452102a9f73a2c 100644
--- a/lib/search/result.php
+++ b/lib/search/result.php
@@ -15,7 +15,7 @@ class OC_Search_Result{
 	 * @param string $link link for the result
 	 * @param string $type the type of result as human readable string ('File', 'Music', etc)
 	 */
-	public function __construct($name,$text,$link,$type){
+	public function __construct($name,$text,$link,$type) {
 		$this->name=$name;
 		$this->text=$text;
 		$this->link=$link;
diff --git a/lib/setup.php b/lib/setup.php
index f7e8c6950ce0c1fe2d1fb8d59355305bed5a0fa5..c21c8be3957d7c9af37657679622df33a6dcd7b6 100644
--- a/lib/setup.php
+++ b/lib/setup.php
@@ -9,7 +9,7 @@ $opts = array(
 	'hasSQLite' => $hasSQLite,
 	'hasMySQL' => $hasMySQL,
 	'hasPostgreSQL' => $hasPostgreSQL,
-        'hasOracle' => $hasOracle,
+	'hasOracle' => $hasOracle,
 	'directory' => $datadir,
 	'errors' => array(),
 );
@@ -18,7 +18,7 @@ if(isset($_POST['install']) AND $_POST['install']=='true') {
 	// We have to launch the installation process :
 	$e = OC_Setup::install($_POST);
 	$errors = array('errors' => $e);
-	
+
 	if(count($e) > 0) {
 		//OC_Template::printGuestPage("", "error", array("errors" => $errors));
 		$options = array_merge($_POST, $opts, $errors);
@@ -37,7 +37,7 @@ class OC_Setup {
 	public static function install($options) {
 		$error = array();
 		$dbtype = $options['dbtype'];
-		
+
 		if(empty($options['adminlogin'])) {
 			$error[] = 'Set an admin username.';
 		}
@@ -51,10 +51,10 @@ class OC_Setup {
 		if($dbtype=='mysql' or $dbtype == 'pgsql' or $dbtype == 'oci') { //mysql and postgresql needs more config options
 			if($dbtype=='mysql')
 				$dbprettyname = 'MySQL';
-                        else if($dbtype=='pgsql')
-                                $dbprettyname = 'PostgreSQL';
-                        else
-                                $dbprettyname = 'Oracle';
+			else if($dbtype=='pgsql')
+					$dbprettyname = 'PostgreSQL';
+			else
+					$dbprettyname = 'Oracle';
 
 
 			if(empty($options['dbuser'])) {
@@ -63,7 +63,7 @@ class OC_Setup {
 			if(empty($options['dbname'])) {
 				$error[] = "$dbprettyname enter the database name.";
 			}
-			if(empty($options['dbhost'])) {
+			if($dbtype != 'oci' && empty($options['dbhost'])) {
 				$error[] = "$dbprettyname set the database host.";
 			}
 		}
@@ -72,9 +72,9 @@ class OC_Setup {
 			$username = htmlspecialchars_decode($options['adminlogin']);
 			$password = htmlspecialchars_decode($options['adminpass']);
 			$datadir = htmlspecialchars_decode($options['directory']);
-			
+
 			//use sqlite3 when available, otherise sqlite2 will be used.
-			if($dbtype=='sqlite' and class_exists('SQLite3')){
+			if($dbtype=='sqlite' and class_exists('SQLite3')) {
 				$dbtype='sqlite3';
 			}
 
@@ -84,8 +84,8 @@ class OC_Setup {
 
 			//write the config file
 			OC_Config::setValue('datadirectory', $datadir);
- 			OC_Config::setValue('dbtype', $dbtype);
- 			OC_Config::setValue('version',implode('.',OC_Util::getVersion()));
+			OC_Config::setValue('dbtype', $dbtype);
+			OC_Config::setValue('version',implode('.',OC_Util::getVersion()));
 			if($dbtype == 'mysql') {
 				$dbuser = $options['dbuser'];
 				$dbpass = $options['dbpass'];
@@ -107,14 +107,14 @@ class OC_Setup {
 				}
 				else {
 					$oldUser=OC_Config::getValue('dbuser', false);
-					
+
 					$query="SELECT user FROM mysql.user WHERE user='$dbuser'"; //this should be enough to check for admin rights in mysql
 					if(mysql_query($query, $connection)) {
 						//use the admin login data for the new database user
 
 						//add prefix to the mysql user name to prevent collisions
 						$dbusername=substr('oc_'.$username,0,16);
-						if($dbusername!=$oldUser){
+						if($dbusername!=$oldUser) {
 							//hash the password so we don't need to store the admin config in the config file
 							$dbpassword=md5(time().$password);
 
@@ -128,7 +128,7 @@ class OC_Setup {
 						self::createDatabase($dbname, $dbusername, $connection);
 					}
 					else {
-						if($dbuser!=$oldUser){
+						if($dbuser!=$oldUser) {
 							OC_Config::setValue('dbuser', $dbuser);
 							OC_Config::setValue('dbpassword', $dbpass);
 						}
@@ -140,7 +140,7 @@ class OC_Setup {
 					//fill the database if needed
 					$query="select count(*) from information_schema.tables where table_schema='$dbname' AND table_name = '{$dbtableprefix}users';";
 					$result = mysql_query($query,$connection);
-					if($result){
+					if($result) {
 						$row=mysql_fetch_row($result);
 					}
 					if(!$result or $row[0]==0) {
@@ -184,9 +184,9 @@ class OC_Setup {
 						$dbusername='oc_'.$username;
 						//create a new password so we don't need to store the admin config in the config file
 						$dbpassword=md5(time());
-						
+
 						self::pg_createDBUser($dbusername, $dbpassword, $connection);
-						
+
 						OC_CONFIG::setValue('dbuser', $dbusername);
 						OC_CONFIG::setValue('dbpassword', $dbpassword);
 
@@ -232,120 +232,128 @@ class OC_Setup {
 					}
 				}
 			}
-                        elseif($dbtype == 'oci') {
-                                $dbuser = $options['dbuser'];
-                                $dbpass = $options['dbpass'];
-                                $dbname = $options['dbname'];
-                                $dbtablespace = $options['dbtablespace'];
-                                $dbhost = $options['dbhost'];
-                                $dbtableprefix = isset($options['dbtableprefix']) ? $options['dbtableprefix'] : 'oc_';
-                                OC_CONFIG::setValue('dbname', $dbname);
-                                OC_CONFIG::setValue('dbtablespace', $dbtablespace);
-                                OC_CONFIG::setValue('dbhost', $dbhost);
-                                OC_CONFIG::setValue('dbtableprefix', $dbtableprefix);
-
-                                $e_host = addslashes($dbhost);
-                                $e_dbname = addslashes($dbname);
-                                //check if the database user has admin right
-                                $connection_string = '//'.$e_host.'/'.$e_dbname;
-                                $connection = @oci_connect($dbuser, $dbpass, $connection_string);
-                                if(!$connection) {
-                                        $e = oci_error();
-                                        $error[] = array(
-                                                'error' => 'Oracle username and/or password not valid',
-                                                'hint' => 'You need to enter either an existing account or the administrator.'
-                                        );
-                                        return $error;
-                                } else {
-                                        //check for roles creation rights in oracle             
-
-                                        $query="SELECT count(*) FROM user_role_privs, role_sys_privs WHERE user_role_privs.granted_role = role_sys_privs.role AND privilege = 'CREATE ROLE'";
-                                        $stmt = oci_parse($connection, $query);
-                                        if (!$stmt) {
-                                                $entry='DB Error: "'.oci_last_error($connection).'"<br />';
-                                                $entry.='Offending command was: '.$query.'<br />';
-                                                echo($entry);
-                                        }
-                                        $result = oci_execute($stmt);
-                                        if($result) {
-                                                $row = oci_fetch_row($stmt);
-                                        }
-                                        if($result and $row[0] > 0) {
-                                                //use the admin login data for the new database user
-
-                                                //add prefix to the oracle user name to prevent collisions
-                                                $dbusername='oc_'.$username;
-                                                //create a new password so we don't need to store the admin config in the config file
-                                                $dbpassword=md5(time().$dbpass);
-
-                                                //oracle passwords are treated as identifiers:
-                                                //  must start with aphanumeric char
-                                                //  needs to be shortened to 30 bytes, as the two " needed to escape the identifier count towards the identifier length.
-                                                $dbpassword=substr($dbpassword, 0, 30);
-
-                                                self::oci_createDBUser($dbusername, $dbpassword, $dbtablespace, $connection);
-
-                                                OC_CONFIG::setValue('dbuser', $dbusername);
-                                                OC_CONFIG::setValue('dbname', $dbusername);
-                                                OC_CONFIG::setValue('dbpassword', $dbpassword);
-
-                                                //create the database not neccessary, oracle implies user = schema
-                                                //self::oci_createDatabase($dbname, $dbusername, $connection);
-                                        } else {
-
-                                                OC_CONFIG::setValue('dbuser', $dbuser);
-                                                OC_CONFIG::setValue('dbname', $dbname);
-                                                OC_CONFIG::setValue('dbpassword', $dbpass);
-
-                                                //create the database not neccessary, oracle implies user = schema
-                                                //self::oci_createDatabase($dbname, $dbuser, $connection);
-                                        }
-
-                                        //FIXME check tablespace exists: select * from user_tablespaces
-
-                                        // the connection to dbname=oracle is not needed anymore
-                                        oci_close($connection);
-
-                                        // connect to the oracle database (schema=$dbuser) an check if the schema needs to be filled
-                                        $dbuser = OC_CONFIG::getValue('dbuser');
-                                        //$dbname = OC_CONFIG::getValue('dbname');
-                                        $dbpass = OC_CONFIG::getValue('dbpassword');
-
-                                        $e_host = addslashes($dbhost);
-                                        $e_dbname = addslashes($dbname);
-
-                                        $connection_string = '//'.$e_host.'/'.$e_dbname;
-                                        $connection = @oci_connect($dbuser, $dbpass, $connection_string);
-                                        if(!$connection) {
-                                                $error[] = array(
-                                                        'error' => 'Oracle username and/or password not valid',
-                                                        'hint' => 'You need to enter either an existing account or the administrator.'
-                                                );
-                                                return $error;
-                                        } else {
-                                                $query = "SELECT count(*) FROM user_tables WHERE table_name = :un";
-                                                $stmt = oci_parse($connection, $query);
-                                                $un = $dbtableprefix.'users';
-                                                oci_bind_by_name($stmt, ':un', $un);
-                                                if (!$stmt) {
-                                                        $entry='DB Error: "'.oci_last_error($connection).'"<br />';
-                                                        $entry.='Offending command was: '.$query.'<br />';
-                                                        echo($entry);
-                                                }
-                                                $result = oci_execute($stmt);
-
-                                                if($result) {
-                                                        $row = oci_fetch_row($stmt);
-                                                }
-                                                if(!$result or $row[0]==0) {
-                                                        OC_DB::createDbFromStructure('db_structure.xml');
-                                                }
-                                        }
-                                }
-                        }                   
+			elseif($dbtype == 'oci') {
+				$dbuser = $options['dbuser'];
+				$dbpass = $options['dbpass'];
+				$dbname = $options['dbname'];
+				$dbtablespace = $options['dbtablespace'];
+				$dbhost = isset($options['dbhost'])?$options['dbhost']:'';
+				$dbtableprefix = isset($options['dbtableprefix']) ? $options['dbtableprefix'] : 'oc_';
+				OC_CONFIG::setValue('dbname', $dbname);
+				OC_CONFIG::setValue('dbtablespace', $dbtablespace);
+				OC_CONFIG::setValue('dbhost', $dbhost);
+				OC_CONFIG::setValue('dbtableprefix', $dbtableprefix);
+
+				$e_host = addslashes($dbhost);
+				$e_dbname = addslashes($dbname);
+				//check if the database user has admin right
+				if ($e_host == '') {
+					$easy_connect_string = $e_dbname; // use dbname as easy connect name
+				} else {
+					$easy_connect_string = '//'.$e_host.'/'.$e_dbname;
+				}
+				$connection = @oci_connect($dbuser, $dbpass, $easy_connect_string);
+				if(!$connection) {
+					$e = oci_error();
+					$error[] = array(
+						'error' => 'Oracle username and/or password not valid',
+						'hint' => 'You need to enter either an existing account or the administrator.'
+					);
+					return $error;
+				} else {
+					//check for roles creation rights in oracle
+
+					$query="SELECT count(*) FROM user_role_privs, role_sys_privs WHERE user_role_privs.granted_role = role_sys_privs.role AND privilege = 'CREATE ROLE'";
+					$stmt = oci_parse($connection, $query);
+					if (!$stmt) {
+						$entry='DB Error: "'.oci_last_error($connection).'"<br />';
+						$entry.='Offending command was: '.$query.'<br />';
+						echo($entry);
+					}
+					$result = oci_execute($stmt);
+					if($result) {
+						$row = oci_fetch_row($stmt);
+					}
+					if($result and $row[0] > 0) {
+						//use the admin login data for the new database user
+
+						//add prefix to the oracle user name to prevent collisions
+						$dbusername='oc_'.$username;
+						//create a new password so we don't need to store the admin config in the config file
+						$dbpassword=md5(time().$dbpass);
+
+						//oracle passwords are treated as identifiers:
+						//  must start with aphanumeric char
+						//  needs to be shortened to 30 bytes, as the two " needed to escape the identifier count towards the identifier length.
+						$dbpassword=substr($dbpassword, 0, 30);
+
+						self::oci_createDBUser($dbusername, $dbpassword, $dbtablespace, $connection);
+
+						OC_CONFIG::setValue('dbuser', $dbusername);
+						OC_CONFIG::setValue('dbname', $dbusername);
+						OC_CONFIG::setValue('dbpassword', $dbpassword);
+
+						//create the database not neccessary, oracle implies user = schema
+						//self::oci_createDatabase($dbname, $dbusername, $connection);
+					} else {
+
+						OC_CONFIG::setValue('dbuser', $dbuser);
+						OC_CONFIG::setValue('dbname', $dbname);
+						OC_CONFIG::setValue('dbpassword', $dbpass);
+
+						//create the database not neccessary, oracle implies user = schema
+						//self::oci_createDatabase($dbname, $dbuser, $connection);
+					}
+
+					//FIXME check tablespace exists: select * from user_tablespaces
+
+					// the connection to dbname=oracle is not needed anymore
+					oci_close($connection);
+
+					// connect to the oracle database (schema=$dbuser) an check if the schema needs to be filled
+					$dbuser = OC_CONFIG::getValue('dbuser');
+					//$dbname = OC_CONFIG::getValue('dbname');
+					$dbpass = OC_CONFIG::getValue('dbpassword');
+
+					$e_host = addslashes($dbhost);
+					$e_dbname = addslashes($dbname);
+
+					if ($e_host == '') {
+						$easy_connect_string = $e_dbname; // use dbname as easy connect name
+					} else {
+						$easy_connect_string = '//'.$e_host.'/'.$e_dbname;
+					}
+					$connection = @oci_connect($dbuser, $dbpass, $easy_connect_string);
+					if(!$connection) {
+						$error[] = array(
+							'error' => 'Oracle username and/or password not valid',
+							'hint' => 'You need to enter either an existing account or the administrator.'
+						);
+						return $error;
+					} else {
+						$query = "SELECT count(*) FROM user_tables WHERE table_name = :un";
+						$stmt = oci_parse($connection, $query);
+						$un = $dbtableprefix.'users';
+						oci_bind_by_name($stmt, ':un', $un);
+						if (!$stmt) {
+							$entry='DB Error: "'.oci_last_error($connection).'"<br />';
+							$entry.='Offending command was: '.$query.'<br />';
+							echo($entry);
+						}
+						$result = oci_execute($stmt);
+
+						if($result) {
+							$row = oci_fetch_row($stmt);
+						}
+						if(!$result or $row[0]==0) {
+							OC_DB::createDbFromStructure('db_structure.xml');
+						}
+					}
+				}
+			}
 			else {
 				//delete the old sqlite database first, might cause infinte loops otherwise
-				if(file_exists("$datadir/owncloud.db")){
+				if(file_exists("$datadir/owncloud.db")) {
 					unlink("$datadir/owncloud.db");
 				}
 				//in case of sqlite, we can always fill the database
@@ -428,7 +436,7 @@ class OC_Setup {
 			}
 		}
 		$query = "REVOKE ALL PRIVILEGES ON DATABASE \"$e_name\" FROM PUBLIC";
-		$result = pg_query($connection, $query);		
+		$result = pg_query($connection, $query);
 	}
 
 	private static function pg_createDBUser($name,$password,$connection) {
@@ -462,79 +470,79 @@ class OC_Setup {
 			}
 		}
 	}
-        /**
-         * 
-         * @param String $name
-         * @param String $password
-         * @param String $tablespace
-         * @param resource $connection
-         */
-        private static function oci_createDBUser($name, $password, $tablespace, $connection) {
-
-                $query = "SELECT * FROM all_users WHERE USERNAME = :un";
-                $stmt = oci_parse($connection, $query);
-                if (!$stmt) {
-                        $entry='DB Error: "'.oci_error($connection).'"<br />';
-                        $entry.='Offending command was: '.$query.'<br />';
-                        echo($entry);
-                }
-                oci_bind_by_name($stmt, ':un', $name);
-                $result = oci_execute($stmt);
-                if(!$result) {
-                        $entry='DB Error: "'.oci_error($connection).'"<br />';
-                        $entry.='Offending command was: '.$query.'<br />';
-                        echo($entry);
-                }
-
-                if(! oci_fetch_row($stmt)) {
-                        //user does not exists let's create it :)
-                        //password must start with alphabetic character in oracle
-                        $query = 'CREATE USER '.$name.' IDENTIFIED BY "'.$password.'" DEFAULT TABLESPACE '.$tablespace; //TODO set default tablespace
-                        $stmt = oci_parse($connection, $query);
-                        if (!$stmt) {
-                                $entry='DB Error: "'.oci_error($connection).'"<br />';
-                                $entry.='Offending command was: '.$query.'<br />';
-                                echo($entry);
-                        }
-                        //oci_bind_by_name($stmt, ':un', $name);
-                        $result = oci_execute($stmt);
-                        if(!$result) {
-                                $entry='DB Error: "'.oci_error($connection).'"<br />';
-                                $entry.='Offending command was: '.$query.', name:'.$name.', password:'.$password.'<br />';
-                                echo($entry);
-                        }
-                } else { // change password of the existing role
-                        $query = "ALTER USER :un IDENTIFIED BY :pw";
-                        $stmt = oci_parse($connection, $query);
-                        if (!$stmt) {
-                                $entry='DB Error: "'.oci_error($connection).'"<br />';
-                                $entry.='Offending command was: '.$query.'<br />';
-                                echo($entry);
-                        }
-                        oci_bind_by_name($stmt, ':un', $name);
-                        oci_bind_by_name($stmt, ':pw', $password);
-                        $result = oci_execute($stmt);
-                        if(!$result) {
-                                $entry='DB Error: "'.oci_error($connection).'"<br />';
-                                $entry.='Offending command was: '.$query.'<br />';
-                                echo($entry);
-                        }
-                }
-                // grant neccessary roles
-                $query = 'GRANT CREATE SESSION, CREATE TABLE, CREATE SEQUENCE, CREATE TRIGGER, UNLIMITED TABLESPACE TO '.$name;
-                $stmt = oci_parse($connection, $query);
-                if (!$stmt) {
-                        $entry='DB Error: "'.oci_error($connection).'"<br />';
-                        $entry.='Offending command was: '.$query.'<br />';
-                        echo($entry);
-                }
-                $result = oci_execute($stmt);
-                if(!$result) {
-                        $entry='DB Error: "'.oci_error($connection).'"<br />';
-                        $entry.='Offending command was: '.$query.', name:'.$name.', password:'.$password.'<br />';
-                        echo($entry);
-                }
-        }
+	/**
+	 *
+	 * @param String $name
+	 * @param String $password
+	 * @param String $tablespace
+	 * @param resource $connection
+	 */
+	private static function oci_createDBUser($name, $password, $tablespace, $connection) {
+
+		$query = "SELECT * FROM all_users WHERE USERNAME = :un";
+		$stmt = oci_parse($connection, $query);
+		if (!$stmt) {
+			$entry='DB Error: "'.oci_error($connection).'"<br />';
+			$entry.='Offending command was: '.$query.'<br />';
+			echo($entry);
+		}
+		oci_bind_by_name($stmt, ':un', $name);
+		$result = oci_execute($stmt);
+		if(!$result) {
+			$entry='DB Error: "'.oci_error($connection).'"<br />';
+			$entry.='Offending command was: '.$query.'<br />';
+			echo($entry);
+		}
+
+		if(! oci_fetch_row($stmt)) {
+			//user does not exists let's create it :)
+			//password must start with alphabetic character in oracle
+			$query = 'CREATE USER '.$name.' IDENTIFIED BY "'.$password.'" DEFAULT TABLESPACE '.$tablespace; //TODO set default tablespace
+			$stmt = oci_parse($connection, $query);
+			if (!$stmt) {
+				$entry='DB Error: "'.oci_error($connection).'"<br />';
+				$entry.='Offending command was: '.$query.'<br />';
+				echo($entry);
+			}
+			//oci_bind_by_name($stmt, ':un', $name);
+			$result = oci_execute($stmt);
+			if(!$result) {
+				$entry='DB Error: "'.oci_error($connection).'"<br />';
+				$entry.='Offending command was: '.$query.', name:'.$name.', password:'.$password.'<br />';
+				echo($entry);
+			}
+		} else { // change password of the existing role
+			$query = "ALTER USER :un IDENTIFIED BY :pw";
+			$stmt = oci_parse($connection, $query);
+			if (!$stmt) {
+				$entry='DB Error: "'.oci_error($connection).'"<br />';
+				$entry.='Offending command was: '.$query.'<br />';
+				echo($entry);
+			}
+			oci_bind_by_name($stmt, ':un', $name);
+			oci_bind_by_name($stmt, ':pw', $password);
+			$result = oci_execute($stmt);
+			if(!$result) {
+				$entry='DB Error: "'.oci_error($connection).'"<br />';
+				$entry.='Offending command was: '.$query.'<br />';
+				echo($entry);
+			}
+		}
+		// grant neccessary roles
+		$query = 'GRANT CREATE SESSION, CREATE TABLE, CREATE SEQUENCE, CREATE TRIGGER, UNLIMITED TABLESPACE TO '.$name;
+		$stmt = oci_parse($connection, $query);
+		if (!$stmt) {
+			$entry='DB Error: "'.oci_error($connection).'"<br />';
+			$entry.='Offending command was: '.$query.'<br />';
+			echo($entry);
+		}
+		$result = oci_execute($stmt);
+		if(!$result) {
+			$entry='DB Error: "'.oci_error($connection).'"<br />';
+			$entry.='Offending command was: '.$query.', name:'.$name.', password:'.$password.'<br />';
+			echo($entry);
+		}
+	}
 
 	/**
 	 * create .htaccess files for apache hosts
@@ -552,7 +560,7 @@ class OC_Setup {
 		$content.= "</IfModule>\n";
 		$content.= "<IfModule mod_rewrite.c>\n";
 		$content.= "RewriteEngine on\n";
- 		$content.= "RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]\n";
+		$content.= "RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]\n";
 		$content.= "RewriteRule ^.well-known/host-meta /public.php?service=host-meta [QSA,L]\n";
 		$content.= "RewriteRule ^.well-known/carddav /remote.php/carddav/ [R]\n";
 		$content.= "RewriteRule ^.well-known/caldav /remote.php/caldav/ [R]\n";
diff --git a/lib/streamwrappers.php b/lib/streamwrappers.php
index f502c6170bddaaf48d7f1f07a923103b88087a31..1e5b19a11f0bcba8b146fc6fc6e5c1205d0cdd2b 100644
--- a/lib/streamwrappers.php
+++ b/lib/streamwrappers.php
@@ -5,17 +5,17 @@ class OC_FakeDirStream{
 	private $name;
 	private $index;
 
-	public function dir_opendir($path,$options){
+	public function dir_opendir($path,$options) {
 		$this->name=substr($path,strlen('fakedir://'));
 		$this->index=0;
-		if(!isset(self::$dirs[$this->name])){
+		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])){
+	public function dir_readdir() {
+		if($this->index>=count(self::$dirs[$this->name])) {
 			return false;
 		}
 		$filename=self::$dirs[$this->name][$this->index];
@@ -222,35 +222,35 @@ class OC_CloseStreamWrapper{
 	private $path='';
 	private $source;
 	private static $open=array();
-	public function stream_open($path, $mode, $options, &$opened_path){
+	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)){
+		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){
+	public function stream_seek($offset, $whence=SEEK_SET) {
 		fseek($this->source,$offset,$whence);
 	}
 
-	public function stream_tell(){
+	public function stream_tell() {
 		return ftell($this->source);
 	}
 
-	public function stream_read($count){
+	public function stream_read($count) {
 		return fread($this->source,$count);
 	}
 
-	public function stream_write($data){
+	public function stream_write($data) {
 		return fwrite($this->source,$data);
 	}
 
-	public function stream_set_option($option,$arg1,$arg2){
-		switch($option){
+	public function stream_set_option($option,$arg1,$arg2) {
+		switch($option) {
 			case STREAM_OPTION_BLOCKING:
 				stream_set_blocking($this->source,$arg1);
 				break;
@@ -262,39 +262,39 @@ class OC_CloseStreamWrapper{
 		}
 	}
 
-	public function stream_stat(){
+	public function stream_stat() {
 		return fstat($this->source);
 	}
 
-	public function stream_lock($mode){
+	public function stream_lock($mode) {
 		flock($this->source,$mode);
 	}
 
-	public function stream_flush(){
+	public function stream_flush() {
 		return fflush($this->source);
 	}
 
-	public function stream_eof(){
+	public function stream_eof() {
 		return feof($this->source);
 	}
 
 	public function url_stat($path) {
 		$path=substr($path,strlen('close://'));
-		if(file_exists($path)){
+		if(file_exists($path)) {
 			return stat($path);
 		}else{
 			return false;
 		}
 	}
 
-	public function stream_close(){
+	public function stream_close() {
 		fclose($this->source);
-		if(isset(self::$callBacks[$this->path])){
+		if(isset(self::$callBacks[$this->path])) {
 			call_user_func(self::$callBacks[$this->path],$this->path);
 		}
 	}
 
-	public function unlink($path){
+	public function unlink($path) {
 		$path=substr($path,strlen('close://'));
 		return unlink($path);
 	}
diff --git a/lib/subadmin.php b/lib/subadmin.php
index 718fe922ffe424c4b03f98489d25c1dcf45f6a2c..363e4a97cadefe16d41c2c17259336ffdd8ed4ef 100644
--- a/lib/subadmin.php
+++ b/lib/subadmin.php
@@ -3,7 +3,7 @@
  * ownCloud
  *
  * @author Georg Ehrke
- * @copyright 2012 Georg Ehrke 
+ * @copyright 2012 Georg Ehrke
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
@@ -36,7 +36,7 @@ class OC_SubAdmin{
 	 * @param $gid gid of the group
 	 * @return boolean
 	 */
-	public static function createSubAdmin($uid, $gid){
+	public static function createSubAdmin($uid, $gid) {
 		$stmt = OC_DB::prepare('INSERT INTO `*PREFIX*group_admin` (`gid`,`uid`) VALUES(?,?)');
 		$result = $stmt->execute(array($gid, $uid));
 		OC_Hook::emit( "OC_SubAdmin", "post_createSubAdmin", array( "gid" => $gid ));
@@ -49,7 +49,7 @@ class OC_SubAdmin{
 	 * @param $gid gid of the group
 	 * @return boolean
 	 */
-	public static function deleteSubAdmin($uid, $gid){
+	public static function deleteSubAdmin($uid, $gid) {
 		$stmt = OC_DB::prepare('DELETE FROM `*PREFIX*group_admin` WHERE `gid` = ? AND `uid` = ?');
 		$result = $stmt->execute(array($gid, $uid));
 		OC_Hook::emit( "OC_SubAdmin", "post_deleteSubAdmin", array( "gid" => $gid ));
@@ -61,11 +61,11 @@ class OC_SubAdmin{
 	 * @param $uid uid of the SubAdmin
 	 * @return array
 	 */
-	public static function getSubAdminsGroups($uid){
+	public static function getSubAdminsGroups($uid) {
 		$stmt = OC_DB::prepare('SELECT `gid` FROM `*PREFIX*group_admin` WHERE `uid` = ?');
 		$result = $stmt->execute(array($uid));
 		$gids = array();
-		while($row = $result->fetchRow()){
+		while($row = $result->fetchRow()) {
 			$gids[] = $row['gid'];
 		}
 		return $gids;
@@ -76,96 +76,96 @@ class OC_SubAdmin{
 	 * @param $gid gid of the group
 	 * @return array
 	 */
-	public static function getGroupsSubAdmins($gid){
+	public static function getGroupsSubAdmins($gid) {
 		$stmt = OC_DB::prepare('SELECT `uid` FROM `*PREFIX*group_admin` WHERE `gid` = ?');
 		$result = $stmt->execute(array($gid));
 		$uids = array();
-		while($row = $result->fetchRow()){
+		while($row = $result->fetchRow()) {
 			$uids[] = $row['uid'];
 		}
 		return $uids;
 	}
-	
+
 	/**
 	 * @brief get all SubAdmins
 	 * @return array
 	 */
-	public static function getAllSubAdmins(){
+	public static function getAllSubAdmins() {
 		$stmt = OC_DB::prepare('SELECT * FROM `*PREFIX*group_admin`');
 		$result = $stmt->execute();
 		$subadmins = array();
-		while($row = $result->fetchRow()){
+		while($row = $result->fetchRow()) {
 			$subadmins[] = $row;
 		}
 		return $subadmins;
 	}
-	
+
 	/**
 	 * @brief checks if a user is a SubAdmin of a group
 	 * @param $uid uid of the subadmin
 	 * @param $gid gid of the group
 	 * @return bool
 	 */
-	public static function isSubAdminofGroup($uid, $gid){
+	public static function isSubAdminofGroup($uid, $gid) {
 		$stmt = OC_DB::prepare('SELECT COUNT(*) AS `count` FROM `*PREFIX*group_admin` WHERE `uid` = ? AND `gid` = ?');
 		$result = $stmt->execute(array($uid, $gid));
 		$result = $result->fetchRow();
-		if($result['count'] >= 1){
+		if($result['count'] >= 1) {
 			return true;
 		}
 		return false;
 	}
-	
+
 	/**
 	 * @brief checks if a user is a SubAdmin
 	 * @param $uid uid of the subadmin
 	 * @return bool
 	 */
-	public static function isSubAdmin($uid){
+	public static function isSubAdmin($uid) {
 		$stmt = OC_DB::prepare('SELECT COUNT(*) AS `count` FROM `*PREFIX*group_admin` WHERE `uid` = ?');
 		$result = $stmt->execute(array($uid));
 		$result = $result->fetchRow();
-		if($result['count'] > 0){
+		if($result['count'] > 0) {
 			return true;
 		}
 		return false;
 	}
-	
+
 	/**
 	 * @brief checks if a user is a accessible by a subadmin
 	 * @param $subadmin uid of the subadmin
 	 * @param $user uid of the user
 	 * @return bool
 	 */
-	public static function isUserAccessible($subadmin, $user){
-		if(!self::isSubAdmin($subadmin)){
+	public static function isUserAccessible($subadmin, $user) {
+		if(!self::isSubAdmin($subadmin)) {
 			return false;
 		}
-		if(OC_Group::inGroup($user, 'admin')){
+		if(OC_Group::inGroup($user, 'admin')) {
 			return false;
 		}
 		$accessiblegroups = self::getSubAdminsGroups($subadmin);
-		foreach($accessiblegroups as $accessiblegroup){
-			if(OC_Group::inGroup($user, $accessiblegroup)){
+		foreach($accessiblegroups as $accessiblegroup) {
+			if(OC_Group::inGroup($user, $accessiblegroup)) {
 				return true;
 			}
 		}
 		return false;
 	}
-	
+
 	/*
 	 * @brief alias for self::isSubAdminofGroup()
 	 */
-	public static function isGroupAccessible($subadmin, $group){
+	public static function isGroupAccessible($subadmin, $group) {
 		return self::isSubAdminofGroup($subadmin, $group);
 	}
 
 	/**
 	 * @brief delete all SubAdmins by uid
-	 * @param $parameters 
+	 * @param $parameters
 	 * @return boolean
 	 */
-	public static function post_deleteUser($parameters){
+	public static function post_deleteUser($parameters) {
 		$stmt = OC_DB::prepare('DELETE FROM `*PREFIX*group_admin` WHERE `uid` = ?');
 		$result = $stmt->execute(array($parameters['uid']));
 		return true;
@@ -176,7 +176,7 @@ class OC_SubAdmin{
 	 * @param $parameters
 	 * @return boolean
 	 */
-	public static function post_deleteGroup($parameters){
+	public static function post_deleteGroup($parameters) {
 		$stmt = OC_DB::prepare('DELETE FROM `*PREFIX*group_admin` WHERE `gid` = ?');
 		$result = $stmt->execute(array($parameters['gid']));
 		return true;
diff --git a/lib/template.php b/lib/template.php
index a10ddcd5c33156be30c4598192f675177a1ca317..8c872a2059b4842d6b6ae481a3a868e53aca800a 100644
--- a/lib/template.php
+++ b/lib/template.php
@@ -25,12 +25,13 @@
  * @brief make OC_Helper::linkTo available as a simple function
  * @param $app app
  * @param $file file
+ * @param $args array with param=>value, will be appended to the returned url
  * @returns link to the file
  *
  * For further information have a look at OC_Helper::linkTo
  */
-function link_to( $app, $file ){
-	return OC_Helper::linkTo( $app, $file );
+function link_to( $app, $file, $args = array() ) {
+	return OC_Helper::linkTo( $app, $file, $args );
 }
 
 /**
@@ -41,7 +42,7 @@ function link_to( $app, $file ){
  *
  * For further information have a look at OC_Helper::imagePath
  */
-function image_path( $app, $image ){
+function image_path( $app, $image ) {
 	return OC_Helper::imagePath( $app, $image );
 }
 
@@ -52,7 +53,7 @@ function image_path( $app, $image ){
  *
  * For further information have a look at OC_Helper::mimetypeIcon
  */
-function mimetype_icon( $mimetype ){
+function mimetype_icon( $mimetype ) {
 	return OC_Helper::mimetypeIcon( $mimetype );
 }
 
@@ -63,7 +64,7 @@ function mimetype_icon( $mimetype ){
  *
  * For further information have a look at OC_Helper::humanFileSize
  */
-function human_file_size( $bytes ){
+function human_file_size( $bytes ) {
 	return OC_Helper::humanFileSize( $bytes );
 }
 
@@ -76,7 +77,7 @@ function simple_file_size($bytes) {
 }
 
 function relative_modified_date($timestamp) {
-    $l=OC_L10N::get('template');
+    $l=OC_L10N::get('lib');
 	$timediff = time() - $timestamp;
 	$diffminutes = round($timediff/60);
 	$diffhours = round($diffminutes/60);
@@ -98,25 +99,25 @@ function relative_modified_date($timestamp) {
 }
 
 function html_select_options($options, $selected, $params=array()) {
-	if (!is_array($selected)){
+	if (!is_array($selected)) {
 		$selected=array($selected);
 	}
-	if (isset($params['combine']) && $params['combine']){
+	if (isset($params['combine']) && $params['combine']) {
 		$options = array_combine($options, $options);
 	}
 	$value_name = $label_name = false;
-	if (isset($params['value'])){
+	if (isset($params['value'])) {
 		$value_name = $params['value'];
 	}
-	if (isset($params['label'])){
+	if (isset($params['label'])) {
 		$label_name = $params['label'];
 	}
 	$html = '';
-	foreach($options as $value => $label){
-		if ($value_name && is_array($label)){
+	foreach($options as $value => $label) {
+		if ($value_name && is_array($label)) {
 			$value = $label[$value_name];
 		}
-		if ($label_name && is_array($label)){
+		if ($label_name && is_array($label)) {
 			$label = $label[$label_name];
 		}
 		$select = in_array($value, $selected) ? ' selected="selected"' : '';
@@ -149,7 +150,7 @@ class OC_Template{
 	 * according layout. For now, renderas can be set to "guest", "user" or
 	 * "admin".
 	 */
-	public function __construct( $app, $name, $renderas = "" ){
+	public function __construct( $app, $name, $renderas = "" ) {
 		// Set the private data
 		$this->renderas = $renderas;
 		$this->application = $app;
@@ -161,7 +162,7 @@ class OC_Template{
                 header('X-Frame-Options: Sameorigin');
                 header('X-XSS-Protection: 1; mode=block');
                 header('X-Content-Type-Options: nosniff');
- 
+
 		$this->findTemplate($name);
 	}
 
@@ -171,17 +172,17 @@ class OC_Template{
 	 * mobile -> interface for smartphones
 	 * tablet -> interface for tablets
 	 * standalone -> the default interface but without header, footer and
-	 * 	sidebar, just the application. Useful to use just a specific
-	 * 	app on the desktop in a standalone window.
+	 *	sidebar, just the application. Useful to use just a specific
+	 *	app on the desktop in a standalone window.
 	 */
-	public static function detectFormfactor(){
+	public static function detectFormfactor() {
 		// please add more useragent strings for other devices
-		if(isset($_SERVER['HTTP_USER_AGENT'])){
+		if(isset($_SERVER['HTTP_USER_AGENT'])) {
 			if(stripos($_SERVER['HTTP_USER_AGENT'],'ipad')>0) {
 				$mode='tablet';
-			}elseif(stripos($_SERVER['HTTP_USER_AGENT'],'iphone')>0){
+			}elseif(stripos($_SERVER['HTTP_USER_AGENT'],'iphone')>0) {
 				$mode='mobile';
-			}elseif((stripos($_SERVER['HTTP_USER_AGENT'],'N9')>0) and (stripos($_SERVER['HTTP_USER_AGENT'],'nokia')>0)){
+			}elseif((stripos($_SERVER['HTTP_USER_AGENT'],'N9')>0) and (stripos($_SERVER['HTTP_USER_AGENT'],'nokia')>0)) {
 				$mode='mobile';
 			}else{
 				$mode='default';
@@ -200,21 +201,21 @@ class OC_Template{
 		// if the formfactor is not yet autodetected do the
 		// autodetection now. For possible formfactors check the
 		// detectFormfactor documentation
-		if(!isset($_SESSION['formfactor'])){
+		if(!isset($_SESSION['formfactor'])) {
 			$_SESSION['formfactor'] = self::detectFormfactor();
 		}
 		// allow manual override via GET parameter
-		if(isset($_GET['formfactor'])){
+		if(isset($_GET['formfactor'])) {
 			$_SESSION['formfactor']=$_GET['formfactor'];
 		}
 		$formfactor=$_SESSION['formfactor'];
-		if($formfactor=='default') { 
+		if($formfactor=='default') {
 			$fext='';
-		}elseif($formfactor=='mobile') { 
+		}elseif($formfactor=='mobile') {
 			$fext='.mobile';
-		}elseif($formfactor=='tablet') { 
+		}elseif($formfactor=='tablet') {
 			$fext='.tablet';
-		}elseif($formfactor=='standalone') { 
+		}elseif($formfactor=='standalone') {
 			$fext='.standalone';
 		}else{
 			$fext='';
@@ -239,9 +240,9 @@ class OC_Template{
 
 		$app = $this->application;
 		// Check if it is a app template or not.
-		if( $app != "" ){
+		if( $app != "" ) {
 			// Check if the app is in the app folder or in the root
-			if( file_exists(OC_App::getAppPath($app)."/templates/" )){
+			if( file_exists(OC_App::getAppPath($app)."/templates/" )) {
 				// Check if the template is overwritten by the selected theme
 				if ($this->checkPathForTemplate(OC::$SERVERROOT."/themes/$theme/apps/$app/templates/", $name, $fext)) {
 				}elseif ($this->checkPathForTemplate(OC_App::getAppPath($app)."/templates/", $name, $fext)) {
@@ -281,9 +282,9 @@ class OC_Template{
 	{
 		if ($name =='') return false;
 		$template = null;
-		if( is_file( $path.$name.$fext.'.php' )){
+		if( is_file( $path.$name.$fext.'.php' )) {
 			$template = $path.$name.$fext.'.php';
-		}elseif( is_file( $path.$name.'.php' )){
+		}elseif( is_file( $path.$name.'.php' )) {
 			$template = $path.$name.'.php';
 		}
 		if ($template) {
@@ -306,7 +307,7 @@ class OC_Template{
 	 *
 	 * If the key existed before, it will be overwritten
 	 */
-	public function assign( $key, $value, $sanitizeHTML=true ){
+	public function assign( $key, $value, $sanitizeHTML=true ) {
 		if($sanitizeHTML == true) $value=OC_Util::sanitizeHTML($value);
 		$this->vars[$key] = $value;
 		return true;
@@ -322,8 +323,8 @@ class OC_Template{
 	 * exists, the value will be appended. It can be accessed via
 	 * $_[$key][$position] in the template.
 	 */
-	public function append( $key, $value ){
-		if( array_key_exists( $key, $this->vars )){
+	public function append( $key, $value ) {
+		if( array_key_exists( $key, $this->vars )) {
 			$this->vars[$key][] = $value;
 		}
 		else{
@@ -337,7 +338,7 @@ class OC_Template{
 	 * @param array $attributes array of attrobutes for the element
 	 * @param string $text the text content for the element
 	 */
-	public function addHeader( $tag, $attributes, $text=''){
+	public function addHeader( $tag, $attributes, $text='') {
 		$this->headers[]=array('tag'=>$tag,'attributes'=>$attributes,'text'=>$text);
 	}
 
@@ -347,9 +348,9 @@ class OC_Template{
 	 *
 	 * This function proceeds the template and prints its output.
 	 */
-	public function printPage(){
+	public function printPage() {
 		$data = $this->fetchPage();
-		if( $data === false ){
+		if( $data === false ) {
 			return false;
 		}
 		else{
@@ -365,10 +366,10 @@ class OC_Template{
 	 * This function proceeds the template. If $this->renderas is set, it
 	 * will produce a full page.
 	 */
-	public function fetchPage(){
+	public function fetchPage() {
 		$data = $this->_fetch();
 
-		if( $this->renderas ){
+		if( $this->renderas ) {
 			$page = new OC_TemplateLayout($this->renderas);
 			if($this->renderas == 'user') {
 				$page->assign('requesttoken', $this->vars['requesttoken']);
@@ -376,7 +377,7 @@ class OC_Template{
 
 			// Add custom headers
 			$page->assign('headers',$this->headers, false);
-			foreach(OC_Util::$headers as $header){
+			foreach(OC_Util::$headers as $header) {
 				$page->append('headers',$header);
 			}
 
@@ -394,7 +395,7 @@ class OC_Template{
 	 *
 	 * Includes the template file, fetches its output
 	 */
-	private function _fetch(){
+	private function _fetch() {
 		// Register the variables
 		$_ = $this->vars;
 		$l = $this->l10n;
@@ -416,12 +417,12 @@ class OC_Template{
 	 * Includes another template. use <?php echo $this->inc('template'); ?> to
 	 * do this.
 	 */
-	public function inc( $file, $additionalparams = null ){
+	public function inc( $file, $additionalparams = null ) {
 		// $_ erstellen
 		$_ = $this->vars;
 		$l = $this->l10n;
 
-		if( !is_null($additionalparams)){
+		if( !is_null($additionalparams)) {
 			$_ = array_merge( $additionalparams, $this->vars );
 		}
 
@@ -442,9 +443,9 @@ class OC_Template{
 	 * @param $parameters Parameters for the template
 	 * @returns true/false
 	 */
-	public static function printUserPage( $application, $name, $parameters = array() ){
+	public static function printUserPage( $application, $name, $parameters = array() ) {
 		$content = new OC_Template( $application, $name, "user" );
-		foreach( $parameters as $key => $value ){
+		foreach( $parameters as $key => $value ) {
 			$content->assign( $key, $value, false );
 		}
 		print $content->printPage();
@@ -457,9 +458,9 @@ class OC_Template{
 	 * @param $parameters Parameters for the template
 	 * @returns true/false
 	 */
-	public static function printAdminPage( $application, $name, $parameters = array() ){
+	public static function printAdminPage( $application, $name, $parameters = array() ) {
 		$content = new OC_Template( $application, $name, "admin" );
-		foreach( $parameters as $key => $value ){
+		foreach( $parameters as $key => $value ) {
 			$content->assign( $key, $value, false );
 		}
 		return $content->printPage();
@@ -472,9 +473,9 @@ class OC_Template{
 	 * @param $parameters Parameters for the template
 	 * @returns true/false
 	 */
-	public static function printGuestPage( $application, $name, $parameters = array() ){
+	public static function printGuestPage( $application, $name, $parameters = array() ) {
 		$content = new OC_Template( $application, $name, "guest" );
-		foreach( $parameters as $key => $value ){
+		foreach( $parameters as $key => $value ) {
 			$content->assign( $key, $value, false );
 		}
 		return $content->printPage();
diff --git a/lib/templatelayout.php b/lib/templatelayout.php
index 588a784599724e61aab2ad0235819c2002305a2c..c898628bcdf6cd3a2f866c903d3b14921194feec 100644
--- a/lib/templatelayout.php
+++ b/lib/templatelayout.php
@@ -7,13 +7,13 @@
  */
 
 class OC_TemplateLayout extends OC_Template {
-	public function __construct( $renderas ){
+	public function __construct( $renderas ) {
 		// Decide which page we show
 
-		if( $renderas == 'user' ){
+		if( $renderas == 'user' ) {
 			parent::__construct( 'core', 'layout.user' );
 			$this->assign('searchurl',OC_Helper::linkTo( 'search', 'index.php' ), false);
-			if(array_search(OC_APP::getCurrentApp(),array('settings','admin','help'))!==false){
+			if(array_search(OC_APP::getCurrentApp(),array('settings','admin','help'))!==false) {
 				$this->assign('bodyid','body-settings', false);
 			}else{
 				$this->assign('bodyid','body-user', false);
@@ -29,19 +29,29 @@ class OC_TemplateLayout extends OC_Template {
 					break;
 				}
 			}
-		}else{
-			parent::__construct( 'core', 'layout.guest' );
+		} else if ($renderas == 'guest') {
+			parent::__construct('core', 'layout.guest');
+		} else {
+			parent::__construct('core', 'layout.base');
 		}
 
 		$apps_paths = array();
-		foreach(OC_App::getEnabledApps() as $app){
+		foreach(OC_App::getEnabledApps() as $app) {
 			$apps_paths[$app] = OC_App::getAppWebPath($app);
-    }
+		}
 		$this->assign( 'apps_paths', str_replace('\\/', '/',json_encode($apps_paths)),false ); // Ugly unescape slashes waiting for better solution
 
+		if (OC_Config::getValue('installed', false) && !OC_AppConfig::getValue('core', 'remote_core.css', false)) {
+			OC_AppConfig::setValue('core', 'remote_core.css', '/core/minimizer.php');
+			OC_AppConfig::setValue('core', 'remote_core.js', '/core/minimizer.php');
+		}
+
 		// Add the js files
 		$jsfiles = self::findJavascriptFiles(OC_Util::$scripts);
 		$this->assign('jsfiles', array(), false);
+		if (!empty(OC_Util::$core_scripts)) {
+			$this->append( 'jsfiles', OC_Helper::linkToRemote('core.js', false));
+		}
 		foreach($jsfiles as $info) {
 			$root = $info[0];
 			$web = $info[1];
@@ -51,8 +61,10 @@ class OC_TemplateLayout extends OC_Template {
 
 		// Add the css files
 		$cssfiles = self::findStylesheetFiles(OC_Util::$styles);
-
 		$this->assign('cssfiles', array());
+		if (!empty(OC_Util::$core_styles)) {
+			$this->append( 'cssfiles', OC_Helper::linkToRemote('core.css', false));
+		}
 		foreach($cssfiles as $info) {
 			$root = $info[0];
 			$web = $info[1];
@@ -63,7 +75,7 @@ class OC_TemplateLayout extends OC_Template {
 			foreach(OC::$APPSROOTS as $app_root) {
 				if($root == $app_root['path']) {
 					$in_root = true;
-          break;
+					break;
 				}
 			}
 
@@ -94,7 +106,7 @@ class OC_TemplateLayout extends OC_Template {
                 return false;
         }
 
-	static public function findStylesheetFiles($styles){
+	static public function findStylesheetFiles($styles) {
 		// Read the selected theme from the config file
 		$theme=OC_Config::getValue( 'theme' );
 
@@ -102,7 +114,7 @@ class OC_TemplateLayout extends OC_Template {
 		$fext = self::getFormFactorExtension();
 
 		$files = array();
-		foreach($styles as $style){
+		foreach($styles as $style) {
 			// is it in 3rdparty?
 			if(self::appendIfExist($files, OC::$THIRDPARTYROOT, OC::$THIRDPARTYWEBROOT, $style.'.css')) {
 
@@ -130,7 +142,7 @@ class OC_TemplateLayout extends OC_Template {
 		}
 		// Add the theme css files. you can override the default values here
 		if(!empty($theme)) {
-			foreach($styles as $style){
+			foreach($styles as $style) {
 				     if(self::appendIfExist($files, OC::$SERVERROOT, OC::$WEBROOT, "themes/$theme/apps/$style$fext.css" )) {
 				}elseif(self::appendIfExist($files, OC::$SERVERROOT, OC::$WEBROOT, "themes/$theme/apps/$style.css" )) {
 
@@ -145,7 +157,7 @@ class OC_TemplateLayout extends OC_Template {
 		return $files;
 	}
 
-	static public function findJavascriptFiles($scripts){
+	static public function findJavascriptFiles($scripts) {
 		// Read the selected theme from the config file
 		$theme=OC_Config::getValue( 'theme' );
 
@@ -153,7 +165,7 @@ class OC_TemplateLayout extends OC_Template {
 		$fext = self::getFormFactorExtension();
 
 		$files = array();
-		foreach($scripts as $script){
+		foreach($scripts as $script) {
 			// Is it in 3rd party?
 			if(self::appendIfExist($files, OC::$THIRDPARTYROOT, OC::$THIRDPARTYWEBROOT, $script.'.js')) {
 
diff --git a/lib/updater.php b/lib/updater.php
index 967f64c0b30bfa484d67edad091799ecd127239a..ad42f2bf6059581e07804fc8fa650e82fe9976c1 100644
--- a/lib/updater.php
+++ b/lib/updater.php
@@ -28,7 +28,7 @@ class OC_Updater{
 	/**
 	 * Check if a new version is available
 	 */
-	public static function check(){
+	public static function check() {
 		OC_Appconfig::setValue('core', 'lastupdatedat',microtime(true));
 		if(OC_Appconfig::getValue('core', 'installedat','')=='') OC_Appconfig::setValue('core', 'installedat',microtime(true));
 
@@ -43,7 +43,7 @@ class OC_Updater{
 		//fetch xml data from updater
 		$url=$updaterurl.'?version='.$versionstring;
                 $xml=@file_get_contents($url);
-                if($xml==FALSE){
+                if($xml==FALSE) {
                         return array();
                 }
                 $data=@simplexml_load_string($xml);
@@ -57,16 +57,18 @@ class OC_Updater{
                 return $tmp;
 	}
 
-	public static function ShowUpdatingHint(){
-		if(OC_Config::getValue('updatechecker', true)==true){
+	public static function ShowUpdatingHint() {
+		$l = OC_L10N::get('lib');
+
+		if(OC_Config::getValue('updatechecker', true)==true) {
 			$data=OC_Updater::check();
 			if(isset($data['version']) and $data['version']<>'') {
-				$txt='<span style="color:#AA0000; font-weight:bold;">'.$data['versionstring'].' is available. Get <a href="'.$data['web'].'">more information</a></span>';
+				$txt='<span style="color:#AA0000; font-weight:bold;">'.$l->t('%s is available. Get <a href="%s">more information</a>',array($data['versionstring'], $data['web'])).'</span>';
 			}else{
-				$txt='up to date';
+				$txt=$l->t('up to date');
 			}
 		}else{
-			$txt='updates check is disabled';
+			$txt=$l->t('updates check is disabled');
 		}
 		return($txt);
 	}
@@ -75,7 +77,7 @@ class OC_Updater{
 	/**
 	 * do ownCloud update
 	 */
-	public static function doUpdate(){
+	public static function doUpdate() {
 
 		//update ownCloud core
 
diff --git a/lib/user.php b/lib/user.php
index c14ef2d6ca643bf6c4bf365faa225410e15d343a..89dab9f96478ee35acfd03a63b693ce3efe34b93 100644
--- a/lib/user.php
+++ b/lib/user.php
@@ -40,6 +40,8 @@ class OC_User {
 	// The backend used for user management
 	private static $_usedBackends = array();
 
+	private static $_setupedBackends = array();
+
 	// Backends available (except database)
 	private static $_backends = array();
 
@@ -50,7 +52,7 @@ class OC_User {
 	 *
 	 * Makes a list of backends that can be used by other modules
 	 */
-	public static function registerBackend( $backend ){
+	public static function registerBackend( $backend ) {
 		self::$_backends[] = $backend;
 		return true;
 	}
@@ -61,7 +63,7 @@ class OC_User {
 	 *
 	 * Returns the names of all backends.
 	 */
-	public static function getBackends(){
+	public static function getBackends() {
 		return self::$_backends;
 	}
 
@@ -71,7 +73,7 @@ class OC_User {
 	 *
 	 * Returns the names of all used backends.
 	 */
-	public static function getUsedBackends(){
+	public static function getUsedBackends() {
 		return array_keys(self::$_usedBackends);
 	}
 
@@ -82,17 +84,17 @@ class OC_User {
 	 *
 	 * Set the User Authentication Module
 	 */
-	public static function useBackend( $backend = 'database' ){
-		if($backend instanceof OC_User_Interface){
+	public static function useBackend( $backend = 'database' ) {
+		if($backend instanceof OC_User_Interface) {
 			self::$_usedBackends[get_class($backend)]=$backend;
 		}else{
 			// You'll never know what happens
-			if( null === $backend OR !is_string( $backend )){
+			if( null === $backend OR !is_string( $backend )) {
 				$backend = 'database';
 			}
 
 			// Load backend
-			switch( $backend ){
+			switch( $backend ) {
 				case 'database':
 				case 'mysql':
 				case 'sqlite':
@@ -110,10 +112,32 @@ class OC_User {
 	/**
 	 * remove all used backends
 	 */
-	public static function clearBackends(){
+	public static function clearBackends() {
 		self::$_usedBackends=array();
 	}
 
+	/**
+	 * setup the configured backends in config.php
+	 */
+	public static function setupBackends() {
+		$backends=OC_Config::getValue('user_backends',array());
+		foreach($backends as $i=>$config) {
+			$class=$config['class'];
+			$arguments=$config['arguments'];
+			if(class_exists($class) and array_search($i,self::$_setupedBackends)===false) {
+				// make a reflection object
+				$reflectionObj = new ReflectionClass($class);
+
+				// use Reflection to create a new instance, using the $args
+				$backend = $reflectionObj->newInstanceArgs($arguments);
+				self::useBackend($backend);
+				$_setupedBackends[]=$i;
+			}else{
+				OC_Log::write('core','User backend '.$class.' not found.',OC_Log::ERROR);
+			}
+		}
+	}
+
 	/**
 	 * @brief Create a new user
 	 * @param $uid The username of the user to create
@@ -125,23 +149,23 @@ class OC_User {
 	 *
 	 * Allowed characters in the username are: "a-z", "A-Z", "0-9" and "_.@-"
 	 */
-	public static function createUser( $uid, $password ){
+	public static function createUser( $uid, $password ) {
 		// Check the name for bad characters
 		// Allowed are: "a-z", "A-Z", "0-9" and "_.@-"
-		if( preg_match( '/[^a-zA-Z0-9 _\.@\-]/', $uid )){
+		if( preg_match( '/[^a-zA-Z0-9 _\.@\-]/', $uid )) {
 			throw new Exception('Only the following characters are allowed in a username: "a-z", "A-Z", "0-9", and "_.@-"');
 		}
 		// No empty username
-		if(trim($uid) == ''){
+		if(trim($uid) == '') {
 			throw new Exception('A valid username must be provided');
 		}
 		// No empty password
-		if(trim($password) == ''){
+		if(trim($password) == '') {
 			throw new Exception('A valid password must be provided');
 		}
 
 		// Check if user already exists
-		if( self::userExists($uid) ){
+		if( self::userExists($uid) ) {
 			throw new Exception('The username is already being used');
 		}
 
@@ -149,9 +173,9 @@ class OC_User {
 		$run = true;
 		OC_Hook::emit( "OC_User", "pre_createUser", array( "run" => &$run, "uid" => $uid, "password" => $password ));
 
-		if( $run ){
+		if( $run ) {
 			//create the user in the first backend that supports creating users
-			foreach(self::$_usedBackends as $backend){
+			foreach(self::$_usedBackends as $backend) {
 				if(!$backend->implementsActions(OC_USER_BACKEND_CREATE_USER))
 					continue;
 
@@ -171,17 +195,17 @@ class OC_User {
 	 *
 	 * Deletes a user
 	 */
-	public static function deleteUser( $uid ){
+	public static function deleteUser( $uid ) {
 		$run = true;
 		OC_Hook::emit( "OC_User", "pre_deleteUser", array( "run" => &$run, "uid" => $uid ));
 
-		if( $run ){
+		if( $run ) {
 			//delete the user from all backends
-			foreach(self::$_usedBackends as $backend){
+			foreach(self::$_usedBackends as $backend) {
 				$backend->deleteUser($uid);
 			}
 			// We have to delete the user from all groups
-			foreach( OC_Group::getUserGroups( $uid ) as $i ){
+			foreach( OC_Group::getUserGroups( $uid ) as $i ) {
 				OC_Group::removeFromGroup( $uid, $i );
 			}
 			// Delete the user's keys in preferences
@@ -203,14 +227,14 @@ class OC_User {
 	 *
 	 * Log in a user and regenerate a new session - if the password is ok
 	 */
-	public static function login( $uid, $password ){
+	public static function login( $uid, $password ) {
 		$run = true;
 		OC_Hook::emit( "OC_User", "pre_login", array( "run" => &$run, "uid" => $uid ));
 
-		if( $run ){
+		if( $run ) {
 			$uid = self::checkPassword( $uid, $password );
 			$enabled = self::isEnabled($uid);
-			if($uid && $enabled){
+			if($uid && $enabled) {
 				session_regenerate_id(true);
 				self::setUserId($uid);
 				OC_Hook::emit( "OC_User", "post_login", array( "uid" => $uid, 'password'=>$password ));
@@ -236,7 +260,7 @@ class OC_User {
 	 *
 	 * Logout, destroys session
 	 */
-	public static function logout(){
+	public static function logout() {
 		OC_Hook::emit( "OC_User", "logout", array());
 		session_unset();
 		session_destroy();
@@ -250,10 +274,11 @@ class OC_User {
 	 *
 	 * Checks if the user is logged in
 	 */
-	public static function isLoggedIn(){
+	public static function isLoggedIn() {
 		if( isset($_SESSION['user_id']) AND $_SESSION['user_id']) {
 			OC_App::loadApps(array('authentication'));
-			if (self::userExists($_SESSION['user_id']) ){
+			self::setupBackends();
+			if (self::userExists($_SESSION['user_id']) ) {
 				return true;
 			}
 		}
@@ -264,8 +289,8 @@ class OC_User {
 	 * @brief get the user id of the user currently logged in.
 	 * @return string uid or false
 	 */
-	public static function getUser(){
-		if( isset($_SESSION['user_id']) AND $_SESSION['user_id'] ){
+	public static function getUser() {
+		if( isset($_SESSION['user_id']) AND $_SESSION['user_id'] ) {
 			return $_SESSION['user_id'];
 		}
 		else{
@@ -279,7 +304,7 @@ class OC_User {
 	 *
 	 * generates a password
 	 */
-	public static function generatePassword(){
+	public static function generatePassword() {
 		return uniqId();
 	}
 
@@ -291,15 +316,15 @@ class OC_User {
 	 *
 	 * Change the password of a user
 	 */
-	public static function setPassword( $uid, $password ){
+	public static function setPassword( $uid, $password ) {
 		$run = true;
 		OC_Hook::emit( "OC_User", "pre_setPassword", array( "run" => &$run, "uid" => $uid, "password" => $password ));
 
-		if( $run ){
+		if( $run ) {
 			$success = false;
-			foreach(self::$_usedBackends as $backend){
-				if($backend->implementsActions(OC_USER_BACKEND_SET_PASSWORD)){
-					if($backend->userExists($uid)){
+			foreach(self::$_usedBackends as $backend) {
+				if($backend->implementsActions(OC_USER_BACKEND_SET_PASSWORD)) {
+					if($backend->userExists($uid)) {
 						$success |= $backend->setPassword($uid,$password);
 					}
 				}
@@ -321,11 +346,11 @@ class OC_User {
 	 * Check if the password is correct without logging in the user
 	 * returns the user id or false
 	 */
-	public static function checkPassword( $uid, $password ){
-		foreach(self::$_usedBackends as $backend){
-			if($backend->implementsActions(OC_USER_BACKEND_CHECK_PASSWORD)){
+	public static function checkPassword( $uid, $password ) {
+		foreach(self::$_usedBackends as $backend) {
+			if($backend->implementsActions(OC_USER_BACKEND_CHECK_PASSWORD)) {
 				$result=$backend->checkPassword( $uid, $password );
-				if($result){
+				if($result) {
 					return $result;
 				}
 			}
@@ -341,11 +366,11 @@ class OC_User {
 	 * Check if the password is correct without logging in the user
 	 * returns the user id or false
 	 */
-	public static function getHome($uid){
-		foreach(self::$_usedBackends as $backend){
-			if($backend->implementsActions(OC_USER_BACKEND_GET_HOME)){
+	public static function getHome($uid) {
+		foreach(self::$_usedBackends as $backend) {
+			if($backend->implementsActions(OC_USER_BACKEND_GET_HOME)) {
 				$result=$backend->getHome($uid);
-				if($result){
+				if($result) {
 					return $result;
 				}
 			}
@@ -376,42 +401,42 @@ class OC_User {
 	 * @param string $uid the username
 	 * @return boolean
 	 */
-	public static function userExists($uid){
-		foreach(self::$_usedBackends as $backend){
+	public static function userExists($uid) {
+		foreach(self::$_usedBackends as $backend) {
 			$result=$backend->userExists($uid);
-			if($result===true){
+			if($result===true) {
 				return true;
 			}
 		}
 		return false;
 	}
-	
+
 	/**
 	 * disables a user
 	 * @param string $userid the user to disable
 	 */
-	public static function disableUser($userid){
+	public static function disableUser($userid) {
 		$query = "INSERT INTO `*PREFIX*preferences` (`userid`, `appid`, `configkey`, `configvalue`) VALUES(?, ?, ?, ?)";
 		$query = OC_DB::prepare($query);
 		$query->execute(array($userid, 'core', 'enabled', 'false'));
 	}
-	
+
 	/**
 	 * enable a user
 	 * @param string $userid
 	 */
-	public static function enableUser($userid){
+	public static function enableUser($userid) {
 		$query = "DELETE FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ? AND `configkey` = ? AND `configvalue` = ?";
 		$query = OC_DB::prepare($query);
 		$query->execute(array($userid, 'core', 'enabled', 'false'));
 	}
-	
+
 	/**
 	 * checks if a user is enabled
 	 * @param string $userid
 	 * @return bool
 	 */
-	public static function isEnabled($userid){
+	public static function isEnabled($userid) {
 		$query = "SELECT `userid` FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ? AND `configkey` = ? AND `configvalue` = ?";
 		$query = OC_DB::prepare($query);
 		$results = $query->execute(array($userid, 'core', 'enabled', 'false'));
@@ -422,7 +447,7 @@ class OC_User {
 	 * @brief Set cookie value to use in next page load
 	 * @param string $username username to be set
 	 */
-	public static function setMagicInCookie($username, $token){
+	public static function setMagicInCookie($username, $token) {
 		$secure_cookie = OC_Config::getValue("forcessl", false);
 		setcookie("oc_username", $username, time()+60*60*24*15, '', '', $secure_cookie);
 		setcookie("oc_token", $token, time()+60*60*24*15, '', '', $secure_cookie);
@@ -432,7 +457,7 @@ class OC_User {
 	/**
 	 * @brief Remove cookie for "remember username"
 	 */
-	public static function unsetMagicInCookie(){
+	public static function unsetMagicInCookie() {
 		unset($_COOKIE["oc_username"]);
 		unset($_COOKIE["oc_token"]);
 		unset($_COOKIE["oc_remember_login"]);
diff --git a/lib/user/backend.php b/lib/user/backend.php
index 36e4bd9f761ae16cb8896faff507206909919d6e..2a95db936904b547c6efc20daa9be73dd09bec0a 100644
--- a/lib/user/backend.php
+++ b/lib/user/backend.php
@@ -59,9 +59,9 @@ abstract class OC_User_Backend implements OC_User_Interface {
 	* Returns the supported actions as int to be
 	* compared with OC_USER_BACKEND_CREATE_USER etc.
 	*/
-	public function getSupportedActions(){
+	public function getSupportedActions() {
 		$actions = 0;
-		foreach($this->possibleActions AS $action => $methodName){
+		foreach($this->possibleActions AS $action => $methodName) {
 			if(method_exists($this, $methodName)) {
 				$actions |= $action;
 			}
@@ -78,7 +78,7 @@ abstract class OC_User_Backend implements OC_User_Interface {
 	* Returns the supported actions as int to be
 	* compared with OC_USER_BACKEND_CREATE_USER etc.
 	*/
-	public function implementsActions($actions){
+	public function implementsActions($actions) {
 		return (bool)($this->getSupportedActions() & $actions);
 	}
 
@@ -89,7 +89,7 @@ abstract class OC_User_Backend implements OC_User_Interface {
 	*
 	* Deletes a user
 	*/
-	public function deleteUser( $uid ){
+	public function deleteUser( $uid ) {
 		return false;
 	}
 
@@ -99,7 +99,7 @@ abstract class OC_User_Backend implements OC_User_Interface {
 	*
 	* Get a list of all users.
 	*/
-	public function getUsers($search = '', $limit = -1, $offset = 0) {
+	public function getUsers($search = '', $limit = null, $offset = null) {
 		return array();
 	}
 
@@ -108,7 +108,7 @@ abstract class OC_User_Backend implements OC_User_Interface {
 	* @param string $uid the username
 	* @return boolean
 	*/
-	public function userExists($uid){
+	public function userExists($uid) {
 		return false;
 	}
 
@@ -117,7 +117,7 @@ abstract class OC_User_Backend implements OC_User_Interface {
 	* @param string $uid the username
 	* @return boolean
 	*/
-	public function getHome($uid){
+	public function getHome($uid) {
 		return false;
 	}
 }
diff --git a/lib/user/database.php b/lib/user/database.php
index a4cffe5d0c10e1ab7012e1d77e8bf177b9cc5139..76b44a2f6ca73d4879cc1b9e4d36a91b30d087df 100644
--- a/lib/user/database.php
+++ b/lib/user/database.php
@@ -43,9 +43,9 @@ class OC_User_Database extends OC_User_Backend {
 	 * @var PasswordHash
 	 */
 	static private $hasher=null;
-	
-	private function getHasher(){
-		if(!self::$hasher){
+
+	private function getHasher() {
+		if(!self::$hasher) {
 			//we don't want to use DES based crypt(), since it doesn't return a has with a recognisable prefix
 			$forcePortable=(CRYPT_BLOWFISH!=1);
 			self::$hasher=new PasswordHash(8,$forcePortable);
@@ -53,7 +53,7 @@ class OC_User_Database extends OC_User_Backend {
 		return self::$hasher;
 
 	}
-	
+
 	/**
 	 * @brief Create a new user
 	 * @param $uid The username of the user to create
@@ -63,8 +63,8 @@ class OC_User_Database extends OC_User_Backend {
 	 * Creates a new user. Basic checking of username is done in OC_User
 	 * itself, not in its subclasses.
 	 */
-	public function createUser( $uid, $password ){
-		if( $this->userExists($uid) ){
+	public function createUser( $uid, $password ) {
+		if( $this->userExists($uid) ) {
 			return false;
 		}else{
 			$hasher=$this->getHasher();
@@ -83,7 +83,7 @@ class OC_User_Database extends OC_User_Backend {
 	 *
 	 * Deletes a user
 	 */
-	public function deleteUser( $uid ){
+	public function deleteUser( $uid ) {
 		// Delete user-group-relation
 		$query = OC_DB::prepare( 'DELETE FROM `*PREFIX*users` WHERE uid = ?' );
 		$query->execute( array( $uid ));
@@ -98,8 +98,8 @@ class OC_User_Database extends OC_User_Backend {
 	 *
 	 * Change the password of a user
 	 */
-	public function setPassword( $uid, $password ){
-		if( $this->userExists($uid) ){
+	public function setPassword( $uid, $password ) {
+		if( $this->userExists($uid) ) {
 			$hasher=$this->getHasher();
 			$hash = $hasher->HashPassword($password.OC_Config::getValue('passwordsalt', ''));
 			$query = OC_DB::prepare( 'UPDATE `*PREFIX*users` SET `password` = ? WHERE `uid` = ?' );
@@ -120,22 +120,22 @@ class OC_User_Database extends OC_User_Backend {
 	 * Check if the password is correct without logging in the user
 	 * returns the user id or false
 	 */
-	public function checkPassword( $uid, $password ){
-		$query = OC_DB::prepare( 'SELECT `uid`, `password` FROM `*PREFIX*users` WHERE `uid` = ?' );
+	public function checkPassword( $uid, $password ) {
+		$query = OC_DB::prepare( 'SELECT `uid`, `password` FROM `*PREFIX*users` WHERE LOWER(`uid`) = LOWER(?)' );
 		$result = $query->execute( array( $uid));
 
 		$row=$result->fetchRow();
-		if($row){
+		if($row) {
 			$storedHash=$row['password'];
-			if ($storedHash[0]=='$'){//the new phpass based hashing
+			if ($storedHash[0]=='$') {//the new phpass based hashing
 				$hasher=$this->getHasher();
-				if($hasher->CheckPassword($password.OC_Config::getValue('passwordsalt', ''), $storedHash)){
+				if($hasher->CheckPassword($password.OC_Config::getValue('passwordsalt', ''), $storedHash)) {
 					return $row['uid'];
 				}else{
 					return false;
 				}
 			}else{//old sha1 based hashing
-				if(sha1($password)==$storedHash){
+				if(sha1($password)==$storedHash) {
 					//upgrade to new hashing
 					$this->setPassword($row['uid'],$password);
 					return $row['uid'];
@@ -169,10 +169,10 @@ class OC_User_Database extends OC_User_Backend {
 	 * @param string $uid the username
 	 * @return boolean
 	 */
-	public function userExists($uid){
-		$query = OC_DB::prepare( 'SELECT * FROM `*PREFIX*users` WHERE `uid` = ?' );
+	public function userExists($uid) {
+		$query = OC_DB::prepare( 'SELECT * FROM `*PREFIX*users` WHERE LOWER(`uid`) = LOWER(?)' );
 		$result = $query->execute( array( $uid ));
-		
+
 		return $result->numRows() > 0;
 	}
 
@@ -181,8 +181,8 @@ class OC_User_Database extends OC_User_Backend {
 	* @param string $uid the username
 	* @return boolean
 	*/
-	public function getHome($uid){
-		if($this->userExists($uid)){
+	public function getHome($uid) {
+		if($this->userExists($uid)) {
 			return OC_Config::getValue( "datadirectory", OC::$SERVERROOT."/data" ) . '/' . $uid;
 		}else{
 			return false;
diff --git a/lib/user/dummy.php b/lib/user/dummy.php
index da3edfb2df40135a79de8b8a32505d839e6fa918..4dbbc02b8888b0a282cefe892c178a06df960601 100644
--- a/lib/user/dummy.php
+++ b/lib/user/dummy.php
@@ -35,8 +35,8 @@ class OC_User_Dummy extends OC_User_Backend {
 		* Creates a new user. Basic checking of username is done in OC_User
 		* itself, not in its subclasses.
 		*/
-	public function createUser($uid, $password){
-		if(isset($this->users[$uid])){
+	public function createUser($uid, $password) {
+		if(isset($this->users[$uid])) {
 			return false;
 		}else{
 			$this->users[$uid]=$password;
@@ -51,8 +51,8 @@ class OC_User_Dummy extends OC_User_Backend {
 		*
 		* Deletes a user
 		*/
-	public function deleteUser( $uid ){
-		if(isset($this->users[$uid])){
+	public function deleteUser( $uid ) {
+		if(isset($this->users[$uid])) {
 			unset($this->users[$uid]);
 			return true;
 		}else{
@@ -68,8 +68,8 @@ class OC_User_Dummy extends OC_User_Backend {
 		*
 		* Change the password of a user
 		*/
-	public function setPassword($uid, $password){
-		if(isset($this->users[$uid])){
+	public function setPassword($uid, $password) {
+		if(isset($this->users[$uid])) {
 			$this->users[$uid]=$password;
 			return true;
 		}else{
@@ -86,8 +86,8 @@ class OC_User_Dummy extends OC_User_Backend {
 		* Check if the password is correct without logging in the user
 		* returns the user id or false
 		*/
-	public function checkPassword($uid, $password){
-		if(isset($this->users[$uid])){
+	public function checkPassword($uid, $password) {
+		if(isset($this->users[$uid])) {
 			return ($this->users[$uid]==$password);
 		}else{
 			return false;
@@ -100,7 +100,7 @@ class OC_User_Dummy extends OC_User_Backend {
 		*
 		* Get a list of all users.
 		*/
-	public function getUsers($search = '', $limit = -1, $offset = 0) {
+	public function getUsers($search = '', $limit = null, $offset = null) {
 		return array_keys($this->users);
 	}
 
@@ -109,7 +109,7 @@ class OC_User_Dummy extends OC_User_Backend {
 		* @param string $uid the username
 		* @return boolean
 		*/
-	public function userExists($uid){
+	public function userExists($uid) {
 		return isset($this->users[$uid]);
 	}
 }
diff --git a/lib/user/http.php b/lib/user/http.php
index 547c0201b699877a1a725c47afa423afeb0ad458..2668341408daaea973fdf47d33fb97a9ceaccfa5 100644
--- a/lib/user/http.php
+++ b/lib/user/http.php
@@ -30,29 +30,29 @@ class OC_User_HTTP extends OC_User_Backend {
 	 * @param string path
 	 * @return array
 	 */
-	private function parseUrl($url){
+	private function parseUrl($url) {
 		$parts=parse_url($url);
 		$url=$parts['scheme'].'://'.$parts['host'];
-		if(isset($parts['port'])){
+		if(isset($parts['port'])) {
 			$url.=':'.$parts['port'];
 		}
 		$url.=$parts['path'];
-		if(isset($parts['query'])){
+		if(isset($parts['query'])) {
 			$url.='?'.$parts['query'];
 		}
 		return array($parts['user'],$url);
-		
+
 	}
-	
+
 	/**
 	 * check if an url is a valid login
 	 * @param string url
 	 * @return boolean
 	 */
-	private function matchUrl($url){
+	private function matchUrl($url) {
 		return ! is_null(parse_url($url,PHP_URL_USER));
 	}
-	
+
 	/**
 	 * @brief Check if the password is correct
 	 * @param $uid The username
@@ -62,12 +62,12 @@ class OC_User_HTTP extends OC_User_Backend {
 	 * Check if the password is correct without logging in the user
 	 * returns the user id or false
 	 */
-	public function checkPassword($uid, $password){
-		if(!$this->matchUrl($uid)){
+	public function checkPassword($uid, $password) {
+		if(!$this->matchUrl($uid)) {
 			return false;
 		}
 		list($user,$url)=$this->parseUrl($uid);
-		
+
 		$ch = curl_init();
 		curl_setopt($ch, CURLOPT_URL, $url);
 		curl_setopt($ch, CURLOPT_USERPWD, $user.':'.$password);
@@ -76,7 +76,7 @@ class OC_User_HTTP extends OC_User_Backend {
 		curl_exec($ch);
 
 		$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
-		
+
 		curl_close($ch);
 
 		return $status==200;
@@ -87,7 +87,7 @@ class OC_User_HTTP extends OC_User_Backend {
 	 * @param string $uid the username
 	 * @return boolean
 	 */
-	public function userExists($uid){
+	public function userExists($uid) {
 		return $this->matchUrl($uid);
 	}
 
@@ -96,8 +96,8 @@ class OC_User_HTTP extends OC_User_Backend {
 	* @param string $uid the username
 	* @return boolean
 	*/
-	public function getHome($uid){
-		if($this->userExists($uid)){
+	public function getHome($uid) {
+		if($this->userExists($uid)) {
 			return OC_Config::getValue( "datadirectory", OC::$SERVERROOT."/data" ) . '/' . $uid;
 		}else{
 			return false;
diff --git a/lib/user/interface.php b/lib/user/interface.php
index a4903898fb1c5f88908d0e1e1c2a8885ed4326e8..3d9f4691f2414122b0a7801726a3a0ed03c7ba7b 100644
--- a/lib/user/interface.php
+++ b/lib/user/interface.php
@@ -48,7 +48,7 @@ interface OC_User_Interface {
 	*
 	* Get a list of all users.
 	*/
-	public function getUsers($search = '', $limit = -1, $offset = 0);
+	public function getUsers($search = '', $limit = null, $offset = null);
 
 	/**
 	* @brief check if a user exists
diff --git a/lib/util.php b/lib/util.php
index 01f53cb2f38a1724595a064ecaeb0a57ce9bf690..f28f83ad71736ca2a2c71b3ce6f5dfeba34b225b 100755
--- a/lib/util.php
+++ b/lib/util.php
@@ -14,38 +14,42 @@ class OC_Util {
 	public static $core_scripts=array();
 
 	// Can be set up
-	public static function setupFS( $user = '' ){// configure the initial filesystem based on the configuration
-		if(self::$fsSetup){//setting up the filesystem twice can only lead to trouble
+	public static function setupFS( $user = '' ) {// configure the initial filesystem based on the configuration
+		if(self::$fsSetup) {//setting up the filesystem twice can only lead to trouble
 			return false;
 		}
 
+		// If we are not forced to load a specific user we load the one that is logged in
+		if( $user == "" && OC_User::isLoggedIn()) {
+			$user = OC_User::getUser();
+		}
+
+		// the filesystem will finish when $user is not empty,
+		// mark fs setup here to avoid doing the setup from loading
+		// OC_Filesystem
+		if ($user != '') {
+			self::$fsSetup=true;
+		}
+
 		$CONFIG_DATADIRECTORY = OC_Config::getValue( "datadirectory", OC::$SERVERROOT."/data" );
 		//first set up the local "root" storage
-		if(!self::$rootMounted){
+		if(!self::$rootMounted) {
 			OC_Filesystem::mount('OC_Filestorage_Local',array('datadir'=>$CONFIG_DATADIRECTORY),'/');
 			self::$rootMounted=true;
 		}
 
-		// If we are not forced to load a specific user we load the one that is logged in
-		if( $user == "" && OC_User::isLoggedIn()){
-			$user = OC_User::getUser();
-		}
-
-		if( $user != "" ){ //if we aren't logged in, there is no use to set up the filesystem
+		if( $user != "" ) { //if we aren't logged in, there is no use to set up the filesystem
 			$user_dir = '/'.$user.'/files';
 			$user_root = OC_User::getHome($user);
 			$userdirectory = $user_root . '/files';
-			OC_Filesystem::mount('OC_Filestorage_Local',array('datadir'=>$user_root), $user);
-			if( !is_dir( $userdirectory )){
+			if( !is_dir( $userdirectory )) {
 				mkdir( $userdirectory, 0755, true );
 			}
-			OC_Filesystem::mount('OC_Filestorage_Local',array('datadir'=>$user_root), $user);
-			
 			//jail the user into his "home" directory
+			OC_Filesystem::mount('OC_Filestorage_Local', array('datadir' => $user_root), $user);
 			OC_Filesystem::init($user_dir);
 			$quotaProxy=new OC_FileProxy_Quota();
 			OC_FileProxy::register($quotaProxy);
-			self::$fsSetup=true;
 			// Load personal mount config
 			if (is_file($user_root.'/mount.php')) {
 				$mountConfig = include($user_root.'/mount.php');
@@ -54,18 +58,19 @@ class OC_Util {
 						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::clear($user);
+					OC_Preferences::setValue($user,'files','mountconfigmtime',$mtime);
+				}
 			}
 			OC_Hook::emit('OC_Filesystem', 'setup', array('user' => $user, 'user_dir' => $user_dir));
 		}
 	}
 
-	public static function setupFS4all(){
-		foreach(OC_User::getUsers() as $user){
-			OC_Filesystem::mount('OC_Filestorage_Local',array('datadir'=>OC_User::getHome($singleuser)), $user);
-		}	
-	}
-	
-	public static function tearDownFS(){
+	public static function tearDownFS() {
 		OC_Filesystem::tearDown();
 		self::$fsSetup=false;
 	}
@@ -74,23 +79,24 @@ class OC_Util {
 	 * get the current installed version of ownCloud
 	 * @return array
 	 */
-	public static function getVersion(){
-		return array(4,82,5);
+	public static function getVersion() {
+		// hint: We only can count up. So the internal version number of ownCloud 4.5 will be 4,9,0. This is not visible to the user
+		return array(4,83,7);
 	}
 
 	/**
 	 * get the current installed version string of ownCloud
 	 * @return string
 	 */
-	public static function getVersionString(){
-		return '5 pre alpha 1';
+	public static function getVersionString() {
+		return '4.5 beta 2';
 	}
 
 	/**
 	 * get the current installed edition of ownCloud. There is the community edition that just returns an empty string and the enterprise edition that returns "Enterprise".
 	 * @return string
 	 */
-	public static function getEditionString(){
+	public static function getEditionString() {
 			return '';
 	}
 
@@ -100,12 +106,12 @@ class OC_Util {
 	 * @param appid  $application
 	 * @param filename  $file
 	 */
-	public static function addScript( $application, $file = null ){
-		if( is_null( $file )){
+	public static function addScript( $application, $file = null ) {
+		if( is_null( $file )) {
 			$file = $application;
 			$application = "";
 		}
-		if( !empty( $application )){
+		if( !empty( $application )) {
 			self::$scripts[] = "$application/js/$file";
 		}else{
 			self::$scripts[] = "js/$file";
@@ -118,12 +124,12 @@ class OC_Util {
 	 * @param appid  $application
 	 * @param filename  $file
 	 */
-	public static function addStyle( $application, $file = null ){
-		if( is_null( $file )){
+	public static function addStyle( $application, $file = null ) {
+		if( is_null( $file )) {
 			$file = $application;
 			$application = "";
 		}
-		if( !empty( $application )){
+		if( !empty( $application )) {
 			self::$styles[] = "$application/css/$file";
 		}else{
 			self::$styles[] = "css/$file";
@@ -136,7 +142,7 @@ class OC_Util {
 	 * @param array $attributes array of attributes for the element
 	 * @param string $text the text content for the element
 	 */
-	public static function addHeader( $tag, $attributes, $text=''){
+	public static function addHeader( $tag, $attributes, $text='') {
 		self::$headers[]=array('tag'=>$tag,'attributes'=>$attributes,'text'=>$text);
 	}
 
@@ -146,8 +152,8 @@ class OC_Util {
 	 * @param int timestamp $timestamp
 	 * @param bool dateOnly option to ommit time from the result
 	 */
-    public static function formatDate( $timestamp,$dateOnly=false){
-		if(isset($_SESSION['timezone'])){//adjust to clients timezone if we know it
+    public static function formatDate( $timestamp,$dateOnly=false) {
+		if(isset($_SESSION['timezone'])) {//adjust to clients timezone if we know it
 			$systemTimeZone = intval(date('O'));
 			$systemTimeZone=(round($systemTimeZone/100,0)*60)+($systemTimeZone%100);
 			$clientTimeZone=$_SESSION['timezone']*60;
@@ -191,12 +197,14 @@ class OC_Util {
 	 * check if the current server configuration is suitable for ownCloud
 	 * @return array arrays with error messages and hints
 	 */
-	public static function checkServer(){
+	public static function checkServer() {
 		$errors=array();
 
+		$web_server_restart= false;
 		//check for database drivers
-		if(!(is_callable('sqlite_open') or class_exists('SQLite3')) and !is_callable('mysql_connect') and !is_callable('pg_connect')){
+		if(!(is_callable('sqlite_open') or class_exists('SQLite3')) and !is_callable('mysql_connect') and !is_callable('pg_connect')) {
 			$errors[]=array('error'=>'No database drivers (sqlite, mysql, or postgresql) installed.<br/>','hint'=>'');//TODO: sane hint
+			$web_server_restart= true;
 		}
 
 		//common hint for all file permissons error messages
@@ -210,32 +218,32 @@ class OC_Util {
 		// Check if there is a writable install folder.
 		if(OC_Config::getValue('appstoreenabled', true)) {
 			if( OC_App::getInstallPath() === null  || !is_writable(OC_App::getInstallPath())) {
-				$errors[]=array('error'=>"Can't write into apps directory",'hint'=>"You can usually fix this by giving the webserver user write access to the apps directory 
+				$errors[]=array('error'=>"Can't write into apps directory",'hint'=>"You can usually fix this by giving the webserver user write access to the apps directory
 				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.";
+		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'){
+			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'){
+				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 )){
+			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'){
+				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'){
+					if(substr($prems,2,1)!='0') {
 						$errors[]=array('error'=>'Data directory ('.$CONFIG_BACKUPDIRECTORY.') is readable for other users<br/>','hint'=>$permissionsModHint);
 					}
 				}
@@ -244,37 +252,52 @@ class OC_Util {
 			//TODO: permissions checks for windows hosts
 		}
 		// Create root dir.
-		if(!is_dir($CONFIG_DATADIRECTORY)){
+		if(!is_dir($CONFIG_DATADIRECTORY)) {
 			$success=@mkdir($CONFIG_DATADIRECTORY);
 			if(!$success) {
 				$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)){
+		} else if(!is_writable($CONFIG_DATADIRECTORY)) {
 			$errors[]=array('error'=>'Data directory ('.$CONFIG_DATADIRECTORY.') not writable by ownCloud<br/>','hint'=>$permissionsHint);
 		}
 
 		// check if all required php modules are present
-		if(!class_exists('ZipArchive')){
+		if(!class_exists('ZipArchive')) {
 			$errors[]=array('error'=>'PHP module zip not installed.<br/>','hint'=>'Please ask your server administrator to install the module.');
+			$web_server_restart= false;
 		}
 
-		if(!function_exists('mb_detect_encoding')){
+		if(!function_exists('mb_detect_encoding')) {
 			$errors[]=array('error'=>'PHP module mb multibyte not installed.<br/>','hint'=>'Please ask your server administrator to install the module.');
+			$web_server_restart= false;
 		}
-		if(!function_exists('ctype_digit')){
+		if(!function_exists('ctype_digit')) {
 			$errors[]=array('error'=>'PHP module ctype is not installed.<br/>','hint'=>'Please ask your server administrator to install the module.');
+			$web_server_restart= false;
 		}
-		if(!function_exists('json_encode')){
+		if(!function_exists('json_encode')) {
 			$errors[]=array('error'=>'PHP module JSON is not installed.<br/>','hint'=>'Please ask your server administrator to install the module.');
+			$web_server_restart= false;
 		}
-		if(!function_exists('imagepng')){
+		if(!function_exists('imagepng')) {
 			$errors[]=array('error'=>'PHP module GD is not installed.<br/>','hint'=>'Please ask your server administrator to install the module.');
+			$web_server_restart= false;
+		}
+		if(!function_exists('gzencode')) {
+			$errors[]=array('error'=>'PHP module zlib is not installed.<br/>','hint'=>'Please ask your server administrator to install the module.');
+			$web_server_restart= false;
 		}
-		if(floatval(phpversion())<5.3){
+		if(floatval(phpversion())<5.3) {
 			$errors[]=array('error'=>'PHP 5.3 is required.<br/>','hint'=>'Please ask your server administrator to update PHP to version 5.3 or higher. PHP 5.2 is no longer supported by ownCloud and the PHP community.');
+			$web_server_restart= false;
 		}
-		if(!defined('PDO::ATTR_DRIVER_NAME')){
+		if(!defined('PDO::ATTR_DRIVER_NAME')) {
 			$errors[]=array('error'=>'PHP PDO module is not installed.<br/>','hint'=>'Please ask your server administrator to install the module.');
+			$web_server_restart= false;
+		}
+
+		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.');
 		}
 
 		return $errors;
@@ -307,8 +330,8 @@ class OC_Util {
 	/**
 	* Check if the app is enabled, redirects to home if not
 	*/
-	public static function checkAppEnabled($app){
-		if( !OC_App::isEnabled($app)){
+	public static function checkAppEnabled($app) {
+		if( !OC_App::isEnabled($app)) {
 			header( 'Location: '.OC_Helper::linkToAbsolute( '', 'index.php' ));
 			exit();
 		}
@@ -318,10 +341,10 @@ class OC_Util {
 	* Check if the user is logged in, redirects to home if not. With
 	* redirect URL parameter to the request URI.
 	*/
-	public static function checkLoggedIn(){
+	public static function checkLoggedIn() {
 		// Check if we are a user
-		if( !OC_User::isLoggedIn()){
-			header( 'Location: '.OC_Helper::linkToAbsolute( '', 'index.php' ).'?redirect_url='.urlencode($_SERVER["REQUEST_URI"]));
+		if( !OC_User::isLoggedIn()) {
+			header( 'Location: '.OC_Helper::linkToAbsolute( '', 'index.php', array('redirect_url' => urlencode($_SERVER["REQUEST_URI"]))));
 			exit();
 		}
 	}
@@ -329,10 +352,10 @@ class OC_Util {
 	/**
 	* Check if the user is a admin, redirects to home if not
 	*/
-	public static function checkAdminUser(){
+	public static function checkAdminUser() {
 		// Check if we are a user
 		self::checkLoggedIn();
-		if( !OC_Group::inGroup( OC_User::getUser(), 'admin' )){
+		if( !OC_Group::inGroup( OC_User::getUser(), 'admin' )) {
 			header( 'Location: '.OC_Helper::linkToAbsolute( '', 'index.php' ));
 			exit();
 		}
@@ -342,13 +365,13 @@ class OC_Util {
 	* Check if the user is a subadmin, redirects to home if not
 	* @return array $groups where the current user is subadmin
 	*/
-	public static function checkSubAdminUser(){
+	public static function checkSubAdminUser() {
 		// Check if we are a user
 		self::checkLoggedIn();
-		if(OC_Group::inGroup(OC_User::getUser(),'admin')){
+		if(OC_Group::inGroup(OC_User::getUser(),'admin')) {
 			return true;
 		}
-		if(!OC_SubAdmin::isSubAdmin(OC_User::getUser())){
+		if(!OC_SubAdmin::isSubAdmin(OC_User::getUser())) {
 			header( 'Location: '.OC_Helper::linkToAbsolute( '', 'index.php' ));
 			exit();
 		}
@@ -358,7 +381,7 @@ class OC_Util {
 	/**
 	* Redirect to the user default page
 	*/
-	public static function redirectToDefaultPage(){
+	public static function redirectToDefaultPage() {
 		if(isset($_REQUEST['redirect_url']) && (substr($_REQUEST['redirect_url'], 0, strlen(OC::$WEBROOT)) == OC::$WEBROOT || $_REQUEST['redirect_url'][0] == '/')) {
 			$location = $_REQUEST['redirect_url'];
 		}
@@ -383,9 +406,9 @@ class OC_Util {
 	 * get an id unqiue for this instance
 	 * @return string
 	 */
-	public static function getInstanceId(){
+	public static function getInstanceId() {
 		$id=OC_Config::getValue('instanceid',null);
-		if(is_null($id)){
+		if(is_null($id)) {
 			$id=uniqid();
 			OC_Config::setValue('instanceid',$id);
 		}
@@ -397,7 +420,7 @@ class OC_Util {
 	 * Todo: Write howto
 	 * @return $token Generated token.
 	 */
-	public static function callRegister(){
+	public static function callRegister() {
 		//mamimum time before token exires
 		$maxtime=(60*60);  // 1 hour
 
@@ -409,15 +432,15 @@ class OC_Util {
 
 		// cleanup old tokens garbage collector
 		// only run every 20th time so we don't waste cpu cycles
-		if(rand(0,20)==0) {  
+		if(rand(0,20)==0) {
 			foreach($_SESSION as $key=>$value) {
 				// search all tokens in the session
 				if(substr($key,0,12)=='requesttoken') {
-					if($value+$maxtime<time()){
+					if($value+$maxtime<time()) {
 						// remove outdated tokens
-						unset($_SESSION[$key]);						
+						unset($_SESSION[$key]);
 					}
-				}	
+				}
 			}
 		}
 		// return the token
@@ -429,14 +452,14 @@ 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.
 	 */
-	public static function isCallRegistered(){
+	public static function isCallRegistered() {
 		//mamimum time before token exires
 		$maxtime=(60*60);  // 1 hour
 		if(isset($_GET['requesttoken'])) {
 			$token=$_GET['requesttoken'];
-		}elseif(isset($_POST['requesttoken'])){
+		}elseif(isset($_POST['requesttoken'])) {
 			$token=$_POST['requesttoken'];
-		}elseif(isset($_SERVER['HTTP_REQUESTTOKEN'])){
+		}elseif(isset($_SERVER['HTTP_REQUESTTOKEN'])) {
 			$token=$_SERVER['HTTP_REQUESTTOKEN'];
 		}else{
 			//no token found.
@@ -444,7 +467,7 @@ class OC_Util {
 		}
 		if(isset($_SESSION['requesttoken-'.$token])) {
 			$timestamp=$_SESSION['requesttoken-'.$token];
-			if($timestamp+$maxtime<time()){
+			if($timestamp+$maxtime<time()) {
 				return false;
 			}else{
 				//token valid
@@ -459,22 +482,22 @@ class OC_Util {
 	 * @brief Check an ajax get/post call if the request token is valid. exit if not.
 	 * Todo: Write howto
 	 */
-	public static function callCheck(){
+	public static function callCheck() {
 		if(!OC_Util::isCallRegistered()) {
 			exit;
 		}
 	}
-	
+
 	/**
 	 * @brief Public function to sanitize HTML
 	 *
 	 * This function is used to sanitize HTML and should be applied on any
 	 * string or array of strings before displaying it on a web page.
-	 * 
+	 *
 	 * @param string or array of strings
 	 * @return array with sanitized strings or a single sanitized string, depends on the input parameter.
 	 */
-	public static function sanitizeHTML( &$value ){
+	public static function sanitizeHTML( &$value ) {
 		if (is_array($value) || is_object($value)) array_walk_recursive($value,'OC_Util::sanitizeHTML');
 		else $value = htmlentities($value, ENT_QUOTES, 'UTF-8'); //Specify encoding for PHP<5.4
 		return $value;
diff --git a/lib/vcategories.php b/lib/vcategories.php
index 20d9e3b5d6193888f11283ec42fc73f19d537afd..f5123adeeb641ff3e87c73bf7c9e45b777af6b4e 100644
--- a/lib/vcategories.php
+++ b/lib/vcategories.php
@@ -125,11 +125,11 @@ class OC_VCategories {
 	*	$result = $stmt->execute();
 	*	$objects = array();
 	*	if(!is_null($result)) {
-	*		while( $row = $result->fetchRow()){
+	*		while( $row = $result->fetchRow()) {
 	*			$objects[] = $row['carddata'];
 	*		}
 	*	}
-	* 	$categories->rescan($objects);
+	*	$categories->rescan($objects);
 	*/
 	public function rescan($objects, $sync=true, $reset=true) {
 		if($reset === true) {
@@ -183,7 +183,7 @@ class OC_VCategories {
 		if(!is_null($objects)) {
 			foreach($objects as $key=>&$value) {
 				$vobject = OC_VObject::parse($value[1]);
-				if(!is_null($vobject)){
+				if(!is_null($vobject)) {
 					$categories = $vobject->getAsArray('CATEGORIES');
 					//OC_Log::write('core','OC_VCategories::delete, before: '.$key.': '.print_r($categories, true), OC_Log::DEBUG);
 					foreach($names as $name) {
@@ -219,7 +219,7 @@ class OC_VCategories {
 		if(!is_array($haystack)) {
 			return false;
 		}
-		return array_search(strtolower($needle),array_map('strtolower',$haystack)); 
+		return array_search(strtolower($needle),array_map('strtolower',$haystack));
 	}
 
 }
diff --git a/lib/vobject.php b/lib/vobject.php
index ec80e1d605ae2d163c06b2a78fb1068351378db8..b5a04b4bf65db60efc5c6f583499def98775412e 100644
--- a/lib/vobject.php
+++ b/lib/vobject.php
@@ -30,7 +30,7 @@ class OC_VObject{
 	/**
 	 * @returns Sabre_VObject_Component
 	 */
-	public function getVObject(){
+	public function getVObject() {
 		return $this->vobject;
 	}
 
@@ -39,11 +39,11 @@ class OC_VObject{
 	 * @param string VObject as string
 	 * @returns Sabre_VObject or null
 	 */
-	public static function parse($data){
+	public static function parse($data) {
 		try {
 			Sabre_VObject_Property::$classMap['LAST-MODIFIED'] = 'Sabre_VObject_Property_DateTime';
 			$vobject = Sabre_VObject_Reader::read($data);
-			if ($vobject instanceof Sabre_VObject_Component){
+			if ($vobject instanceof Sabre_VObject_Component) {
 				$vobject = new OC_VObject($vobject);
 			}
 			return $vobject;
@@ -58,8 +58,8 @@ class OC_VObject{
 	 * @param string $value
 	 * @return string
 	 */
-	public static function escapeSemicolons($value){
-		foreach($value as &$i ){
+	public static function escapeSemicolons($value) {
+		foreach($value as &$i ) {
 			$i = implode("\\\\;", explode(';', $i));
 		}
 		return implode(';',$value);
@@ -70,11 +70,11 @@ class OC_VObject{
 	 * @param string $value
 	 * @return array
 	 */
-	public static function unescapeSemicolons($value){
+	public static function unescapeSemicolons($value) {
 		$array = explode(';',$value);
-		for($i=0;$i<count($array);$i++){
-			if(substr($array[$i],-2,2)=="\\\\"){
-				if(isset($array[$i+1])){
+		for($i=0;$i<count($array);$i++) {
+			if(substr($array[$i],-2,2)=="\\\\") {
+				if(isset($array[$i+1])) {
 					$array[$i] = substr($array[$i],0,count($array[$i])-2).';'.$array[$i+1];
 					unset($array[$i+1]);
 				}
@@ -91,16 +91,16 @@ class OC_VObject{
 	 * Constuctor
 	 * @param Sabre_VObject_Component or string
 	 */
-	public function __construct($vobject_or_name){
-		if (is_object($vobject_or_name)){
+	public function __construct($vobject_or_name) {
+		if (is_object($vobject_or_name)) {
 			$this->vobject = $vobject_or_name;
 		} else {
 			$this->vobject = new Sabre_VObject_Component($vobject_or_name);
 		}
 	}
 
-	public function add($item, $itemValue = null){
-		if ($item instanceof OC_VObject){
+	public function add($item, $itemValue = null) {
+		if ($item instanceof OC_VObject) {
 			$item = $item->getVObject();
 		}
 		$this->vobject->add($item, $itemValue);
@@ -113,12 +113,12 @@ class OC_VObject{
 	 * @param object $parameters of property
 	 * @returns Sabre_VObject_Property newly created
 	 */
-	public function addProperty($name, $value, $parameters=array()){
-		if(is_array($value)){
+	public function addProperty($name, $value, $parameters=array()) {
+		if(is_array($value)) {
 			$value = OC_VObject::escapeSemicolons($value);
 		}
 		$property = new Sabre_VObject_Property( $name, $value );
-		foreach($parameters as $name => $value){
+		foreach($parameters as $name => $value) {
 			$property->parameters[] = new Sabre_VObject_Parameter($name, $value);
 		}
 
@@ -126,13 +126,13 @@ class OC_VObject{
 		return $property;
 	}
 
-	public function setUID(){
+	public function setUID() {
 		$uid = substr(md5(rand().time()),0,10);
 		$this->vobject->add('UID',$uid);
 	}
 
-	public function setString($name, $string){
-		if ($string != ''){
+	public function setString($name, $string) {
+		if ($string != '') {
 			$string = strtr($string, array("\r\n"=>"\n"));
 			$this->vobject->__set($name, $string);
 		}else{
@@ -150,11 +150,11 @@ class OC_VObject{
 	 * @param int $dateType
 	 * @return void
 	 */
-	public function setDateTime($name, $datetime, $dateType=Sabre_VObject_Property_DateTime::LOCALTZ){
-		if ($datetime == 'now'){
+	public function setDateTime($name, $datetime, $dateType=Sabre_VObject_Property_DateTime::LOCALTZ) {
+		if ($datetime == 'now') {
 			$datetime = new DateTime();
 		}
-		if ($datetime instanceof DateTime){
+		if ($datetime instanceof DateTime) {
 			$datetime_element = new Sabre_VObject_Property_DateTime($name);
 			$datetime_element->setDateTime($datetime, $dateType);
 			$this->vobject->__set($name, $datetime_element);
@@ -163,45 +163,45 @@ class OC_VObject{
 		}
 	}
 
-	public function getAsString($name){
+	public function getAsString($name) {
 		return $this->vobject->__isset($name) ?
 			$this->vobject->__get($name)->value :
 			'';
 	}
 
-	public function getAsArray($name){
+	public function getAsArray($name) {
 		$values = array();
-		if ($this->vobject->__isset($name)){
+		if ($this->vobject->__isset($name)) {
 			$values = explode(',', $this->getAsString($name));
 			$values = array_map('trim', $values);
 		}
 		return $values;
 	}
 
-	public function &__get($name){
-		if ($name == 'children'){
+	public function &__get($name) {
+		if ($name == 'children') {
 			return $this->vobject->children;
 		}
 		$return = $this->vobject->__get($name);
-		if ($return instanceof Sabre_VObject_Component){
+		if ($return instanceof Sabre_VObject_Component) {
 			$return = new OC_VObject($return);
 		}
 		return $return;
 	}
 
-	public function __set($name, $value){
+	public function __set($name, $value) {
 		return $this->vobject->__set($name, $value);
 	}
 
-	public function __unset($name){
+	public function __unset($name) {
 		return $this->vobject->__unset($name);
 	}
 
-	public function __isset($name){
+	public function __isset($name) {
 		return $this->vobject->__isset($name);
 	}
 
-	public function __call($function,$arguments){
+	public function __call($function,$arguments) {
 		return call_user_func_array(array($this->vobject, $function), $arguments);
 	}
 }
diff --git a/ocs/providers.php b/ocs/providers.php
index cc6de32266bd6940bfb740ebe165b56685073175..4c68ded914e3f1c58f922b96c7be0f103f18bf3f 100644
--- a/ocs/providers.php
+++ b/ocs/providers.php
@@ -21,9 +21,9 @@
 * 
 */
 
-require_once('../lib/base.php');
+require_once '../lib/base.php';
 
-$url='http://'.substr(OCP\Util::getServerHost().$_SERVER['REQUEST_URI'],0,-17).'ocs/v1.php/';
+$url='http://'.substr(OCP\Util::getServerHost().$_SERVER['REQUEST_URI'], 0, -17).'ocs/v1.php/';
 
 echo('
 <providers>
diff --git a/ocs/v1.php b/ocs/v1.php
index ab0dc80f4ba9faa38c772a723e67c136dd7a7a50..b12ea5ef18d0df1f9d257d8f879e456167b55ef7 100644
--- a/ocs/v1.php
+++ b/ocs/v1.php
@@ -21,6 +21,6 @@
 * 
 */
 
-require_once('../lib/base.php');
+require_once '../lib/base.php';
 @ob_clean();
 OC_OCS::handle();
diff --git a/public.php b/public.php
index 0581631f41ff2c776b9480878e785c33495946c5..db8419373ee252e108daf75142f6e7a6153d0dee 100644
--- a/public.php
+++ b/public.php
@@ -1,16 +1,20 @@
 <?php
 $RUNTIME_NOAPPS = TRUE;
-require_once('lib/base.php');
+require_once 'lib/base.php';
+if (!isset($_GET['service'])) {
+	header('HTTP/1.0 404 Not Found');
+	exit;
+}
 $file = OCP\CONFIG::getAppValue('core', 'public_' . strip_tags($_GET['service']));
-if(is_null($file)){
+if(is_null($file)) {
 	header('HTTP/1.0 404 Not Found');
 	exit;
 }
 
-$parts=explode('/',$file,2);
+$parts=explode('/', $file, 2);
 $app=$parts[0];
 
 OC_Util::checkAppEnabled($app);
 OC_App::loadApp($app);
 
-require_once(OC_App::getAppPath($app) .'/'. $parts[1]);
+require_once OC_App::getAppPath($app) .'/'. $parts[1];
diff --git a/remote.php b/remote.php
index 41d2a7ab349c32f96a972d03f945d0a666a886a0..9d9903338a64dcb1be95b3022c85d9c331a690c0 100644
--- a/remote.php
+++ b/remote.php
@@ -1,8 +1,8 @@
 <?php
 $RUNTIME_NOAPPS = TRUE;
-require_once('lib/base.php');
+require_once 'lib/base.php';
 $path_info = OC_Request::getPathInfo();
-if ($path_info === false) {
+if ($path_info === false || $path_info === '') {
 	OC_Response::setStatus(OC_Response::STATUS_NOT_FOUND);
 	exit;
 }
@@ -13,12 +13,12 @@ $service=substr($path_info, 1, $pos-1);
 
 $file = OC_AppConfig::getValue('core', 'remote_' . $service);
 
-if(is_null($file)){
+if(is_null($file)) {
 	OC_Response::setStatus(OC_Response::STATUS_NOT_FOUND);
 	exit;
 }
 
-$file=ltrim($file,'/');
+$file=ltrim($file, '/');
 
 $parts=explode('/', $file, 2);
 $app=$parts[0];
@@ -33,4 +33,4 @@ switch ($app) {
 		break;
 }
 $baseuri = OC::$WEBROOT . '/remote.php/'.$service.'/';
-require_once($file);
+require_once $file;
diff --git a/search/ajax/search.php b/search/ajax/search.php
index 95ddfedf8ba7b044495177c5ff69c237a0e716e6..41ee9ad5abacbef9ec3d9c7e39427ecc08aec47d 100644
--- a/search/ajax/search.php
+++ b/search/ajax/search.php
@@ -23,13 +23,13 @@
 
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 
 // Check if we are a user
 OC_JSON::checkLoggedIn();
 
 $query=(isset($_GET['query']))?$_GET['query']:'';
-if($query){
+if($query) {
 	$result=OC_Search::search($query);
 	OC_JSON::encodedPrint($result);
 }else{
diff --git a/search/index.php b/search/index.php
index de55aec3999391239a3649531d9402f3143168ac..9c515ff3dd3df44c56033c9bcb0aaa3f3a91ec7b 100644
--- a/search/index.php
+++ b/search/index.php
@@ -23,7 +23,7 @@
 
 
 // Init owncloud
-require_once('../lib/base.php');
+require_once '../lib/base.php';
 
 // Check if we are a user
 OC_Util::checkLoggedIn();
@@ -32,20 +32,20 @@ OC_Util::checkLoggedIn();
 OC_Util::addStyle( 'search', 'search' );
 
 $query=(isset($_POST['query']))?$_POST['query']:'';
-if($query){
+if($query) {
 	$results=OC_Search::search($query);
 }else{
 	OC_Util::redirectToDefaultPage();
 }
 
 $resultTypes=array();
-foreach($results as $result){
-	if(!isset($resultTypes[$result->type])){
+foreach($results as $result) {
+	if(!isset($resultTypes[$result->type])) {
 		$resultTypes[$result->type]=array();
 	}
 	$resultTypes[$result->type][]=$result;
 }
 
 $tmpl = new OC_Template( 'search', 'index', 'user' );
-$tmpl->assign('resultTypes',$resultTypes);
+$tmpl->assign('resultTypes', $resultTypes);
 $tmpl->printPage();
diff --git a/settings/admin.php b/settings/admin.php
index 8788de940b385e10537d4a5767c91a3ace66dda1..a36f219038666b7fcca5438c70a54f01a919061a 100755
--- a/settings/admin.php
+++ b/settings/admin.php
@@ -5,7 +5,7 @@
  * See the COPYING-README file.
  */
 
-require_once('../lib/base.php');
+require_once '../lib/base.php';
 OC_Util::checkAdminUser();
 
 OC_Util::addStyle( "settings", "settings" );
@@ -20,7 +20,7 @@ $htaccessworking=OC_Util::ishtaccessworking();
 $entries=OC_Log_Owncloud::getEntries(3);
 $entriesremain=(count(OC_Log_Owncloud::getEntries(4)) > 3)?true:false;
 
-function compareEntries($a,$b){
+function compareEntries($a,$b) {
 	return $b->time - $a->time;
 }
 usort($entries, 'compareEntries');
@@ -35,7 +35,7 @@ $tmpl->assign('allowLinks', OC_Appconfig::getValue('core', 'shareapi_allow_links
 $tmpl->assign('allowResharing', OC_Appconfig::getValue('core', 'shareapi_allow_resharing', 'yes'));
 $tmpl->assign('sharePolicy', OC_Appconfig::getValue('core', 'shareapi_share_policy', 'global'));
 $tmpl->assign('forms',array());
-foreach($forms as $form){
+foreach($forms as $form) {
 	$tmpl->append('forms',$form);
 }
 $tmpl->printPage();
diff --git a/settings/ajax/apps/ocs.php b/settings/ajax/apps/ocs.php
index 082f1cfb922412fb9702d011b0f892939a7eac54..71cb046fc8df24fcff7a70820be15663bd14c913 100644
--- a/settings/ajax/apps/ocs.php
+++ b/settings/ajax/apps/ocs.php
@@ -7,13 +7,13 @@
  */
 
 // Init owncloud
-require_once('../../../lib/base.php');
+require_once '../../../lib/base.php';
 
 OC_JSON::checkAdminUser();
 
 $l = OC_L10N::get('core');
 
-if(OC_Config::getValue('appstoreenabled', true)==false){
+if(OC_Config::getValue('appstoreenabled', true)==false) {
 	OCP\JSON::success(array('type' => 'external', 'data' => array()));
 }
 
@@ -27,14 +27,15 @@ $apps=array();
 
 // apps from external repo via OCS
 $catagoryNames=OC_OCSClient::getCategories();
-if(is_array($catagoryNames)){
+if(is_array($catagoryNames)) {
 	$categories=array_keys($catagoryNames);
 	$page=0;
-	$externalApps=OC_OCSClient::getApplications($categories,$page);
-	foreach($externalApps as $app){
+	$filter='approved';
+	$externalApps=OC_OCSClient::getApplications($categories, $page, $filter);
+	foreach($externalApps as $app) {
 		// show only external apps that aren't enabled yet
 		$local=false;
-		foreach($enabledApps as $a){
+		foreach($enabledApps as $a) {
 			if($a == $app['name']) {
 				$local=true;
 			}
diff --git a/settings/ajax/changepassword.php b/settings/ajax/changepassword.php
index c7cb6512331c1043b42ad1621eb351a2eca89410..b251fea504b9e89df86543affc05effa70818802 100644
--- a/settings/ajax/changepassword.php
+++ b/settings/ajax/changepassword.php
@@ -1,7 +1,7 @@
 <?php
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 OCP\JSON::callCheck();
 
 $username = isset($_POST["username"]) ? $_POST["username"] : OC_User::getUser();
@@ -13,23 +13,23 @@ OC_JSON::checkLoggedIn();
 OCP\JSON::callCheck();
 
 $userstatus = null;
-if(OC_Group::inGroup(OC_User::getUser(), 'admin')){
+if(OC_Group::inGroup(OC_User::getUser(), 'admin')) {
 	$userstatus = 'admin';
 }
-if(OC_SubAdmin::isUserAccessible(OC_User::getUser(), $username)){
+if(OC_SubAdmin::isUserAccessible(OC_User::getUser(), $username)) {
 	$userstatus = 'subadmin';
 }
-if(OC_User::getUser() == $username && OC_User::checkPassword($username,$oldPassword)){
+if(OC_User::getUser() == $username && OC_User::checkPassword($username, $oldPassword)) {
 	$userstatus = 'user';
 }
 
-if(is_null($userstatus)){
+if(is_null($userstatus)) {
 	OC_JSON::error( array( "data" => array( "message" => "Authentication error" )));
 	exit();
 }
 
 // Return Success story
-if( OC_User::setPassword( $username, $password )){
+if( OC_User::setPassword( $username, $password )) {
 	OC_JSON::success(array("data" => array( "username" => $username )));
 }
 else{
diff --git a/settings/ajax/creategroup.php b/settings/ajax/creategroup.php
index 16cf57aebb79f7b56356a67bdea60e04a8930b35..83733ac4d2d58c130f447504b07bf5c02c6cb85d 100644
--- a/settings/ajax/creategroup.php
+++ b/settings/ajax/creategroup.php
@@ -1,12 +1,12 @@
 <?php
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 OCP\JSON::callCheck();
 
 // Check if we are a user
-if( !OC_User::isLoggedIn() || !OC_Group::inGroup( OC_User::getUser(), 'admin' )){
-	OC_JSON::error(array("data" => array( "message" => "Authentication error" )));
+if( !OC_User::isLoggedIn() || !OC_Group::inGroup( OC_User::getUser(), 'admin' )) {
+	OC_JSON::error(array("data" => array( "message" => $l->t("Authentication error") )));
 	exit();
 }
 
@@ -15,15 +15,15 @@ OCP\JSON::callCheck();
 $groupname = $_POST["groupname"];
 
 // Does the group exist?
-if( in_array( $groupname, OC_Group::getGroups())){
-	OC_JSON::error(array("data" => array( "message" => "Group already exists" )));
+if( in_array( $groupname, OC_Group::getGroups())) {
+	OC_JSON::error(array("data" => array( "message" => $l->t("Group already exists") )));
 	exit();
 }
 
 // Return Success story
-if( OC_Group::createGroup( $groupname )){
+if( OC_Group::createGroup( $groupname )) {
 	OC_JSON::success(array("data" => array( "groupname" => $groupname )));
 }
 else{
-	OC_JSON::error(array("data" => array( "message" => "Unable to add group" )));
+	OC_JSON::error(array("data" => array( "message" => $l->t("Unable to add group") )));
 }
diff --git a/settings/ajax/createuser.php b/settings/ajax/createuser.php
index eaca5b50745fe47fcfbeffdff577cf0e7a17b04b..bdf7e4983ac5fd5f12674bb0db9a721de01442f3 100644
--- a/settings/ajax/createuser.php
+++ b/settings/ajax/createuser.php
@@ -1,32 +1,32 @@
 <?php
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 OCP\JSON::callCheck();
 
 // Check if we are a user
-if( !OC_User::isLoggedIn() || (!OC_Group::inGroup( OC_User::getUser(), 'admin' ) && !OC_SubAdmin::isSubAdmin(OC_User::getUser()))){
+if( !OC_User::isLoggedIn() || (!OC_Group::inGroup( OC_User::getUser(), 'admin' ) && !OC_SubAdmin::isSubAdmin(OC_User::getUser()))) {
 	OC_JSON::error(array("data" => array( "message" => "Authentication error" )));
 	exit();
 }
 OCP\JSON::callCheck();
 
-$isadmin = OC_Group::inGroup(OC_User::getUser(),'admin')?true:false;
+$isadmin = OC_Group::inGroup(OC_User::getUser(), 'admin')?true:false;
 
-if($isadmin){
+if($isadmin) {
 	$groups = array();
-	if( isset( $_POST["groups"] )){
+	if( isset( $_POST["groups"] )) {
 		$groups = $_POST["groups"];
 	}
 }else{
-	if(isset( $_POST["groups"] )){
+	if(isset( $_POST["groups"] )) {
 		$groups = array();
-		foreach($_POST["groups"] as $group){
-			if(OC_SubAdmin::isGroupAccessible(OC_User::getUser(), $group)){
+		foreach($_POST["groups"] as $group) {
+			if(OC_SubAdmin::isGroupAccessible(OC_User::getUser(), $group)) {
 				$groups[] = $group;
 			}
 		}
-		if(count($groups) == 0){
+		if(count($groups) == 0) {
 			$groups = OC_SubAdmin::getSubAdminsGroups(OC_User::getUser());
 		}
 	}else{
@@ -37,7 +37,7 @@ $username = $_POST["username"];
 $password = $_POST["password"];
 
 // Does the group exist?
-if( in_array( $username, OC_User::getUsers())){
+if( in_array( $username, OC_User::getUsers())) {
 	OC_JSON::error(array("data" => array( "message" => "User already exists" )));
 	exit();
 }
@@ -45,13 +45,16 @@ if( in_array( $username, OC_User::getUsers())){
 // Return Success story
 try {
 	OC_User::createUser($username, $password);
-	foreach( $groups as $i ){
-		if(!OC_Group::groupExists($i)){
+	foreach( $groups as $i ) {
+		if(!OC_Group::groupExists($i)) {
 			OC_Group::createGroup($i);
 		}
 		OC_Group::addToGroup( $username, $i );
 	}
-	OC_JSON::success(array("data" => array( "username" => $username, "groups" => implode( ", ", OC_Group::getUserGroups( $username )))));
+	OC_JSON::success(array("data" => 
+				array( 
+					"username" => $username, 
+					"groups" => implode( ", ", OC_Group::getUserGroups( $username )))));
 } catch (Exception $exception) {
 	OC_JSON::error(array("data" => array( "message" => $exception->getMessage())));
 }
diff --git a/settings/ajax/disableapp.php b/settings/ajax/disableapp.php
index cc00698870702faf8482361dbc52c83fd0f8f4c5..977a536af215d084e39584a50dd3d8c89f4ceea1 100644
--- a/settings/ajax/disableapp.php
+++ b/settings/ajax/disableapp.php
@@ -1,6 +1,6 @@
 <?php
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 OC_JSON::checkAdminUser();
 OCP\JSON::callCheck();
 OC_JSON::setContentTypeHeader();
diff --git a/settings/ajax/enableapp.php b/settings/ajax/enableapp.php
index fe3922fa02b7f90b75ce0442b04ce696fa77b206..b9cf6a13670733a7bb76674a09f51db4a5a1c463 100644
--- a/settings/ajax/enableapp.php
+++ b/settings/ajax/enableapp.php
@@ -1,7 +1,7 @@
 <?php
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 OC_JSON::checkAdminUser();
 OCP\JSON::callCheck();
 OC_JSON::setContentTypeHeader();
diff --git a/settings/ajax/getlog.php b/settings/ajax/getlog.php
index d5af22ac339f28fdd4c8e4cbfd712ba5b9ed246a..9b9240f82539224083233bcb886d4dad56abf2b2 100644
--- a/settings/ajax/getlog.php
+++ b/settings/ajax/getlog.php
@@ -6,7 +6,7 @@
  */
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 
 OC_JSON::checkAdminUser();
 
@@ -14,4 +14,6 @@ $count=(isset($_GET['count']))?$_GET['count']:50;
 $offset=(isset($_GET['offset']))?$_GET['offset']:0;
 
 $entries=OC_Log_Owncloud::getEntries($count,$offset);
-OC_JSON::success(array("data" => OC_Util::sanitizeHTML($entries), "remain"=>(count(OC_Log_Owncloud::getEntries(1,$offset + $offset)) != 0)?true:false));
+OC_JSON::success(array(
+	"data" => OC_Util::sanitizeHTML($entries), 
+	"remain"=>(count(OC_Log_Owncloud::getEntries(1, $offset + $offset)) != 0) ? true : false));
diff --git a/settings/ajax/lostpassword.php b/settings/ajax/lostpassword.php
index 803a424854c27eeace7e4eaa852f293cc3b0543e..2a40ba09a8ac3506af2050b0b5e191897b2db28b 100644
--- a/settings/ajax/lostpassword.php
+++ b/settings/ajax/lostpassword.php
@@ -1,16 +1,16 @@
 <?php
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 OC_JSON::checkLoggedIn();
 OCP\JSON::callCheck();
 
 $l=OC_L10N::get('core');
 
 // Get data
-if( isset( $_POST['email'] ) && filter_var( $_POST['email'], FILTER_VALIDATE_EMAIL) ){
+if( isset( $_POST['email'] ) && filter_var( $_POST['email'], FILTER_VALIDATE_EMAIL) ) {
 	$email=trim($_POST['email']);
-	OC_Preferences::setValue(OC_User::getUser(),'settings','email',$email);
+	OC_Preferences::setValue(OC_User::getUser(), 'settings', 'email', $email);
 	OC_JSON::success(array("data" => array( "message" => $l->t("Email saved") )));
 }else{
 	OC_JSON::error(array("data" => array( "message" => $l->t("Invalid email") )));
diff --git a/settings/ajax/openid.php b/settings/ajax/openid.php
index bf4ead06020b6c6eefdaf7c6152347821ab838ea..ecec085383c1124c599c3c7f6f1cb205ccdcfcd0 100644
--- a/settings/ajax/openid.php
+++ b/settings/ajax/openid.php
@@ -1,7 +1,7 @@
 <?php
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 
 $l=OC_L10N::get('settings');
 
@@ -10,9 +10,9 @@ OCP\JSON::callCheck();
 OC_JSON::checkAppEnabled('user_openid');
 
 // Get data
-if( isset( $_POST['identity'] ) ){
+if( isset( $_POST['identity'] ) ) {
 	$identity=$_POST['identity'];
-	OC_Preferences::setValue(OC_User::getUser(),'user_openid','identity',$identity);
+	OC_Preferences::setValue(OC_User::getUser(), 'user_openid', 'identity', $identity);
 	OC_JSON::success(array("data" => array( "message" => $l->t("OpenID Changed") )));
 }else{
 	OC_JSON::error(array("data" => array( "message" => $l->t("Invalid request") )));
diff --git a/settings/ajax/removegroup.php b/settings/ajax/removegroup.php
index f8c2065956c8f677c4256badc34cbc73fce54f70..33e1a514c88e8b55964a0a530a095cff2f4cbb5a 100644
--- a/settings/ajax/removegroup.php
+++ b/settings/ajax/removegroup.php
@@ -1,7 +1,7 @@
 <?php
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 
 OC_JSON::checkAdminUser();
 OCP\JSON::callCheck();
@@ -9,9 +9,9 @@ OCP\JSON::callCheck();
 $name = $_POST["groupname"];
 
 // Return Success story
-if( OC_Group::deleteGroup( $name )){
+if( OC_Group::deleteGroup( $name )) {
 	OC_JSON::success(array("data" => array( "groupname" => $name )));
 }
 else{
-	OC_JSON::error(array("data" => array( "message" => "Unable to delete group" )));
+	OC_JSON::error(array("data" => array( "message" => $l->t("Unable to delete group") )));
 }
diff --git a/settings/ajax/removeuser.php b/settings/ajax/removeuser.php
index bfab13a68c8817f7e9218b316637c0c8ce0ed4fd..6b11fa5c4fb548e707f9e8ad3657dca699899f8e 100644
--- a/settings/ajax/removeuser.php
+++ b/settings/ajax/removeuser.php
@@ -1,23 +1,23 @@
 <?php
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 
 OC_JSON::checkSubAdminUser();
 OCP\JSON::callCheck();
 
 $username = $_POST["username"];
 
-if(!OC_Group::inGroup(OC_User::getUser(), 'admin') && !OC_SubAdmin::isUserAccessible(OC_User::getUser(), $username)){
+if(!OC_Group::inGroup(OC_User::getUser(), 'admin') && !OC_SubAdmin::isUserAccessible(OC_User::getUser(), $username)) {
 	$l = OC_L10N::get('core');
 	OC_JSON::error(array( 'data' => array( 'message' => $l->t('Authentication error') )));
 	exit();
 }
 
 // Return Success story
-if( OC_User::deleteUser( $username )){
+if( OC_User::deleteUser( $username )) {
 	OC_JSON::success(array("data" => array( "username" => $username )));
 }
 else{
-	OC_JSON::error(array("data" => array( "message" => "Unable to delete user" )));
+	OC_JSON::error(array("data" => array( "message" => $l->t("Unable to delete user") )));
 }
diff --git a/settings/ajax/setlanguage.php b/settings/ajax/setlanguage.php
index 54b103cd4fe4a7ce7cf5afb34ed2f0d413b4de23..42eea7a96fdc03bb793fbd2e7bc17694d2832da0 100644
--- a/settings/ajax/setlanguage.php
+++ b/settings/ajax/setlanguage.php
@@ -1,7 +1,7 @@
 <?php
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 
 $l=OC_L10N::get('settings');
 
@@ -10,10 +10,10 @@ OCP\JSON::callCheck();
 
 
 // Get data
-if( isset( $_POST['lang'] ) ){
+if( isset( $_POST['lang'] ) ) {
 	$languageCodes=OC_L10N::findAvailableLanguages();
 	$lang=$_POST['lang'];
-	if(array_search($lang,$languageCodes) or $lang=='en'){
+	if(array_search($lang, $languageCodes) or $lang=='en') {
 		OC_Preferences::setValue( OC_User::getUser(), 'core', 'lang', $lang );
 		OC_JSON::success(array("data" => array( "message" => $l->t("Language changed") )));
 	}else{
diff --git a/settings/ajax/setloglevel.php b/settings/ajax/setloglevel.php
index 4b97ba2aa32fe08aa8508f33f9b58066abdd80a1..982899e106adbb09355a103863cae73a8e95f491 100644
--- a/settings/ajax/setloglevel.php
+++ b/settings/ajax/setloglevel.php
@@ -5,12 +5,10 @@
  * See the COPYING-README file.
  */
 
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 OC_Util::checkAdminUser();
 OCP\JSON::callCheck();
 
 OC_Config::setValue( 'loglevel', $_POST['level'] );
 
 echo 'true';
-
-?>
\ No newline at end of file
diff --git a/settings/ajax/setquota.php b/settings/ajax/setquota.php
index 2a30b1d97e6bf35cc61bc12258d14b906c0a0203..2352ae9e4276cac802fbdbdf38e0c39b1aabc6b8 100644
--- a/settings/ajax/setquota.php
+++ b/settings/ajax/setquota.php
@@ -6,14 +6,14 @@
  */
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 
 OC_JSON::checkSubAdminUser();
 OCP\JSON::callCheck();
 
 $username = isset($_POST["username"])?$_POST["username"]:'';
 
-if(($username == '' && !OC_Group::inGroup(OC_User::getUser(), 'admin')) || (!OC_Group::inGroup(OC_User::getUser(), 'admin') && !OC_SubAdmin::isUserAccessible(OC_User::getUser(), $username))){
+if(($username == '' && !OC_Group::inGroup(OC_User::getUser(), 'admin')) || (!OC_Group::inGroup(OC_User::getUser(), 'admin') && !OC_SubAdmin::isUserAccessible(OC_User::getUser(), $username))) {
 	$l = OC_L10N::get('core');
 	OC_JSON::error(array( 'data' => array( 'message' => $l->t('Authentication error') )));
 	exit();
@@ -21,9 +21,9 @@ if(($username == '' && !OC_Group::inGroup(OC_User::getUser(), 'admin')) || (!OC_
 
 //make sure the quota is in the expected format
 $quota=$_POST["quota"];
-if($quota!='none' and $quota!='default'){
+if($quota!='none' and $quota!='default') {
 	$quota= OC_Helper::computerFileSize($quota);
-	if($quota==0){
+	if($quota==0) {
 		$quota='default';
 	}else{
 		$quota=OC_Helper::humanFileSize($quota);
@@ -31,13 +31,13 @@ if($quota!='none' and $quota!='default'){
 }
 
 // Return Success story
-if($username){
-	OC_Preferences::setValue($username,'files','quota',$quota);
+if($username) {
+	OC_Preferences::setValue($username, 'files', 'quota', $quota);
 }else{//set the default quota when no username is specified
-	if($quota=='default'){//'default' as default quota makes no sense
+	if($quota=='default') {//'default' as default quota makes no sense
 		$quota='none';
 	}
-	OC_Appconfig::setValue('files','default_quota',$quota);
+	OC_Appconfig::setValue('files', 'default_quota', $quota);
 }
-OC_JSON::success(array("data" => array( "username" => $username ,'quota'=>$quota)));
+OC_JSON::success(array("data" => array( "username" => $username ,'quota' => $quota)));
 
diff --git a/settings/ajax/togglegroups.php b/settings/ajax/togglegroups.php
index 75cd0858bbce255d7cf32dd520791e1c569fb945..65747968c172bf62abf8665750757260e7af511c 100644
--- a/settings/ajax/togglegroups.php
+++ b/settings/ajax/togglegroups.php
@@ -1,35 +1,37 @@
 <?php
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 
 OC_JSON::checkSubAdminUser();
 OCP\JSON::callCheck();
 
 $success = true;
-$error = "add user to";
-$action = "add";
-
 $username = $_POST["username"];
 $group = OC_Util::sanitizeHTML($_POST["group"]);
 
-if(!OC_Group::inGroup(OC_User::getUser(), 'admin') && (!OC_SubAdmin::isUserAccessible(OC_User::getUser(), $username) || !OC_SubAdmin::isGroupAccessible(OC_User::getUser(), $group))){
+if(!OC_Group::inGroup(OC_User::getUser(), 'admin') && (!OC_SubAdmin::isUserAccessible(OC_User::getUser(), $username) || !OC_SubAdmin::isGroupAccessible(OC_User::getUser(), $group))) {
 	$l = OC_L10N::get('core');
 	OC_JSON::error(array( 'data' => array( 'message' => $l->t('Authentication error') )));
 	exit();
 }
 
-if(!OC_Group::groupExists($group)){
+if(!OC_Group::groupExists($group)) {
 	OC_Group::createGroup($group);
 }
 
+$l = OC_L10N::get('settings');
+
+$error = $l->t("Unable to add user to group %s", $group);
+$action = "add";
+
 // Toggle group
-if( OC_Group::inGroup( $username, $group )){
+if( OC_Group::inGroup( $username, $group )) {
 	$action = "remove";
-	$error = "remove user from";
-	$success = OC_Group::removeFromGroup( $username, $group );
+    $error = $l->t("Unable to remove user from group %s", $group);
+    $success = OC_Group::removeFromGroup( $username, $group );
 	$usersInGroup=OC_Group::usersInGroup($group);
-	if(count($usersInGroup)==0){
+	if(count($usersInGroup)==0) {
 		OC_Group::deleteGroup($group);
 	}
 }
@@ -38,9 +40,9 @@ else{
 }
 
 // Return Success story
-if( $success ){
+if( $success ) {
 	OC_JSON::success(array("data" => array( "username" => $username, "action" => $action, "groupname" => $group )));
 }
 else{
-	OC_JSON::error(array("data" => array( "message" => "Unable to $error group $group" )));
+	OC_JSON::error(array("data" => array( "message" => $error )));
 }
diff --git a/settings/ajax/togglesubadmins.php b/settings/ajax/togglesubadmins.php
index 42db8450302c8e34001065a5a48ab416b8638b7e..5f7126dca347dd94ce0c8dd853737a09afb35b8e 100644
--- a/settings/ajax/togglesubadmins.php
+++ b/settings/ajax/togglesubadmins.php
@@ -1,7 +1,7 @@
 <?php
 
 // Init owncloud
-require_once('../../lib/base.php');
+require_once '../../lib/base.php';
 
 OC_JSON::checkAdminUser();
 OCP\JSON::callCheck();
@@ -10,7 +10,7 @@ $username = $_POST["username"];
 $group = OC_Util::sanitizeHTML($_POST["group"]);
 
 // Toggle group
-if(OC_SubAdmin::isSubAdminofGroup($username, $group)){
+if(OC_SubAdmin::isSubAdminofGroup($username, $group)) {
 	OC_SubAdmin::deleteSubAdmin($username, $group);
 }else{
 	OC_SubAdmin::createSubAdmin($username, $group);
diff --git a/settings/ajax/userlist.php b/settings/ajax/userlist.php
index b89b8c55ef09a948fb352d31d8c376bde95a31e7..840b6d72dc7bfd861616025ad976c2fdf48fd0f5 100644
--- a/settings/ajax/userlist.php
+++ b/settings/ajax/userlist.php
@@ -33,13 +33,20 @@ $users = array();
 if (OC_Group::inGroup(OC_User::getUser(), 'admin')) {
 	$batch = OC_User::getUsers('', 10, $offset);
 	foreach ($batch as $user) {
-		$users[] = array('name' => $user, 'groups' => join(', ', OC_Group::getUserGroups($user)), 'subadmin' => join(', ',OC_SubAdmin::getSubAdminsGroups($user)), 'quota' => OC_Preferences::getValue($user, 'files', 'quota', 'default'));
+		$users[] = array(
+			'name' => $user, 
+			'groups' => join(', ', OC_Group::getUserGroups($user)), 
+			'subadmin' => join(', ', OC_SubAdmin::getSubAdminsGroups($user)), 
+			'quota' => OC_Preferences::getValue($user, 'files', 'quota', 'default'));
 	}
 } else {
 	$groups = OC_SubAdmin::getSubAdminsGroups(OC_User::getUser());
 	$batch = OC_Group::usersInGroups($groups, '', 10, $offset);
 	foreach ($batch as $user) {
-		$users[] = array('name' => $user, 'groups' => join(', ', OC_Group::getUserGroups($user)), 'quota' => OC_Preferences::getValue($user, 'files', 'quota', 'default'));
+		$users[] = array(
+			'name' => $user, 
+			'groups' => join(', ', OC_Group::getUserGroups($user)), 
+			'quota' => OC_Preferences::getValue($user, 'files', 'quota', 'default'));
 	}
 }
 OC_JSON::success(array('data' => $users));
\ No newline at end of file
diff --git a/settings/apps.php b/settings/apps.php
index 27bbcc9adab14143047c7afd9cb259b182d9c6ce..e613814fe94bd50246e6c9f359393535af9769dc 100644
--- a/settings/apps.php
+++ b/settings/apps.php
@@ -21,7 +21,7 @@
 *
 */
 
-require_once('../lib/base.php');
+require_once '../lib/base.php';
 OC_Util::checkAdminUser();
 
 // Load the files we need
@@ -35,10 +35,14 @@ $apps=array();
 //TODO which apps do we want to blacklist and how do we integrate blacklisting with the multi apps folder feature
 $blacklist=array('files');//we dont want to show configuration for these
 
-foreach($registeredApps as $app){
-	if(array_search($app,$blacklist)===false){
+foreach($registeredApps as $app) {
+	if(array_search($app, $blacklist)===false) {
 		$info=OC_App::getAppInfo($app);
-		$active=(OC_Appconfig::getValue($app,'enabled','no')=='yes')?true:false;
+		if (!isset($info['name'])) {
+			OC_Log::write('core', 'App id "'.$app.'" has no name in appinfo', OC_Log::ERROR);
+			continue;
+		}
+		$active=(OC_Appconfig::getValue($app, 'enabled', 'no')=='yes')?true:false;
 		$info['active']=$active;
 		if(isset($info['shipped']) and ($info['shipped']=='true')) {
 			$info['internal']=true;
@@ -53,8 +57,8 @@ foreach($registeredApps as $app){
 	}
 }
 
-function app_sort($a, $b){
-	if ($a['active'] != $b['active']){
+function app_sort($a, $b) {
+	if ($a['active'] != $b['active']) {
 		return $b['active'] - $a['active'];
 	}
 	return strcmp($a['name'], $b['name']);
@@ -62,8 +66,8 @@ function app_sort($a, $b){
 usort($apps, 'app_sort');
 
 $tmpl = new OC_Template( "settings", "apps", "user" );
-$tmpl->assign('apps',$apps, false);
+$tmpl->assign('apps', $apps, false);
 $appid = (isset($_GET['appid'])?strip_tags($_GET['appid']):'');
-$tmpl->assign('appid',$appid);
+$tmpl->assign('appid', $appid);
 
 $tmpl->printPage();
diff --git a/settings/css/settings.css b/settings/css/settings.css
index 74a3a1acc86aaf6714a115a6fdec88df40d7e85e..f41edc96fb83c9765458ac36d8c1db9bab1c338c 100644
--- a/settings/css/settings.css
+++ b/settings/css/settings.css
@@ -57,6 +57,8 @@ span.version { margin-left:3em; margin-right:3em; color:#555; }
 /* Transition to complete width! */
 .app:hover, .app:active { max-width: inherit; }
 
+.appslink { text-decoration: underline; }
+
 /* LOG */
 #log { white-space:normal; }
 
diff --git a/settings/help.php b/settings/help.php
index b1dc1c5be771fa0c7e4e44a272a83754a8dcc0e6..9157308dd57cf81e3023bb6a3ecf5a45b56d580f 100644
--- a/settings/help.php
+++ b/settings/help.php
@@ -5,7 +5,7 @@
  * See the COPYING-README file.
  */
 
-require_once('../lib/base.php');
+require_once '../lib/base.php';
 OC_Util::checkLoggedIn();
 
 
@@ -15,7 +15,7 @@ OC_App::setActiveNavigationEntry( "help" );
 
 $pagesize=7;
 if(isset($_GET['page'])) $page=$_GET['page']; else $page=0;
-$kbe=OC_OCSClient::getKnownledgebaseEntries($page,$pagesize);
+$kbe=OC_OCSClient::getKnownledgebaseEntries($page, $pagesize);
 $totalitems=$kbe['totalitems'];
 unset($kbe['totalitems']);
 $pagecount=ceil($totalitems/$pagesize);
diff --git a/settings/js/admin.js b/settings/js/admin.js
index 23f445b708f86252bf7abe6e823d2bde634710b8..95b7a503c27dfe42840c3def4f30fd0847d862bf 100644
--- a/settings/js/admin.js
+++ b/settings/js/admin.js
@@ -26,8 +26,8 @@ $(document).ready(function(){
 				var value = 'no';
 			}
 		} else {
-			var value = $(this).val()
+			var value = $(this).val();
 		}
 		OC.AppConfig.setValue('core', $(this).attr('name'), value);
 	});
-});
\ No newline at end of file
+});
diff --git a/settings/js/apps.js b/settings/js/apps.js
index cfddf4a48a1ae3b17e0314e844b34a613c1005c0..bb9312327630e7e8b9b86261f4910bc2864f9789 100644
--- a/settings/js/apps.js
+++ b/settings/js/apps.js
@@ -29,7 +29,7 @@ OC.Settings.Apps = OC.Settings.Apps || {
 		} else {
 			page.find('span.version').text('');
 		}
-		page.find('p.description').text(app.description);
+		page.find('p.description').html(app.description);
 		page.find('img.preview').attr('src', app.preview);
 		page.find('small.externalapp').attr('style', 'visibility:visible');
 		page.find('span.author').text(app.author);
@@ -96,17 +96,17 @@ OC.Settings.Apps = OC.Settings.Apps || {
 		}
 		return app;
 	}
-}
+};
 
 $(document).ready(function(){
 	$('#leftcontent li').each(function(index,li){
-		var app = $.parseJSON($(this).children('span').text());
+		var app = OC.get('appData_'+$(li).data('id'));
 		$(li).data('app',app);
 		$(this).find('span.hidden').remove();
 	});
 	$('#leftcontent li').keydown(function(event) {
 		if (event.which == 13 || event.which == 32) {
-			$(event.target).click()
+			$(event.target).click();
 		}
 		return false;
 	});
diff --git a/settings/js/personal.js b/settings/js/personal.js
index 77d103c53b676033b0bd5cf18b92444b9b738d19..a866e321ad63bd7f361aacb92fd651f55a4dcea4 100644
--- a/settings/js/personal.js
+++ b/settings/js/personal.js
@@ -83,4 +83,4 @@ OC.msg={
 			$(selector).html( data.data.message ).addClass('error');
 		}
 	}
-}
+};
diff --git a/settings/js/users.js b/settings/js/users.js
index 6026b22d1aaa58ffff10e154f4ff463b34afd7a4..20bd94993bce5f309d1df454588dd22a2912efc4 100644
--- a/settings/js/users.js
+++ b/settings/js/users.js
@@ -4,7 +4,7 @@
  * See the COPYING-README file.
  */
 
-UserList={
+var UserList={
 	useUndo:true,
 	
 	/**
@@ -182,7 +182,7 @@ UserList={
 			};
 			var label;
 			if(isadmin){
-				label = t('files', 'add group');
+				label = t('core', 'add group');
 			}else{
 				label = null;
 			}
diff --git a/settings/l10n/ar.php b/settings/l10n/ar.php
index ff711e7ccc94ba7f9749ad9653089c998a0b3c28..eca8a300b1b47b77c646a921b7ab444072b1f933 100644
--- a/settings/l10n/ar.php
+++ b/settings/l10n/ar.php
@@ -4,8 +4,6 @@
 "Language changed" => "تم تغيير اللغة",
 "__language_name__" => "__language_name__",
 "Select an App" => "إختر تطبيقاً",
-"-licensed" => "-مسجل",
-"by" => "من قبل",
 "Ask a question" => "إسأل سؤال",
 "Problems connecting to help database." => "الاتصال بقاعدة بيانات المساعدة لم يتم بنجاح",
 "Go there manually." => "إذهب هنالك بنفسك",
diff --git a/settings/l10n/bg_BG.php b/settings/l10n/bg_BG.php
index 4464f7596d34bc8849d1b4948ba0755d8d8d0dc3..b261c22b03253f4d25efd3c51e04e74116840f67 100644
--- a/settings/l10n/bg_BG.php
+++ b/settings/l10n/bg_BG.php
@@ -8,8 +8,6 @@
 "Enable" => "Включване",
 "Saving..." => "Записване...",
 "Select an App" => "Изберете програма",
-"-licensed" => "-лицензирано",
-"by" => "от",
 "Documentation" => "Документация",
 "Ask a question" => "Задайте въпрос",
 "Problems connecting to help database." => "Проблеми при свързване с помощната база",
diff --git a/settings/l10n/ca.php b/settings/l10n/ca.php
index 7b95d6f9af16225ecfb1552bacccd1630dbf9bc6..062e9a9734297bd69fbc1ef41090a79728603d2c 100644
--- a/settings/l10n/ca.php
+++ b/settings/l10n/ca.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "No s'ha pogut carregar la llista des de l'App Store",
+"Authentication error" => "Error d'autenticació",
+"Group already exists" => "El grup ja existeix",
+"Unable to add group" => "No es pot afegir el grup",
 "Email saved" => "S'ha desat el correu electrònic",
 "Invalid email" => "El correu electrònic no és vàlid",
 "OpenID Changed" => "OpenID ha canviat",
 "Invalid request" => "Sol.licitud no vàlida",
-"Authentication error" => "Error d'autenticació",
+"Unable to delete group" => "No es pot eliminar el grup",
+"Unable to delete user" => "No es pot eliminar l'usuari",
 "Language changed" => "S'ha canviat l'idioma",
+"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",
 "Error" => "Error",
 "Disable" => "Desactiva",
 "Enable" => "Activa",
 "Saving..." => "S'està desant...",
 "__language_name__" => "Català",
 "Security Warning" => "Avís de seguretat",
+"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." => "La carpeta de dades i els vostres fitxersprobablement són accessibles des d'Internet. La fitxer .htaccess que ownCloud proporciona no funciona. Us recomanem que configureu el servidor web de tal manera que la carpeta de dades no sigui accessible o que moveu la carpeta de dades fora de l'arrel de documents del servidor web.",
 "Cron" => "Cron",
 "execute one task with each page loaded" => "executa una tasca en carregar cada pàgina",
 "cron.php is registered at a webcron service" => "cron.php està registrat en un servei web cron",
 "use systems cron service" => "usa el servei cron del sistema",
+"Share API" => "API de compartir",
+"Enable Share API" => "Activa l'API de compartir",
+"Allow apps to use the Share API" => "Permet que les aplicacions usin l'API de compartir",
+"Allow links" => "Permet enllaços",
+"Allow users to share items to the public with links" => "Permet als usuaris compartir elements amb el públic amb enllaços",
+"Allow resharing" => "Permet compartir de nou",
+"Allow users to share items shared with them again" => "Permet als usuaris comparir elements ja compartits amb ells",
+"Allow users to share with anyone" => "Permet als usuaris compartir amb qualsevol",
+"Allow users to only share with users in their groups" => "Permet als usuaris compartir només amb usuaris del seu grup",
 "Log" => "Registre",
 "More" => "Més",
+"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>.",
 "Add your App" => "Afegiu la vostra aplicació",
 "Select an App" => "Seleccioneu una aplicació",
 "See application page at apps.owncloud.com" => "Mireu la pàgina d'aplicacions a apps.owncloud.com",
-"-licensed" => "- amb llicència",
-"by" => "de",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-propietat de <span class=\"author\"></span>",
 "Documentation" => "Documentació",
 "Managing Big Files" => "Gestió de fitxers grans",
 "Ask a question" => "Feu una pregunta",
@@ -30,7 +46,7 @@
 "Go there manually." => "Vés-hi manualment.",
 "Answer" => "Resposta",
 "You use" => "Esteu usant",
-"of the available" => "del disponible",
+"of the available" => "d'un total disponible de",
 "Desktop and Mobile Syncing Clients" => "Clients de sincronització d'escriptori i de mòbil",
 "Download" => "Baixada",
 "Your password got changed" => "La contrasenya ha canviat",
diff --git a/settings/l10n/cs_CZ.php b/settings/l10n/cs_CZ.php
index ed7378b80c4574ac92503f51152601cc3b056f37..a68f10269f564675afcf025c9ded1b546eadda83 100644
--- a/settings/l10n/cs_CZ.php
+++ b/settings/l10n/cs_CZ.php
@@ -1,30 +1,46 @@
 <?php $TRANSLATIONS = array(
-"Unable to load list from App Store" => "Nepodařílo se stáhnout seznam z App Store",
+"Unable to load list from App Store" => "Nelze načíst seznam z App Store",
+"Authentication error" => "Chyba ověření",
+"Group already exists" => "Skupina již existuje",
+"Unable to add group" => "Nelze přidat skupinu",
 "Email saved" => "E-mail uložen",
 "Invalid email" => "Neplatný e-mail",
-"OpenID Changed" => "OpenID změněn",
-"Invalid request" => "Chybný dotaz",
-"Authentication error" => "Chyba autorizace",
+"OpenID Changed" => "OpenID změněno",
+"Invalid request" => "Neplatný požadavek",
+"Unable to delete group" => "Nelze smazat skupinu",
+"Unable to delete user" => "Nelze smazat uživatele",
 "Language changed" => "Jazyk byl změněn",
+"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",
 "Error" => "Chyba",
-"Disable" => "Vypnout",
-"Enable" => "Zapnout",
+"Disable" => "Zakázat",
+"Enable" => "Povolit",
 "Saving..." => "Ukládám...",
 "__language_name__" => "Česky",
-"Security Warning" => "Bezpečnostní upozornění",
+"Security Warning" => "Bezpečnostní varování",
+"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." => "Váš adresář dat a soubory jsou pravděpodobně přístupné z internetu. Soubor .htacces, který ownCloud poskytuje nefunguje. Doporučujeme Vám abyste nastavili Váš webový server tak, aby nebylo možno přistupovat do adresáře s daty, nebo přesunuli adresář dat mimo kořenovou složku dokumentů webového serveru.",
 "Cron" => "Cron",
-"execute one task with each page loaded" => "spustit jednu úlohu s každou nataženou stranou",
+"execute one task with each page loaded" => "spustit jednu úlohu s každou načtenou stránkou",
 "cron.php is registered at a webcron service" => "cron.php je registrován jako služba webcron",
-"use systems cron service" => "použijte systémovou službu cron",
-"Log" => "Log",
+"use systems cron service" => "použít systémovou službu cron",
+"Share API" => "API sdílení",
+"Enable Share API" => "Povolit API sdílení",
+"Allow apps to use the Share API" => "Povolit aplikacím používat API sdílení",
+"Allow links" => "Povolit odkazy",
+"Allow users to share items to the public with links" => "Povolit uživatelům sdílet položky s veřejností pomocí odkazů",
+"Allow resharing" => "Povolit znovu-sdílení",
+"Allow users to share items shared with them again" => "Povolit uživatelům znovu sdílet položky, které jsou pro ně sdíleny",
+"Allow users to share with anyone" => "Povolit uživatelům sdílet s kýmkoliv",
+"Allow users to only share with users in their groups" => "Povolit uživatelům sdílet pouze s uživateli v jejich skupinách",
+"Log" => "Záznam",
 "More" => "Více",
-"Add your App" => "Přidat vaší aplikaci",
+"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>.",
+"Add your App" => "Přidat Vaší aplikaci",
 "Select an App" => "Vyberte aplikaci",
 "See application page at apps.owncloud.com" => "Více na stránce s aplikacemi na apps.owncloud.com",
-"-licensed" => "-licencováno",
-"by" => "podle",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licencováno <span class=\"author\"></span>",
 "Documentation" => "Dokumentace",
-"Managing Big Files" => "Spravování velkých souborů",
+"Managing Big Files" => "Správa velkých souborů",
 "Ask a question" => "Zeptat se",
 "Problems connecting to help database." => "Problémy s připojením k databázi s nápovědou.",
 "Go there manually." => "Přejít ručně.",
@@ -34,23 +50,24 @@
 "Desktop and Mobile Syncing Clients" => "Klienti pro synchronizaci",
 "Download" => "Stáhnout",
 "Your password got changed" => "Vaše heslo bylo změněno",
-"Unable to change your password" => "Vaše heslo se nepodařilo změnit",
-"Current password" => "Aktuální heslo",
+"Unable to change your password" => "Vaše heslo nelze změnit",
+"Current password" => "Současné heslo",
 "New password" => "Nové heslo",
 "show" => "zobrazit",
 "Change password" => "Změnit heslo",
-"Email" => "Email",
-"Your email address" => "Vaše emailová adresa",
-"Fill in an email address to enable password recovery" => "Pro povolení změny hesla vyplňte email adresu",
+"Email" => "E-mail",
+"Your email address" => "Vaše e-mailová adresa",
+"Fill in an email address to enable password recovery" => "Pro povolení změny hesla vyplňte adresu e-mailu",
 "Language" => "Jazyk",
-"Help translate" => "Pomoci překládat",
+"Help translate" => "Pomoci s překladem",
 "use this address to connect to your ownCloud in your file manager" => "tuto adresu použijte pro připojení k ownCloud ve Vašem správci souborů",
 "Name" => "Jméno",
 "Password" => "Heslo",
 "Groups" => "Skupiny",
 "Create" => "Vytvořit",
 "Default Quota" => "Výchozí kvóta",
-"Other" => "Jiné",
+"Other" => "Jiná",
+"Group Admin" => "Správa skupiny",
 "Quota" => "Kvóta",
-"Delete" => "Vymazat"
+"Delete" => "Smazat"
 );
diff --git a/settings/l10n/da.php b/settings/l10n/da.php
index f17fb11fa7e31f2a302386ebcb7e3ea496260fd3..0c09a25dfdb6f5e4ad28a1ab173d7f5afd1ae1f3 100644
--- a/settings/l10n/da.php
+++ b/settings/l10n/da.php
@@ -1,10 +1,10 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Kunne ikke indlæse listen fra App Store",
+"Authentication error" => "Adgangsfejl",
 "Email saved" => "Email adresse gemt",
 "Invalid email" => "Ugyldig email adresse",
 "OpenID Changed" => "OpenID ændret",
 "Invalid request" => "Ugyldig forespørgsel",
-"Authentication error" => "Adgangsfejl",
 "Language changed" => "Sprog ændret",
 "Error" => "Fejl",
 "Disable" => "Deaktiver",
@@ -13,14 +13,22 @@
 "__language_name__" => "Dansk",
 "Security Warning" => "Sikkerhedsadvarsel",
 "Cron" => "Cron",
+"execute one task with each page loaded" => "udfør en opgave for hver indlæst side",
 "cron.php is registered at a webcron service" => "cron.php er tilmeldt en webcron tjeneste",
+"use systems cron service" => "brug systemets cron service",
+"Share API" => "Del API",
+"Enable Share API" => "Aktiver dele API",
+"Allow apps to use the Share API" => "Tillad apps a bruge dele APIen",
+"Allow links" => "Tillad links",
+"Allow users to share items to the public with links" => "Tillad brugere at dele elementer med offentligheden med links",
+"Allow resharing" => "Tillad gendeling",
+"Allow users to share with anyone" => "Tillad brugere at dele med hvem som helst",
+"Allow users to only share with users in their groups" => "Tillad kun deling med brugere i brugerens egen gruppe",
 "Log" => "Log",
 "More" => "Mere",
 "Add your App" => "Tilføj din App",
 "Select an App" => "Vælg en App",
 "See application page at apps.owncloud.com" => "Se applikationens side på apps.owncloud.com",
-"-licensed" => "-licenseret",
-"by" => "af",
 "Documentation" => "Dokumentation",
 "Managing Big Files" => "Håndter store filer",
 "Ask a question" => "Stil et spørgsmål",
@@ -49,6 +57,7 @@
 "Create" => "Ny",
 "Default Quota" => "Standard kvote",
 "Other" => "Andet",
+"Group Admin" => "Gruppe Administrator",
 "Quota" => "Kvote",
 "Delete" => "Slet"
 );
diff --git a/settings/l10n/de.php b/settings/l10n/de.php
index 791a75fd7caae34fe74fec31c0200eab5386d944..4f3a12934e8465bf35d00f8bb7098344ca366bd0 100644
--- a/settings/l10n/de.php
+++ b/settings/l10n/de.php
@@ -1,31 +1,47 @@
 <?php $TRANSLATIONS = array(
-"Unable to load list from App Store" => "Liste der Apps im Store konnte nicht geladen werden.",
+"Unable to load list from App Store" => "Die Liste der Apps im Store konnte nicht geladen werden.",
+"Authentication error" => "Anmeldungsfehler",
+"Group already exists" => "Gruppe existiert bereits",
+"Unable to add group" => "Gruppe konnte nicht angelegt werden",
 "Email saved" => "E-Mail gespeichert",
 "Invalid email" => "Ungültige E-Mail",
 "OpenID Changed" => "OpenID geändert",
 "Invalid request" => "Ungültige Anfrage",
-"Authentication error" => "Anmeldungsfehler",
+"Unable to delete group" => "Gruppe konnte nicht gelöscht werden",
+"Unable to delete user" => "Benutzer konnte nicht gelöscht werden",
 "Language changed" => "Sprache geändert",
+"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",
 "Error" => "Fehler",
 "Disable" => "Deaktivieren",
 "Enable" => "Aktivieren",
 "Saving..." => "Speichern...",
 "__language_name__" => "Deutsch",
 "Security Warning" => "Sicherheitshinweis",
+"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." => "Ihr Datenverzeichnis ist möglicher Weise aus dem Internet erreichbar. Die .htaccess-Datei von OwnCloud funktioniert nicht. Wir raten Ihnen dringend, dass Sie Ihren Webserver dahingehend konfigurieren, dass Ihr Datenverzeichnis nicht länger aus dem Internet erreichbar ist, oder Sie verschieben das Datenverzeichnis außerhalb des Wurzelverzeichnisses des Webservers.",
 "Cron" => "Cron",
 "execute one task with each page loaded" => "Führe eine Aufgabe pro geladener Seite aus.",
 "cron.php is registered at a webcron service" => "cron.php ist beim Webcron-Service registriert",
 "use systems cron service" => "Nutze System-Cron-Service",
+"Share API" => "Teilungs-API",
+"Enable Share API" => "Teilungs-API aktivieren",
+"Allow apps to use the Share API" => "Erlaubt Nutzern, die Teilungs-API zu nutzen",
+"Allow links" => "Links erlauben",
+"Allow users to share items to the public with links" => "Erlaube Nutzern, Dateien mithilfe von Links mit der Öffentlichkeit zu teilen",
+"Allow resharing" => "Erneutes Teilen erlauben",
+"Allow users to share items shared with them again" => "Erlaubt Nutzern, Dateien die mit ihnen geteilt wurden, erneut zu teilen",
+"Allow users to share with anyone" => "Erlaube Nutzern mit jedem zu Teilen",
+"Allow users to only share with users in their groups" => "Erlaube Nutzern nur das Teilen in ihrer Gruppe",
 "Log" => "Log",
 "More" => "Mehr",
+"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.",
 "Add your App" => "Fügen Sie Ihre App hinzu",
-"Select an App" => "Wähle eine Anwendung aus",
-"See application page at apps.owncloud.com" => "Weitere Anwendungen auf apps.owncloud.com",
-"-licensed" => "-lizenziert",
-"by" => "von",
+"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>",
 "Documentation" => "Dokumentation",
 "Managing Big Files" => "Große Dateien verwalten",
-"Ask a question" => "Stell eine Frage",
+"Ask a question" => "Stellen Sie eine Frage",
 "Problems connecting to help database." => "Probleme bei der Verbindung zur Hilfe-Datenbank.",
 "Go there manually." => "Datenbank direkt besuchen.",
 "Answer" => "Antwort",
@@ -44,7 +60,7 @@
 "Fill in an email address to enable password recovery" => "Tragen Sie eine E-Mail-Adresse ein, um die Passwort-Wiederherstellung zu aktivieren.",
 "Language" => "Sprache",
 "Help translate" => "Helfen Sie bei der Übersetzung",
-"use this address to connect to your ownCloud in your file manager" => "Benutzen Sie diese Adresse, um Ihr ownCloud mit deinem Dateimanager zu verbinden.",
+"use this address to connect to your ownCloud in your file manager" => "Benutzen Sie diese Adresse, um Ihre ownCloud mit Ihrem Dateimanager zu verbinden.",
 "Name" => "Name",
 "Password" => "Passwort",
 "Groups" => "Gruppen",
diff --git a/settings/l10n/el.php b/settings/l10n/el.php
index d7333fab2c90c2d5f9c74de867fd7654fc78225b..833ef8e10d555170c33776fb8b889886347d0eed 100644
--- a/settings/l10n/el.php
+++ b/settings/l10n/el.php
@@ -1,10 +1,10 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Σφάλμα στην φόρτωση της λίστας από το App Store",
+"Authentication error" => "Σφάλμα πιστοποίησης",
 "Email saved" => "Το Email αποθηκεύτηκε ",
 "Invalid email" => "Μη έγκυρο email",
 "OpenID Changed" => "Το OpenID άλλαξε",
 "Invalid request" => "Μη έγκυρο αίτημα",
-"Authentication error" => "Σφάλμα πιστοποίησης",
 "Language changed" => "Η γλώσσα άλλαξε",
 "Error" => "Σφάλμα",
 "Disable" => "Απενεργοποίηση",
@@ -21,8 +21,6 @@
 "Add your App" => "Πρόσθεσε τη δικιά σου εφαρμογή ",
 "Select an App" => "Επιλέξτε μια εφαρμογή",
 "See application page at apps.owncloud.com" => "Η σελίδα εφαρμογών στο apps.owncloud.com",
-"-licensed" => "-με άδεια",
-"by" => "από",
 "Documentation" => "Τεκμηρίωση",
 "Managing Big Files" => "Διαχείριση μεγάλων αρχείων",
 "Ask a question" => "Ρωτήστε μια ερώτηση",
diff --git a/settings/l10n/eo.php b/settings/l10n/eo.php
index c0ad6ef1051dffc42b771a5b65d06c9ebf5beb86..cb84b2da037ba32877828172e1df0f4ff5354927 100644
--- a/settings/l10n/eo.php
+++ b/settings/l10n/eo.php
@@ -1,10 +1,10 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Ne eblis ŝargi liston el aplikaĵovendejo",
+"Authentication error" => "Aŭtentiga eraro",
 "Email saved" => "La retpoŝtadreso konserviĝis",
 "Invalid email" => "Nevalida retpoŝtadreso",
 "OpenID Changed" => "La agordo de OpenID estas ŝanĝita",
 "Invalid request" => "Nevalida peto",
-"Authentication error" => "Aŭtentiga eraro",
 "Language changed" => "La lingvo estas ŝanĝita",
 "Error" => "Eraro",
 "Disable" => "Malkapabligi",
@@ -21,8 +21,6 @@
 "Add your App" => "Aldonu vian aplikaĵon",
 "Select an App" => "Elekti aplikaĵon",
 "See application page at apps.owncloud.com" => "Vidu la paĝon pri aplikaĵoj ĉe apps.owncloud.com",
-"-licensed" => "-permesila",
-"by" => "de",
 "Documentation" => "Dokumentaro",
 "Managing Big Files" => "Administrante grandajn dosierojn",
 "Ask a question" => "Faru demandon",
diff --git a/settings/l10n/es.php b/settings/l10n/es.php
index 8403b6d388360adc40b9c002acc67a879186e0fb..2f2a06ce058e3b42383907741be27b824f3f9f98 100644
--- a/settings/l10n/es.php
+++ b/settings/l10n/es.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Imposible cargar la lista desde el App Store",
+"Authentication error" => "Error de autenticación",
+"Group already exists" => "El grupo ya existe",
+"Unable to add group" => "No se pudo añadir el grupo",
 "Email saved" => "Correo guardado",
 "Invalid email" => "Correo no válido",
 "OpenID Changed" => "OpenID cambiado",
 "Invalid request" => "Solicitud no válida",
-"Authentication error" => "Error de autenticación",
+"Unable to delete group" => "No se pudo eliminar el grupo",
+"Unable to delete user" => "No se pudo eliminar el usuario",
 "Language changed" => "Idioma cambiado",
+"Unable to add user to group %s" => "Imposible añadir el usuario al grupo %s",
+"Unable to remove user from group %s" => "Imposible eliminar al usuario del grupo %s",
 "Error" => "Error",
 "Disable" => "Desactivar",
 "Enable" => "Activar",
 "Saving..." => "Guardando...",
 "__language_name__" => "Castellano",
 "Security Warning" => "Advertencia de seguridad",
+"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." => "El directorio de datos -data- y sus archivos probablemente son accesibles desde internet. El archivo .htaccess que provee ownCloud no está funcionando. Recomendamos fuertemente que configure su servidor web de forma que el directorio de datos ya no sea accesible o mueva el directorio de datos fuera de la raíz de documentos del servidor web.",
 "Cron" => "Cron",
 "execute one task with each page loaded" => "ejecutar una tarea con cada página cargada",
 "cron.php is registered at a webcron service" => "cron.php se registra en un servicio webcron",
 "use systems cron service" => "usar servicio cron del sistema",
+"Share API" => "API de compartición",
+"Enable Share API" => "Activar API de compartición",
+"Allow apps to use the Share API" => "Permitir a las aplicaciones usar la API de compartición",
+"Allow links" => "Permitir enlaces",
+"Allow users to share items to the public with links" => "Permitir a los usuarios compartir elementos públicamente con enlaces",
+"Allow resharing" => "Permitir re-compartir",
+"Allow users to share items shared with them again" => "Permitir a los usuarios compartir elementos compartidos con ellos de nuevo",
+"Allow users to share with anyone" => "Permitir a los usuarios compartir con cualquiera",
+"Allow users to only share with users in their groups" => "Permitir a los usuarios compartir con usuarios en sus grupos",
 "Log" => "Registro",
 "More" => "Más",
+"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>.",
 "Add your App" => "Añade tu aplicación",
 "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",
-"-licensed" => "-autorizado",
-"by" => "por",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licenciado por <span class=\"author\"></span>",
 "Documentation" => "Documentación",
 "Managing Big Files" => "Administra archivos grandes",
 "Ask a question" => "Hacer una pregunta",
diff --git a/settings/l10n/et_EE.php b/settings/l10n/et_EE.php
index b2efd4d469b9b8262cee73022764524e85f0ff0a..ef36dbf951092f7eac5a4f088cb0b3f15880cb08 100644
--- a/settings/l10n/et_EE.php
+++ b/settings/l10n/et_EE.php
@@ -1,11 +1,17 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "App Sotre'i nimekirja laadimine ebaõnnestus",
+"Authentication error" => "Autentimise viga",
+"Group already exists" => "Grupp on juba olemas",
+"Unable to add group" => "Keela grupi lisamine",
 "Email saved" => "Kiri on salvestatud",
 "Invalid email" => "Vigane e-post",
 "OpenID Changed" => "OpenID on muudetud",
 "Invalid request" => "Vigane päring",
-"Authentication error" => "Autentimise viga",
+"Unable to delete group" => "Keela grupi kustutamine",
+"Unable to delete user" => "Keela kasutaja kustutamine",
 "Language changed" => "Keel on muudetud",
+"Unable to add user to group %s" => "Kasutajat ei saa lisada gruppi %s",
+"Unable to remove user from group %s" => "Kasutajat ei saa eemaldada grupist %s",
 "Error" => "Viga",
 "Disable" => "Lülita välja",
 "Enable" => "Lülita sisse",
@@ -16,13 +22,21 @@
 "execute one task with each page loaded" => "käivita iga laetud lehe juures üks ülesanne",
 "cron.php is registered at a webcron service" => "cron.php on webcron teenuses registreeritud",
 "use systems cron service" => "kasuta süsteemide cron teenuseid",
+"Share API" => "Jagamise API",
+"Enable Share API" => "Luba jagamise API",
+"Allow apps to use the Share API" => "Luba rakendustel kasutada jagamise API-t",
+"Allow links" => "Luba linke",
+"Allow users to share items to the public with links" => "Luba kasutajatel jagada kirjeid avalike linkidega",
+"Allow resharing" => "Luba edasijagamine",
+"Allow users to share items shared with them again" => "Luba kasutajatel jagada edasi kirjeid, mida on neile jagatud",
+"Allow users to share with anyone" => "Luba kasutajatel kõigiga jagada",
+"Allow users to only share with users in their groups" => "Luba kasutajatel jagada kirjeid ainult nende grupi liikmetele, millesse nad ise kuuluvad",
 "Log" => "Logi",
 "More" => "Veel",
 "Add your App" => "Lisa oma rakendus",
 "Select an App" => "Vali programm",
 "See application page at apps.owncloud.com" => "Vaata rakenduste lehte aadressil apps.owncloud.com",
-"-licensed" => "-litsenseeritud",
-"by" => "kelle poolt",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-litsenseeritud <span class=\"author\"></span>",
 "Documentation" => "Dokumentatsioon",
 "Managing Big Files" => "Suurte failide haldamine",
 "Ask a question" => "Küsi küsimus",
diff --git a/settings/l10n/eu.php b/settings/l10n/eu.php
index d5dcf396add6d72366a3094e08ffb0cf8c7522c4..a30382f03099188fca6e5023019943324c656e30 100644
--- a/settings/l10n/eu.php
+++ b/settings/l10n/eu.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Ezin izan da App Dendatik zerrenda kargatu",
+"Authentication error" => "Autentifikazio errorea",
+"Group already exists" => "Taldea dagoeneko existitzenda",
+"Unable to add group" => "Ezin izan da taldea gehitu",
 "Email saved" => "Eposta gorde da",
 "Invalid email" => "Baliogabeko eposta",
 "OpenID Changed" => "OpenID aldatuta",
 "Invalid request" => "Baliogabeko eskaria",
-"Authentication error" => "Autentifikazio errorea",
+"Unable to delete group" => "Ezin izan da taldea ezabatu",
+"Unable to delete user" => "Ezin izan da erabiltzailea ezabatu",
 "Language changed" => "Hizkuntza aldatuta",
+"Unable to add user to group %s" => "Ezin izan da erabiltzailea %s taldera gehitu",
+"Unable to remove user from group %s" => "Ezin izan da erabiltzailea %s taldetik ezabatu",
 "Error" => "Errorea",
 "Disable" => "Ez-gaitu",
 "Enable" => "Gaitu",
 "Saving..." => "Gordetzen...",
 "__language_name__" => "Euskera",
 "Security Warning" => "Segurtasun abisua",
+"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." => "Zure data karpeta eta zure fitxategiak internetetik zuzenean eskuragarri egon daitezke. ownCloudek emandako .htaccess fitxategia ez du bere lana egiten. Aholkatzen dizugu zure web zerbitzaria ongi konfiguratzea data karpeta eskuragarri ez izateko edo data karpeta web zerbitzariaren dokumentu errotik mugitzea.",
 "Cron" => "Cron",
 "execute one task with each page loaded" => "exekutatu zeregina orri karga bakoitzean",
 "cron.php is registered at a webcron service" => "cron.php webcron zerbitzu batean erregistratuta dago",
 "use systems cron service" => "erabili sistemaren cron zerbitzua",
+"Share API" => "Partekatze APIa",
+"Enable Share API" => "Gaitu Partekatze APIa",
+"Allow apps to use the Share API" => "Baimendu aplikazioak Partekatze APIa erabiltzeko",
+"Allow links" => "Baimendu loturak",
+"Allow users to share items to the public with links" => "Baimendu erabiltzaileak loturen bidez fitxategiak publikoki partekatzen",
+"Allow resharing" => "Baimendu birpartekatzea",
+"Allow users to share items shared with them again" => "Baimendu erabiltzaileak haiekin partekatutako fitxategiak berriz ere partekatzen",
+"Allow users to share with anyone" => "Baimendu erabiltzaileak edonorekin partekatzen",
+"Allow users to only share with users in their groups" => "Baimendu erabiltzaileak bakarrik bere taldeko erabiltzaileekin partekatzen",
 "Log" => "Egunkaria",
 "More" => "Gehiago",
+"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>.",
 "Add your App" => "Gehitu zure aplikazioa",
 "Select an App" => "Aukeratu programa bat",
 "See application page at apps.owncloud.com" => "Ikusi programen orria apps.owncloud.com en",
-"-licensed" => "lizentziarekin",
-"by" => " Egilea:",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-lizentziatua <span class=\"author\"></span>",
 "Documentation" => "Dokumentazioa",
 "Managing Big Files" => "Fitxategi handien kudeaketa",
 "Ask a question" => "Egin galdera bat",
diff --git a/settings/l10n/fa.php b/settings/l10n/fa.php
index 5fe6df4d9d9954cb1bb7045ded7f72a9d6075241..215966728d6d25b89534e1b21dc40241ca24bdac 100644
--- a/settings/l10n/fa.php
+++ b/settings/l10n/fa.php
@@ -15,8 +15,6 @@
 "Add your App" => "برنامه خود را بیافزایید",
 "Select an App" => "یک برنامه انتخاب کنید",
 "See application page at apps.owncloud.com" => "صفحه این اٌپ را در apps.owncloud.com ببینید",
-"-licensed" => "مجوزنامه",
-"by" => "به وسیله",
 "Documentation" => "مستندات",
 "Managing Big Files" => "مدیریت پرونده های بزرگ",
 "Ask a question" => "یک سوال بپرسید",
diff --git a/settings/l10n/fi_FI.php b/settings/l10n/fi_FI.php
index bfcf1a59dda2b0e7fb6963d534fcec47e88b5e87..54647c296168f7d766138e8fe0b715561da73467 100644
--- a/settings/l10n/fi_FI.php
+++ b/settings/l10n/fi_FI.php
@@ -1,25 +1,44 @@
 <?php $TRANSLATIONS = array(
+"Unable to load list from App Store" => "Ei pystytä lataamaan listaa sovellusvarastosta (App Store)",
+"Authentication error" => "Todennusvirhe",
+"Group already exists" => "Ryhmä on jo olemassa",
+"Unable to add group" => "Ryhmän lisäys epäonnistui",
 "Email saved" => "Sähköposti tallennettu",
 "Invalid email" => "Virheellinen sähköposti",
 "OpenID Changed" => "OpenID on vaihdettu",
 "Invalid request" => "Virheellinen pyyntö",
-"Authentication error" => "Todennusvirhe",
+"Unable to delete group" => "Ryhmän poisto epäonnistui",
+"Unable to delete user" => "Käyttäjän poisto epäonnistui",
 "Language changed" => "Kieli on vaihdettu",
+"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",
 "Error" => "Virhe",
 "Disable" => "Poista käytöstä",
 "Enable" => "Käytä",
 "Saving..." => "Tallennetaan...",
 "__language_name__" => "_kielen_nimi_",
 "Security Warning" => "Turvallisuusvaroitus",
+"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-kansio ja tiedostot ovat ehkä saavutettavissa Internetistä. .htaccess-tiedosto, jolla kontrolloidaan pääsyä, ei toimi. Suosittelemme, että muutat web-palvelimesi asetukset niin ettei data-kansio ole enää pääsyä tai siirrät data-kansion pois web-palvelimen tiedostojen juuresta.",
 "Cron" => "Cron",
+"execute one task with each page loaded" => "suorita yksi tehtävä jokaisella ladatulla sivulla",
+"cron.php is registered at a webcron service" => "cron.php on rekisteröity webcron-palvelulla",
 "use systems cron service" => "käytä järjestelmän cron-palvelua",
+"Share API" => "Jaon ohelmointirajapinta (Share API)",
+"Enable Share API" => "Ota käyttöön jaon ohjelmoitirajapinta (Share API)",
+"Allow apps to use the Share API" => "Salli sovellusten käyttää jaon ohjelmointirajapintaa (Share API)",
+"Allow links" => "Salli linkit",
+"Allow users to share items to the public with links" => "Salli käyttäjien jakaa kohteita julkisesti linkkejä käyttäen",
+"Allow resharing" => "Salli uudelleenjako",
+"Allow users to share items shared with them again" => "Salli käyttäjien jakaa heille itselleen jaettuja tietoja edelleen",
+"Allow users to share with anyone" => "Salli käyttäjien jakaa kohteita kenen tahansa kanssa",
+"Allow users to only share with users in their groups" => "Salli käyttäjien jakaa kohteita vain omien ryhmien jäsenten kesken",
 "Log" => "Loki",
 "More" => "Lisää",
+"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.",
 "Add your App" => "Lisää ohjelmasi",
 "Select an App" => "Valitse ohjelma",
 "See application page at apps.owncloud.com" => "Katso sovellussivu osoitteessa apps.owncloud.com",
-"-licensed" => "-lisenssöity",
-"by" => "henkilölle",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-lisensoija <span class=\"author\"></span>",
 "Documentation" => "Dokumentaatio",
 "Managing Big Files" => "Suurten tiedostojen hallinta",
 "Ask a question" => "Kysy jotain",
@@ -48,6 +67,7 @@
 "Create" => "Luo",
 "Default Quota" => "Oletuskiintiö",
 "Other" => "Muu",
+"Group Admin" => "Ryhmän ylläpitäjä",
 "Quota" => "Kiintiö",
 "Delete" => "Poista"
 );
diff --git a/settings/l10n/fr.php b/settings/l10n/fr.php
index 89516b1c7fcacb4b4c56754a1adec782a2afb935..906e80eabb6c7101e85909283d90d88ab162915f 100644
--- a/settings/l10n/fr.php
+++ b/settings/l10n/fr.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Impossible de charger la liste depuis l'App Store",
+"Authentication error" => "Erreur d'authentification",
+"Group already exists" => "Ce groupe existe déjà",
+"Unable to add group" => "Impossible d'ajouter le groupe",
 "Email saved" => "E-mail sauvegardé",
 "Invalid email" => "E-mail invalide",
 "OpenID Changed" => "Identifiant OpenID changé",
 "Invalid request" => "Requête invalide",
-"Authentication error" => "Erreur d'authentification",
+"Unable to delete group" => "Impossible de supprimer le groupe",
+"Unable to delete user" => "Impossible de supprimer l'utilisateur",
 "Language changed" => "Langue changée",
+"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",
 "Error" => "Erreur",
 "Disable" => "Désactiver",
 "Enable" => "Activer",
 "Saving..." => "Sauvegarde...",
 "__language_name__" => "Français",
 "Security Warning" => "Alertes de sécurité",
+"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." => "Votre répertoire de données et vos fichiers sont probablement accessibles depuis internet. Le fichier .htaccess fourni avec ownCloud ne fonctionne pas. Nous vous recommandons vivement de configurer votre serveur web de façon à ce que ce répertoire ne soit plus accessible, ou bien de déplacer le répertoire de données à l'extérieur de la racine du serveur web.",
 "Cron" => "Cron",
 "execute one task with each page loaded" => "exécuter une tâche pour chaque page chargée",
 "cron.php is registered at a webcron service" => "cron.php est enregistré comme un service webcron",
 "use systems cron service" => "utiliser le service cron du système ",
+"Share API" => "API de partage",
+"Enable Share API" => "Activer l'API de partage",
+"Allow apps to use the Share API" => "Autoriser les applications à utiliser l'API de partage",
+"Allow links" => "Autoriser les liens",
+"Allow users to share items to the public with links" => "Autoriser les utilisateurs à partager du contenu public avec des liens",
+"Allow resharing" => "Autoriser le re-partage",
+"Allow users to share items shared with them again" => "Autoriser les utilisateurs à partager des éléments déjà partagés entre eux",
+"Allow users to share with anyone" => "Autoriser les utilisateurs à partager avec tout le monde",
+"Allow users to only share with users in their groups" => "Autoriser les utilisateurs à ne partager qu'avec les utilisateurs dans leurs groupes",
 "Log" => "Journaux",
 "More" => "Plus",
+"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>.",
 "Add your App" => "Ajoutez votre application",
 "Select an App" => "Sélectionner une Application",
 "See application page at apps.owncloud.com" => "Voir la page des applications à l'url apps.owncloud.com",
-"-licensed" => "sous licence",
-"by" => "par",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "Distribué sous licence <span class=\"licence\"></span>, par <span class=\"author\"></span>",
 "Documentation" => "Documentation",
 "Managing Big Files" => "Gérer les gros fichiers",
 "Ask a question" => "Poser une question",
diff --git a/settings/l10n/gl.php b/settings/l10n/gl.php
index 67937e492146a7434305826ac3537a9740c18af6..52aa13c461cb20fdaa968a56e360e3dd83d60de6 100644
--- a/settings/l10n/gl.php
+++ b/settings/l10n/gl.php
@@ -1,10 +1,10 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Non se puido cargar a lista desde a App Store",
+"Authentication error" => "Erro na autenticación",
 "Email saved" => "Correo electrónico gardado",
 "Invalid email" => "correo electrónico non válido",
 "OpenID Changed" => "Mudou o OpenID",
 "Invalid request" => "Petición incorrecta",
-"Authentication error" => "Erro na autenticación",
 "Language changed" => "O idioma mudou",
 "Error" => "Erro",
 "Disable" => "Deshabilitar",
@@ -21,8 +21,6 @@
 "Add your App" => "Engade o teu aplicativo",
 "Select an App" => "Escolla un Aplicativo",
 "See application page at apps.owncloud.com" => "Vexa a páxina do aplicativo en apps.owncloud.com",
-"-licensed" => "-licenciado",
-"by" => "por",
 "Documentation" => "Documentación",
 "Managing Big Files" => "Xestionar Grandes Ficheiros",
 "Ask a question" => "Pregunte",
diff --git a/settings/l10n/he.php b/settings/l10n/he.php
index 17e803a3256a729e61f2889708bb3bcc9707a1a8..c7189e94354ff952ae71a7d50cf9e221a42096a2 100644
--- a/settings/l10n/he.php
+++ b/settings/l10n/he.php
@@ -13,8 +13,6 @@
 "Add your App" => "הוספת היישום שלך",
 "Select an App" => "בחירת יישום",
 "See application page at apps.owncloud.com" => "צפה בעמוד הישום ב apps.owncloud.com",
-"-licensed" => "רשיון",
-"by" => "מאת",
 "Documentation" => "תיעוד",
 "Managing Big Files" => "ניהול קבצים גדולים",
 "Ask a question" => "שאל שאלה",
diff --git a/settings/l10n/hr.php b/settings/l10n/hr.php
index a0a8e2e1006cfe88a368379b3a2f0438b7b48db9..8c5251520cce736f79c34f0cf6d8d04a5efb4b55 100644
--- a/settings/l10n/hr.php
+++ b/settings/l10n/hr.php
@@ -1,10 +1,10 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Nemogićnost učitavanja liste sa Apps Stora",
+"Authentication error" => "Greška kod autorizacije",
 "Email saved" => "Email spremljen",
 "Invalid email" => "Neispravan email",
 "OpenID Changed" => "OpenID promijenjen",
 "Invalid request" => "Neispravan zahtjev",
-"Authentication error" => "Greška kod autorizacije",
 "Language changed" => "Jezik promijenjen",
 "Error" => "Greška",
 "Disable" => "Isključi",
@@ -19,8 +19,6 @@
 "Add your App" => "Dodajte vašu aplikaciju",
 "Select an App" => "Odaberite Aplikaciju",
 "See application page at apps.owncloud.com" => "Pogledajte stranicu s aplikacijama na apps.owncloud.com",
-"-licensed" => "-licencirano",
-"by" => "od",
 "Documentation" => "dokumentacija",
 "Managing Big Files" => "Upravljanje velikih datoteka",
 "Ask a question" => "Postavite pitanje",
diff --git a/settings/l10n/hu_HU.php b/settings/l10n/hu_HU.php
index 4981f446548a60172c27a9903fc3f32f9a1032ec..23534d857599337b5cb1955064840a56f4f7633b 100644
--- a/settings/l10n/hu_HU.php
+++ b/settings/l10n/hu_HU.php
@@ -1,10 +1,10 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Nem tölthető le a lista az App Store-ból",
+"Authentication error" => "Hitelesítési hiba",
 "Email saved" => "Email mentve",
 "Invalid email" => "Hibás email",
 "OpenID Changed" => "OpenID megváltozott",
 "Invalid request" => "Érvénytelen kérés",
-"Authentication error" => "Hitelesítési hiba",
 "Language changed" => "A nyelv megváltozott",
 "Error" => "Hiba",
 "Disable" => "Letiltás",
@@ -17,8 +17,6 @@
 "Add your App" => "App hozzáadása",
 "Select an App" => "Egy App kiválasztása",
 "See application page at apps.owncloud.com" => "Lásd apps.owncloud.com, alkalmazások oldal",
-"-licensed" => "-licencelt",
-"by" => ":",
 "Documentation" => "Dokumentáció",
 "Managing Big Files" => "Nagy fájlok kezelése",
 "Ask a question" => "Tégy fel egy kérdést",
diff --git a/settings/l10n/ia.php b/settings/l10n/ia.php
index 7b2b631b687116c240d3889bc37839dd2792f22f..e9d6a065a2176e7cbb69919ed2eac5749884f0ea 100644
--- a/settings/l10n/ia.php
+++ b/settings/l10n/ia.php
@@ -7,7 +7,6 @@
 "More" => "Plus",
 "Add your App" => "Adder tu application",
 "Select an App" => "Selectionar un app",
-"by" => "per",
 "Documentation" => "Documentation",
 "Ask a question" => "Facer un question",
 "Answer" => "Responsa",
diff --git a/settings/l10n/id.php b/settings/l10n/id.php
index bf35b79240ad702996fb1325cf3425cd4cd00270..636be1af955442a6722934a0ef079bfedee806e6 100644
--- a/settings/l10n/id.php
+++ b/settings/l10n/id.php
@@ -1,14 +1,19 @@
 <?php $TRANSLATIONS = array(
+"Email saved" => "Email tersimpan",
+"Invalid email" => "Email tidak sah",
 "OpenID Changed" => "OpenID telah dirubah",
 "Invalid request" => "Permintaan tidak valid",
 "Language changed" => "Bahasa telah diganti",
+"Disable" => "NonAktifkan",
+"Enable" => "Aktifkan",
+"Saving..." => "Menyimpan...",
 "__language_name__" => "__language_name__",
+"Security Warning" => "Peringatan Keamanan",
 "Log" => "Log",
 "More" => "Lebih",
 "Add your App" => "Tambahkan App anda",
 "Select an App" => "Pilih satu aplikasi",
-"-licensed" => "-terlisensi",
-"by" => "oleh",
+"See application page at apps.owncloud.com" => "Lihat halaman aplikasi di apps.owncloud.com",
 "Documentation" => "Dokumentasi",
 "Managing Big Files" => "Mengelola berkas besar",
 "Ask a question" => "Ajukan pertanyaan",
@@ -37,6 +42,7 @@
 "Create" => "Buat",
 "Default Quota" => "Kuota default",
 "Other" => "Lain-lain",
+"Group Admin" => "Admin Grup",
 "Quota" => "Quota",
 "Delete" => "Hapus"
 );
diff --git a/settings/l10n/it.php b/settings/l10n/it.php
index e33eddacb57ece49f13de3525aeb0578fc24b220..695ed31eeef7ca87b0cd6abbdca0648135834e3e 100644
--- a/settings/l10n/it.php
+++ b/settings/l10n/it.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Impossibile caricare l'elenco dall'App Store",
+"Authentication error" => "Errore di autenticazione",
+"Group already exists" => "Il gruppo esiste già",
+"Unable to add group" => "Impossibile aggiungere il gruppo",
 "Email saved" => "Email salvata",
 "Invalid email" => "Email non valida",
 "OpenID Changed" => "OpenID modificato",
 "Invalid request" => "Richiesta non valida",
-"Authentication error" => "Errore di autenticazione",
+"Unable to delete group" => "Impossibile eliminare il gruppo",
+"Unable to delete user" => "Impossibile eliminare l'utente",
 "Language changed" => "Lingua modificata",
+"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",
 "Error" => "Errore",
 "Disable" => "Disabilita",
 "Enable" => "Abilita",
 "Saving..." => "Salvataggio in corso...",
 "__language_name__" => "Italiano",
 "Security Warning" => "Avviso di sicurezza",
+"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." => "La cartella dei dati e i tuoi file sono probabilmente accessibili da Internet.\nIl file .htaccess fornito da ownCloud non funziona. Ti consigliamo vivamente di configurare il server web in modo che la cartella dei dati non sia più accessibile e spostare la cartella fuori dalla radice del server web.",
 "Cron" => "Cron",
 "execute one task with each page loaded" => "esegui un'attività con ogni pagina caricata",
 "cron.php is registered at a webcron service" => "cron.php è registrato a un servizio webcron",
 "use systems cron service" => "usa il servizio cron di sistema",
+"Share API" => "API di condivisione",
+"Enable Share API" => "Abilita API di condivisione",
+"Allow apps to use the Share API" => "Consenti alle applicazioni di utilizzare le API di condivisione",
+"Allow links" => "Consenti collegamenti",
+"Allow users to share items to the public with links" => "Consenti agli utenti di condividere elementi al pubblico con collegamenti",
+"Allow resharing" => "Consenti la ri-condivisione",
+"Allow users to share items shared with them again" => "Consenti agli utenti di condividere elementi già condivisi",
+"Allow users to share with anyone" => "Consenti agli utenti di condividere con chiunque",
+"Allow users to only share with users in their groups" => "Consenti agli utenti di condividere con gli utenti del proprio gruppo",
 "Log" => "Registro",
 "More" => "Altro",
+"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>.",
 "Add your App" => "Aggiungi la tua applicazione",
 "Select an App" => "Seleziona un'applicazione",
 "See application page at apps.owncloud.com" => "Vedere la pagina dell'applicazione su apps.owncloud.com",
-"-licensed" => "-rilasciato",
-"by" => "da",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licenziato da <span class=\"author\"></span>",
 "Documentation" => "Documentazione",
 "Managing Big Files" => "Gestione file grandi",
 "Ask a question" => "Fai una domanda",
diff --git a/settings/l10n/ja_JP.php b/settings/l10n/ja_JP.php
index 93201a9dfe0a5f3b2e3abd47aa3694d6a150b8e0..fe1eed19806de50cf089edc8bf50499d6fdd5330 100644
--- a/settings/l10n/ja_JP.php
+++ b/settings/l10n/ja_JP.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "アプリストアからリストをロードできません",
+"Authentication error" => "認証エラー",
+"Group already exists" => "グループは既に存在しています",
+"Unable to add group" => "グループを追加できません",
 "Email saved" => "メールアドレスを保存しました",
 "Invalid email" => "無効なメールアドレス",
 "OpenID Changed" => "OpenIDが変更されました",
 "Invalid request" => "無効なリクエストです",
-"Authentication error" => "認証エラー",
+"Unable to delete group" => "グループを削除できません",
+"Unable to delete user" => "ユーザを削除できません",
 "Language changed" => "言語が変更されました",
+"Unable to add user to group %s" => "ユーザをグループ %s に追加できません",
+"Unable to remove user from group %s" => "ユーザをグループ %s から削除できません",
 "Error" => "エラー",
 "Disable" => "無効",
 "Enable" => "有効",
 "Saving..." => "保存中...",
 "__language_name__" => "Japanese (日本語)",
 "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." => "データディレクトリとファイルが恐らくインターネットからアクセスできるようになっています。ownCloudが提供する .htaccessファイルが機能していません。データディレクトリを全くアクセスできないようにするか、データディレクトリをウェブサーバのドキュメントルートの外に置くようにウェブサーバを設定することを強くお勧めします。",
 "Cron" => "cron(自動定期実行)",
 "execute one task with each page loaded" => "ページを開く毎にタスクを1つ実行",
 "cron.php is registered at a webcron service" => "cron.phpをwebcronサービスに登録しました",
 "use systems cron service" => "システムのcronサービスを使用",
+"Share API" => "Share API",
+"Enable Share API" => "Share APIを有効",
+"Allow apps to use the Share API" => "Share APIの使用をアプリケーションに許可",
+"Allow links" => "リンクを許可",
+"Allow users to share items to the public with links" => "ユーザーがリンクによる公開でアイテムを共有することが出来るようにする",
+"Allow resharing" => "再共有を許可",
+"Allow users to share items shared with them again" => "ユーザーが共有されているアイテムをさらに共有することが出来るようにする",
+"Allow users to share with anyone" => "ユーザーが誰にでも共有出来るようにする",
+"Allow users to only share with users in their groups" => "ユーザーがグループの人にしか共有出来ないようにする",
 "Log" => "ログ",
 "More" => "もっと",
+"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> ライセンスにより提供されています。",
 "Add your App" => "アプリを追加",
 "Select an App" => "アプリを選択してください",
 "See application page at apps.owncloud.com" => "apps.owncloud.com でアプリケーションのページを見てください",
-"-licensed" => "ライセンス",
-"by" => "@",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-ライセンス: <span class=\"author\"></span>",
 "Documentation" => "ドキュメント",
 "Managing Big Files" => "大きなファイルを扱うには",
 "Ask a question" => "質問してください",
diff --git a/settings/l10n/ko.php b/settings/l10n/ko.php
index 828426dc1d9150b795716f539cc02b6fea748c09..ada09c845cf81e64b432d1b14a30a1cf9f3132ca 100644
--- a/settings/l10n/ko.php
+++ b/settings/l10n/ko.php
@@ -1,20 +1,26 @@
 <?php $TRANSLATIONS = array(
+"Unable to load list from App Store" => "앱 스토어에서 목록을 가져올 수 없습니다",
+"Authentication error" => "인증 오류",
 "Email saved" => "이메일 저장",
 "Invalid email" => "잘못된 이메일",
 "OpenID Changed" => "OpenID 변경됨",
 "Invalid request" => "잘못된 요청",
 "Language changed" => "언어가 변경되었습니다",
+"Error" => "에러",
 "Disable" => "비활성화",
 "Enable" => "활성화",
 "Saving..." => "저장...",
 "__language_name__" => "한국어",
+"Security Warning" => "보안 경고",
+"Cron" => "크론",
+"execute one task with each page loaded" => "각 페이지가 로드 된 하나의 작업을 실행",
+"cron.php is registered at a webcron service" => "cron.php는 webcron 서비스에 등록이 되어 있습니다.",
+"use systems cron service" => "cron 시스템 서비스를 사용",
 "Log" => "로그",
 "More" => "더",
 "Add your App" => "앱 추가",
 "Select an App" => "프로그램 선택",
 "See application page at apps.owncloud.com" => "application page at apps.owncloud.com을 보시오.",
-"-licensed" => " 라이선스 사용",
-"by" => " by ",
 "Documentation" => "문서",
 "Managing Big Files" => "큰 파일 관리",
 "Ask a question" => "질문하기",
@@ -43,6 +49,7 @@
 "Create" => "만들기",
 "Default Quota" => "기본 할당량",
 "Other" => "다른",
+"Group Admin" => "그룹 관리자",
 "Quota" => "할당량",
 "Delete" => "삭제"
 );
diff --git a/settings/l10n/lb.php b/settings/l10n/lb.php
index 29072720a02eebb27a9b7555998e1bc04035f080..55db067f8cfc8309e2afed76c4d1d073177b4ecc 100644
--- a/settings/l10n/lb.php
+++ b/settings/l10n/lb.php
@@ -1,14 +1,32 @@
 <?php $TRANSLATIONS = array(
+"Unable to load list from App Store" => "Konnt Lescht net vum App Store lueden",
+"Authentication error" => "Authentifikatioun's Fehler",
+"Email saved" => "E-mail gespäichert",
+"Invalid email" => "Ongülteg e-mail",
 "OpenID Changed" => "OpenID huet geännert",
 "Invalid request" => "Ongülteg Requête",
 "Language changed" => "Sprooch huet geännert",
+"Error" => "Fehler",
+"Disable" => "Ofschalten",
+"Enable" => "Aschalten",
+"Saving..." => "Speicheren...",
 "__language_name__" => "__language_name__",
+"Security Warning" => "Sécherheets Warnung",
+"Cron" => "Cron",
+"cron.php is registered at a webcron service" => "cron.php ass als en webcron Service registréiert",
+"use systems cron service" => "benotz den systems cron Service",
+"Share API" => "Share API",
+"Enable Share API" => "Share API aschalten",
+"Allow apps to use the Share API" => "Erlab Apps d'Share API ze benotzen",
+"Allow links" => "Links erlaben",
+"Allow resharing" => "Resharing erlaben",
+"Allow users to share with anyone" => "Useren erlaben mat egal wiem ze sharen",
+"Allow users to only share with users in their groups" => "Useren nëmmen erlaben mat Useren aus hirer Grupp ze sharen",
 "Log" => "Log",
 "More" => "Méi",
 "Add your App" => "Setz deng App bei",
 "Select an App" => "Wiel eng Applikatioun aus",
-"-licensed" => "-Lizenséiert",
-"by" => "vun",
+"See application page at apps.owncloud.com" => "Kuck dir d'Applicatioun's Säit op apps.owncloud.com un",
 "Documentation" => "Dokumentatioun",
 "Managing Big Files" => "Grouss Fichieren verwalten",
 "Ask a question" => "Stell eng Fro",
@@ -37,6 +55,7 @@
 "Create" => "Erstellen",
 "Default Quota" => "Standard Quota",
 "Other" => "Aner",
+"Group Admin" => "Gruppen Admin",
 "Quota" => "Quota",
 "Delete" => "Läschen"
 );
diff --git a/settings/l10n/lt_LT.php b/settings/l10n/lt_LT.php
index e8076e293be6450251083b30c788964cbc5c23ad..701ec86727096dd2d0adcb9e72dcf8ca7e082a5b 100644
--- a/settings/l10n/lt_LT.php
+++ b/settings/l10n/lt_LT.php
@@ -17,7 +17,6 @@
 "More" => "Daugiau",
 "Add your App" => "Pridėti programėlę",
 "Select an App" => "Pasirinkite programą",
-"-licensed" => "-licencijuota",
 "Documentation" => "Dokumentacija",
 "Ask a question" => "Užduoti klausimą",
 "Problems connecting to help database." => "Problemos jungiantis prie duomenų bazės",
diff --git a/settings/l10n/lv.php b/settings/l10n/lv.php
index 9fa1ccdcfe30a0a5fd820e42707d778cc2c4053c..9780127890ad3052193058dc9f2ece0515b3a15b 100644
--- a/settings/l10n/lv.php
+++ b/settings/l10n/lv.php
@@ -1,21 +1,23 @@
 <?php $TRANSLATIONS = array(
+"Unable to load list from App Store" => "Nebija iespējams lejuplādēt sarakstu no aplikāciju veikala",
+"Authentication error" => "Ielogošanās kļūme",
 "Email saved" => "Epasts tika saglabāts",
 "Invalid email" => "Nepareizs epasts",
 "OpenID Changed" => "OpenID nomainīts",
 "Invalid request" => "Nepareizs vaicājums",
 "Language changed" => "Valoda tika nomainīta",
+"Error" => "Kļūme",
 "Disable" => "Atvienot",
 "Enable" => "Pievienot",
 "Saving..." => "Saglabā...",
 "__language_name__" => "__valodas_nosaukums__",
 "Security Warning" => "Brīdinājums par drošību",
+"Cron" => "Cron",
 "Log" => "Log",
 "More" => "Vairāk",
 "Add your App" => "Pievieno savu aplikāciju",
 "Select an App" => "Izvēlies aplikāciju",
 "See application page at apps.owncloud.com" => "Apskatie aplikāciju lapu - apps.owncloud.com",
-"-licensed" => "licenzēts",
-"by" => "no",
 "Documentation" => "Dokumentācija",
 "Managing Big Files" => "Rīkoties ar apjomīgiem failiem",
 "Ask a question" => "Uzdod jautajumu",
@@ -44,6 +46,7 @@
 "Create" => "Izveidot",
 "Default Quota" => "Apjoms pēc noklusējuma",
 "Other" => "Cits",
+"Group Admin" => "Grupas administrators",
 "Quota" => "Apjoms",
 "Delete" => "Izdzēst"
 );
diff --git a/settings/l10n/mk.php b/settings/l10n/mk.php
index 38e3cc6e09e5231223912aae730829e29bf16971..ce89f3b40c7b09077f740b3ada39ba78e0a64b76 100644
--- a/settings/l10n/mk.php
+++ b/settings/l10n/mk.php
@@ -13,8 +13,6 @@
 "Add your App" => "Додадете ја Вашата апликација",
 "Select an App" => "Избери аппликација",
 "See application page at apps.owncloud.com" => "Види ја страницата со апликации на apps.owncloud.com",
-"-licensed" => "-licensed",
-"by" => "од",
 "Documentation" => "Документација",
 "Managing Big Files" => "Управување со големи датотеки",
 "Ask a question" => "Постави прашање",
diff --git a/settings/l10n/ms_MY.php b/settings/l10n/ms_MY.php
index de2384a4ae22d4bc8ba8d320933d6f20be2b3810..a1d3007c89544a9a65e81ce318e43f82861d4483 100644
--- a/settings/l10n/ms_MY.php
+++ b/settings/l10n/ms_MY.php
@@ -1,9 +1,9 @@
 <?php $TRANSLATIONS = array(
+"Authentication error" => "Ralat pengesahan",
 "Email saved" => "Emel disimpan",
 "Invalid email" => "Emel tidak sah",
 "OpenID Changed" => "OpenID diubah",
 "Invalid request" => "Permintaan tidak sah",
-"Authentication error" => "Ralat pengesahan",
 "Language changed" => "Bahasa diubah",
 "Disable" => "Nyahaktif",
 "Enable" => "Aktif",
@@ -15,8 +15,6 @@
 "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",
-"-licensed" => "-dilesen",
-"by" => "oleh",
 "Documentation" => "Dokumentasi",
 "Managing Big Files" => "Mengurus Fail Besar",
 "Ask a question" => "Tanya soalan",
diff --git a/settings/l10n/nb_NO.php b/settings/l10n/nb_NO.php
index 137e5802a2a70d56687ea601ebd50c37debc207a..57c188135222ea2f1a9413af276b7e7a3f8e036c 100644
--- a/settings/l10n/nb_NO.php
+++ b/settings/l10n/nb_NO.php
@@ -1,10 +1,10 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Lasting av liste fra App Store feilet.",
+"Authentication error" => "Autentikasjonsfeil",
 "Email saved" => "Epost lagret",
 "Invalid email" => "Ugyldig epost",
 "OpenID Changed" => "OpenID endret",
 "Invalid request" => "Ugyldig forespørsel",
-"Authentication error" => "Autentikasjonsfeil",
 "Language changed" => "Språk endret",
 "Error" => "Feil",
 "Disable" => "Slå avBehandle ",
@@ -21,8 +21,6 @@
 "Add your App" => "Legg til din App",
 "Select an App" => "Velg en app",
 "See application page at apps.owncloud.com" => "Se applikasjonens side på apps.owncloud.org",
-"-licensed" => "-lisensiert",
-"by" => "av",
 "Documentation" => "Dokumentasjon",
 "Managing Big Files" => "Håndtere store filer",
 "Ask a question" => "Still et spørsmål",
diff --git a/settings/l10n/nl.php b/settings/l10n/nl.php
index 6048cbd63b00fc28776cd6836f3d07577d7335c4..8ac7b58a4ced542bed750b52001ad19357e6751c 100644
--- a/settings/l10n/nl.php
+++ b/settings/l10n/nl.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Kan de lijst niet van de App store laden",
+"Authentication error" => "Authenticatie fout",
+"Group already exists" => "Groep bestaat al",
+"Unable to add group" => "Niet in staat om groep toe te voegen",
 "Email saved" => "E-mail bewaard",
 "Invalid email" => "Ongeldige e-mail",
 "OpenID Changed" => "OpenID is aangepast",
 "Invalid request" => "Ongeldig verzoek",
-"Authentication error" => "Authenticatie fout",
+"Unable to delete group" => "Niet in staat om groep te verwijderen",
+"Unable to delete user" => "Niet in staat om gebruiker te verwijderen",
 "Language changed" => "Taal aangepast",
+"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",
 "Error" => "Fout",
 "Disable" => "Uitschakelen",
 "Enable" => "Inschakelen",
 "Saving..." => "Aan het bewaren.....",
 "__language_name__" => "Nederlands",
 "Security Warning" => "Veiligheidswaarschuwing",
+"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." => "Uw data folder en uw bestanden zijn hoogst waarschijnlijk vanaf het internet bereikbaar.  Het .htaccess bestand dat ownCloud meelevert werkt niet.  Het is ten zeerste aangeraden om uw webserver zodanig te configureren, dat de data folder niet bereikbaar is vanaf het internet of verplaatst uw data folder naar een locatie buiten de webserver document root.",
 "Cron" => "Cron",
 "execute one task with each page loaded" => "Voer 1 taak uit bij elke geladen pagina",
 "cron.php is registered at a webcron service" => "cron.php is geregistreerd bij een webcron service",
 "use systems cron service" => "gebruik de systeem cron service",
+"Share API" => "Deel API",
+"Enable Share API" => "Zet de Deel API aan",
+"Allow apps to use the Share API" => "Sta apps toe om de Deel API te gebruiken",
+"Allow links" => "Sta links toe",
+"Allow users to share items to the public with links" => "Sta gebruikers toe om items via links publiekelijk te maken",
+"Allow resharing" => "Sta verder delen toe",
+"Allow users to share items shared with them again" => "Sta gebruikers toe om items nogmaals te delen",
+"Allow users to share with anyone" => "Sta gebruikers toe om met iedereen te delen",
+"Allow users to only share with users in their groups" => "Sta gebruikers toe om alleen met gebruikers in hun groepen te delen",
 "Log" => "Log",
 "More" => "Meer",
+"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>.",
 "Add your App" => "Voeg je App toe",
 "Select an App" => "Selecteer een app",
 "See application page at apps.owncloud.com" => "Zie de applicatiepagina op apps.owncloud.com",
-"-licensed" => "-gelicentieerd",
-"by" => "door",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-Gelicenseerd door <span class=\"author\"></span>",
 "Documentation" => "Documentatie",
 "Managing Big Files" => "Onderhoud van grote bestanden",
 "Ask a question" => "Stel een vraag",
diff --git a/settings/l10n/nn_NO.php b/settings/l10n/nn_NO.php
index e5968bcd4a3206b4b656084c0fefc794847a8a31..25cf29b91d5e78eaf79a898e6fb2df6898c045e4 100644
--- a/settings/l10n/nn_NO.php
+++ b/settings/l10n/nn_NO.php
@@ -1,18 +1,16 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Klarer ikkje å laste inn liste fra App Store",
+"Authentication error" => "Feil i autentisering",
 "Email saved" => "E-postadresse lagra",
 "Invalid email" => "Ugyldig e-postadresse",
 "OpenID Changed" => "OpenID endra",
 "Invalid request" => "Ugyldig førespurnad",
-"Authentication error" => "Feil i autentisering",
 "Language changed" => "Språk endra",
 "Error" => "Feil",
 "Disable" => "Slå av",
 "Enable" => "Slå på",
 "__language_name__" => "Nynorsk",
 "Select an App" => "Vel ein applikasjon",
-"-licensed" => "-lisensiert",
-"by" => "av",
 "Ask a question" => "Spør om noko",
 "Problems connecting to help database." => "Problem ved tilkopling til hjelpedatabasen.",
 "Go there manually." => "Gå der på eigen hand.",
diff --git a/settings/l10n/pl.php b/settings/l10n/pl.php
index de9384a24409ac1d9c4f42acd78266bacd3632ce..851099ef6b77f400f57b98ad06790ee17d5493bd 100644
--- a/settings/l10n/pl.php
+++ b/settings/l10n/pl.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Nie mogę załadować listy aplikacji",
+"Authentication error" => "Błąd uwierzytelniania",
+"Group already exists" => "Grupa już istnieje",
+"Unable to add group" => "Nie można dodać grupy",
 "Email saved" => "Email zapisany",
 "Invalid email" => "Niepoprawny email",
 "OpenID Changed" => "Zmieniono OpenID",
 "Invalid request" => "Nieprawidłowe żądanie",
-"Authentication error" => "Błąd uwierzytelniania",
+"Unable to delete group" => "Nie można usunąć grupy",
+"Unable to delete user" => "Nie można usunąć użytkownika",
 "Language changed" => "Język zmieniony",
+"Unable to add user to group %s" => "Nie można dodać użytkownika do grupy %s",
+"Unable to remove user from group %s" => "Nie można usunąć użytkownika z grupy %s",
 "Error" => "Błąd",
 "Disable" => "Wyłączone",
 "Enable" => "Włączone",
 "Saving..." => "Zapisywanie...",
 "__language_name__" => "Polski",
 "Security Warning" => "Ostrzeżenia bezpieczeństwa",
+"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." => "Twój katalog danych i pliki są prawdopodobnie dostępne z Internetu. Plik .htaccess, który dostarcza ownCloud nie działa. Sugerujemy, aby skonfigurować serwer WWW w taki sposób, aby katalog danych nie był dostępny lub przenieść katalog danych poza główny katalog serwera WWW.",
 "Cron" => "Cron",
 "execute one task with each page loaded" => "wykonanie jednego zadania z każdej  załadowanej strony",
 "cron.php is registered at a webcron service" => "cron.php jest zarejestrowany w usłudze webcron",
 "use systems cron service" => "korzystaj z usługi systemowej cron",
+"Share API" => "Udostępnij API",
+"Enable Share API" => "Włącz udostępniane API",
+"Allow apps to use the Share API" => "Zezwalaj aplikacjom na używanie API",
+"Allow links" => "Zezwalaj na łącza",
+"Allow users to share items to the public with links" => "Zezwalaj użytkownikom na puliczne współdzielenie elementów za pomocą linków",
+"Allow resharing" => "Zezwól na ponowne udostępnianie",
+"Allow users to share items shared with them again" => "Zezwalaj użytkownikom na ponowne współdzielenie elementów już z nimi współdzilonych",
+"Allow users to share with anyone" => "Zezwalaj użytkownikom na współdzielenie z kimkolwiek",
+"Allow users to only share with users in their groups" => "Zezwalaj użytkownikom współdzielić z użytkownikami ze swoich grup",
 "Log" => "Log",
 "More" => "Więcej",
+"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>." => "Stwirzone przez <a href=\"http://ownCloud.org/contact\" target=\"_blank\"> społeczność ownCloud</a>, the <a href=\"https://github.com/owncloud\" target=\"_blank\">kod źródłowy</a> na licencji <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Dodaj aplikacje",
 "Select an App" => "Zaznacz aplikacje",
 "See application page at apps.owncloud.com" => "Zobacz stronę aplikacji na apps.owncloud.com",
-"-licensed" => "-licencjonowany",
-"by" => "przez",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licencjonowane przez <span class=\"author\"></span>",
 "Documentation" => "Dokumentacja",
 "Managing Big Files" => "Zarządzanie dużymi plikami",
 "Ask a question" => "Zadaj pytanie",
diff --git a/settings/l10n/pt_BR.php b/settings/l10n/pt_BR.php
index 57aaa272606492e528b228bf1db9102ffe144d28..6933e58554555d8f972b5b13e51098b5c52d6e2a 100644
--- a/settings/l10n/pt_BR.php
+++ b/settings/l10n/pt_BR.php
@@ -1,9 +1,9 @@
 <?php $TRANSLATIONS = array(
+"Authentication error" => "erro de autenticação",
 "Email saved" => "Email gravado",
 "Invalid email" => "Email inválido",
 "OpenID Changed" => "Mudou OpenID",
 "Invalid request" => "Pedido inválido",
-"Authentication error" => "erro de autenticação",
 "Language changed" => "Mudou Idioma",
 "Error" => "Erro",
 "Disable" => "Desabilitado",
@@ -18,8 +18,6 @@
 "Add your App" => "Adicione seu Aplicativo",
 "Select an App" => "Selecione uma Aplicação",
 "See application page at apps.owncloud.com" => "Ver página do aplicativo em apps.owncloud.com",
-"-licensed" => "-licenciados",
-"by" => "por",
 "Documentation" => "Documentação",
 "Managing Big Files" => "Gerênciando Arquivos Grandes",
 "Ask a question" => "Faça uma pergunta",
diff --git a/settings/l10n/pt_PT.php b/settings/l10n/pt_PT.php
index af12c42de465d339ac2a390b49e551a91942046e..bf939df4aeb689778f2079f1fb63eef063012802 100644
--- a/settings/l10n/pt_PT.php
+++ b/settings/l10n/pt_PT.php
@@ -1,10 +1,10 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Incapaz de carregar a lista da App Store",
+"Authentication error" => "Erro de autenticação",
 "Email saved" => "Email guardado",
 "Invalid email" => "Email inválido",
 "OpenID Changed" => "OpenID alterado",
 "Invalid request" => "Pedido inválido",
-"Authentication error" => "Erro de autenticação",
 "Language changed" => "Idioma alterado",
 "Error" => "Erro",
 "Disable" => "Desativar",
@@ -21,8 +21,6 @@
 "Add your App" => "Adicione a sua aplicação",
 "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",
-"-licensed" => "-licenciado",
-"by" => "por",
 "Documentation" => "Documentação",
 "Managing Big Files" => "Gestão de ficheiros grandes",
 "Ask a question" => "Coloque uma questão",
diff --git a/settings/l10n/ro.php b/settings/l10n/ro.php
index 1b69b7a84fe1b8a8a29d5089b96d7b72edd81d0b..c82cdaab2a406501f33b38e8c866e51a7a602527 100644
--- a/settings/l10n/ro.php
+++ b/settings/l10n/ro.php
@@ -1,14 +1,26 @@
 <?php $TRANSLATIONS = array(
+"Unable to load list from App Store" => "Imposibil de încărcat lista din App Store",
+"Authentication error" => "Eroare de autentificare",
+"Email saved" => "E-mail salvat",
+"Invalid email" => "E-mail nevalid",
 "OpenID Changed" => "OpenID schimbat",
 "Invalid request" => "Cerere eronată",
 "Language changed" => "Limba a fost schimbată",
+"Error" => "Erroare",
+"Disable" => "Dezactivați",
+"Enable" => "Activați",
+"Saving..." => "Salvez...",
 "__language_name__" => "_language_name_",
+"Security Warning" => "Avertisment de securitate",
+"Cron" => "Cron",
+"execute one task with each page loaded" => "executâ o sarcină cu fiecare pagină încărcată",
+"cron.php is registered at a webcron service" => "cron.php e înregistrat la un serviciu de webcron",
+"use systems cron service" => "utilizează serviciul de cron al sistemului",
 "Log" => "Jurnal de activitate",
 "More" => "Mai mult",
 "Add your App" => "Adaugă aplicația ta",
 "Select an App" => "Selectează o aplicație",
-"-licensed" => "-autorizat",
-"by" => "de",
+"See application page at apps.owncloud.com" => "Vizualizează pagina applicației pe apps.owncloud.com",
 "Documentation" => "Documetație",
 "Managing Big Files" => "Gestionînd fișiere mari",
 "Ask a question" => "Întreabă",
@@ -37,6 +49,7 @@
 "Create" => "Crează",
 "Default Quota" => "Cotă implicită",
 "Other" => "Altele",
+"Group Admin" => "Grupul Admin ",
 "Quota" => "Cotă",
 "Delete" => "Șterge"
 );
diff --git a/settings/l10n/ru.php b/settings/l10n/ru.php
index 949e9572c1cb1e9f971576a029a3bd6d6f2005e9..4e0a7e7d780e50ad84468ee858253a402d3fbe22 100644
--- a/settings/l10n/ru.php
+++ b/settings/l10n/ru.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Загрузка из App Store запрещена",
+"Authentication error" => "Ошибка авторизации",
+"Group already exists" => "Группа уже существует",
+"Unable to add group" => "Невозможно добавить группу",
 "Email saved" => "Email сохранен",
 "Invalid email" => "Неправильный Email",
 "OpenID Changed" => "OpenID изменён",
 "Invalid request" => "Неверный запрос",
-"Authentication error" => "Ошибка авторизации",
+"Unable to delete group" => "Невозможно удалить группу",
+"Unable to delete user" => "Невозможно удалить пользователя",
 "Language changed" => "Язык изменён",
+"Unable to add user to group %s" => "Невозможно добавить пользователя в группу %s",
+"Unable to remove user from group %s" => "Невозможно удалить пользователя из группы %s",
 "Error" => "Ошибка",
-"Disable" => "Отключить",
+"Disable" => "Выключить",
 "Enable" => "Включить",
 "Saving..." => "Сохранение...",
 "__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 и ваши файлы в нем доступны из интернета. Предоставляемый ownCloud файл htaccess не работает. Настоятельно рекомендуем настроить сервер таким образом, чтобы закрыть доступ к каталогу data или вынести каталог data за пределы корневого каталога веб-сервера.",
 "Cron" => "Задание",
 "execute one task with each page loaded" => "Запускать задание при загрузке каждой страницы",
-"cron.php is registered at a webcron service" => "cron.php зарегистрирован в webcron сервисе",
+"cron.php is registered at a webcron service" => "cron.php зарегистрирован в службе webcron",
 "use systems cron service" => "использовать системные задания",
+"Share API" => "API публикации",
+"Enable Share API" => "Включить API публикации",
+"Allow apps to use the Share API" => "Разрешить API публикации для приложений",
+"Allow links" => "Разрешить ссылки",
+"Allow users to share items to the public with links" => "Разрешить пользователям публикацию при помощи ссылок",
+"Allow resharing" => "Включить повторную публикацию",
+"Allow users to share items shared with them again" => "Разрешить пользователям публиковать доступные им элементы других пользователей",
+"Allow users to share with anyone" => "Разрешить публиковать для любых пользователей",
+"Allow users to only share with users in their groups" => "Ограничить публикацию группами пользователя",
 "Log" => "Журнал",
 "More" => "Ещё",
+"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>.",
 "Add your App" => "Добавить приложение",
 "Select an App" => "Выберите приложение",
 "See application page at apps.owncloud.com" => "Смотрите дополнения на apps.owncloud.com",
-"-licensed" => "-лицензия",
-"by" => "от",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span> лицензия. Автор <span class=\"author\"></span>",
 "Documentation" => "Документация",
 "Managing Big Files" => "Управление большими файлами",
 "Ask a question" => "Задать вопрос",
diff --git a/settings/l10n/sk_SK.php b/settings/l10n/sk_SK.php
index edf908ce097dcb492f0ee6176d10b0115dafde9e..f8032afe5b4b4fa167419d5ceb057b5a11cddb1c 100644
--- a/settings/l10n/sk_SK.php
+++ b/settings/l10n/sk_SK.php
@@ -13,8 +13,6 @@
 "Add your App" => "Pridať vašu aplikáciu",
 "Select an App" => "Vyberte aplikáciu",
 "See application page at apps.owncloud.com" => "Pozrite si stránku aplikácie na apps.owncloud.com",
-"-licensed" => "-licencované",
-"by" => "od",
 "Documentation" => "Dokumentácia",
 "Managing Big Files" => "Spravovanie veľké súbory",
 "Ask a question" => "Opýtajte sa otázku",
diff --git a/settings/l10n/sl.php b/settings/l10n/sl.php
index a2404d212b2a0247adcb856e71563c7605ef1bdd..7b5c6bee3cb4efbbb51246375a6379b2acacd54a 100644
--- a/settings/l10n/sl.php
+++ b/settings/l10n/sl.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Ne morem naložiti seznama iz App Store",
+"Authentication error" => "Napaka overitve",
+"Group already exists" => "Skupina že obstaja",
+"Unable to add group" => "Ni mogoče dodati skupine",
 "Email saved" => "E-poštni naslov je bil shranjen",
 "Invalid email" => "Neveljaven e-poštni naslov",
 "OpenID Changed" => "OpenID je bil spremenjen",
 "Invalid request" => "Neveljaven zahtevek",
-"Authentication error" => "Napaka overitve",
+"Unable to delete group" => "Ni mogoče izbrisati skupine",
+"Unable to delete user" => "Ni mogoče izbrisati uporabnika",
 "Language changed" => "Jezik je bil spremenjen",
+"Unable to add user to group %s" => "Uporabnika ni mogoče dodati k skupini %s",
+"Unable to remove user from group %s" => "Uporabnika ni mogoče odstraniti iz skupine %s",
 "Error" => "Napaka",
 "Disable" => "Onemogoči",
 "Enable" => "Omogoči",
 "Saving..." => "Shranjevanje...",
 "__language_name__" => "__ime_jezika__",
 "Security Warning" => "Varnostno opozorilo",
+"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." => "Vaša mapa data in vaše datoteke so verjetno vsem dostopne preko interneta. Datoteka .htaccess vključena v ownCloud ni omogočena. Močno vam priporočamo, da nastavite vaš spletni strežnik tako, da mapa data ne bo več na voljo vsem, ali pa jo preselite izven korenske mape spletnega strežnika.",
 "Cron" => "Periodično opravilo",
 "execute one task with each page loaded" => "izvedi eno nalogo z vsako naloženo stranjo",
 "cron.php is registered at a webcron service" => "cron.php je vpisan na storitev webcron",
 "use systems cron service" => "uporabi sistemski servis za periodična opravila",
+"Share API" => "API souporabe",
+"Enable Share API" => "Omogoči API souporabe",
+"Allow apps to use the Share API" => "Dovoli aplikacijam uporabo API-ja souporabe",
+"Allow links" => "Dovoli povezave",
+"Allow users to share items to the public with links" => "Uporabnikom dovoli souporabo z javnimi povezavami",
+"Allow resharing" => "Dovoli nadaljnjo souporabo",
+"Allow users to share items shared with them again" => "Uporabnikom dovoli nadaljnjo souporabo",
+"Allow users to share with anyone" => "Uporabnikom dovoli souporabo s komerkoli",
+"Allow users to only share with users in their groups" => "Uporabnikom dovoli souporabo le znotraj njihove skupine",
 "Log" => "Dnevnik",
 "More" => "Več",
+"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>." => "Razvit s strani <a href=\"http://ownCloud.org/contact\" target=\"_blank\">skupnosti ownCloud</a>. <a href=\"https://github.com/owncloud\" target=\"_blank\">Izvorna koda</a> je izdana pod licenco <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Dodajte vašo aplikacijo",
 "Select an App" => "Izberite aplikacijo",
 "See application page at apps.owncloud.com" => "Obiščite spletno stran aplikacije na apps.owncloud.com",
-"-licensed" => "-licencirana",
-"by" => "s strani",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licencirana s strani <span class=\"author\"></span>",
 "Documentation" => "Dokumentacija",
 "Managing Big Files" => "Upravljanje velikih datotek",
 "Ask a question" => "Postavi vprašanje",
diff --git a/settings/l10n/sr.php b/settings/l10n/sr.php
index 7dede8fdc74dee072ba4f2d73e0ed48849696dd4..84881c2f1a8ce51f19f98276ed4631d1f453731a 100644
--- a/settings/l10n/sr.php
+++ b/settings/l10n/sr.php
@@ -3,8 +3,6 @@
 "Invalid request" => "Неисправан захтев",
 "Language changed" => "Језик је измењен",
 "Select an App" => "Изаберите програм",
-"-licensed" => "-лиценциран",
-"by" => "од",
 "Ask a question" => "Поставите питање",
 "Problems connecting to help database." => "Проблем у повезивању са базом помоћи",
 "Go there manually." => "Отиђите тамо ручно.",
diff --git a/settings/l10n/sr@latin.php b/settings/l10n/sr@latin.php
index 0229a763613a7ec3da798a2d1a436868e7ebd65a..8bfc0fa989f24532b46f573b402d6d7a61c8b166 100644
--- a/settings/l10n/sr@latin.php
+++ b/settings/l10n/sr@latin.php
@@ -3,8 +3,6 @@
 "Invalid request" => "Neispravan zahtev",
 "Language changed" => "Jezik je izmenjen",
 "Select an App" => "Izaberite program",
-"-licensed" => "-licenciran",
-"by" => "od",
 "Ask a question" => "Postavite pitanje",
 "Problems connecting to help database." => "Problem u povezivanju sa bazom pomoći",
 "Go there manually." => "Otiđite tamo ručno.",
diff --git a/settings/l10n/sv.php b/settings/l10n/sv.php
index 7603b6b09f71e3c1f0da11c58af08d36acd1c8b6..1a18e9670de4299b662c47b98ea7ace714acf91d 100644
--- a/settings/l10n/sv.php
+++ b/settings/l10n/sv.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "Kan inte ladda listan från App Store",
+"Authentication error" => "Autentiseringsfel",
+"Group already exists" => "Gruppen finns redan",
+"Unable to add group" => "Kan inte lägga till grupp",
 "Email saved" => "E-post sparad",
 "Invalid email" => "Ogiltig e-post",
 "OpenID Changed" => "OpenID ändrat",
 "Invalid request" => "Ogiltig begäran",
-"Authentication error" => "Autentiseringsfel",
+"Unable to delete group" => "Kan inte radera grupp",
+"Unable to delete user" => "Kan inte radera användare",
 "Language changed" => "Språk ändrades",
+"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",
 "Error" => "Fel",
 "Disable" => "Deaktivera",
 "Enable" => "Aktivera",
 "Saving..." => "Sparar...",
 "__language_name__" => "__language_name__",
 "Security Warning" => "Säkerhetsvarning",
+"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." => "Din datamapp och dina filer kan möjligen vara nåbara från internet. Filen .htaccess som ownCloud tillhandahåller fungerar inte. Vi rekommenderar starkt att du ställer in din webbserver på ett sätt så att datamappen inte är nåbar. Alternativt att ni flyttar datamappen utanför webbservern.",
 "Cron" => "Cron",
 "execute one task with each page loaded" => "utför en uppgift vid varje sidladdning",
 "cron.php is registered at a webcron service" => "cron.php är registrerad på en webcron-tjänst",
 "use systems cron service" => "använd systemets cron-tjänst",
+"Share API" => "Delat API",
+"Enable Share API" => "Aktivera delat API",
+"Allow apps to use the Share API" => "Tillåt applikationer att använda delat API",
+"Allow links" => "Tillåt länkar",
+"Allow users to share items to the public with links" => "Tillåt delning till allmänheten via publika länkar",
+"Allow resharing" => "Tillåt dela vidare",
+"Allow users to share items shared with them again" => "Tillåt användare att dela vidare filer som delats med dom",
+"Allow users to share with anyone" => "Tillåt delning med alla",
+"Allow users to only share with users in their groups" => "Tillåt bara delning med användare i egna grupper",
 "Log" => "Logg",
 "More" => "Mera",
+"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>.",
 "Add your App" => "Lägg till din applikation",
 "Select an App" => "Välj en App",
 "See application page at apps.owncloud.com" => "Se programsida på apps.owncloud.com",
-"-licensed" => "-licensierat",
-"by" => "av",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-licensierad av <span class=\"author\"></span>",
 "Documentation" => "Dokumentation",
 "Managing Big Files" => "Hantering av stora filer",
 "Ask a question" => "Ställ en fråga",
diff --git a/settings/l10n/th_TH.php b/settings/l10n/th_TH.php
index a062c374c6aed2e7bfe11eb4395c10f248a8242f..d775af76713a79c30db77960f5f3f0b15f1ee4b0 100644
--- a/settings/l10n/th_TH.php
+++ b/settings/l10n/th_TH.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "ไม่สามารถโหลดรายการจาก App Store ได้",
+"Authentication error" => "เกิดข้อผิดพลาดเกี่ยวกับสิทธิ์การเข้าใช้งาน",
+"Group already exists" => "มีกลุ่มดังกล่าวอยู่ในระบบอยู่แล้ว",
+"Unable to add group" => "ไม่สามารถเพิ่มกลุ่มได้",
 "Email saved" => "อีเมลถูกบันทึกแล้ว",
 "Invalid email" => "อีเมลไม่ถูกต้อง",
 "OpenID Changed" => "เปลี่ยนชื่อบัญชี OpenID แล้ว",
 "Invalid request" => "คำร้องขอไม่ถูกต้อง",
-"Authentication error" => "เกิดข้อผิดพลาดเกี่ยวกับสิทธิ์การเข้าใช้งาน",
+"Unable to delete group" => "ไม่สามารถลบกลุ่มได้",
+"Unable to delete user" => "ไม่สามารถลบผู้ใช้งานได้",
 "Language changed" => "เปลี่ยนภาษาเรียบร้อยแล้ว",
+"Unable to add user to group %s" => "ไม่สามารถเพิ่มผู้ใช้งานเข้าไปที่กลุ่ม %s ได้",
+"Unable to remove user from group %s" => "ไม่สามารถลบผู้ใช้งานออกจากกลุ่ม %s ได้",
 "Error" => "ข้อผิดพลาด",
 "Disable" => "ปิดใช้งาน",
 "Enable" => "เปิดใช้งาน",
 "Saving..." => "กำลังบันทึุกข้อมูล...",
 "__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." => "ไดเร็กทอรี่ข้อมูลและไฟล์ของคุณสามารถเข้าถึงได้จากอินเทอร์เน็ต ไฟล์ .htaccess ที่ ownCloud มีให้ไม่สามารถทำงานได้อย่างเหมาะสม เราขอแนะนำให้คุณกำหนดค่าเว็บเซิร์ฟเวอร์ใหม่ในรูปแบบที่ไดเร็กทอรี่เก็บข้อมูลไม่สามารถเข้าถึงได้อีกต่อไป หรือคุณได้ย้ายไดเร็กทอรี่ที่ใช้เก็บข้อมูลไปอยู่ภายนอกตำแหน่ง root ของเว็บเซิร์ฟเวอร์แล้ว",
 "Cron" => "Cron",
 "execute one task with each page loaded" => "ประมวลผลหนึ่งงานเมื่อโหลดหน้าเว็บแต่ละครั้ง",
 "cron.php is registered at a webcron service" => "cron.php ได้ถูกลงทะเบียนที่บริการ webcron",
 "use systems cron service" => "ใช้บริการ cron จากระบบ",
+"Share API" => "API สำหรับคุณสมบัติแชร์ข้อมูล",
+"Enable Share API" => "เปิดใช้งาน API สำหรับคุณสมบัติแชร์ข้อมูล",
+"Allow apps to use the Share API" => "อนุญาตให้แอปฯสามารถใช้ API สำหรับแชร์ข้อมูลได้",
+"Allow links" => "อนุญาตให้ใช้งานลิงก์ได้",
+"Allow users to share items to the public with links" => "อนุญาตให้ผู้ใช้งานสามารถแชร์ข้อมูลรายการต่างๆไปให้สาธารณะชนเป็นลิงก์ได้",
+"Allow resharing" => "อนุญาตให้แชร์ข้อมูลซ้ำใหม่ได้",
+"Allow users to share items shared with them again" => "อนุญาตให้ผู้ใช้งานแชร์ข้อมูลรายการต่างๆที่ถูกแชร์มาให้ตัวผู้ใช้งานได้เท่านั้น",
+"Allow users to share with anyone" => "อนุญาตให้ผู้ใช้งานแชร์ข้อมูลถึงใครก็ได้",
+"Allow users to only share with users in their groups" => "อนุญาตให้ผู้ใช้งานแชร์ข้อมูลได้เฉพาะกับผู้ใช้งานที่อยู่ในกลุ่มเดียวกันเท่านั้น",
 "Log" => "บันทึกการเปลี่ยนแปลง",
 "More" => "เพิ่มเติม",
+"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>.",
 "Add your App" => "เพิ่มแอปของคุณ",
 "Select an App" => "เลือก App",
 "See application page at apps.owncloud.com" => "ดูหน้าแอพพลิเคชั่นที่ apps.owncloud.com",
-"-licensed" => "-ได้รับอนุญาติแล้ว",
-"by" => "โดย",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-ลิขสิทธิ์การใช้งานโดย <span class=\"author\"></span>",
 "Documentation" => "เอกสารคู่มือการใช้งาน",
 "Managing Big Files" => "การจัดการไฟล์ขนาดใหญ่",
 "Ask a question" => "สอบถามข้อมูล",
diff --git a/settings/l10n/tr.php b/settings/l10n/tr.php
index 8182236a2d885b392ffbcbb22c040d54ddf8010b..6e68d792e74a87fba83f61f67b04dff361102628 100644
--- a/settings/l10n/tr.php
+++ b/settings/l10n/tr.php
@@ -1,9 +1,9 @@
 <?php $TRANSLATIONS = array(
+"Authentication error" => "Eşleşme hata",
 "Email saved" => "Eposta kaydedildi",
 "Invalid email" => "Geçersiz eposta",
 "OpenID Changed" => "OpenID Değiştirildi",
 "Invalid request" => "Geçersiz istek",
-"Authentication error" => "Eşleşme hata",
 "Language changed" => "Dil değiştirildi",
 "Disable" => "Etkin değil",
 "Enable" => "Etkin",
@@ -15,8 +15,6 @@
 "Add your App" => "Uygulamanı Ekle",
 "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" => "-lisanslı",
-"by" => "yapan",
 "Documentation" => "Dökümantasyon",
 "Managing Big Files" => "Büyük Dosyaların Yönetimi",
 "Ask a question" => "Bir soru sorun",
diff --git a/settings/l10n/uk.php b/settings/l10n/uk.php
index 7331ff324c1f0ca113be076e1bd9a2ce646aa98f..37ecd73fb68ab71b922d128a5971a124322bf9b4 100644
--- a/settings/l10n/uk.php
+++ b/settings/l10n/uk.php
@@ -3,8 +3,6 @@
 "Invalid request" => "Помилковий запит",
 "Language changed" => "Мова змінена",
 "Select an App" => "Вибрати додаток",
-"-licensed" => "-ліцензовано",
-"by" => "по",
 "Ask a question" => "Запитати",
 "Problems connecting to help database." => "Проблема при з'єднані з базою допомоги",
 "You use" => "Ви використовуєте",
diff --git a/settings/l10n/vi.php b/settings/l10n/vi.php
index 41e4441b1cb8474beb3547333e30be13c07abe34..c410bb4c3dab57a167ef03df715ecd599d9808b2 100644
--- a/settings/l10n/vi.php
+++ b/settings/l10n/vi.php
@@ -1,20 +1,44 @@
 <?php $TRANSLATIONS = array(
+"Unable to load list from App Store" => "Không thể tải danh sách ứng dụng từ App Store",
+"Authentication error" => "Lỗi xác thực",
+"Group already exists" => "Nhóm đã tồn tại",
+"Unable to add group" => "Không thể thêm nhóm",
 "Email saved" => "Lưu email",
 "Invalid email" => "Email không hợp lệ",
 "OpenID Changed" => "Đổi OpenID",
 "Invalid request" => "Yêu cầu không hợp lệ",
+"Unable to delete group" => "Không thể xóa nhóm",
+"Unable to delete user" => "Không thể xóa người dùng",
 "Language changed" => "Ngôn ngữ đã được thay đổi",
+"Unable to add user to group %s" => "Không thể thêm người dùng vào nhóm %s",
+"Unable to remove user from group %s" => "Không thể xóa người dùng từ nhóm %s",
+"Error" => "Lỗi",
 "Disable" => "Vô hiệu",
 "Enable" => "Cho phép",
 "Saving..." => "Đang tiến hành lưu ...",
 "__language_name__" => "__Ngôn ngữ___",
+"Security Warning" => "Cảnh bảo bảo mật",
+"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." => "Thư mục dữ liệu và những tập tin của bạn có thể dễ dàng bị truy cập từ internet. Tập tin .htaccess của ownCloud cung cấp không hoạt động. Chúng tôi đề nghị bạn nên cấu hình lại máy chủ webserver của bạn để thư mục dữ liệu không  còn bị truy cập hoặc bạn di chuyển thư mục dữ liệu ra bên ngoài thư mục gốc của máy chủ.",
+"Cron" => "Cron",
+"execute one task with each page loaded" => "Thực thi một nhiệm vụ với mỗi trang được nạp",
+"cron.php is registered at a webcron service" => "cron.php đã được đăng ký ở một dịch vụ webcron",
+"use systems cron service" => "sử dụng hệ thống dịch vụ cron",
+"Share API" => "Chia sẻ API",
+"Enable Share API" => "Bật chia sẻ API",
+"Allow apps to use the Share API" => "Cho phép các ứng dụng sử dụng chia sẻ API",
+"Allow links" => "Cho phép liên kết",
+"Allow users to share items to the public with links" => "Cho phép người dùng chia sẻ công khai các mục bằng các liên kết",
+"Allow resharing" => "Cho phép chia sẻ lại",
+"Allow users to share items shared with them again" => "Cho phép người dùng chia sẻ lại những mục đã được chia sẻ",
+"Allow users to share with anyone" => "Cho phép người dùng chia sẻ với bất cứ ai",
+"Allow users to only share with users in their groups" => "Chỉ cho phép người dùng chia sẻ với những người dùng trong nhóm của họ",
 "Log" => "Log",
 "More" => "nhiều hơ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>." => "Được phát triển bởi <a href=\"http://ownCloud.org/contact\" target=\"_blank\">cộng đồng ownCloud</a>, <a href=\"https://github.com/owncloud\" target=\"_blank\">mã nguồn </a> đã được cấp phép theo chuẩn <a href=\"http://www.gnu.org/licenses/agpl-3.0.html\" target=\"_blank\"><abbr title=\"Affero General Public License\">AGPL</abbr></a>.",
 "Add your App" => "Thêm ứng dụng của bạn",
 "Select an App" => "Chọn một ứng dụng",
 "See application page at apps.owncloud.com" => "Xem ứng dụng tại apps.owncloud.com",
-"-licensed" => "Giấy phép đã được cấp",
-"by" => "bởi",
+"<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>",
 "Documentation" => "Tài liệu",
 "Managing Big Files" => "Quản lý tập tin lớn",
 "Ask a question" => "Đặt câu hỏi",
@@ -43,6 +67,7 @@
 "Create" => "Tạo",
 "Default Quota" => "Hạn ngạch mặt định",
 "Other" => "Khác",
+"Group Admin" => "Nhóm quản trị",
 "Quota" => "Hạn ngạch",
 "Delete" => "Xóa"
 );
diff --git a/settings/l10n/zh_CN.GB2312.php b/settings/l10n/zh_CN.GB2312.php
index faf125225bacb4807aaa671da626540bc5987bcf..83111beb10eccb46c1adc01cad2b959e4ad448de 100644
--- a/settings/l10n/zh_CN.GB2312.php
+++ b/settings/l10n/zh_CN.GB2312.php
@@ -1,10 +1,10 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "不能从App Store 中加载列表",
+"Authentication error" => "认证错误",
 "Email saved" => "Email 保存了",
 "Invalid email" => "非法Email",
 "OpenID Changed" => "OpenID 改变了",
 "Invalid request" => "非法请求",
-"Authentication error" => "认证错误",
 "Language changed" => "语言改变了",
 "Error" => "错误",
 "Disable" => "禁用",
@@ -18,8 +18,6 @@
 "Add your App" => "添加你的应用程序",
 "Select an App" => "选择一个程序",
 "See application page at apps.owncloud.com" => "在owncloud.com上查看应用程序",
-"-licensed" => "-许可了",
-"by" => "由",
 "Documentation" => "文档",
 "Managing Big Files" => "管理大文件",
 "Ask a question" => "提一个问题",
diff --git a/settings/l10n/zh_CN.php b/settings/l10n/zh_CN.php
index b008955a4b331db78ac9e60ac7ec7cff40230d99..7927cec61c7559ef2de0d28dc0b7c67717f563c1 100644
--- a/settings/l10n/zh_CN.php
+++ b/settings/l10n/zh_CN.php
@@ -1,28 +1,44 @@
 <?php $TRANSLATIONS = array(
 "Unable to load list from App Store" => "无法从应用商店载入列表",
+"Authentication error" => "认证错误",
+"Group already exists" => "已存在组",
+"Unable to add group" => "不能添加组",
 "Email saved" => "电子邮件已保存",
 "Invalid email" => "无效的电子邮件",
 "OpenID Changed" => "OpenID 已修改",
 "Invalid request" => "非法请求",
-"Authentication error" => "认证错误",
+"Unable to delete group" => "不能删除组",
+"Unable to delete user" => "不能删除用户",
 "Language changed" => "语言已修改",
+"Unable to add user to group %s" => "不能把用户添加到组 %s",
+"Unable to remove user from group %s" => "不能从组%s中移除用户",
 "Error" => "错误",
 "Disable" => "禁用",
 "Enable" => "启用",
 "Saving..." => "正在保存",
 "__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." => "您的数据文件夹和文件可由互联网访问。OwnCloud提供的.htaccess文件未生效。我们强烈建议您配置服务器,以使数据文件夹不可被访问,或者将数据文件夹移到web服务器以外。",
 "Cron" => "计划任务",
 "execute one task with each page loaded" => "为每个装入的页面执行任务",
 "cron.php is registered at a webcron service" => "crop.php 已",
 "use systems cron service" => "实现系统 cron 服务",
+"Share API" => "共享API",
+"Enable Share API" => "开启共享API",
+"Allow apps to use the Share API" => "允许 应用 使用共享API",
+"Allow links" => "允许连接",
+"Allow users to share items to the public with links" => "允许用户使用连接向公众共享",
+"Allow resharing" => "允许再次共享",
+"Allow users to share items shared with them again" => "允许用户将共享给他们的项目再次共享",
+"Allow users to share with anyone" => "允许用户向任何人共享",
+"Allow users to only share with users in their groups" => "允许用户只向同组用户共享",
 "Log" => "日志",
 "More" => "更多",
+"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>许可证下发布。",
 "Add your App" => "添加应用",
 "Select an App" => "选择一个应用",
 "See application page at apps.owncloud.com" => "查看在 app.owncloud.com 的应用程序页面",
-"-licensed" => "-许可证",
-"by" => "由",
+"<span class=\"licence\"></span>-licensed by <span class=\"author\"></span>" => "<span class=\"licence\"></span>-核准: <span class=\"author\"></span>",
 "Documentation" => "文档",
 "Managing Big Files" => "管理大文件",
 "Ask a question" => "提问",
diff --git a/settings/l10n/zh_TW.php b/settings/l10n/zh_TW.php
index 0218133f65a015d9f557a7cacc7dc0ce262cdcdc..4f72c8398ba515bfd912e4c19efc70eeae332320 100644
--- a/settings/l10n/zh_TW.php
+++ b/settings/l10n/zh_TW.php
@@ -1,14 +1,37 @@
 <?php $TRANSLATIONS = array(
+"Unable to load list from App Store" => "無法從 App Store 讀取清單",
+"Authentication error" => "認證錯誤",
+"Group already exists" => "群組已存在",
+"Unable to add group" => "群組增加失敗",
+"Email saved" => "Email已儲存",
+"Invalid email" => "無效的email",
 "OpenID Changed" => "OpenID 已變更",
 "Invalid request" => "無效請求",
+"Unable to delete group" => "群組刪除錯誤",
+"Unable to delete user" => "使用者刪除錯誤",
 "Language changed" => "語言已變更",
+"Unable to add user to group %s" => "使用者加入群組%s錯誤",
+"Unable to remove user from group %s" => "使用者移出群組%s錯誤",
+"Error" => "錯誤",
+"Disable" => "停用",
+"Enable" => "啟用",
+"Saving..." => "儲存中...",
 "__language_name__" => "__語言_名稱__",
+"Security Warning" => "安全性警告",
+"Cron" => "定期執行",
+"execute one task with each page loaded" => "當頁面載入時,執行",
+"use systems cron service" => "使用系統定期執行服務",
+"Allow links" => "允許連結",
+"Allow users to share items to the public with links" => "允許使用者以結連公開分享檔案",
+"Allow resharing" => "允許轉貼分享",
+"Allow users to share items shared with them again" => "允許使用者轉貼共享檔案",
+"Allow users to share with anyone" => "允許使用者公開分享",
+"Allow users to only share with users in their groups" => "僅允許使用者在群組內分享",
 "Log" => "紀錄",
 "More" => "更多",
 "Add your App" => "添加你的 App",
 "Select an App" => "選擇一個應用程式",
-"-licensed" => "-已許可",
-"by" => "由",
+"See application page at apps.owncloud.com" => "查看應用程式頁面於 apps.owncloud.com",
 "Documentation" => "文件",
 "Managing Big Files" => "管理大檔案",
 "Ask a question" => "提問",
@@ -37,6 +60,7 @@
 "Create" => "創造",
 "Default Quota" => "預設容量限制",
 "Other" => "其他",
+"Group Admin" => "群組 管理員",
 "Quota" => "容量限制",
 "Delete" => "刪除"
 );
diff --git a/settings/languageCodes.php b/settings/languageCodes.php
index 621ee5ab55c69b6b5708ba033584b541fc506fd1..6d3b6ebe634574c70948291d35232f7b18fe5e00 100644
--- a/settings/languageCodes.php
+++ b/settings/languageCodes.php
@@ -14,10 +14,14 @@ return array(
 'en'=>'English',
 'es'=>'Español',
 'et_EE'=>'Eesti',
+'fa'=>'فارسى',
+'fi_FI'=>'Suomi',
 'fr'=>'Français',
+'hi'=>'हिन्दी',
 'id'=>'Bahasa Indonesia',
 'it'=>'Italiano',
 'lb'=>'Lëtzebuergesch',
+//'l10n-de'=>'',
 'ms_MY'=>'Bahasa Melayu',
 'nb_NO'=>'Norwegian Bokmål',
 'nl'=>'Nederlands',
@@ -42,4 +46,9 @@ return array(
 'ia'=>'Interlingua',
 'sl'=>'Slovenski',
 'nn_NO'=>'Nynorsk',
+'lv'=>'Latviešu',
+'mk'=>'македонски',
+'uk'=>'Українська',
+'vi'=>'tiếng việt',
+'zh_TW'=>'臺灣話',
 );
diff --git a/settings/log.php b/settings/log.php
deleted file mode 100644
index ddbf72c4433c2f08270fd2b127c12eef3ea38ba5..0000000000000000000000000000000000000000
--- a/settings/log.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-/**
- * ownCloud
- *
- * @author Robin Appelman
- * @copyright 2012 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/>.
- *
- */
-
-require_once('../lib/base.php');
-OC_Util::checkAdminUser();
-
-// Load the files we need
-OC_Util::addStyle( "settings", "settings" );
-OC_Util::addScript( "settings", "apps" );
-OC_App::setActiveNavigationEntry( "core_log" );
-
-$entries=OC_Log_Owncloud::getEntries();
-
-OC_Util::addScript('settings','log');
-OC_Util::addStyle('settings','settings');
-
-function compareEntries($a,$b){
-	return $b->time - $a->time;
-}
-usort($entries, 'compareEntries');
-
-$tmpl = new OC_Template( "settings", "log", "user" );
-$tmpl->assign('entries',$entries);
-
-$tmpl->printPage();
diff --git a/settings/personal.php b/settings/personal.php
index 82626526d5756b7ff46e85f6dfda8f4bdfe7c1e1..4f92985c7977956476c55e4629f4601966e70fe2 100644
--- a/settings/personal.php
+++ b/settings/personal.php
@@ -5,7 +5,7 @@
  * See the COPYING-README file.
  */
 
-require_once('../lib/base.php');
+require_once '../lib/base.php';
 OC_Util::checkLoggedIn();
 
 // Highlight navigation entry
@@ -29,23 +29,23 @@ $total=$free+$used;
 if($total==0) $total=1;  // prevent division by zero
 $relative=round(($used/$total)*10000)/100;
 
-$email=OC_Preferences::getValue(OC_User::getUser(), 'settings','email','');
+$email=OC_Preferences::getValue(OC_User::getUser(), 'settings', 'email', '');
 
 $lang=OC_Preferences::getValue( OC_User::getUser(), 'core', 'lang', OC_L10N::findLanguage() );
 $languageCodes=OC_L10N::findAvailableLanguages();
 sort ($languageCodes);
 
 //put the current language in the front
-unset($languageCodes[array_search($lang,$languageCodes)]);
-array_unshift($languageCodes,$lang);
+unset($languageCodes[array_search($lang, $languageCodes)]);
+array_unshift($languageCodes, $lang);
 
 $languageNames=include 'languageCodes.php';
 $languages=array();
-foreach($languageCodes as $lang){
-	$l=OC_L10N::get('settings',$lang);
-	if(substr($l->t('__language_name__'),0,1)!='_'){//first check if the language name is in the translation file
+foreach($languageCodes as $lang) {
+	$l=OC_L10N::get('settings', $lang);
+	if(substr($l->t('__language_name__'), 0, 1)!='_') {//first check if the language name is in the translation file
 		$languages[]=array('code'=>$lang,'name'=>$l->t('__language_name__'));
-	}elseif(isset($languageNames[$lang])){
+	}elseif(isset($languageNames[$lang])) {
 		$languages[]=array('code'=>$lang,'name'=>$languageNames[$lang]);
 	}else{//fallback to language code
 		$languages[]=array('code'=>$lang,'name'=>$lang);
@@ -54,15 +54,15 @@ foreach($languageCodes as $lang){
 
 // Return template
 $tmpl = new OC_Template( 'settings', 'personal', 'user');
-$tmpl->assign('usage',OC_Helper::humanFileSize($used));
-$tmpl->assign('total_space',OC_Helper::humanFileSize($total));
-$tmpl->assign('usage_relative',$relative);
-$tmpl->assign('email',$email);
-$tmpl->assign('languages',$languages);
+$tmpl->assign('usage', OC_Helper::humanFileSize($used));
+$tmpl->assign('total_space', OC_Helper::humanFileSize($total));
+$tmpl->assign('usage_relative', $relative);
+$tmpl->assign('email', $email);
+$tmpl->assign('languages', $languages);
 
 $forms=OC_App::getForms('personal');
-$tmpl->assign('forms',array());
-foreach($forms as $form){
-	$tmpl->append('forms',$form);
+$tmpl->assign('forms', array());
+foreach($forms as $form) {
+	$tmpl->append('forms', $form);
 }
 $tmpl->printPage();
diff --git a/settings/settings.php b/settings/settings.php
index a49de85520bf5ef6302427cf3a87e0cf26001f43..24099ef574227c2cc4605914b8b348abe8a682e9 100644
--- a/settings/settings.php
+++ b/settings/settings.php
@@ -5,7 +5,7 @@
  * See the COPYING-README file.
  */
 
-require_once('../lib/base.php');
+require_once '../lib/base.php';
 OC_Util::checkLoggedIn();
 
 OC_Util::addStyle( 'settings', 'settings' );
@@ -13,8 +13,8 @@ OC_App::setActiveNavigationEntry( 'settings' );
 
 $tmpl = new OC_Template( 'settings', 'settings', 'user');
 $forms=OC_App::getForms('settings');
-$tmpl->assign('forms',array());
-foreach($forms as $form){
-	$tmpl->append('forms',$form);
+$tmpl->assign('forms', array());
+foreach($forms as $form) {
+	$tmpl->append('forms', $form);
 }
 $tmpl->printPage();
diff --git a/settings/templates/admin.php b/settings/templates/admin.php
old mode 100755
new mode 100644
index b701b0e839a7e08493d8b3c29c00b8088faf5c6d..5fa9e26c9c7df1c154e39f30a544f4022b2181d6
--- a/settings/templates/admin.php
+++ b/settings/templates/admin.php
@@ -13,7 +13,9 @@ if(!$_['htaccessworking']) {
 <fieldset class="personalblock">
 	<legend><strong><?php echo $l->t('Security Warning');?></strong></legend>
 
-	<span class="securitywarning">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.</span>
+	<span class="securitywarning">
+        <?php echo $l->t('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.'); ?>
+    </span>
 	
 </fieldset>	
 <?php	
@@ -21,17 +23,17 @@ if(!$_['htaccessworking']) {
 ?>
 
 
-<?php foreach($_['forms'] as $form){
+<?php foreach($_['forms'] as $form) {
 	echo $form;
 };?>
 
 <fieldset class="personalblock" id="backgroundjobs">
 	<legend><strong><?php echo $l->t('Cron');?></strong></legend>
-	<input type="radio" name="mode" value="ajax" id="backgroundjobs_ajax" <?php if( $_['backgroundjobs_mode'] == "ajax" ){ echo 'checked="checked"'; } ?>>
+	<input type="radio" name="mode" value="ajax" id="backgroundjobs_ajax" <?php if( $_['backgroundjobs_mode'] == "ajax" ) { echo 'checked="checked"'; } ?>>
 	<label for="backgroundjobs_ajax" title="<?php echo $l->t("execute one task with each page loaded"); ?>">AJAX</label><br />
-	<input type="radio" name="mode" value="webcron" id="backgroundjobs_webcron" <?php if( $_['backgroundjobs_mode'] == "webcron" ){ echo 'checked="checked"'; } ?>>
+	<input type="radio" name="mode" value="webcron" id="backgroundjobs_webcron" <?php if( $_['backgroundjobs_mode'] == "webcron" ) { echo 'checked="checked"'; } ?>>
 	<label for="backgroundjobs_webcron" title="<?php echo $l->t("cron.php is registered at a webcron service"); ?>">Webcron</label><br />
-	<input type="radio" name="mode" value="cron" id="backgroundjobs_cron" <?php if( $_['backgroundjobs_mode'] == "cron" ){ echo 'checked="checked"'; } ?>>
+	<input type="radio" name="mode" value="cron" id="backgroundjobs_cron" <?php if( $_['backgroundjobs_mode'] == "cron" ) { echo 'checked="checked"'; } ?>>
 	<label for="backgroundjobs_cron" title="<?php echo $l->t("use systems cron service"); ?>">Cron</label><br />
 </fieldset>
 
@@ -100,6 +102,6 @@ if(!$_['htaccessworking']) {
 
 <p class="personalblock">
 	<strong>ownCloud</strong> <?php echo(OC_Util::getVersionString()); ?> <?php echo(OC_Util::getEditionString()); ?> (<?php echo(OC_Updater::ShowUpdatingHint()); ?>)<br />
-	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>.
+    <?php echo $l->t('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>.'); ?>
 </p>
 
diff --git a/settings/templates/apps.php b/settings/templates/apps.php
index 83d63b6b41780855f4cb4c25892a8763ca10fe47..30f919ac753ff6dd9afdc43cf4c686316bc98687 100644
--- a/settings/templates/apps.php
+++ b/settings/templates/apps.php
@@ -14,9 +14,9 @@
 	<li <?php if($app['active']) echo 'class="active"'?> data-id="<?php echo $app['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>
-		<span class="hidden">
-			<?php OC_JSON::encodedPrint($app,false) ?>
-		</span>
+		<script type="application/javascript">
+			appData_<?php echo $app['id'] ?>=<?php OC_JSON::encodedPrint($app,false) ?>;
+		</script>
 		<?php  if(!$app['internal']) echo '<small class="externalapp list">3rd party</small>' ?>
 	</li>
 	<?php endforeach;?>
@@ -27,7 +27,7 @@
 	<p class="description"></p>
 	<img src="" class="preview" />
 	<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"><span class="licence"></span><?php echo $l->t('-licensed');?> <?php echo $l->t('by');?> <span class="author"></span></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" />
 	</div>
 </div>
diff --git a/settings/templates/help.php b/settings/templates/help.php
index a53ec76d681a28fb805cb0987728873e4c9e404f..b2a78ff851203c254e6eafda799fdd9c45053ff9 100644
--- a/settings/templates/help.php
+++ b/settings/templates/help.php
@@ -1,4 +1,5 @@
-<?php /**
+<?php 
+/**
  * 2012 Frank Karlitschek frank@owncloud.org
  * This file is licensed under the Affero General Public License version 3 or later.
  * See the COPYING-README file.
@@ -10,7 +11,7 @@
 	<a class="button newquestion" href="http://apps.owncloud.com/knowledgebase/editquestion.php?action=new" target="_blank"><?php echo $l->t( 'Ask a question' ); ?></a>
 	<?php
 		$url=OC_Helper::linkTo( "settings", "help.php" ).'?page=';
-		$pageNavi=OC_Util::getPageNavi($_['pagecount'],$_['page'],$url);
+		$pageNavi=OC_Util::getPageNavi($_['pagecount'], $_['page'], $url);
 		if($pageNavi)
 		{
 			$pageNavi->printPage();
@@ -25,7 +26,7 @@
 <?php else:?>
 	<?php foreach($_["kbe"] as $kb): ?>
 	<div class="helpblock">
-		<?php if($kb["preview1"] <> "") { echo('<img class="preview" src="'.$kb["preview1"].'" />'); } ?>
+		<?php if($kb["preview1"] <> "") echo('<img class="preview" src="'.$kb["preview1"].'" />'); ?>
 		<?php if($kb['detailpage']<>'') echo('<p><a target="_blank" href="'.$kb['detailpage'].'"><strong>'.$kb["name"].'</strong></a></p>');?>
 		<p><?php echo $kb['description'];?></p>
 		<?php if($kb['answer']<>'') echo('<p><strong>'.$l->t('Answer').':</strong><p>'.$kb['answer'].'</p>');?>
diff --git a/settings/templates/personal.php b/settings/templates/personal.php
index ee40120d724b21a9da8dd31370097040c9917fed..4503f3d50b413b8571e3b2adf26f2add710c8e1e 100644
--- a/settings/templates/personal.php
+++ b/settings/templates/personal.php
@@ -51,7 +51,7 @@
 	<em><?php echo $l->t('use this address to connect to your ownCloud in your file manager');?></em>
 </p>
 
-<?php foreach($_['forms'] as $form){
+<?php foreach($_['forms'] as $form) {
 	echo $form;
 };?>
 
diff --git a/settings/templates/settings.php b/settings/templates/settings.php
index 98acd541e36648a7960da094edfbffedf3d71d99..12368a1cdb692ab027bfd52d71e68036154b2dce 100644
--- a/settings/templates/settings.php
+++ b/settings/templates/settings.php
@@ -4,6 +4,6 @@
  * See the COPYING-README file.
  */?>
 
-<?php foreach($_['forms'] as $form){
+<?php foreach($_['forms'] as $form) {
 	echo $form;
 };?>
\ No newline at end of file
diff --git a/settings/templates/users.php b/settings/templates/users.php
index 295b7761cf3cb91df41c4fb96f4d56e907aebc3c..eef9b291357215c8a6887429d5d822af828002b0 100644
--- a/settings/templates/users.php
+++ b/settings/templates/users.php
@@ -17,7 +17,7 @@ $_['subadmingroups'] = array_flip($items);
 var isadmin = <?php echo $_['isadmin']?'true':'false'; ?>;
 </script>
 <div id="controls">
-	<form id="newuser">
+	<form id="newuser" autocomplete="off">
 		<input id="newusername" type="text" placeholder="<?php echo $l->t('Name')?>" /> <input
 			type="password" id="newuserpassword"
 			placeholder="<?php echo $l->t('Password')?>" /> <select
@@ -45,7 +45,7 @@ var isadmin = <?php echo $_['isadmin']?'true':'false'; ?>;
 				</option>
 				<?php endif;?>
 				<?php endforeach;?>
-				<?php if(array_search($_['default_quota'],$_['quota_preset'])===false):?>
+				<?php if(array_search($_['default_quota'], $_['quota_preset'])===false):?>
 				<option selected="selected"
 					value='<?php echo $_['default_quota'];?>'>
 					<?php echo $_['default_quota'];?>
@@ -70,7 +70,7 @@ var isadmin = <?php echo $_['isadmin']?'true':'false'; ?>;
 
 <div id='notification'></div>
 
-<table data-groups="<?php echo implode(', ',$allGroups);?>">
+<table data-groups="<?php echo implode(', ', $allGroups);?>">
 	<thead>
 		<tr>
 			<th id='headerName'><?php echo $l->t('Name')?></th>
@@ -88,7 +88,7 @@ var isadmin = <?php echo $_['isadmin']?'true':'false'; ?>;
 		<tr data-uid="<?php echo $user["name"] ?>">
 			<td class="name"><?php echo $user["name"]; ?></td>
 			<td class="password"><span>●●●●●●●</span> <img class="svg action"
-				src="<?php echo image_path('core','actions/rename.svg')?>"
+				src="<?php echo image_path('core', 'actions/rename.svg')?>"
 				alt="set new password" title="set new password"/>
 			</td>
 			<td class="groups"><select
@@ -129,7 +129,7 @@ var isadmin = <?php echo $_['isadmin']?'true':'false'; ?>;
 							<?php echo $preset;?>
 						</option>
 						<?php endforeach;?>
-						<?php if(array_search($user['quota'],$_['quota_preset'])===false):?>
+						<?php if(array_search($user['quota'], $_['quota_preset'])===false):?>
 						<option selected="selected" value='<?php echo $user['quota'];?>'>
 							<?php echo $user['quota'];?>
 						</option>
@@ -144,7 +144,7 @@ var isadmin = <?php echo $_['isadmin']?'true':'false'; ?>;
 			<td class="remove">
 				<?php if($user['name']!=OC_User::getUser()):?> 
 					<a href="#" class="action delete" original-title="<?php echo $l->t('Delete')?>">
-						<img src="<?php echo image_path('core','actions/delete.svg') ?>" />
+						<img src="<?php echo image_path('core', 'actions/delete.svg') ?>" />
 					</a>
 				<?php endif;?>
 			</td>
diff --git a/settings/users.php b/settings/users.php
index b04f0c99e8fd97930be129016b9c57d0a6093d21..e76505cc78d6e9d44206f9b7a6cfc0000a985610 100644
--- a/settings/users.php
+++ b/settings/users.php
@@ -5,7 +5,7 @@
  * See the COPYING-README file.
  */
 
-require_once('../lib/base.php');
+require_once '../lib/base.php';
 OC_Util::checkSubAdminUser();
 
 // We have some javascript foo!
@@ -18,8 +18,8 @@ OC_App::setActiveNavigationEntry( 'core_users' );
 $users = array();
 $groups = array();
 
-$isadmin = OC_Group::inGroup(OC_User::getUser(),'admin')?true:false;
-if($isadmin){
+$isadmin = OC_Group::inGroup(OC_User::getUser(), 'admin')?true:false;
+if($isadmin) {
 	$accessiblegroups = OC_Group::getGroups();
 	$accessibleusers = OC_User::getUsers('', 30);
 	$subadmins = OC_SubAdmin::getAllSubAdmins();
@@ -29,21 +29,25 @@ if($isadmin){
 	$subadmins = false;
 }
 
-foreach($accessibleusers as $i){
-	$users[] = array( "name" => $i, "groups" => join( ", ", /*array_intersect(*/OC_Group::getUserGroups($i)/*, OC_SubAdmin::getSubAdminsGroups(OC_User::getUser()))*/),'quota'=>OC_Preferences::getValue($i,'files','quota','default'),'subadmin'=>implode(', ',OC_SubAdmin::getSubAdminsGroups($i)));
+foreach($accessibleusers as $i) {
+	$users[] = array(
+		"name" => $i, 
+		"groups" => join( ", ", /*array_intersect(*/OC_Group::getUserGroups($i)/*, OC_SubAdmin::getSubAdminsGroups(OC_User::getUser()))*/),
+		'quota'=>OC_Preferences::getValue($i, 'files', 'quota', 'default'),
+		'subadmin'=>implode(', ', OC_SubAdmin::getSubAdminsGroups($i)));
 }
 
-foreach( $accessiblegroups as $i ){
+foreach( $accessiblegroups as $i ) {
 	// Do some more work here soon
 	$groups[] = array( "name" => $i );
 }
-$quotaPreset=OC_Appconfig::getValue('files','quota_preset','default,none,1 GB, 5 GB, 10 GB');
+$quotaPreset=OC_Appconfig::getValue('files', 'quota_preset', 'default,none,1 GB, 5 GB, 10 GB');
 $quotaPreset=explode(',',$quotaPreset);
-foreach($quotaPreset as &$preset){
+foreach($quotaPreset as &$preset) {
 	$preset=trim($preset);
 }
 
-$defaultQuota=OC_Appconfig::getValue('files','default_quota','none');
+$defaultQuota=OC_Appconfig::getValue('files', 'default_quota', 'none');
 
 $tmpl = new OC_Template( "settings", "users", "user" );
 $tmpl->assign( "users", $users );
diff --git a/status.php b/status.php
index f314a3a1c6f43c4ae387f1e265fc5a6a63f9864b..26731153577da3b892e7714908cf31ac45ada1d9 100644
--- a/status.php
+++ b/status.php
@@ -23,9 +23,13 @@
 
 $RUNTIME_NOAPPS = TRUE; //no apps, yet
 
-require_once('lib/base.php');
+require_once 'lib/base.php';
 
 if(OC_Config::getValue('installed')==1) $installed='true'; else $installed='false';
-$values=array('installed'=>$installed,'version'=>implode('.',OC_Util::getVersion()),'versionstring'=>OC_Util::getVersionString(),'edition'=>OC_Util::getEditionString());
+$values=array(
+	'installed'=>$installed,
+	'version'=>implode('.', OC_Util::getVersion()),
+	'versionstring'=>OC_Util::getVersionString(),
+	'edition'=>OC_Util::getEditionString());
 
 echo(json_encode($values));
diff --git a/tests/index.php b/tests/index.php
index 0be27ee3fd710d8fac3eb00df0b9200402273a65..82a61c281fd7763673c47e406c3cd6886430bb4f 100644
--- a/tests/index.php
+++ b/tests/index.php
@@ -20,6 +20,8 @@
 *
 */
 
+//to run only specific tests, use the test parameter to specify an app or 'lib'. e.g. http://localhost/owncloud/tests/?test=user_external
+
 require_once '../lib/base.php';
 require_once 'simpletest/unit_tester.php';
 require_once 'simpletest/mock_objects.php';
@@ -29,14 +31,14 @@ require_once 'simpletest/default_reporter.php';
 $testSuiteName="ownCloud Unit Test Suite";
 
 // prepare the reporter
-if(OC::$CLI){
+if(OC::$CLI) {
 	$reporter=new TextReporter;
 	$test=isset($_SERVER['argv'][1])?$_SERVER['argv'][1]:false;
-	if($test=='xml'){
+	if($test=='xml') {
 		$reporter= new XmlReporter;
 		$test=false;
 
-		if(isset($_SERVER['argv'][2])){
+		if(isset($_SERVER['argv'][2])) {
 			$testSuiteName=$testSuiteName." (".$_SERVER['argv'][2].")";
 		}
 	}
@@ -49,7 +51,7 @@ if(OC::$CLI){
 $testSuite=new TestSuite($testSuiteName);
 
 //load core test cases
-loadTests(dirname(__FILE__), $testSuite, $test);
+loadTests(dirname(__FILE__), $testSuite, $test, 'lib');
 
 //load app test cases
 
@@ -58,28 +60,30 @@ loadTests(dirname(__FILE__), $testSuite, $test);
 //
 
 $apps=OC_App::getEnabledApps();
-foreach($apps as $app){
-	if(is_dir(OC::$SERVERROOT.'/apps/'.$app.'/tests')){
-		loadTests(OC::$SERVERROOT.'/apps/'.$app.'/tests', $testSuite, $test);
+foreach($apps as $app) {
+	$testDir=OC_App::getAppPath($app).'/tests';
+	if(is_dir($testDir)) {
+		loadTests($testDir, $testSuite, $test, $app);
 	}
 }
 
 // run the suite
-if($testSuite->getSize()>0){
+if($testSuite->getSize()>0) {
 	$testSuite->run($reporter);
 }
 
 // helper below
-function loadTests($dir,$testSuite, $test){
-	if($dh=opendir($dir)){
-		while($name=readdir($dh)){
-			if($name[0]!='.'){//no hidden files, '.' or '..'
+function loadTests($dir,$testSuite, $test, $app) {
+	$root=($app=='lib')?OC::$SERVERROOT.'/tests/lib/':OC_App::getAppPath($app).'/tests/';
+	if($dh=opendir($dir)) {
+		while($name=readdir($dh)) {
+			if($name[0]!='.') {//no hidden files, '.' or '..'
 				$file=$dir.'/'.$name;
-				if(is_dir($file)){
-					loadTests($file, $testSuite, $test);
-				}elseif(substr($file,-4)=='.php' and $file!=__FILE__){
-					$name=getTestName($file);
-					if($test===false or $test==$name or substr($name,0,strlen($test))==$test){
+				if(is_dir($file)) {
+					loadTests($file, $testSuite, $test, $app);
+				}elseif(substr($file,-4)=='.php' and $file!=__FILE__) {
+					$name=$app.'/'.getTestName($file,$root);
+					if($test===false or $test==$name or substr($name,0,strlen($test))==$test) {
 						$extractor = new SimpleFileLoader();
 						$loadedSuite=$extractor->load($file);
 						if ($loadedSuite->getSize() > 0)
@@ -91,8 +95,8 @@ function loadTests($dir,$testSuite, $test){
 	}
 }
 
-function getTestName($file){
+function getTestName($file,$root) {
 // 	//TODO: get better test names
-	$file=substr($file,strlen(OC::$SERVERROOT));
+	$file=substr($file,strlen($root));
 	return substr($file,0,-4);//strip .php
 }
diff --git a/tests/lib/archive.php b/tests/lib/archive.php
index 1711be58e01ab0527d3964d4314bd27a22bb9d37..565c314cb8c948f80cf07e23b74516b56f445aef 100644
--- a/tests/lib/archive.php
+++ b/tests/lib/archive.php
@@ -23,12 +23,12 @@ abstract class Test_Archive extends UnitTestCase {
 	 */
 	abstract protected function getNew();
 	
-	public function testGetFiles(){
+	public function testGetFiles() {
 		$this->instance=$this->getExisting();
 		$allFiles=$this->instance->getFiles();
 		$expected=array('lorem.txt','logo-wide.png','dir/','dir/lorem.txt');
 		$this->assertEqual(4,count($allFiles),'only found '.count($allFiles).' out of 4 expected files');
-		foreach($expected as $file){
+		foreach($expected as $file) {
 			$this->assertNotIdentical(false,array_search($file,$allFiles),'cant find '.$file.' in archive');
 			$this->assertTrue($this->instance->fileExists($file),'file '.$file.' does not exist in archive');
 		}
@@ -37,19 +37,19 @@ abstract class Test_Archive extends UnitTestCase {
 		$rootContent=$this->instance->getFolder('');
 		$expected=array('lorem.txt','logo-wide.png','dir/');
 		$this->assertEqual(3,count($rootContent));
-		foreach($expected as $file){
+		foreach($expected as $file) {
 			$this->assertNotIdentical(false,array_search($file,$rootContent),'cant find '.$file.' in archive');
 		}
 
 		$dirContent=$this->instance->getFolder('dir/');
 		$expected=array('lorem.txt');
 		$this->assertEqual(1,count($dirContent));
-		foreach($expected as $file){
+		foreach($expected as $file) {
 			$this->assertNotIdentical(false,array_search($file,$dirContent),'cant find '.$file.' in archive');
 		}
 	}
 	
-	public function testContent(){
+	public function testContent() {
 		$this->instance=$this->getExisting();
 		$dir=OC::$SERVERROOT.'/apps/files_archive/tests/data';
 		$textFile=$dir.'/lorem.txt';
@@ -60,7 +60,7 @@ abstract class Test_Archive extends UnitTestCase {
 		$this->assertEqual(file_get_contents($textFile),file_get_contents($tmpFile));
 	}
 
-	public function testWrite(){
+	public function testWrite() {
 		$dir=OC::$SERVERROOT.'/apps/files_archive/tests/data';
 		$textFile=$dir.'/lorem.txt';
 		$this->instance=$this->getNew();
@@ -75,7 +75,7 @@ abstract class Test_Archive extends UnitTestCase {
 		$this->assertEqual('foobar',$this->instance->getFile('lorem.txt'));
 	}
 
-	public function testReadStream(){
+	public function testReadStream() {
 		$dir=OC::$SERVERROOT.'/apps/files_archive/tests/data';
 		$this->instance=$this->getExisting();
 		$fh=$this->instance->getStream('lorem.txt','r');
@@ -84,7 +84,7 @@ abstract class Test_Archive extends UnitTestCase {
 		fclose($fh);
 		$this->assertEqual(file_get_contents($dir.'/lorem.txt'),$content);
 	}
-	public function testWriteStream(){
+	public function testWriteStream() {
 		$dir=OC::$SERVERROOT.'/apps/files_archive/tests/data';
 		$this->instance=$this->getNew();
 		$fh=$this->instance->getStream('lorem.txt','w');
@@ -95,7 +95,7 @@ abstract class Test_Archive extends UnitTestCase {
 		$this->assertTrue($this->instance->fileExists('lorem.txt'));
 		$this->assertEqual(file_get_contents($dir.'/lorem.txt'),$this->instance->getFile('lorem.txt'));
 	}
-	public function testFolder(){
+	public function testFolder() {
 		$this->instance=$this->getNew();
 		$this->assertFalse($this->instance->fileExists('/test'));
 		$this->assertFalse($this->instance->fileExists('/test/'));
@@ -106,7 +106,7 @@ abstract class Test_Archive extends UnitTestCase {
 		$this->assertFalse($this->instance->fileExists('/test'));
 		$this->assertFalse($this->instance->fileExists('/test/'));
 	}
-	public function testExtract(){
+	public function testExtract() {
 		$dir=OC::$SERVERROOT.'/apps/files_archive/tests/data';
 		$this->instance=$this->getExisting();
 		$tmpDir=OCP\Files::tmpFolder();
@@ -117,7 +117,7 @@ abstract class Test_Archive extends UnitTestCase {
 		$this->assertEqual(file_get_contents($dir.'/lorem.txt'),file_get_contents($tmpDir.'lorem.txt'));
 		OCP\Files::rmdirr($tmpDir);
 	}
-	public function testMoveRemove(){
+	public function testMoveRemove() {
 		$dir=OC::$SERVERROOT.'/apps/files_archive/tests/data';
 		$textFile=$dir.'/lorem.txt';
 		$this->instance=$this->getNew();
@@ -130,7 +130,7 @@ abstract class Test_Archive extends UnitTestCase {
 		$this->instance->remove('target.txt');
 		$this->assertFalse($this->instance->fileExists('target.txt'));
 	}
-	public function testRecursive(){
+	public function testRecursive() {
 		$dir=OC::$SERVERROOT.'/apps/files_archive/tests/data';
 		$this->instance=$this->getNew();
 		$this->instance->addRecursive('/dir',$dir);
diff --git a/tests/lib/archive/tar.php b/tests/lib/archive/tar.php
index c138a51a6518829b38a934757c8107ada73f089b..2595b7cb1952ad7eff14727014e832cc054d3569 100644
--- a/tests/lib/archive/tar.php
+++ b/tests/lib/archive/tar.php
@@ -6,16 +6,16 @@
  * See the COPYING-README file.
  */
 
-require_once('archive.php');
+require_once 'archive.php';
 
-if(is_dir(OC::$SERVERROOT.'/apps/files_archive/tests/data')){
+if(is_dir(OC::$SERVERROOT.'/apps/files_archive/tests/data')) {
 	class Test_Archive_TAR extends Test_Archive{
-		protected function getExisting(){
+		protected function getExisting() {
 			$dir=OC::$SERVERROOT.'/apps/files_archive/tests/data';
 			return new OC_Archive_TAR($dir.'/data.tar.gz');
 		}
 
-		protected function getNew(){
+		protected function getNew() {
 			return new OC_Archive_TAR(OCP\Files::tmpFile('.tar.gz'));
 		}
 	}
diff --git a/tests/lib/archive/zip.php b/tests/lib/archive/zip.php
index 615c9e3c7e23cb8ce184f6c3085eff0bc0093334..a7682e34180551854f8f98b51040992e73f66c86 100644
--- a/tests/lib/archive/zip.php
+++ b/tests/lib/archive/zip.php
@@ -6,16 +6,16 @@
  * See the COPYING-README file.
  */
 
-require_once('archive.php');
+require_once 'archive.php';
 
-if(is_dir(OC::$SERVERROOT.'/apps/files_archive/tests/data')){
+if(is_dir(OC::$SERVERROOT.'/apps/files_archive/tests/data')) {
 	class Test_Archive_ZIP extends Test_Archive{
-		protected function getExisting(){
+		protected function getExisting() {
 			$dir=OC::$SERVERROOT.'/apps/files_archive/tests/data';
 			return new OC_Archive_ZIP($dir.'/data.zip');
 		}
 
-		protected function getNew(){
+		protected function getNew() {
 			return new OC_Archive_ZIP(OCP\Files::tmpFile('.zip'));
 		}
 	}
diff --git a/tests/lib/cache.php b/tests/lib/cache.php
index 511999be956835a3dd0af684138982715bcab4f5..9ada0accc21265fb92bc3704a52d7fdb1f50761f 100644
--- a/tests/lib/cache.php
+++ b/tests/lib/cache.php
@@ -12,11 +12,11 @@ abstract class Test_Cache extends UnitTestCase {
 	 */
 	protected $instance;
 
-	public function tearDown(){
+	public function tearDown() {
 		$this->instance->clear();
 	}
 
-	function testSimple(){
+	function testSimple() {
 		$this->assertNull($this->instance->get('value1'));
 		$this->assertFalse($this->instance->hasKey('value1'));
 		
@@ -45,7 +45,7 @@ abstract class Test_Cache extends UnitTestCase {
 		$this->assertFalse($this->instance->hasKey('value1'));
 	}
 
-	function testClear(){
+	function testClear() {
 		$value='ipsum lorum';
 		$this->instance->set('1_value1',$value);
 		$this->instance->set('1_value2',$value);
@@ -65,7 +65,7 @@ abstract class Test_Cache extends UnitTestCase {
 		$this->assertFalse($this->instance->hasKey('3_value1'));
 	}
 
-	function testTTL(){
+	function testTTL() {
 		$value='foobar';
 		$this->instance->set('value1',$value,1);
 		$value2='foobar';
diff --git a/tests/lib/cache/apc.php b/tests/lib/cache/apc.php
index ab8eb1886648b68ba3b8558051c8633cd6215322..34ea968cd546417d56b33056816bed5bb80a907c 100644
--- a/tests/lib/cache/apc.php
+++ b/tests/lib/cache/apc.php
@@ -25,11 +25,11 @@ class Test_Cache_APC extends Test_Cache {
 		$this->skipUnless(function_exists('apc_store'));
 	}
 
-	public function setUp(){
+	public function setUp() {
 		$this->instance=new OC_Cache_APC();
 	}
 
-	function testTTL(){
+	function testTTL() {
 		// ttl doesn't work correctly in the same request
 		// see https://bugs.php.net/bug.php?id=58084
 	}
diff --git a/tests/lib/cache/file.php b/tests/lib/cache/file.php
index 28778efb68cbf94608cd8e8424011885630cfc57..00be005d08d307de576237123ab2857390996782 100644
--- a/tests/lib/cache/file.php
+++ b/tests/lib/cache/file.php
@@ -27,13 +27,13 @@ class Test_Cache_File extends Test_Cache {
 		//$this->skipUnless(OC_User::isLoggedIn());
 	}
 	
-	public function setUp(){
+	public function setUp() {
 		//clear all proxies and hooks so we can do clean testing
 		OC_FileProxy::clearProxies();
 		OC_Hook::clear('OC_Filesystem');
 		
 		//enable only the encryption hook if needed
-		if(OC_App::isEnabled('files_encryption')){
+		if(OC_App::isEnabled('files_encryption')) {
 			OC_FileProxy::register(new OC_FileProxy_Encryption());
 		}
 		
@@ -57,7 +57,7 @@ class Test_Cache_File extends Test_Cache {
 		$this->instance=new OC_Cache_File();
 	}
 
-	public function tearDown(){
+	public function tearDown() {
 		OC_User::setUserId($this->user);
 	}
 }
diff --git a/tests/lib/cache/xcache.php b/tests/lib/cache/xcache.php
index cc2077076cee446f13a1d6d9879a9ea9e546671a..85cc2d8b3c6126f826843d24bde316c4b289bc08 100644
--- a/tests/lib/cache/xcache.php
+++ b/tests/lib/cache/xcache.php
@@ -25,11 +25,11 @@ class Test_Cache_XCache extends Test_Cache {
 		$this->skipUnless(function_exists('xcache_get'));
 	}
 
-	public function setUp(){
+	public function setUp() {
 		$this->instance=new OC_Cache_XCache();
 	}
 
-	function testTTL(){
+	function testTTL() {
 		// ttl doesn't work correctly in the same request
 	}
 }
diff --git a/tests/lib/filestorage.php b/tests/lib/filestorage.php
index 0a8715600d56138226e644eef3dc54118c5b9fb3..3f7bb7b62dce80f3504b28f2737b67650f508781 100644
--- a/tests/lib/filestorage.php
+++ b/tests/lib/filestorage.php
@@ -29,7 +29,7 @@ abstract class Test_FileStorage extends UnitTestCase {
 	/**
 	 * the root folder of the storage should always exist, be readable and be recognized as a directory
 	 */
-	public function testRoot(){
+	public function testRoot() {
 		$this->assertTrue($this->instance->file_exists('/'),'Root folder does not exist');
 		$this->assertTrue($this->instance->isReadable('/'),'Root folder is not readable');
 		$this->assertTrue($this->instance->is_dir('/'),'Root folder is not a directory');
@@ -40,7 +40,7 @@ abstract class Test_FileStorage extends UnitTestCase {
 		$this->assertTrue($this->instance->isUpdatable('/'),'Root folder is not writable');
 	}
 	
-	public function testDirectories(){
+	public function testDirectories() {
 		$this->assertFalse($this->instance->file_exists('/folder'));
 		
 		$this->assertTrue($this->instance->mkdir('/folder'));
@@ -55,8 +55,8 @@ abstract class Test_FileStorage extends UnitTestCase {
 		
 		$dh=$this->instance->opendir('/');
 		$content=array();
-		while($file=readdir($dh)){
-			if($file!='.' and $file!='..'){
+		while($file=readdir($dh)) {
+			if($file!='.' and $file!='..') {
 				$content[]=$file;
 			}
 		}
@@ -71,8 +71,8 @@ abstract class Test_FileStorage extends UnitTestCase {
 
 		$dh=$this->instance->opendir('/');
 		$content=array();
-		while($file=readdir($dh)){
-			if($file!='.' and $file!='..'){
+		while($file=readdir($dh)) {
+			if($file!='.' and $file!='..') {
 				$content[]=$file;
 			}
 		}
@@ -82,7 +82,7 @@ abstract class Test_FileStorage extends UnitTestCase {
 	/**
 	 * test the various uses of file_get_contents and file_put_contents
 	 */
-	public function testGetPutContents(){
+	public function testGetPutContents() {
 		$sourceFile=OC::$SERVERROOT.'/tests/data/lorem.txt';
 		$sourceText=file_get_contents($sourceFile);
 		
@@ -99,7 +99,7 @@ abstract class Test_FileStorage extends UnitTestCase {
 	/**
 	 * test various known mimetypes
 	 */
-	public function testMimeType(){
+	public function testMimeType() {
 		$this->assertEqual('httpd/unix-directory',$this->instance->getMimeType('/'));
 		$this->assertEqual(false,$this->instance->getMimeType('/non/existing/file'));
 		
@@ -116,7 +116,7 @@ abstract class Test_FileStorage extends UnitTestCase {
 		$this->assertEqual('image/svg+xml',$this->instance->getMimeType('/logo-wide.svg'));
 	}
 	
-	public function testCopyAndMove(){
+	public function testCopyAndMove() {
 		$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');
@@ -129,7 +129,7 @@ abstract class Test_FileStorage extends UnitTestCase {
 		$this->assertEqual(file_get_contents($textFile),$this->instance->file_get_contents('/target.txt'));
 	}
 	
-	public function testLocal(){
+	public function testLocal() {
 		$textFile=OC::$SERVERROOT.'/tests/data/lorem.txt';
 		$this->instance->file_put_contents('/lorem.txt',file_get_contents($textFile));
 		$localFile=$this->instance->getLocalFile('/lorem.txt');
@@ -150,7 +150,7 @@ abstract class Test_FileStorage extends UnitTestCase {
 		$this->assertEqual(file_get_contents($localFolder.'/recursive/file.txt'),'foo');
 	}
 
-	public function testStat(){
+	public function testStat() {
 		$textFile=OC::$SERVERROOT.'/tests/data/lorem.txt';
 		$ctimeStart=time();
 		$this->instance->file_put_contents('/lorem.txt',file_get_contents($textFile));
@@ -158,7 +158,7 @@ abstract class Test_FileStorage extends UnitTestCase {
 		$ctimeEnd=time();
 		$cTime=$this->instance->filectime('/lorem.txt');
 		$mTime=$this->instance->filemtime('/lorem.txt');
-		if($cTime!=-1){//not everything can support ctime
+		if($cTime!=-1) {//not everything can support ctime
 			$this->assertTrue(($ctimeStart-1)<=$cTime);
 			$this->assertTrue($cTime<=($ctimeEnd+1));
 		}
@@ -187,7 +187,7 @@ abstract class Test_FileStorage extends UnitTestCase {
 
 		$this->assertTrue($this->instance->hasUpdated('/lorem.txt',$mtimeStart-1));
 		
-		if($this->instance->touch('/lorem.txt',100)!==false){
+		if($this->instance->touch('/lorem.txt',100)!==false) {
 			$mTime=$this->instance->filemtime('/lorem.txt');
 			$this->assertEqual($mTime,100);
 		}
@@ -207,7 +207,7 @@ abstract class Test_FileStorage extends UnitTestCase {
 		$this->assertTrue($this->instance->hasUpdated('/',$mtimeStart-1));
 	}
 
-	public function testSearch(){
+	public function testSearch() {
 		$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';
diff --git a/tests/lib/filestorage/commontest.php b/tests/lib/filestorage/commontest.php
index ab5375ec2b0d078aa7c8338d1d36db3d04279ab6..89e83589e5db2ee8851b2ed5b713f2946c976134 100644
--- a/tests/lib/filestorage/commontest.php
+++ b/tests/lib/filestorage/commontest.php
@@ -25,15 +25,15 @@ class Test_Filestorage_CommonTest extends Test_FileStorage {
 	 * @var string tmpDir
 	 */
 	private $tmpDir;
-	public function setUp(){
+	public function setUp() {
 		$this->tmpDir=get_temp_dir().'/filestoragecommon';
-		if(!file_exists($this->tmpDir)){
+		if(!file_exists($this->tmpDir)) {
 			mkdir($this->tmpDir);
 		}
 		$this->instance=new OC_Filestorage_CommonTest(array('datadir'=>$this->tmpDir));
 	}
 
-	public function tearDown(){
+	public function tearDown() {
 		OC_Helper::rmdirr($this->tmpDir);
 	}
 }
diff --git a/tests/lib/filestorage/local.php b/tests/lib/filestorage/local.php
index 692f05f9fca9d927f94a9c61a53f5b27117c12fb..f68fb69b97fe4c0b3c75e3e6e2220b1f97b97834 100644
--- a/tests/lib/filestorage/local.php
+++ b/tests/lib/filestorage/local.php
@@ -25,12 +25,12 @@ class Test_Filestorage_Local extends Test_FileStorage {
 	 * @var string tmpDir
 	 */
 	private $tmpDir;
-	public function setUp(){
+	public function setUp() {
 		$this->tmpDir=OC_Helper::tmpFolder();
 		$this->instance=new OC_Filestorage_Local(array('datadir'=>$this->tmpDir));
 	}
 
-	public function tearDown(){
+	public function tearDown() {
 		OC_Helper::rmdirr($this->tmpDir);
 	}
 }
diff --git a/tests/lib/filesystem.php b/tests/lib/filesystem.php
index 72af083578883fa174a5ac28ebaaa8810e6d9a73..1cfa35e305d82c550eb41ae4532223c97b489fd9 100644
--- a/tests/lib/filesystem.php
+++ b/tests/lib/filesystem.php
@@ -29,23 +29,23 @@ class Test_Filesystem extends UnitTestCase{
 	/**
 	 * @return array
 	 */
-	private function getStorageData(){
+	private function getStorageData() {
 		$dir=OC_Helper::tmpFolder();
 		$this->tmpDirs[]=$dir;
 		return array('datadir'=>$dir);
 	}
 
-	public function tearDown(){
-		foreach($this->tmpDirs as $dir){
+	public function tearDown() {
+		foreach($this->tmpDirs as $dir) {
 			OC_Helper::rmdirr($dir);
 		}
 	}
 	
-	public function setUp(){
+	public function setUp() {
 		OC_Filesystem::clearMounts();
 	}
 
-	public function testMount(){
+	public function testMount() {
 		OC_Filesystem::mount('OC_Filestorage_Local',self::getStorageData(),'/');
 		$this->assertEqual('/',OC_Filesystem::getMountPoint('/'));
 		$this->assertEqual('/',OC_Filesystem::getMountPoint('/some/folder'));
@@ -60,14 +60,14 @@ class Test_Filesystem extends UnitTestCase{
 		$this->assertEqual('folder',OC_Filesystem::getInternalPath('/some/folder'));
 	}
 
-	public function testNormalize(){
+	public function testNormalize() {
 		$this->assertEqual('/path',OC_Filesystem::normalizePath('/path/'));
 		$this->assertEqual('/path/',OC_Filesystem::normalizePath('/path/',false));
 		$this->assertEqual('/path',OC_Filesystem::normalizePath('path'));
 		$this->assertEqual('/path',OC_Filesystem::normalizePath('\path'));
 		$this->assertEqual('/foo/bar',OC_Filesystem::normalizePath('/foo//bar/'));
 		$this->assertEqual('/foo/bar',OC_Filesystem::normalizePath('/foo////bar'));
-		if(class_exists('Normalizer')){
+		if(class_exists('Normalizer')) {
 			$this->assertEqual("/foo/bar\xC3\xBC",OC_Filesystem::normalizePath("/foo/baru\xCC\x88"));
 		}
 	}
diff --git a/tests/lib/group.php b/tests/lib/group.php
index 922613211bc5064d69a825f1c0e457efbedd5f1a..0bea9a008868f2123d7932d2d712f863121d8a2b 100644
--- a/tests/lib/group.php
+++ b/tests/lib/group.php
@@ -21,11 +21,11 @@
 */
 
 class Test_Group extends UnitTestCase {
-	function setUp(){
+	function setUp() {
 		OC_Group::clearBackends();
 	}
 
-	function testSingleBackend(){
+	function testSingleBackend() {
 		OC_Group::useBackend(new OC_Group_Dummy());
 		
 		$group1=uniqid();
@@ -62,7 +62,7 @@ class Test_Group extends UnitTestCase {
 		$this->assertFalse(OC_Group::inGroup($user1,$group1));
 	}
 
-	function testMultiBackend(){
+	function testMultiBackend() {
 		$backend1=new OC_Group_Dummy();
 		$backend2=new OC_Group_Dummy();
 		OC_Group::useBackend($backend1);
diff --git a/tests/lib/group/backend.php b/tests/lib/group/backend.php
index 9405e90aabf9f86ff27b6efcf85eb2c109463ee9..61e008b6ca5e2ebddc9f03d094ba335cbf94e8fa 100644
--- a/tests/lib/group/backend.php
+++ b/tests/lib/group/backend.php
@@ -31,7 +31,7 @@ abstract class Test_Group_Backend extends UnitTestCase {
 	 * test cases can override this in order to clean up created groups
 	 * @return array
 	 */
-	public function getGroupName(){
+	public function getGroupName() {
 		return uniqid('test_');
 	}
 
@@ -40,11 +40,11 @@ abstract class Test_Group_Backend extends UnitTestCase {
 	 * test cases can override this in order to clean up created user
 	 * @return array
 	 */
-	public function getUserName(){
+	public function getUserName() {
 		return uniqid('test_');
 	}
 
-	public function testAddRemove(){
+	public function testAddRemove() {
 		//get the number of groups we start with, in case there are exising groups
 		$startCount=count($this->backend->getGroups());
 
@@ -68,7 +68,7 @@ abstract class Test_Group_Backend extends UnitTestCase {
 		$this->assertFalse((array_search($name2,$this->backend->getGroups())!==false));
 	}
 
-	public function testUser(){
+	public function testUser() {
 		$group1=$this->getGroupName();
 		$group2=$this->getGroupName();
 		$this->backend->createGroup($group1);
diff --git a/tests/lib/group/database.php b/tests/lib/group/database.php
index fb51bc8d8d9637b50b2da1c58aefda0f2c6422b0..5278c26f4dfdb7d053297780ac75e0c4c0f0c23f 100644
--- a/tests/lib/group/database.php
+++ b/tests/lib/group/database.php
@@ -28,7 +28,7 @@ class Test_Group_Database extends Test_Group_Backend {
 	 * test cases can override this in order to clean up created groups
 	 * @return array
 	 */
-	public function getGroupName(){
+	public function getGroupName() {
 		$name=uniqid('test_');
 		$this->groups[]=$name;
 		return $name;
@@ -39,16 +39,16 @@ class Test_Group_Database extends Test_Group_Backend {
 	 * test cases can override this in order to clean up created user
 	 * @return array
 	 */
-	public function getUserName(){
+	public function getUserName() {
 		return uniqid('test_');
 	}
 	
-	public function setUp(){
+	public function setUp() {
 		$this->backend=new OC_Group_Database();
 	}
 
-	public function tearDown(){
-		foreach($this->groups as $group){
+	public function tearDown() {
+		foreach($this->groups as $group) {
 			$this->backend->deleteGroup($group);
 		}
 	}
diff --git a/tests/lib/group/dummy.php b/tests/lib/group/dummy.php
index d0b475d3ec538574a8922dc1469df8116285eea2..287d6f1a977e5bb24350084bbf1eedde8a7ad03a 100644
--- a/tests/lib/group/dummy.php
+++ b/tests/lib/group/dummy.php
@@ -21,7 +21,7 @@
 */
 
 class Test_Group_Dummy extends Test_Group_Backend {
-	public function setUp(){
+	public function setUp() {
 		$this->backend=new OC_Group_Dummy();
 	}
 }
diff --git a/tests/lib/share/share.php b/tests/lib/share/share.php
index 22de5691036849b960e6bdbf5efab3c2b552a6f3..b2fecdc8bf7a57b8da964dd355fe4d8c6f2c663b 100644
--- a/tests/lib/share/share.php
+++ b/tests/lib/share/share.php
@@ -249,6 +249,7 @@ class Test_Share extends UnitTestCase {
 		$this->assertTrue(in_array('test1.txt', $to_test));
 
 		// Remove user
+		OC_User::setUserId($this->user1);
 		OC_User::deleteUser($this->user1);
 		OC_User::setUserId($this->user2);
 		$this->assertEqual(OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET), array('test1.txt'));
@@ -360,30 +361,41 @@ class Test_Share extends UnitTestCase {
 		
 		// Attempt user specific target conflict
 		OC_User::setUserId($this->user3);
-		$this->assertTrue(OCP\Share::shareItem('test', 'test.txt', OCP\Share::SHARE_TYPE_GROUP, $this->group1, OCP\Share::PERMISSION_READ | OCP\Share::PERMISSION_SHARE));
+		$this->assertTrue(OCP\Share::shareItem('test', 'share.txt', OCP\Share::SHARE_TYPE_GROUP, $this->group1, OCP\Share::PERMISSION_READ | OCP\Share::PERMISSION_SHARE));
 		OC_User::setUserId($this->user2);
 		$to_test = OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET);
 		$this->assertEqual(count($to_test), 2);
 		$this->assertTrue(in_array('test.txt', $to_test));
 		$this->assertTrue(in_array('test1.txt', $to_test));
-		$this->dump($to_test, "array of shared items in test");
-		//$this->assertEqual(OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET), array('test.txt', 'test1.txt'));
 		
-// 		// Valid reshare TODO Broken
-// 		$this->assertTrue(OCP\Share::shareItem('test', 'test.txt', OCP\Share::SHARE_TYPE_USER, $this->user4, OCP\Share::PERMISSION_READ | OCP\Share::PERMISSION_SHARE));
-// 		OC_User::setUserId($this->user4);
-// 		$this->assertEqual(OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET), array('test1.txt'));
-// 		
-// 		// Remove user from group
-// 		OC_Group::removeFromGroup($this->user2, $this->group1);
-// 		OC_User::setUserId($this->user2);
-// 		$this->assertEqual(OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET), array('test.txt'));
-// 		OC_User::setUserId($this->user4);
-// 		$this->assertEqual(OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET), array());
+		// Valid reshare 
+		$this->assertTrue(OCP\Share::shareItem('test', 'share.txt', OCP\Share::SHARE_TYPE_USER, $this->user4, OCP\Share::PERMISSION_READ | OCP\Share::PERMISSION_SHARE));
+		OC_User::setUserId($this->user4);
+		$this->assertEqual(OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET), array('test1.txt'));
+		
+		// Remove user from group
+		OC_Group::removeFromGroup($this->user2, $this->group1);
+		OC_User::setUserId($this->user2);
+		$this->assertEqual(OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET), array('test.txt'));
+		OC_User::setUserId($this->user4);
+		$this->assertEqual(OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET), array());
 		
 		// Add user to group
+		OC_Group::addToGroup($this->user4, $this->group1);
+		$this->assertEqual(OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET), array('test.txt'));
+		
+		// Unshare from self
+		$this->assertTrue(OCP\Share::unshareFromSelf('test', 'test.txt'));
+		$this->assertEqual(OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET), array());
+		OC_User::setUserId($this->user2);
+		$this->assertEqual(OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET), array('test.txt'));
 		
 		// Remove group
+		OC_Group::deleteGroup($this->group1);
+		OC_User::setUserId($this->user4);
+		$this->assertEqual(OCP\Share::getItemsSharedWith('test', Test_Share_Backend::FORMAT_TARGET), array());
+		OC_User::setUserId($this->user3);
+		$this->assertEqual(OCP\Share::getItemsShared('test'), array());
 	}
 
 }
diff --git a/tests/lib/streamwrappers.php b/tests/lib/streamwrappers.php
index 17a92c6658c1f12e6a4d490821af44dc605112ae..5d6fe8da8266870a1ade4cb4f602d782ae5e7b92 100644
--- a/tests/lib/streamwrappers.php
+++ b/tests/lib/streamwrappers.php
@@ -21,19 +21,19 @@
 */
 
 class Test_StreamWrappers extends UnitTestCase {
-	public function testFakeDir(){
+	public function testFakeDir() {
 		$items=array('foo','bar');
 		OC_FakeDirStream::$dirs['test']=$items;
 		$dh=opendir('fakedir://test');
 		$result=array();
-		while($file=readdir($dh)){
+		while($file=readdir($dh)) {
 			$result[]=$file;
 			$this->assertNotIdentical(false,array_search($file,$items));
 		}
 		$this->assertEqual(count($items),count($result));
 	}
 
-	public function testStaticStream(){
+	public function testStaticStream() {
 		$sourceFile=OC::$SERVERROOT.'/tests/data/lorem.txt';
 		$staticFile='static://test';
 		$this->assertFalse(file_exists($staticFile));
@@ -45,7 +45,7 @@ class Test_StreamWrappers extends UnitTestCase {
 		$this->assertFalse(file_exists($staticFile));
 	}
 
-	public function testCloseStream(){
+	public function testCloseStream() {
 		//ensure all basic stream stuff works
 		$sourceFile=OC::$SERVERROOT.'/tests/data/lorem.txt';
 		$tmpFile=OC_Helper::TmpFile('.txt');
@@ -66,13 +66,13 @@ class Test_StreamWrappers extends UnitTestCase {
 		try{
 			fclose($fh);
 			$this->fail('Expected exception');
-		}catch(Exception $e){
+		}catch(Exception $e) {
 			$path=$e->getMessage();
 			$this->assertEqual($path,$tmpFile);
 		}
 	}
 
-	public static function closeCallBack($path){
+	public static function closeCallBack($path) {
 		throw new Exception($path);
 	}
 }
\ No newline at end of file
diff --git a/tests/lib/user/backend.php b/tests/lib/user/backend.php
index 984249e84eb6397715ef5e095e1361ca7876ca99..c69c1bad51264a66ea21d2c499a874d90978c047 100644
--- a/tests/lib/user/backend.php
+++ b/tests/lib/user/backend.php
@@ -41,11 +41,11 @@ abstract class Test_User_Backend extends UnitTestCase {
 	 * test cases can override this in order to clean up created user
 	 * @return array
 	 */
-	public function getUser(){
+	public function getUser() {
 		return uniqid('test_');
 	}
 
-	public function testAddRemove(){
+	public function testAddRemove() {
 		//get the number of groups we start with, in case there are exising groups
 		$startCount=count($this->backend->getUsers());
 
@@ -69,7 +69,7 @@ abstract class Test_User_Backend extends UnitTestCase {
 		$this->assertFalse((array_search($name2,$this->backend->getUsers())!==false));
 	}
 	
-	public function testLogin(){
+	public function testLogin() {
 		$name1=$this->getUser();
 		$name2=$this->getUser();
 		
diff --git a/tests/lib/user/database.php b/tests/lib/user/database.php
index f484ffa78f71cf58cf75f65c9dd688a11f0caefb..fe7d87c44de2bc9a2cd564e8993ae3f25a6728dd 100644
--- a/tests/lib/user/database.php
+++ b/tests/lib/user/database.php
@@ -26,18 +26,18 @@ class Test_User_Database extends Test_User_Backend {
 	 * test cases can override this in order to clean up created user
 	 * @return array
 	 */
-	public function getUser(){
+	public function getUser() {
 		$user=uniqid('test_');
 		$this->users[]=$user;
 		return $user;
 	}
 	
-	public function setUp(){
+	public function setUp() {
 		$this->backend=new OC_User_Dummy();
 	}
 	
-	public function tearDown(){
-		foreach($this->users as $user){
+	public function tearDown() {
+		foreach($this->users as $user) {
 			$this->backend->deleteUser($user);
 		}
 	}
diff --git a/tests/lib/user/dummy.php b/tests/lib/user/dummy.php
index 062f55ba07930364c0ccc7606efec1217d1ca83c..e417fd97603677b5ee36cdd3e4533973b75bcad3 100644
--- a/tests/lib/user/dummy.php
+++ b/tests/lib/user/dummy.php
@@ -21,7 +21,7 @@
 */
 
 class Test_User_Dummy extends Test_User_Backend {
-	public function setUp(){
+	public function setUp() {
 		$this->backend=new OC_User_Dummy();
 	}
 }