summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/command/user/delete.php2
-rw-r--r--core/css/mobile.css4
-rw-r--r--core/js/core.json2
-rw-r--r--core/l10n/et_EE.js8
-rw-r--r--core/l10n/et_EE.json8
-rw-r--r--core/l10n/fr.js3
-rw-r--r--core/l10n/fr.json3
-rw-r--r--core/l10n/oc.js255
-rw-r--r--core/l10n/oc.json255
-rw-r--r--core/l10n/sk_SK.js5
-rw-r--r--core/l10n/sk_SK.json5
-rw-r--r--core/l10n/sr.js2
-rw-r--r--core/l10n/sr.json2
-rw-r--r--core/l10n/th_TH.js173
-rw-r--r--core/l10n/th_TH.json173
-rw-r--r--core/search/js/search.js36
-rw-r--r--core/vendor/.gitignore2
-rw-r--r--core/vendor/jquery-migrate/.bower.json15
-rw-r--r--core/vendor/jquery-migrate/component.json4
-rw-r--r--core/vendor/jquery-migrate/jquery-migrate.js (renamed from core/vendor/jquery/jquery-migrate.js)1032
-rw-r--r--core/vendor/jquery-migrate/jquery-migrate.min.js2
-rw-r--r--core/vendor/jquery/jquery-migrate.min.js3
22 files changed, 1345 insertions, 649 deletions
diff --git a/core/command/user/delete.php b/core/command/user/delete.php
index 8cac03157eb..63b81134873 100644
--- a/core/command/user/delete.php
+++ b/core/command/user/delete.php
@@ -63,6 +63,6 @@ class Delete extends Command {
return;
}
- $output->writeln('<error>The specified could not be deleted. Please check the logs.</error>');
+ $output->writeln('<error>The specified user could not be deleted. Please check the logs.</error>');
}
}
diff --git a/core/css/mobile.css b/core/css/mobile.css
index cfc8f8bfdca..80217d7069c 100644
--- a/core/css/mobile.css
+++ b/core/css/mobile.css
@@ -21,8 +21,8 @@
box-align: center;
}
-/* on mobile, show only the icon of the logo, hide the text */
-#header .header-appname-container {
+/* on mobile public share, show only the icon of the logo, hide the text */
+#body-public #header .header-appname-container {
display: none;
}
diff --git a/core/js/core.json b/core/js/core.json
index f57061a2c81..90bc318b237 100644
--- a/core/js/core.json
+++ b/core/js/core.json
@@ -1,7 +1,7 @@
{
"vendor": [
"jquery/jquery.min.js",
- "jquery/jquery-migrate.min.js",
+ "jquery-migrate/jquery-migrate.min.js",
"jquery-ui/ui/jquery-ui.custom.js",
"underscore/underscore.js",
"moment/min/moment-with-locales.js",
diff --git a/core/l10n/et_EE.js b/core/l10n/et_EE.js
index f984f2ceac8..7452be84d80 100644
--- a/core/l10n/et_EE.js
+++ b/core/l10n/et_EE.js
@@ -8,6 +8,8 @@ OC.L10N.register(
"Checked database schema update" : "Andmebaasi skeemi uuendus kontrollitud",
"Checked database schema update for apps" : "Andmebaasi skeemi uuendus rakendustele on kontrollitud",
"Updated \"%s\" to %s" : "Uuendatud \"%s\" -> %s",
+ "Repair warning: " : "Paranda hoiatus:",
+ "Repair error: " : "Paranda viga:",
"No image or file provided" : "Ühtegi pilti või faili pole pakutud",
"Unknown filetype" : "Tundmatu failitüüp",
"Invalid image" : "Vigane pilt",
@@ -94,6 +96,7 @@ OC.L10N.register(
"can edit" : "saab muuta",
"access control" : "ligipääsukontroll",
"create" : "loo",
+ "change" : "muuda",
"delete" : "kustuta",
"Password protected" : "Parooliga kaitstud",
"Error unsetting expiration date" : "Viga aegumise kuupäeva eemaldamisel",
@@ -151,6 +154,7 @@ OC.L10N.register(
"Technical details" : "Tehnilised andmed",
"Remote Address: %s" : "Kaugaadress: %s",
"Request ID: %s" : "Päringu ID: %s",
+ "Type: %s" : "Tüüp: %s",
"Code: %s" : "Kood: %s",
"Message: %s" : "Sõnum: %s",
"File: %s" : "Fail: %s",
@@ -171,10 +175,14 @@ OC.L10N.register(
"Database host" : "Andmebaasi host",
"Finish setup" : "Lõpeta seadistamine",
"Finishing …" : "Lõpetamine ...",
+ "Need help?" : "Vajad abi?",
+ "See the documentation" : "Vaata dokumentatsiooni",
"Log out" : "Logi välja",
"Search" : "Otsi",
"Server side authentication failed!" : "Serveripoolne autentimine ebaõnnestus!",
"Please contact your administrator." : "Palun kontakteeru oma süsteemihalduriga.",
+ "An internal error occured." : "Tekkis sisemine tõrge.",
+ "Please try again or contact your administrator." : "Palun proovi uuesti või võta ühendust oma administraatoriga.",
"Forgot your password? Reset it!" : "Unustasid parooli? Taasta see!",
"remember" : "pea meeles",
"Log in" : "Logi sisse",
diff --git a/core/l10n/et_EE.json b/core/l10n/et_EE.json
index 83b8ba6fb9c..2d28fc176de 100644
--- a/core/l10n/et_EE.json
+++ b/core/l10n/et_EE.json
@@ -6,6 +6,8 @@
"Checked database schema update" : "Andmebaasi skeemi uuendus kontrollitud",
"Checked database schema update for apps" : "Andmebaasi skeemi uuendus rakendustele on kontrollitud",
"Updated \"%s\" to %s" : "Uuendatud \"%s\" -> %s",
+ "Repair warning: " : "Paranda hoiatus:",
+ "Repair error: " : "Paranda viga:",
"No image or file provided" : "Ühtegi pilti või faili pole pakutud",
"Unknown filetype" : "Tundmatu failitüüp",
"Invalid image" : "Vigane pilt",
@@ -92,6 +94,7 @@
"can edit" : "saab muuta",
"access control" : "ligipääsukontroll",
"create" : "loo",
+ "change" : "muuda",
"delete" : "kustuta",
"Password protected" : "Parooliga kaitstud",
"Error unsetting expiration date" : "Viga aegumise kuupäeva eemaldamisel",
@@ -149,6 +152,7 @@
"Technical details" : "Tehnilised andmed",
"Remote Address: %s" : "Kaugaadress: %s",
"Request ID: %s" : "Päringu ID: %s",
+ "Type: %s" : "Tüüp: %s",
"Code: %s" : "Kood: %s",
"Message: %s" : "Sõnum: %s",
"File: %s" : "Fail: %s",
@@ -169,10 +173,14 @@
"Database host" : "Andmebaasi host",
"Finish setup" : "Lõpeta seadistamine",
"Finishing …" : "Lõpetamine ...",
+ "Need help?" : "Vajad abi?",
+ "See the documentation" : "Vaata dokumentatsiooni",
"Log out" : "Logi välja",
"Search" : "Otsi",
"Server side authentication failed!" : "Serveripoolne autentimine ebaõnnestus!",
"Please contact your administrator." : "Palun kontakteeru oma süsteemihalduriga.",
+ "An internal error occured." : "Tekkis sisemine tõrge.",
+ "Please try again or contact your administrator." : "Palun proovi uuesti või võta ühendust oma administraatoriga.",
"Forgot your password? Reset it!" : "Unustasid parooli? Taasta see!",
"remember" : "pea meeles",
"Log in" : "Logi sisse",
diff --git a/core/l10n/fr.js b/core/l10n/fr.js
index 28c819da0e6..7a93b5cd969 100644
--- a/core/l10n/fr.js
+++ b/core/l10n/fr.js
@@ -4,7 +4,7 @@ OC.L10N.register(
"Couldn't send mail to following users: %s " : "Impossible d'envoyer un courriel aux utilisateurs suivants : %s",
"Turned on maintenance mode" : "Mode de maintenance activé",
"Turned off maintenance mode" : "Mode de maintenance désactivé",
- "Maintenance mode is kept active" : "Le mode de maintenance est laissé activé",
+ "Maintenance mode is kept active" : "Le mode de maintenance est laissé actif",
"Updated database" : "Base de données mise à jour",
"Checked database schema update" : "Mise à jour du schéma de la base de données vérifiée",
"Checked database schema update for apps" : "Mise à jour du schéma de la base de données pour les applications vérifiée",
@@ -150,6 +150,7 @@ OC.L10N.register(
"New Password" : "Nouveau mot de passe",
"Reset password" : "Réinitialiser le mot de passe",
"Searching other places" : "Recherche en cours dans d'autres emplacements",
+ "No search results in other places" : "Aucun résultat dans d'autres emplacements",
"_{count} search result in other places_::_{count} search results in other places_" : ["{count} résultat dans d'autres emplacements","{count} résultats dans d'autres emplacements"],
"Personal" : "Personnel",
"Users" : "Utilisateurs",
diff --git a/core/l10n/fr.json b/core/l10n/fr.json
index 6018277f26a..1b622a0fffb 100644
--- a/core/l10n/fr.json
+++ b/core/l10n/fr.json
@@ -2,7 +2,7 @@
"Couldn't send mail to following users: %s " : "Impossible d'envoyer un courriel aux utilisateurs suivants : %s",
"Turned on maintenance mode" : "Mode de maintenance activé",
"Turned off maintenance mode" : "Mode de maintenance désactivé",
- "Maintenance mode is kept active" : "Le mode de maintenance est laissé activé",
+ "Maintenance mode is kept active" : "Le mode de maintenance est laissé actif",
"Updated database" : "Base de données mise à jour",
"Checked database schema update" : "Mise à jour du schéma de la base de données vérifiée",
"Checked database schema update for apps" : "Mise à jour du schéma de la base de données pour les applications vérifiée",
@@ -148,6 +148,7 @@
"New Password" : "Nouveau mot de passe",
"Reset password" : "Réinitialiser le mot de passe",
"Searching other places" : "Recherche en cours dans d'autres emplacements",
+ "No search results in other places" : "Aucun résultat dans d'autres emplacements",
"_{count} search result in other places_::_{count} search results in other places_" : ["{count} résultat dans d'autres emplacements","{count} résultats dans d'autres emplacements"],
"Personal" : "Personnel",
"Users" : "Utilisateurs",
diff --git a/core/l10n/oc.js b/core/l10n/oc.js
index d09e9cca979..c88591d3e66 100644
--- a/core/l10n/oc.js
+++ b/core/l10n/oc.js
@@ -1,10 +1,29 @@
OC.L10N.register(
"core",
{
+ "Couldn't send mail to following users: %s " : "Impossible de mandar un corrièl als utilizaires seguents : %s",
+ "Turned on maintenance mode" : "Mòde de mantenença activat",
+ "Turned off maintenance mode" : "Mòde de mantenença desactivat",
+ "Updated database" : "Banca de donadas mesa a jorn",
+ "Checked database schema update" : "Mesa a jorn de l'esquèma de la banca de donadas verificada",
+ "Checked database schema update for apps" : "Mesa a jorn de l'esquèma de la banca de donadas per las aplicacions verificada",
+ "Updated \"%s\" to %s" : "Mesa a jorn de « %s » cap a %s",
+ "Repair warning: " : "Avertiment de reparacion :",
+ "Repair error: " : "Error de reparacion :",
+ "Following incompatible apps have been disabled: %s" : "Las aplicacions incompatiblas seguentas son estadas desactivadas : %s",
+ "Following 3rd party apps have been disabled: %s" : "Las aplicacions tèrças partidas seguentas son estadas desactivadas : %s",
+ "Invalid file provided" : "Fichièr invalid",
+ "No image or file provided" : "Cap de fichièr pas provesit",
+ "Unknown filetype" : "Tipe de fichièr desconegut",
+ "Invalid image" : "Imatge pas valable",
+ "No temporary profile picture available, try again" : "Cap d'imatge temporari pas disponible pel profil. Ensajatz tornamai.",
+ "No crop data provided" : "Cap de donada de requadratge pas provesida",
+ "No valid crop data provided" : "Donadas de requadratge invalidas",
+ "Crop is not square" : "Lo requadratge es pas carrat",
"Sunday" : "Dimenge",
"Monday" : "Diluns",
- "Tuesday" : "Dimarç",
- "Wednesday" : "Dimecres",
+ "Tuesday" : "Dimars",
+ "Wednesday" : "Dimècres",
"Thursday" : "Dijòus",
"Friday" : "Divendres",
"Saturday" : "Dissabte",
@@ -16,60 +35,204 @@ OC.L10N.register(
"June" : "junh",
"July" : "julhet",
"August" : "agost",
- "September" : "septembre",
+ "September" : "setembre",
"October" : "octobre",
- "November" : "Novembre",
- "December" : "Decembre",
- "Settings" : "Configuracion",
- "Saving..." : "Enregistra...",
+ "November" : "novembre",
+ "December" : "decembre",
+ "Settings" : "Paramètres",
+ "Saving..." : "Enregistrament…",
+ "Couldn't send reset email. Please contact your administrator." : "Impossible de mandar lo corrièl de reïnicializacion. Contactatz vòstre administrator.",
+ "The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "Lo ligam que permet de reïnicializar vòstre senhal ven d'èsser mandat a vòstra adreça de corrièl.<br>Se o recebètz pas dins un relambi rasonable, contactatz vòstre administrator.<br>Doblidetz pas de verificar dins vòstre dorsièr corrièr indesirable / spam!",
+ "Your files are encrypted. If you haven't enabled the recovery key, there will be no way to get your data back after your password is reset.<br />If you are not sure what to do, please contact your administrator before you continue. <br />Do you really want to continue?" : "Vòstres fichièrs son chifrats. Se avètz pas activat la clau de recuperacion, i aurà pas cap de mejan de recuperar vòstras donadas un còp lo senhal reïnicializat.<br />Se sètz pas segur(a) de çò que fasètz, contactatz vòstre administrator abans de contunhar. <br />Sètz segur que volètz contunhar ?",
+ "I know what I'm doing" : "Sabi çò que fau",
+ "Password can not be changed. Please contact your administrator." : "Lo senhal pòt pas èsser modificat. Contactatz vòstre administrator.",
"No" : "Non",
"Yes" : "Òc",
- "Choose" : "Causís",
- "Ok" : "D'accòrdi",
- "Cancel" : "Annula",
- "Share" : "Parteja",
+ "Choose" : "Causir",
+ "Error loading file picker template: {error}" : "Error al moment del cargament del modèl del selector de fichièrs : {error}",
+ "Ok" : "D'acòrdi",
+ "Error loading message template: {error}" : "Error de cargament del modèl de messatge : {error}",
+ "read-only" : "Lectura sola",
+ "_{count} file conflict_::_{count} file conflicts_" : ["{count} fichièr en conflicte","{count} fichièrs en conflicte"],
+ "One file conflict" : "Un conflicte de fichièr",
+ "New Files" : "Fichièrs novèls",
+ "Already existing files" : "Fichièrs ja existents",
+ "Which files do you want to keep?" : "Quines fichièrs volètz gardar ?",
+ "If you select both versions, the copied file will have a number added to its name." : "Se seleccionatz las doas versions, un nombre serà apondut al nom del fichièr copiat.",
+ "Cancel" : "Anullar",
+ "Continue" : "Contunhar",
+ "(all selected)" : "(totes seleccionats)",
+ "({count} selected)" : "({count} seleccionat(s))",
+ "Error loading file exists template" : "Error de cargament del modèl de fichièr existent",
+ "Very weak password" : "Senhal fòrt feble",
+ "Weak password" : "Senhal feble",
+ "So-so password" : "Senhal tot bèl juste acceptable",
+ "Good password" : "Senhal de seguretat sufisenta",
+ "Strong password" : "Senhal fòrt",
+ "Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Vòstre servidor web es pas corrèctament configurat per la sincronizacion de fichièrs : sembla que l'interfàcia WebDAV fonciona pas.",
+ "This server has no working Internet connection. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Aqueste servidor se pòt pas connectar a internet. Aquò significa que certanas foncionalitats, talas coma lo montatge de supòrts d'emmagazinatge distants, las notificacions de mesas a jorn o l'installacion d'aplicacions tèrças foncionaràn pas. L'accès als fichièrs a distància, e tanben las notificacions per mail pòdon tanben èsser indisponiblas. Es recomandat d'activar la connexion internet per aqueste servidor se volètz dispausar de l'ensemble de las foncionalitats ofèrtas.",
+ "Your data directory and your files are probably accessible from the Internet. The .htaccess file is not working. We strongly suggest that you configure your web server in a way that the data directory is no longer accessible or you move the data directory outside the web server document root." : "Vòstre dorsièr de donadas e vòstres fichièrs son probablament accessibles dempuèi internet. Lo fichièr .htaccess fonciona pas. Vos recomandam bravament de configurar vòstre servidor web de manièra qu'aqueste dorsièr de donadas siá pas mai accessible, o de lo desplaçar en defòra de la raiç del servidor web.",
+ "No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a href=\"{docLink}\">documentation</a>." : "Cap d'escondedor de la memòria es pas configurat. Se possible, configuratz un \"memcache\" per aumentar las performàncias. Per mai d'information consultatz la <a href=\"{docLink}\">documentacion</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a href=\"{docLink}\">documentation</a>." : "/dev/urandom es pas legible per PHP, aquò es bravament desconselhat per de rasons de seguretat. Mai d'informacions pòdon èsser trobadas dins nòstra <a href=\"{docLink}\">documentacion</a>.",
+ "Error occurred while checking server setup" : "Una error s'es produsida al moment de la verificacion de la configuracion del servidor",
+ "The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "L'entèsta HTTP \"{header}\" es pas configurada per èsser egala a \"{expected}\" en creant potencialament un risc religat a la seguretat e a la vida privada. Es doncas recomandat d'ajustar aqueste paramètre.",
+ "The \"Strict-Transport-Security\" HTTP header is not configured to least \"2,678,400\" seconds. This is a potential security risk and we recommend adjusting this setting." : "L'entèsta HTTP \"Strict-Transport-Security\" es pas configurada a \"2,678,400\" segondas. Es un risc de seguretat potencial e es doncas recomandat d'ajustar aqueste paramètre.",
+ "You are accessing this site via HTTP. We strongly suggest you configure your server to require using HTTPS instead." : "Accedissètz a aqueste site via HTTP. Vos recomandam bravament de configurar vòstre servidor per forçar l'utilizacion de HTTPS.",
+ "Shared" : "Partejat",
+ "Shared with {recipients}" : "Partejat amb {recipients}",
+ "Share" : "Partejar",
"Error" : "Error",
- "Error while sharing" : "Error al partejar",
- "Error while unsharing" : "Error al non partejar",
- "Error while changing permissions" : "Error al cambiar permissions",
- "Password protect" : "Parat per senhal",
+ "Error while sharing" : "Error al moment de la mesa en partiment",
+ "Error while unsharing" : "Error al moment de l'anullacion del partiment",
+ "Error while changing permissions" : "Error al moment del cambiament de las permissions",
+ "Shared with you and the group {group} by {owner}" : "Partejat amb vos e lo grop {group} per {owner}",
+ "Shared with you by {owner}" : "Partejat amb vos per {owner}",
+ "Share with users or groups …" : "Partejar amb d'utilizaires o gropes...",
+ "Share with users, groups or remote users …" : "Partejar amb d'utilizaires, gropes, o utilizaires distants",
+ "Share with people on other ownClouds using the syntax username@example.com/owncloud" : "Partejatz amb de personas sus d'autres ownClouds en utilizant la sintaxi utilizaire@exemple.com/owncloud",
+ "Share link" : "Partejar per ligam public",
+ "The public link will expire no later than {days} days after it is created" : "Aqueste ligam public expirarà al mai tard {days} jorns aprèp sa creacion.",
+ "Link" : "Ligam",
+ "Password protect" : "Protegir per un senhal",
"Password" : "Senhal",
- "Set expiration date" : "Met la data d'expiracion",
+ "Choose a password for the public link" : "Causissètz un senhal pel ligam public",
+ "Allow editing" : "Permetre la modificacion",
+ "Email link to person" : "Mandar lo ligam per corrièl",
+ "Send" : "Mandar",
+ "Set expiration date" : "Especificar una data d'expiracion",
+ "Expiration" : "Expiracion",
"Expiration date" : "Data d'expiracion",
+ "An error occured. Please try again" : "Una error s'es produsida. Mercé d'ensajar tornamai",
+ "Adding user..." : "Apondon de l'utilizaire...",
"group" : "grop",
- "Resharing is not allowed" : "Tornar partejar es pas permis",
- "Unshare" : "Pas partejador",
+ "remote" : "distant",
+ "Resharing is not allowed" : "Lo repartiment es pas autorizat",
+ "Shared in {item} with {user}" : "Partejat dins {item} amb {user}",
+ "Unshare" : "Partejar pas mai",
+ "notify by email" : "notificar per corrièl",
+ "can share" : "pòt partejar",
"can edit" : "pòt modificar",
- "access control" : "Contraròtle d'acces",
- "create" : "crea",
- "delete" : "escafa",
- "Password protected" : "Parat per senhal",
- "Error unsetting expiration date" : "Error al metre de la data d'expiracion",
- "Error setting expiration date" : "Error setting expiration date",
- "Delete" : "Escafa",
- "Add" : "Ajusta",
- "Use the following link to reset your password: {link}" : "Utiliza lo ligam seguent per tornar botar lo senhal : {link}",
+ "access control" : "contraròtle d'accès",
+ "create" : "crear",
+ "change" : "modificacion",
+ "delete" : "suprimir",
+ "Password protected" : "Protegit per senhal",
+ "Error unsetting expiration date" : "Error al moment de la supression de la data d'expiracion",
+ "Error setting expiration date" : "Error al moment de l'especificacion de la data d'expiracion",
+ "Sending ..." : "Mandadís…",
+ "Email sent" : "Corrièl mandat",
+ "Warning" : "Atencion",
+ "The object type is not specified." : "Lo tipe d'objècte es pas especificat.",
+ "Enter new" : "Picar un novèl",
+ "Delete" : "Suprimir",
+ "Add" : "Apondre",
+ "Edit tags" : "Modificar las etiquetas",
+ "Error loading dialog template: {error}" : "Error al moment del cargament del modèl de dialòg : {error}",
+ "No tags selected for deletion." : "Cap d'etiqueta pas seleccionada per la supression.",
+ "unknown text" : "tèxte desconegut",
+ "Hello world!" : "Hello world!",
+ "sunny" : "ensolelhat",
+ "Hello {name}, the weather is {weather}" : "Bonjorn {name}, lo temps es {weather}",
+ "Hello {name}" : "Adiu {name}",
+ "_download %n file_::_download %n files_" : ["Telecargar %n fichièr","Telecargar %n fichièrs"],
+ "{version} is available. Get more information on how to update." : "La version {version} es disponibla. Obtenètz mai d'informacions a prepaus d'aquesta mesa a jorn.",
+ "Updating {productName} to version {version}, this may take a while." : "La mesa a jorn de {productName} cap a la version {version} es en cors. Aquò pòt prene un certan temps.",
+ "Please reload the page." : "Recargatz la pagina.",
+ "The update was unsuccessful. " : "La mesa a jorn a fracassat.",
+ "The update was successful. Redirecting you to ownCloud now." : "La mesa a jorn a capitat. Ara sètz redirigit cap a ownCloud.",
+ "Couldn't reset password because the token is invalid" : "Impossible de reïnicializar lo senhal perque lo geton es pas valable.",
+ "Couldn't send reset email. Please make sure your username is correct." : "Impossible de mandar lo corrièl de reïnicializacion. Verificatz que vòstre nom d'utilizaire es corrècte.",
+ "Couldn't send reset email because there is no email address for this username. Please contact your administrator." : "Impossible de mandar lo corrièl de reïnicializacion perque i a pas cap d'adreça de corrièl per aqueste utilizaire. Contactatz vòstre administrator.",
+ "%s password reset" : "Reïnicializacion de vòstre senhal %s",
+ "Use the following link to reset your password: {link}" : "Utilizatz lo ligam seguent per reïnicializar vòstre senhal : {link}",
"New password" : "Senhal novèl",
- "Reset password" : "Senhal tornat botar",
+ "New Password" : "Senhal novèl",
+ "Reset password" : "Reïnicializar lo senhal",
+ "Searching other places" : "Recèrca en cors dins d'autres emplaçaments",
+ "_{count} search result in other places_::_{count} search results in other places_" : ["{count} resultat dins d'autres emplaçaments","{count} resultats dins d'autres emplaçaments"],
"Personal" : "Personal",
- "Users" : "Usancièrs",
- "Apps" : "Apps",
- "Admin" : "Admin",
+ "Users" : "Utilizaires",
+ "Apps" : "Aplicacions",
+ "Admin" : "Administracion",
"Help" : "Ajuda",
- "Access forbidden" : "Acces enebit",
- "Create an <strong>admin account</strong>" : "Crea un <strong>compte admin</strong>",
- "Username" : "Non d'usancièr",
- "Data folder" : "Dorsièr de donadas",
- "Configure the database" : "Configura la basa de donadas",
- "Database user" : "Usancièr de la basa de donadas",
- "Database password" : "Senhal de la basa de donadas",
- "Database name" : "Nom de la basa de donadas",
- "Database tablespace" : "Espandi de taula de basa de donadas",
- "Database host" : "Òste de basa de donadas",
- "Finish setup" : "Configuracion acabada",
- "Log out" : "Sortida",
- "Search" : "Cèrca",
- "remember" : "bremba-te",
- "Log in" : "Dintrada"
+ "Error loading tags" : "Error al moment del cargament de las etiquetas",
+ "Tag already exists" : "L'etiqueta existís ja.",
+ "Error deleting tag(s)" : "Error de supression d'etiqueta(s)",
+ "Error tagging" : "Error al moment de l'etiquetatge",
+ "Error untagging" : "Error al moment del desetiquetatge",
+ "Error favoriting" : "Error al moment de la mesa en favorit",
+ "Error unfavoriting" : "Error al moment de la supression dels favorits",
+ "Access forbidden" : "Accès interdich",
+ "File not found" : "Fichièr pas trobat",
+ "The specified document has not been found on the server." : "Impossible de trobar lo document especificat sul servidor.",
+ "You can click here to return to %s." : "Podètz clicar aicí per tornar a %s.",
+ "Hey there,\n\njust letting you know that %s shared %s with you.\nView it: %s\n\n" : "Bonjorn,\n\nVos informam que %s a partejat \"%s\" amb vos.\nI podètz accedir a l'adreça seguenta : %s\n",
+ "The share will expire on %s." : "Lo partiment expirarà lo %s.",
+ "Cheers!" : "A lèu !",
+ "Internal Server Error" : "Error intèrna del servidor",
+ "The server encountered an internal error and was unable to complete your request." : "Lo servidor a rencontrat una error intèrna e es incapable d'executar vòstra requèsta.",
+ "Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report." : "Contactatz l'administrator del servidor se aquesta error apareis mantun còp. Jonhètz los detalhs tecnics a vòstre rapòrt.",
+ "More details can be found in the server log." : "Lo fichièr jornal del servidor pòt provesir mai d'entresenhas.",
+ "Technical details" : "Enstresenhas tecnicas",
+ "Remote Address: %s" : "Adreça distanta : %s",
+ "Request ID: %s" : "ID de la demanda : %s",
+ "Type: %s" : "Tipe : %s",
+ "Code: %s" : "Còde : %s",
+ "Message: %s" : "Messatge : %s",
+ "File: %s" : "Fichièr : %s",
+ "Line: %s" : "Linha : %s",
+ "Trace" : "Traça",
+ "Security warning" : "Avertiment de seguretat",
+ "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Vòstre repertòri de donadas es segurament accessible dempuèi l'internet perque lo fichièr .htaccess fonciona pas.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\">documentation</a>." : "Per las informacions de configuracion de vòstre servidor, legissètz la <a href=\"%s\" target=\"_blank\">documentacion</a>.",
+ "Create an <strong>admin account</strong>" : "Crear un <strong>compte administrator</strong>",
+ "Username" : "Nom d'utilizaire",
+ "Storage & database" : "Emmagazinatge & banca de donadas",
+ "Data folder" : "Repertòri de las donadas",
+ "Configure the database" : "Configurar la banca de donadas",
+ "Only %s is available." : "%s solament es disponible.",
+ "Install and activate additional PHP modules to choose other database types." : "Installatz e activatz los moduls PHP addicionals adeqüats per causir d'autres tipes de banca de donadas.",
+ "For more details check out the documentation." : "Consultatz la documentacion per mai de detalhs.",
+ "Database user" : "Utilizaire de la banca de donadas",
+ "Database password" : "Senhal de la banca de donadas",
+ "Database name" : "Nom de la banca de donadas",
+ "Database tablespace" : "Tablespace de la banca de donadas",
+ "Database host" : "Òste de la banca de donadas",
+ "Performance warning" : "Avertiment de performància",
+ "SQLite will be used as database." : "SQLite serà utilizat coma gestionari de banca de donadas.",
+ "For larger installations we recommend to choose a different database backend." : "Per d'installacions mai voluminosas, vos conselham d'utilizar un autre gestionari de banca de donadas.",
+ "Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "En particular se utilizatz lo client de burèu per sincronizar vòstras donadas : l'utilizacion de SQLite es alara desconselhada.",
+ "Finish setup" : "Acabar l'installacion",
+ "Finishing …" : "Finalizacion …",
+ "Need help?" : "Besonh d'ajuda ?",
+ "See the documentation" : "Legir la documentacion",
+ "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Aquesta aplicacion requerís JavaScript per foncionar corrèctament. {linkstart}Activatz JavaScript{linkend} e recargatz la pagina.",
+ "Log out" : "Se desconnectar",
+ "Search" : "Recercar",
+ "Server side authentication failed!" : "L'autentificacion sul servidor a fracassat !",
+ "Please contact your administrator." : "Contactatz vòstre administrator.",
+ "An internal error occured." : "Una error intèrna s'es produsida.",
+ "Please try again or contact your administrator." : "Reensajatz o contactatz vòstre administrator.",
+ "Forgot your password? Reset it!" : "Senhal doblidat ? Reïnicializatz-lo !",
+ "remember" : "se remembrar de ieu",
+ "Log in" : "Connexion",
+ "Alternative Logins" : "Identificants alternatius",
+ "Hey there,<br><br>just letting you know that %s shared <strong>%s</strong> with you.<br><a href=\"%s\">View it!</a><br><br>" : "Bonjorn,<br><br>Vos informam que %s a partejat <strong>%s</strong> amb vos.<br><a href=\"%s\">Clicatz aicí per i accedir !</a><br><br>",
+ "This ownCloud instance is currently in single user mode." : "Aquesta instància de ownCloud es actualament en mòde utilizaire unic.",
+ "This means only administrators can use the instance." : "Aquò significa que sols los administrators pòdon utilizar l'instància.",
+ "Contact your system administrator if this message persists or appeared unexpectedly." : "Contactatz vòstre administrator sistèma se aqueste messatge persistís o apareis de faiçon imprevista.",
+ "Thank you for your patience." : "Mercé de vòstra paciéncia.",
+ "You are accessing the server from an untrusted domain." : "Accedissètz al servidor a partir d'un domeni pas aprovat.",
+ "Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domain\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "Contactatz vòstre administrator. Se sètz administrator d'aquesta instància, configuratz lo paramètre « trusted_domain » dins lo fichièr config/config.php. Un exemple de configuracion es provesit dins lo fichièr config/config.sample.php.",
+ "Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "En foncion de vòstra configuracion, en tant qu'administrator podètz tanben utilizar lo boton çaijós per aprovar aqueste domeni.",
+ "Add \"%s\" as trusted domain" : "Apondre \"%s\" a la lista dels domenis aprovats",
+ "%s will be updated to version %s." : "%s serà mes a jorn cap a la version %s.",
+ "The following apps will be disabled:" : "Las aplicacions seguentas seràn desactivadas :",
+ "The theme %s has been disabled." : "Lo tèma %s es estat desactivat.",
+ "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Asseguratz-vos qu'una còpia de salvament de la banca de donadas, del dorsièr de configuracion (config) e del dorsièr de donadas (data) es estat realizada abans de començar.",
+ "Start update" : "Aviar la mesa a jorn",
+ "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "Per fin d'evitar los timeouts amb las installacions de volum consequent, podètz executar la comanda seguenta dempuèi lo repertòri d'installacion :",
+ "This %s instance is currently in maintenance mode, which may take a while." : "Aquesta instància de %s es en cors de mantenença, aquò pòt prene de temps.",
+ "This page will refresh itself when the %s instance is available again." : "Aquesta pagina se refrescarà d'ela-meteissa quand l'instància %s serà disponibla tornamai."
},
"nplurals=2; plural=(n > 1);");
diff --git a/core/l10n/oc.json b/core/l10n/oc.json
index df752a7b65b..93711145687 100644
--- a/core/l10n/oc.json
+++ b/core/l10n/oc.json
@@ -1,8 +1,27 @@
{ "translations": {
+ "Couldn't send mail to following users: %s " : "Impossible de mandar un corrièl als utilizaires seguents : %s",
+ "Turned on maintenance mode" : "Mòde de mantenença activat",
+ "Turned off maintenance mode" : "Mòde de mantenença desactivat",
+ "Updated database" : "Banca de donadas mesa a jorn",
+ "Checked database schema update" : "Mesa a jorn de l'esquèma de la banca de donadas verificada",
+ "Checked database schema update for apps" : "Mesa a jorn de l'esquèma de la banca de donadas per las aplicacions verificada",
+ "Updated \"%s\" to %s" : "Mesa a jorn de « %s » cap a %s",
+ "Repair warning: " : "Avertiment de reparacion :",
+ "Repair error: " : "Error de reparacion :",
+ "Following incompatible apps have been disabled: %s" : "Las aplicacions incompatiblas seguentas son estadas desactivadas : %s",
+ "Following 3rd party apps have been disabled: %s" : "Las aplicacions tèrças partidas seguentas son estadas desactivadas : %s",
+ "Invalid file provided" : "Fichièr invalid",
+ "No image or file provided" : "Cap de fichièr pas provesit",
+ "Unknown filetype" : "Tipe de fichièr desconegut",
+ "Invalid image" : "Imatge pas valable",
+ "No temporary profile picture available, try again" : "Cap d'imatge temporari pas disponible pel profil. Ensajatz tornamai.",
+ "No crop data provided" : "Cap de donada de requadratge pas provesida",
+ "No valid crop data provided" : "Donadas de requadratge invalidas",
+ "Crop is not square" : "Lo requadratge es pas carrat",
"Sunday" : "Dimenge",
"Monday" : "Diluns",
- "Tuesday" : "Dimarç",
- "Wednesday" : "Dimecres",
+ "Tuesday" : "Dimars",
+ "Wednesday" : "Dimècres",
"Thursday" : "Dijòus",
"Friday" : "Divendres",
"Saturday" : "Dissabte",
@@ -14,60 +33,204 @@
"June" : "junh",
"July" : "julhet",
"August" : "agost",
- "September" : "septembre",
+ "September" : "setembre",
"October" : "octobre",
- "November" : "Novembre",
- "December" : "Decembre",
- "Settings" : "Configuracion",
- "Saving..." : "Enregistra...",
+ "November" : "novembre",
+ "December" : "decembre",
+ "Settings" : "Paramètres",
+ "Saving..." : "Enregistrament…",
+ "Couldn't send reset email. Please contact your administrator." : "Impossible de mandar lo corrièl de reïnicializacion. Contactatz vòstre administrator.",
+ "The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "Lo ligam que permet de reïnicializar vòstre senhal ven d'èsser mandat a vòstra adreça de corrièl.<br>Se o recebètz pas dins un relambi rasonable, contactatz vòstre administrator.<br>Doblidetz pas de verificar dins vòstre dorsièr corrièr indesirable / spam!",
+ "Your files are encrypted. If you haven't enabled the recovery key, there will be no way to get your data back after your password is reset.<br />If you are not sure what to do, please contact your administrator before you continue. <br />Do you really want to continue?" : "Vòstres fichièrs son chifrats. Se avètz pas activat la clau de recuperacion, i aurà pas cap de mejan de recuperar vòstras donadas un còp lo senhal reïnicializat.<br />Se sètz pas segur(a) de çò que fasètz, contactatz vòstre administrator abans de contunhar. <br />Sètz segur que volètz contunhar ?",
+ "I know what I'm doing" : "Sabi çò que fau",
+ "Password can not be changed. Please contact your administrator." : "Lo senhal pòt pas èsser modificat. Contactatz vòstre administrator.",
"No" : "Non",
"Yes" : "Òc",
- "Choose" : "Causís",
- "Ok" : "D'accòrdi",
- "Cancel" : "Annula",
- "Share" : "Parteja",
+ "Choose" : "Causir",
+ "Error loading file picker template: {error}" : "Error al moment del cargament del modèl del selector de fichièrs : {error}",
+ "Ok" : "D'acòrdi",
+ "Error loading message template: {error}" : "Error de cargament del modèl de messatge : {error}",
+ "read-only" : "Lectura sola",
+ "_{count} file conflict_::_{count} file conflicts_" : ["{count} fichièr en conflicte","{count} fichièrs en conflicte"],
+ "One file conflict" : "Un conflicte de fichièr",
+ "New Files" : "Fichièrs novèls",
+ "Already existing files" : "Fichièrs ja existents",
+ "Which files do you want to keep?" : "Quines fichièrs volètz gardar ?",
+ "If you select both versions, the copied file will have a number added to its name." : "Se seleccionatz las doas versions, un nombre serà apondut al nom del fichièr copiat.",
+ "Cancel" : "Anullar",
+ "Continue" : "Contunhar",
+ "(all selected)" : "(totes seleccionats)",
+ "({count} selected)" : "({count} seleccionat(s))",
+ "Error loading file exists template" : "Error de cargament del modèl de fichièr existent",
+ "Very weak password" : "Senhal fòrt feble",
+ "Weak password" : "Senhal feble",
+ "So-so password" : "Senhal tot bèl juste acceptable",
+ "Good password" : "Senhal de seguretat sufisenta",
+ "Strong password" : "Senhal fòrt",
+ "Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Vòstre servidor web es pas corrèctament configurat per la sincronizacion de fichièrs : sembla que l'interfàcia WebDAV fonciona pas.",
+ "This server has no working Internet connection. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Aqueste servidor se pòt pas connectar a internet. Aquò significa que certanas foncionalitats, talas coma lo montatge de supòrts d'emmagazinatge distants, las notificacions de mesas a jorn o l'installacion d'aplicacions tèrças foncionaràn pas. L'accès als fichièrs a distància, e tanben las notificacions per mail pòdon tanben èsser indisponiblas. Es recomandat d'activar la connexion internet per aqueste servidor se volètz dispausar de l'ensemble de las foncionalitats ofèrtas.",
+ "Your data directory and your files are probably accessible from the Internet. The .htaccess file is not working. We strongly suggest that you configure your web server in a way that the data directory is no longer accessible or you move the data directory outside the web server document root." : "Vòstre dorsièr de donadas e vòstres fichièrs son probablament accessibles dempuèi internet. Lo fichièr .htaccess fonciona pas. Vos recomandam bravament de configurar vòstre servidor web de manièra qu'aqueste dorsièr de donadas siá pas mai accessible, o de lo desplaçar en defòra de la raiç del servidor web.",
+ "No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a href=\"{docLink}\">documentation</a>." : "Cap d'escondedor de la memòria es pas configurat. Se possible, configuratz un \"memcache\" per aumentar las performàncias. Per mai d'information consultatz la <a href=\"{docLink}\">documentacion</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a href=\"{docLink}\">documentation</a>." : "/dev/urandom es pas legible per PHP, aquò es bravament desconselhat per de rasons de seguretat. Mai d'informacions pòdon èsser trobadas dins nòstra <a href=\"{docLink}\">documentacion</a>.",
+ "Error occurred while checking server setup" : "Una error s'es produsida al moment de la verificacion de la configuracion del servidor",
+ "The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "L'entèsta HTTP \"{header}\" es pas configurada per èsser egala a \"{expected}\" en creant potencialament un risc religat a la seguretat e a la vida privada. Es doncas recomandat d'ajustar aqueste paramètre.",
+ "The \"Strict-Transport-Security\" HTTP header is not configured to least \"2,678,400\" seconds. This is a potential security risk and we recommend adjusting this setting." : "L'entèsta HTTP \"Strict-Transport-Security\" es pas configurada a \"2,678,400\" segondas. Es un risc de seguretat potencial e es doncas recomandat d'ajustar aqueste paramètre.",
+ "You are accessing this site via HTTP. We strongly suggest you configure your server to require using HTTPS instead." : "Accedissètz a aqueste site via HTTP. Vos recomandam bravament de configurar vòstre servidor per forçar l'utilizacion de HTTPS.",
+ "Shared" : "Partejat",
+ "Shared with {recipients}" : "Partejat amb {recipients}",
+ "Share" : "Partejar",
"Error" : "Error",
- "Error while sharing" : "Error al partejar",
- "Error while unsharing" : "Error al non partejar",
- "Error while changing permissions" : "Error al cambiar permissions",
- "Password protect" : "Parat per senhal",
+ "Error while sharing" : "Error al moment de la mesa en partiment",
+ "Error while unsharing" : "Error al moment de l'anullacion del partiment",
+ "Error while changing permissions" : "Error al moment del cambiament de las permissions",
+ "Shared with you and the group {group} by {owner}" : "Partejat amb vos e lo grop {group} per {owner}",
+ "Shared with you by {owner}" : "Partejat amb vos per {owner}",
+ "Share with users or groups …" : "Partejar amb d'utilizaires o gropes...",
+ "Share with users, groups or remote users …" : "Partejar amb d'utilizaires, gropes, o utilizaires distants",
+ "Share with people on other ownClouds using the syntax username@example.com/owncloud" : "Partejatz amb de personas sus d'autres ownClouds en utilizant la sintaxi utilizaire@exemple.com/owncloud",
+ "Share link" : "Partejar per ligam public",
+ "The public link will expire no later than {days} days after it is created" : "Aqueste ligam public expirarà al mai tard {days} jorns aprèp sa creacion.",
+ "Link" : "Ligam",
+ "Password protect" : "Protegir per un senhal",
"Password" : "Senhal",
- "Set expiration date" : "Met la data d'expiracion",
+ "Choose a password for the public link" : "Causissètz un senhal pel ligam public",
+ "Allow editing" : "Permetre la modificacion",
+ "Email link to person" : "Mandar lo ligam per corrièl",
+ "Send" : "Mandar",
+ "Set expiration date" : "Especificar una data d'expiracion",
+ "Expiration" : "Expiracion",
"Expiration date" : "Data d'expiracion",
+ "An error occured. Please try again" : "Una error s'es produsida. Mercé d'ensajar tornamai",
+ "Adding user..." : "Apondon de l'utilizaire...",
"group" : "grop",
- "Resharing is not allowed" : "Tornar partejar es pas permis",
- "Unshare" : "Pas partejador",
+ "remote" : "distant",
+ "Resharing is not allowed" : "Lo repartiment es pas autorizat",
+ "Shared in {item} with {user}" : "Partejat dins {item} amb {user}",
+ "Unshare" : "Partejar pas mai",
+ "notify by email" : "notificar per corrièl",
+ "can share" : "pòt partejar",
"can edit" : "pòt modificar",
- "access control" : "Contraròtle d'acces",
- "create" : "crea",
- "delete" : "escafa",
- "Password protected" : "Parat per senhal",
- "Error unsetting expiration date" : "Error al metre de la data d'expiracion",
- "Error setting expiration date" : "Error setting expiration date",
- "Delete" : "Escafa",
- "Add" : "Ajusta",
- "Use the following link to reset your password: {link}" : "Utiliza lo ligam seguent per tornar botar lo senhal : {link}",
+ "access control" : "contraròtle d'accès",
+ "create" : "crear",
+ "change" : "modificacion",
+ "delete" : "suprimir",
+ "Password protected" : "Protegit per senhal",
+ "Error unsetting expiration date" : "Error al moment de la supression de la data d'expiracion",
+ "Error setting expiration date" : "Error al moment de l'especificacion de la data d'expiracion",
+ "Sending ..." : "Mandadís…",
+ "Email sent" : "Corrièl mandat",
+ "Warning" : "Atencion",
+ "The object type is not specified." : "Lo tipe d'objècte es pas especificat.",
+ "Enter new" : "Picar un novèl",
+ "Delete" : "Suprimir",
+ "Add" : "Apondre",
+ "Edit tags" : "Modificar las etiquetas",
+ "Error loading dialog template: {error}" : "Error al moment del cargament del modèl de dialòg : {error}",
+ "No tags selected for deletion." : "Cap d'etiqueta pas seleccionada per la supression.",
+ "unknown text" : "tèxte desconegut",
+ "Hello world!" : "Hello world!",
+ "sunny" : "ensolelhat",
+ "Hello {name}, the weather is {weather}" : "Bonjorn {name}, lo temps es {weather}",
+ "Hello {name}" : "Adiu {name}",
+ "_download %n file_::_download %n files_" : ["Telecargar %n fichièr","Telecargar %n fichièrs"],
+ "{version} is available. Get more information on how to update." : "La version {version} es disponibla. Obtenètz mai d'informacions a prepaus d'aquesta mesa a jorn.",
+ "Updating {productName} to version {version}, this may take a while." : "La mesa a jorn de {productName} cap a la version {version} es en cors. Aquò pòt prene un certan temps.",
+ "Please reload the page." : "Recargatz la pagina.",
+ "The update was unsuccessful. " : "La mesa a jorn a fracassat.",
+ "The update was successful. Redirecting you to ownCloud now." : "La mesa a jorn a capitat. Ara sètz redirigit cap a ownCloud.",
+ "Couldn't reset password because the token is invalid" : "Impossible de reïnicializar lo senhal perque lo geton es pas valable.",
+ "Couldn't send reset email. Please make sure your username is correct." : "Impossible de mandar lo corrièl de reïnicializacion. Verificatz que vòstre nom d'utilizaire es corrècte.",
+ "Couldn't send reset email because there is no email address for this username. Please contact your administrator." : "Impossible de mandar lo corrièl de reïnicializacion perque i a pas cap d'adreça de corrièl per aqueste utilizaire. Contactatz vòstre administrator.",
+ "%s password reset" : "Reïnicializacion de vòstre senhal %s",
+ "Use the following link to reset your password: {link}" : "Utilizatz lo ligam seguent per reïnicializar vòstre senhal : {link}",
"New password" : "Senhal novèl",
- "Reset password" : "Senhal tornat botar",
+ "New Password" : "Senhal novèl",
+ "Reset password" : "Reïnicializar lo senhal",
+ "Searching other places" : "Recèrca en cors dins d'autres emplaçaments",
+ "_{count} search result in other places_::_{count} search results in other places_" : ["{count} resultat dins d'autres emplaçaments","{count} resultats dins d'autres emplaçaments"],
"Personal" : "Personal",
- "Users" : "Usancièrs",
- "Apps" : "Apps",
- "Admin" : "Admin",
+ "Users" : "Utilizaires",
+ "Apps" : "Aplicacions",
+ "Admin" : "Administracion",
"Help" : "Ajuda",
- "Access forbidden" : "Acces enebit",
- "Create an <strong>admin account</strong>" : "Crea un <strong>compte admin</strong>",
- "Username" : "Non d'usancièr",
- "Data folder" : "Dorsièr de donadas",
- "Configure the database" : "Configura la basa de donadas",
- "Database user" : "Usancièr de la basa de donadas",
- "Database password" : "Senhal de la basa de donadas",
- "Database name" : "Nom de la basa de donadas",
- "Database tablespace" : "Espandi de taula de basa de donadas",
- "Database host" : "Òste de basa de donadas",
- "Finish setup" : "Configuracion acabada",
- "Log out" : "Sortida",
- "Search" : "Cèrca",
- "remember" : "bremba-te",
- "Log in" : "Dintrada"
+ "Error loading tags" : "Error al moment del cargament de las etiquetas",
+ "Tag already exists" : "L'etiqueta existís ja.",
+ "Error deleting tag(s)" : "Error de supression d'etiqueta(s)",
+ "Error tagging" : "Error al moment de l'etiquetatge",
+ "Error untagging" : "Error al moment del desetiquetatge",
+ "Error favoriting" : "Error al moment de la mesa en favorit",
+ "Error unfavoriting" : "Error al moment de la supression dels favorits",
+ "Access forbidden" : "Accès interdich",
+ "File not found" : "Fichièr pas trobat",
+ "The specified document has not been found on the server." : "Impossible de trobar lo document especificat sul servidor.",
+ "You can click here to return to %s." : "Podètz clicar aicí per tornar a %s.",
+ "Hey there,\n\njust letting you know that %s shared %s with you.\nView it: %s\n\n" : "Bonjorn,\n\nVos informam que %s a partejat \"%s\" amb vos.\nI podètz accedir a l'adreça seguenta : %s\n",
+ "The share will expire on %s." : "Lo partiment expirarà lo %s.",
+ "Cheers!" : "A lèu !",
+ "Internal Server Error" : "Error intèrna del servidor",
+ "The server encountered an internal error and was unable to complete your request." : "Lo servidor a rencontrat una error intèrna e es incapable d'executar vòstra requèsta.",
+ "Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report." : "Contactatz l'administrator del servidor se aquesta error apareis mantun còp. Jonhètz los detalhs tecnics a vòstre rapòrt.",
+ "More details can be found in the server log." : "Lo fichièr jornal del servidor pòt provesir mai d'entresenhas.",
+ "Technical details" : "Enstresenhas tecnicas",
+ "Remote Address: %s" : "Adreça distanta : %s",
+ "Request ID: %s" : "ID de la demanda : %s",
+ "Type: %s" : "Tipe : %s",
+ "Code: %s" : "Còde : %s",
+ "Message: %s" : "Messatge : %s",
+ "File: %s" : "Fichièr : %s",
+ "Line: %s" : "Linha : %s",
+ "Trace" : "Traça",
+ "Security warning" : "Avertiment de seguretat",
+ "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Vòstre repertòri de donadas es segurament accessible dempuèi l'internet perque lo fichièr .htaccess fonciona pas.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\">documentation</a>." : "Per las informacions de configuracion de vòstre servidor, legissètz la <a href=\"%s\" target=\"_blank\">documentacion</a>.",
+ "Create an <strong>admin account</strong>" : "Crear un <strong>compte administrator</strong>",
+ "Username" : "Nom d'utilizaire",
+ "Storage & database" : "Emmagazinatge & banca de donadas",
+ "Data folder" : "Repertòri de las donadas",
+ "Configure the database" : "Configurar la banca de donadas",
+ "Only %s is available." : "%s solament es disponible.",
+ "Install and activate additional PHP modules to choose other database types." : "Installatz e activatz los moduls PHP addicionals adeqüats per causir d'autres tipes de banca de donadas.",
+ "For more details check out the documentation." : "Consultatz la documentacion per mai de detalhs.",
+ "Database user" : "Utilizaire de la banca de donadas",
+ "Database password" : "Senhal de la banca de donadas",
+ "Database name" : "Nom de la banca de donadas",
+ "Database tablespace" : "Tablespace de la banca de donadas",
+ "Database host" : "Òste de la banca de donadas",
+ "Performance warning" : "Avertiment de performància",
+ "SQLite will be used as database." : "SQLite serà utilizat coma gestionari de banca de donadas.",
+ "For larger installations we recommend to choose a different database backend." : "Per d'installacions mai voluminosas, vos conselham d'utilizar un autre gestionari de banca de donadas.",
+ "Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "En particular se utilizatz lo client de burèu per sincronizar vòstras donadas : l'utilizacion de SQLite es alara desconselhada.",
+ "Finish setup" : "Acabar l'installacion",
+ "Finishing …" : "Finalizacion …",
+ "Need help?" : "Besonh d'ajuda ?",
+ "See the documentation" : "Legir la documentacion",
+ "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Aquesta aplicacion requerís JavaScript per foncionar corrèctament. {linkstart}Activatz JavaScript{linkend} e recargatz la pagina.",
+ "Log out" : "Se desconnectar",
+ "Search" : "Recercar",
+ "Server side authentication failed!" : "L'autentificacion sul servidor a fracassat !",
+ "Please contact your administrator." : "Contactatz vòstre administrator.",
+ "An internal error occured." : "Una error intèrna s'es produsida.",
+ "Please try again or contact your administrator." : "Reensajatz o contactatz vòstre administrator.",
+ "Forgot your password? Reset it!" : "Senhal doblidat ? Reïnicializatz-lo !",
+ "remember" : "se remembrar de ieu",
+ "Log in" : "Connexion",
+ "Alternative Logins" : "Identificants alternatius",
+ "Hey there,<br><br>just letting you know that %s shared <strong>%s</strong> with you.<br><a href=\"%s\">View it!</a><br><br>" : "Bonjorn,<br><br>Vos informam que %s a partejat <strong>%s</strong> amb vos.<br><a href=\"%s\">Clicatz aicí per i accedir !</a><br><br>",
+ "This ownCloud instance is currently in single user mode." : "Aquesta instància de ownCloud es actualament en mòde utilizaire unic.",
+ "This means only administrators can use the instance." : "Aquò significa que sols los administrators pòdon utilizar l'instància.",
+ "Contact your system administrator if this message persists or appeared unexpectedly." : "Contactatz vòstre administrator sistèma se aqueste messatge persistís o apareis de faiçon imprevista.",
+ "Thank you for your patience." : "Mercé de vòstra paciéncia.",
+ "You are accessing the server from an untrusted domain." : "Accedissètz al servidor a partir d'un domeni pas aprovat.",
+ "Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domain\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "Contactatz vòstre administrator. Se sètz administrator d'aquesta instància, configuratz lo paramètre « trusted_domain » dins lo fichièr config/config.php. Un exemple de configuracion es provesit dins lo fichièr config/config.sample.php.",
+ "Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "En foncion de vòstra configuracion, en tant qu'administrator podètz tanben utilizar lo boton çaijós per aprovar aqueste domeni.",
+ "Add \"%s\" as trusted domain" : "Apondre \"%s\" a la lista dels domenis aprovats",
+ "%s will be updated to version %s." : "%s serà mes a jorn cap a la version %s.",
+ "The following apps will be disabled:" : "Las aplicacions seguentas seràn desactivadas :",
+ "The theme %s has been disabled." : "Lo tèma %s es estat desactivat.",
+ "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Asseguratz-vos qu'una còpia de salvament de la banca de donadas, del dorsièr de configuracion (config) e del dorsièr de donadas (data) es estat realizada abans de començar.",
+ "Start update" : "Aviar la mesa a jorn",
+ "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "Per fin d'evitar los timeouts amb las installacions de volum consequent, podètz executar la comanda seguenta dempuèi lo repertòri d'installacion :",
+ "This %s instance is currently in maintenance mode, which may take a while." : "Aquesta instància de %s es en cors de mantenença, aquò pòt prene de temps.",
+ "This page will refresh itself when the %s instance is available again." : "Aquesta pagina se refrescarà d'ela-meteissa quand l'instància %s serà disponibla tornamai."
},"pluralForm" :"nplurals=2; plural=(n > 1);"
} \ No newline at end of file
diff --git a/core/l10n/sk_SK.js b/core/l10n/sk_SK.js
index c4ceee25ae8..4f7fa0a728f 100644
--- a/core/l10n/sk_SK.js
+++ b/core/l10n/sk_SK.js
@@ -3,18 +3,21 @@ OC.L10N.register(
{
"Couldn't send mail to following users: %s " : "Nebolo možné odoslať email týmto používateľom: %s ",
"Turned on maintenance mode" : "Mód údržby je zapnutý",
- "Turned off maintenance mode" : "Mód údržby e vypnutý",
+ "Turned off maintenance mode" : "Mód údržby je vypnutý",
"Updated database" : "Databáza je aktualizovaná",
"Checked database schema update" : "Skontrolovať aktualizáciu schémy databázy",
"Checked database schema update for apps" : "Aktualizácia schémy databázy aplikácií bola overená",
"Updated \"%s\" to %s" : "Aktualizované \"%s\" na %s",
"Following incompatible apps have been disabled: %s" : "Nasledovné nekompatibilné aplikácie boli zakázané: %s",
"Following 3rd party apps have been disabled: %s" : "Nasledovné aplikácie tretích strán boli zakázané: %s",
+ "Invalid file provided" : "Zadaný neplatný súbor",
"No image or file provided" : "Obrázok alebo súbor nebol zadaný",
"Unknown filetype" : "Neznámy typ súboru",
"Invalid image" : "Chybný obrázok",
"No temporary profile picture available, try again" : "Dočasný profilový obrázok nie je k dispozícii, skúste to znovu",
"No crop data provided" : "Dáta pre orezanie neboli zadané",
+ "No valid crop data provided" : "Neplatné dáta pre orezanie neboli zadané",
+ "Crop is not square" : "Orezanie nie je štvorcové",
"Sunday" : "Nedeľa",
"Monday" : "Pondelok",
"Tuesday" : "Utorok",
diff --git a/core/l10n/sk_SK.json b/core/l10n/sk_SK.json
index 1fe5a675e3a..e03cf9f12d2 100644
--- a/core/l10n/sk_SK.json
+++ b/core/l10n/sk_SK.json
@@ -1,18 +1,21 @@
{ "translations": {
"Couldn't send mail to following users: %s " : "Nebolo možné odoslať email týmto používateľom: %s ",
"Turned on maintenance mode" : "Mód údržby je zapnutý",
- "Turned off maintenance mode" : "Mód údržby e vypnutý",
+ "Turned off maintenance mode" : "Mód údržby je vypnutý",
"Updated database" : "Databáza je aktualizovaná",
"Checked database schema update" : "Skontrolovať aktualizáciu schémy databázy",
"Checked database schema update for apps" : "Aktualizácia schémy databázy aplikácií bola overená",
"Updated \"%s\" to %s" : "Aktualizované \"%s\" na %s",
"Following incompatible apps have been disabled: %s" : "Nasledovné nekompatibilné aplikácie boli zakázané: %s",
"Following 3rd party apps have been disabled: %s" : "Nasledovné aplikácie tretích strán boli zakázané: %s",
+ "Invalid file provided" : "Zadaný neplatný súbor",
"No image or file provided" : "Obrázok alebo súbor nebol zadaný",
"Unknown filetype" : "Neznámy typ súboru",
"Invalid image" : "Chybný obrázok",
"No temporary profile picture available, try again" : "Dočasný profilový obrázok nie je k dispozícii, skúste to znovu",
"No crop data provided" : "Dáta pre orezanie neboli zadané",
+ "No valid crop data provided" : "Neplatné dáta pre orezanie neboli zadané",
+ "Crop is not square" : "Orezanie nie je štvorcové",
"Sunday" : "Nedeľa",
"Monday" : "Pondelok",
"Tuesday" : "Utorok",
diff --git a/core/l10n/sr.js b/core/l10n/sr.js
index f68bf204f12..1a73910d279 100644
--- a/core/l10n/sr.js
+++ b/core/l10n/sr.js
@@ -4,6 +4,7 @@ OC.L10N.register(
"Couldn't send mail to following users: %s " : "Не могу да пошаљем е-пошту следећим корисницима: %s ",
"Turned on maintenance mode" : "Режим одржавања укључен",
"Turned off maintenance mode" : "Режим одржавања искључен",
+ "Maintenance mode is kept active" : "Режим одржавања се држи активним",
"Updated database" : "База података ажурирана",
"Checked database schema update" : "Ажурирање шеме базе података, проверено",
"Checked database schema update for apps" : "Ажурирање шеме базе података за апликације, проверено",
@@ -149,6 +150,7 @@ OC.L10N.register(
"New Password" : "Нова лозинка",
"Reset password" : "Ресетуј лозинку",
"Searching other places" : "Претражујем остала места",
+ "No search results in other places" : "Нема резултата претраге на другим местима",
"_{count} search result in other places_::_{count} search results in other places_" : ["{count} резултат претраге на осталим местима","{count} резултата претраге на осталим местима","{count} резултата претраге на осталим местима"],
"Personal" : "Лично",
"Users" : "Корисници",
diff --git a/core/l10n/sr.json b/core/l10n/sr.json
index dbe8fd9d210..f2245b14a38 100644
--- a/core/l10n/sr.json
+++ b/core/l10n/sr.json
@@ -2,6 +2,7 @@
"Couldn't send mail to following users: %s " : "Не могу да пошаљем е-пошту следећим корисницима: %s ",
"Turned on maintenance mode" : "Режим одржавања укључен",
"Turned off maintenance mode" : "Режим одржавања искључен",
+ "Maintenance mode is kept active" : "Режим одржавања се држи активним",
"Updated database" : "База података ажурирана",
"Checked database schema update" : "Ажурирање шеме базе података, проверено",
"Checked database schema update for apps" : "Ажурирање шеме базе података за апликације, проверено",
@@ -147,6 +148,7 @@
"New Password" : "Нова лозинка",
"Reset password" : "Ресетуј лозинку",
"Searching other places" : "Претражујем остала места",
+ "No search results in other places" : "Нема резултата претраге на другим местима",
"_{count} search result in other places_::_{count} search results in other places_" : ["{count} резултат претраге на осталим местима","{count} резултата претраге на осталим местима","{count} резултата претраге на осталим местима"],
"Personal" : "Лично",
"Users" : "Корисници",
diff --git a/core/l10n/th_TH.js b/core/l10n/th_TH.js
index 42644a15d57..bbaecec259a 100644
--- a/core/l10n/th_TH.js
+++ b/core/l10n/th_TH.js
@@ -1,6 +1,26 @@
OC.L10N.register(
"core",
{
+ "Couldn't send mail to following users: %s " : "ไม่สามารถส่งอีเมลไปยังผู้ใช้: %s",
+ "Turned on maintenance mode" : "เปิดโหมดการบำรุงรักษา",
+ "Turned off maintenance mode" : "ปิดโหมดการบำรุงรักษา",
+ "Maintenance mode is kept active" : "โหมดการบำรุงรักษาจะถูกเก็บไว้ใช้งาน",
+ "Updated database" : "ปรับปรุงฐานข้อมูล",
+ "Checked database schema update" : "Schema อัพเดตของฐานข้อมูลถูกตรวจสอบ",
+ "Checked database schema update for apps" : "Schema อัพเดตของฐานข้อมูลสำหรับแอพฯ",
+ "Updated \"%s\" to %s" : "อัพเดท \"%s\" ไปยัง %s",
+ "Repair warning: " : "เตือนการซ่อมแซม:",
+ "Repair error: " : "เกิดข้อผิดพลาดในการซ่อมแซม:",
+ "Following incompatible apps have been disabled: %s" : "แอพพลิเคชันต่อไปนี้เข้ากันไม่ได้มันจะถูกปิดการใช้งาน: %s",
+ "Following 3rd party apps have been disabled: %s" : "แอพพลิเคชันของบุคคลที่ 3 ถูกปิดการใช้งาน: %s",
+ "Invalid file provided" : "ระบุไฟล์ไม่ถูกต้อง",
+ "No image or file provided" : "ไม่มีรูปภาพหรือไฟล์ที่ระบุ",
+ "Unknown filetype" : "ไม่รู้จักชนิดของไฟล์",
+ "Invalid image" : "รูปภาพไม่ถูกต้อง",
+ "No temporary profile picture available, try again" : "ไม่มีรูปภาพโปรไฟล์ชั่วคราว กรุณาลองใหม่อีกครั้ง",
+ "No crop data provided" : "ไม่มีการครอบตัดข้อมูลที่ระบุ",
+ "No valid crop data provided" : "ไม่ได้ระบุข้อมูลการครอบตัดที่ถูกต้อง",
+ "Crop is not square" : "การครอบตัดไม่เป็นสี่เหลี่ยม",
"Sunday" : "วันอาทิตย์",
"Monday" : "วันจันทร์",
"Tuesday" : "วันอังคาร",
@@ -22,68 +42,199 @@ OC.L10N.register(
"December" : "ธันวาคม",
"Settings" : "ตั้งค่า",
"Saving..." : "กำลังบันทึกข้อมูล...",
+ "Couldn't send reset email. Please contact your administrator." : "ไม่สามารถส่งการตั้งค่าอีเมลใหม่ กรุณาติดต่อผู้ดูแลระบบ",
+ "The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "ลิงค์ที่ใช้สำหรับตั้งค่ารหัสผ่านใหม่ ของคุณ ได้ถูกส่งไปยังอีเมลของคุณ หากคุณยังไม่ได้รับอีกเมล ลองไปดูที่โฟลเดอร์ สแปม/ถังขยะ ในอีเมลของคุณ <br>ทั้งนี้หากหาอีเมลไม่พบกรุณาติดต่อผู้ดูแลระบบ",
+ "Your files are encrypted. If you haven't enabled the recovery key, there will be no way to get your data back after your password is reset.<br />If you are not sure what to do, please contact your administrator before you continue. <br />Do you really want to continue?" : "ไฟล์ของคุณจะถูกเข้ารหัส หากคุณยังไม่ได้เปิดใช้งานรหัสการกู้คืน คุณจะได้รับข้อมูลของคุณกลับมาหลังจากที่รหัสผ่านของคุณถูกรีเซ็ต<br /> หากคุณไม่แน่ใจว่าควรทำอย่างไรโปรดติดต่อผู้ดูแลระบบของคุณก่อนที่คุณจะดำเนินการต่อไป <br /> คุณต้องการดำเนินการต่อ?",
+ "I know what I'm doing" : "ฉันรู้ว่าฉันกำลังทำอะไรอยู่",
+ "Password can not be changed. Please contact your administrator." : "หากคุณไม่สามารถเปลี่ยนแปลงรหัสผ่าน กรุณาติดต่อผู้ดูแลระบบ",
"No" : "ไม่ตกลง",
"Yes" : "ตกลง",
"Choose" : "เลือก",
+ "Error loading file picker template: {error}" : "เกิดข้อผิดพลาดขณะกำลังโหลดไฟล์แม่แบบ: {error}",
"Ok" : "ตกลง",
+ "Error loading message template: {error}" : "เกิดข้อผิดพลาดขณะกำลังโหลดแม่แบบ: {error} ",
+ "read-only" : "อ่านอย่างเดียว",
+ "_{count} file conflict_::_{count} file conflicts_" : ["ไฟล์มีปัญหา {count} ไฟล์"],
+ "One file conflict" : "มีหนึ่งไฟล์ที่มีปัญหา",
"New Files" : "ไฟล์ใหม่",
+ "Already existing files" : "มีไฟล์อยู่แล้ว",
+ "Which files do you want to keep?" : "คุณต้องการเก็บไฟล์?",
+ "If you select both versions, the copied file will have a number added to its name." : "หากคุณเลือกทั้งสองรุ่น การคัดลอกไฟล์จะเพิ่มจำนวนไปยังชื่อของมัน",
"Cancel" : "ยกเลิก",
+ "Continue" : "ดำเนินการต่อ",
+ "(all selected)" : "(เลือกทั้งหมด)",
+ "({count} selected)" : "(เลือกจำนวน {count})",
+ "Error loading file exists template" : "เกิดข้อผิดพลาดขณะโหลดไฟล์แม่แบบที่มีอยู่",
+ "Very weak password" : "รหัสผ่านระดับต่ำมาก",
+ "Weak password" : "รหัสผ่านระดับต่ำ",
+ "So-so password" : "รหัสผ่านระดับปกติ",
+ "Good password" : "รหัสผ่านระดับดี",
+ "Strong password" : "รหัสผ่านระดับดีมาก",
+ "Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "เว็บเซิร์ฟเวอร์ของคุณยังไม่ถูกติดตั้งอย่างถูกต้องเพื่ออนุญาตให้ผสานข้อมูลให้ตรงกัน เนื่องจากอินเตอร์เฟซ WebDAV อาจเสียหาย",
+ "This server has no working Internet connection. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "เซิร์ฟเวอร์นี้ไม่มีการเชื่อมต่ออินเทอร์เน็ตซึ่งหมายความว่าบางส่วนของคุณสมบัติ เช่น การจัดเก็บข้อมูลภายนอก การแจ้งเตือนเกี่ยวกับการปรับปรุงหรือการติดตั้งแอพพลิเคชันของบุคคลที่สามจะไม่ทำงาน การเข้าถึงไฟล์จากระยะไกลและการส่งอีเมล์แจ้งเตือนอาจจะไม่ทำงาน เราขอแนะนำให้เปิดใช้งานการเชื่อมต่ออินเทอร์เน็ตสำหรับเซิร์ฟเวอร์นี้ถ้าคุณต้องการใช้งานคุณสมบัติทั้งหมด",
+ "Your data directory and your files are probably accessible from the Internet. The .htaccess file is not working. We strongly suggest that you configure your web server in a way that the data directory is no longer accessible or you move the data directory outside the web server document root." : "ข้อมูลไดเรกทอรีและไฟล์ของคุณอาจจะสามารถเข้าถึงได้จากอินเทอร์เน็ต ขณะที่ htaccess ไฟล์ไม่ทำงาน เราขอแนะนำให้คุณกำหนดค่าเว็บเซิร์ฟเวอร์ของคุณในทางที่ข้อมูลไดเรกทอรีไม่สามารถเข้าถึงได้หรือคุณย้ายข้อมูลไดเรกทอรีไปยังนอกเว็บเซิร์ฟเวอร์หรือเอกสาร",
+ "No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a href=\"{docLink}\">documentation</a>." : "ไม่ได้ตั้งค่าหน่วยความจำแคช เพื่อเพิ่มประสิทธิภาพกรุณาตั้งค่า Memcache ของคุณ สามารถดูข้อมูลเพิ่มเติมได้ที่ <a href=\"{docLink}\">เอกสาร</a>",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a href=\"{docLink}\">documentation</a>." : "/dev/urandom ไม่สามารถอ่านโดย PHP ซึ่งมีผลด้านความปลอดภัยเป็นอย่างมาก สามารถดูข้อมูลเพิ่มเติมได้ที่ <a href=\"{docLink}\">เอกสาร</a>",
+ "Error occurred while checking server setup" : "เกิดข้อผิดพลาดขณะที่ทำการตรวจสอบการติดตั้งเซิร์ฟเวอร์",
+ "The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "\"{header}\" ไม่ได้กำหนดค่าส่วนหัว Http ให้เท่ากับ \"{expected}\" นี่คือระบบการรักษาความปลอดภัยที่มีศักยภาพหรือลดความเสี่ยงที่จะเกิดขึ้นเราขอแนะนำให้ปรับการตั้งค่านี้",
+ "The \"Strict-Transport-Security\" HTTP header is not configured to least \"2,678,400\" seconds. This is a potential security risk and we recommend adjusting this setting." : "\"Strict-Transport-Security\" ส่วนหัว HTTP ต้องกำหนดค่าอย่างน้อย \"2,678,400\" วินาที นี้เป็นความเสี่ยงด้านความปลอดภัยที่อาจเกิดขึ้นและเราขอแนะนำให้ปรับการตั้งค่านี้",
+ "You are accessing this site via HTTP. We strongly suggest you configure your server to require using HTTPS instead." : "คุณกำลังเข้าถึงเว็บไซต์นี้ผ่านทาง HTTP เราขอแนะนำให้คุณกำหนดค่าเซิร์ฟเวอร์ของคุณเป็น HTTPS แทน",
"Shared" : "แชร์แล้ว",
+ "Shared with {recipients}" : "แชร์กับ {recipients}",
"Share" : "แชร์",
"Error" : "ข้อผิดพลาด",
- "Error while sharing" : "เกิดข้อผิดพลาดในระหว่างการแชร์ข้อมูล",
- "Error while unsharing" : "เกิดข้อผิดพลาดในการยกเลิกการแชร์ข้อมูล",
- "Error while changing permissions" : "เกิดข้อผิดพลาดในการเปลี่ยนสิทธิ์การเข้าใช้งาน",
+ "Error while sharing" : "เกิดข้อผิดพลาดขณะกำลังแชร์ข้อมูล",
+ "Error while unsharing" : "เกิดข้อผิดพลาดขณะกำลังยกเลิกการแชร์ข้อมูล",
+ "Error while changing permissions" : "เกิดข้อผิดพลาดขณะกำลังเปลี่ยนสิทธิ์การเข้าใช้งาน",
"Shared with you and the group {group} by {owner}" : "ได้แชร์ให้กับคุณ และกลุ่ม {group} โดย {owner}",
"Shared with you by {owner}" : "ถูกแชร์ให้กับคุณโดย {owner}",
+ "Share with users or groups …" : "แชร์กับผู้ใช้หรือกลุ่ม ...",
+ "Share with users, groups or remote users …" : "แชร์กับผู้ใช้กลุ่มหรือผู้ใช้ระยะไกล ...",
+ "Share with people on other ownClouds using the syntax username@example.com/owncloud" : "แชร์กับคนใน ownClouds อื่นๆ ที่ใช้ไวยากรณ์ username@example.com/owncloud ",
"Share link" : "แชร์ลิงค์",
- "Password protect" : "ใส่รหัสผ่านไว้",
+ "The public link will expire no later than {days} days after it is created" : "ลิงค์สาธารณะจะหมดอายุภายใน {days} วัน หลังจากที่มันถูกสร้างขึ้น",
+ "Link" : "ลิงค์",
+ "Password protect" : "รหัสผ่านป้องกัน",
"Password" : "รหัสผ่าน",
+ "Choose a password for the public link" : "เลือกรหัสผ่านสำหรับลิงค์สาธารณะ",
+ "Allow editing" : "อนุญาตให้แก้ไข",
"Email link to person" : "ส่งลิงก์ให้ทางอีเมล",
"Send" : "ส่ง",
"Set expiration date" : "กำหนดวันที่หมดอายุ",
+ "Expiration" : "การหมดอายุ",
"Expiration date" : "วันที่หมดอายุ",
+ "An error occured. Please try again" : "เกิดข้อผิดพลาด กรุณาลองอีกครั้ง",
+ "Adding user..." : "กำลังเพิ่มผู้ใช้ ...",
"group" : "กลุ่มผู้ใช้งาน",
- "Resharing is not allowed" : "ไม่อนุญาตให้แชร์ข้อมูลซ้ำได้",
+ "remote" : "ระยะไกล",
+ "Resharing is not allowed" : "ไม่อนุญาตให้แชร์ข้อมูลที่ซ้ำกัน",
"Shared in {item} with {user}" : "ได้แชร์ {item} ให้กับ {user}",
"Unshare" : "ยกเลิกการแชร์",
+ "notify by email" : "แจ้งเตือนทางอีเมล",
"can share" : "สามารถแชร์ได้",
"can edit" : "สามารถแก้ไข",
- "access control" : "ระดับควบคุมการเข้าใช้งาน",
+ "access control" : "ควบคุมการเข้าถึง",
"create" : "สร้าง",
+ "change" : "เปลี่ยนแปลง",
"delete" : "ลบ",
"Password protected" : "ใส่รหัสผ่านไว้",
- "Error unsetting expiration date" : "เกิดข้อผิดพลาดในการยกเลิกการตั้งค่าวันที่หมดอายุ",
+ "Error unsetting expiration date" : "เกิดข้อผิดพลาดขณะยกเลิกการตั้งค่าวันที่หมดอายุ",
"Error setting expiration date" : "เกิดข้อผิดพลาดในการตั้งค่าวันที่หมดอายุ",
"Sending ..." : "กำลังส่ง...",
"Email sent" : "ส่งอีเมล์แล้ว",
"Warning" : "คำเตือน",
"The object type is not specified." : "ชนิดของวัตถุยังไม่ได้รับการระบุ",
+ "Enter new" : "ใส่ข้อมูลใหม่",
"Delete" : "ลบ",
"Add" : "เพิ่ม",
- "The update was successful. Redirecting you to ownCloud now." : "การอัพเดทเสร็จเรียบร้อยแล้ว กำลังเปลี่ยนเส้นทางไปที่ ownCloud อยู่ในขณะนี้",
+ "Edit tags" : "แก้ไขแท็ก",
+ "Error loading dialog template: {error}" : "เกิดข้อผิดพลาดขณะโหลดไดอะล็อกแม่แบบ: {error}",
+ "No tags selected for deletion." : "ไม่ได้เลือกแท็กที่ต้องการลบ",
+ "unknown text" : "ข้อความที่ไม่รู้จัก",
+ "Hello world!" : "สวัสดีทุกคน!",
+ "sunny" : "แดดมาก",
+ "Hello {name}, the weather is {weather}" : "สวัสดี {name} สภาพอากาศวันนี้มี {weather}",
+ "Hello {name}" : "สวัสดี {name}",
+ "_download %n file_::_download %n files_" : ["ดาวน์โหลด %n ไฟล์"],
+ "{version} is available. Get more information on how to update." : "{version} สามารถใช้ได้ รับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการอัพเดท",
+ "Updating {productName} to version {version}, this may take a while." : "กำลังอัพเดท {productName} ไปยังรุ่น {version} อาจใช้เวลาสักครู่",
+ "Please reload the page." : "โปรดโหลดหน้าเว็บใหม่",
+ "The update was unsuccessful. " : "อัพเดทไม่สำเร็จ",
+ "The update was successful. Redirecting you to ownCloud now." : "การอัพเดทเสร็จเรียบร้อย กำลังเปลี่ยนเส้นทางไปที่ ownCloud อยู่ในขณะนี้",
+ "Couldn't reset password because the token is invalid" : "ไม่สามารถตั้งรหัสผ่านใหม่เพราะโทเค็นไม่ถูกต้อง",
+ "Couldn't send reset email. Please make sure your username is correct." : "ไม่สามารถส่งการตั้งค่าอีเมลใหม่ กรุณาตรวจสอบชื่อผู้ใช้ของคุณให้ถูกต้อง",
+ "Couldn't send reset email because there is no email address for this username. Please contact your administrator." : "ไม่สามารถส่งการตั้งค่าอีเมลใหม่เพราะไม่มีที่อยู่อีเมลนี้ กรุณาติดต่อผู้ดูแลระบบ",
+ "%s password reset" : "%s ตั้งรหัสผ่านใหม่",
"Use the following link to reset your password: {link}" : "ใช้ลิงค์ต่อไปนี้เพื่อเปลี่ยนรหัสผ่านของคุณใหม่: {link}",
"New password" : "รหัสผ่านใหม่",
- "Reset password" : "เปลี่ยนรหัสผ่าน",
+ "New Password" : "รหัสผ่านใหม่",
+ "Reset password" : "เปลี่ยนรหัสผ่านใหม่",
+ "Searching other places" : "กำลังค้นหาสถานที่อื่นๆ",
+ "No search results in other places" : "ไม่มีผลการค้นหาในสถานที่อื่นๆ",
+ "_{count} search result in other places_::_{count} search results in other places_" : ["{count} ผลการค้นหาในสถานที่อื่นๆ"],
"Personal" : "ส่วนตัว",
"Users" : "ผู้ใช้งาน",
"Apps" : "แอปฯ",
"Admin" : "ผู้ดูแล",
"Help" : "ช่วยเหลือ",
+ "Error loading tags" : "เกิดข้อผิดพลาดขณะโหลดแท็ก",
+ "Tag already exists" : "มีแท็กอยู่แล้ว",
+ "Error deleting tag(s)" : "เกิดข้อผิดพลาดขณะลบแท็ก",
+ "Error tagging" : "เกิดข้อผิดพลาดขณะติดแท็ก",
+ "Error untagging" : "เกิดข้อผิดพลาดขณะยกเลิกการติดแท็ก",
+ "Error favoriting" : "เกิดข้อผิดพลาดขณะเลือกที่ชื่นชอบ",
+ "Error unfavoriting" : "เกิดข้อผิดพลาดขณะยกเลิกการเลือกที่ชื่นชอบ",
"Access forbidden" : "การเข้าถึงถูกหวงห้าม",
+ "File not found" : "ไม่พบไฟล์",
+ "The specified document has not been found on the server." : "ไม่พบเอกสารที่ระบุบนเซิร์ฟเวอร์",
+ "You can click here to return to %s." : "คุณสามารถคลิกที่นี่เพื่อกลับไปยัง %s",
+ "Hey there,\n\njust letting you know that %s shared %s with you.\nView it: %s\n\n" : "นี่คุณ,\nอยากให้คุณทราบว่า %s ได้แชร์ %s กับคุณ\nคลิกดูที่นี่: %s\n",
+ "The share will expire on %s." : "การแชร์จะหมดอายุในวันที่ %s",
+ "Cheers!" : "ไชโย!",
+ "Internal Server Error" : "เกิดข้อผิดพลาดภายในเซิร์ฟเวอร์",
+ "The server encountered an internal error and was unable to complete your request." : "พบข้อผิดพลาดภายในเซิร์ฟเวอร์และไม่สามารถดำเนินการตามคำขอของคุณ",
+ "Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report." : "กรุณาติดต่อผู้ดูแลเซิร์ฟเวอร์ถ้าพบข้อผิดพลาดนี้หลายครั้ง กรุณาระบุรายละเอียดทางเทคนิคที่ด้านล่างในรายงานของคุณ",
+ "More details can be found in the server log." : "รายละเอียดเพิ่มเติมสามารถดูได้ที่บันทึกของระบบเซิร์ฟเวอร์",
+ "Technical details" : "รายละเอียดทางเทคนิค",
+ "Remote Address: %s" : "ที่อยู่รีโมทระยะไกล: %s",
+ "Request ID: %s" : "คำขอ ID: %s",
+ "Type: %s" : "ชนิด: %s",
+ "Code: %s" : "โค้ด: %s",
+ "Message: %s" : "ข้อความ: %s",
+ "File: %s" : "ไฟล์: %s",
+ "Line: %s" : "ไลน์: %s",
+ "Trace" : "ร่องรอย",
+ "Security warning" : "คำเตือนการรักษาความปลอดภัย",
+ "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 <a href=\"%s\" target=\"_blank\">documentation</a>." : "สำหรับข้อมูลวิธีการกำหนดค่าเซิร์ฟเวอร์ของคุณดูได้ที่ <a href=\"%s\" target=\"_blank\">เอกสาร</a>",
"Create an <strong>admin account</strong>" : "สร้าง <strong>บัญชีผู้ดูแลระบบ</strong>",
"Username" : "ชื่อผู้ใช้งาน",
+ "Storage & database" : "พื้นที่จัดเก็บข้อมูลและฐานข้อมูล",
"Data folder" : "โฟลเดอร์เก็บข้อมูล",
- "Configure the database" : "กำหนดค่าฐานข้อมูล",
+ "Configure the database" : "ตั้งค่าฐานข้อมูล",
+ "Only %s is available." : "เฉพาะ %s สามารถใช้ได้",
+ "Install and activate additional PHP modules to choose other database types." : "ติดตั้งและเปิดใช้งานโมดูล PHP เพิ่มเติมเพื่อเลือกชนิดฐานข้อมูลอื่นๆ",
+ "For more details check out the documentation." : "สำหรับรายละเอียดเพิ่มเติมสามารถตรวจสอบได้ที่ <a href=\"%s\" target=\"_blank\">เอกสาร</a>",
"Database user" : "ชื่อผู้ใช้งานฐานข้อมูล",
"Database password" : "รหัสผ่านฐานข้อมูล",
"Database name" : "ชื่อฐานข้อมูล",
"Database tablespace" : "พื้นที่ตารางในฐานข้อมูล",
"Database host" : "Database host",
+ "Performance warning" : "การเตือนประสิทธิภาพการทำงาน",
+ "SQLite will be used as database." : "SQLite จะถูกใช้เป็นฐานข้อมูล",
+ "For larger installations we recommend to choose a different database backend." : "สำหรับการติดตั้งขนาดใหญ่เราขอแนะนำให้เลือกแบ็กเอนด์ฐานข้อมูลที่แตกต่างกัน",
+ "Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "โดยเฉพาะอย่างยิ่งเมื่อใช้ไคลเอนต์เดสก์ทอปสำหรับการผสานข้อมูลโดย SQLite",
"Finish setup" : "ติดตั้งเรียบร้อยแล้ว",
+ "Finishing …" : "เสร็จสิ้น ...",
+ "Need help?" : "ต้องการความช่วยเหลือ?",
+ "See the documentation" : "ดูที่เอกสาร",
+ "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "โปรแกรมนี้ต้องการ JavaScript สำหรับการดำเนินงานที่ถูกต้อง กรุณา {linkstart}เปิดใช้งาน JavaScript{linkend} และโหลดหน้าเว็บ",
"Log out" : "ออกจากระบบ",
"Search" : "ค้นหา",
+ "Server side authentication failed!" : "การรับรองความถูกต้องจากเซิร์ฟเวอร์ล้มเหลว!",
+ "Please contact your administrator." : "กรุณาติดต่อผู้ดูแลระบบ",
+ "An internal error occured." : "เกิดข้อผิดพลาดภายใน",
+ "Please try again or contact your administrator." : "โปรดลองอีกครั้งหรือติดต่อผู้ดูแลระบบ",
+ "Forgot your password? Reset it!" : "ลืมรหัสผ่าน?",
"remember" : "จำรหัสผ่าน",
- "Log in" : "เข้าสู่ระบบ"
+ "Log in" : "เข้าสู่ระบบ",
+ "Alternative Logins" : "ทางเลือกการเข้าสู่ระบบ",
+ "Hey there,<br><br>just letting you know that %s shared <strong>%s</strong> with you.<br><a href=\"%s\">View it!</a><br><br>" : "นี่คุณ,<br><br>อยากให้คุณทราบว่า %s ได้แชร์ <strong>%s</strong> กับคุณ <br><a href=\"%s\">คลิกดูที่นี่</a><br><br>",
+ "This ownCloud instance is currently in single user mode." : "ขณะนี้ ownCloud อยู่ในโหมดผู้ใช้คนเดียว",
+ "This means only administrators can use the instance." : "ซึ่งหมายความว่าผู้ดูแลระบบสามารถใช้อินสแตนซ์",
+ "Contact your system administrator if this message persists or appeared unexpectedly." : "ติดต่อผู้ดูแลระบบของคุณหากข้อความนี้ยังคงมีอยู่หรือปรากฏโดยไม่คาดคิด",
+ "Thank you for your patience." : "ขอบคุณสำหรับความอดทนของคุณ เราจะนำความคิดเห็นของท่านมาปรับปรุงระบบให้ดียิ่งขึ้น",
+ "You are accessing the server from an untrusted domain." : "คุณกำลังเข้าถึงเซิร์ฟเวอร์จากโดเมนที่ไม่น่าเชื่อถือ",
+ "Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domain\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "กรุณาติดต่อผู้ดูแลระบบ หากคุณเป็นผู้ดูแลระบบโปรดกำหนดค่า \"trusted_domain\" โดยตั้งค่าใน config/config.php ยกตัวอย่างระบุการตั้งค่าใน config/config.sample.php",
+ "Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "ทั้งนี้ขึ้นอยู่กับการกำหนดค่าของคุณ ผู้ดูแลระบบอาจสามารถใช้ปุ่มด้านล่างเพื่อกำหนดให้โดเมนนี้มีความน่าเชื่อถือ",
+ "Add \"%s\" as trusted domain" : "ได้เพิ่ม \"%s\" เป็นโดเมนที่เชื่อถือ",
+ "%s will be updated to version %s." : "%s จะถูกอัพเดทให้เป็นรุ่น %s",
+ "The following apps will be disabled:" : "แอพพลิเคชันต่อไปนี้จะปิดการใช้งาน:",
+ "The theme %s has been disabled." : "ธีม %s จะถูกปิดการใช้งาน:",
+ "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "โปรดตรวจสอบฐานข้อมูล การตั้งค่าโฟลเดอร์และโฟลเดอร์ข้อมูลจะถูกสำรองไว้ก่อนดำเนินการ",
+ "Start update" : "เริ่มต้นอัพเดท",
+ "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "เพื่อหลีกเลี่ยงการหมดเวลากับการติดตั้งขนาดใหญ่ คุณสามารถเรียกใช้คำสั่งต่อไปนี้จากไดเรกทอรีการติดตั้งของคุณ:",
+ "This %s instance is currently in maintenance mode, which may take a while." : "%s กำลังอยู่ในโหมดการบำรุงรักษาซึ่งอาจใช้เวลาสักครู่",
+ "This page will refresh itself when the %s instance is available again." : "หน้านี้จะรีเฟรชตัวเองเมื่อ %s สามารถใช้ได้อีกครั้ง"
},
"nplurals=1; plural=0;");
diff --git a/core/l10n/th_TH.json b/core/l10n/th_TH.json
index 9260178acb5..061634c03dc 100644
--- a/core/l10n/th_TH.json
+++ b/core/l10n/th_TH.json
@@ -1,4 +1,24 @@
{ "translations": {
+ "Couldn't send mail to following users: %s " : "ไม่สามารถส่งอีเมลไปยังผู้ใช้: %s",
+ "Turned on maintenance mode" : "เปิดโหมดการบำรุงรักษา",
+ "Turned off maintenance mode" : "ปิดโหมดการบำรุงรักษา",
+ "Maintenance mode is kept active" : "โหมดการบำรุงรักษาจะถูกเก็บไว้ใช้งาน",
+ "Updated database" : "ปรับปรุงฐานข้อมูล",
+ "Checked database schema update" : "Schema อัพเดตของฐานข้อมูลถูกตรวจสอบ",
+ "Checked database schema update for apps" : "Schema อัพเดตของฐานข้อมูลสำหรับแอพฯ",
+ "Updated \"%s\" to %s" : "อัพเดท \"%s\" ไปยัง %s",
+ "Repair warning: " : "เตือนการซ่อมแซม:",
+ "Repair error: " : "เกิดข้อผิดพลาดในการซ่อมแซม:",
+ "Following incompatible apps have been disabled: %s" : "แอพพลิเคชันต่อไปนี้เข้ากันไม่ได้มันจะถูกปิดการใช้งาน: %s",
+ "Following 3rd party apps have been disabled: %s" : "แอพพลิเคชันของบุคคลที่ 3 ถูกปิดการใช้งาน: %s",
+ "Invalid file provided" : "ระบุไฟล์ไม่ถูกต้อง",
+ "No image or file provided" : "ไม่มีรูปภาพหรือไฟล์ที่ระบุ",
+ "Unknown filetype" : "ไม่รู้จักชนิดของไฟล์",
+ "Invalid image" : "รูปภาพไม่ถูกต้อง",
+ "No temporary profile picture available, try again" : "ไม่มีรูปภาพโปรไฟล์ชั่วคราว กรุณาลองใหม่อีกครั้ง",
+ "No crop data provided" : "ไม่มีการครอบตัดข้อมูลที่ระบุ",
+ "No valid crop data provided" : "ไม่ได้ระบุข้อมูลการครอบตัดที่ถูกต้อง",
+ "Crop is not square" : "การครอบตัดไม่เป็นสี่เหลี่ยม",
"Sunday" : "วันอาทิตย์",
"Monday" : "วันจันทร์",
"Tuesday" : "วันอังคาร",
@@ -20,68 +40,199 @@
"December" : "ธันวาคม",
"Settings" : "ตั้งค่า",
"Saving..." : "กำลังบันทึกข้อมูล...",
+ "Couldn't send reset email. Please contact your administrator." : "ไม่สามารถส่งการตั้งค่าอีเมลใหม่ กรุณาติดต่อผู้ดูแลระบบ",
+ "The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "ลิงค์ที่ใช้สำหรับตั้งค่ารหัสผ่านใหม่ ของคุณ ได้ถูกส่งไปยังอีเมลของคุณ หากคุณยังไม่ได้รับอีกเมล ลองไปดูที่โฟลเดอร์ สแปม/ถังขยะ ในอีเมลของคุณ <br>ทั้งนี้หากหาอีเมลไม่พบกรุณาติดต่อผู้ดูแลระบบ",
+ "Your files are encrypted. If you haven't enabled the recovery key, there will be no way to get your data back after your password is reset.<br />If you are not sure what to do, please contact your administrator before you continue. <br />Do you really want to continue?" : "ไฟล์ของคุณจะถูกเข้ารหัส หากคุณยังไม่ได้เปิดใช้งานรหัสการกู้คืน คุณจะได้รับข้อมูลของคุณกลับมาหลังจากที่รหัสผ่านของคุณถูกรีเซ็ต<br /> หากคุณไม่แน่ใจว่าควรทำอย่างไรโปรดติดต่อผู้ดูแลระบบของคุณก่อนที่คุณจะดำเนินการต่อไป <br /> คุณต้องการดำเนินการต่อ?",
+ "I know what I'm doing" : "ฉันรู้ว่าฉันกำลังทำอะไรอยู่",
+ "Password can not be changed. Please contact your administrator." : "หากคุณไม่สามารถเปลี่ยนแปลงรหัสผ่าน กรุณาติดต่อผู้ดูแลระบบ",
"No" : "ไม่ตกลง",
"Yes" : "ตกลง",
"Choose" : "เลือก",
+ "Error loading file picker template: {error}" : "เกิดข้อผิดพลาดขณะกำลังโหลดไฟล์แม่แบบ: {error}",
"Ok" : "ตกลง",
+ "Error loading message template: {error}" : "เกิดข้อผิดพลาดขณะกำลังโหลดแม่แบบ: {error} ",
+ "read-only" : "อ่านอย่างเดียว",
+ "_{count} file conflict_::_{count} file conflicts_" : ["ไฟล์มีปัญหา {count} ไฟล์"],
+ "One file conflict" : "มีหนึ่งไฟล์ที่มีปัญหา",
"New Files" : "ไฟล์ใหม่",
+ "Already existing files" : "มีไฟล์อยู่แล้ว",
+ "Which files do you want to keep?" : "คุณต้องการเก็บไฟล์?",
+ "If you select both versions, the copied file will have a number added to its name." : "หากคุณเลือกทั้งสองรุ่น การคัดลอกไฟล์จะเพิ่มจำนวนไปยังชื่อของมัน",
"Cancel" : "ยกเลิก",
+ "Continue" : "ดำเนินการต่อ",
+ "(all selected)" : "(เลือกทั้งหมด)",
+ "({count} selected)" : "(เลือกจำนวน {count})",
+ "Error loading file exists template" : "เกิดข้อผิดพลาดขณะโหลดไฟล์แม่แบบที่มีอยู่",
+ "Very weak password" : "รหัสผ่านระดับต่ำมาก",
+ "Weak password" : "รหัสผ่านระดับต่ำ",
+ "So-so password" : "รหัสผ่านระดับปกติ",
+ "Good password" : "รหัสผ่านระดับดี",
+ "Strong password" : "รหัสผ่านระดับดีมาก",
+ "Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "เว็บเซิร์ฟเวอร์ของคุณยังไม่ถูกติดตั้งอย่างถูกต้องเพื่ออนุญาตให้ผสานข้อมูลให้ตรงกัน เนื่องจากอินเตอร์เฟซ WebDAV อาจเสียหาย",
+ "This server has no working Internet connection. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "เซิร์ฟเวอร์นี้ไม่มีการเชื่อมต่ออินเทอร์เน็ตซึ่งหมายความว่าบางส่วนของคุณสมบัติ เช่น การจัดเก็บข้อมูลภายนอก การแจ้งเตือนเกี่ยวกับการปรับปรุงหรือการติดตั้งแอพพลิเคชันของบุคคลที่สามจะไม่ทำงาน การเข้าถึงไฟล์จากระยะไกลและการส่งอีเมล์แจ้งเตือนอาจจะไม่ทำงาน เราขอแนะนำให้เปิดใช้งานการเชื่อมต่ออินเทอร์เน็ตสำหรับเซิร์ฟเวอร์นี้ถ้าคุณต้องการใช้งานคุณสมบัติทั้งหมด",
+ "Your data directory and your files are probably accessible from the Internet. The .htaccess file is not working. We strongly suggest that you configure your web server in a way that the data directory is no longer accessible or you move the data directory outside the web server document root." : "ข้อมูลไดเรกทอรีและไฟล์ของคุณอาจจะสามารถเข้าถึงได้จากอินเทอร์เน็ต ขณะที่ htaccess ไฟล์ไม่ทำงาน เราขอแนะนำให้คุณกำหนดค่าเว็บเซิร์ฟเวอร์ของคุณในทางที่ข้อมูลไดเรกทอรีไม่สามารถเข้าถึงได้หรือคุณย้ายข้อมูลไดเรกทอรีไปยังนอกเว็บเซิร์ฟเวอร์หรือเอกสาร",
+ "No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a href=\"{docLink}\">documentation</a>." : "ไม่ได้ตั้งค่าหน่วยความจำแคช เพื่อเพิ่มประสิทธิภาพกรุณาตั้งค่า Memcache ของคุณ สามารถดูข้อมูลเพิ่มเติมได้ที่ <a href=\"{docLink}\">เอกสาร</a>",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a href=\"{docLink}\">documentation</a>." : "/dev/urandom ไม่สามารถอ่านโดย PHP ซึ่งมีผลด้านความปลอดภัยเป็นอย่างมาก สามารถดูข้อมูลเพิ่มเติมได้ที่ <a href=\"{docLink}\">เอกสาร</a>",
+ "Error occurred while checking server setup" : "เกิดข้อผิดพลาดขณะที่ทำการตรวจสอบการติดตั้งเซิร์ฟเวอร์",
+ "The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "\"{header}\" ไม่ได้กำหนดค่าส่วนหัว Http ให้เท่ากับ \"{expected}\" นี่คือระบบการรักษาความปลอดภัยที่มีศักยภาพหรือลดความเสี่ยงที่จะเกิดขึ้นเราขอแนะนำให้ปรับการตั้งค่านี้",
+ "The \"Strict-Transport-Security\" HTTP header is not configured to least \"2,678,400\" seconds. This is a potential security risk and we recommend adjusting this setting." : "\"Strict-Transport-Security\" ส่วนหัว HTTP ต้องกำหนดค่าอย่างน้อย \"2,678,400\" วินาที นี้เป็นความเสี่ยงด้านความปลอดภัยที่อาจเกิดขึ้นและเราขอแนะนำให้ปรับการตั้งค่านี้",
+ "You are accessing this site via HTTP. We strongly suggest you configure your server to require using HTTPS instead." : "คุณกำลังเข้าถึงเว็บไซต์นี้ผ่านทาง HTTP เราขอแนะนำให้คุณกำหนดค่าเซิร์ฟเวอร์ของคุณเป็น HTTPS แทน",
"Shared" : "แชร์แล้ว",
+ "Shared with {recipients}" : "แชร์กับ {recipients}",
"Share" : "แชร์",
"Error" : "ข้อผิดพลาด",
- "Error while sharing" : "เกิดข้อผิดพลาดในระหว่างการแชร์ข้อมูล",
- "Error while unsharing" : "เกิดข้อผิดพลาดในการยกเลิกการแชร์ข้อมูล",
- "Error while changing permissions" : "เกิดข้อผิดพลาดในการเปลี่ยนสิทธิ์การเข้าใช้งาน",
+ "Error while sharing" : "เกิดข้อผิดพลาดขณะกำลังแชร์ข้อมูล",
+ "Error while unsharing" : "เกิดข้อผิดพลาดขณะกำลังยกเลิกการแชร์ข้อมูล",
+ "Error while changing permissions" : "เกิดข้อผิดพลาดขณะกำลังเปลี่ยนสิทธิ์การเข้าใช้งาน",
"Shared with you and the group {group} by {owner}" : "ได้แชร์ให้กับคุณ และกลุ่ม {group} โดย {owner}",
"Shared with you by {owner}" : "ถูกแชร์ให้กับคุณโดย {owner}",
+ "Share with users or groups …" : "แชร์กับผู้ใช้หรือกลุ่ม ...",
+ "Share with users, groups or remote users …" : "แชร์กับผู้ใช้กลุ่มหรือผู้ใช้ระยะไกล ...",
+ "Share with people on other ownClouds using the syntax username@example.com/owncloud" : "แชร์กับคนใน ownClouds อื่นๆ ที่ใช้ไวยากรณ์ username@example.com/owncloud ",
"Share link" : "แชร์ลิงค์",
- "Password protect" : "ใส่รหัสผ่านไว้",
+ "The public link will expire no later than {days} days after it is created" : "ลิงค์สาธารณะจะหมดอายุภายใน {days} วัน หลังจากที่มันถูกสร้างขึ้น",
+ "Link" : "ลิงค์",
+ "Password protect" : "รหัสผ่านป้องกัน",
"Password" : "รหัสผ่าน",
+ "Choose a password for the public link" : "เลือกรหัสผ่านสำหรับลิงค์สาธารณะ",
+ "Allow editing" : "อนุญาตให้แก้ไข",
"Email link to person" : "ส่งลิงก์ให้ทางอีเมล",
"Send" : "ส่ง",
"Set expiration date" : "กำหนดวันที่หมดอายุ",
+ "Expiration" : "การหมดอายุ",
"Expiration date" : "วันที่หมดอายุ",
+ "An error occured. Please try again" : "เกิดข้อผิดพลาด กรุณาลองอีกครั้ง",
+ "Adding user..." : "กำลังเพิ่มผู้ใช้ ...",
"group" : "กลุ่มผู้ใช้งาน",
- "Resharing is not allowed" : "ไม่อนุญาตให้แชร์ข้อมูลซ้ำได้",
+ "remote" : "ระยะไกล",
+ "Resharing is not allowed" : "ไม่อนุญาตให้แชร์ข้อมูลที่ซ้ำกัน",
"Shared in {item} with {user}" : "ได้แชร์ {item} ให้กับ {user}",
"Unshare" : "ยกเลิกการแชร์",
+ "notify by email" : "แจ้งเตือนทางอีเมล",
"can share" : "สามารถแชร์ได้",
"can edit" : "สามารถแก้ไข",
- "access control" : "ระดับควบคุมการเข้าใช้งาน",
+ "access control" : "ควบคุมการเข้าถึง",
"create" : "สร้าง",
+ "change" : "เปลี่ยนแปลง",
"delete" : "ลบ",
"Password protected" : "ใส่รหัสผ่านไว้",
- "Error unsetting expiration date" : "เกิดข้อผิดพลาดในการยกเลิกการตั้งค่าวันที่หมดอายุ",
+ "Error unsetting expiration date" : "เกิดข้อผิดพลาดขณะยกเลิกการตั้งค่าวันที่หมดอายุ",
"Error setting expiration date" : "เกิดข้อผิดพลาดในการตั้งค่าวันที่หมดอายุ",
"Sending ..." : "กำลังส่ง...",
"Email sent" : "ส่งอีเมล์แล้ว",
"Warning" : "คำเตือน",
"The object type is not specified." : "ชนิดของวัตถุยังไม่ได้รับการระบุ",
+ "Enter new" : "ใส่ข้อมูลใหม่",
"Delete" : "ลบ",
"Add" : "เพิ่ม",
- "The update was successful. Redirecting you to ownCloud now." : "การอัพเดทเสร็จเรียบร้อยแล้ว กำลังเปลี่ยนเส้นทางไปที่ ownCloud อยู่ในขณะนี้",
+ "Edit tags" : "แก้ไขแท็ก",
+ "Error loading dialog template: {error}" : "เกิดข้อผิดพลาดขณะโหลดไดอะล็อกแม่แบบ: {error}",
+ "No tags selected for deletion." : "ไม่ได้เลือกแท็กที่ต้องการลบ",
+ "unknown text" : "ข้อความที่ไม่รู้จัก",
+ "Hello world!" : "สวัสดีทุกคน!",
+ "sunny" : "แดดมาก",
+ "Hello {name}, the weather is {weather}" : "สวัสดี {name} สภาพอากาศวันนี้มี {weather}",
+ "Hello {name}" : "สวัสดี {name}",
+ "_download %n file_::_download %n files_" : ["ดาวน์โหลด %n ไฟล์"],
+ "{version} is available. Get more information on how to update." : "{version} สามารถใช้ได้ รับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการอัพเดท",
+ "Updating {productName} to version {version}, this may take a while." : "กำลังอัพเดท {productName} ไปยังรุ่น {version} อาจใช้เวลาสักครู่",
+ "Please reload the page." : "โปรดโหลดหน้าเว็บใหม่",
+ "The update was unsuccessful. " : "อัพเดทไม่สำเร็จ",
+ "The update was successful. Redirecting you to ownCloud now." : "การอัพเดทเสร็จเรียบร้อย กำลังเปลี่ยนเส้นทางไปที่ ownCloud อยู่ในขณะนี้",
+ "Couldn't reset password because the token is invalid" : "ไม่สามารถตั้งรหัสผ่านใหม่เพราะโทเค็นไม่ถูกต้อง",
+ "Couldn't send reset email. Please make sure your username is correct." : "ไม่สามารถส่งการตั้งค่าอีเมลใหม่ กรุณาตรวจสอบชื่อผู้ใช้ของคุณให้ถูกต้อง",
+ "Couldn't send reset email because there is no email address for this username. Please contact your administrator." : "ไม่สามารถส่งการตั้งค่าอีเมลใหม่เพราะไม่มีที่อยู่อีเมลนี้ กรุณาติดต่อผู้ดูแลระบบ",
+ "%s password reset" : "%s ตั้งรหัสผ่านใหม่",
"Use the following link to reset your password: {link}" : "ใช้ลิงค์ต่อไปนี้เพื่อเปลี่ยนรหัสผ่านของคุณใหม่: {link}",
"New password" : "รหัสผ่านใหม่",
- "Reset password" : "เปลี่ยนรหัสผ่าน",
+ "New Password" : "รหัสผ่านใหม่",
+ "Reset password" : "เปลี่ยนรหัสผ่านใหม่",
+ "Searching other places" : "กำลังค้นหาสถานที่อื่นๆ",
+ "No search results in other places" : "ไม่มีผลการค้นหาในสถานที่อื่นๆ",
+ "_{count} search result in other places_::_{count} search results in other places_" : ["{count} ผลการค้นหาในสถานที่อื่นๆ"],
"Personal" : "ส่วนตัว",
"Users" : "ผู้ใช้งาน",
"Apps" : "แอปฯ",
"Admin" : "ผู้ดูแล",
"Help" : "ช่วยเหลือ",
+ "Error loading tags" : "เกิดข้อผิดพลาดขณะโหลดแท็ก",
+ "Tag already exists" : "มีแท็กอยู่แล้ว",
+ "Error deleting tag(s)" : "เกิดข้อผิดพลาดขณะลบแท็ก",
+ "Error tagging" : "เกิดข้อผิดพลาดขณะติดแท็ก",
+ "Error untagging" : "เกิดข้อผิดพลาดขณะยกเลิกการติดแท็ก",
+ "Error favoriting" : "เกิดข้อผิดพลาดขณะเลือกที่ชื่นชอบ",
+ "Error unfavoriting" : "เกิดข้อผิดพลาดขณะยกเลิกการเลือกที่ชื่นชอบ",
"Access forbidden" : "การเข้าถึงถูกหวงห้าม",
+ "File not found" : "ไม่พบไฟล์",
+ "The specified document has not been found on the server." : "ไม่พบเอกสารที่ระบุบนเซิร์ฟเวอร์",
+ "You can click here to return to %s." : "คุณสามารถคลิกที่นี่เพื่อกลับไปยัง %s",
+ "Hey there,\n\njust letting you know that %s shared %s with you.\nView it: %s\n\n" : "นี่คุณ,\nอยากให้คุณทราบว่า %s ได้แชร์ %s กับคุณ\nคลิกดูที่นี่: %s\n",
+ "The share will expire on %s." : "การแชร์จะหมดอายุในวันที่ %s",
+ "Cheers!" : "ไชโย!",
+ "Internal Server Error" : "เกิดข้อผิดพลาดภายในเซิร์ฟเวอร์",
+ "The server encountered an internal error and was unable to complete your request." : "พบข้อผิดพลาดภายในเซิร์ฟเวอร์และไม่สามารถดำเนินการตามคำขอของคุณ",
+ "Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report." : "กรุณาติดต่อผู้ดูแลเซิร์ฟเวอร์ถ้าพบข้อผิดพลาดนี้หลายครั้ง กรุณาระบุรายละเอียดทางเทคนิคที่ด้านล่างในรายงานของคุณ",
+ "More details can be found in the server log." : "รายละเอียดเพิ่มเติมสามารถดูได้ที่บันทึกของระบบเซิร์ฟเวอร์",
+ "Technical details" : "รายละเอียดทางเทคนิค",
+ "Remote Address: %s" : "ที่อยู่รีโมทระยะไกล: %s",
+ "Request ID: %s" : "คำขอ ID: %s",
+ "Type: %s" : "ชนิด: %s",
+ "Code: %s" : "โค้ด: %s",
+ "Message: %s" : "ข้อความ: %s",
+ "File: %s" : "ไฟล์: %s",
+ "Line: %s" : "ไลน์: %s",
+ "Trace" : "ร่องรอย",
+ "Security warning" : "คำเตือนการรักษาความปลอดภัย",
+ "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 <a href=\"%s\" target=\"_blank\">documentation</a>." : "สำหรับข้อมูลวิธีการกำหนดค่าเซิร์ฟเวอร์ของคุณดูได้ที่ <a href=\"%s\" target=\"_blank\">เอกสาร</a>",
"Create an <strong>admin account</strong>" : "สร้าง <strong>บัญชีผู้ดูแลระบบ</strong>",
"Username" : "ชื่อผู้ใช้งาน",
+ "Storage & database" : "พื้นที่จัดเก็บข้อมูลและฐานข้อมูล",
"Data folder" : "โฟลเดอร์เก็บข้อมูล",
- "Configure the database" : "กำหนดค่าฐานข้อมูล",
+ "Configure the database" : "ตั้งค่าฐานข้อมูล",
+ "Only %s is available." : "เฉพาะ %s สามารถใช้ได้",
+ "Install and activate additional PHP modules to choose other database types." : "ติดตั้งและเปิดใช้งานโมดูล PHP เพิ่มเติมเพื่อเลือกชนิดฐานข้อมูลอื่นๆ",
+ "For more details check out the documentation." : "สำหรับรายละเอียดเพิ่มเติมสามารถตรวจสอบได้ที่ <a href=\"%s\" target=\"_blank\">เอกสาร</a>",
"Database user" : "ชื่อผู้ใช้งานฐานข้อมูล",
"Database password" : "รหัสผ่านฐานข้อมูล",
"Database name" : "ชื่อฐานข้อมูล",
"Database tablespace" : "พื้นที่ตารางในฐานข้อมูล",
"Database host" : "Database host",
+ "Performance warning" : "การเตือนประสิทธิภาพการทำงาน",
+ "SQLite will be used as database." : "SQLite จะถูกใช้เป็นฐานข้อมูล",
+ "For larger installations we recommend to choose a different database backend." : "สำหรับการติดตั้งขนาดใหญ่เราขอแนะนำให้เลือกแบ็กเอนด์ฐานข้อมูลที่แตกต่างกัน",
+ "Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "โดยเฉพาะอย่างยิ่งเมื่อใช้ไคลเอนต์เดสก์ทอปสำหรับการผสานข้อมูลโดย SQLite",
"Finish setup" : "ติดตั้งเรียบร้อยแล้ว",
+ "Finishing …" : "เสร็จสิ้น ...",
+ "Need help?" : "ต้องการความช่วยเหลือ?",
+ "See the documentation" : "ดูที่เอกสาร",
+ "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "โปรแกรมนี้ต้องการ JavaScript สำหรับการดำเนินงานที่ถูกต้อง กรุณา {linkstart}เปิดใช้งาน JavaScript{linkend} และโหลดหน้าเว็บ",
"Log out" : "ออกจากระบบ",
"Search" : "ค้นหา",
+ "Server side authentication failed!" : "การรับรองความถูกต้องจากเซิร์ฟเวอร์ล้มเหลว!",
+ "Please contact your administrator." : "กรุณาติดต่อผู้ดูแลระบบ",
+ "An internal error occured." : "เกิดข้อผิดพลาดภายใน",
+ "Please try again or contact your administrator." : "โปรดลองอีกครั้งหรือติดต่อผู้ดูแลระบบ",
+ "Forgot your password? Reset it!" : "ลืมรหัสผ่าน?",
"remember" : "จำรหัสผ่าน",
- "Log in" : "เข้าสู่ระบบ"
+ "Log in" : "เข้าสู่ระบบ",
+ "Alternative Logins" : "ทางเลือกการเข้าสู่ระบบ",
+ "Hey there,<br><br>just letting you know that %s shared <strong>%s</strong> with you.<br><a href=\"%s\">View it!</a><br><br>" : "นี่คุณ,<br><br>อยากให้คุณทราบว่า %s ได้แชร์ <strong>%s</strong> กับคุณ <br><a href=\"%s\">คลิกดูที่นี่</a><br><br>",
+ "This ownCloud instance is currently in single user mode." : "ขณะนี้ ownCloud อยู่ในโหมดผู้ใช้คนเดียว",
+ "This means only administrators can use the instance." : "ซึ่งหมายความว่าผู้ดูแลระบบสามารถใช้อินสแตนซ์",
+ "Contact your system administrator if this message persists or appeared unexpectedly." : "ติดต่อผู้ดูแลระบบของคุณหากข้อความนี้ยังคงมีอยู่หรือปรากฏโดยไม่คาดคิด",
+ "Thank you for your patience." : "ขอบคุณสำหรับความอดทนของคุณ เราจะนำความคิดเห็นของท่านมาปรับปรุงระบบให้ดียิ่งขึ้น",
+ "You are accessing the server from an untrusted domain." : "คุณกำลังเข้าถึงเซิร์ฟเวอร์จากโดเมนที่ไม่น่าเชื่อถือ",
+ "Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domain\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "กรุณาติดต่อผู้ดูแลระบบ หากคุณเป็นผู้ดูแลระบบโปรดกำหนดค่า \"trusted_domain\" โดยตั้งค่าใน config/config.php ยกตัวอย่างระบุการตั้งค่าใน config/config.sample.php",
+ "Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "ทั้งนี้ขึ้นอยู่กับการกำหนดค่าของคุณ ผู้ดูแลระบบอาจสามารถใช้ปุ่มด้านล่างเพื่อกำหนดให้โดเมนนี้มีความน่าเชื่อถือ",
+ "Add \"%s\" as trusted domain" : "ได้เพิ่ม \"%s\" เป็นโดเมนที่เชื่อถือ",
+ "%s will be updated to version %s." : "%s จะถูกอัพเดทให้เป็นรุ่น %s",
+ "The following apps will be disabled:" : "แอพพลิเคชันต่อไปนี้จะปิดการใช้งาน:",
+ "The theme %s has been disabled." : "ธีม %s จะถูกปิดการใช้งาน:",
+ "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "โปรดตรวจสอบฐานข้อมูล การตั้งค่าโฟลเดอร์และโฟลเดอร์ข้อมูลจะถูกสำรองไว้ก่อนดำเนินการ",
+ "Start update" : "เริ่มต้นอัพเดท",
+ "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "เพื่อหลีกเลี่ยงการหมดเวลากับการติดตั้งขนาดใหญ่ คุณสามารถเรียกใช้คำสั่งต่อไปนี้จากไดเรกทอรีการติดตั้งของคุณ:",
+ "This %s instance is currently in maintenance mode, which may take a while." : "%s กำลังอยู่ในโหมดการบำรุงรักษาซึ่งอาจใช้เวลาสักครู่",
+ "This page will refresh itself when the %s instance is available again." : "หน้านี้จะรีเฟรชตัวเองเมื่อ %s สามารถใช้ได้อีกครั้ง"
},"pluralForm" :"nplurals=1; plural=0;"
} \ No newline at end of file
diff --git a/core/search/js/search.js b/core/search/js/search.js
index cb3c3bcf7d7..bc67eb0e154 100644
--- a/core/search/js/search.js
+++ b/core/search/js/search.js
@@ -94,6 +94,9 @@
/**
* Do a search query and display the results
* @param {string} query the search query
+ * @param inApps
+ * @param page
+ * @param size
*/
this.search = function(query, inApps, page, size) {
if (query) {
@@ -160,7 +163,8 @@
var summaryAndStatusHeight = 118;
function isStatusOffScreen() {
- return $searchResults.position() && ($searchResults.position().top + summaryAndStatusHeight > window.innerHeight);
+ return $searchResults.position() &&
+ ($searchResults.position().top + summaryAndStatusHeight > window.innerHeight);
}
function placeStatus() {
@@ -252,10 +256,11 @@
* Event handler for when scrolling the list container.
* This appends/renders the next page of entries when reaching the bottom.
*/
- function onScroll(e) {
+ function onScroll() {
if ($searchResults && lastQuery !== false && lastResults.length > 0) {
var resultsBottom = $searchResults.offset().top + $searchResults.height();
- var containerBottom = $searchResults.offsetParent().offset().top + $searchResults.offsetParent().height();
+ var containerBottom = $searchResults.offsetParent().offset().top +
+ $searchResults.offsetParent().height();
if ( resultsBottom < containerBottom * 1.2 ) {
self.search(lastQuery, lastInApps, lastPage + 1);
}
@@ -289,7 +294,7 @@
event.preventDefault();
});
- $searchBox.on('search', function (event) {
+ $searchBox.on('search', function () {
if($searchBox.val() === '') {
if(self.hasFilter(getCurrentApp())) {
self.getFilter(getCurrentApp())('');
@@ -359,6 +364,14 @@
placeStatus();
OC.Plugins.attach('OCA.Search', this);
+
+ // hide search file if search is not enabled
+ if(self.hasFilter(getCurrentApp())) {
+ return;
+ }
+ if ($searchResults.length === 0) {
+ $searchBox.hide();
+ }
}
};
OCA.Search = Search;
@@ -366,19 +379,18 @@
$(document).ready(function() {
var $searchResults = $('#searchresults');
- if ($searchResults.length) {
+ if ($searchResults.length > 0) {
$searchResults.addClass('hidden');
$('#app-content')
.find('.viewcontainer').css('min-height', 'initial');
+ $searchResults.load(OC.webroot + '/core/search/templates/part.results.html', function () {
+ OC.Search = new OCA.Search($('#searchbox'), $('#searchresults'));
+ });
} else {
- $searchResults = $('<div id="searchresults" class="hidden"/>');
- $('#app-content')
- .append($searchResults)
- .find('.viewcontainer').css('min-height', 'initial');
+ _.defer(function() {
+ OC.Search = new OCA.Search($('#searchbox'), $('#searchresults'));
+ });
}
- $searchResults.load(OC.webroot + '/core/search/templates/part.results.html', function () {
- OC.Search = new OCA.Search($('#searchbox'), $('#searchresults'));
- });
});
/**
diff --git a/core/vendor/.gitignore b/core/vendor/.gitignore
index 0d2ad861dee..14b80df5065 100644
--- a/core/vendor/.gitignore
+++ b/core/vendor/.gitignore
@@ -35,7 +35,7 @@ moment/scripts
# jquery
jquery/**
!jquery/.bower.json
-!jquery/jquery*
+!jquery/jquery.*
!jquery/MIT-LICENSE.txt
# jquery-ui
diff --git a/core/vendor/jquery-migrate/.bower.json b/core/vendor/jquery-migrate/.bower.json
new file mode 100644
index 00000000000..35e7bf5f43f
--- /dev/null
+++ b/core/vendor/jquery-migrate/.bower.json
@@ -0,0 +1,15 @@
+{
+ "name": "jquery-migrate",
+ "version": "1.2.1",
+ "homepage": "https://github.com/appleboy/jquery-migrate",
+ "_release": "1.2.1",
+ "_resolution": {
+ "type": "version",
+ "tag": "1.2.1",
+ "commit": "65f37b60ae3d305efbe1e85909e14c60d524d12a"
+ },
+ "_source": "git://github.com/appleboy/jquery-migrate.git",
+ "_target": "~1.2.1",
+ "_originalSource": "jquery-migrate",
+ "_direct": true
+} \ No newline at end of file
diff --git a/core/vendor/jquery-migrate/component.json b/core/vendor/jquery-migrate/component.json
new file mode 100644
index 00000000000..11efdc01650
--- /dev/null
+++ b/core/vendor/jquery-migrate/component.json
@@ -0,0 +1,4 @@
+{
+ "name" : "jquery-migrate",
+ "version" : "1.2.1"
+}
diff --git a/core/vendor/jquery/jquery-migrate.js b/core/vendor/jquery-migrate/jquery-migrate.js
index 942cb8b4d80..dbe8cbd4d8c 100644
--- a/core/vendor/jquery/jquery-migrate.js
+++ b/core/vendor/jquery-migrate/jquery-migrate.js
@@ -1,511 +1,521 @@
-/*!
- * jQuery Migrate - v1.1.1 - 2013-02-16
- * https://github.com/jquery/jquery-migrate
- * Copyright 2005, 2013 jQuery Foundation, Inc. and other contributors; Licensed MIT
- */
-(function( jQuery, window, undefined ) {
-// See http://bugs.jquery.com/ticket/13335
-// "use strict";
-
-
-var warnedAbout = {};
-
-// List of warnings already given; public read only
-jQuery.migrateWarnings = [];
-
-// Set to true to prevent console output; migrateWarnings still maintained
-// jQuery.migrateMute = false;
-
-// Show a message on the console so devs know we're active
-if ( !jQuery.migrateMute && window.console && console.log ) {
- console.log("JQMIGRATE: Logging is active");
-}
-
-// Set to false to disable traces that appear with warnings
-if ( jQuery.migrateTrace === undefined ) {
- jQuery.migrateTrace = true;
-}
-
-// Forget any warnings we've already given; public
-jQuery.migrateReset = function() {
- warnedAbout = {};
- jQuery.migrateWarnings.length = 0;
-};
-
-function migrateWarn( msg) {
- if ( !warnedAbout[ msg ] ) {
- warnedAbout[ msg ] = true;
- jQuery.migrateWarnings.push( msg );
- if ( window.console && console.warn && !jQuery.migrateMute ) {
- console.warn( "JQMIGRATE: " + msg );
- if ( jQuery.migrateTrace && console.trace ) {
- console.trace();
- }
- }
- }
-}
-
-function migrateWarnProp( obj, prop, value, msg ) {
- if ( Object.defineProperty ) {
- // On ES5 browsers (non-oldIE), warn if the code tries to get prop;
- // allow property to be overwritten in case some other plugin wants it
- try {
- Object.defineProperty( obj, prop, {
- configurable: true,
- enumerable: true,
- get: function() {
- migrateWarn( msg );
- return value;
- },
- set: function( newValue ) {
- migrateWarn( msg );
- value = newValue;
- }
- });
- return;
- } catch( err ) {
- // IE8 is a dope about Object.defineProperty, can't warn there
- }
- }
-
- // Non-ES5 (or broken) browser; just set the property
- jQuery._definePropertyBroken = true;
- obj[ prop ] = value;
-}
-
-if ( document.compatMode === "BackCompat" ) {
- // jQuery has never supported or tested Quirks Mode
- migrateWarn( "jQuery is not compatible with Quirks Mode" );
-}
-
-
-var attrFn = jQuery( "<input/>", { size: 1 } ).attr("size") && jQuery.attrFn,
- oldAttr = jQuery.attr,
- valueAttrGet = jQuery.attrHooks.value && jQuery.attrHooks.value.get ||
- function() { return null; },
- valueAttrSet = jQuery.attrHooks.value && jQuery.attrHooks.value.set ||
- function() { return undefined; },
- rnoType = /^(?:input|button)$/i,
- rnoAttrNodeType = /^[238]$/,
- rboolean = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,
- ruseDefault = /^(?:checked|selected)$/i;
-
-// jQuery.attrFn
-migrateWarnProp( jQuery, "attrFn", attrFn || {}, "jQuery.attrFn is deprecated" );
-
-jQuery.attr = function( elem, name, value, pass ) {
- var lowerName = name.toLowerCase(),
- nType = elem && elem.nodeType;
-
- if ( pass ) {
- // Since pass is used internally, we only warn for new jQuery
- // versions where there isn't a pass arg in the formal params
- if ( oldAttr.length < 4 ) {
- migrateWarn("jQuery.fn.attr( props, pass ) is deprecated");
- }
- if ( elem && !rnoAttrNodeType.test( nType ) &&
- (attrFn ? name in attrFn : jQuery.isFunction(jQuery.fn[name])) ) {
- return jQuery( elem )[ name ]( value );
- }
- }
-
- // Warn if user tries to set `type`, since it breaks on IE 6/7/8; by checking
- // for disconnected elements we don't warn on $( "<button>", { type: "button" } ).
- if ( name === "type" && value !== undefined && rnoType.test( elem.nodeName ) && elem.parentNode ) {
- migrateWarn("Can't change the 'type' of an input or button in IE 6/7/8");
- }
-
- // Restore boolHook for boolean property/attribute synchronization
- if ( !jQuery.attrHooks[ lowerName ] && rboolean.test( lowerName ) ) {
- jQuery.attrHooks[ lowerName ] = {
- get: function( elem, name ) {
- // Align boolean attributes with corresponding properties
- // Fall back to attribute presence where some booleans are not supported
- var attrNode,
- property = jQuery.prop( elem, name );
- return property === true || typeof property !== "boolean" &&
- ( attrNode = elem.getAttributeNode(name) ) && attrNode.nodeValue !== false ?
-
- name.toLowerCase() :
- undefined;
- },
- set: function( elem, value, name ) {
- var propName;
- if ( value === false ) {
- // Remove boolean attributes when set to false
- jQuery.removeAttr( elem, name );
- } else {
- // value is true since we know at this point it's type boolean and not false
- // Set boolean attributes to the same name and set the DOM property
- propName = jQuery.propFix[ name ] || name;
- if ( propName in elem ) {
- // Only set the IDL specifically if it already exists on the element
- elem[ propName ] = true;
- }
-
- elem.setAttribute( name, name.toLowerCase() );
- }
- return name;
- }
- };
-
- // Warn only for attributes that can remain distinct from their properties post-1.9
- if ( ruseDefault.test( lowerName ) ) {
- migrateWarn( "jQuery.fn.attr('" + lowerName + "') may use property instead of attribute" );
- }
- }
-
- return oldAttr.call( jQuery, elem, name, value );
-};
-
-// attrHooks: value
-jQuery.attrHooks.value = {
- get: function( elem, name ) {
- var nodeName = ( elem.nodeName || "" ).toLowerCase();
- if ( nodeName === "button" ) {
- return valueAttrGet.apply( this, arguments );
- }
- if ( nodeName !== "input" && nodeName !== "option" ) {
- migrateWarn("jQuery.fn.attr('value') no longer gets properties");
- }
- return name in elem ?
- elem.value :
- null;
- },
- set: function( elem, value ) {
- var nodeName = ( elem.nodeName || "" ).toLowerCase();
- if ( nodeName === "button" ) {
- return valueAttrSet.apply( this, arguments );
- }
- if ( nodeName !== "input" && nodeName !== "option" ) {
- migrateWarn("jQuery.fn.attr('value', val) no longer sets properties");
- }
- // Does not return so that setAttribute is also used
- elem.value = value;
- }
-};
-
-
-var matched, browser,
- oldInit = jQuery.fn.init,
- oldParseJSON = jQuery.parseJSON,
- // Note this does NOT include the #9521 XSS fix from 1.7!
- rquickExpr = /^(?:[^<]*(<[\w\W]+>)[^>]*|#([\w\-]*))$/;
-
-// $(html) "looks like html" rule change
-jQuery.fn.init = function( selector, context, rootjQuery ) {
- var match;
-
- if ( selector && typeof selector === "string" && !jQuery.isPlainObject( context ) &&
- (match = rquickExpr.exec( selector )) && match[1] ) {
- // This is an HTML string according to the "old" rules; is it still?
- if ( selector.charAt( 0 ) !== "<" ) {
- migrateWarn("$(html) HTML strings must start with '<' character");
- }
- // Now process using loose rules; let pre-1.8 play too
- if ( context && context.context ) {
- // jQuery object as context; parseHTML expects a DOM object
- context = context.context;
- }
- if ( jQuery.parseHTML ) {
- return oldInit.call( this, jQuery.parseHTML( jQuery.trim(selector), context, true ),
- context, rootjQuery );
- }
- }
- return oldInit.apply( this, arguments );
-};
-jQuery.fn.init.prototype = jQuery.fn;
-
-// Let $.parseJSON(falsy_value) return null
-jQuery.parseJSON = function( json ) {
- if ( !json && json !== null ) {
- migrateWarn("jQuery.parseJSON requires a valid JSON string");
- return null;
- }
- return oldParseJSON.apply( this, arguments );
-};
-
-jQuery.uaMatch = function( ua ) {
- ua = ua.toLowerCase();
-
- var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) ||
- /(webkit)[ \/]([\w.]+)/.exec( ua ) ||
- /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) ||
- /(msie) ([\w.]+)/.exec( ua ) ||
- ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) ||
- [];
-
- return {
- browser: match[ 1 ] || "",
- version: match[ 2 ] || "0"
- };
-};
-
-// Don't clobber any existing jQuery.browser in case it's different
-if ( !jQuery.browser ) {
- matched = jQuery.uaMatch( navigator.userAgent );
- browser = {};
-
- if ( matched.browser ) {
- browser[ matched.browser ] = true;
- browser.version = matched.version;
- }
-
- // Chrome is Webkit, but Webkit is also Safari.
- if ( browser.chrome ) {
- browser.webkit = true;
- } else if ( browser.webkit ) {
- browser.safari = true;
- }
-
- jQuery.browser = browser;
-}
-
-// Warn if the code tries to get jQuery.browser
-migrateWarnProp( jQuery, "browser", jQuery.browser, "jQuery.browser is deprecated" );
-
-jQuery.sub = function() {
- function jQuerySub( selector, context ) {
- return new jQuerySub.fn.init( selector, context );
- }
- jQuery.extend( true, jQuerySub, this );
- jQuerySub.superclass = this;
- jQuerySub.fn = jQuerySub.prototype = this();
- jQuerySub.fn.constructor = jQuerySub;
- jQuerySub.sub = this.sub;
- jQuerySub.fn.init = function init( selector, context ) {
- if ( context && context instanceof jQuery && !(context instanceof jQuerySub) ) {
- context = jQuerySub( context );
- }
-
- return jQuery.fn.init.call( this, selector, context, rootjQuerySub );
- };
- jQuerySub.fn.init.prototype = jQuerySub.fn;
- var rootjQuerySub = jQuerySub(document);
- migrateWarn( "jQuery.sub() is deprecated" );
- return jQuerySub;
-};
-
-
-// Ensure that $.ajax gets the new parseJSON defined in core.js
-jQuery.ajaxSetup({
- converters: {
- "text json": jQuery.parseJSON
- }
-});
-
-
-var oldFnData = jQuery.fn.data;
-
-jQuery.fn.data = function( name ) {
- var ret, evt,
- elem = this[0];
-
- // Handles 1.7 which has this behavior and 1.8 which doesn't
- if ( elem && name === "events" && arguments.length === 1 ) {
- ret = jQuery.data( elem, name );
- evt = jQuery._data( elem, name );
- if ( ( ret === undefined || ret === evt ) && evt !== undefined ) {
- migrateWarn("Use of jQuery.fn.data('events') is deprecated");
- return evt;
- }
- }
- return oldFnData.apply( this, arguments );
-};
-
-
-var rscriptType = /\/(java|ecma)script/i,
- oldSelf = jQuery.fn.andSelf || jQuery.fn.addBack;
-
-jQuery.fn.andSelf = function() {
- migrateWarn("jQuery.fn.andSelf() replaced by jQuery.fn.addBack()");
- return oldSelf.apply( this, arguments );
-};
-
-// Since jQuery.clean is used internally on older versions, we only shim if it's missing
-if ( !jQuery.clean ) {
- jQuery.clean = function( elems, context, fragment, scripts ) {
- // Set context per 1.8 logic
- context = context || document;
- context = !context.nodeType && context[0] || context;
- context = context.ownerDocument || context;
-
- migrateWarn("jQuery.clean() is deprecated");
-
- var i, elem, handleScript, jsTags,
- ret = [];
-
- jQuery.merge( ret, jQuery.buildFragment( elems, context ).childNodes );
-
- // Complex logic lifted directly from jQuery 1.8
- if ( fragment ) {
- // Special handling of each script element
- handleScript = function( elem ) {
- // Check if we consider it executable
- if ( !elem.type || rscriptType.test( elem.type ) ) {
- // Detach the script and store it in the scripts array (if provided) or the fragment
- // Return truthy to indicate that it has been handled
- return scripts ?
- scripts.push( elem.parentNode ? elem.parentNode.removeChild( elem ) : elem ) :
- fragment.appendChild( elem );
- }
- };
-
- for ( i = 0; (elem = ret[i]) != null; i++ ) {
- // Check if we're done after handling an executable script
- if ( !( jQuery.nodeName( elem, "script" ) && handleScript( elem ) ) ) {
- // Append to fragment and handle embedded scripts
- fragment.appendChild( elem );
- if ( typeof elem.getElementsByTagName !== "undefined" ) {
- // handleScript alters the DOM, so use jQuery.merge to ensure snapshot iteration
- jsTags = jQuery.grep( jQuery.merge( [], elem.getElementsByTagName("script") ), handleScript );
-
- // Splice the scripts into ret after their former ancestor and advance our index beyond them
- ret.splice.apply( ret, [i + 1, 0].concat( jsTags ) );
- i += jsTags.length;
- }
- }
- }
- }
-
- return ret;
- };
-}
-
-var eventAdd = jQuery.event.add,
- eventRemove = jQuery.event.remove,
- eventTrigger = jQuery.event.trigger,
- oldToggle = jQuery.fn.toggle,
- oldLive = jQuery.fn.live,
- oldDie = jQuery.fn.die,
- ajaxEvents = "ajaxStart|ajaxStop|ajaxSend|ajaxComplete|ajaxError|ajaxSuccess",
- rajaxEvent = new RegExp( "\\b(?:" + ajaxEvents + ")\\b" ),
- rhoverHack = /(?:^|\s)hover(\.\S+|)\b/,
- hoverHack = function( events ) {
- if ( typeof( events ) !== "string" || jQuery.event.special.hover ) {
- return events;
- }
- if ( rhoverHack.test( events ) ) {
- migrateWarn("'hover' pseudo-event is deprecated, use 'mouseenter mouseleave'");
- }
- return events && events.replace( rhoverHack, "mouseenter$1 mouseleave$1" );
- };
-
-// Event props removed in 1.9, put them back if needed; no practical way to warn them
-if ( jQuery.event.props && jQuery.event.props[ 0 ] !== "attrChange" ) {
- jQuery.event.props.unshift( "attrChange", "attrName", "relatedNode", "srcElement" );
-}
-
-// Undocumented jQuery.event.handle was "deprecated" in jQuery 1.7
-if ( jQuery.event.dispatch ) {
- migrateWarnProp( jQuery.event, "handle", jQuery.event.dispatch, "jQuery.event.handle is undocumented and deprecated" );
-}
-
-// Support for 'hover' pseudo-event and ajax event warnings
-jQuery.event.add = function( elem, types, handler, data, selector ){
- if ( elem !== document && rajaxEvent.test( types ) ) {
- migrateWarn( "AJAX events should be attached to document: " + types );
- }
- eventAdd.call( this, elem, hoverHack( types || "" ), handler, data, selector );
-};
-jQuery.event.remove = function( elem, types, handler, selector, mappedTypes ){
- eventRemove.call( this, elem, hoverHack( types ) || "", handler, selector, mappedTypes );
-};
-
-jQuery.fn.error = function() {
- var args = Array.prototype.slice.call( arguments, 0);
- migrateWarn("jQuery.fn.error() is deprecated");
- args.splice( 0, 0, "error" );
- if ( arguments.length ) {
- return this.bind.apply( this, args );
- }
- // error event should not bubble to window, although it does pre-1.7
- this.triggerHandler.apply( this, args );
- return this;
-};
-
-jQuery.fn.toggle = function( fn, fn2 ) {
-
- // Don't mess with animation or css toggles
- if ( !jQuery.isFunction( fn ) || !jQuery.isFunction( fn2 ) ) {
- return oldToggle.apply( this, arguments );
- }
- migrateWarn("jQuery.fn.toggle(handler, handler...) is deprecated");
-
- // Save reference to arguments for access in closure
- var args = arguments,
- guid = fn.guid || jQuery.guid++,
- i = 0,
- toggler = function( event ) {
- // Figure out which function to execute
- var lastToggle = ( jQuery._data( this, "lastToggle" + fn.guid ) || 0 ) % i;
- jQuery._data( this, "lastToggle" + fn.guid, lastToggle + 1 );
-
- // Make sure that clicks stop
- event.preventDefault();
-
- // and execute the function
- return args[ lastToggle ].apply( this, arguments ) || false;
- };
-
- // link all the functions, so any of them can unbind this click handler
- toggler.guid = guid;
- while ( i < args.length ) {
- args[ i++ ].guid = guid;
- }
-
- return this.click( toggler );
-};
-
-jQuery.fn.live = function( types, data, fn ) {
- migrateWarn("jQuery.fn.live() is deprecated");
- if ( oldLive ) {
- return oldLive.apply( this, arguments );
- }
- jQuery( this.context ).on( types, this.selector, data, fn );
- return this;
-};
-
-jQuery.fn.die = function( types, fn ) {
- migrateWarn("jQuery.fn.die() is deprecated");
- if ( oldDie ) {
- return oldDie.apply( this, arguments );
- }
- jQuery( this.context ).off( types, this.selector || "**", fn );
- return this;
-};
-
-// Turn global events into document-triggered events
-jQuery.event.trigger = function( event, data, elem, onlyHandlers ){
- if ( !elem && !rajaxEvent.test( event ) ) {
- migrateWarn( "Global events are undocumented and deprecated" );
- }
- return eventTrigger.call( this, event, data, elem || document, onlyHandlers );
-};
-jQuery.each( ajaxEvents.split("|"),
- function( _, name ) {
- jQuery.event.special[ name ] = {
- setup: function() {
- var elem = this;
-
- // The document needs no shimming; must be !== for oldIE
- if ( elem !== document ) {
- jQuery.event.add( document, name + "." + jQuery.guid, function() {
- jQuery.event.trigger( name, null, elem, true );
- });
- jQuery._data( this, name, jQuery.guid++ );
- }
- return false;
- },
- teardown: function() {
- if ( this !== document ) {
- jQuery.event.remove( document, name + "." + jQuery._data( this, name ) );
- }
- return false;
- }
- };
- }
-);
-
-
-})( jQuery, window );
+/*!
+ * jQuery Migrate - v1.2.1 - 2013-05-08
+ * https://github.com/jquery/jquery-migrate
+ * Copyright 2005, 2013 jQuery Foundation, Inc. and other contributors; Licensed MIT
+ */
+(function( jQuery, window, undefined ) {
+// See http://bugs.jquery.com/ticket/13335
+// "use strict";
+
+
+var warnedAbout = {};
+
+// List of warnings already given; public read only
+jQuery.migrateWarnings = [];
+
+// Set to true to prevent console output; migrateWarnings still maintained
+// jQuery.migrateMute = false;
+
+// Show a message on the console so devs know we're active
+if ( !jQuery.migrateMute && window.console && window.console.log ) {
+ window.console.log("JQMIGRATE: Logging is active");
+}
+
+// Set to false to disable traces that appear with warnings
+if ( jQuery.migrateTrace === undefined ) {
+ jQuery.migrateTrace = true;
+}
+
+// Forget any warnings we've already given; public
+jQuery.migrateReset = function() {
+ warnedAbout = {};
+ jQuery.migrateWarnings.length = 0;
+};
+
+function migrateWarn( msg) {
+ var console = window.console;
+ if ( !warnedAbout[ msg ] ) {
+ warnedAbout[ msg ] = true;
+ jQuery.migrateWarnings.push( msg );
+ if ( console && console.warn && !jQuery.migrateMute ) {
+ console.warn( "JQMIGRATE: " + msg );
+ if ( jQuery.migrateTrace && console.trace ) {
+ console.trace();
+ }
+ }
+ }
+}
+
+function migrateWarnProp( obj, prop, value, msg ) {
+ if ( Object.defineProperty ) {
+ // On ES5 browsers (non-oldIE), warn if the code tries to get prop;
+ // allow property to be overwritten in case some other plugin wants it
+ try {
+ Object.defineProperty( obj, prop, {
+ configurable: true,
+ enumerable: true,
+ get: function() {
+ migrateWarn( msg );
+ return value;
+ },
+ set: function( newValue ) {
+ migrateWarn( msg );
+ value = newValue;
+ }
+ });
+ return;
+ } catch( err ) {
+ // IE8 is a dope about Object.defineProperty, can't warn there
+ }
+ }
+
+ // Non-ES5 (or broken) browser; just set the property
+ jQuery._definePropertyBroken = true;
+ obj[ prop ] = value;
+}
+
+if ( document.compatMode === "BackCompat" ) {
+ // jQuery has never supported or tested Quirks Mode
+ migrateWarn( "jQuery is not compatible with Quirks Mode" );
+}
+
+
+var attrFn = jQuery( "<input/>", { size: 1 } ).attr("size") && jQuery.attrFn,
+ oldAttr = jQuery.attr,
+ valueAttrGet = jQuery.attrHooks.value && jQuery.attrHooks.value.get ||
+ function() { return null; },
+ valueAttrSet = jQuery.attrHooks.value && jQuery.attrHooks.value.set ||
+ function() { return undefined; },
+ rnoType = /^(?:input|button)$/i,
+ rnoAttrNodeType = /^[238]$/,
+ rboolean = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,
+ ruseDefault = /^(?:checked|selected)$/i;
+
+// jQuery.attrFn
+migrateWarnProp( jQuery, "attrFn", attrFn || {}, "jQuery.attrFn is deprecated" );
+
+jQuery.attr = function( elem, name, value, pass ) {
+ var lowerName = name.toLowerCase(),
+ nType = elem && elem.nodeType;
+
+ if ( pass ) {
+ // Since pass is used internally, we only warn for new jQuery
+ // versions where there isn't a pass arg in the formal params
+ if ( oldAttr.length < 4 ) {
+ migrateWarn("jQuery.fn.attr( props, pass ) is deprecated");
+ }
+ if ( elem && !rnoAttrNodeType.test( nType ) &&
+ (attrFn ? name in attrFn : jQuery.isFunction(jQuery.fn[name])) ) {
+ return jQuery( elem )[ name ]( value );
+ }
+ }
+
+ // Warn if user tries to set `type`, since it breaks on IE 6/7/8; by checking
+ // for disconnected elements we don't warn on $( "<button>", { type: "button" } ).
+ if ( name === "type" && value !== undefined && rnoType.test( elem.nodeName ) && elem.parentNode ) {
+ migrateWarn("Can't change the 'type' of an input or button in IE 6/7/8");
+ }
+
+ // Restore boolHook for boolean property/attribute synchronization
+ if ( !jQuery.attrHooks[ lowerName ] && rboolean.test( lowerName ) ) {
+ jQuery.attrHooks[ lowerName ] = {
+ get: function( elem, name ) {
+ // Align boolean attributes with corresponding properties
+ // Fall back to attribute presence where some booleans are not supported
+ var attrNode,
+ property = jQuery.prop( elem, name );
+ return property === true || typeof property !== "boolean" &&
+ ( attrNode = elem.getAttributeNode(name) ) && attrNode.nodeValue !== false ?
+
+ name.toLowerCase() :
+ undefined;
+ },
+ set: function( elem, value, name ) {
+ var propName;
+ if ( value === false ) {
+ // Remove boolean attributes when set to false
+ jQuery.removeAttr( elem, name );
+ } else {
+ // value is true since we know at this point it's type boolean and not false
+ // Set boolean attributes to the same name and set the DOM property
+ propName = jQuery.propFix[ name ] || name;
+ if ( propName in elem ) {
+ // Only set the IDL specifically if it already exists on the element
+ elem[ propName ] = true;
+ }
+
+ elem.setAttribute( name, name.toLowerCase() );
+ }
+ return name;
+ }
+ };
+
+ // Warn only for attributes that can remain distinct from their properties post-1.9
+ if ( ruseDefault.test( lowerName ) ) {
+ migrateWarn( "jQuery.fn.attr('" + lowerName + "') may use property instead of attribute" );
+ }
+ }
+
+ return oldAttr.call( jQuery, elem, name, value );
+};
+
+// attrHooks: value
+jQuery.attrHooks.value = {
+ get: function( elem, name ) {
+ var nodeName = ( elem.nodeName || "" ).toLowerCase();
+ if ( nodeName === "button" ) {
+ return valueAttrGet.apply( this, arguments );
+ }
+ if ( nodeName !== "input" && nodeName !== "option" ) {
+ migrateWarn("jQuery.fn.attr('value') no longer gets properties");
+ }
+ return name in elem ?
+ elem.value :
+ null;
+ },
+ set: function( elem, value ) {
+ var nodeName = ( elem.nodeName || "" ).toLowerCase();
+ if ( nodeName === "button" ) {
+ return valueAttrSet.apply( this, arguments );
+ }
+ if ( nodeName !== "input" && nodeName !== "option" ) {
+ migrateWarn("jQuery.fn.attr('value', val) no longer sets properties");
+ }
+ // Does not return so that setAttribute is also used
+ elem.value = value;
+ }
+};
+
+
+var matched, browser,
+ oldInit = jQuery.fn.init,
+ oldParseJSON = jQuery.parseJSON,
+ // Note: XSS check is done below after string is trimmed
+ rquickExpr = /^([^<]*)(<[\w\W]+>)([^>]*)$/;
+
+// $(html) "looks like html" rule change
+jQuery.fn.init = function( selector, context, rootjQuery ) {
+ var match;
+
+ if ( selector && typeof selector === "string" && !jQuery.isPlainObject( context ) &&
+ (match = rquickExpr.exec( jQuery.trim( selector ) )) && match[ 0 ] ) {
+ // This is an HTML string according to the "old" rules; is it still?
+ if ( selector.charAt( 0 ) !== "<" ) {
+ migrateWarn("$(html) HTML strings must start with '<' character");
+ }
+ if ( match[ 3 ] ) {
+ migrateWarn("$(html) HTML text after last tag is ignored");
+ }
+ // Consistently reject any HTML-like string starting with a hash (#9521)
+ // Note that this may break jQuery 1.6.x code that otherwise would work.
+ if ( match[ 0 ].charAt( 0 ) === "#" ) {
+ migrateWarn("HTML string cannot start with a '#' character");
+ jQuery.error("JQMIGRATE: Invalid selector string (XSS)");
+ }
+ // Now process using loose rules; let pre-1.8 play too
+ if ( context && context.context ) {
+ // jQuery object as context; parseHTML expects a DOM object
+ context = context.context;
+ }
+ if ( jQuery.parseHTML ) {
+ return oldInit.call( this, jQuery.parseHTML( match[ 2 ], context, true ),
+ context, rootjQuery );
+ }
+ }
+ return oldInit.apply( this, arguments );
+};
+jQuery.fn.init.prototype = jQuery.fn;
+
+// Let $.parseJSON(falsy_value) return null
+jQuery.parseJSON = function( json ) {
+ if ( !json && json !== null ) {
+ migrateWarn("jQuery.parseJSON requires a valid JSON string");
+ return null;
+ }
+ return oldParseJSON.apply( this, arguments );
+};
+
+jQuery.uaMatch = function( ua ) {
+ ua = ua.toLowerCase();
+
+ var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) ||
+ /(webkit)[ \/]([\w.]+)/.exec( ua ) ||
+ /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) ||
+ /(msie) ([\w.]+)/.exec( ua ) ||
+ ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) ||
+ [];
+
+ return {
+ browser: match[ 1 ] || "",
+ version: match[ 2 ] || "0"
+ };
+};
+
+// Don't clobber any existing jQuery.browser in case it's different
+if ( !jQuery.browser ) {
+ matched = jQuery.uaMatch( navigator.userAgent );
+ browser = {};
+
+ if ( matched.browser ) {
+ browser[ matched.browser ] = true;
+ browser.version = matched.version;
+ }
+
+ // Chrome is Webkit, but Webkit is also Safari.
+ if ( browser.chrome ) {
+ browser.webkit = true;
+ } else if ( browser.webkit ) {
+ browser.safari = true;
+ }
+
+ jQuery.browser = browser;
+}
+
+// Warn if the code tries to get jQuery.browser
+migrateWarnProp( jQuery, "browser", jQuery.browser, "jQuery.browser is deprecated" );
+
+jQuery.sub = function() {
+ function jQuerySub( selector, context ) {
+ return new jQuerySub.fn.init( selector, context );
+ }
+ jQuery.extend( true, jQuerySub, this );
+ jQuerySub.superclass = this;
+ jQuerySub.fn = jQuerySub.prototype = this();
+ jQuerySub.fn.constructor = jQuerySub;
+ jQuerySub.sub = this.sub;
+ jQuerySub.fn.init = function init( selector, context ) {
+ if ( context && context instanceof jQuery && !(context instanceof jQuerySub) ) {
+ context = jQuerySub( context );
+ }
+
+ return jQuery.fn.init.call( this, selector, context, rootjQuerySub );
+ };
+ jQuerySub.fn.init.prototype = jQuerySub.fn;
+ var rootjQuerySub = jQuerySub(document);
+ migrateWarn( "jQuery.sub() is deprecated" );
+ return jQuerySub;
+};
+
+
+// Ensure that $.ajax gets the new parseJSON defined in core.js
+jQuery.ajaxSetup({
+ converters: {
+ "text json": jQuery.parseJSON
+ }
+});
+
+
+var oldFnData = jQuery.fn.data;
+
+jQuery.fn.data = function( name ) {
+ var ret, evt,
+ elem = this[0];
+
+ // Handles 1.7 which has this behavior and 1.8 which doesn't
+ if ( elem && name === "events" && arguments.length === 1 ) {
+ ret = jQuery.data( elem, name );
+ evt = jQuery._data( elem, name );
+ if ( ( ret === undefined || ret === evt ) && evt !== undefined ) {
+ migrateWarn("Use of jQuery.fn.data('events') is deprecated");
+ return evt;
+ }
+ }
+ return oldFnData.apply( this, arguments );
+};
+
+
+var rscriptType = /\/(java|ecma)script/i,
+ oldSelf = jQuery.fn.andSelf || jQuery.fn.addBack;
+
+jQuery.fn.andSelf = function() {
+ migrateWarn("jQuery.fn.andSelf() replaced by jQuery.fn.addBack()");
+ return oldSelf.apply( this, arguments );
+};
+
+// Since jQuery.clean is used internally on older versions, we only shim if it's missing
+if ( !jQuery.clean ) {
+ jQuery.clean = function( elems, context, fragment, scripts ) {
+ // Set context per 1.8 logic
+ context = context || document;
+ context = !context.nodeType && context[0] || context;
+ context = context.ownerDocument || context;
+
+ migrateWarn("jQuery.clean() is deprecated");
+
+ var i, elem, handleScript, jsTags,
+ ret = [];
+
+ jQuery.merge( ret, jQuery.buildFragment( elems, context ).childNodes );
+
+ // Complex logic lifted directly from jQuery 1.8
+ if ( fragment ) {
+ // Special handling of each script element
+ handleScript = function( elem ) {
+ // Check if we consider it executable
+ if ( !elem.type || rscriptType.test( elem.type ) ) {
+ // Detach the script and store it in the scripts array (if provided) or the fragment
+ // Return truthy to indicate that it has been handled
+ return scripts ?
+ scripts.push( elem.parentNode ? elem.parentNode.removeChild( elem ) : elem ) :
+ fragment.appendChild( elem );
+ }
+ };
+
+ for ( i = 0; (elem = ret[i]) != null; i++ ) {
+ // Check if we're done after handling an executable script
+ if ( !( jQuery.nodeName( elem, "script" ) && handleScript( elem ) ) ) {
+ // Append to fragment and handle embedded scripts
+ fragment.appendChild( elem );
+ if ( typeof elem.getElementsByTagName !== "undefined" ) {
+ // handleScript alters the DOM, so use jQuery.merge to ensure snapshot iteration
+ jsTags = jQuery.grep( jQuery.merge( [], elem.getElementsByTagName("script") ), handleScript );
+
+ // Splice the scripts into ret after their former ancestor and advance our index beyond them
+ ret.splice.apply( ret, [i + 1, 0].concat( jsTags ) );
+ i += jsTags.length;
+ }
+ }
+ }
+ }
+
+ return ret;
+ };
+}
+
+var eventAdd = jQuery.event.add,
+ eventRemove = jQuery.event.remove,
+ eventTrigger = jQuery.event.trigger,
+ oldToggle = jQuery.fn.toggle,
+ oldLive = jQuery.fn.live,
+ oldDie = jQuery.fn.die,
+ ajaxEvents = "ajaxStart|ajaxStop|ajaxSend|ajaxComplete|ajaxError|ajaxSuccess",
+ rajaxEvent = new RegExp( "\\b(?:" + ajaxEvents + ")\\b" ),
+ rhoverHack = /(?:^|\s)hover(\.\S+|)\b/,
+ hoverHack = function( events ) {
+ if ( typeof( events ) !== "string" || jQuery.event.special.hover ) {
+ return events;
+ }
+ if ( rhoverHack.test( events ) ) {
+ migrateWarn("'hover' pseudo-event is deprecated, use 'mouseenter mouseleave'");
+ }
+ return events && events.replace( rhoverHack, "mouseenter$1 mouseleave$1" );
+ };
+
+// Event props removed in 1.9, put them back if needed; no practical way to warn them
+if ( jQuery.event.props && jQuery.event.props[ 0 ] !== "attrChange" ) {
+ jQuery.event.props.unshift( "attrChange", "attrName", "relatedNode", "srcElement" );
+}
+
+// Undocumented jQuery.event.handle was "deprecated" in jQuery 1.7
+if ( jQuery.event.dispatch ) {
+ migrateWarnProp( jQuery.event, "handle", jQuery.event.dispatch, "jQuery.event.handle is undocumented and deprecated" );
+}
+
+// Support for 'hover' pseudo-event and ajax event warnings
+jQuery.event.add = function( elem, types, handler, data, selector ){
+ if ( elem !== document && rajaxEvent.test( types ) ) {
+ migrateWarn( "AJAX events should be attached to document: " + types );
+ }
+ eventAdd.call( this, elem, hoverHack( types || "" ), handler, data, selector );
+};
+jQuery.event.remove = function( elem, types, handler, selector, mappedTypes ){
+ eventRemove.call( this, elem, hoverHack( types ) || "", handler, selector, mappedTypes );
+};
+
+jQuery.fn.error = function() {
+ var args = Array.prototype.slice.call( arguments, 0);
+ migrateWarn("jQuery.fn.error() is deprecated");
+ args.splice( 0, 0, "error" );
+ if ( arguments.length ) {
+ return this.bind.apply( this, args );
+ }
+ // error event should not bubble to window, although it does pre-1.7
+ this.triggerHandler.apply( this, args );
+ return this;
+};
+
+jQuery.fn.toggle = function( fn, fn2 ) {
+
+ // Don't mess with animation or css toggles
+ if ( !jQuery.isFunction( fn ) || !jQuery.isFunction( fn2 ) ) {
+ return oldToggle.apply( this, arguments );
+ }
+ migrateWarn("jQuery.fn.toggle(handler, handler...) is deprecated");
+
+ // Save reference to arguments for access in closure
+ var args = arguments,
+ guid = fn.guid || jQuery.guid++,
+ i = 0,
+ toggler = function( event ) {
+ // Figure out which function to execute
+ var lastToggle = ( jQuery._data( this, "lastToggle" + fn.guid ) || 0 ) % i;
+ jQuery._data( this, "lastToggle" + fn.guid, lastToggle + 1 );
+
+ // Make sure that clicks stop
+ event.preventDefault();
+
+ // and execute the function
+ return args[ lastToggle ].apply( this, arguments ) || false;
+ };
+
+ // link all the functions, so any of them can unbind this click handler
+ toggler.guid = guid;
+ while ( i < args.length ) {
+ args[ i++ ].guid = guid;
+ }
+
+ return this.click( toggler );
+};
+
+jQuery.fn.live = function( types, data, fn ) {
+ migrateWarn("jQuery.fn.live() is deprecated");
+ if ( oldLive ) {
+ return oldLive.apply( this, arguments );
+ }
+ jQuery( this.context ).on( types, this.selector, data, fn );
+ return this;
+};
+
+jQuery.fn.die = function( types, fn ) {
+ migrateWarn("jQuery.fn.die() is deprecated");
+ if ( oldDie ) {
+ return oldDie.apply( this, arguments );
+ }
+ jQuery( this.context ).off( types, this.selector || "**", fn );
+ return this;
+};
+
+// Turn global events into document-triggered events
+jQuery.event.trigger = function( event, data, elem, onlyHandlers ){
+ if ( !elem && !rajaxEvent.test( event ) ) {
+ migrateWarn( "Global events are undocumented and deprecated" );
+ }
+ return eventTrigger.call( this, event, data, elem || document, onlyHandlers );
+};
+jQuery.each( ajaxEvents.split("|"),
+ function( _, name ) {
+ jQuery.event.special[ name ] = {
+ setup: function() {
+ var elem = this;
+
+ // The document needs no shimming; must be !== for oldIE
+ if ( elem !== document ) {
+ jQuery.event.add( document, name + "." + jQuery.guid, function() {
+ jQuery.event.trigger( name, null, elem, true );
+ });
+ jQuery._data( this, name, jQuery.guid++ );
+ }
+ return false;
+ },
+ teardown: function() {
+ if ( this !== document ) {
+ jQuery.event.remove( document, name + "." + jQuery._data( this, name ) );
+ }
+ return false;
+ }
+ };
+ }
+);
+
+
+})( jQuery, window );
diff --git a/core/vendor/jquery-migrate/jquery-migrate.min.js b/core/vendor/jquery-migrate/jquery-migrate.min.js
new file mode 100644
index 00000000000..8b7ec47a2d6
--- /dev/null
+++ b/core/vendor/jquery-migrate/jquery-migrate.min.js
@@ -0,0 +1,2 @@
+/*! jQuery Migrate v1.2.1 | (c) 2005, 2013 jQuery Foundation, Inc. and other contributors | jquery.org/license */
+jQuery.migrateMute===void 0&&(jQuery.migrateMute=!0),function(e,t,n){function r(n){var r=t.console;i[n]||(i[n]=!0,e.migrateWarnings.push(n),r&&r.warn&&!e.migrateMute&&(r.warn("JQMIGRATE: "+n),e.migrateTrace&&r.trace&&r.trace()))}function a(t,a,i,o){if(Object.defineProperty)try{return Object.defineProperty(t,a,{configurable:!0,enumerable:!0,get:function(){return r(o),i},set:function(e){r(o),i=e}}),n}catch(s){}e._definePropertyBroken=!0,t[a]=i}var i={};e.migrateWarnings=[],!e.migrateMute&&t.console&&t.console.log&&t.console.log("JQMIGRATE: Logging is active"),e.migrateTrace===n&&(e.migrateTrace=!0),e.migrateReset=function(){i={},e.migrateWarnings.length=0},"BackCompat"===document.compatMode&&r("jQuery is not compatible with Quirks Mode");var o=e("<input/>",{size:1}).attr("size")&&e.attrFn,s=e.attr,u=e.attrHooks.value&&e.attrHooks.value.get||function(){return null},c=e.attrHooks.value&&e.attrHooks.value.set||function(){return n},l=/^(?:input|button)$/i,d=/^[238]$/,p=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,f=/^(?:checked|selected)$/i;a(e,"attrFn",o||{},"jQuery.attrFn is deprecated"),e.attr=function(t,a,i,u){var c=a.toLowerCase(),g=t&&t.nodeType;return u&&(4>s.length&&r("jQuery.fn.attr( props, pass ) is deprecated"),t&&!d.test(g)&&(o?a in o:e.isFunction(e.fn[a])))?e(t)[a](i):("type"===a&&i!==n&&l.test(t.nodeName)&&t.parentNode&&r("Can't change the 'type' of an input or button in IE 6/7/8"),!e.attrHooks[c]&&p.test(c)&&(e.attrHooks[c]={get:function(t,r){var a,i=e.prop(t,r);return i===!0||"boolean"!=typeof i&&(a=t.getAttributeNode(r))&&a.nodeValue!==!1?r.toLowerCase():n},set:function(t,n,r){var a;return n===!1?e.removeAttr(t,r):(a=e.propFix[r]||r,a in t&&(t[a]=!0),t.setAttribute(r,r.toLowerCase())),r}},f.test(c)&&r("jQuery.fn.attr('"+c+"') may use property instead of attribute")),s.call(e,t,a,i))},e.attrHooks.value={get:function(e,t){var n=(e.nodeName||"").toLowerCase();return"button"===n?u.apply(this,arguments):("input"!==n&&"option"!==n&&r("jQuery.fn.attr('value') no longer gets properties"),t in e?e.value:null)},set:function(e,t){var a=(e.nodeName||"").toLowerCase();return"button"===a?c.apply(this,arguments):("input"!==a&&"option"!==a&&r("jQuery.fn.attr('value', val) no longer sets properties"),e.value=t,n)}};var g,h,v=e.fn.init,m=e.parseJSON,y=/^([^<]*)(<[\w\W]+>)([^>]*)$/;e.fn.init=function(t,n,a){var i;return t&&"string"==typeof t&&!e.isPlainObject(n)&&(i=y.exec(e.trim(t)))&&i[0]&&("<"!==t.charAt(0)&&r("$(html) HTML strings must start with '<' character"),i[3]&&r("$(html) HTML text after last tag is ignored"),"#"===i[0].charAt(0)&&(r("HTML string cannot start with a '#' character"),e.error("JQMIGRATE: Invalid selector string (XSS)")),n&&n.context&&(n=n.context),e.parseHTML)?v.call(this,e.parseHTML(i[2],n,!0),n,a):v.apply(this,arguments)},e.fn.init.prototype=e.fn,e.parseJSON=function(e){return e||null===e?m.apply(this,arguments):(r("jQuery.parseJSON requires a valid JSON string"),null)},e.uaMatch=function(e){e=e.toLowerCase();var t=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||0>e.indexOf("compatible")&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},e.browser||(g=e.uaMatch(navigator.userAgent),h={},g.browser&&(h[g.browser]=!0,h.version=g.version),h.chrome?h.webkit=!0:h.webkit&&(h.safari=!0),e.browser=h),a(e,"browser",e.browser,"jQuery.browser is deprecated"),e.sub=function(){function t(e,n){return new t.fn.init(e,n)}e.extend(!0,t,this),t.superclass=this,t.fn=t.prototype=this(),t.fn.constructor=t,t.sub=this.sub,t.fn.init=function(r,a){return a&&a instanceof e&&!(a instanceof t)&&(a=t(a)),e.fn.init.call(this,r,a,n)},t.fn.init.prototype=t.fn;var n=t(document);return r("jQuery.sub() is deprecated"),t},e.ajaxSetup({converters:{"text json":e.parseJSON}});var b=e.fn.data;e.fn.data=function(t){var a,i,o=this[0];return!o||"events"!==t||1!==arguments.length||(a=e.data(o,t),i=e._data(o,t),a!==n&&a!==i||i===n)?b.apply(this,arguments):(r("Use of jQuery.fn.data('events') is deprecated"),i)};var j=/\/(java|ecma)script/i,w=e.fn.andSelf||e.fn.addBack;e.fn.andSelf=function(){return r("jQuery.fn.andSelf() replaced by jQuery.fn.addBack()"),w.apply(this,arguments)},e.clean||(e.clean=function(t,a,i,o){a=a||document,a=!a.nodeType&&a[0]||a,a=a.ownerDocument||a,r("jQuery.clean() is deprecated");var s,u,c,l,d=[];if(e.merge(d,e.buildFragment(t,a).childNodes),i)for(c=function(e){return!e.type||j.test(e.type)?o?o.push(e.parentNode?e.parentNode.removeChild(e):e):i.appendChild(e):n},s=0;null!=(u=d[s]);s++)e.nodeName(u,"script")&&c(u)||(i.appendChild(u),u.getElementsByTagName!==n&&(l=e.grep(e.merge([],u.getElementsByTagName("script")),c),d.splice.apply(d,[s+1,0].concat(l)),s+=l.length));return d});var Q=e.event.add,x=e.event.remove,k=e.event.trigger,N=e.fn.toggle,T=e.fn.live,M=e.fn.die,S="ajaxStart|ajaxStop|ajaxSend|ajaxComplete|ajaxError|ajaxSuccess",C=RegExp("\\b(?:"+S+")\\b"),H=/(?:^|\s)hover(\.\S+|)\b/,A=function(t){return"string"!=typeof t||e.event.special.hover?t:(H.test(t)&&r("'hover' pseudo-event is deprecated, use 'mouseenter mouseleave'"),t&&t.replace(H,"mouseenter$1 mouseleave$1"))};e.event.props&&"attrChange"!==e.event.props[0]&&e.event.props.unshift("attrChange","attrName","relatedNode","srcElement"),e.event.dispatch&&a(e.event,"handle",e.event.dispatch,"jQuery.event.handle is undocumented and deprecated"),e.event.add=function(e,t,n,a,i){e!==document&&C.test(t)&&r("AJAX events should be attached to document: "+t),Q.call(this,e,A(t||""),n,a,i)},e.event.remove=function(e,t,n,r,a){x.call(this,e,A(t)||"",n,r,a)},e.fn.error=function(){var e=Array.prototype.slice.call(arguments,0);return r("jQuery.fn.error() is deprecated"),e.splice(0,0,"error"),arguments.length?this.bind.apply(this,e):(this.triggerHandler.apply(this,e),this)},e.fn.toggle=function(t,n){if(!e.isFunction(t)||!e.isFunction(n))return N.apply(this,arguments);r("jQuery.fn.toggle(handler, handler...) is deprecated");var a=arguments,i=t.guid||e.guid++,o=0,s=function(n){var r=(e._data(this,"lastToggle"+t.guid)||0)%o;return e._data(this,"lastToggle"+t.guid,r+1),n.preventDefault(),a[r].apply(this,arguments)||!1};for(s.guid=i;a.length>o;)a[o++].guid=i;return this.click(s)},e.fn.live=function(t,n,a){return r("jQuery.fn.live() is deprecated"),T?T.apply(this,arguments):(e(this.context).on(t,this.selector,n,a),this)},e.fn.die=function(t,n){return r("jQuery.fn.die() is deprecated"),M?M.apply(this,arguments):(e(this.context).off(t,this.selector||"**",n),this)},e.event.trigger=function(e,t,n,a){return n||C.test(e)||r("Global events are undocumented and deprecated"),k.call(this,e,t,n||document,a)},e.each(S.split("|"),function(t,n){e.event.special[n]={setup:function(){var t=this;return t!==document&&(e.event.add(document,n+"."+e.guid,function(){e.event.trigger(n,null,t,!0)}),e._data(this,n,e.guid++)),!1},teardown:function(){return this!==document&&e.event.remove(document,n+"."+e._data(this,n)),!1}}})}(jQuery,window); \ No newline at end of file
diff --git a/core/vendor/jquery/jquery-migrate.min.js b/core/vendor/jquery/jquery-migrate.min.js
deleted file mode 100644
index eb3ecb1b3dd..00000000000
--- a/core/vendor/jquery/jquery-migrate.min.js
+++ /dev/null
@@ -1,3 +0,0 @@
-/*! jQuery Migrate v1.1.1 | (c) 2005, 2013 jQuery Foundation, Inc. and other contributors | jquery.org/license */
-jQuery.migrateMute===void 0&&(jQuery.migrateMute=!0),function(e,t,n){function r(n){o[n]||(o[n]=!0,e.migrateWarnings.push(n),t.console&&console.warn&&!e.migrateMute&&(console.warn("JQMIGRATE: "+n),e.migrateTrace&&console.trace&&console.trace()))}function a(t,a,o,i){if(Object.defineProperty)try{return Object.defineProperty(t,a,{configurable:!0,enumerable:!0,get:function(){return r(i),o},set:function(e){r(i),o=e}}),n}catch(s){}e._definePropertyBroken=!0,t[a]=o}var o={};e.migrateWarnings=[],!e.migrateMute&&t.console&&console.log&&console.log("JQMIGRATE: Logging is active"),e.migrateTrace===n&&(e.migrateTrace=!0),e.migrateReset=function(){o={},e.migrateWarnings.length=0},"BackCompat"===document.compatMode&&r("jQuery is not compatible with Quirks Mode");var i=e("<input/>",{size:1}).attr("size")&&e.attrFn,s=e.attr,u=e.attrHooks.value&&e.attrHooks.value.get||function(){return null},c=e.attrHooks.value&&e.attrHooks.value.set||function(){return n},l=/^(?:input|button)$/i,d=/^[238]$/,p=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,f=/^(?:checked|selected)$/i;a(e,"attrFn",i||{},"jQuery.attrFn is deprecated"),e.attr=function(t,a,o,u){var c=a.toLowerCase(),g=t&&t.nodeType;return u&&(4>s.length&&r("jQuery.fn.attr( props, pass ) is deprecated"),t&&!d.test(g)&&(i?a in i:e.isFunction(e.fn[a])))?e(t)[a](o):("type"===a&&o!==n&&l.test(t.nodeName)&&t.parentNode&&r("Can't change the 'type' of an input or button in IE 6/7/8"),!e.attrHooks[c]&&p.test(c)&&(e.attrHooks[c]={get:function(t,r){var a,o=e.prop(t,r);return o===!0||"boolean"!=typeof o&&(a=t.getAttributeNode(r))&&a.nodeValue!==!1?r.toLowerCase():n},set:function(t,n,r){var a;return n===!1?e.removeAttr(t,r):(a=e.propFix[r]||r,a in t&&(t[a]=!0),t.setAttribute(r,r.toLowerCase())),r}},f.test(c)&&r("jQuery.fn.attr('"+c+"') may use property instead of attribute")),s.call(e,t,a,o))},e.attrHooks.value={get:function(e,t){var n=(e.nodeName||"").toLowerCase();return"button"===n?u.apply(this,arguments):("input"!==n&&"option"!==n&&r("jQuery.fn.attr('value') no longer gets properties"),t in e?e.value:null)},set:function(e,t){var a=(e.nodeName||"").toLowerCase();return"button"===a?c.apply(this,arguments):("input"!==a&&"option"!==a&&r("jQuery.fn.attr('value', val) no longer sets properties"),e.value=t,n)}};var g,h,v=e.fn.init,m=e.parseJSON,y=/^(?:[^<]*(<[\w\W]+>)[^>]*|#([\w\-]*))$/;e.fn.init=function(t,n,a){var o;return t&&"string"==typeof t&&!e.isPlainObject(n)&&(o=y.exec(t))&&o[1]&&("<"!==t.charAt(0)&&r("$(html) HTML strings must start with '<' character"),n&&n.context&&(n=n.context),e.parseHTML)?v.call(this,e.parseHTML(e.trim(t),n,!0),n,a):v.apply(this,arguments)},e.fn.init.prototype=e.fn,e.parseJSON=function(e){return e||null===e?m.apply(this,arguments):(r("jQuery.parseJSON requires a valid JSON string"),null)},e.uaMatch=function(e){e=e.toLowerCase();var t=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||0>e.indexOf("compatible")&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},e.browser||(g=e.uaMatch(navigator.userAgent),h={},g.browser&&(h[g.browser]=!0,h.version=g.version),h.chrome?h.webkit=!0:h.webkit&&(h.safari=!0),e.browser=h),a(e,"browser",e.browser,"jQuery.browser is deprecated"),e.sub=function(){function t(e,n){return new t.fn.init(e,n)}e.extend(!0,t,this),t.superclass=this,t.fn=t.prototype=this(),t.fn.constructor=t,t.sub=this.sub,t.fn.init=function(r,a){return a&&a instanceof e&&!(a instanceof t)&&(a=t(a)),e.fn.init.call(this,r,a,n)},t.fn.init.prototype=t.fn;var n=t(document);return r("jQuery.sub() is deprecated"),t},e.ajaxSetup({converters:{"text json":e.parseJSON}});var b=e.fn.data;e.fn.data=function(t){var a,o,i=this[0];return!i||"events"!==t||1!==arguments.length||(a=e.data(i,t),o=e._data(i,t),a!==n&&a!==o||o===n)?b.apply(this,arguments):(r("Use of jQuery.fn.data('events') is deprecated"),o)};var j=/\/(java|ecma)script/i,w=e.fn.andSelf||e.fn.addBack;e.fn.andSelf=function(){return r("jQuery.fn.andSelf() replaced by jQuery.fn.addBack()"),w.apply(this,arguments)},e.clean||(e.clean=function(t,a,o,i){a=a||document,a=!a.nodeType&&a[0]||a,a=a.ownerDocument||a,r("jQuery.clean() is deprecated");var s,u,c,l,d=[];if(e.merge(d,e.buildFragment(t,a).childNodes),o)for(c=function(e){return!e.type||j.test(e.type)?i?i.push(e.parentNode?e.parentNode.removeChild(e):e):o.appendChild(e):n},s=0;null!=(u=d[s]);s++)e.nodeName(u,"script")&&c(u)||(o.appendChild(u),u.getElementsByTagName!==n&&(l=e.grep(e.merge([],u.getElementsByTagName("script")),c),d.splice.apply(d,[s+1,0].concat(l)),s+=l.length));return d});var Q=e.event.add,x=e.event.remove,k=e.event.trigger,N=e.fn.toggle,C=e.fn.live,S=e.fn.die,T="ajaxStart|ajaxStop|ajaxSend|ajaxComplete|ajaxError|ajaxSuccess",M=RegExp("\\b(?:"+T+")\\b"),H=/(?:^|\s)hover(\.\S+|)\b/,A=function(t){return"string"!=typeof t||e.event.special.hover?t:(H.test(t)&&r("'hover' pseudo-event is deprecated, use 'mouseenter mouseleave'"),t&&t.replace(H,"mouseenter$1 mouseleave$1"))};e.event.props&&"attrChange"!==e.event.props[0]&&e.event.props.unshift("attrChange","attrName","relatedNode","srcElement"),e.event.dispatch&&a(e.event,"handle",e.event.dispatch,"jQuery.event.handle is undocumented and deprecated"),e.event.add=function(e,t,n,a,o){e!==document&&M.test(t)&&r("AJAX events should be attached to document: "+t),Q.call(this,e,A(t||""),n,a,o)},e.event.remove=function(e,t,n,r,a){x.call(this,e,A(t)||"",n,r,a)},e.fn.error=function(){var e=Array.prototype.slice.call(arguments,0);return r("jQuery.fn.error() is deprecated"),e.splice(0,0,"error"),arguments.length?this.bind.apply(this,e):(this.triggerHandler.apply(this,e),this)},e.fn.toggle=function(t,n){if(!e.isFunction(t)||!e.isFunction(n))return N.apply(this,arguments);r("jQuery.fn.toggle(handler, handler...) is deprecated");var a=arguments,o=t.guid||e.guid++,i=0,s=function(n){var r=(e._data(this,"lastToggle"+t.guid)||0)%i;return e._data(this,"lastToggle"+t.guid,r+1),n.preventDefault(),a[r].apply(this,arguments)||!1};for(s.guid=o;a.length>i;)a[i++].guid=o;return this.click(s)},e.fn.live=function(t,n,a){return r("jQuery.fn.live() is deprecated"),C?C.apply(this,arguments):(e(this.context).on(t,this.selector,n,a),this)},e.fn.die=function(t,n){return r("jQuery.fn.die() is deprecated"),S?S.apply(this,arguments):(e(this.context).off(t,this.selector||"**",n),this)},e.event.trigger=function(e,t,n,a){return n||M.test(e)||r("Global events are undocumented and deprecated"),k.call(this,e,t,n||document,a)},e.each(T.split("|"),function(t,n){e.event.special[n]={setup:function(){var t=this;return t!==document&&(e.event.add(document,n+"."+e.guid,function(){e.event.trigger(n,null,t,!0)}),e._data(this,n,e.guid++)),!1},teardown:function(){return this!==document&&e.event.remove(document,n+"."+e._data(this,n)),!1}}})}(jQuery,window);
-//@ sourceMappingURL=dist/jquery-migrate.min.map \ No newline at end of file