Merge branch 'master' into securityutils
Conflicts: lib/private/util.php
This commit is contained in:
commit
ae3425d2da
2
3rdparty
2
3rdparty
|
@ -1 +1 @@
|
||||||
Subproject commit 57245d2a64c99aab8a438f909988e7a4ffef5b23
|
Subproject commit 428579e7a14ce465cb3596c91110ad7d13de2b06
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
OCP\JSON::checkLoggedIn();
|
OCP\JSON::checkLoggedIn();
|
||||||
OCP\JSON::callCheck();
|
OCP\JSON::callCheck();
|
||||||
\OC::$session->close();
|
\OC::$server->getSession()->close();
|
||||||
|
|
||||||
|
|
||||||
// Get data
|
// Get data
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
|
|
||||||
// Check if we are a user
|
// Check if we are a user
|
||||||
OCP\User::checkLoggedIn();
|
OCP\User::checkLoggedIn();
|
||||||
\OC::$session->close();
|
\OC::$server->getSession()->close();
|
||||||
|
|
||||||
$files = $_GET["files"];
|
$files = $_GET["files"];
|
||||||
$dir = $_GET["dir"];
|
$dir = $_GET["dir"];
|
||||||
|
|
|
@ -7,7 +7,7 @@ if (isset($_GET['dir'])) {
|
||||||
}
|
}
|
||||||
|
|
||||||
OCP\JSON::checkLoggedIn();
|
OCP\JSON::checkLoggedIn();
|
||||||
\OC::$session->close();
|
\OC::$server->getSession()->close();
|
||||||
|
|
||||||
// send back json
|
// send back json
|
||||||
OCP\JSON::success(array('data' => \OCA\Files\Helper::buildFileStorageStatistics($dir)));
|
OCP\JSON::success(array('data' => \OCA\Files\Helper::buildFileStorageStatistics($dir)));
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
OCP\JSON::checkLoggedIn();
|
OCP\JSON::checkLoggedIn();
|
||||||
\OC::$session->close();
|
\OC::$server->getSession()->close();
|
||||||
$l = OC_L10N::get('files');
|
$l = \OC::$server->getL10N('files');
|
||||||
|
|
||||||
// Load the files
|
// Load the files
|
||||||
$dir = isset($_GET['dir']) ? $_GET['dir'] : '';
|
$dir = isset($_GET['dir']) ? $_GET['dir'] : '';
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<?php
|
<?php
|
||||||
\OC::$session->close();
|
\OC::$server->getSession()->close();
|
||||||
|
|
||||||
print OC_Helper::mimetypeIcon($_GET['mime']);
|
print OC_Helper::mimetypeIcon($_GET['mime']);
|
||||||
|
|
|
@ -2,14 +2,14 @@
|
||||||
|
|
||||||
OCP\JSON::checkLoggedIn();
|
OCP\JSON::checkLoggedIn();
|
||||||
OCP\JSON::callCheck();
|
OCP\JSON::callCheck();
|
||||||
\OC::$session->close();
|
\OC::$server->getSession()->close();
|
||||||
|
|
||||||
// Get data
|
// Get data
|
||||||
$dir = stripslashes($_POST["dir"]);
|
$dir = stripslashes($_POST["dir"]);
|
||||||
$file = stripslashes($_POST["file"]);
|
$file = stripslashes($_POST["file"]);
|
||||||
$target = stripslashes(rawurldecode($_POST["target"]));
|
$target = stripslashes(rawurldecode($_POST["target"]));
|
||||||
|
|
||||||
$l = OC_L10N::get('files');
|
$l = \OC::$server->getL10N('files');
|
||||||
|
|
||||||
if(\OC\Files\Filesystem::file_exists($target . '/' . $file)) {
|
if(\OC\Files\Filesystem::file_exists($target . '/' . $file)) {
|
||||||
OCP\JSON::error(array("data" => array( "message" => $l->t("Could not move %s - File with this name already exists", array($file)) )));
|
OCP\JSON::error(array("data" => array( "message" => $l->t("Could not move %s - File with this name already exists", array($file)) )));
|
||||||
|
|
|
@ -7,7 +7,7 @@ if(!OC_User::isLoggedIn()) {
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
\OC::$session->close();
|
\OC::$server->getSession()->close();
|
||||||
|
|
||||||
// Get the params
|
// Get the params
|
||||||
$dir = isset( $_REQUEST['dir'] ) ? '/'.trim($_REQUEST['dir'], '/\\') : '';
|
$dir = isset( $_REQUEST['dir'] ) ? '/'.trim($_REQUEST['dir'], '/\\') : '';
|
||||||
|
@ -46,7 +46,7 @@ function progress($notification_code, $severity, $message, $message_code, $bytes
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$l10n = \OC_L10n::get('files');
|
$l10n = \OC::$server->getL10N('files');
|
||||||
|
|
||||||
$result = array(
|
$result = array(
|
||||||
'success' => false,
|
'success' => false,
|
||||||
|
|
|
@ -5,13 +5,13 @@
|
||||||
|
|
||||||
OCP\JSON::checkLoggedIn();
|
OCP\JSON::checkLoggedIn();
|
||||||
OCP\JSON::callCheck();
|
OCP\JSON::callCheck();
|
||||||
\OC::$session->close();
|
\OC::$server->getSession()->close();
|
||||||
|
|
||||||
// Get the params
|
// Get the params
|
||||||
$dir = isset( $_POST['dir'] ) ? stripslashes($_POST['dir']) : '';
|
$dir = isset( $_POST['dir'] ) ? stripslashes($_POST['dir']) : '';
|
||||||
$foldername = isset( $_POST['foldername'] ) ? stripslashes($_POST['foldername']) : '';
|
$foldername = isset( $_POST['foldername'] ) ? stripslashes($_POST['foldername']) : '';
|
||||||
|
|
||||||
$l10n = \OC_L10n::get('files');
|
$l10n = \OC::$server->getL10N('files');
|
||||||
|
|
||||||
$result = array(
|
$result = array(
|
||||||
'success' => false,
|
'success' => false,
|
||||||
|
|
|
@ -23,11 +23,11 @@
|
||||||
|
|
||||||
OCP\JSON::checkLoggedIn();
|
OCP\JSON::checkLoggedIn();
|
||||||
OCP\JSON::callCheck();
|
OCP\JSON::callCheck();
|
||||||
\OC::$session->close();
|
\OC::$server->getSession()->close();
|
||||||
|
|
||||||
$files = new \OCA\Files\App(
|
$files = new \OCA\Files\App(
|
||||||
\OC\Files\Filesystem::getView(),
|
\OC\Files\Filesystem::getView(),
|
||||||
\OC_L10n::get('files')
|
\OC::$server->getL10N('files')
|
||||||
);
|
);
|
||||||
$result = $files->rename(
|
$result = $files->rename(
|
||||||
$_GET["dir"],
|
$_GET["dir"],
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
set_time_limit(0); //scanning can take ages
|
set_time_limit(0); //scanning can take ages
|
||||||
\OC::$session->close();
|
\OC::$server->getSession()->close();
|
||||||
|
|
||||||
$force = (isset($_GET['force']) and ($_GET['force'] === 'true'));
|
$force = (isset($_GET['force']) and ($_GET['force'] === 'true'));
|
||||||
$dir = isset($_GET['dir']) ? $_GET['dir'] : '';
|
$dir = isset($_GET['dir']) ? $_GET['dir'] : '';
|
||||||
|
|
|
@ -10,7 +10,7 @@ OCP\JSON::setContentTypeHeader('text/plain');
|
||||||
$allowedPermissions = OCP\PERMISSION_ALL;
|
$allowedPermissions = OCP\PERMISSION_ALL;
|
||||||
$errorCode = null;
|
$errorCode = null;
|
||||||
|
|
||||||
$l = OC_L10N::get('files');
|
$l = \OC::$server->getL10N('files');
|
||||||
if (empty($_POST['dirToken'])) {
|
if (empty($_POST['dirToken'])) {
|
||||||
// The standard case, files are uploaded through logged in users :)
|
// The standard case, files are uploaded through logged in users :)
|
||||||
OCP\JSON::checkLoggedIn();
|
OCP\JSON::checkLoggedIn();
|
||||||
|
@ -68,7 +68,7 @@ if (empty($_POST['dirToken'])) {
|
||||||
OCP\JSON::callCheck();
|
OCP\JSON::callCheck();
|
||||||
if (!\OCP\App::isEnabled('files_encryption')) {
|
if (!\OCP\App::isEnabled('files_encryption')) {
|
||||||
// encryption app need to create keys later, so can't close too early
|
// encryption app need to create keys later, so can't close too early
|
||||||
\OC::$session->close();
|
\OC::$server->getSession()->close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
$l = OC_L10N::get('files');
|
$l = \OC::$server->getL10N('files');
|
||||||
|
|
||||||
OCP\App::registerAdmin('files', 'admin');
|
OCP\App::registerAdmin('files', 'admin');
|
||||||
|
|
||||||
|
|
|
@ -703,7 +703,7 @@
|
||||||
"class": "modified",
|
"class": "modified",
|
||||||
"title": formatDate(mtime),
|
"title": formatDate(mtime),
|
||||||
"style": 'color:rgb('+modifiedColor+','+modifiedColor+','+modifiedColor+')'
|
"style": 'color:rgb('+modifiedColor+','+modifiedColor+','+modifiedColor+')'
|
||||||
}).text( relative_modified_date(mtime / 1000) ));
|
}).text(OC.Util.relativeModifiedDate(mtime)));
|
||||||
tr.find('.filesize').text(simpleSize);
|
tr.find('.filesize').text(simpleSize);
|
||||||
tr.append(td);
|
tr.append(td);
|
||||||
return tr;
|
return tr;
|
||||||
|
|
|
@ -15,6 +15,7 @@ $TRANSLATIONS = array(
|
||||||
"Failed to write to disk" => "ডিস্কে লিখতে ব্যর্থ",
|
"Failed to write to disk" => "ডিস্কে লিখতে ব্যর্থ",
|
||||||
"Invalid directory." => "ভুল ডিরেক্টরি",
|
"Invalid directory." => "ভুল ডিরেক্টরি",
|
||||||
"Files" => "ফাইল",
|
"Files" => "ফাইল",
|
||||||
|
"All files" => "সব ফাইল",
|
||||||
"Upload cancelled." => "আপলোড বাতিল করা হয়েছে।",
|
"Upload cancelled." => "আপলোড বাতিল করা হয়েছে।",
|
||||||
"File upload is in progress. Leaving the page now will cancel the upload." => "ফাইল আপলোড চলমান। এই পৃষ্ঠা পরিত্যাগ করলে আপলোড বাতিল করা হবে।",
|
"File upload is in progress. Leaving the page now will cancel the upload." => "ফাইল আপলোড চলমান। এই পৃষ্ঠা পরিত্যাগ করলে আপলোড বাতিল করা হবে।",
|
||||||
"{new_name} already exists" => "{new_name} টি বিদ্যমান",
|
"{new_name} already exists" => "{new_name} টি বিদ্যমান",
|
||||||
|
|
|
@ -68,6 +68,7 @@ $TRANSLATIONS = array(
|
||||||
"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "Vigane Krüpteerimisrakendi privaatvõti . Palun uuenda oma privaatse võtme parool oma personaasete seadete all taastamaks ligipääsu oma krüpteeritud failidele.",
|
"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "Vigane Krüpteerimisrakendi privaatvõti . Palun uuenda oma privaatse võtme parool oma personaasete seadete all taastamaks ligipääsu oma krüpteeritud failidele.",
|
||||||
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Krüpteering on keelatud, kuid sinu failid on endiselt krüpteeritud. Palun vaata oma personaalseid seadeid oma failide dekrüpteerimiseks.",
|
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "Krüpteering on keelatud, kuid sinu failid on endiselt krüpteeritud. Palun vaata oma personaalseid seadeid oma failide dekrüpteerimiseks.",
|
||||||
"{dirs} and {files}" => "{dirs} ja {files}",
|
"{dirs} and {files}" => "{dirs} ja {files}",
|
||||||
|
"%s could not be renamed as it has been deleted" => "%s ei saa ümber nimetada, kuna see on kustutatud",
|
||||||
"%s could not be renamed" => "%s ümbernimetamine ebaõnnestus",
|
"%s could not be renamed" => "%s ümbernimetamine ebaõnnestus",
|
||||||
"Upload (max. %s)" => "Üleslaadimine (max. %s)",
|
"Upload (max. %s)" => "Üleslaadimine (max. %s)",
|
||||||
"File handling" => "Failide käsitlemine",
|
"File handling" => "Failide käsitlemine",
|
||||||
|
|
|
@ -43,6 +43,7 @@ $TRANSLATIONS = array(
|
||||||
"WebDAV" => "WebDAV",
|
"WebDAV" => "WebDAV",
|
||||||
"New" => "חדש",
|
"New" => "חדש",
|
||||||
"Text file" => "קובץ טקסט",
|
"Text file" => "קובץ טקסט",
|
||||||
|
"New folder" => "תיקייה חדשה",
|
||||||
"Folder" => "תיקייה",
|
"Folder" => "תיקייה",
|
||||||
"From link" => "מקישור",
|
"From link" => "מקישור",
|
||||||
"Nothing in here. Upload something!" => "אין כאן שום דבר. אולי ברצונך להעלות משהו?",
|
"Nothing in here. Upload something!" => "אין כאן שום דבר. אולי ברצונך להעלות משהו?",
|
||||||
|
|
|
@ -11,14 +11,14 @@ $TRANSLATIONS = array(
|
||||||
"The target folder has been moved or deleted." => "A célmappa törlődött, vagy áthelyezésre került.",
|
"The target folder has been moved or deleted." => "A célmappa törlődött, vagy áthelyezésre került.",
|
||||||
"The name %s is already used in the folder %s. Please choose a different name." => "A %s név már létezik a %s mappában. Kérem válasszon másik nevet!",
|
"The name %s is already used in the folder %s. Please choose a different name." => "A %s név már létezik a %s mappában. Kérem válasszon másik nevet!",
|
||||||
"Not a valid source" => "A kiinduló állomány érvénytelen",
|
"Not a valid source" => "A kiinduló állomány érvénytelen",
|
||||||
"Server is not allowed to open URLs, please check the server configuration" => "A kiszolgálón nincs engedélyezve URL-ek megnyitása, kérem ellenőrizze a beállításokat",
|
"Server is not allowed to open URLs, please check the server configuration" => "A kiszolgálón nincs engedélyezve URL-ek megnyitása, kérem ellenőrizze a beállításokat!",
|
||||||
"The file exceeds your quota by %s" => "A fájl meghaladja kvótádat %s-kal",
|
"The file exceeds your quota by %s" => "A fájl ennyivel meghaladja a kvótáját: %s",
|
||||||
"Error while downloading %s to %s" => "Hiba történt miközben %s-t letöltöttük %s-be",
|
"Error while downloading %s to %s" => "Hiba történt miközben %s-t letöltöttük %s-be",
|
||||||
"Error when creating the file" => "Hiba történt az állomány létrehozásakor",
|
"Error when creating the file" => "Hiba történt az állomány létrehozásakor",
|
||||||
"Folder name cannot be empty." => "A mappa neve nem maradhat kitöltetlenül",
|
"Folder name cannot be empty." => "A mappa neve nem maradhat kitöltetlenül",
|
||||||
"Error when creating the folder" => "Hiba történt a mappa létrehozásakor",
|
"Error when creating the folder" => "Hiba történt a mappa létrehozásakor",
|
||||||
"Unable to set upload directory." => "Nem található a mappa, ahova feltölteni szeretne.",
|
"Unable to set upload directory." => "Nem található a mappa, ahova feltölteni szeretne.",
|
||||||
"Invalid Token" => "Hibás mappacím",
|
"Invalid Token" => "Hibás token",
|
||||||
"No file was uploaded. Unknown error" => "Nem történt feltöltés. Ismeretlen hiba",
|
"No file was uploaded. Unknown error" => "Nem történt feltöltés. Ismeretlen hiba",
|
||||||
"There is no error, the file uploaded with success" => "A fájlt sikerült feltölteni",
|
"There is no error, the file uploaded with success" => "A fájlt sikerült feltölteni",
|
||||||
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "A feltöltött fájl mérete meghaladja a php.ini állományban megadott upload_max_filesize paraméter értékét.",
|
"The uploaded file exceeds the upload_max_filesize directive in php.ini: " => "A feltöltött fájl mérete meghaladja a php.ini állományban megadott upload_max_filesize paraméter értékét.",
|
||||||
|
@ -31,13 +31,13 @@ $TRANSLATIONS = array(
|
||||||
"Upload failed. Could not find uploaded file" => "A feltöltés nem sikerült. Nem található a feltöltendő állomány.",
|
"Upload failed. Could not find uploaded file" => "A feltöltés nem sikerült. Nem található a feltöltendő állomány.",
|
||||||
"Upload failed. Could not get file info." => "A feltöltés nem sikerült. Az állományt leíró információk nem érhetők el.",
|
"Upload failed. Could not get file info." => "A feltöltés nem sikerült. Az állományt leíró információk nem érhetők el.",
|
||||||
"Invalid directory." => "Érvénytelen mappa.",
|
"Invalid directory." => "Érvénytelen mappa.",
|
||||||
"Files" => "Fájlok",
|
"Files" => "Fájlkezelő",
|
||||||
"All files" => "Az összes állomány",
|
"All files" => "Az összes állomány",
|
||||||
"Unable to upload {filename} as it is a directory or has 0 bytes" => "A(z) {filename} állomány nem tölthető fel, mert ez vagy egy mappa, vagy pedig 0 bájtból áll.",
|
"Unable to upload {filename} as it is a directory or has 0 bytes" => "A(z) {filename} állomány nem tölthető fel, mert ez vagy egy mappa, vagy pedig 0 bájtból áll.",
|
||||||
"Total file size {size1} exceeds upload limit {size2}" => "A teljes fájlméret: {size1} meghaladja a feltöltési limitet: {size2}",
|
"Total file size {size1} exceeds upload limit {size2}" => "A teljes fájlméret: {size1} meghaladja a feltöltési limitet: {size2}",
|
||||||
"Not enough free space, you are uploading {size1} but only {size2} is left" => "Nincs elég szabad hely. A feltöltés mérete {size1}, de csak ennyi hely van: {size2}.",
|
"Not enough free space, you are uploading {size1} but only {size2} is left" => "Nincs elég szabad hely. A feltöltés mérete {size1}, de csak ennyi hely van: {size2}.",
|
||||||
"Upload cancelled." => "A feltöltést megszakítottuk.",
|
"Upload cancelled." => "A feltöltést megszakítottuk.",
|
||||||
"Could not get result from server." => "A kiszolgálótól nem kapható meg az eredmény.",
|
"Could not get result from server." => "A kiszolgálótól nem kapható meg a művelet eredménye.",
|
||||||
"File upload is in progress. Leaving the page now will cancel the upload." => "Fájlfeltöltés van folyamatban. Az oldal elhagyása megszakítja a feltöltést.",
|
"File upload is in progress. Leaving the page now will cancel the upload." => "Fájlfeltöltés van folyamatban. Az oldal elhagyása megszakítja a feltöltést.",
|
||||||
"URL cannot be empty" => "Az URL-cím nem maradhat kitöltetlenül",
|
"URL cannot be empty" => "Az URL-cím nem maradhat kitöltetlenül",
|
||||||
"{new_name} already exists" => "{new_name} már létezik",
|
"{new_name} already exists" => "{new_name} már létezik",
|
||||||
|
@ -79,7 +79,7 @@ $TRANSLATIONS = array(
|
||||||
"WebDAV" => "WebDAV",
|
"WebDAV" => "WebDAV",
|
||||||
"Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" => "Ezt a címet használja, ha <a href=\"%s\" target=\"_blank\">WebDAV-on keresztül szeretné elérni a fájljait</a>",
|
"Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" => "Ezt a címet használja, ha <a href=\"%s\" target=\"_blank\">WebDAV-on keresztül szeretné elérni a fájljait</a>",
|
||||||
"New" => "Új",
|
"New" => "Új",
|
||||||
"New text file" => "Új szöveges file",
|
"New text file" => "Új szövegfájl",
|
||||||
"Text file" => "Szövegfájl",
|
"Text file" => "Szövegfájl",
|
||||||
"New folder" => "Új mappa",
|
"New folder" => "Új mappa",
|
||||||
"Folder" => "Mappa",
|
"Folder" => "Mappa",
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
$TRANSLATIONS = array(
|
$TRANSLATIONS = array(
|
||||||
|
"Unknown error" => "Ukjend feil",
|
||||||
"Could not move %s - File with this name already exists" => "Klarte ikkje flytta %s – det finst allereie ei fil med dette namnet",
|
"Could not move %s - File with this name already exists" => "Klarte ikkje flytta %s – det finst allereie ei fil med dette namnet",
|
||||||
"Could not move %s" => "Klarte ikkje flytta %s",
|
"Could not move %s" => "Klarte ikkje flytta %s",
|
||||||
"File name cannot be empty." => "Filnamnet kan ikkje vera tomt.",
|
"File name cannot be empty." => "Filnamnet kan ikkje vera tomt.",
|
||||||
|
|
|
@ -12,6 +12,7 @@ $TRANSLATIONS = array(
|
||||||
"The name %s is already used in the folder %s. Please choose a different name." => "O nome %s já está em uso na pasta %s. Por favor escolha um nome diferente.",
|
"The name %s is already used in the folder %s. Please choose a different name." => "O nome %s já está em uso na pasta %s. Por favor escolha um nome diferente.",
|
||||||
"Not a valid source" => "Não é uma fonte válida",
|
"Not a valid source" => "Não é uma fonte válida",
|
||||||
"Server is not allowed to open URLs, please check the server configuration" => "O servidor não consegue abrir URLs, por favor verifique a configuração do servidor",
|
"Server is not allowed to open URLs, please check the server configuration" => "O servidor não consegue abrir URLs, por favor verifique a configuração do servidor",
|
||||||
|
"The file exceeds your quota by %s" => "O ficheiro excede a sua quota por %s",
|
||||||
"Error while downloading %s to %s" => "Erro ao transferir %s para %s",
|
"Error while downloading %s to %s" => "Erro ao transferir %s para %s",
|
||||||
"Error when creating the file" => "Erro ao criar o ficheiro",
|
"Error when creating the file" => "Erro ao criar o ficheiro",
|
||||||
"Folder name cannot be empty." => "O nome da pasta não pode estar vazio.",
|
"Folder name cannot be empty." => "O nome da pasta não pode estar vazio.",
|
||||||
|
@ -68,6 +69,7 @@ $TRANSLATIONS = array(
|
||||||
"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "Chave privada inválida da Aplicação de Encriptação. Por favor atualize a sua senha de chave privada nas definições pessoais, para recuperar o acesso aos seus ficheiros encriptados.",
|
"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." => "Chave privada inválida da Aplicação de Encriptação. Por favor atualize a sua senha de chave privada nas definições pessoais, para recuperar o acesso aos seus ficheiros encriptados.",
|
||||||
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "A encriptação foi desactivada mas os seus ficheiros continuam encriptados. Por favor consulte as suas definições pessoais para desencriptar os ficheiros.",
|
"Encryption was disabled but your files are still encrypted. Please go to your personal settings to decrypt your files." => "A encriptação foi desactivada mas os seus ficheiros continuam encriptados. Por favor consulte as suas definições pessoais para desencriptar os ficheiros.",
|
||||||
"{dirs} and {files}" => "{dirs} e {files}",
|
"{dirs} and {files}" => "{dirs} e {files}",
|
||||||
|
"%s could not be renamed as it has been deleted" => "Não foi possível renomear %s devido a ter sido eliminado",
|
||||||
"%s could not be renamed" => "%s não pode ser renomeada",
|
"%s could not be renamed" => "%s não pode ser renomeada",
|
||||||
"Upload (max. %s)" => "Enviar (max. %s)",
|
"Upload (max. %s)" => "Enviar (max. %s)",
|
||||||
"File handling" => "Manuseamento do ficheiro",
|
"File handling" => "Manuseamento do ficheiro",
|
||||||
|
|
|
@ -12,6 +12,7 @@ $TRANSLATIONS = array(
|
||||||
"The name %s is already used in the folder %s. Please choose a different name." => "%s 已經被使用於資料夾 %s ,請換一個名字",
|
"The name %s is already used in the folder %s. Please choose a different name." => "%s 已經被使用於資料夾 %s ,請換一個名字",
|
||||||
"Not a valid source" => "不是有效的來源",
|
"Not a valid source" => "不是有效的來源",
|
||||||
"Server is not allowed to open URLs, please check the server configuration" => "伺服器上不允許開啓 URL ,請檢查伺服器設定",
|
"Server is not allowed to open URLs, please check the server configuration" => "伺服器上不允許開啓 URL ,請檢查伺服器設定",
|
||||||
|
"The file exceeds your quota by %s" => "這個檔案大小超出配額 %s",
|
||||||
"Error while downloading %s to %s" => "下載 %s 到 %s 失敗",
|
"Error while downloading %s to %s" => "下載 %s 到 %s 失敗",
|
||||||
"Error when creating the file" => "建立檔案失敗",
|
"Error when creating the file" => "建立檔案失敗",
|
||||||
"Folder name cannot be empty." => "資料夾名稱不能留空",
|
"Folder name cannot be empty." => "資料夾名稱不能留空",
|
||||||
|
|
|
@ -13,7 +13,7 @@ use OCA\Encryption;
|
||||||
\OCP\JSON::checkAppEnabled('files_encryption');
|
\OCP\JSON::checkAppEnabled('files_encryption');
|
||||||
\OCP\JSON::callCheck();
|
\OCP\JSON::callCheck();
|
||||||
|
|
||||||
$l = OC_L10N::get('files_encryption');
|
$l = \OC::$server->getL10N('files_encryption');
|
||||||
|
|
||||||
$return = false;
|
$return = false;
|
||||||
// Enable recoveryAdmin
|
// Enable recoveryAdmin
|
||||||
|
|
|
@ -15,7 +15,7 @@ use OCA\Encryption;
|
||||||
\OCP\JSON::checkAppEnabled('files_encryption');
|
\OCP\JSON::checkAppEnabled('files_encryption');
|
||||||
\OCP\JSON::callCheck();
|
\OCP\JSON::callCheck();
|
||||||
|
|
||||||
$l = OC_L10N::get('core');
|
$l = \OC::$server->getL10N('core');
|
||||||
|
|
||||||
$return = false;
|
$return = false;
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,7 @@ use OCA\Encryption;
|
||||||
\OCP\JSON::checkAppEnabled('files_encryption');
|
\OCP\JSON::checkAppEnabled('files_encryption');
|
||||||
\OCP\JSON::callCheck();
|
\OCP\JSON::callCheck();
|
||||||
|
|
||||||
$l = OC_L10N::get('core');
|
$l = \OC::$server->getL10N('core');
|
||||||
|
|
||||||
$return = false;
|
$return = false;
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ if (!isset($_)) { //also provide standalone error page
|
||||||
require_once __DIR__ . '/../../../lib/base.php';
|
require_once __DIR__ . '/../../../lib/base.php';
|
||||||
require_once __DIR__ . '/../lib/crypt.php';
|
require_once __DIR__ . '/../lib/crypt.php';
|
||||||
|
|
||||||
$l = OC_L10N::get('files_encryption');
|
$l = \OC::$server->getL10N('files_encryption');
|
||||||
|
|
||||||
if (isset($_GET['errorCode'])) {
|
if (isset($_GET['errorCode'])) {
|
||||||
$errorCode = $_GET['errorCode'];
|
$errorCode = $_GET['errorCode'];
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
$TRANSLATIONS = array(
|
$TRANSLATIONS = array(
|
||||||
"Encryption" => "সংকেতায়ন"
|
"Encryption" => "সংকেতায়ন",
|
||||||
|
"Change Password" => "কূটশব্দ পরিবর্তন করুন"
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
||||||
|
|
|
@ -30,6 +30,8 @@ $TRANSLATIONS = array(
|
||||||
"New Recovery key password" => "Ny Gendannelsesnøgle kodeord",
|
"New Recovery key password" => "Ny Gendannelsesnøgle kodeord",
|
||||||
"Repeat New Recovery key password" => "Gentag dannelse af ny gendannaleses nøglekode",
|
"Repeat New Recovery key password" => "Gentag dannelse af ny gendannaleses nøglekode",
|
||||||
"Change Password" => "Skift Kodeord",
|
"Change Password" => "Skift Kodeord",
|
||||||
|
"Your private key password no longer matches your log-in password." => "Dit private nøglekodeord stemmer ikke længere overens med dit login-kodeord.",
|
||||||
|
"Set your old private key password to your current log-in password:" => "Sæt dit gamle, private nøglekodeord til at være dit nuværende login-kodeord. ",
|
||||||
" If you don't remember your old password you can ask your administrator to recover your files." => "Hvis du ikke kan huske dit gamle kodeord kan du bede din administrator om at gendanne dine filer.",
|
" If you don't remember your old password you can ask your administrator to recover your files." => "Hvis du ikke kan huske dit gamle kodeord kan du bede din administrator om at gendanne dine filer.",
|
||||||
"Old log-in password" => "Gammelt login kodeord",
|
"Old log-in password" => "Gammelt login kodeord",
|
||||||
"Current log-in password" => "Nuvrende login kodeord",
|
"Current log-in password" => "Nuvrende login kodeord",
|
||||||
|
|
|
@ -30,6 +30,7 @@ $TRANSLATIONS = array(
|
||||||
"New Recovery key password" => "Uus taastevõtme parool",
|
"New Recovery key password" => "Uus taastevõtme parool",
|
||||||
"Repeat New Recovery key password" => "Korda uut taastevõtme parooli",
|
"Repeat New Recovery key password" => "Korda uut taastevõtme parooli",
|
||||||
"Change Password" => "Muuda parooli",
|
"Change Password" => "Muuda parooli",
|
||||||
|
"Your private key password no longer matches your log-in password." => "Sinu provaatvõtme parool ei kattu enam sinu sisselogimise parooliga.",
|
||||||
" If you don't remember your old password you can ask your administrator to recover your files." => "Kui sa ei mäleta oma vana parooli, siis palu oma süsteemihalduril taastada ligipääs failidele.",
|
" If you don't remember your old password you can ask your administrator to recover your files." => "Kui sa ei mäleta oma vana parooli, siis palu oma süsteemihalduril taastada ligipääs failidele.",
|
||||||
"Old log-in password" => "Vana sisselogimise parool",
|
"Old log-in password" => "Vana sisselogimise parool",
|
||||||
"Current log-in password" => "Praegune sisselogimise parool",
|
"Current log-in password" => "Praegune sisselogimise parool",
|
||||||
|
|
|
@ -117,7 +117,7 @@ class Session {
|
||||||
*/
|
*/
|
||||||
public function setPrivateKey($privateKey) {
|
public function setPrivateKey($privateKey) {
|
||||||
|
|
||||||
\OC::$session->set('privateKey', $privateKey);
|
\OC::$server->getSession()->set('privateKey', $privateKey);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
@ -140,7 +140,7 @@ class Session {
|
||||||
*/
|
*/
|
||||||
public function setInitialized($init) {
|
public function setInitialized($init) {
|
||||||
|
|
||||||
\OC::$session->set('encryptionInitialized', $init);
|
\OC::$server->getSession()->set('encryptionInitialized', $init);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
@ -150,8 +150,8 @@ class Session {
|
||||||
* remove encryption keys and init status from session
|
* remove encryption keys and init status from session
|
||||||
*/
|
*/
|
||||||
public function closeSession() {
|
public function closeSession() {
|
||||||
\OC::$session->remove('encryptionInitialized');
|
\OC::$server->getSession()->remove('encryptionInitialized');
|
||||||
\OC::$session->remove('privateKey');
|
\OC::$server->getSession()->remove('privateKey');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -162,8 +162,8 @@ class Session {
|
||||||
* @note this doesn not indicate of the init was successful, we just remeber the try!
|
* @note this doesn not indicate of the init was successful, we just remeber the try!
|
||||||
*/
|
*/
|
||||||
public function getInitialized() {
|
public function getInitialized() {
|
||||||
if (!is_null(\OC::$session->get('encryptionInitialized'))) {
|
if (!is_null(\OC::$server->getSession()->get('encryptionInitialized'))) {
|
||||||
return \OC::$session->get('encryptionInitialized');
|
return \OC::$server->getSession()->get('encryptionInitialized');
|
||||||
} else {
|
} else {
|
||||||
return self::NOT_INITIALIZED;
|
return self::NOT_INITIALIZED;
|
||||||
}
|
}
|
||||||
|
@ -179,8 +179,8 @@ class Session {
|
||||||
if (\OCA\Encryption\Helper::isPublicAccess()) {
|
if (\OCA\Encryption\Helper::isPublicAccess()) {
|
||||||
return $this->getPublicSharePrivateKey();
|
return $this->getPublicSharePrivateKey();
|
||||||
} else {
|
} else {
|
||||||
if (!is_null(\OC::$session->get('privateKey'))) {
|
if (!is_null(\OC::$server->getSession()->get('privateKey'))) {
|
||||||
return \OC::$session->get('privateKey');
|
return \OC::$server->getSession()->get('privateKey');
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -194,7 +194,7 @@ class Session {
|
||||||
*/
|
*/
|
||||||
public function setPublicSharePrivateKey($privateKey) {
|
public function setPublicSharePrivateKey($privateKey) {
|
||||||
|
|
||||||
\OC::$session->set('publicSharePrivateKey', $privateKey);
|
\OC::$server->getSession()->set('publicSharePrivateKey', $privateKey);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
@ -207,8 +207,8 @@ class Session {
|
||||||
*/
|
*/
|
||||||
public function getPublicSharePrivateKey() {
|
public function getPublicSharePrivateKey() {
|
||||||
|
|
||||||
if (!is_null(\OC::$session->get('publicSharePrivateKey'))) {
|
if (!is_null(\OC::$server->getSession()->get('publicSharePrivateKey'))) {
|
||||||
return \OC::$session->get('publicSharePrivateKey');
|
return \OC::$server->getSession()->get('publicSharePrivateKey');
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
Copyright 2014 Igor Vaynberg
|
||||||
|
|
||||||
|
Version: @@ver@@ Timestamp: @@timestamp@@
|
||||||
|
|
||||||
|
This software is licensed under the Apache License, Version 2.0 (the "Apache License") or the GNU
|
||||||
|
General Public License version 2 (the "GPL License"). You may choose either license to govern your
|
||||||
|
use of this software only upon the condition that you accept all of the terms of either the Apache
|
||||||
|
License or the GPL License.
|
||||||
|
|
||||||
|
You may obtain a copy of the Apache License and the GPL License at:
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
http://www.gnu.org/licenses/gpl-2.0.html
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software distributed under the Apache License
|
||||||
|
or the GPL Licesnse is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
|
||||||
|
either express or implied. See the Apache License and the GPL License for the specific language governing
|
||||||
|
permissions and limitations under the Apache License and the GPL License.
|
|
@ -0,0 +1,90 @@
|
||||||
|
Select2
|
||||||
|
=======
|
||||||
|
|
||||||
|
Select2 is a jQuery-based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.
|
||||||
|
|
||||||
|
To get started, checkout examples and documentation at http://ivaynberg.github.com/select2
|
||||||
|
|
||||||
|
Use cases
|
||||||
|
---------
|
||||||
|
|
||||||
|
* Enhancing native selects with search.
|
||||||
|
* Enhancing native selects with a better multi-select interface.
|
||||||
|
* Loading data from JavaScript: easily load items via ajax and have them searchable.
|
||||||
|
* Nesting optgroups: native selects only support one level of nested. Select2 does not have this restriction.
|
||||||
|
* Tagging: ability to add new items on the fly.
|
||||||
|
* Working with large, remote datasets: ability to partially load a dataset based on the search term.
|
||||||
|
* Paging of large datasets: easy support for loading more pages when the results are scrolled to the end.
|
||||||
|
* Templating: support for custom rendering of results and selections.
|
||||||
|
|
||||||
|
Browser compatibility
|
||||||
|
---------------------
|
||||||
|
* IE 8+
|
||||||
|
* Chrome 8+
|
||||||
|
* Firefox 10+
|
||||||
|
* Safari 3+
|
||||||
|
* Opera 10.6+
|
||||||
|
|
||||||
|
Usage
|
||||||
|
-----
|
||||||
|
You can source Select2 directly from a [CDN like JSDliver](http://www.jsdelivr.com/#!select2), [download it from this GitHub repo](https://github.com/ivaynberg/select2/tags), or use one of the integrations below.
|
||||||
|
|
||||||
|
Integrations
|
||||||
|
------------
|
||||||
|
|
||||||
|
* [Wicket-Select2](https://github.com/ivaynberg/wicket-select2) (Java / [Apache Wicket](http://wicket.apache.org))
|
||||||
|
* [select2-rails](https://github.com/argerim/select2-rails) (Ruby on Rails)
|
||||||
|
* [AngularUI](http://angular-ui.github.com/#directives-select2) ([AngularJS](angularjs.org))
|
||||||
|
* [Django](https://github.com/applegrew/django-select2)
|
||||||
|
* [Symfony](https://github.com/19Gerhard85/sfSelect2WidgetsPlugin)
|
||||||
|
* [Symfony2](https://github.com/avocode/FormExtensions)
|
||||||
|
* [Bootstrap 2](https://github.com/t0m/select2-bootstrap-css) and [Bootstrap 3](https://github.com/t0m/select2-bootstrap-css/tree/bootstrap3) (CSS skins)
|
||||||
|
* [Meteor](https://github.com/nate-strauser/meteor-select2) (modern reactive JavaScript framework; + [Bootstrap 3 skin](https://github.com/esperadomedia/meteor-select2-bootstrap3-css/))
|
||||||
|
* [Yii 2.x](http://demos.krajee.com/widgets#select2)
|
||||||
|
* [Yii 1.x](https://github.com/tonybolzan/yii-select2)
|
||||||
|
|
||||||
|
Internationalization (i18n)
|
||||||
|
---------------------------
|
||||||
|
|
||||||
|
Select2 supports multiple languages by simply including the right
|
||||||
|
language JS file (`select2_locale_it.js`, `select2_locale_nl.js`, etc.).
|
||||||
|
|
||||||
|
Missing a language? Just copy `select2_locale_en.js.template`, translate
|
||||||
|
it, and make a pull request back to Select2 here on GitHub.
|
||||||
|
|
||||||
|
Bug tracker
|
||||||
|
-----------
|
||||||
|
|
||||||
|
Have a bug? Please create an issue here on GitHub!
|
||||||
|
|
||||||
|
https://github.com/ivaynberg/select2/issues
|
||||||
|
|
||||||
|
Mailing list
|
||||||
|
------------
|
||||||
|
|
||||||
|
Have a question? Ask on our mailing list!
|
||||||
|
|
||||||
|
select2@googlegroups.com
|
||||||
|
|
||||||
|
https://groups.google.com/d/forum/select2
|
||||||
|
|
||||||
|
|
||||||
|
Copyright and license
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
Copyright 2012 Igor Vaynberg
|
||||||
|
|
||||||
|
This software is licensed under the Apache License, Version 2.0 (the "Apache License") or the GNU
|
||||||
|
General Public License version 2 (the "GPL License"). You may choose either license to govern your
|
||||||
|
use of this software only upon the condition that you accept all of the terms of either the Apache
|
||||||
|
License or the GPL License.
|
||||||
|
|
||||||
|
You may obtain a copy of the Apache License and the GPL License in the LICENSE file, or at:
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
http://www.gnu.org/licenses/gpl-2.0.html
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software distributed under the Apache License
|
||||||
|
or the GPL License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
|
||||||
|
either express or implied. See the Apache License and the GPL License for the specific language governing
|
||||||
|
permissions and limitations under the Apache License and the GPL License.
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"name": "select2",
|
||||||
|
"version": "3.4.8",
|
||||||
|
"main": ["select2.js", "select2.css", "select2.png", "select2x2.png", "select2-spinner.gif"],
|
||||||
|
"dependencies": {
|
||||||
|
"jquery": ">= 1.7.1"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,66 @@
|
||||||
|
{
|
||||||
|
"name": "select2",
|
||||||
|
"repo": "ivaynberg/select2",
|
||||||
|
"description": "Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.",
|
||||||
|
"version": "3.4.8",
|
||||||
|
"demo": "http://ivaynberg.github.io/select2/",
|
||||||
|
"keywords": [
|
||||||
|
"jquery"
|
||||||
|
],
|
||||||
|
"main": "select2.js",
|
||||||
|
"styles": [
|
||||||
|
"select2.css",
|
||||||
|
"select2-bootstrap.css"
|
||||||
|
],
|
||||||
|
"scripts": [
|
||||||
|
"select2.js",
|
||||||
|
"select2_locale_ar.js",
|
||||||
|
"select2_locale_bg.js",
|
||||||
|
"select2_locale_ca.js",
|
||||||
|
"select2_locale_cs.js",
|
||||||
|
"select2_locale_da.js",
|
||||||
|
"select2_locale_de.js",
|
||||||
|
"select2_locale_el.js",
|
||||||
|
"select2_locale_es.js",
|
||||||
|
"select2_locale_et.js",
|
||||||
|
"select2_locale_eu.js",
|
||||||
|
"select2_locale_fa.js",
|
||||||
|
"select2_locale_fi.js",
|
||||||
|
"select2_locale_fr.js",
|
||||||
|
"select2_locale_gl.js",
|
||||||
|
"select2_locale_he.js",
|
||||||
|
"select2_locale_hr.js",
|
||||||
|
"select2_locale_hu.js",
|
||||||
|
"select2_locale_id.js",
|
||||||
|
"select2_locale_is.js",
|
||||||
|
"select2_locale_it.js",
|
||||||
|
"select2_locale_ja.js",
|
||||||
|
"select2_locale_ka.js",
|
||||||
|
"select2_locale_ko.js",
|
||||||
|
"select2_locale_lt.js",
|
||||||
|
"select2_locale_lv.js",
|
||||||
|
"select2_locale_mk.js",
|
||||||
|
"select2_locale_ms.js",
|
||||||
|
"select2_locale_nl.js",
|
||||||
|
"select2_locale_no.js",
|
||||||
|
"select2_locale_pl.js",
|
||||||
|
"select2_locale_pt-BR.js",
|
||||||
|
"select2_locale_pt-PT.js",
|
||||||
|
"select2_locale_ro.js",
|
||||||
|
"select2_locale_ru.js",
|
||||||
|
"select2_locale_sk.js",
|
||||||
|
"select2_locale_sv.js",
|
||||||
|
"select2_locale_th.js",
|
||||||
|
"select2_locale_tr.js",
|
||||||
|
"select2_locale_uk.js",
|
||||||
|
"select2_locale_vi.js",
|
||||||
|
"select2_locale_zh-CN.js",
|
||||||
|
"select2_locale_zh-TW.js"
|
||||||
|
],
|
||||||
|
"images": [
|
||||||
|
"select2-spinner.gif",
|
||||||
|
"select2.png",
|
||||||
|
"select2x2.png"
|
||||||
|
],
|
||||||
|
"license": "MIT"
|
||||||
|
}
|
|
@ -0,0 +1,29 @@
|
||||||
|
{
|
||||||
|
"name":
|
||||||
|
"ivaynberg/select2",
|
||||||
|
"description": "Select2 is a jQuery based replacement for select boxes.",
|
||||||
|
"version": "3.4.8",
|
||||||
|
"type": "component",
|
||||||
|
"homepage": "http://ivaynberg.github.io/select2/",
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"require": {
|
||||||
|
"robloach/component-installer": "*",
|
||||||
|
"components/jquery": ">=1.7.1"
|
||||||
|
},
|
||||||
|
"extra": {
|
||||||
|
"component": {
|
||||||
|
"scripts": [
|
||||||
|
"select2.js"
|
||||||
|
],
|
||||||
|
"files": [
|
||||||
|
"select2.js",
|
||||||
|
"select2_locale_*.js",
|
||||||
|
"select2.css",
|
||||||
|
"select2-bootstrap.css",
|
||||||
|
"select2-spinner.gif",
|
||||||
|
"select2.png",
|
||||||
|
"select2x2.png"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,20 @@
|
||||||
|
{
|
||||||
|
"name" : "Select2",
|
||||||
|
"description": "Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.",
|
||||||
|
"homepage": "http://ivaynberg.github.io/select2",
|
||||||
|
"author": "Igor Vaynberg",
|
||||||
|
"repository": {"type": "git", "url": "git://github.com/ivaynberg/select2.git"},
|
||||||
|
"main": "select2.js",
|
||||||
|
"version": "3.4.8",
|
||||||
|
"jspm": {
|
||||||
|
"main": "select2",
|
||||||
|
"files": ["select2.js", "select2.png", "select2.css", "select2-spinner.gif"],
|
||||||
|
"shim": {
|
||||||
|
"select2": {
|
||||||
|
"imports": ["jquery", "./select2.css!"],
|
||||||
|
"exports": "$"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"buildConfig": { "uglify": true }
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,79 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
echo -n "Enter the version for this release: "
|
||||||
|
|
||||||
|
read ver
|
||||||
|
|
||||||
|
if [ ! $ver ]; then
|
||||||
|
echo "Invalid version."
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
name="select2"
|
||||||
|
js="$name.js"
|
||||||
|
mini="$name.min.js"
|
||||||
|
css="$name.css"
|
||||||
|
release="$name-$ver"
|
||||||
|
tag="$ver"
|
||||||
|
branch="build-$ver"
|
||||||
|
curbranch=`git branch | grep "*" | sed "s/* //"`
|
||||||
|
timestamp=$(date)
|
||||||
|
tokens="s/@@ver@@/$ver/g;s/\@@timestamp@@/$timestamp/g"
|
||||||
|
remote="github"
|
||||||
|
|
||||||
|
echo "Pulling from origin"
|
||||||
|
|
||||||
|
git pull
|
||||||
|
|
||||||
|
echo "Updating Version Identifiers"
|
||||||
|
|
||||||
|
sed -E -e "s/\"version\": \"([0-9\.]+)\",/\"version\": \"$ver\",/g" -i -- bower.json select2.jquery.json component.json composer.json package.json
|
||||||
|
|
||||||
|
git add bower.json
|
||||||
|
git add select2.jquery.json
|
||||||
|
git add component.json
|
||||||
|
git add composer.json
|
||||||
|
git add package.json
|
||||||
|
|
||||||
|
git commit -m "modified version identifiers in descriptors for release $ver"
|
||||||
|
git push
|
||||||
|
|
||||||
|
git branch "$branch"
|
||||||
|
git checkout "$branch"
|
||||||
|
|
||||||
|
echo "Tokenizing..."
|
||||||
|
|
||||||
|
find . -name "$js" | xargs -I{} sed -e "$tokens" -i -- {}
|
||||||
|
find . -name "$css" | xargs -I{} sed -e "$tokens" -i -- {}
|
||||||
|
|
||||||
|
sed -e "s/latest/$ver/g" -i -- bower.json
|
||||||
|
|
||||||
|
git add "$js"
|
||||||
|
git add "$css"
|
||||||
|
|
||||||
|
echo "Minifying..."
|
||||||
|
|
||||||
|
echo "/*" > "$mini"
|
||||||
|
cat LICENSE | sed "$tokens" >> "$mini"
|
||||||
|
echo "*/" >> "$mini"
|
||||||
|
|
||||||
|
curl -s \
|
||||||
|
--data-urlencode "js_code@$js" \
|
||||||
|
http://marijnhaverbeke.nl/uglifyjs \
|
||||||
|
>> "$mini"
|
||||||
|
|
||||||
|
git add "$mini"
|
||||||
|
|
||||||
|
git commit -m "release $ver"
|
||||||
|
|
||||||
|
echo "Tagging..."
|
||||||
|
git tag -a "$tag" -m "tagged version $ver"
|
||||||
|
git push "$remote" --tags
|
||||||
|
|
||||||
|
echo "Cleaning Up..."
|
||||||
|
|
||||||
|
git checkout "$curbranch"
|
||||||
|
git branch -D "$branch"
|
||||||
|
|
||||||
|
echo "Done"
|
|
@ -0,0 +1,87 @@
|
||||||
|
.form-control .select2-choice {
|
||||||
|
border: 0;
|
||||||
|
border-radius: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-control .select2-choice .select2-arrow {
|
||||||
|
border-radius: 0 2px 2px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-control.select2-container {
|
||||||
|
height: auto !important;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-control.select2-container.select2-dropdown-open {
|
||||||
|
border-color: #5897FB;
|
||||||
|
border-radius: 3px 3px 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-control .select2-container.select2-dropdown-open .select2-choices {
|
||||||
|
border-radius: 3px 3px 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-control.select2-container .select2-choices {
|
||||||
|
border: 0 !important;
|
||||||
|
border-radius: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-group.warning .select2-container .select2-choice,
|
||||||
|
.control-group.warning .select2-container .select2-choices,
|
||||||
|
.control-group.warning .select2-container-active .select2-choice,
|
||||||
|
.control-group.warning .select2-container-active .select2-choices,
|
||||||
|
.control-group.warning .select2-dropdown-open.select2-drop-above .select2-choice,
|
||||||
|
.control-group.warning .select2-dropdown-open.select2-drop-above .select2-choices,
|
||||||
|
.control-group.warning .select2-container-multi.select2-container-active .select2-choices {
|
||||||
|
border: 1px solid #C09853 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-group.warning .select2-container .select2-choice div {
|
||||||
|
border-left: 1px solid #C09853 !important;
|
||||||
|
background: #FCF8E3 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-group.error .select2-container .select2-choice,
|
||||||
|
.control-group.error .select2-container .select2-choices,
|
||||||
|
.control-group.error .select2-container-active .select2-choice,
|
||||||
|
.control-group.error .select2-container-active .select2-choices,
|
||||||
|
.control-group.error .select2-dropdown-open.select2-drop-above .select2-choice,
|
||||||
|
.control-group.error .select2-dropdown-open.select2-drop-above .select2-choices,
|
||||||
|
.control-group.error .select2-container-multi.select2-container-active .select2-choices {
|
||||||
|
border: 1px solid #B94A48 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-group.error .select2-container .select2-choice div {
|
||||||
|
border-left: 1px solid #B94A48 !important;
|
||||||
|
background: #F2DEDE !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-group.info .select2-container .select2-choice,
|
||||||
|
.control-group.info .select2-container .select2-choices,
|
||||||
|
.control-group.info .select2-container-active .select2-choice,
|
||||||
|
.control-group.info .select2-container-active .select2-choices,
|
||||||
|
.control-group.info .select2-dropdown-open.select2-drop-above .select2-choice,
|
||||||
|
.control-group.info .select2-dropdown-open.select2-drop-above .select2-choices,
|
||||||
|
.control-group.info .select2-container-multi.select2-container-active .select2-choices {
|
||||||
|
border: 1px solid #3A87AD !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-group.info .select2-container .select2-choice div {
|
||||||
|
border-left: 1px solid #3A87AD !important;
|
||||||
|
background: #D9EDF7 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-group.success .select2-container .select2-choice,
|
||||||
|
.control-group.success .select2-container .select2-choices,
|
||||||
|
.control-group.success .select2-container-active .select2-choice,
|
||||||
|
.control-group.success .select2-container-active .select2-choices,
|
||||||
|
.control-group.success .select2-dropdown-open.select2-drop-above .select2-choice,
|
||||||
|
.control-group.success .select2-dropdown-open.select2-drop-above .select2-choices,
|
||||||
|
.control-group.success .select2-container-multi.select2-container-active .select2-choices {
|
||||||
|
border: 1px solid #468847 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.control-group.success .select2-container .select2-choice div {
|
||||||
|
border-left: 1px solid #468847 !important;
|
||||||
|
background: #DFF0D8 !important;
|
||||||
|
}
|
Binary file not shown.
After Width: | Height: | Size: 1.8 KiB |
|
@ -0,0 +1,646 @@
|
||||||
|
/*
|
||||||
|
Version: 3.4.8 Timestamp: Thu May 1 09:50:32 EDT 2014
|
||||||
|
*/
|
||||||
|
.select2-container {
|
||||||
|
margin: 0;
|
||||||
|
position: relative;
|
||||||
|
display: inline-block;
|
||||||
|
/* inline-block for ie7 */
|
||||||
|
zoom: 1;
|
||||||
|
*display: inline;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container,
|
||||||
|
.select2-drop,
|
||||||
|
.select2-search,
|
||||||
|
.select2-search input {
|
||||||
|
/*
|
||||||
|
Force border-box so that % widths fit the parent
|
||||||
|
container without overlap because of margin/padding.
|
||||||
|
More Info : http://www.quirksmode.org/css/box.html
|
||||||
|
*/
|
||||||
|
-webkit-box-sizing: border-box; /* webkit */
|
||||||
|
-moz-box-sizing: border-box; /* firefox */
|
||||||
|
box-sizing: border-box; /* css3 */
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container .select2-choice {
|
||||||
|
display: block;
|
||||||
|
height: 26px;
|
||||||
|
padding: 0 0 0 8px;
|
||||||
|
overflow: hidden;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
white-space: nowrap;
|
||||||
|
line-height: 26px;
|
||||||
|
color: #444;
|
||||||
|
text-decoration: none;
|
||||||
|
|
||||||
|
border-radius: 4px;
|
||||||
|
|
||||||
|
background-clip: padding-box;
|
||||||
|
|
||||||
|
-webkit-touch-callout: none;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
|
||||||
|
background-color: #fff;
|
||||||
|
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(0.5, #fff));
|
||||||
|
background-image: -webkit-linear-gradient(center bottom, #eee 0%, #fff 50%);
|
||||||
|
background-image: -moz-linear-gradient(center bottom, #eee 0%, #fff 50%);
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ffffff', endColorstr = '#eeeeee', GradientType = 0);
|
||||||
|
background-image: linear-gradient(to top, #eee 0%, #fff 50%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container.select2-drop-above .select2-choice {
|
||||||
|
border-bottom-color: #aaa;
|
||||||
|
|
||||||
|
border-radius: 0 0 4px 4px;
|
||||||
|
|
||||||
|
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(0.9, #fff));
|
||||||
|
background-image: -webkit-linear-gradient(center bottom, #eee 0%, #fff 90%);
|
||||||
|
background-image: -moz-linear-gradient(center bottom, #eee 0%, #fff 90%);
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0);
|
||||||
|
background-image: linear-gradient(to bottom, #eee 0%, #fff 90%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container.select2-allowclear .select2-choice .select2-chosen {
|
||||||
|
margin-right: 42px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container .select2-choice > .select2-chosen {
|
||||||
|
margin-right: 26px;
|
||||||
|
display: block;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
white-space: nowrap;
|
||||||
|
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
float: none;
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container .select2-choice abbr {
|
||||||
|
display: none;
|
||||||
|
width: 12px;
|
||||||
|
height: 12px;
|
||||||
|
position: absolute;
|
||||||
|
right: 24px;
|
||||||
|
top: 8px;
|
||||||
|
|
||||||
|
font-size: 1px;
|
||||||
|
text-decoration: none;
|
||||||
|
|
||||||
|
border: 0;
|
||||||
|
background: url('select2.png') right top no-repeat;
|
||||||
|
cursor: pointer;
|
||||||
|
outline: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container.select2-allowclear .select2-choice abbr {
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container .select2-choice abbr:hover {
|
||||||
|
background-position: right -11px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-drop-mask {
|
||||||
|
border: 0;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
position: fixed;
|
||||||
|
left: 0;
|
||||||
|
top: 0;
|
||||||
|
min-height: 100%;
|
||||||
|
min-width: 100%;
|
||||||
|
height: auto;
|
||||||
|
width: auto;
|
||||||
|
opacity: 0;
|
||||||
|
z-index: 9998;
|
||||||
|
/* styles required for IE to work */
|
||||||
|
background-color: #fff;
|
||||||
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-drop {
|
||||||
|
width: 100%;
|
||||||
|
margin-top: -1px;
|
||||||
|
position: absolute;
|
||||||
|
z-index: 9999;
|
||||||
|
top: 100%;
|
||||||
|
|
||||||
|
background: #fff;
|
||||||
|
color: #000;
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
border-top: 0;
|
||||||
|
|
||||||
|
border-radius: 0 0 4px 4px;
|
||||||
|
|
||||||
|
-webkit-box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
|
||||||
|
box-shadow: 0 4px 5px rgba(0, 0, 0, .15);
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-drop.select2-drop-above {
|
||||||
|
margin-top: 1px;
|
||||||
|
border-top: 1px solid #aaa;
|
||||||
|
border-bottom: 0;
|
||||||
|
|
||||||
|
border-radius: 4px 4px 0 0;
|
||||||
|
|
||||||
|
-webkit-box-shadow: 0 -4px 5px rgba(0, 0, 0, .15);
|
||||||
|
box-shadow: 0 -4px 5px rgba(0, 0, 0, .15);
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-drop-active {
|
||||||
|
border: 1px solid #5897fb;
|
||||||
|
border-top: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-drop.select2-drop-above.select2-drop-active {
|
||||||
|
border-top: 1px solid #5897fb;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-drop-auto-width {
|
||||||
|
border-top: 1px solid #aaa;
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-drop-auto-width .select2-search {
|
||||||
|
padding-top: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container .select2-choice .select2-arrow {
|
||||||
|
display: inline-block;
|
||||||
|
width: 18px;
|
||||||
|
height: 100%;
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
|
||||||
|
border-left: 1px solid #aaa;
|
||||||
|
border-radius: 0 4px 4px 0;
|
||||||
|
|
||||||
|
background-clip: padding-box;
|
||||||
|
|
||||||
|
background: #ccc;
|
||||||
|
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ccc), color-stop(0.6, #eee));
|
||||||
|
background-image: -webkit-linear-gradient(center bottom, #ccc 0%, #eee 60%);
|
||||||
|
background-image: -moz-linear-gradient(center bottom, #ccc 0%, #eee 60%);
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#eeeeee', endColorstr = '#cccccc', GradientType = 0);
|
||||||
|
background-image: linear-gradient(to top, #ccc 0%, #eee 60%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container .select2-choice .select2-arrow b {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
background: url('select2.png') no-repeat 0 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-search {
|
||||||
|
display: inline-block;
|
||||||
|
width: 100%;
|
||||||
|
min-height: 26px;
|
||||||
|
margin: 0;
|
||||||
|
padding-left: 4px;
|
||||||
|
padding-right: 4px;
|
||||||
|
|
||||||
|
position: relative;
|
||||||
|
z-index: 10000;
|
||||||
|
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-search input {
|
||||||
|
width: 100%;
|
||||||
|
height: auto !important;
|
||||||
|
min-height: 26px;
|
||||||
|
padding: 4px 20px 4px 5px;
|
||||||
|
margin: 0;
|
||||||
|
|
||||||
|
outline: 0;
|
||||||
|
font-family: sans-serif;
|
||||||
|
font-size: 1em;
|
||||||
|
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
border-radius: 0;
|
||||||
|
|
||||||
|
-webkit-box-shadow: none;
|
||||||
|
box-shadow: none;
|
||||||
|
|
||||||
|
background: #fff url('select2.png') no-repeat 100% -22px;
|
||||||
|
background: url('select2.png') no-repeat 100% -22px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee));
|
||||||
|
background: url('select2.png') no-repeat 100% -22px, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%);
|
||||||
|
background: url('select2.png') no-repeat 100% -22px, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%);
|
||||||
|
background: url('select2.png') no-repeat 100% -22px, linear-gradient(to bottom, #fff 85%, #eee 99%) 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-drop.select2-drop-above .select2-search input {
|
||||||
|
margin-top: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-search input.select2-active {
|
||||||
|
background: #fff url('select2-spinner.gif') no-repeat 100%;
|
||||||
|
background: url('select2-spinner.gif') no-repeat 100%, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee));
|
||||||
|
background: url('select2-spinner.gif') no-repeat 100%, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%);
|
||||||
|
background: url('select2-spinner.gif') no-repeat 100%, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%);
|
||||||
|
background: url('select2-spinner.gif') no-repeat 100%, linear-gradient(to bottom, #fff 85%, #eee 99%) 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container-active .select2-choice,
|
||||||
|
.select2-container-active .select2-choices {
|
||||||
|
border: 1px solid #5897fb;
|
||||||
|
outline: none;
|
||||||
|
|
||||||
|
-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3);
|
||||||
|
box-shadow: 0 0 5px rgba(0, 0, 0, .3);
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-dropdown-open .select2-choice {
|
||||||
|
border-bottom-color: transparent;
|
||||||
|
-webkit-box-shadow: 0 1px 0 #fff inset;
|
||||||
|
box-shadow: 0 1px 0 #fff inset;
|
||||||
|
|
||||||
|
border-bottom-left-radius: 0;
|
||||||
|
border-bottom-right-radius: 0;
|
||||||
|
|
||||||
|
background-color: #eee;
|
||||||
|
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #fff), color-stop(0.5, #eee));
|
||||||
|
background-image: -webkit-linear-gradient(center bottom, #fff 0%, #eee 50%);
|
||||||
|
background-image: -moz-linear-gradient(center bottom, #fff 0%, #eee 50%);
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0);
|
||||||
|
background-image: linear-gradient(to top, #fff 0%, #eee 50%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-dropdown-open.select2-drop-above .select2-choice,
|
||||||
|
.select2-dropdown-open.select2-drop-above .select2-choices {
|
||||||
|
border: 1px solid #5897fb;
|
||||||
|
border-top-color: transparent;
|
||||||
|
|
||||||
|
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(0.5, #eee));
|
||||||
|
background-image: -webkit-linear-gradient(center top, #fff 0%, #eee 50%);
|
||||||
|
background-image: -moz-linear-gradient(center top, #fff 0%, #eee 50%);
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0);
|
||||||
|
background-image: linear-gradient(to bottom, #fff 0%, #eee 50%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-dropdown-open .select2-choice .select2-arrow {
|
||||||
|
background: transparent;
|
||||||
|
border-left: none;
|
||||||
|
filter: none;
|
||||||
|
}
|
||||||
|
.select2-dropdown-open .select2-choice .select2-arrow b {
|
||||||
|
background-position: -18px 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-hidden-accessible {
|
||||||
|
border: 0;
|
||||||
|
clip: rect(0 0 0 0);
|
||||||
|
height: 1px;
|
||||||
|
margin: -1px;
|
||||||
|
overflow: hidden;
|
||||||
|
padding: 0;
|
||||||
|
position: absolute;
|
||||||
|
width: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* results */
|
||||||
|
.select2-results {
|
||||||
|
max-height: 200px;
|
||||||
|
padding: 0 0 0 4px;
|
||||||
|
margin: 4px 4px 4px 0;
|
||||||
|
position: relative;
|
||||||
|
overflow-x: hidden;
|
||||||
|
overflow-y: auto;
|
||||||
|
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-results ul.select2-result-sub {
|
||||||
|
margin: 0;
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-results li {
|
||||||
|
list-style: none;
|
||||||
|
display: list-item;
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-results li.select2-result-with-children > .select2-result-label {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-results .select2-result-label {
|
||||||
|
padding: 3px 7px 4px;
|
||||||
|
margin: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
min-height: 1em;
|
||||||
|
|
||||||
|
-webkit-touch-callout: none;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-results-dept-1 .select2-result-label { padding-left: 20px }
|
||||||
|
.select2-results-dept-2 .select2-result-label { padding-left: 40px }
|
||||||
|
.select2-results-dept-3 .select2-result-label { padding-left: 60px }
|
||||||
|
.select2-results-dept-4 .select2-result-label { padding-left: 80px }
|
||||||
|
.select2-results-dept-5 .select2-result-label { padding-left: 100px }
|
||||||
|
.select2-results-dept-6 .select2-result-label { padding-left: 110px }
|
||||||
|
.select2-results-dept-7 .select2-result-label { padding-left: 120px }
|
||||||
|
|
||||||
|
.select2-results .select2-highlighted {
|
||||||
|
background: #3875d7;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-results li em {
|
||||||
|
background: #feffde;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-results .select2-highlighted em {
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-results .select2-highlighted ul {
|
||||||
|
background: #fff;
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.select2-results .select2-no-results,
|
||||||
|
.select2-results .select2-searching,
|
||||||
|
.select2-results .select2-selection-limit {
|
||||||
|
background: #f4f4f4;
|
||||||
|
display: list-item;
|
||||||
|
padding-left: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
disabled look for disabled choices in the results dropdown
|
||||||
|
*/
|
||||||
|
.select2-results .select2-disabled.select2-highlighted {
|
||||||
|
color: #666;
|
||||||
|
background: #f4f4f4;
|
||||||
|
display: list-item;
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
.select2-results .select2-disabled {
|
||||||
|
background: #f4f4f4;
|
||||||
|
display: list-item;
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-results .select2-selected {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-more-results.select2-active {
|
||||||
|
background: #f4f4f4 url('select2-spinner.gif') no-repeat 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-more-results {
|
||||||
|
background: #f4f4f4;
|
||||||
|
display: list-item;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* disabled styles */
|
||||||
|
|
||||||
|
.select2-container.select2-container-disabled .select2-choice {
|
||||||
|
background-color: #f4f4f4;
|
||||||
|
background-image: none;
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container.select2-container-disabled .select2-choice .select2-arrow {
|
||||||
|
background-color: #f4f4f4;
|
||||||
|
background-image: none;
|
||||||
|
border-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container.select2-container-disabled .select2-choice abbr {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* multiselect */
|
||||||
|
|
||||||
|
.select2-container-multi .select2-choices {
|
||||||
|
height: auto !important;
|
||||||
|
height: 1%;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
cursor: text;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
background-color: #fff;
|
||||||
|
background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(1%, #eee), color-stop(15%, #fff));
|
||||||
|
background-image: -webkit-linear-gradient(top, #eee 1%, #fff 15%);
|
||||||
|
background-image: -moz-linear-gradient(top, #eee 1%, #fff 15%);
|
||||||
|
background-image: linear-gradient(to bottom, #eee 1%, #fff 15%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-locked {
|
||||||
|
padding: 3px 5px 3px 5px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container-multi .select2-choices {
|
||||||
|
min-height: 26px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container-multi.select2-container-active .select2-choices {
|
||||||
|
border: 1px solid #5897fb;
|
||||||
|
outline: none;
|
||||||
|
|
||||||
|
-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3);
|
||||||
|
box-shadow: 0 0 5px rgba(0, 0, 0, .3);
|
||||||
|
}
|
||||||
|
.select2-container-multi .select2-choices li {
|
||||||
|
float: left;
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
html[dir="rtl"] .select2-container-multi .select2-choices li
|
||||||
|
{
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
.select2-container-multi .select2-choices .select2-search-field {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container-multi .select2-choices .select2-search-field input {
|
||||||
|
padding: 5px;
|
||||||
|
margin: 1px 0;
|
||||||
|
|
||||||
|
font-family: sans-serif;
|
||||||
|
font-size: 100%;
|
||||||
|
color: #666;
|
||||||
|
outline: 0;
|
||||||
|
border: 0;
|
||||||
|
-webkit-box-shadow: none;
|
||||||
|
box-shadow: none;
|
||||||
|
background: transparent !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container-multi .select2-choices .select2-search-field input.select2-active {
|
||||||
|
background: #fff url('select2-spinner.gif') no-repeat 100% !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-default {
|
||||||
|
color: #999 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container-multi .select2-choices .select2-search-choice {
|
||||||
|
padding: 3px 5px 3px 18px;
|
||||||
|
margin: 3px 0 3px 5px;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
line-height: 13px;
|
||||||
|
color: #333;
|
||||||
|
cursor: default;
|
||||||
|
border: 1px solid #aaaaaa;
|
||||||
|
|
||||||
|
border-radius: 3px;
|
||||||
|
|
||||||
|
-webkit-box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);
|
||||||
|
box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);
|
||||||
|
|
||||||
|
background-clip: padding-box;
|
||||||
|
|
||||||
|
-webkit-touch-callout: none;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
|
||||||
|
background-color: #e4e4e4;
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#f4f4f4', GradientType=0);
|
||||||
|
background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eee));
|
||||||
|
background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
|
||||||
|
background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
|
||||||
|
background-image: linear-gradient(to top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
|
||||||
|
}
|
||||||
|
html[dir="rtl"] .select2-container-multi .select2-choices .select2-search-choice
|
||||||
|
{
|
||||||
|
margin-left: 0;
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
.select2-container-multi .select2-choices .select2-search-choice .select2-chosen {
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
.select2-container-multi .select2-choices .select2-search-choice-focus {
|
||||||
|
background: #d4d4d4;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-search-choice-close {
|
||||||
|
display: block;
|
||||||
|
width: 12px;
|
||||||
|
height: 13px;
|
||||||
|
position: absolute;
|
||||||
|
right: 3px;
|
||||||
|
top: 4px;
|
||||||
|
|
||||||
|
font-size: 1px;
|
||||||
|
outline: none;
|
||||||
|
background: url('select2.png') right top no-repeat;
|
||||||
|
}
|
||||||
|
html[dir="rtl"] .select2-search-choice-close {
|
||||||
|
right: auto;
|
||||||
|
left: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container-multi .select2-search-choice-close {
|
||||||
|
left: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container-multi .select2-choices .select2-search-choice .select2-search-choice-close:hover {
|
||||||
|
background-position: right -11px;
|
||||||
|
}
|
||||||
|
.select2-container-multi .select2-choices .select2-search-choice-focus .select2-search-choice-close {
|
||||||
|
background-position: right -11px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* disabled styles */
|
||||||
|
.select2-container-multi.select2-container-disabled .select2-choices {
|
||||||
|
background-color: #f4f4f4;
|
||||||
|
background-image: none;
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice {
|
||||||
|
padding: 3px 5px 3px 5px;
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
background-image: none;
|
||||||
|
background-color: #f4f4f4;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice .select2-search-choice-close { display: none;
|
||||||
|
background: none;
|
||||||
|
}
|
||||||
|
/* end multiselect */
|
||||||
|
|
||||||
|
|
||||||
|
.select2-result-selectable .select2-match,
|
||||||
|
.select2-result-unselectable .select2-match {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-offscreen, .select2-offscreen:focus {
|
||||||
|
clip: rect(0 0 0 0) !important;
|
||||||
|
width: 1px !important;
|
||||||
|
height: 1px !important;
|
||||||
|
border: 0 !important;
|
||||||
|
margin: 0 !important;
|
||||||
|
padding: 0 !important;
|
||||||
|
overflow: hidden !important;
|
||||||
|
position: absolute !important;
|
||||||
|
outline: 0 !important;
|
||||||
|
left: 0px !important;
|
||||||
|
top: 0px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-display-none {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-measure-scrollbar {
|
||||||
|
position: absolute;
|
||||||
|
top: -10000px;
|
||||||
|
left: -10000px;
|
||||||
|
width: 100px;
|
||||||
|
height: 100px;
|
||||||
|
overflow: scroll;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Retina-ize icons */
|
||||||
|
|
||||||
|
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 2dppx) {
|
||||||
|
.select2-search input,
|
||||||
|
.select2-search-choice-close,
|
||||||
|
.select2-container .select2-choice abbr,
|
||||||
|
.select2-container .select2-choice .select2-arrow b {
|
||||||
|
background-image: url('select2x2.png') !important;
|
||||||
|
background-repeat: no-repeat !important;
|
||||||
|
background-size: 60px 40px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.select2-search input {
|
||||||
|
background-position: 100% -21px !important;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"name": "select2",
|
||||||
|
"title": "Select2",
|
||||||
|
"description": "Select2 is a jQuery based replacement for select boxes. It supports searching, remote data sets, and infinite scrolling of results.",
|
||||||
|
"keywords": [
|
||||||
|
"select",
|
||||||
|
"autocomplete",
|
||||||
|
"typeahead",
|
||||||
|
"dropdown",
|
||||||
|
"multiselect",
|
||||||
|
"tag",
|
||||||
|
"tagging"
|
||||||
|
],
|
||||||
|
"version": "3.4.8",
|
||||||
|
"author": {
|
||||||
|
"name": "Igor Vaynberg",
|
||||||
|
"url": "https://github.com/ivaynberg"
|
||||||
|
},
|
||||||
|
"licenses": [
|
||||||
|
{
|
||||||
|
"type": "Apache",
|
||||||
|
"url": "http://www.apache.org/licenses/LICENSE-2.0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "GPL v2",
|
||||||
|
"url": "http://www.gnu.org/licenses/gpl-2.0.html"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"bugs": "https://github.com/ivaynberg/select2/issues",
|
||||||
|
"homepage": "http://ivaynberg.github.com/select2",
|
||||||
|
"docs": "http://ivaynberg.github.com/select2/",
|
||||||
|
"download": "https://github.com/ivaynberg/select2/tags",
|
||||||
|
"dependencies": {
|
||||||
|
"jquery": ">=1.7.1"
|
||||||
|
}
|
||||||
|
}
|
File diff suppressed because one or more lines are too long
Binary file not shown.
After Width: | Height: | Size: 613 B |
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Arabic translation.
|
||||||
|
*
|
||||||
|
* Author: Adel KEDJOUR <adel@kedjour.com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "لم يتم العثور على مطابقات"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; if (n == 1){ return "الرجاء إدخال حرف واحد على الأكثر"; } return n == 2 ? "الرجاء إدخال حرفين على الأكثر" : "الرجاء إدخال " + n + " على الأكثر"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; if (n == 1){ return "الرجاء إدخال حرف واحد على الأقل"; } return n == 2 ? "الرجاء إدخال حرفين على الأقل" : "الرجاء إدخال " + n + " على الأقل "; },
|
||||||
|
formatSelectionTooBig: function (limit) { if (n == 1){ return "يمكنك أن تختار إختيار واحد فقط"; } return n == 2 ? "يمكنك أن تختار إختيارين فقط" : "يمكنك أن تختار " + n + " إختيارات فقط"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "تحميل المزيد من النتائج…"; },
|
||||||
|
formatSearching: function () { return "البحث…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,18 @@
|
||||||
|
/**
|
||||||
|
* Select2 Bulgarian translation.
|
||||||
|
*
|
||||||
|
* @author Lubomir Vikev <lubomirvikev@gmail.com>
|
||||||
|
* @author Uriy Efremochkin <efremochkin@uriy.me>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Няма намерени съвпадения"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Моля въведете още " + n + " символ" + (n > 1 ? "а" : ""); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Моля въведете с " + n + " по-малко символ" + (n > 1 ? "а" : ""); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Можете да направите до " + limit + (limit > 1 ? " избора" : " избор"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Зареждат се още…"; },
|
||||||
|
formatSearching: function () { return "Търсене…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Catalan translation.
|
||||||
|
*
|
||||||
|
* Author: David Planella <david.planella@gmail.com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "No s'ha trobat cap coincidència"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Introduïu " + n + " caràcter" + (n == 1 ? "" : "s") + " més"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Introduïu " + n + " caràcter" + (n == 1? "" : "s") + "menys"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Només podeu seleccionar " + limit + " element" + (limit == 1 ? "" : "s"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "S'estan carregant més resultats…"; },
|
||||||
|
formatSearching: function () { return "S'està cercant…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,49 @@
|
||||||
|
/**
|
||||||
|
* Select2 Czech translation.
|
||||||
|
*
|
||||||
|
* Author: Michal Marek <ahoj@michal-marek.cz>
|
||||||
|
* Author - sklonovani: David Vallner <david@vallner.net>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
// use text for the numbers 2 through 4
|
||||||
|
var smallNumbers = {
|
||||||
|
2: function(masc) { return (masc ? "dva" : "dvě"); },
|
||||||
|
3: function() { return "tři"; },
|
||||||
|
4: function() { return "čtyři"; }
|
||||||
|
}
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Nenalezeny žádné položky"; },
|
||||||
|
formatInputTooShort: function (input, min) {
|
||||||
|
var n = min - input.length;
|
||||||
|
if (n == 1) {
|
||||||
|
return "Prosím zadejte ještě jeden znak";
|
||||||
|
} else if (n <= 4) {
|
||||||
|
return "Prosím zadejte ještě další "+smallNumbers[n](true)+" znaky";
|
||||||
|
} else {
|
||||||
|
return "Prosím zadejte ještě dalších "+n+" znaků";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
formatInputTooLong: function (input, max) {
|
||||||
|
var n = input.length - max;
|
||||||
|
if (n == 1) {
|
||||||
|
return "Prosím zadejte o jeden znak méně";
|
||||||
|
} else if (n <= 4) {
|
||||||
|
return "Prosím zadejte o "+smallNumbers[n](true)+" znaky méně";
|
||||||
|
} else {
|
||||||
|
return "Prosím zadejte o "+n+" znaků méně";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
formatSelectionTooBig: function (limit) {
|
||||||
|
if (limit == 1) {
|
||||||
|
return "Můžete zvolit jen jednu položku";
|
||||||
|
} else if (limit <= 4) {
|
||||||
|
return "Můžete zvolit maximálně "+smallNumbers[limit](false)+" položky";
|
||||||
|
} else {
|
||||||
|
return "Můžete zvolit maximálně "+limit+" položek";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
formatLoadMore: function (pageNumber) { return "Načítají se další výsledky…"; },
|
||||||
|
formatSearching: function () { return "Vyhledávání…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Danish translation.
|
||||||
|
*
|
||||||
|
* Author: Anders Jenbo <anders@jenbo.dk>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Ingen resultater fundet"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Angiv venligst " + n + " tegn mere"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Angiv venligst " + n + " tegn mindre"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Du kan kun vælge " + limit + " emne" + (limit === 1 ? "" : "r"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Indlæser flere resultater…"; },
|
||||||
|
formatSearching: function () { return "Søger…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,15 @@
|
||||||
|
/**
|
||||||
|
* Select2 German translation
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Keine Übereinstimmungen gefunden"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Bitte " + n + " Zeichen mehr eingeben"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Bitte " + n + " Zeichen weniger eingeben"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Sie können nur " + limit + " Eintr" + (limit === 1 ? "ag" : "äge") + " auswählen"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Lade mehr Ergebnisse…"; },
|
||||||
|
formatSearching: function () { return "Suche…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Greek translation.
|
||||||
|
*
|
||||||
|
* @author Uriy Efremochkin <efremochkin@uriy.me>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Δεν βρέθηκαν αποτελέσματα"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Παρακαλούμε εισάγετε " + n + " περισσότερο" + (n > 1 ? "υς" : "") + " χαρακτήρ" + (n > 1 ? "ες" : "α"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Παρακαλούμε διαγράψτε " + n + " χαρακτήρ" + (n > 1 ? "ες" : "α"); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Μπορείτε να επιλέξετε μόνο " + limit + " αντικείμεν" + (limit > 1 ? "α" : "ο"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Φόρτωση περισσότερων…"; },
|
||||||
|
formatSearching: function () { return "Αναζήτηση…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,18 @@
|
||||||
|
/**
|
||||||
|
* Select2 <Language> translation.
|
||||||
|
*
|
||||||
|
* Author: Your Name <your@email>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatMatches: function (matches) { return matches + " results are available, use up and down arrow keys to navigate."; },
|
||||||
|
formatNoMatches: function () { return "No matches found"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Please enter " + n + " more character" + (n == 1 ? "" : "s"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Please delete " + n + " character" + (n == 1 ? "" : "s"); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "You can only select " + limit + " item" + (limit == 1 ? "" : "s"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Loading more results…"; },
|
||||||
|
formatSearching: function () { return "Searching…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,15 @@
|
||||||
|
/**
|
||||||
|
* Select2 Spanish translation
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "No se encontraron resultados"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Por favor, introduzca " + n + " car" + (n == 1? "ácter" : "acteres"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Por favor, elimine " + n + " car" + (n == 1? "ácter" : "acteres"); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Sólo puede seleccionar " + limit + " elemento" + (limit == 1 ? "" : "s"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Cargando más resultados…"; },
|
||||||
|
formatSearching: function () { return "Buscando…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Estonian translation.
|
||||||
|
*
|
||||||
|
* Author: Kuldar Kalvik <kuldar@kalvik.ee>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Tulemused puuduvad"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Sisesta " + n + " täht" + (n == 1 ? "" : "e") + " rohkem"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Sisesta " + n + " täht" + (n == 1? "" : "e") + " vähem"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Saad vaid " + limit + " tulemus" + (limit == 1 ? "e" : "t") + " valida"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Laen tulemusi.."; },
|
||||||
|
formatSearching: function () { return "Otsin.."; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,43 @@
|
||||||
|
/**
|
||||||
|
* Select2 Basque translation.
|
||||||
|
*
|
||||||
|
* Author: Julen Ruiz Aizpuru <julenx at gmail dot com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () {
|
||||||
|
return "Ez da bat datorrenik aurkitu";
|
||||||
|
},
|
||||||
|
formatInputTooShort: function (input, min) {
|
||||||
|
var n = min - input.length;
|
||||||
|
if (n === 1) {
|
||||||
|
return "Idatzi karaktere bat gehiago";
|
||||||
|
} else {
|
||||||
|
return "Idatzi " + n + " karaktere gehiago";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
formatInputTooLong: function (input, max) {
|
||||||
|
var n = input.length - max;
|
||||||
|
if (n === 1) {
|
||||||
|
return "Idatzi karaktere bat gutxiago";
|
||||||
|
} else {
|
||||||
|
return "Idatzi " + n + " karaktere gutxiago";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
formatSelectionTooBig: function (limit) {
|
||||||
|
if (limit === 1 ) {
|
||||||
|
return "Elementu bakarra hauta dezakezu";
|
||||||
|
} else {
|
||||||
|
return limit + " elementu hauta ditzakezu soilik";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
formatLoadMore: function (pageNumber) {
|
||||||
|
return "Emaitza gehiago kargatzen…";
|
||||||
|
},
|
||||||
|
formatSearching: function () {
|
||||||
|
return "Bilatzen…";
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,19 @@
|
||||||
|
/**
|
||||||
|
* Select2 Persian translation.
|
||||||
|
*
|
||||||
|
* Author: Ali Choopan <choopan@arsh.co>
|
||||||
|
* Author: Ebrahim Byagowi <ebrahim@gnu.org>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatMatches: function (matches) { return matches + " نتیجه موجود است، کلیدهای جهت بالا و پایین را برای گشتن استفاده کنید."; },
|
||||||
|
formatNoMatches: function () { return "نتیجهای یافت نشد."; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "لطفاً " + n + " نویسه بیشتر وارد نمایید"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "لطفاً " + n + " نویسه را حذف کنید."; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "شما فقط میتوانید " + limit + " مورد را انتخاب کنید"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "در حال بارگیری موارد بیشتر…"; },
|
||||||
|
formatSearching: function () { return "در حال جستجو…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,28 @@
|
||||||
|
/**
|
||||||
|
* Select2 Finnish translation
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () {
|
||||||
|
return "Ei tuloksia";
|
||||||
|
},
|
||||||
|
formatInputTooShort: function (input, min) {
|
||||||
|
var n = min - input.length;
|
||||||
|
return "Ole hyvä ja anna " + n + " merkkiä lisää";
|
||||||
|
},
|
||||||
|
formatInputTooLong: function (input, max) {
|
||||||
|
var n = input.length - max;
|
||||||
|
return "Ole hyvä ja anna " + n + " merkkiä vähemmän";
|
||||||
|
},
|
||||||
|
formatSelectionTooBig: function (limit) {
|
||||||
|
return "Voit valita ainoastaan " + limit + " kpl";
|
||||||
|
},
|
||||||
|
formatLoadMore: function (pageNumber) {
|
||||||
|
return "Ladataan lisää tuloksia…";
|
||||||
|
},
|
||||||
|
formatSearching: function () {
|
||||||
|
return "Etsitään…";
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,16 @@
|
||||||
|
/**
|
||||||
|
* Select2 French translation
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatMatches: function (matches) { return matches + " résultats sont disponibles, utilisez les flèches haut et bas pour naviguer."; },
|
||||||
|
formatNoMatches: function () { return "Aucun résultat trouvé"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Merci de saisir " + n + " caractère" + (n == 1 ? "" : "s") + " de plus"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Merci de supprimer " + n + " caractère" + (n == 1 ? "" : "s"); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Vous pouvez seulement sélectionner " + limit + " élément" + (limit == 1 ? "" : "s"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Chargement de résultats supplémentaires…"; },
|
||||||
|
formatSearching: function () { return "Recherche en cours…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,43 @@
|
||||||
|
/**
|
||||||
|
* Select2 Galician translation
|
||||||
|
*
|
||||||
|
* Author: Leandro Regueiro <leandro.regueiro@gmail.com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () {
|
||||||
|
return "Non se atoparon resultados";
|
||||||
|
},
|
||||||
|
formatInputTooShort: function (input, min) {
|
||||||
|
var n = min - input.length;
|
||||||
|
if (n === 1) {
|
||||||
|
return "Engada un carácter";
|
||||||
|
} else {
|
||||||
|
return "Engada " + n + " caracteres";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
formatInputTooLong: function (input, max) {
|
||||||
|
var n = input.length - max;
|
||||||
|
if (n === 1) {
|
||||||
|
return "Elimine un carácter";
|
||||||
|
} else {
|
||||||
|
return "Elimine " + n + " caracteres";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
formatSelectionTooBig: function (limit) {
|
||||||
|
if (limit === 1 ) {
|
||||||
|
return "Só pode seleccionar un elemento";
|
||||||
|
} else {
|
||||||
|
return "Só pode seleccionar " + limit + " elementos";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
formatLoadMore: function (pageNumber) {
|
||||||
|
return "Cargando máis resultados…";
|
||||||
|
},
|
||||||
|
formatSearching: function () {
|
||||||
|
return "Buscando…";
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Hebrew translation.
|
||||||
|
*
|
||||||
|
* Author: Yakir Sitbon <http://www.yakirs.net/>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "לא נמצאו התאמות"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "נא להזין עוד " + n + " תווים נוספים"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "נא להזין פחות " + n + " תווים"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "ניתן לבחור " + limit + " פריטים"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "טוען תוצאות נוספות…"; },
|
||||||
|
formatSearching: function () { return "מחפש…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,22 @@
|
||||||
|
/**
|
||||||
|
* Select2 Croatian translation.
|
||||||
|
*
|
||||||
|
* @author Edi Modrić <edi.modric@gmail.com>
|
||||||
|
* @author Uriy Efremochkin <efremochkin@uriy.me>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Nema rezultata"; },
|
||||||
|
formatInputTooShort: function (input, min) { return "Unesite još" + character(min - input.length); },
|
||||||
|
formatInputTooLong: function (input, max) { return "Unesite" + character(input.length - max) + " manje"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Maksimalan broj odabranih stavki je " + limit; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Učitavanje rezultata…"; },
|
||||||
|
formatSearching: function () { return "Pretraga…"; }
|
||||||
|
});
|
||||||
|
|
||||||
|
function character (n) {
|
||||||
|
return " " + n + " znak" + (n%10 < 5 && n%10 > 0 && (n%100 < 5 || n%100 > 19) ? n%10 > 1 ? "a" : "" : "ova");
|
||||||
|
}
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,15 @@
|
||||||
|
/**
|
||||||
|
* Select2 Hungarian translation
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Nincs találat."; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Túl rövid. Még " + n + " karakter hiányzik."; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Túl hosszú. " + n + " karakterrel több, mint kellene."; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Csak " + limit + " elemet lehet kiválasztani."; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Töltés…"; },
|
||||||
|
formatSearching: function () { return "Keresés…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Indonesian translation.
|
||||||
|
*
|
||||||
|
* Author: Ibrahim Yusuf <ibrahim7usuf@gmail.com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Tidak ada data yang sesuai"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Masukkan " + n + " huruf lagi" + (n == 1 ? "" : "s"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Hapus " + n + " huruf" + (n == 1 ? "" : "s"); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Anda hanya dapat memilih " + limit + " pilihan" + (limit == 1 ? "" : "s"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Mengambil data…"; },
|
||||||
|
formatSearching: function () { return "Mencari…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,15 @@
|
||||||
|
/**
|
||||||
|
* Select2 Icelandic translation.
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Ekkert fannst"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Vinsamlegast skrifið " + n + " staf" + (n > 1 ? "i" : "") + " í viðbót"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Vinsamlegast styttið texta um " + n + " staf" + (n > 1 ? "i" : ""); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Þú getur aðeins valið " + limit + " atriði"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Sæki fleiri niðurstöður…"; },
|
||||||
|
formatSearching: function () { return "Leita…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,15 @@
|
||||||
|
/**
|
||||||
|
* Select2 Italian translation
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Nessuna corrispondenza trovata"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Inserisci ancora " + n + " caratter" + (n == 1? "e" : "i"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Inserisci " + n + " caratter" + (n == 1? "e" : "i") + " in meno"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Puoi selezionare solo " + limit + " element" + (limit == 1 ? "o" : "i"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Caricamento in corso…"; },
|
||||||
|
formatSearching: function () { return "Ricerca…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,15 @@
|
||||||
|
/**
|
||||||
|
* Select2 Japanese translation.
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "該当なし"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "後" + n + "文字入れてください"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "検索文字列が" + n + "文字長すぎます"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "最多で" + limit + "項目までしか選択できません"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "読込中・・・"; },
|
||||||
|
formatSearching: function () { return "検索中・・・"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Georgian (Kartuli) translation.
|
||||||
|
*
|
||||||
|
* Author: Dimitri Kurashvili dimakura@gmail.com
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "ვერ მოიძებნა"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "გთხოვთ შეიყვანოთ კიდევ " + n + " სიმბოლო"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "გთხოვთ წაშალოთ " + n + " სიმბოლო"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "თქვენ შეგიძლიათ მხოლოდ " + limit + " ჩანაწერის მონიშვნა"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "შედეგის ჩატვირთვა…"; },
|
||||||
|
formatSearching: function () { return "ძებნა…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Korean translation.
|
||||||
|
*
|
||||||
|
* @author Swen Mun <longfinfunnel@gmail.com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "결과 없음"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "너무 짧습니다. "+n+"글자 더 입력해주세요."; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "너무 깁니다. "+n+"글자 지워주세요."; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "최대 "+limit+"개까지만 선택하실 수 있습니다."; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "불러오는 중…"; },
|
||||||
|
formatSearching: function () { return "검색 중…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,24 @@
|
||||||
|
/**
|
||||||
|
* Select2 Lithuanian translation.
|
||||||
|
*
|
||||||
|
* @author CRONUS Karmalakas <cronus dot karmalakas at gmail dot com>
|
||||||
|
* @author Uriy Efremochkin <efremochkin@uriy.me>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Atitikmenų nerasta"; },
|
||||||
|
formatInputTooShort: function (input, min) { return "Įrašykite dar" + character(min - input.length); },
|
||||||
|
formatInputTooLong: function (input, max) { return "Pašalinkite" + character(input.length - max); },
|
||||||
|
formatSelectionTooBig: function (limit) {
|
||||||
|
return "Jūs galite pasirinkti tik " + limit + " element" + ((limit%100 > 9 && limit%100 < 21) || limit%10 == 0 ? "ų" : limit%10 > 1 ? "us" : "ą");
|
||||||
|
},
|
||||||
|
formatLoadMore: function (pageNumber) { return "Kraunama daugiau rezultatų…"; },
|
||||||
|
formatSearching: function () { return "Ieškoma…"; }
|
||||||
|
});
|
||||||
|
|
||||||
|
function character (n) {
|
||||||
|
return " " + n + " simbol" + ((n%100 > 9 && n%100 < 21) || n%10 == 0 ? "ių" : n%10 > 1 ? "ius" : "į");
|
||||||
|
}
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Latvian translation.
|
||||||
|
*
|
||||||
|
* @author Uriy Efremochkin <efremochkin@uriy.me>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Sakritību nav"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Lūdzu ievadiet vēl " + n + " simbol" + (n == 11 ? "us" : n%10 == 1 ? "u" : "us"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Lūdzu ievadiet par " + n + " simbol" + (n == 11 ? "iem" : n%10 == 1 ? "u" : "iem") + " mazāk"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Jūs varat izvēlēties ne vairāk kā " + limit + " element" + (limit == 11 ? "us" : limit%10 == 1 ? "u" : "us"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Datu ielāde…"; },
|
||||||
|
formatSearching: function () { return "Meklēšana…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Macedonian translation.
|
||||||
|
*
|
||||||
|
* Author: Marko Aleksic <psybaron@gmail.com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Нема пронајдено совпаѓања"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Ве молиме внесете уште " + n + " карактер" + (n == 1 ? "" : "и"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Ве молиме внесете " + n + " помалку карактер" + (n == 1? "" : "и"); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Можете да изберете само " + limit + " ставк" + (limit == 1 ? "а" : "и"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Вчитување резултати…"; },
|
||||||
|
formatSearching: function () { return "Пребарување…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Malay translation.
|
||||||
|
*
|
||||||
|
* Author: Kepoweran <kepoweran@gmail.com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Tiada padanan yang ditemui"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Sila masukkan " + n + " aksara lagi"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Sila hapuskan " + n + " aksara"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Anda hanya boleh memilih " + limit + " pilihan"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Sedang memuatkan keputusan…"; },
|
||||||
|
formatSearching: function () { return "Mencari…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,15 @@
|
||||||
|
/**
|
||||||
|
* Select2 Dutch translation
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Geen resultaten gevonden"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Vul " + n + " karakter" + (n == 1? "" : "s") + " meer in"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Vul " + n + " karakter" + (n == 1? "" : "s") + " minder in"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Maximaal " + limit + " item" + (limit == 1 ? "" : "s") + " toegestaan"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Meer resultaten laden…"; },
|
||||||
|
formatSearching: function () { return "Zoeken…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,18 @@
|
||||||
|
/**
|
||||||
|
* Select2 Norwegian translation.
|
||||||
|
*
|
||||||
|
* Author: Torgeir Veimo <torgeir.veimo@gmail.com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Ingen treff"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Vennligst skriv inn " + n + (n>1 ? " flere tegn" : " tegn til"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Vennligst fjern " + n + " tegn"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Du kan velge maks " + limit + " elementer"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Laster flere resultater…"; },
|
||||||
|
formatSearching: function () { return "Søker…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
/**
|
||||||
|
* Select2 Polish translation.
|
||||||
|
*
|
||||||
|
* @author Jan Kondratowicz <jan@kondratowicz.pl>
|
||||||
|
* @author Uriy Efremochkin <efremochkin@uriy.me>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Brak wyników"; },
|
||||||
|
formatInputTooShort: function (input, min) { return "Wpisz jeszcze" + character(min - input.length, "znak", "i"); },
|
||||||
|
formatInputTooLong: function (input, max) { return "Wpisana fraza jest za długa o" + character(input.length - max, "znak", "i"); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Możesz zaznaczyć najwyżej" + character(limit, "element", "y"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Ładowanie wyników…"; },
|
||||||
|
formatSearching: function () { return "Szukanie…"; }
|
||||||
|
});
|
||||||
|
|
||||||
|
function character (n, word, pluralSuffix) {
|
||||||
|
return " " + n + " " + word + (n == 1 ? "" : n%10 < 5 && n%10 > 1 && (n%100 < 5 || n%100 > 20) ? pluralSuffix : "ów");
|
||||||
|
}
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,15 @@
|
||||||
|
/**
|
||||||
|
* Select2 Brazilian Portuguese translation
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Nenhum resultado encontrado"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Digite mais " + n + " caracter" + (n == 1? "" : "es"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Apague " + n + " caracter" + (n == 1? "" : "es"); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Só é possível selecionar " + limit + " elemento" + (limit == 1 ? "" : "s"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Carregando mais resultados…"; },
|
||||||
|
formatSearching: function () { return "Buscando…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,15 @@
|
||||||
|
/**
|
||||||
|
* Select2 Portuguese (Portugal) translation
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Nenhum resultado encontrado"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Introduza " + n + " car" + (n == 1 ? "ácter" : "acteres"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Apague " + n + " car" + (n == 1 ? "ácter" : "acteres"); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Só é possível selecionar " + limit + " elemento" + (limit == 1 ? "" : "s"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "A carregar mais resultados…"; },
|
||||||
|
formatSearching: function () { return "A pesquisar…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,15 @@
|
||||||
|
/**
|
||||||
|
* Select2 Romanian translation.
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Nu a fost găsit nimic"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Vă rugăm să introduceți incă " + n + " caracter" + (n == 1 ? "" : "e"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Vă rugăm să introduceți mai puțin de " + n + " caracter" + (n == 1? "" : "e"); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Aveți voie să selectați cel mult " + limit + " element" + (limit == 1 ? "" : "e"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Se încarcă…"; },
|
||||||
|
formatSearching: function () { return "Căutare…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Serbian translation.
|
||||||
|
*
|
||||||
|
* @author Limon Monte <limon.monte@gmail.com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Ništa nije pronađeno"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Ukucajte bar još " + n + " simbol" + (n % 10 == 1 && n % 100 != 11 ? "" : "a"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Obrišite " + n + " simbol" + (n % 10 == 1 && n % 100 != 11 ? "" : "a"); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Možete izabrati samo " + limit + " stavk" + (limit % 10 == 1 && limit % 100 != 11 ? "u" : (limit % 10 >= 2 && limit % 10 <= 4 && (limit % 100 < 12 || limit % 100 > 14)? "e" : "i")); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Preuzimanje još rezultata…"; },
|
||||||
|
formatSearching: function () { return "Pretraga…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,21 @@
|
||||||
|
/**
|
||||||
|
* Select2 Russian translation.
|
||||||
|
*
|
||||||
|
* @author Uriy Efremochkin <efremochkin@uriy.me>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Совпадений не найдено"; },
|
||||||
|
formatInputTooShort: function (input, min) { return "Пожалуйста, введите еще" + character(min - input.length); },
|
||||||
|
formatInputTooLong: function (input, max) { return "Пожалуйста, введите на" + character(input.length - max) + " меньше"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Вы можете выбрать не более " + limit + " элемент" + (limit%10 == 1 && limit%100 != 11 ? "а" : "ов"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Загрузка данных…"; },
|
||||||
|
formatSearching: function () { return "Поиск…"; }
|
||||||
|
});
|
||||||
|
|
||||||
|
function character (n) {
|
||||||
|
return " " + n + " символ" + (n%10 < 5 && n%10 > 0 && (n%100 < 5 || n%100 > 20) ? n%10 > 1 ? "a" : "" : "ов");
|
||||||
|
}
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,48 @@
|
||||||
|
/**
|
||||||
|
* Select2 Slovak translation.
|
||||||
|
*
|
||||||
|
* Author: David Vallner <david@vallner.net>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
// use text for the numbers 2 through 4
|
||||||
|
var smallNumbers = {
|
||||||
|
2: function(masc) { return (masc ? "dva" : "dve"); },
|
||||||
|
3: function() { return "tri"; },
|
||||||
|
4: function() { return "štyri"; }
|
||||||
|
}
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Nenašli sa žiadne položky"; },
|
||||||
|
formatInputTooShort: function (input, min) {
|
||||||
|
var n = min - input.length;
|
||||||
|
if (n == 1) {
|
||||||
|
return "Prosím zadajte ešte jeden znak";
|
||||||
|
} else if (n <= 4) {
|
||||||
|
return "Prosím zadajte ešte ďalšie "+smallNumbers[n](true)+" znaky";
|
||||||
|
} else {
|
||||||
|
return "Prosím zadajte ešte ďalších "+n+" znakov";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
formatInputTooLong: function (input, max) {
|
||||||
|
var n = input.length - max;
|
||||||
|
if (n == 1) {
|
||||||
|
return "Prosím zadajte o jeden znak menej";
|
||||||
|
} else if (n <= 4) {
|
||||||
|
return "Prosím zadajte o "+smallNumbers[n](true)+" znaky menej";
|
||||||
|
} else {
|
||||||
|
return "Prosím zadajte o "+n+" znakov menej";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
formatSelectionTooBig: function (limit) {
|
||||||
|
if (limit == 1) {
|
||||||
|
return "Môžete zvoliť len jednu položku";
|
||||||
|
} else if (limit <= 4) {
|
||||||
|
return "Môžete zvoliť najviac "+smallNumbers[limit](false)+" položky";
|
||||||
|
} else {
|
||||||
|
return "Môžete zvoliť najviac "+limit+" položiek";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
formatLoadMore: function (pageNumber) { return "Načítavajú sa ďalšie výsledky…"; },
|
||||||
|
formatSearching: function () { return "Vyhľadávanie…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Swedish translation.
|
||||||
|
*
|
||||||
|
* Author: Jens Rantil <jens.rantil@telavox.com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Inga träffar"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Var god skriv in " + n + (n>1 ? " till tecken" : " tecken till"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Var god sudda ut " + n + " tecken"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Du kan max välja " + limit + " element"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Laddar fler resultat…"; },
|
||||||
|
formatSearching: function () { return "Söker…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Thai translation.
|
||||||
|
*
|
||||||
|
* Author: Atsawin Chaowanakritsanakul <joke@nakhon.net>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "ไม่พบข้อมูล"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "โปรดพิมพ์เพิ่มอีก " + n + " ตัวอักษร"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "โปรดลบออก " + n + " ตัวอักษร"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "คุณสามารถเลือกได้ไม่เกิน " + limit + " รายการ"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "กำลังค้นข้อมูลเพิ่ม…"; },
|
||||||
|
formatSearching: function () { return "กำลังค้นข้อมูล…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,17 @@
|
||||||
|
/**
|
||||||
|
* Select2 Turkish translation.
|
||||||
|
*
|
||||||
|
* Author: Salim KAYABAŞI <salim.kayabasi@gmail.com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Sonuç bulunamadı"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "En az " + n + " karakter daha girmelisiniz"; },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return n + " karakter azaltmalısınız"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Sadece " + limit + " seçim yapabilirsiniz"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Daha fazla…"; },
|
||||||
|
formatSearching: function () { return "Aranıyor…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,23 @@
|
||||||
|
/**
|
||||||
|
* Select2 Ukrainian translation.
|
||||||
|
*
|
||||||
|
* @author bigmihail <bigmihail@bigmir.net>
|
||||||
|
* @author Uriy Efremochkin <efremochkin@uriy.me>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatMatches: function (matches) { return character(matches, "результат") + " знайдено, використовуйте клавіші зі стрілками вверх та вниз для навігації."; },
|
||||||
|
formatNoMatches: function () { return "Нічого не знайдено"; },
|
||||||
|
formatInputTooShort: function (input, min) { return "Введіть буль ласка ще " + character(min - input.length, "символ"); },
|
||||||
|
formatInputTooLong: function (input, max) { return "Введіть буль ласка на " + character(input.length - max, "символ") + " менше"; },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Ви можете вибрати лише " + character(limit, "елемент"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Завантаження даних…"; },
|
||||||
|
formatSearching: function () { return "Пошук…"; }
|
||||||
|
});
|
||||||
|
|
||||||
|
function character (n, word) {
|
||||||
|
return n + " " + word + (n%10 < 5 && n%10 > 0 && (n%100 < 5 || n%100 > 19) ? n%10 > 1 ? "и" : "" : "ів");
|
||||||
|
}
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,18 @@
|
||||||
|
/**
|
||||||
|
* Select2 Vietnamese translation.
|
||||||
|
*
|
||||||
|
* Author: Long Nguyen <olragon@gmail.com>
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "Không tìm thấy kết quả"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "Vui lòng nhập nhiều hơn " + n + " ký tự" + (n == 1 ? "" : "s"); },
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "Vui lòng nhập ít hơn " + n + " ký tự" + (n == 1? "" : "s"); },
|
||||||
|
formatSelectionTooBig: function (limit) { return "Chỉ có thể chọn được " + limit + " tùy chọn" + (limit == 1 ? "" : "s"); },
|
||||||
|
formatLoadMore: function (pageNumber) { return "Đang lấy thêm kết quả…"; },
|
||||||
|
formatSearching: function () { return "Đang tìm…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
/**
|
||||||
|
* Select2 Chinese translation
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "没有找到匹配项"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "请再输入" + n + "个字符";},
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "请删掉" + n + "个字符";},
|
||||||
|
formatSelectionTooBig: function (limit) { return "你只能选择最多" + limit + "项"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "加载结果中…"; },
|
||||||
|
formatSearching: function () { return "搜索中…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
|
@ -0,0 +1,14 @@
|
||||||
|
/**
|
||||||
|
* Select2 Traditional Chinese translation
|
||||||
|
*/
|
||||||
|
(function ($) {
|
||||||
|
"use strict";
|
||||||
|
$.extend($.fn.select2.defaults, {
|
||||||
|
formatNoMatches: function () { return "沒有找到相符的項目"; },
|
||||||
|
formatInputTooShort: function (input, min) { var n = min - input.length; return "請再輸入" + n + "個字元";},
|
||||||
|
formatInputTooLong: function (input, max) { var n = input.length - max; return "請刪掉" + n + "個字元";},
|
||||||
|
formatSelectionTooBig: function (limit) { return "你只能選擇最多" + limit + "項"; },
|
||||||
|
formatLoadMore: function (pageNumber) { return "載入中…"; },
|
||||||
|
formatSearching: function () { return "搜尋中…"; }
|
||||||
|
});
|
||||||
|
})(jQuery);
|
Binary file not shown.
After Width: | Height: | Size: 845 B |
|
@ -0,0 +1,26 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
OCP\JSON::checkAppEnabled('files_external');
|
||||||
|
OCP\JSON::callCheck();
|
||||||
|
|
||||||
|
OCP\JSON::checkAdminUser();
|
||||||
|
|
||||||
|
$pattern = '';
|
||||||
|
$limit = null;
|
||||||
|
$offset = null;
|
||||||
|
if (isset($_GET['pattern'])) {
|
||||||
|
$pattern = $_GET['pattern'];
|
||||||
|
}
|
||||||
|
if (isset($_GET['limit'])) {
|
||||||
|
$limit = $_GET['limit'];
|
||||||
|
}
|
||||||
|
if (isset($_GET['offset'])) {
|
||||||
|
$offset = $_GET['offset'];
|
||||||
|
}
|
||||||
|
|
||||||
|
$groups = \OC_Group::getGroups($pattern, $limit, $offset);
|
||||||
|
$users = \OCP\User::getDisplayNames($pattern, $limit, $offset);
|
||||||
|
|
||||||
|
$results = array('groups' => $groups, 'users' => $users);
|
||||||
|
|
||||||
|
\OCP\JSON::success($results);
|
|
@ -5,7 +5,7 @@ require_once __DIR__ . '/../3rdparty/Dropbox/autoload.php';
|
||||||
OCP\JSON::checkAppEnabled('files_external');
|
OCP\JSON::checkAppEnabled('files_external');
|
||||||
OCP\JSON::checkLoggedIn();
|
OCP\JSON::checkLoggedIn();
|
||||||
OCP\JSON::callCheck();
|
OCP\JSON::callCheck();
|
||||||
$l = OC_L10N::get('files_external');
|
$l = \OC::$server->getL10N('files_external');
|
||||||
|
|
||||||
if (isset($_POST['app_key']) && isset($_POST['app_secret'])) {
|
if (isset($_POST['app_key']) && isset($_POST['app_secret'])) {
|
||||||
$oauth = new Dropbox_OAuth_Curl($_POST['app_key'], $_POST['app_secret']);
|
$oauth = new Dropbox_OAuth_Curl($_POST['app_key'], $_POST['app_secret']);
|
||||||
|
|
|
@ -6,7 +6,7 @@ require_once 'Google_Client.php';
|
||||||
OCP\JSON::checkAppEnabled('files_external');
|
OCP\JSON::checkAppEnabled('files_external');
|
||||||
OCP\JSON::checkLoggedIn();
|
OCP\JSON::checkLoggedIn();
|
||||||
OCP\JSON::callCheck();
|
OCP\JSON::callCheck();
|
||||||
$l = OC_L10N::get('files_external');
|
$l = \OC::$server->getL10N('files_external');
|
||||||
|
|
||||||
if (isset($_POST['client_id']) && isset($_POST['client_secret']) && isset($_POST['redirect'])) {
|
if (isset($_POST['client_id']) && isset($_POST['client_secret']) && isset($_POST['redirect'])) {
|
||||||
$client = new Google_Client();
|
$client = new Google_Client();
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
* later.
|
* later.
|
||||||
* See the COPYING-README file.
|
* See the COPYING-README file.
|
||||||
*/
|
*/
|
||||||
$l = \OC_L10N::get('files_external');
|
$l = \OC::$server->getL10N('files_external');
|
||||||
|
|
||||||
OC::$CLASSPATH['OC\Files\Storage\StreamWrapper'] = 'files_external/lib/streamwrapper.php';
|
OC::$CLASSPATH['OC\Files\Storage\StreamWrapper'] = 'files_external/lib/streamwrapper.php';
|
||||||
OC::$CLASSPATH['OC\Files\Storage\FTP'] = 'files_external/lib/ftp.php';
|
OC::$CLASSPATH['OC\Files\Storage\FTP'] = 'files_external/lib/ftp.php';
|
||||||
|
@ -62,9 +62,9 @@ OC_Mount_Config::registerBackend('\OC\Files\Storage\AmazonS3', array(
|
||||||
'key' => (string)$l->t('Access Key'),
|
'key' => (string)$l->t('Access Key'),
|
||||||
'secret' => '*'.$l->t('Secret Key'),
|
'secret' => '*'.$l->t('Secret Key'),
|
||||||
'bucket' => (string)$l->t('Bucket'),
|
'bucket' => (string)$l->t('Bucket'),
|
||||||
'hostname' => '&'.$l->t('Hostname (optional)'),
|
'hostname' => '&'.$l->t('Hostname'),
|
||||||
'port' => '&'.$l->t('Port (optional)'),
|
'port' => '&'.$l->t('Port'),
|
||||||
'region' => '&'.$l->t('Region (optional)'),
|
'region' => '&'.$l->t('Region'),
|
||||||
'use_ssl' => '!'.$l->t('Enable SSL'),
|
'use_ssl' => '!'.$l->t('Enable SSL'),
|
||||||
'use_path_style' => '!'.$l->t('Enable Path Style')),
|
'use_path_style' => '!'.$l->t('Enable Path Style')),
|
||||||
'has_dependencies' => true));
|
'has_dependencies' => true));
|
||||||
|
@ -108,15 +108,15 @@ OC_Mount_Config::registerBackend('\OC\Files\Storage\Swift', array(
|
||||||
'backend' => (string)$l->t('OpenStack Object Storage'),
|
'backend' => (string)$l->t('OpenStack Object Storage'),
|
||||||
'priority' => 100,
|
'priority' => 100,
|
||||||
'configuration' => array(
|
'configuration' => array(
|
||||||
'user' => (string)$l->t('Username (required)'),
|
'user' => (string)$l->t('Username'),
|
||||||
'bucket' => (string)$l->t('Bucket (required)'),
|
'bucket' => (string)$l->t('Bucket'),
|
||||||
'region' => '&'.$l->t('Region (optional for OpenStack Object Storage)'),
|
'region' => '&'.$l->t('Region (optional for OpenStack Object Storage)'),
|
||||||
'key' => '*'.$l->t('API Key (required for Rackspace Cloud Files)'),
|
'key' => '*'.$l->t('API Key (required for Rackspace Cloud Files)'),
|
||||||
'tenant' => '&'.$l->t('Tenantname (required for OpenStack Object Storage)'),
|
'tenant' => '&'.$l->t('Tenantname (required for OpenStack Object Storage)'),
|
||||||
'password' => '*'.$l->t('Password (required for OpenStack Object Storage)'),
|
'password' => '*'.$l->t('Password (required for OpenStack Object Storage)'),
|
||||||
'service_name' => '&'.$l->t('Service Name (required for OpenStack Object Storage)'),
|
'service_name' => '&'.$l->t('Service Name (required for OpenStack Object Storage)'),
|
||||||
'url' => '&'.$l->t('URL of identity endpoint (required for OpenStack Object Storage)'),
|
'url' => '&'.$l->t('URL of identity endpoint (required for OpenStack Object Storage)'),
|
||||||
'timeout' => '&'.$l->t('Timeout of HTTP requests in seconds (optional)'),
|
'timeout' => '&'.$l->t('Timeout of HTTP requests in seconds'),
|
||||||
),
|
),
|
||||||
'has_dependencies' => true));
|
'has_dependencies' => true));
|
||||||
|
|
||||||
|
|
|
@ -37,6 +37,9 @@ $this->create('files_external_dropbox', 'ajax/dropbox.php')
|
||||||
$this->create('files_external_google', 'ajax/google.php')
|
$this->create('files_external_google', 'ajax/google.php')
|
||||||
->actionInclude('files_external/ajax/google.php');
|
->actionInclude('files_external/ajax/google.php');
|
||||||
|
|
||||||
|
$this->create('files_external_list_applicable', '/applicable')
|
||||||
|
->actionInclude('files_external/ajax/applicable.php');
|
||||||
|
|
||||||
OC_API::register('get',
|
OC_API::register('get',
|
||||||
'/apps/files_external/api/v1/mounts',
|
'/apps/files_external/api/v1/mounts',
|
||||||
array('\OCA\Files\External\Api', 'getUserMounts'),
|
array('\OCA\Files\External\Api', 'getUserMounts'),
|
||||||
|
|
|
@ -20,6 +20,9 @@ tr:hover>td.remove>img { visibility:visible; cursor:pointer; }
|
||||||
#externalStorage td.backend {
|
#externalStorage td.backend {
|
||||||
white-space: normal;
|
white-space: normal;
|
||||||
}
|
}
|
||||||
|
#externalStorage td.configuration > * {
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
#externalStorage td.configuration input.added {
|
#externalStorage td.configuration input.added {
|
||||||
margin-right: 6px;
|
margin-right: 6px;
|
||||||
|
@ -42,3 +45,19 @@ tr:hover>td.remove>img { visibility:visible; cursor:pointer; }
|
||||||
#userMountingBackends {
|
#userMountingBackends {
|
||||||
padding-left: 25px;
|
padding-left: 25px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#body-settings .select2-results .select2-result-label {
|
||||||
|
height: 32px;
|
||||||
|
padding: 3px;
|
||||||
|
}
|
||||||
|
.select2-results .select2-result-label .avatardiv {
|
||||||
|
display:inline-block;
|
||||||
|
}
|
||||||
|
.select2-results .select2-result-label .avatardiv + span {
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
.select2-results .select2-result-label .avatardiv[data-type="group"] + span {
|
||||||
|
vertical-align: top;
|
||||||
|
top: 6px;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
function updateStatus(statusEl, result){
|
function updateStatus(statusEl, result){
|
||||||
statusEl.removeClass('success error loading-small');
|
statusEl.removeClass('success error loading-small');
|
||||||
if (result && result.status == 'success' && result.data.message) {
|
if (result && result.status === 'success' && result.data.message) {
|
||||||
statusEl.addClass('success');
|
statusEl.addClass('success');
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
|
@ -11,11 +11,31 @@ function updateStatus(statusEl, result){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getSelection($row) {
|
||||||
|
var values = $row.find('.applicableUsers').select2('val');
|
||||||
|
if (!values || values.length === 0) {
|
||||||
|
values = ['all'];
|
||||||
|
}
|
||||||
|
return values;
|
||||||
|
}
|
||||||
|
|
||||||
|
function highlightBorder(element, highlight) {
|
||||||
|
$(element).toggleClass('warning-input', highlight);
|
||||||
|
return highlight;
|
||||||
|
}
|
||||||
|
|
||||||
|
function highlightInput(input) {
|
||||||
|
if ($(input).attr('type') === 'text' || $(input).attr('type') === 'password') {
|
||||||
|
return highlightBorder(input,
|
||||||
|
($(input).val() === '' && !$(input).hasClass('optional')));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
OC.MountConfig={
|
OC.MountConfig={
|
||||||
saveStorage:function(tr, callback) {
|
saveStorage:function(tr, callback) {
|
||||||
var mountPoint = $(tr).find('.mountPoint input').val();
|
var mountPoint = $(tr).find('.mountPoint input').val();
|
||||||
var oldMountPoint = $(tr).find('.mountPoint input').data('mountpoint');
|
var oldMountPoint = $(tr).find('.mountPoint input').data('mountpoint');
|
||||||
if (mountPoint == '') {
|
if (mountPoint === '') {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
var statusSpan = $(tr).closest('tr').find('.status span');
|
var statusSpan = $(tr).closest('tr').find('.status span');
|
||||||
|
@ -27,7 +47,7 @@ OC.MountConfig={
|
||||||
}
|
}
|
||||||
var classOptions = {};
|
var classOptions = {};
|
||||||
$.each(configuration, function(index, input) {
|
$.each(configuration, function(index, input) {
|
||||||
if ($(input).val() == '' && !$(input).hasClass('optional')) {
|
if ($(input).val() === '' && !$(input).hasClass('optional')) {
|
||||||
addMountPoint = false;
|
addMountPoint = false;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -42,10 +62,7 @@ OC.MountConfig={
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
if ($('#externalStorage').data('admin') === true) {
|
if ($('#externalStorage').data('admin') === true) {
|
||||||
var multiselect = $(tr).find('.chzn-select').val();
|
var multiselect = getSelection($(tr));
|
||||||
if (multiselect == null) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (addMountPoint) {
|
if (addMountPoint) {
|
||||||
var status = false;
|
var status = false;
|
||||||
|
@ -166,16 +183,137 @@ OC.MountConfig={
|
||||||
};
|
};
|
||||||
|
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
$('.chzn-select').chosen();
|
//initialize hidden input field with list of users and groups
|
||||||
|
$('#externalStorage').find('tr:not(#addMountPoint)').each(function(i,tr) {
|
||||||
|
var applicable = $(tr).find('.applicable');
|
||||||
|
if (applicable.length > 0) {
|
||||||
|
var groups = applicable.data('applicable-groups');
|
||||||
|
var groupsId = [];
|
||||||
|
$.each(groups, function () {
|
||||||
|
groupsId.push(this+"(group)");
|
||||||
|
});
|
||||||
|
var users = applicable.data('applicable-users');
|
||||||
|
if (users.indexOf('all') > -1) {
|
||||||
|
$(tr).find('.applicableUsers').val('');
|
||||||
|
} else {
|
||||||
|
$(tr).find('.applicableUsers').val(groupsId.concat(users).join(','));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
var userListLimit = 30;
|
||||||
|
function addSelect2 ($elements) {
|
||||||
|
if ($elements.length > 0) {
|
||||||
|
$elements.select2({
|
||||||
|
placeholder: t('files_external', 'All users. Type to select user or group.'),
|
||||||
|
allowClear: true,
|
||||||
|
multiple: true,
|
||||||
|
//minimumInputLength: 1,
|
||||||
|
ajax: {
|
||||||
|
url: OC.generateUrl('apps/files_external/applicable'),
|
||||||
|
dataType: 'json',
|
||||||
|
quietMillis: 100,
|
||||||
|
data: function (term, page) { // page is the one-based page number tracked by Select2
|
||||||
|
return {
|
||||||
|
pattern: term, //search term
|
||||||
|
limit: userListLimit, // page size
|
||||||
|
offset: userListLimit*(page-1) // page number starts with 0
|
||||||
|
};
|
||||||
|
},
|
||||||
|
results: function (data, page) {
|
||||||
|
if (data.status === "success") {
|
||||||
|
|
||||||
|
var results = [];
|
||||||
|
var userCount = 0; // users is an object
|
||||||
|
|
||||||
|
// add groups
|
||||||
|
$.each(data.groups, function(i, group) {
|
||||||
|
results.push({name:group+'(group)', displayname:group, type:'group' });
|
||||||
|
});
|
||||||
|
// add users
|
||||||
|
$.each(data.users, function(id, user) {
|
||||||
|
userCount++;
|
||||||
|
results.push({name:id, displayname:user, type:'user' });
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
var more = (userCount >= userListLimit) || (data.groups.length >= userListLimit);
|
||||||
|
return {results: results, more: more};
|
||||||
|
} else {
|
||||||
|
//FIXME add error handling
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
initSelection: function(element, callback) {
|
||||||
|
var users = {};
|
||||||
|
users['users'] = [];
|
||||||
|
var toSplit = element.val().split(",");
|
||||||
|
for (var i = 0; i < toSplit.length; i++) {
|
||||||
|
users['users'].push(toSplit[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
$.ajax(OC.generateUrl('displaynames'), {
|
||||||
|
type: 'POST',
|
||||||
|
contentType: 'application/json',
|
||||||
|
data: JSON.stringify(users),
|
||||||
|
dataType: "json"
|
||||||
|
}).done(function(data) {
|
||||||
|
var results = [];
|
||||||
|
if (data.status === "success") {
|
||||||
|
$.each(data.users, function(user, displayname) {
|
||||||
|
if (displayname !== false) {
|
||||||
|
results.push({name:user, displayname:displayname, type:'user'});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
callback(results);
|
||||||
|
} else {
|
||||||
|
//FIXME add error handling
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
id: function(element) {
|
||||||
|
return element.name;
|
||||||
|
},
|
||||||
|
formatResult: function (element) {
|
||||||
|
var $result = $('<span><div class="avatardiv"/><span>'+escapeHTML(element.displayname)+'</span></span>');
|
||||||
|
var $div = $result.find('.avatardiv')
|
||||||
|
.attr('data-type', element.type)
|
||||||
|
.attr('data-name', element.name)
|
||||||
|
.attr('data-displayname', element.displayname);
|
||||||
|
if (element.type === 'group') {
|
||||||
|
var url = OC.imagePath('core','places/contacts-dark'); // TODO better group icon
|
||||||
|
$div.html('<img width="32" height="32" src="'+url+'">');
|
||||||
|
}
|
||||||
|
return $result.get(0).outerHTML;
|
||||||
|
},
|
||||||
|
formatSelection: function (element) {
|
||||||
|
if (element.type === 'group') {
|
||||||
|
return '<span title="'+escapeHTML(element.name)+'" class="group">'+escapeHTML(element.displayname+' '+t('files_external', '(group)'))+'</span>';
|
||||||
|
} else {
|
||||||
|
return '<span title="'+escapeHTML(element.name)+'" class="user">'+escapeHTML(element.displayname)+'</span>';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
escapeMarkup: function (m) { return m; } // we escape the markup in formatResult and formatSelection
|
||||||
|
}).on("select2-loaded", function() {
|
||||||
|
$.each($(".avatardiv"), function(i, div) {
|
||||||
|
$div = $(div);
|
||||||
|
if ($div.data('type') === 'user') {
|
||||||
|
$div.avatar($div.data('name'),32);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
addSelect2($('tr:not(#addMountPoint) .applicableUsers'));
|
||||||
|
|
||||||
$('#externalStorage').on('change', '#selectBackend', function() {
|
$('#externalStorage').on('change', '#selectBackend', function() {
|
||||||
var tr = $(this).parent().parent();
|
var tr = $(this).closest("tr");
|
||||||
$('#externalStorage tbody').append($(tr).clone());
|
$('#externalStorage tbody').append($(tr).clone());
|
||||||
$('#externalStorage tbody tr').last().find('.mountPoint input').val('');
|
$('#externalStorage tbody tr').last().find('.mountPoint input').val('');
|
||||||
var selected = $(this).find('option:selected').text();
|
var selected = $(this).find('option:selected').text();
|
||||||
var backendClass = $(this).val();
|
var backendClass = $(this).val();
|
||||||
$(this).parent().text(selected);
|
$(tr).find('.backend').text(selected);
|
||||||
if ($(tr).find('.mountPoint input').val() == '') {
|
if ($(tr).find('.mountPoint input').val() === '') {
|
||||||
$(tr).find('.mountPoint input').val(suggestMountPoint(selected));
|
$(tr).find('.mountPoint input').val(suggestMountPoint(selected));
|
||||||
}
|
}
|
||||||
$(tr).addClass(backendClass);
|
$(tr).addClass(backendClass);
|
||||||
|
@ -184,40 +322,40 @@ $(document).ready(function() {
|
||||||
var configurations = $(this).data('configurations');
|
var configurations = $(this).data('configurations');
|
||||||
var td = $(tr).find('td.configuration');
|
var td = $(tr).find('td.configuration');
|
||||||
$.each(configurations, function(backend, parameters) {
|
$.each(configurations, function(backend, parameters) {
|
||||||
if (backend == backendClass) {
|
if (backend === backendClass) {
|
||||||
$.each(parameters['configuration'], function(parameter, placeholder) {
|
$.each(parameters['configuration'], function(parameter, placeholder) {
|
||||||
var is_optional = false;
|
var is_optional = false;
|
||||||
if (placeholder.indexOf('&') === 0) {
|
if (placeholder.indexOf('&') === 0) {
|
||||||
is_optional = true;
|
is_optional = true;
|
||||||
placeholder = placeholder.substring(1);
|
placeholder = placeholder.substring(1);
|
||||||
}
|
}
|
||||||
|
var newElement;
|
||||||
if (placeholder.indexOf('*') === 0) {
|
if (placeholder.indexOf('*') === 0) {
|
||||||
var class_string = is_optional ? ' optional' : '';
|
var class_string = is_optional ? ' optional' : '';
|
||||||
td.append('<input type="password" class="added' + class_string + '" data-parameter="'+parameter+'" placeholder="'+placeholder.substring(1)+'" />');
|
newElement = $('<input type="password" class="added' + class_string + '" data-parameter="'+parameter+'" placeholder="'+placeholder.substring(1)+'" />');
|
||||||
} else if (placeholder.indexOf('!') === 0) {
|
} else if (placeholder.indexOf('!') === 0) {
|
||||||
td.append('<label><input type="checkbox" class="added" data-parameter="'+parameter+'" />'+placeholder.substring(1)+'</label>');
|
newElement = $('<label><input type="checkbox" class="added" data-parameter="'+parameter+'" />'+placeholder.substring(1)+'</label>');
|
||||||
} else if (placeholder.indexOf('#') === 0) {
|
} else if (placeholder.indexOf('#') === 0) {
|
||||||
td.append('<input type="hidden" class="added" data-parameter="'+parameter+'" />');
|
newElement = $('<input type="hidden" class="added" data-parameter="'+parameter+'" />');
|
||||||
} else {
|
} else {
|
||||||
var class_string = is_optional ? ' optional' : '';
|
var class_string = is_optional ? ' optional' : '';
|
||||||
td.append('<input type="text" class="added' + class_string + '" data-parameter="'+parameter+'" placeholder="'+placeholder+'" />');
|
newElement = $('<input type="text" class="added' + class_string + '" data-parameter="'+parameter+'" placeholder="'+placeholder+'" />');
|
||||||
}
|
}
|
||||||
|
highlightInput(newElement);
|
||||||
|
td.append(newElement);
|
||||||
});
|
});
|
||||||
if (parameters['custom'] && $('#externalStorage tbody tr.'+backendClass.replace(/\\/g, '\\\\')).length == 1) {
|
if (parameters['custom'] && $('#externalStorage tbody tr.'+backendClass.replace(/\\/g, '\\\\')).length === 1) {
|
||||||
OC.addScript('files_external', parameters['custom']);
|
OC.addScript('files_external', parameters['custom']);
|
||||||
}
|
}
|
||||||
|
td.children().not('[type=hidden]').first().focus();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
// Reset chosen
|
|
||||||
var chosen = $(tr).find('.applicable select');
|
|
||||||
chosen.parent().find('div').remove();
|
|
||||||
chosen.removeAttr('id').removeClass('chzn-done').css({display:'inline-block'});
|
|
||||||
chosen.chosen();
|
|
||||||
$(tr).find('td').last().attr('class', 'remove');
|
$(tr).find('td').last().attr('class', 'remove');
|
||||||
$(tr).find('td').last().removeAttr('style');
|
$(tr).find('td').last().removeAttr('style');
|
||||||
$(tr).removeAttr('id');
|
$(tr).removeAttr('id');
|
||||||
$(this).remove();
|
$(this).remove();
|
||||||
|
addSelect2($('tr:not(#addMountPoint) .applicableUsers'));
|
||||||
});
|
});
|
||||||
|
|
||||||
function suggestMountPoint(defaultMountPoint) {
|
function suggestMountPoint(defaultMountPoint) {
|
||||||
|
@ -232,7 +370,7 @@ $(document).ready(function() {
|
||||||
while (match && i < 20) {
|
while (match && i < 20) {
|
||||||
match = false;
|
match = false;
|
||||||
$('#externalStorage tbody td.mountPoint input').each(function(index, mountPoint) {
|
$('#externalStorage tbody td.mountPoint input').each(function(index, mountPoint) {
|
||||||
if ($(mountPoint).val() == defaultMountPoint+append) {
|
if ($(mountPoint).val() === defaultMountPoint+append) {
|
||||||
match = true;
|
match = true;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -247,9 +385,11 @@ $(document).ready(function() {
|
||||||
return defaultMountPoint+append;
|
return defaultMountPoint+append;
|
||||||
}
|
}
|
||||||
|
|
||||||
$('#externalStorage').on('paste', 'td', function() {
|
$('#externalStorage').on('paste', 'td input', function() {
|
||||||
var tr = $(this).parent();
|
var tr = $(this).closest("tr");
|
||||||
|
var me = this;
|
||||||
setTimeout(function() {
|
setTimeout(function() {
|
||||||
|
highlightInput($(me));
|
||||||
OC.MountConfig.saveStorage(tr);
|
OC.MountConfig.saveStorage(tr);
|
||||||
}, 20);
|
}, 20);
|
||||||
});
|
});
|
||||||
|
@ -258,7 +398,8 @@ $(document).ready(function() {
|
||||||
|
|
||||||
$('#externalStorage').on('keyup', 'td input', function() {
|
$('#externalStorage').on('keyup', 'td input', function() {
|
||||||
clearTimeout(timer);
|
clearTimeout(timer);
|
||||||
var tr = $(this).parent().parent();
|
var tr = $(this).closest("tr");
|
||||||
|
highlightInput($(this));
|
||||||
if ($(this).val) {
|
if ($(this).val) {
|
||||||
timer = setTimeout(function() {
|
timer = setTimeout(function() {
|
||||||
OC.MountConfig.saveStorage(tr);
|
OC.MountConfig.saveStorage(tr);
|
||||||
|
@ -267,41 +408,42 @@ $(document).ready(function() {
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#externalStorage').on('change', 'td input:checkbox', function() {
|
$('#externalStorage').on('change', 'td input:checkbox', function() {
|
||||||
OC.MountConfig.saveStorage($(this).parent().parent().parent());
|
OC.MountConfig.saveStorage($(this).closest("tr"));
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#externalStorage').on('change', '.applicable .chzn-select', function() {
|
$('#externalStorage').on('change', '.applicable', function() {
|
||||||
OC.MountConfig.saveStorage($(this).parent().parent());
|
OC.MountConfig.saveStorage($(this).closest("tr"));
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#externalStorage').on('click', '.status>span', function() {
|
||||||
|
OC.MountConfig.saveStorage($(this).closest("tr"));
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#sslCertificate').on('click', 'td.remove>img', function() {
|
$('#sslCertificate').on('click', 'td.remove>img', function() {
|
||||||
var $tr = $(this).parent().parent();
|
var $tr = $(this).closest("tr");
|
||||||
var row = this.parentNode.parentNode;
|
$.post(OC.filePath('files_external', 'ajax', 'removeRootCertificate.php'), {cert: $tr.attr('id')});
|
||||||
$.post(OC.filePath('files_external', 'ajax', 'removeRootCertificate.php'), {cert: row.id});
|
|
||||||
$tr.remove();
|
$tr.remove();
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#externalStorage').on('click', 'td.remove>img', function() {
|
$('#externalStorage').on('click', 'td.remove>img', function() {
|
||||||
var tr = $(this).parent().parent();
|
var tr = $(this).closest('tr');
|
||||||
var mountPoint = $(tr).find('.mountPoint input').val();
|
var mountPoint = $(tr).find('.mountPoint input').val();
|
||||||
|
|
||||||
if ($('#externalStorage').data('admin') === true) {
|
if ($('#externalStorage').data('admin') === true) {
|
||||||
var isPersonal = false;
|
var isPersonal = false;
|
||||||
var multiselect = $(tr).find('.chzn-select').val();
|
var multiselect = getSelection($(tr));
|
||||||
if (multiselect != null) {
|
$.each(multiselect, function(index, value) {
|
||||||
$.each(multiselect, function(index, value) {
|
var pos = value.indexOf('(group)');
|
||||||
var pos = value.indexOf('(group)');
|
if (pos != -1) {
|
||||||
if (pos != -1) {
|
var mountType = 'group';
|
||||||
var mountType = 'group';
|
var applicable = value.substr(0, pos);
|
||||||
var applicable = value.substr(0, pos);
|
} else {
|
||||||
} else {
|
var mountType = 'user';
|
||||||
var mountType = 'user';
|
var applicable = value;
|
||||||
var applicable = value;
|
}
|
||||||
}
|
$.post(OC.filePath('files_external', 'ajax', 'removeMountPoint.php'), { mountPoint: mountPoint, mountType: mountType, applicable: applicable, isPersonal: isPersonal });
|
||||||
$.post(OC.filePath('files_external', 'ajax', 'removeMountPoint.php'), { mountPoint: mountPoint, mountType: mountType, applicable: applicable, isPersonal: isPersonal });
|
});
|
||||||
});
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
var mountType = 'user';
|
var mountType = 'user';
|
||||||
var applicable = OC.currentUser;
|
var applicable = OC.currentUser;
|
||||||
|
|
|
@ -3,7 +3,6 @@ $TRANSLATIONS = array(
|
||||||
"Username" => "Gebruikersnaam",
|
"Username" => "Gebruikersnaam",
|
||||||
"Password" => "Wagwoord",
|
"Password" => "Wagwoord",
|
||||||
"Share" => "Deel",
|
"Share" => "Deel",
|
||||||
"Personal" => "Persoonlik",
|
"Personal" => "Persoonlik"
|
||||||
"Users" => "Gebruikers"
|
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
||||||
|
|
|
@ -11,9 +11,6 @@ $TRANSLATIONS = array(
|
||||||
"Name" => "اسم",
|
"Name" => "اسم",
|
||||||
"Folder name" => "اسم المجلد",
|
"Folder name" => "اسم المجلد",
|
||||||
"Configuration" => "إعداد",
|
"Configuration" => "إعداد",
|
||||||
"All Users" => "كل المستخدمين",
|
|
||||||
"Groups" => "مجموعات",
|
|
||||||
"Users" => "المستخدمين",
|
|
||||||
"Delete" => "إلغاء"
|
"Delete" => "إلغاء"
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;";
|
$PLURAL_FORMS = "nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;";
|
||||||
|
|
|
@ -15,9 +15,6 @@ $TRANSLATIONS = array(
|
||||||
"Amazon S3 and compliant" => "Amazon S3 y compatibilidá",
|
"Amazon S3 and compliant" => "Amazon S3 y compatibilidá",
|
||||||
"Access Key" => "Clave d'accesu",
|
"Access Key" => "Clave d'accesu",
|
||||||
"Secret Key" => "Clave Secreta",
|
"Secret Key" => "Clave Secreta",
|
||||||
"Hostname (optional)" => "Nome d'equipu (opcional)",
|
|
||||||
"Port (optional)" => "Puertu (opcional)",
|
|
||||||
"Region (optional)" => "Rexón (opcional)",
|
|
||||||
"Enable SSL" => "Habilitar SSL",
|
"Enable SSL" => "Habilitar SSL",
|
||||||
"Enable Path Style" => "Habilitar Estilu de ruta",
|
"Enable Path Style" => "Habilitar Estilu de ruta",
|
||||||
"App key" => "App principal",
|
"App key" => "App principal",
|
||||||
|
@ -30,15 +27,12 @@ $TRANSLATIONS = array(
|
||||||
"Client ID" => "ID de veceru",
|
"Client ID" => "ID de veceru",
|
||||||
"Client secret" => "Veceru secretu",
|
"Client secret" => "Veceru secretu",
|
||||||
"OpenStack Object Storage" => "OpenStack Object Storage",
|
"OpenStack Object Storage" => "OpenStack Object Storage",
|
||||||
"Username (required)" => "Nome d'usuariu (necesariu)",
|
|
||||||
"Bucket (required)" => "Depósitu (necesariu)",
|
|
||||||
"Region (optional for OpenStack Object Storage)" => "Rexón (opcional pa OpenStack Object Storage)",
|
"Region (optional for OpenStack Object Storage)" => "Rexón (opcional pa OpenStack Object Storage)",
|
||||||
"API Key (required for Rackspace Cloud Files)" => "Clave API (necesaria pa Rackspace Cloud Files)",
|
"API Key (required for Rackspace Cloud Files)" => "Clave API (necesaria pa Rackspace Cloud Files)",
|
||||||
"Tenantname (required for OpenStack Object Storage)" => "Nome d'inquilín (necesariu pa OpenStack Object Storage)",
|
"Tenantname (required for OpenStack Object Storage)" => "Nome d'inquilín (necesariu pa OpenStack Object Storage)",
|
||||||
"Password (required for OpenStack Object Storage)" => "Contraseña (necesaria pa OpenStack Object Storage)",
|
"Password (required for OpenStack Object Storage)" => "Contraseña (necesaria pa OpenStack Object Storage)",
|
||||||
"Service Name (required for OpenStack Object Storage)" => "Nome de Serviciu (necesariu pa OpenStack Object Storage)",
|
"Service Name (required for OpenStack Object Storage)" => "Nome de Serviciu (necesariu pa OpenStack Object Storage)",
|
||||||
"URL of identity endpoint (required for OpenStack Object Storage)" => "URL d'identidá de puntu final (necesariu pa OpenStack Object Storage)",
|
"URL of identity endpoint (required for OpenStack Object Storage)" => "URL d'identidá de puntu final (necesariu pa OpenStack Object Storage)",
|
||||||
"Timeout of HTTP requests in seconds (optional)" => "Tiempu d'espera de peticiones HTTP en segundos (opcional)",
|
|
||||||
"Share" => "Compartir",
|
"Share" => "Compartir",
|
||||||
"SMB / CIFS using OC login" => "SMB / CIFS usando accesu OC",
|
"SMB / CIFS using OC login" => "SMB / CIFS usando accesu OC",
|
||||||
"Username as share" => "Nome d'usuariu como Compartición",
|
"Username as share" => "Nome d'usuariu como Compartición",
|
||||||
|
@ -66,10 +60,6 @@ $TRANSLATIONS = array(
|
||||||
"Configuration" => "Configuración",
|
"Configuration" => "Configuración",
|
||||||
"Available for" => "Disponible pa",
|
"Available for" => "Disponible pa",
|
||||||
"Add storage" => "Amestar almacenamientu",
|
"Add storage" => "Amestar almacenamientu",
|
||||||
"No user or group" => "Nengún usuariu o grupu",
|
|
||||||
"All Users" => "Tolos usuarios",
|
|
||||||
"Groups" => "Grupos",
|
|
||||||
"Users" => "Usuarios",
|
|
||||||
"Delete" => "Desaniciar",
|
"Delete" => "Desaniciar",
|
||||||
"Enable User External Storage" => "Habilitar almacenamientu esterno d'usuariu",
|
"Enable User External Storage" => "Habilitar almacenamientu esterno d'usuariu",
|
||||||
"Allow users to mount the following external storage" => "Permitir a los usuarios montar el siguiente almacenamientu esternu",
|
"Allow users to mount the following external storage" => "Permitir a los usuarios montar el siguiente almacenamientu esternu",
|
||||||
|
|
|
@ -8,16 +8,16 @@ $TRANSLATIONS = array(
|
||||||
"Location" => "Yerləşdiyiniz ünvan",
|
"Location" => "Yerləşdiyiniz ünvan",
|
||||||
"Key" => "Açar",
|
"Key" => "Açar",
|
||||||
"Secret" => "Gizli",
|
"Secret" => "Gizli",
|
||||||
"Hostname (optional)" => "Avadanlığın adı(məcburi deyil)",
|
|
||||||
"Enable SSL" => "SSL-i işə sal",
|
"Enable SSL" => "SSL-i işə sal",
|
||||||
"Host" => "Şəbəkədə ünvan",
|
"Host" => "Şəbəkədə ünvan",
|
||||||
"Username" => "İstifadəçi adı",
|
"Username" => "İstifadəçi adı",
|
||||||
"Password" => "Şifrə",
|
"Password" => "Şifrə",
|
||||||
"Share" => "Yayımla",
|
"Share" => "Yayımla",
|
||||||
|
"URL" => "URL",
|
||||||
|
"Personal" => "Şəxsi",
|
||||||
"Saved" => "Saxlanıldı",
|
"Saved" => "Saxlanıldı",
|
||||||
"Name" => "Ad",
|
"Name" => "Ad",
|
||||||
"Folder name" => "Qovluq adı",
|
"Folder name" => "Qovluq adı",
|
||||||
"Users" => "İstifadəçilər",
|
|
||||||
"Delete" => "Sil"
|
"Delete" => "Sil"
|
||||||
);
|
);
|
||||||
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
$PLURAL_FORMS = "nplurals=2; plural=(n != 1);";
|
||||||
|
|
|
@ -15,9 +15,6 @@ $TRANSLATIONS = array(
|
||||||
"Amazon S3 and compliant" => "Amazon S3 и съвместими",
|
"Amazon S3 and compliant" => "Amazon S3 и съвместими",
|
||||||
"Access Key" => "Access Key",
|
"Access Key" => "Access Key",
|
||||||
"Secret Key" => "Secret Key",
|
"Secret Key" => "Secret Key",
|
||||||
"Hostname (optional)" => "Сървър (незадължително)",
|
|
||||||
"Port (optional)" => "Порт (незадължително)",
|
|
||||||
"Region (optional)" => "Регион (незадължително)",
|
|
||||||
"Enable SSL" => "Включи SSL",
|
"Enable SSL" => "Включи SSL",
|
||||||
"Enable Path Style" => "Включи Path Style",
|
"Enable Path Style" => "Включи Path Style",
|
||||||
"App key" => "App key",
|
"App key" => "App key",
|
||||||
|
@ -30,15 +27,12 @@ $TRANSLATIONS = array(
|
||||||
"Client ID" => "Client ID",
|
"Client ID" => "Client ID",
|
||||||
"Client secret" => "Client secret",
|
"Client secret" => "Client secret",
|
||||||
"OpenStack Object Storage" => "OpenStack Object Storage",
|
"OpenStack Object Storage" => "OpenStack Object Storage",
|
||||||
"Username (required)" => "Потребителско Име (задължително)",
|
|
||||||
"Bucket (required)" => "Bucket (задължително)",
|
|
||||||
"Region (optional for OpenStack Object Storage)" => "Регион (незадължително за OpenStack Object Storage)",
|
"Region (optional for OpenStack Object Storage)" => "Регион (незадължително за OpenStack Object Storage)",
|
||||||
"API Key (required for Rackspace Cloud Files)" => "API Key (задължително за Rackspace Cloud Files)",
|
"API Key (required for Rackspace Cloud Files)" => "API Key (задължително за Rackspace Cloud Files)",
|
||||||
"Tenantname (required for OpenStack Object Storage)" => "Tenantname (задължително за OpenStack Object Storage)",
|
"Tenantname (required for OpenStack Object Storage)" => "Tenantname (задължително за OpenStack Object Storage)",
|
||||||
"Password (required for OpenStack Object Storage)" => "Парола (задължително за OpenStack Object Storage)",
|
"Password (required for OpenStack Object Storage)" => "Парола (задължително за OpenStack Object Storage)",
|
||||||
"Service Name (required for OpenStack Object Storage)" => "Service Name (задължително за OpenStack Object Storage)",
|
"Service Name (required for OpenStack Object Storage)" => "Service Name (задължително за OpenStack Object Storage)",
|
||||||
"URL of identity endpoint (required for OpenStack Object Storage)" => "URL of identity endpoint (задължително за OpenStack Object Storage)",
|
"URL of identity endpoint (required for OpenStack Object Storage)" => "URL of identity endpoint (задължително за OpenStack Object Storage)",
|
||||||
"Timeout of HTTP requests in seconds (optional)" => "Максимално време за HTTP заявки в секунди (незадължително)",
|
|
||||||
"Share" => "Споделяне",
|
"Share" => "Споделяне",
|
||||||
"SMB / CIFS using OC login" => "SMB / CIFS използвайки OC профил",
|
"SMB / CIFS using OC login" => "SMB / CIFS използвайки OC профил",
|
||||||
"Username as share" => "Потребителско име като споделена папка",
|
"Username as share" => "Потребителско име като споделена папка",
|
||||||
|
@ -51,6 +45,8 @@ $TRANSLATIONS = array(
|
||||||
"Error configuring Google Drive storage" => "Грешка при настройката на Dropbox дисковото пространство.",
|
"Error configuring Google Drive storage" => "Грешка при настройката на Dropbox дисковото пространство.",
|
||||||
"Personal" => "Личен",
|
"Personal" => "Личен",
|
||||||
"System" => "Системен",
|
"System" => "Системен",
|
||||||
|
"All users. Type to select user or group." => "Всички потребители. Пиши, за да избереш потребител или група.",
|
||||||
|
"(group)" => "(група)",
|
||||||
"Saved" => "Запазено",
|
"Saved" => "Запазено",
|
||||||
"<b>Note:</b> " => "<b>Бележка:</b> ",
|
"<b>Note:</b> " => "<b>Бележка:</b> ",
|
||||||
" and " => "и",
|
" and " => "и",
|
||||||
|
@ -66,10 +62,6 @@ $TRANSLATIONS = array(
|
||||||
"Configuration" => "Настройки",
|
"Configuration" => "Настройки",
|
||||||
"Available for" => "Достъпно за",
|
"Available for" => "Достъпно за",
|
||||||
"Add storage" => "Добави дисково пространство",
|
"Add storage" => "Добави дисково пространство",
|
||||||
"No user or group" => "Липсва потребител или група",
|
|
||||||
"All Users" => "Всички Потребители",
|
|
||||||
"Groups" => "Групи",
|
|
||||||
"Users" => "Потребители",
|
|
||||||
"Delete" => "Изтрий",
|
"Delete" => "Изтрий",
|
||||||
"Enable User External Storage" => "Разреши Потребителско Външно Дисково Пространство",
|
"Enable User External Storage" => "Разреши Потребителско Външно Дисково Пространство",
|
||||||
"Allow users to mount the following external storage" => "Разреши на потребителите да прикачват следното външно дисково пространство",
|
"Allow users to mount the following external storage" => "Разреши на потребителите да прикачват следното външно дисково пространство",
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?php
|
<?php
|
||||||
$TRANSLATIONS = array(
|
$TRANSLATIONS = array(
|
||||||
"Please provide a valid Dropbox app key and secret." => "দয়া করে সঠিক এবং বৈধ Dropbox app key and secret প্রদান করুন।",
|
"Please provide a valid Dropbox app key and secret." => "দয়া করে সঠিক এবং বৈধ Dropbox app key and secret প্রদান করুন।",
|
||||||
"Location" => "াবস্থান",
|
"Location" => "অবস্থান",
|
||||||
"Host" => "হোস্ট",
|
"Host" => "হোস্ট",
|
||||||
"Username" => "ব্যবহারকারী",
|
"Username" => "ব্যবহারকারী",
|
||||||
"Password" => "কূটশব্দ",
|
"Password" => "কূটশব্দ",
|
||||||
|
@ -12,13 +12,11 @@ $TRANSLATIONS = array(
|
||||||
"Grant access" => "অধিগমনের অনুমতি প্রদান কর",
|
"Grant access" => "অধিগমনের অনুমতি প্রদান কর",
|
||||||
"Error configuring Google Drive storage" => "Google Drive সংরক্ষণাগার নির্ধারণ করতে সমস্যা ",
|
"Error configuring Google Drive storage" => "Google Drive সংরক্ষণাগার নির্ধারণ করতে সমস্যা ",
|
||||||
"Personal" => "ব্যক্তিগত",
|
"Personal" => "ব্যক্তিগত",
|
||||||
|
"Saved" => "সংরক্ষণ করা হলো",
|
||||||
"Name" => "রাম",
|
"Name" => "রাম",
|
||||||
"External Storage" => "বাহ্যিক সংরক্ষণাগার",
|
"External Storage" => "বাহ্যিক সংরক্ষণাগার",
|
||||||
"Folder name" => "ফোলডারের নাম",
|
"Folder name" => "ফোলডারের নাম",
|
||||||
"Configuration" => "কনফিগারেসন",
|
"Configuration" => "কনফিগারেসন",
|
||||||
"All Users" => "সমস্ত ব্যবহারকারী",
|
|
||||||
"Groups" => "গোষ্ঠীসমূহ",
|
|
||||||
"Users" => "ব্যবহারকারী",
|
|
||||||
"Delete" => "মুছে",
|
"Delete" => "মুছে",
|
||||||
"Enable User External Storage" => "ব্যবহারকারীর বাহ্যিক সংরক্ষণাগার সক্রিয় কর",
|
"Enable User External Storage" => "ব্যবহারকারীর বাহ্যিক সংরক্ষণাগার সক্রিয় কর",
|
||||||
"SSL root certificates" => "SSL রুট সনদপত্র",
|
"SSL root certificates" => "SSL রুট সনদপত্র",
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue