';
if ( $v['cur'] ) {
echo ' (Current)';
}
diff --git a/apps/files_versions/templates/settings.php b/apps/files_versions/templates/settings.php
index bfca8366f5d..3b8e4baf119 100644
--- a/apps/files_versions/templates/settings.php
+++ b/apps/files_versions/templates/settings.php
@@ -1,6 +1,9 @@
diff --git a/apps/user_ldap/appinfo/info.xml b/apps/user_ldap/appinfo/info.xml
index 53269edfb34..03a4fa52332 100644
--- a/apps/user_ldap/appinfo/info.xml
+++ b/apps/user_ldap/appinfo/info.xml
@@ -7,7 +7,7 @@
This app is not compatible to the WebDAV user backend.
AGPLDominik Schmidt and Arthur Schiwon
- 4.91
+ 4.93true
diff --git a/apps/user_ldap/l10n/de.php b/apps/user_ldap/l10n/de.php
index 182025e8fb9..6217a6d4821 100644
--- a/apps/user_ldap/l10n/de.php
+++ b/apps/user_ldap/l10n/de.php
@@ -12,7 +12,7 @@
"Do you really want to delete the current Server Configuration?" => "Wollen Sie die aktuelle Serverkonfiguration wirklich löschen?",
"Confirm Deletion" => "Löschung bestätigen",
"Warning: Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "Warnung: Die Anwendungen user_ldap und user_webdavauth sind inkompatibel. Es kann demzufolge zu unerwarteten Verhalten kommen. Bitte Deinen Systemadministator eine der beiden Anwendungen zu deaktivieren.",
-"Warning: The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "Warnung: Da das PHP-Modul für LDAP nicht installiert ist, wird das Backend nicht funktionieren. Bitte deinen Systemadministrator das Modul zu installieren.",
+"Warning: The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "Warnung: Da das PHP-Modul für LDAP nicht installiert ist, wird das Backend nicht funktionieren. Bitte Deinen Systemadministrator das Modul zu installieren.",
"Server configuration" => "Serverkonfiguration",
"Add Server Configuration" => "Serverkonfiguration hinzufügen",
"Host" => "Host",
@@ -38,12 +38,12 @@
"When unchecked, this configuration will be skipped." => "Konfiguration wird übersprungen wenn deaktiviert",
"Port" => "Port",
"Backup (Replica) Host" => "Backup Host (Kopie)",
-"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Gib einen optionalen Backup Host an. Es muss sich um eine kopie des Haupt LDAP/AD Servers handeln.",
+"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Gib einen optionalen Backup Host an. Es muss sich um eine Kopie des Haupt LDAP/AD Servers handeln.",
"Backup (Replica) Port" => "Backup Port",
"Disable Main Server" => "Hauptserver deaktivieren",
-"When switched on, ownCloud will only connect to the replica server." => "Wenn aktiviert wird ownCloud ausschließlich den Backupserver verwenden",
+"When switched on, ownCloud will only connect to the replica server." => "Wenn aktiviert, wird ownCloud ausschließlich den Backupserver verwenden.",
"Use TLS" => "Nutze TLS",
-"Do not use it additionally for LDAPS connections, it will fail." => "Benutze es nicht zusätzlich für LDAPS Verbindungen, es wird scheitern.",
+"Do not use it additionally for LDAPS connections, it will fail." => "Benutze es nicht zusammen mit LDAPS Verbindungen, es wird fehlschlagen.",
"Case insensitve LDAP server (Windows)" => "LDAP-Server (Windows: Groß- und Kleinschreibung bleibt unbeachtet)",
"Turn off SSL certificate validation." => "Schalte die SSL-Zertifikatsprüfung aus.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Falls die Verbindung es erfordert, muss das SSL-Zertifikat des LDAP-Server importiert werden.",
@@ -55,7 +55,7 @@
"Base User Tree" => "Basis-Benutzerbaum",
"One User Base DN per line" => "Ein Benutzer Base DN pro Zeile",
"User Search Attributes" => "Benutzersucheigenschaften",
-"Optional; one attribute per line" => "Optional, eine Eigenschaft pro Zeile",
+"Optional; one attribute per line" => "Optional; eine Eigenschaft pro Zeile",
"Group Display Name Field" => "Feld für den Anzeigenamen der Gruppe",
"The LDAP attribute to use to generate the groups`s ownCloud name." => "Das LDAP-Attribut für die Generierung des Gruppennamens in ownCloud. ",
"Base Group Tree" => "Basis-Gruppenbaum",
diff --git a/apps/user_ldap/l10n/de_DE.php b/apps/user_ldap/l10n/de_DE.php
index 9bee0a219ae..c88ed22b4fa 100644
--- a/apps/user_ldap/l10n/de_DE.php
+++ b/apps/user_ldap/l10n/de_DE.php
@@ -43,7 +43,7 @@
"Disable Main Server" => "Hauptserver deaktivieren",
"When switched on, ownCloud will only connect to the replica server." => "Wenn eingeschaltet wird sich die ownCloud nur mit dem Replikat-Server verbinden.",
"Use TLS" => "Nutze TLS",
-"Do not use it additionally for LDAPS connections, it will fail." => "Benutzen Sie es nicht zusätzlich für LDAPS Verbindungen, es wird fehlschlagen.",
+"Do not use it additionally for LDAPS connections, it will fail." => "Benutzen Sie es nicht in Verbindung mit LDAPS Verbindungen, es wird fehlschlagen.",
"Case insensitve LDAP server (Windows)" => "LDAP-Server (Windows: Groß- und Kleinschreibung bleibt unbeachtet)",
"Turn off SSL certificate validation." => "Schalten Sie die SSL-Zertifikatsprüfung aus.",
"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Falls die Verbindung es erfordert, muss das SSL-Zertifikat des LDAP-Server importiert werden.",
@@ -55,7 +55,7 @@
"Base User Tree" => "Basis-Benutzerbaum",
"One User Base DN per line" => "Ein Benutzer Base DN pro Zeile",
"User Search Attributes" => "Benutzer-Suche Eigenschaften",
-"Optional; one attribute per line" => "Optional; Ein Attribut pro Zeile",
+"Optional; one attribute per line" => "Optional; ein Attribut pro Zeile",
"Group Display Name Field" => "Feld für den Anzeigenamen der Gruppe",
"The LDAP attribute to use to generate the groups`s ownCloud name." => "Das LDAP-Attribut für die Generierung des Gruppennamens in ownCloud. ",
"Base Group Tree" => "Basis-Gruppenbaum",
diff --git a/apps/user_ldap/l10n/he.php b/apps/user_ldap/l10n/he.php
index 5c563b7b6f3..c9b0e282f1d 100644
--- a/apps/user_ldap/l10n/he.php
+++ b/apps/user_ldap/l10n/he.php
@@ -7,6 +7,7 @@
"User Login Filter" => "סנן כניסת משתמש",
"User List Filter" => "סנן רשימת משתמשים",
"Group Filter" => "סנן קבוצה",
+"Port" => "פורט",
"in seconds. A change empties the cache." => "בשניות. שינוי מרוקן את המטמון.",
"in bytes" => "בבתים",
"Help" => "עזרה"
diff --git a/apps/user_ldap/l10n/id.php b/apps/user_ldap/l10n/id.php
index c07892386d6..5912789c856 100644
--- a/apps/user_ldap/l10n/id.php
+++ b/apps/user_ldap/l10n/id.php
@@ -1,14 +1,69 @@
"Gagal menghapus konfigurasi server",
+"The configuration is valid and the connection could be established!" => "Konfigurasi valid dan koneksi dapat dilakukan!",
+"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "Konfigurasi valid, tetapi Bind gagal. Silakan cek pengaturan server dan keamanan.",
+"The configuration is invalid. Please look in the ownCloud log for further details." => "Konfigurasi salah. Silakan lihat log ownCloud untuk lengkapnya.",
"Deletion failed" => "penghapusan gagal",
+"Take over settings from recent server configuration?" => "Ambil alih pengaturan dari konfigurasi server saat ini?",
+"Keep settings?" => "Biarkan pengaturan?",
+"Cannot add server configuration" => "Gagal menambah konfigurasi server",
+"Connection test succeeded" => "Tes koneksi sukses",
+"Connection test failed" => "Tes koneksi gagal",
+"Do you really want to delete the current Server Configuration?" => "Anda ingin menghapus Konfigurasi Server saat ini?",
+"Confirm Deletion" => "Konfirmasi Penghapusan",
+"Warning: Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behaviour. Please ask your system administrator to disable one of them." => "Peringatan:/b> Aplikasi user_ldap dan user_webdavauth tidak kompatibel. Anda mungkin akan mengalami kejadian yang tidak diharapkan. Silakan minta administrator sistem untuk menonaktifkan salah satunya.",
+"Warning: The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." => "Peringatan: Modul LDAP PHP tidak terpasang, perangkat tidak akan bekerja. Silakan minta administrator sistem untuk memasangnya.",
+"Server configuration" => "Konfigurasi server",
+"Add Server Configuration" => "Tambah Konfigurasi Server",
"Host" => "host",
+"You can omit the protocol, except you require SSL. Then start with ldaps://" => "Protokol dapat tidak ditulis, kecuali anda menggunakan SSL. Lalu jalankan dengan ldaps://",
+"Base DN" => "Base DN",
+"One Base DN per line" => "Satu Base DN per baris",
+"You can specify Base DN for users and groups in the Advanced tab" => "Anda dapat menetapkan Base DN untuk pengguna dan grup dalam tab Lanjutan",
+"User DN" => "User 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 dari klien pengguna yang dengannya tautan akan diterapkan, mis. uid=agen,dc=contoh,dc=com. Untuk akses anonim, biarkan DN dan kata sandi kosong.",
"Password" => "kata kunci",
+"For anonymous access, leave DN and Password empty." => "Untuk akses anonim, biarkan DN dan Kata sandi kosong.",
"User Login Filter" => "gunakan saringan login",
+"Defines the filter to apply, when login is attempted. %%uid replaces the username in the login action." => "Definisikan filter untuk diterapkan, saat login dilakukan. %%uid menggantikan username saat login.",
+"use %%uid placeholder, e.g. \"uid=%%uid\"" => "gunakan pengganti %%uid, mis. \"uid=%%uid\"",
+"User List Filter" => "Daftar Filter Pengguna",
+"Defines the filter to apply, when retrieving users." => "Definisikan filter untuk diterapkan saat menerima pengguna.",
+"without any placeholder, e.g. \"objectClass=person\"." => "tanpa pengganti apapun, mis. \"objectClass=seseorang\".",
"Group Filter" => "saringan grup",
+"Defines the filter to apply, when retrieving groups." => "Definisikan filter untuk diterapkan saat menerima grup.",
+"without any placeholder, e.g. \"objectClass=posixGroup\"." => "tanpa pengganti apapaun, mis. \"objectClass=posixGroup\".",
+"Connection Settings" => "Pengaturan Koneksi",
+"Configuration Active" => "Konfigurasi Aktif",
+"When unchecked, this configuration will be skipped." => "Jika tidak dicentang, konfigurasi ini dilewati.",
"Port" => "port",
+"Backup (Replica) Host" => "Host Cadangan (Replika)",
+"Give an optional backup host. It must be a replica of the main LDAP/AD server." => "Berikan pilihan host cadangan. Harus merupakan replika dari server LDAP/AD utama.",
+"Backup (Replica) Port" => "Port Cadangan (Replika)",
+"Disable Main Server" => "Nonaktifkan Server Utama",
+"When switched on, ownCloud will only connect to the replica server." => "Saat diaktifkan, ownCloud hanya akan terhubung ke server replika.",
"Use TLS" => "gunakan TLS",
+"Do not use it additionally for LDAPS connections, it will fail." => "Jangan gunakan utamanya untuk koneksi LDAPS, koneksi akan gagal.",
+"Case insensitve LDAP server (Windows)" => "Server LDAP dengan kapitalisasi tidak sensitif (Windows)",
"Turn off SSL certificate validation." => "matikan validasi sertivikat SSL",
+"If connection only works with this option, import the LDAP server's SSL certificate in your ownCloud server." => "Jika koneksi hanya bekerja dengan opsi ini, impor sertifikat SSL server LDAP dari server ownCloud anda.",
"Not recommended, use for testing only." => "tidak disarankan, gunakan hanya untuk pengujian.",
"in seconds. A change empties the cache." => "dalam detik. perubahan mengosongkan cache",
+"Directory Settings" => "Pengaturan Direktori",
+"User Display Name Field" => "Bidang Tampilan Nama Pengguna",
+"The LDAP attribute to use to generate the user`s ownCloud name." => "Atribut LDAP yang digunakan untuk menghasilkan nama pengguna ownCloud.",
+"Base User Tree" => "Pohon Pengguna Dasar",
+"One User Base DN per line" => "Satu Pengguna Base DN per baris",
+"User Search Attributes" => "Atribut Pencarian Pengguna",
+"Optional; one attribute per line" => "Pilihan; satu atribut per baris",
+"Group Display Name Field" => "Bidang Tampilan Nama Grup",
+"The LDAP attribute to use to generate the groups`s ownCloud name." => "Atribut LDAP yang digunakan untuk menghasilkan nama grup ownCloud.",
+"Base Group Tree" => "Pohon Grup Dasar",
+"One Group Base DN per line" => "Satu Grup Base DN per baris",
+"Group Search Attributes" => "Atribut Pencarian Grup",
+"Group-Member association" => "asosiasi Anggota-Grup",
+"Special Attributes" => "Atribut Khusus",
"in bytes" => "dalam bytes",
+"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." => "Biarkan nama pengguna kosong (default). Atau tetapkan atribut LDAP/AD.",
"Help" => "bantuan"
);
diff --git a/apps/user_ldap/l10n/my_MM.php b/apps/user_ldap/l10n/my_MM.php
new file mode 100644
index 00000000000..ee8d3dd26fa
--- /dev/null
+++ b/apps/user_ldap/l10n/my_MM.php
@@ -0,0 +1,4 @@
+ "စကားဝှက်",
+"Help" => "အကူအညီ"
+);
diff --git a/apps/user_ldap/l10n/pt_BR.php b/apps/user_ldap/l10n/pt_BR.php
index c86263d52a8..e3d2da463cc 100644
--- a/apps/user_ldap/l10n/pt_BR.php
+++ b/apps/user_ldap/l10n/pt_BR.php
@@ -4,6 +4,7 @@
"The configuration is valid, but the Bind failed. Please check the server settings and credentials." => "A configuração é válida, mas o Bind falhou. Confira as configurações do servidor e as credenciais.",
"The configuration is invalid. Please look in the ownCloud log for further details." => "A configuração é inválida. Leia o \"log\" do ownCloud para mais detalhes.",
"Deletion failed" => "Remoção falhou",
+"Take over settings from recent server configuration?" => "Tomar parámetros de recente configuração de servidor?",
"Keep settings?" => "Manter ajustes?",
"Cannot add server configuration" => "Não foi possível adicionar a configuração do servidor",
"Connection test succeeded" => "Teste de conexão bem sucedido",
diff --git a/apps/user_ldap/lib/connection.php b/apps/user_ldap/lib/connection.php
index abbc133038c..6643428afe4 100644
--- a/apps/user_ldap/lib/connection.php
+++ b/apps/user_ldap/lib/connection.php
@@ -357,9 +357,6 @@ class Connection {
case 'ldapAgentPassword':
$value = base64_encode($value);
break;
- case 'homeFolderNamingRule':
- $value = empty($value) ? 'opt:username' : $value;
- break;
case 'ldapBase':
case 'ldapBaseUsers':
case 'ldapBaseGroups':
@@ -394,10 +391,10 @@ class Connection {
$config = array();
foreach($trans as $dbKey => $classKey) {
if($classKey == 'homeFolderNamingRule') {
- if(strpos($this->config[$classKey], 'opt') === 0) {
- $config[$dbKey] = '';
- } else {
+ if(strpos($this->config[$classKey], 'attr:') === 0) {
$config[$dbKey] = substr($this->config[$classKey], 5);
+ } else {
+ $config[$dbKey] = '';
}
continue;
} else if((strpos($classKey, 'ldapBase') !== false)
@@ -540,7 +537,7 @@ class Connection {
'ldap_cache_ttl' => 600,
'ldap_uuid_attribute' => 'auto',
'ldap_override_uuid_attribute' => 0,
- 'home_folder_naming_rule' => 'opt:username',
+ 'home_folder_naming_rule' => '',
'ldap_turn_off_cert_check' => 0,
'ldap_configuration_active' => 1,
'ldap_attributes_for_user_search' => '',
diff --git a/apps/user_ldap/lib/helper.php b/apps/user_ldap/lib/helper.php
index 29ce998dae7..45c379445af 100644
--- a/apps/user_ldap/lib/helper.php
+++ b/apps/user_ldap/lib/helper.php
@@ -102,4 +102,3 @@ class Helper {
return true;
}
}
-
diff --git a/apps/user_webdavauth/appinfo/info.xml b/apps/user_webdavauth/appinfo/info.xml
index f62f03577e8..76b314e48aa 100755
--- a/apps/user_webdavauth/appinfo/info.xml
+++ b/apps/user_webdavauth/appinfo/info.xml
@@ -7,7 +7,7 @@
This app is not compatible to the LDAP user and group backend.
AGPLFrank Karlitschek
- 4.91
+ 4.93true
diff --git a/apps/user_webdavauth/settings.php b/apps/user_webdavauth/settings.php
index 7eabb0d48cc..ae9cb7e4c92 100755
--- a/apps/user_webdavauth/settings.php
+++ b/apps/user_webdavauth/settings.php
@@ -26,7 +26,7 @@ OC_Util::checkAdminUser();
if($_POST) {
// CSRF check
OCP\JSON::callCheck();
-
+
if(isset($_POST['webdav_url'])) {
OC_CONFIG::setValue('user_webdavauth_url', strip_tags($_POST['webdav_url']));
}
diff --git a/autotest.cmd b/autotest.cmd
index 053860db547..a511faef9c6 100644
--- a/autotest.cmd
+++ b/autotest.cmd
@@ -4,14 +4,14 @@
:: @author Thomas Müller
:: @author Tobias Ramforth (translated into Windows batch file)
::
-:: @copyright 2012 Thomas Müller thomas.mueller@tmit.eu
+:: @copyright 2012, 2013 Thomas Müller thomas.mueller@tmit.eu
::
@echo off
set DATADIR=data-autotest
set BASEDIR=%~dp0
-:: create autoconfig for sqlite, mysql and postgresql
+:: create autoconfig for sqlite, mysql, postgresql and mssql
echo ^ .\tests\autoconfig-sqlite.php
echo $AUTOCONFIG ^= array ^( >> .\tests\autoconfig-sqlite.php
echo 'installed' ^=^> false^, >> .\tests\autoconfig-sqlite.php
@@ -50,16 +50,35 @@ echo 'dbhost' ^=^> 'localhost'^, >> .\tests\autoconfig-pgsql.php
echo 'dbpass' ^=^> 'owncloud'^, >> .\tests\autoconfig-pgsql.php
echo ^)^; >> .\tests\autoconfig-pgsql.php
+echo ^ .\tests\autoconfig-mssql.php
+echo $AUTOCONFIG ^= array ^( >> .\tests\autoconfig-mssql.php
+echo 'installed' ^=^> false^, >> .\tests\autoconfig-mssql.php
+echo 'dbtype' ^=^> 'mssql'^, >> .\tests\autoconfig-mssql.php
+echo 'dbtableprefix' ^=^> 'oc_'^, >> .\tests\autoconfig-mssql.php
+echo 'adminlogin' ^=^> 'admin'^, >> .\tests\autoconfig-mssql.php
+echo 'adminpass' ^=^> 'admin'^, >> .\tests\autoconfig-mssql.php
+echo 'directory' ^=^> '%BASEDIR%%DATADIR%'^, >> .\tests\autoconfig-mssql.php
+echo 'dbuser' ^=^> 'oc_autotest'^, >> .\tests\autoconfig-mssql.php
+echo 'dbname' ^=^> 'oc_autotest'^, >> .\tests\autoconfig-mssql.php
+echo 'dbhost' ^=^> 'localhost\sqlexpress'^, >> .\tests\autoconfig-mssql.php
+echo 'dbpass' ^=^> 'owncloud'^, >> .\tests\autoconfig-mssql.php
+echo ^)^; >> .\tests\autoconfig-mssql.php
+
echo localhost:5432:*:oc_autotest:owncloud > %APPDATA%\postgresql\pgpass.conf
::
:: start test execution
::
-::call:execute_tests "sqlite"
-call:execute_tests "mysql"
-::call:execute_tests "mssql"
-::call:execute_tests "ora"
-::call:execute_tests "pgsql"
+if [%1] == [] (
+ echo "Running on all database backends"
+ call:execute_tests "sqlite"
+ call:execute_tests "mysql"
+ call:execute_tests "mssql"
+ ::call:execute_tests "ora"
+ call:execute_tests "pgsql"
+) else (
+ call:execute_tests "%1"
+)
goto:eof
@@ -83,6 +102,9 @@ goto:eof
if "%~1" == "mysql" mysql -u oc_autotest -powncloud -e "DROP DATABASE oc_autotest"
if "%~1" == "pgsql" dropdb -h localhost -p 5432 -U oc_autotest -w oc_autotest
+
+ :: we assume a sqlexpress installation
+ if "%~1" == "mssql" sqlcmd -S localhost\sqlexpress -U oc_autotest -P owncloud -Q "IF EXISTS (SELECT name FROM sys.databases WHERE name=N'oc_autotest') DROP DATABASE [oc_autotest]"
:: copy autoconfig
copy /y %BASEDIR%\tests\autoconfig-%~1.php %BASEDIR%\config\autoconfig.php
@@ -96,9 +118,8 @@ goto:eof
rmdir /s /q coverage-html-%~1
md coverage-html-%~1
php -f enable_all.php
- ::phpunit --log-junit autotest-results-%~1.xml --coverage-clover autotest-clover-%~1.xml --coverage-html coverage-html-%~1
- ::phpunit --bootstrap bootstrap.php --configuration phpunit.xml
- php win32-phpunit.php --bootstrap bootstrap.php --configuration phpunit.xml --log-junit autotest-results-%~1.xml --coverage-clover autotest-clover-%~1.xml --coverage-html coverage-html-%~1
+
+ php win32-phpunit.php --bootstrap bootstrap.php --configuration phpunit-autotest.xml --log-junit autotest-results-%~1.xml --coverage-clover autotest-clover-%~1.xml --coverage-html coverage-html-%~1
echo "Done with testing %~1 ..."
cd %BASEDIR%
goto:eof
@@ -114,4 +135,10 @@ goto:eof
:: - to enable dropdb I decided to add following line to pg_hba.conf (this is not the safest way but I don't care for the testing machine):
:: local all all trust
::
+:: NOTES on mssql:
+:: we assume the usage of a local installed sqlexpress
+:: create a user 'oc_autotest' with password 'owncloud' and assign the server role 'dbcreator'
+:: make sure the sqlserver is configured to allow sql authentication
+::
+
diff --git a/core/ajax/share.php b/core/ajax/share.php
index 6704a00c5a2..332b6a0bed8 100644
--- a/core/ajax/share.php
+++ b/core/ajax/share.php
@@ -34,7 +34,13 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo
$shareWith = null;
}
- $token = OCP\Share::shareItem($_POST['itemType'], $_POST['itemSource'], $shareType, $shareWith, $_POST['permissions']);
+ $token = OCP\Share::shareItem(
+ $_POST['itemType'],
+ $_POST['itemSource'],
+ $shareType,
+ $shareWith,
+ $_POST['permissions']
+ );
if (is_string($token)) {
OC_JSON::success(array('data' => array('token' => $token)));
@@ -59,7 +65,13 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo
break;
case 'setPermissions':
if (isset($_POST['shareType']) && isset($_POST['shareWith']) && isset($_POST['permissions'])) {
- $return = OCP\Share::setPermissions($_POST['itemType'], $_POST['itemSource'], $_POST['shareType'], $_POST['shareWith'], $_POST['permissions']);
+ $return = OCP\Share::setPermissions(
+ $_POST['itemType'],
+ $_POST['itemSource'],
+ $_POST['shareType'],
+ $_POST['shareWith'],
+ $_POST['permissions']
+ );
($return) ? OC_JSON::success() : OC_JSON::error();
}
break;
@@ -86,9 +98,11 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo
if ($type === 'dir')
$subject = (string)$l->t('User %s shared a folder with you', $displayName);
- $text = (string)$l->t('User %s shared the file "%s" with you. It is available for download here: %s', array($displayName, $file, $link));
+ $text = (string)$l->t('User %s shared the file "%s" with you. It is available for download here: %s',
+ array($displayName, $file, $link));
if ($type === 'dir')
- $text = (string)$l->t('User %s shared the folder "%s" with you. It is available for download here: %s', array($displayName, $file, $link));
+ $text = (string)$l->t('User %s shared the folder "%s" with you. It is available for download here: %s',
+ array($displayName, $file, $link));
$default_from = OCP\Util::getDefaultEmailAddress('sharing-noreply');
@@ -112,14 +126,29 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo
}
break;
case 'getItem':
- if (isset($_GET['itemType']) && isset($_GET['itemSource']) && isset($_GET['checkReshare']) && isset($_GET['checkShares'])) {
+ if (isset($_GET['itemType'])
+ && isset($_GET['itemSource'])
+ && isset($_GET['checkReshare'])
+ && isset($_GET['checkShares'])) {
if ($_GET['checkReshare'] == 'true') {
- $reshare = OCP\Share::getItemSharedWithBySource($_GET['itemType'], $_GET['itemSource'], OCP\Share::FORMAT_NONE, null, true);
+ $reshare = OCP\Share::getItemSharedWithBySource(
+ $_GET['itemType'],
+ $_GET['itemSource'],
+ OCP\Share::FORMAT_NONE,
+ null,
+ true
+ );
} else {
$reshare = false;
}
if ($_GET['checkShares'] == 'true') {
- $shares = OCP\Share::getItemShared($_GET['itemType'], $_GET['itemSource'], OCP\Share::FORMAT_NONE, null, true);
+ $shares = OCP\Share::getItemShared(
+ $_GET['itemType'],
+ $_GET['itemSource'],
+ OCP\Share::FORMAT_NONE,
+ null,
+ true
+ );
} else {
$shares = false;
}
@@ -165,8 +194,15 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo
}
$offset += $limit;
foreach ($users as $uid => $displayName) {
- if ((!isset($_GET['itemShares']) || !is_array($_GET['itemShares'][OCP\Share::SHARE_TYPE_USER]) || !in_array($uid, $_GET['itemShares'][OCP\Share::SHARE_TYPE_USER])) && $uid != OC_User::getUser()) {
- $shareWith[] = array('label' => $displayName, 'value' => array('shareType' => OCP\Share::SHARE_TYPE_USER, 'shareWith' => $uid));
+ if ((!isset($_GET['itemShares'])
+ || !is_array($_GET['itemShares'][OCP\Share::SHARE_TYPE_USER])
+ || !in_array($uid, $_GET['itemShares'][OCP\Share::SHARE_TYPE_USER]))
+ && $uid != OC_User::getUser()) {
+ $shareWith[] = array(
+ 'label' => $displayName,
+ 'value' => array('shareType' => OCP\Share::SHARE_TYPE_USER,
+ 'shareWith' => $uid)
+ );
$count++;
}
}
@@ -179,7 +215,13 @@ if (isset($_POST['action']) && isset($_POST['itemType']) && isset($_POST['itemSo
|| !isset($_GET['itemShares'][OCP\Share::SHARE_TYPE_GROUP])
|| !is_array($_GET['itemShares'][OCP\Share::SHARE_TYPE_GROUP])
|| !in_array($group, $_GET['itemShares'][OCP\Share::SHARE_TYPE_GROUP]))) {
- $shareWith[] = array('label' => $group.' (group)', 'value' => array('shareType' => OCP\Share::SHARE_TYPE_GROUP, 'shareWith' => $group));
+ $shareWith[] = array(
+ 'label' => $group.' (group)',
+ 'value' => array(
+ 'shareType' => OCP\Share::SHARE_TYPE_GROUP,
+ 'shareWith' => $group
+ )
+ );
$count++;
}
} else {
diff --git a/core/css/styles.css b/core/css/styles.css
index 8a01211d8b0..0c16b36873f 100644
--- a/core/css/styles.css
+++ b/core/css/styles.css
@@ -36,8 +36,8 @@ filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#35537a', endC
.header-right > * { vertical-align:middle; }
/* INPUTS */
-input[type="text"], input[type="password"] { cursor:text; }
-input[type="text"], input[type="password"], input[type="search"],
+input[type="text"], input[type="password"], input[type="number"] { cursor:text; }
+input[type="text"], input[type="password"], input[type="search"], input[type="number"],
textarea, select, button, .button, #quota, div.jp-progress, .pager li a {
width:10em; margin:.3em; padding:.6em .5em .4em;
font-size:1em; font-family:Arial, Verdana, sans-serif;
@@ -46,10 +46,11 @@ textarea, select, button, .button, #quota, div.jp-progress, .pager li a {
-moz-border-radius:.5em; -webkit-border-radius:.5em; border-radius:.5em;
}
input[type="hidden"] { height:0; width:0; }
-input[type="text"], input[type="password"], input[type="search"], textarea { background:#f8f8f8; color:#555; cursor:text; }
-input[type="text"], input[type="password"], input[type="search"] { -webkit-appearance:textfield; -moz-appearance:textfield; -webkit-box-sizing:content-box; -moz-box-sizing:content-box; box-sizing:content-box; }
+input[type="text"], input[type="password"], input[type="search"], input[type="number"], textarea { background:#f8f8f8; color:#555; cursor:text; }
+input[type="text"], input[type="password"], input[type="search"], input[type="number"] { -webkit-appearance:textfield; -moz-appearance:textfield; -webkit-box-sizing:content-box; -moz-box-sizing:content-box; box-sizing:content-box; }
input[type="text"]:hover, input[type="text"]:focus, input[type="text"]:active,
input[type="password"]:hover, input[type="password"]:focus, input[type="password"]:active,
+input[type="number"]:hover, input[type="number"]:focus, input[type="number"]:active,
.searchbox input[type="search"]:hover, .searchbox input[type="search"]:focus, .searchbox input[type="search"]:active,
textarea:hover, textarea:focus, textarea:active { background-color:#fff; color:#333; -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); opacity:1; }
input[type="checkbox"] { margin:0; padding:0; height:auto; width:auto; }
@@ -196,7 +197,7 @@ label.infield { cursor:text !important; top:1.05em; left:.85em; }
#show, #personal-show { display:none; }
#show + label { right:1em; top:1.25em!important; }
#show:checked + label, #personal-show:checked + label { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; filter:alpha(opacity=80); opacity:.8; }
-#show + label, #personal-show + label {
+#show + label, #personal-show + label {
position:absolute!important; height:14px; width:24px;
background-image:url("../img/actions/toggle.png"); background-repeat:no-repeat;
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"; filter:alpha(opacity=30); opacity:.3;
diff --git a/core/img/actions/caret-dark.png b/core/img/actions/caret-dark.png
new file mode 100644
index 00000000000..ce7e1e69802
Binary files /dev/null and b/core/img/actions/caret-dark.png differ
diff --git a/core/img/actions/caret-dark.svg b/core/img/actions/caret-dark.svg
new file mode 100644
index 00000000000..abb1dc192d2
--- /dev/null
+++ b/core/img/actions/caret-dark.svg
@@ -0,0 +1,102 @@
+
+
+
+
diff --git a/core/img/filetypes/application-msexcel.png b/core/img/filetypes/application-msexcel.png
index abcd93689a0..b977d7e52e2 100644
Binary files a/core/img/filetypes/application-msexcel.png and b/core/img/filetypes/application-msexcel.png differ
diff --git a/core/img/filetypes/application-mspowerpoint.png b/core/img/filetypes/application-mspowerpoint.png
index b4aaad9a45c..c4eff0387d5 100644
Binary files a/core/img/filetypes/application-mspowerpoint.png and b/core/img/filetypes/application-mspowerpoint.png differ
diff --git a/core/img/filetypes/application-msword.png b/core/img/filetypes/application-msword.png
index e8b230c59cb..ae8ecbf4767 100644
Binary files a/core/img/filetypes/application-msword.png and b/core/img/filetypes/application-msword.png differ
diff --git a/core/img/filetypes/ms-excel.png b/core/img/filetypes/ms-excel.png
index abcd93689a0..b977d7e52e2 100644
Binary files a/core/img/filetypes/ms-excel.png and b/core/img/filetypes/ms-excel.png differ
diff --git a/core/img/filetypes/ms-powerpoint.png b/core/img/filetypes/ms-powerpoint.png
index b4aaad9a45c..c4eff0387d5 100644
Binary files a/core/img/filetypes/ms-powerpoint.png and b/core/img/filetypes/ms-powerpoint.png differ
diff --git a/core/js/config.php b/core/js/config.php
index 9069175ed6f..0aaa4482287 100644
--- a/core/js/config.php
+++ b/core/js/config.php
@@ -29,8 +29,33 @@ $array = array(
"oc_current_user" => "\"".OC_User::getUser(). "\"",
"oc_requesttoken" => "\"".OC_Util::callRegister(). "\"",
"datepickerFormatDate" => json_encode($l->l('jsdate', 'jsdate')),
- "dayNames" => json_encode(array((string)$l->t('Sunday'), (string)$l->t('Monday'), (string)$l->t('Tuesday'), (string)$l->t('Wednesday'), (string)$l->t('Thursday'), (string)$l->t('Friday'), (string)$l->t('Saturday'))),
- "monthNames" => json_encode(array((string)$l->t('January'), (string)$l->t('February'), (string)$l->t('March'), (string)$l->t('April'), (string)$l->t('May'), (string)$l->t('June'), (string)$l->t('July'), (string)$l->t('August'), (string)$l->t('September'), (string)$l->t('October'), (string)$l->t('November'), (string)$l->t('December'))),
+ "dayNames" => json_encode(
+ array(
+ (string)$l->t('Sunday'),
+ (string)$l->t('Monday'),
+ (string)$l->t('Tuesday'),
+ (string)$l->t('Wednesday'),
+ (string)$l->t('Thursday'),
+ (string)$l->t('Friday'),
+ (string)$l->t('Saturday')
+ )
+ ),
+ "monthNames" => json_encode(
+ array(
+ (string)$l->t('January'),
+ (string)$l->t('February'),
+ (string)$l->t('March'),
+ (string)$l->t('April'),
+ (string)$l->t('May'),
+ (string)$l->t('June'),
+ (string)$l->t('July'),
+ (string)$l->t('August'),
+ (string)$l->t('September'),
+ (string)$l->t('October'),
+ (string)$l->t('November'),
+ (string)$l->t('December')
+ )
+ ),
"firstDay" => json_encode($l->l('firstday', 'firstday')) ,
);
@@ -38,4 +63,3 @@ $array = array(
foreach ($array as $setting => $value) {
echo("var ". $setting ."=".$value.";\n");
}
-?>
\ No newline at end of file
diff --git a/core/js/js.js b/core/js/js.js
index 6d5d65403fb..e373fca8865 100644
--- a/core/js/js.js
+++ b/core/js/js.js
@@ -669,7 +669,7 @@ $(document).ready(function(){
$('#settings #expanddiv').click(function(event){
event.stopPropagation();
});
- $(window).click(function(){//hide the settings menu when clicking outside it
+ $(document).click(function(){//hide the settings menu when clicking outside it
$('#settings #expanddiv').slideUp(200);
});
diff --git a/core/js/multiselect.js b/core/js/multiselect.js
index 623c6e0f7e1..bc4223feb64 100644
--- a/core/js/multiselect.js
+++ b/core/js/multiselect.js
@@ -266,8 +266,9 @@
}
list.append(list.find('li.creator'));
var pos=button.position();
- if($(document).height() > (button.offset().top+button.outerHeight() + list.children().length * button.height())
- || $(document).height()/2 > pos.top
+ if(($(document).height() > (button.offset().top+button.outerHeight() + list.children().length * button.height())
+ && $(document).height() - button.offset().top > (button.offset().top+button.outerHeight() + list.children().length * button.height()))
+ || $(document).height()/2 > button.offset().top
) {
list.css({
top:pos.top+button.outerHeight()-5,
diff --git a/core/js/setup.js b/core/js/setup.js
index 2656cac2f45..76812b29979 100644
--- a/core/js/setup.js
+++ b/core/js/setup.js
@@ -5,6 +5,7 @@ $(document).ready(function() {
mysql:!!$('#hasMySQL').val(),
postgresql:!!$('#hasPostgreSQL').val(),
oracle:!!$('#hasOracle').val(),
+ mssql:!!$('#hasMSSQL').val()
};
$('#selectDbType').buttonset();
@@ -41,6 +42,12 @@ $(document).ready(function() {
$('#dbhost').show(250);
$('#dbhostlabel').show(250);
});
+
+ $('#mssql').click(function() {
+ $('#use_other_db').slideDown(250);
+ $('#dbhost').show(250);
+ $('#dbhostlabel').show(250);
+ });
$('input[checked]').trigger('click');
diff --git a/core/l10n/de.php b/core/l10n/de.php
index f1e892fee47..e60f061ff3c 100644
--- a/core/l10n/de.php
+++ b/core/l10n/de.php
@@ -1,8 +1,8 @@
"Der Nutzer %s hat eine Datei mit dir geteilt",
-"User %s shared a folder with you" => "%s hat ein Verzeichnis mit dir geteilt",
-"User %s shared the file \"%s\" with you. It is available for download here: %s" => "%s hat die Datei \"%s\" mit dir geteilt. Sie ist hier zum Download verfügbar: %s",
-"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "%s hat den Ordner \"%s\" mit dir geteilt. Er ist hier zum Download verfügbar: %s",
+"User %s shared a file with you" => "Der Nutzer %s hat eine Datei mit Dir geteilt",
+"User %s shared a folder with you" => "%s hat ein Verzeichnis mit Dir geteilt",
+"User %s shared the file \"%s\" with you. It is available for download here: %s" => "%s hat die Datei \"%s\" mit Dir geteilt. Sie ist hier zum Download verfügbar: %s",
+"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "%s hat den Ordner \"%s\" mit Dir geteilt. Er ist hier zum Download verfügbar: %s",
"Category type not provided." => "Kategorie nicht angegeben.",
"No category to add?" => "Keine Kategorie hinzuzufügen?",
"This category already exists: %s" => "Die Kategorie '%s' existiert bereits.",
@@ -58,10 +58,10 @@
"Error while sharing" => "Fehler beim Teilen",
"Error while unsharing" => "Fehler beim Aufheben der Teilung",
"Error while changing permissions" => "Fehler beim Ändern der Rechte",
-"Shared with you and the group {group} by {owner}" => "{owner} hat dies mit dir und der Gruppe {group} geteilt",
-"Shared with you by {owner}" => "{owner} hat dies mit dir geteilt",
+"Shared with you and the group {group} by {owner}" => "{owner} hat dies mit Dir und der Gruppe {group} geteilt",
+"Shared with you by {owner}" => "{owner} hat dies mit Dir geteilt",
"Share with" => "Teilen mit",
-"Share with link" => "Über einen Link teilen",
+"Share with link" => "Über einen Link freigegeben",
"Password protect" => "Passwortschutz",
"Password" => "Passwort",
"Email link to person" => "Link per E-Mail verschicken",
@@ -72,7 +72,7 @@
"No people found" => "Niemand gefunden",
"Resharing is not allowed" => "Weiterverteilen ist nicht erlaubt",
"Shared in {item} with {user}" => "Für {user} in {item} freigegeben",
-"Unshare" => "Teilung aufheben",
+"Unshare" => "Freigabe aufheben",
"can edit" => "kann bearbeiten",
"access control" => "Zugriffskontrolle",
"create" => "erstellen",
@@ -109,7 +109,7 @@
"Security Warning" => "Sicherheitswarnung",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Es ist kein sicherer Zufallszahlengenerator verfügbar, bitte aktiviere die PHP-Erweiterung für OpenSSL.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Ohne einen sicheren Zufallszahlengenerator sind Angreifer in der Lage die Tokens für das Zurücksetzen der Passwörter vorherzusehen und Konten zu übernehmen.",
-"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Dein Daten-Verzeichnis und deine Dateien sind wahrscheinlich vom Internet aus erreichbar, weil die .htaccess-Datei nicht funktioniert.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Dein Datenverzeichnis und deine Dateien sind wahrscheinlich vom Internet aus erreichbar, weil die .htaccess-Datei nicht funktioniert.",
"For information how to properly configure your server, please see the documentation." => "Bitte lesen Sie die Dokumentation für Informationen, wie Sie Ihren Server konfigurieren.",
"Create an admin account" => "Administrator-Konto anlegen",
"Advanced" => "Fortgeschritten",
diff --git a/core/l10n/de_DE.php b/core/l10n/de_DE.php
index 34305258944..9a975ddcb87 100644
--- a/core/l10n/de_DE.php
+++ b/core/l10n/de_DE.php
@@ -72,7 +72,7 @@
"No people found" => "Niemand gefunden",
"Resharing is not allowed" => "Das Weiterverteilen ist nicht erlaubt",
"Shared in {item} with {user}" => "Freigegeben in {item} von {user}",
-"Unshare" => "Teilung aufheben",
+"Unshare" => "Freigabe aufheben",
"can edit" => "kann bearbeiten",
"access control" => "Zugriffskontrolle",
"create" => "erstellen",
@@ -84,7 +84,7 @@
"Error setting expiration date" => "Fehler beim Setzen des Ablaufdatums",
"Sending ..." => "Sende ...",
"Email sent" => "Email gesendet",
-"The update was unsuccessful. Please report this issue to the ownCloud community." => "Das Update ist fehlgeschlagen. Bitte melden Sie dieses Problem an die ownCloud Gemeinschaft.",
+"The update was unsuccessful. Please report this issue to the ownCloud community." => "Das Update ist fehlgeschlagen. Bitte melden Sie dieses Problem an die ownCloud Community.",
"The update was successful. Redirecting you to ownCloud now." => "Das Update war erfolgreich. Sie werden nun zu ownCloud weitergeleitet.",
"ownCloud password reset" => "ownCloud-Passwort zurücksetzen",
"Use the following link to reset your password: {link}" => "Nutzen Sie den nachfolgenden Link, um Ihr Passwort zurückzusetzen: {link}",
@@ -109,7 +109,7 @@
"Security Warning" => "Sicherheitshinweis",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "Es ist kein sicherer Zufallszahlengenerator verfügbar, bitte aktivieren Sie die PHP-Erweiterung für OpenSSL.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "Ohne einen sicheren Zufallszahlengenerator sind Angreifer in der Lage, die Tokens für das Zurücksetzen der Passwörter vorherzusehen und Ihr Konto zu übernehmen.",
-"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Dein Daten-Verzeichnis und deine Dateien sind wahrscheinlich vom Internet aus erreichbar, weil die .htaccess-Datei nicht funktioniert.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "Ihr Datenverzeichnis und Ihre Dateien sind wahrscheinlich vom Internet aus erreichbar, weil die .htaccess-Datei nicht funktioniert.",
"For information how to properly configure your server, please see the documentation." => "Bitte lesen Sie die Dokumentation für Informationen, wie Sie Ihren Server konfigurieren.",
"Create an admin account" => "Administrator-Konto anlegen",
"Advanced" => "Fortgeschritten",
diff --git a/core/l10n/eu.php b/core/l10n/eu.php
index 8c36254caf8..834af44b382 100644
--- a/core/l10n/eu.php
+++ b/core/l10n/eu.php
@@ -1,8 +1,8 @@
"%s erabiltzaileak zurekin fitxategi bat partekatu du ",
-"User %s shared a folder with you" => "%s erabiltzaileak zurekin karpeta bat partekatu du ",
-"User %s shared the file \"%s\" with you. It is available for download here: %s" => "%s erabiltzaileak \"%s\" fitxategia zurekin partekatu du. Hemen duzu eskuragarri: %s",
-"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "%s erabiltzaileak \"%s\" karpeta zurekin partekatu du. Hemen duzu eskuragarri: %s",
+"User %s shared a file with you" => "%s erabiltzaileak zurekin fitxategi bat elkarbanatu du ",
+"User %s shared a folder with you" => "%s erabiltzaileak zurekin karpeta bat elkarbanatu du ",
+"User %s shared the file \"%s\" with you. It is available for download here: %s" => "%s erabiltzaileak \"%s\" fitxategia zurekin elkarbanatu du. Hemen duzu eskuragarri: %s",
+"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "%s erabiltzaileak \"%s\" karpeta zurekin elkarbanatu du. Hemen duzu eskuragarri: %s",
"Category type not provided." => "Kategoria mota ez da zehaztu.",
"No category to add?" => "Ez dago gehitzeko kategoriarik?",
"This category already exists: %s" => "Kategoria hau dagoeneko existitzen da: %s",
@@ -58,8 +58,8 @@
"Error while sharing" => "Errore bat egon da elkarbanatzean",
"Error while unsharing" => "Errore bat egon da elkarbanaketa desegitean",
"Error while changing permissions" => "Errore bat egon da baimenak aldatzean",
-"Shared with you and the group {group} by {owner}" => "{owner}-k zu eta {group} taldearekin partekatuta",
-"Shared with you by {owner}" => "{owner}-k zurekin partekatuta",
+"Shared with you and the group {group} by {owner}" => "{owner}-k zu eta {group} taldearekin elkarbanatuta",
+"Shared with you by {owner}" => "{owner}-k zurekin elkarbanatuta",
"Share with" => "Elkarbanatu honekin",
"Share with link" => "Elkarbanatu lotura batekin",
"Password protect" => "Babestu pasahitzarekin",
@@ -71,7 +71,7 @@
"Share via email:" => "Elkarbanatu eposta bidez:",
"No people found" => "Ez da inor aurkitu",
"Resharing is not allowed" => "Berriz elkarbanatzea ez dago baimendua",
-"Shared in {item} with {user}" => "{user}ekin {item}-n partekatuta",
+"Shared in {item} with {user}" => "{user}ekin {item}-n elkarbanatuta",
"Unshare" => "Ez elkarbanatu",
"can edit" => "editatu dezake",
"access control" => "sarrera kontrola",
diff --git a/core/l10n/he.php b/core/l10n/he.php
index 75c378ceceb..1db5820bdf7 100644
--- a/core/l10n/he.php
+++ b/core/l10n/he.php
@@ -5,6 +5,7 @@
"User %s shared the folder \"%s\" with you. It is available for download here: %s" => "המשתמש %s שיתף אתך את התיקייה „%s“. ניתן להוריד את התיקייה מכאן: %s",
"Category type not provided." => "סוג הקטגוריה לא סופק.",
"No category to add?" => "אין קטגוריה להוספה?",
+"This category already exists: %s" => "הקטגוריה הבאה כבר קיימת: %s",
"Object type not provided." => "סוג הפריט לא סופק.",
"%s ID not provided." => "מזהה %s לא סופק.",
"Error adding %s to favorites." => "אירעה שגיאה בעת הוספת %s למועדפים.",
@@ -52,6 +53,7 @@
"Error" => "שגיאה",
"The app name is not specified." => "שם היישום לא צוין.",
"The required file {file} is not installed!" => "הקובץ הנדרש {file} אינו מותקן!",
+"Shared" => "שותף",
"Share" => "שתף",
"Error while sharing" => "שגיאה במהלך השיתוף",
"Error while unsharing" => "שגיאה במהלך ביטול השיתוף",
@@ -82,6 +84,8 @@
"Error setting expiration date" => "אירעה שגיאה בעת הגדרת תאריך התפוגה",
"Sending ..." => "מתבצעת שליחה ...",
"Email sent" => "הודעת הדוא״ל נשלחה",
+"The update was unsuccessful. Please report this issue to the ownCloud community." => "תהליך העדכון לא הושלם בהצלחה. נא דווח את הבעיה בקהילת ownCloud.",
+"The update was successful. Redirecting you to ownCloud now." => "תהליך העדכון הסתיים בהצלחה. עכשיו מנתב אותך אל ownCloud.",
"ownCloud password reset" => "איפוס הססמה של ownCloud",
"Use the following link to reset your password: {link}" => "יש להשתמש בקישור הבא כדי לאפס את הססמה שלך: {link}",
"You will receive a link to reset your password via Email." => "יישלח לתיבת הדוא״ל שלך קישור לאיפוס הססמה.",
@@ -105,6 +109,8 @@
"Security Warning" => "אזהרת אבטחה",
"No secure random number generator is available, please enable the PHP OpenSSL extension." => "אין מחולל מספרים אקראיים מאובטח, נא להפעיל את ההרחבה OpenSSL ב־PHP.",
"Without a secure random number generator an attacker may be able to predict password reset tokens and take over your account." => "ללא מחולל מספרים אקראיים מאובטח תוקף יכול לנבא את מחרוזות איפוס הססמה ולהשתלט על החשבון שלך.",
+"Your data directory and files are probably accessible from the internet because the .htaccess file does not work." => "תיקיית וקבצי המידע שלך כנראה נגישים מהאינטרנט מכיוון שקובץ ה.htaccess לא עובד.",
+"For information how to properly configure your server, please see the documentation." => "לקבלת מידע להגדרה נכונה של השרת שלך, ראה את התיעוד.",
"Create an admin account" => "יצירת חשבון מנהל",
"Advanced" => "מתקדם",
"Data folder" => "תיקיית נתונים",
@@ -124,6 +130,7 @@
"Lost your password?" => "שכחת את ססמתך?",
"remember" => "שמירת הססמה",
"Log in" => "כניסה",
+"Alternative Logins" => "כניסות אלטרנטיביות",
"prev" => "הקודם",
"next" => "הבא",
"Updating ownCloud to version %s, this may take a while." => "מעדכן את ownCloud אל גרסא %s, זה עלול לקחת זמן מה."
diff --git a/core/l10n/my_MM.php b/core/l10n/my_MM.php
new file mode 100644
index 00000000000..97631d4df58
--- /dev/null
+++ b/core/l10n/my_MM.php
@@ -0,0 +1,64 @@
+ "ထည့်ရန်ခေါင်းစဉ်မရှိဘူးလား",
+"No categories selected for deletion." => "ဖျက်ရန်အတွက်ခေါင်းစဉ်မရွေးထားပါ",
+"January" => "ဇန်နဝါရီ",
+"February" => "ဖေဖော်ဝါရီ",
+"March" => "မတ်",
+"April" => "ဧပြီ",
+"May" => "မေ",
+"June" => "ဇွန်",
+"July" => "ဇူလိုင်",
+"August" => "ဩဂုတ်",
+"September" => "စက်တင်ဘာ",
+"October" => "အောက်တိုဘာ",
+"November" => "နိုဝင်ဘာ",
+"December" => "ဒီဇင်ဘာ",
+"seconds ago" => "စက္ကန့်အနည်းငယ်က",
+"1 minute ago" => "၁ မိနစ်အရင်က",
+"1 hour ago" => "၁ နာရီ အရင်က",
+"today" => "ယနေ့",
+"yesterday" => "မနေ့က",
+"last month" => "ပြီးခဲ့သောလ",
+"last year" => "မနှစ်က",
+"years ago" => "နှစ် အရင်က",
+"Choose" => "ရွေးချယ်",
+"Cancel" => "ပယ်ဖျက်မည်",
+"No" => "မဟုတ်ဘူး",
+"Yes" => "ဟုတ်",
+"Ok" => "အိုကေ",
+"Password" => "စကားဝှက်",
+"Set expiration date" => "သက်တမ်းကုန်ဆုံးမည့်ရက်သတ်မှတ်မည်",
+"Expiration date" => "သက်တမ်းကုန်ဆုံးမည့်ရက်",
+"Share via email:" => "အီးမေးလ်ဖြင့်ဝေမျှမည် -",
+"Resharing is not allowed" => "ပြန်လည်ဝေမျှခြင်းခွင့်မပြုပါ",
+"can edit" => "ပြင်ဆင်နိုင်",
+"create" => "ဖန်တီးမည်",
+"delete" => "ဖျက်မည်",
+"share" => "ဝေမျှမည်",
+"Password protected" => "စကားဝှက်ဖြင့်ကာကွယ်ထားသည်",
+"You will receive a link to reset your password via Email." => "အီးမေးလ်မှတစ်ဆင့် သင်၏စကားဝှက်ကို ပြန်ဖော်ရန်အတွက် Link တစ်ခုလက်ခံရရှိပါလိမ့်မယ်။",
+"Username" => "သုံးစွဲသူအမည်",
+"Your password was reset" => "သင်၏စကားဝှက်ကိုပြန်ဖော်ပြီးပါပြီ။",
+"To login page" => "ဝင်ရောက်သည့်စာမျက်နှာသို့",
+"New password" => "စကားဝှက်အသစ်",
+"Users" => "သုံးစွဲသူ",
+"Apps" => "Apps",
+"Admin" => "အက်ဒမင်",
+"Help" => "အကူအညီ",
+"Cloud not found" => "မတွေ့ရှိမိပါ",
+"Add" => "ပေါင်းထည့်",
+"Security Warning" => "လုံခြုံရေးသတိပေးချက်",
+"Create an admin account" => "အက်ဒမင်အကောင့်တစ်ခုဖန်တီးမည်",
+"Advanced" => "အဆင့်မြင့်",
+"Data folder" => "အချက်အလက်ဖိုလ်ဒါလ်",
+"Database user" => "Database သုံးစွဲသူ",
+"Database password" => "Database စကားဝှက်",
+"Database name" => "Database အမည်",
+"Finish setup" => "တပ်ဆင်ခြင်းပြီးပါပြီ။",
+"web services under your control" => "သင်၏ထိန်းချုပ်မှု့အောက်တွင်ရှိသော Web services",
+"Lost your password?" => "သင်၏စကားဝှက်ပျောက်သွားပြီလား။",
+"remember" => "မှတ်မိစေသည်",
+"Log in" => "ဝင်ရောက်ရန်",
+"prev" => "ယခင်",
+"next" => "နောက်သို့"
+);
diff --git a/core/lostpassword/controller.php b/core/lostpassword/controller.php
index 3ef8eaf71aa..fbcf4a87f22 100644
--- a/core/lostpassword/controller.php
+++ b/core/lostpassword/controller.php
@@ -44,7 +44,11 @@ class OC_Core_LostPassword_Controller {
$msg = $tmpl->fetchPage();
$l = OC_L10N::get('core');
$from = OCP\Util::getDefaultEmailAddress('lostpassword-noreply');
- OC_Mail::send($email, $_POST['user'], $l->t('ownCloud password reset'), $msg, $from, 'ownCloud');
+ try {
+ OC_Mail::send($email, $_POST['user'], $l->t('ownCloud password reset'), $msg, $from, 'ownCloud');
+ } catch (Exception $e) {
+ OC_Template::printErrorPage( 'A problem occurs during sending the e-mail please contact your administrator.');
+ }
self::displayLostPasswordPage(false, true);
} else {
self::displayLostPasswordPage(true, false);
diff --git a/core/setup.php b/core/setup.php
index f16385466cb..77eed5376d6 100644
--- a/core/setup.php
+++ b/core/setup.php
@@ -16,6 +16,7 @@ $hasSQLite = class_exists('SQLite3');
$hasMySQL = is_callable('mysql_connect');
$hasPostgreSQL = is_callable('pg_connect');
$hasOracle = is_callable('oci_connect');
+$hasMSSQL = is_callable('sqlsrv_connect');
$datadir = OC_Config::getValue('datadirectory', OC::$SERVERROOT.'/data');
// Protect data directory here, so we can test if the protection is working
@@ -26,6 +27,7 @@ $opts = array(
'hasMySQL' => $hasMySQL,
'hasPostgreSQL' => $hasPostgreSQL,
'hasOracle' => $hasOracle,
+ 'hasMSSQL' => $hasMSSQL,
'directory' => $datadir,
'secureRNG' => OC_Util::secureRNG_available(),
'htaccessWorking' => OC_Util::ishtaccessworking(),
diff --git a/core/templates/exception.php b/core/templates/exception.php
index 62d6cf2ade5..4059c7e047d 100644
--- a/core/templates/exception.php
+++ b/core/templates/exception.php
@@ -5,7 +5,9 @@
bug tracker, please copy the following informations into the description.